Ignore:
Timestamp:
Sep 10, 2011, 2:23:45 PM (14 years ago)
Author:
[email protected]
Message:

DFG JIT completely undoes speculative compilation even in the case of
a partial static speculation failure
https://bugs.webkit.org/show_bug.cgi?id=67798

Reviewed by Geoffrey Garen.

This is a regression with static speculation, so it is turned off by
default. But it is a necessary prerequisite for further work on
dynamic speculation.

  • dfg/DFGJITCodeGenerator.cpp:

(JSC::DFG::JITCodeGenerator::clearGenerationInfo):

  • dfg/DFGJITCodeGenerator.h:
  • dfg/DFGSpeculativeJIT.cpp:

(JSC::DFG::SpeculativeJIT::fillSpeculateIntInternal):
(JSC::DFG::SpeculativeJIT::compile):

  • dfg/DFGSpeculativeJIT.h:

(JSC::DFG::SpeculativeJIT::terminateSpeculativeExecution):

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/JavaScriptCore/dfg/DFGJITCompiler.cpp

    r94629 r94914  
    852852        linkSpeculationChecks(speculative, nonSpeculative);
    853853    } else {
    854 #if DFG_DEBUG_VERBOSE
    855         fprintf(stderr, "SpeculativeJIT was terminated.\n");
    856 #endif
    857 
    858854        // If compilation through the SpeculativeJIT failed, throw away the code we generated.
    859855        m_calls.clear();
Note: See TracChangeset for help on using the changeset viewer.