Ignore:
Timestamp:
Sep 21, 2011, 3:43:11 PM (14 years ago)
Author:
[email protected]
Message:

Should support value profiling on CPU(X86)
https://bugs.webkit.org/show_bug.cgi?id=68575

Reviewed by Sam Weinig.

Fix verbose profiling in ToT (SlowCaseProfile had been
partially renamed to RareCaseProfile), add in-memory
bucket counter for CPU(X86), move JIT::m_canBeOptimized
out of the DFG_JIT ifdef.

  • bytecode/CodeBlock.cpp:

(JSC::CodeBlock::resetRareCaseProfiles):
(JSC::CodeBlock::dumpValueProfiles):

  • bytecode/CodeBlock.h:
  • dfg/DFGByteCodeParser.cpp:

(JSC::DFG::ByteCodeParser::makeSafe):

  • jit/JIT.cpp:

(JSC::JIT::privateCompileSlowCases):
(JSC::JIT::privateCompile):

  • jit/JIT.h:
  • jit/JITInlineMethods.h:

(JSC::JIT::emitValueProfilingSite):

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/JavaScriptCore/bytecode/CodeBlock.cpp

    r95484 r95676  
    19881988void CodeBlock::resetRareCaseProfiles()
    19891989{
    1990     for (unsigned i = 0; i < numberOfSlowCaseProfiles(); ++i)
    1991         slowCaseProfile(i)->m_counter = 0;
     1990    for (unsigned i = 0; i < numberOfRareCaseProfiles(); ++i)
     1991        rareCaseProfile(i)->m_counter = 0;
    19921992    for (unsigned i = 0; i < numberOfSpecialFastCaseProfiles(); ++i)
    19931993        specialFastCaseProfile(i)->m_counter = 0;
     
    20132013        fprintf(stderr, "\n");
    20142014    }
    2015     fprintf(stderr, "SlowCaseProfile for %p:\n", this);
    2016     for (unsigned i = 0; i < numberOfSlowCaseProfiles(); ++i) {
    2017         SlowCaseProfile* profile = slowCaseProfile(i);
     2015    fprintf(stderr, "RareCaseProfile for %p:\n", this);
     2016    for (unsigned i = 0; i < numberOfRareCaseProfiles(); ++i) {
     2017        RareCaseProfile* profile = rareCaseProfile(i);
    20182018        fprintf(stderr, "   bc = %d: %u\n", profile->m_bytecodeOffset, profile->m_counter);
    20192019    }
Note: See TracChangeset for help on using the changeset viewer.