2010-11-20 Gabor Loki <loki@webkit.org>
authorloki@webkit.org <loki@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Sat, 20 Nov 2010 22:02:36 +0000 (22:02 +0000)
committerloki@webkit.org <loki@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Sat, 20 Nov 2010 22:02:36 +0000 (22:02 +0000)
commitf69af0b7edb505a8b75b68d693e3c00f43643a06
treedddb073c71c4684d537d1f11e3b56fb71822a1ff
parentf5a5c38c252df9f15d5a21a5c0baaa3c47467015
2010-11-20  Gabor Loki  <loki@webkit.org>

        Reviewed by Gavin Barraclough.

        Support JIT_OPTIMIZE_MOD on Thumb-2
        https://bugs.webkit.org/show_bug.cgi?id=49432

        Rewrite the soft modulo operation into macroassembler form, and move it
        to JSValue32_64 section.
        Add support for soft modulo on Thumb-2 JIT also.

        * assembler/ARMv7Assembler.h:
        (JSC::ARMv7Assembler::clz):
        * assembler/MacroAssemblerARM.h:
        (JSC::MacroAssemblerARM::countLeadingZeros32):
        (JSC::MacroAssemblerARM::relativeTableJump):
        * assembler/MacroAssemblerARMv7.h:
        (JSC::MacroAssemblerARMv7::countLeadingZeros32):
        (JSC::MacroAssemblerARMv7::relativeTableJump):
        * jit/JITArithmetic.cpp:
        (JSC::JIT::emit_op_mod):
        * jit/JITOpcodes.cpp:
        (JSC::JIT::privateCompileCTIMachineTrampolines):
        * jit/JITOpcodes32_64.cpp:
        (JSC::JIT::softModulo):
        * jit/JITStubs.cpp:
        (JSC::JITThunks::JITThunks):
        * wtf/Platform.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@72481 268f45cc-cd09-0410-ab3c-d52691b4dbfc
JavaScriptCore/ChangeLog
JavaScriptCore/assembler/ARMv7Assembler.h
JavaScriptCore/assembler/MacroAssemblerARM.h
JavaScriptCore/assembler/MacroAssemblerARMv7.h
JavaScriptCore/jit/JITArithmetic.cpp
JavaScriptCore/jit/JITOpcodes.cpp
JavaScriptCore/jit/JITOpcodes32_64.cpp
JavaScriptCore/jit/JITStubs.cpp
JavaScriptCore/wtf/Platform.h