• oliver@apple.com's avatar
    fourthTier: Concurrent JIT shouldn't try to recompute the CodeBlockHash as... · acdde49f
    oliver@apple.com authored
    fourthTier: Concurrent JIT shouldn't try to recompute the CodeBlockHash as part of debug dumps, since doing so may fail if dealing with a CachedScript that doesn't have its script string handy
    https://bugs.webkit.org/show_bug.cgi?id=117676
    
    Reviewed by Sam Weinig.
    
    Source/JavaScriptCore:
    
    CodeBlock now caches m_hash, and the DFG Driver will force its computation if we're doing debug dumps of any kind.
    
    Also made sure that CodeBlock::CodeBlock initializes all of its fields; it was previously missing the
    initialization of m_capabilityLevelState.
    
    * bytecode/CodeBlock.cpp:
    (JSC::CodeBlock::hash):
    (JSC::CodeBlock::CodeBlock):
    * bytecode/CodeBlock.h:
    (CodeBlock):
    * bytecode/CodeBlockHash.cpp:
    (JSC::CodeBlockHash::CodeBlockHash):
    * bytecode/CodeBlockHash.h:
    (CodeBlockHash):
    (JSC::CodeBlockHash::isSet):
    (JSC::CodeBlockHash::operator!):
    * dfg/DFGDriver.cpp:
    (JSC::DFG::compile):
    
    Source/WebCore:
    
    Remove the broken hack for the concurrent JIT, since now the concurrent JIT won't use this code anymore.
    
    No new tests because no new behavior.
    
    * loader/cache/CachedScript.cpp:
    (WebCore::CachedScript::script):
    
    git-svn-id: http://svn.webkit.org/repository/webkit/trunk@153227 268f45cc-cd09-0410-ab3c-d52691b4dbfc
    acdde49f