• oliver@apple.com's avatar
    2010-05-19 Oliver Hunt <oliver@apple.com> · fc502ee5
    oliver@apple.com authored
            Reviewed by Geoffrey Garen.
    
            emitJumpIfNotJSCell should special case constant immediate values
            https://bugs.webkit.org/show_bug.cgi?id=39392
            <rdar://problem/8001324>
    
            Make emitJumpSlowCaseIfNotJSCell special case constant immediate
            values, in addition to the immediate JSCell optimisation.
    
            Also add assertions to make sure no one else produces code that
            attempts to load constants from the register file.
    
            * jit/JITInlineMethods.h:
            (JSC::JIT::emitJumpSlowCaseIfNotJSCell):
            * jit/JSInterfaceJIT.h:
            (JSC::JSInterfaceJIT::emitJumpIfNotJSCell):
            (JSC::JSInterfaceJIT::emitLoadInt32):
            (JSC::JSInterfaceJIT::tagFor):
            (JSC::JSInterfaceJIT::payloadFor):
            (JSC::JSInterfaceJIT::emitLoadDouble):
            (JSC::JSInterfaceJIT::addressFor):
            * jit/ThunkGenerators.cpp:
    2010-05-19  Oliver Hunt  <oliver@apple.com>
    
            Reviewed by Geoffrey Garen.
    
            emitJumpIfNotJSCell should special case constant immediate values
            https://bugs.webkit.org/show_bug.cgi?id=39392
    
            Add tests for immediate constants being used where cells are expected.
    
            * fast/js/immediate-constant-instead-of-cell-expected.txt: Added.
            * fast/js/immediate-constant-instead-of-cell.html: Added.
            * fast/js/script-tests/immediate-constant-instead-of-cell.js: Added.
            ():
    
    git-svn-id: http://svn.webkit.org/repository/webkit/trunk@59798 268f45cc-cd09-0410-ab3c-d52691b4dbfc
    fc502ee5
ChangeLog 1.08 MB