Changeset 92038 in webkit


Ignore:
Timestamp:
Jul 29, 2011 7:00:35 PM (13 years ago)
Author:
fpizlo@apple.com
Message:

DFG JIT verbose mode provides no details about predictions
https://bugs.webkit.org/show_bug.cgi?id=65389

Reviewed by Darin Adler.

Added a print-out of the predictions to the IR dump, with names as follows:
"p-bottom" = the parser made no predictions
"p-int32" = the parser predicted int32
... (same for array, cell, double, number)
"p-top" = the parser made conflicting predictions which will be ignored.

  • dfg/DFGGraph.cpp:

(JSC::DFG::Graph::dump):

  • dfg/DFGGraph.h:

(JSC::DFG::predictionToString):

Location:
trunk/Source/JavaScriptCore
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/JavaScriptCore/ChangeLog

    r92024 r92038  
     12011-07-29  Filip Pizlo  <fpizlo@apple.com>
     2
     3        DFG JIT verbose mode provides no details about predictions
     4        https://bugs.webkit.org/show_bug.cgi?id=65389
     5
     6        Reviewed by Darin Adler.
     7       
     8        Added a print-out of the predictions to the IR dump, with names as follows:
     9        "p-bottom" = the parser made no predictions
     10        "p-int32" = the parser predicted int32
     11        ... (same for array, cell, double, number)
     12        "p-top" = the parser made conflicting predictions which will be ignored.
     13
     14        * dfg/DFGGraph.cpp:
     15        (JSC::DFG::Graph::dump):
     16        * dfg/DFGGraph.h:
     17        (JSC::DFG::predictionToString):
     18
    1192011-07-29  Filip Pizlo  <fpizlo@apple.com>
    220
  • trunk/Source/JavaScriptCore/dfg/DFGGraph.cpp

    r91894 r92038  
    133133    }
    134134
    135     printf(")\n");
     135    printf(")");
     136   
     137    if (node.hasLocal())
     138        printf("  predicting %s", predictionToString(getPrediction(node.local())));
     139   
     140    printf("\n");
    136141}
    137142
  • trunk/Source/JavaScriptCore/dfg/DFGGraph.h

    r91894 r92038  
    7777}
    7878
     79#ifndef NDEBUG
     80inline const char* predictionToString(PredictedType value)
     81{
     82    switch (value) {
     83    case PredictNone:
     84        return "p-bottom";
     85    case PredictCell:
     86        return "p-cell";
     87    case PredictArray:
     88        return "p-array";
     89    case PredictInt32:
     90        return "p-int32";
     91    case PredictNumber:
     92        return "p-number";
     93    default:
     94        return "p-top";
     95    }
     96}
     97#endif
     98
    7999struct PredictionSlot {
    80100public:
Note: See TracChangeset for help on using the changeset viewer.