Skip to content
  • barraclough@apple.com's avatar
    Fix OSR entry points to calculate offsets correctly WRT to branch compaction. · 13b3806d
    barraclough@apple.com authored
    https://bugs.webkit.org/show_bug.cgi?id=71864
    
    Reviewed by Filip Pizlo.
    
    * assembler/LinkBuffer.h:
    (JSC::LinkBuffer::offsetOf):
        - We use this to return the offsets into the code of the entry points.
    * dfg/DFGJITCompiler.cpp:
    (JSC::DFG::JITCompiler::compileEntry):
    (JSC::DFG::JITCompiler::compileBody):
    (JSC::DFG::JITCompiler::compile):
    (JSC::DFG::JITCompiler::compileFunction):
        - Move the construction of the speculative JIT outside of
          compileBody, such that it is still available to link the
          OSR entry points at the point we are linking.
    * dfg/DFGJITCompiler.h:
    (JSC::DFG::JITCompiler::noticeOSREntry):
        - Pass the label of the block & linkbuffer into noticeOSREntry.
    * dfg/DFGSpeculativeJIT.cpp:
    (JSC::DFG::SpeculativeJIT::compile):
    (JSC::DFG::SpeculativeJIT::linkOSREntries):
        - Moved call to noticeOSREntry until we we linking.
    * dfg/DFGSpeculativeJIT.h:
    * jit/JIT.cpp:
    (JSC::JIT::privateCompileMainPass):
    (JSC::JIT::privateCompileSlowCases):
    (JSC::JIT::privateCompile):
        - Moved calculation of entries until we we linking.
    * jit/JIT.h:
        - Removed some members.
    
    
    
    git-svn-id: http://svn.webkit.org/repository/webkit/trunk@99633 268f45cc-cd09-0410-ab3c-d52691b4dbfc
    13b3806d