-
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