2009-03-05 Gavin Barraclough <barraclough@apple.com>
authorbarraclough@apple.com <barraclough@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Fri, 6 Mar 2009 07:02:10 +0000 (07:02 +0000)
committerbarraclough@apple.com <barraclough@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Fri, 6 Mar 2009 07:02:10 +0000 (07:02 +0000)
commit212188b9d2db0742de82cdaae078f747da519aa7
tree772be9d35678da50e819237871a69dc8451ec61e
parent795fd8771f59dabf891422d12444f1e3ff0f4093
2009-03-05  Gavin Barraclough  <barraclough@apple.com>

        Reviewed by Oliver Hunt.

        Writes of constant values to SF registers should be made with direct memory
        writes where possible, rather than moving the value via a hardware register.

        ~3% win on SunSpider tests on x86, ~1.5% win on v8 tests on x86-64.

        * assembler/MacroAssemblerX86_64.h:
        (JSC::MacroAssemblerX86_64::storePtr):
        * assembler/X86Assembler.h:
        (JSC::X86Assembler::movq_i32m):
        * jit/JIT.cpp:
        (JSC::JIT::privateCompileMainPass):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@41474 268f45cc-cd09-0410-ab3c-d52691b4dbfc
JavaScriptCore/ChangeLog
JavaScriptCore/assembler/MacroAssemblerX86_64.h
JavaScriptCore/assembler/X86Assembler.h
JavaScriptCore/jit/JIT.cpp