Ignore:
Timestamp:
Jan 15, 2009, 10:51:20 PM (16 years ago)
Author:
[email protected]
Message:

2009-01-15 Gavin Barraclough <[email protected]>

Reviewed by Oliver Hunt.

Add support for integer addition, subtraction and multiplication
in JIT code on x86-64.

  • assembler/MacroAssembler.h: (JSC::MacroAssembler::mul32): (JSC::MacroAssembler::sub32): (JSC::MacroAssembler::joMul32): (JSC::MacroAssembler::joSub32):
  • jit/JIT.cpp: (JSC::JIT::privateCompileMainPass): (JSC::JIT::privateCompileSlowCases):
  • jit/JIT.h:
  • jit/JITArithmetic.cpp: (JSC::JIT::compileFastArith_op_add): (JSC::JIT::compileFastArithSlow_op_add): (JSC::JIT::compileFastArith_op_mul): (JSC::JIT::compileFastArithSlow_op_mul): (JSC::JIT::compileFastArith_op_sub): (JSC::JIT::compileFastArithSlow_op_sub):
File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/JavaScriptCore/assembler/MacroAssembler.h

    r39958 r39960  
    575575    }
    576576
     577    void mul32(RegisterID src, RegisterID dest)
     578    {
     579        m_assembler.imull_rr(src, dest);
     580    }
     581   
    577582    void mul32(Imm32 imm, RegisterID src, RegisterID dest)
    578583    {
     
    704709    }
    705710
     711    void sub32(RegisterID src, RegisterID dest)
     712    {
     713        m_assembler.subl_rr(src, dest);
     714    }
     715   
    706716    void sub32(Imm32 imm, RegisterID dest)
    707717    {
     
    17931803    }
    17941804   
     1805    Jump joMul32(RegisterID src, RegisterID dest)
     1806    {
     1807        mul32(src, dest);
     1808        return Jump(m_assembler.jo());
     1809    }
     1810   
    17951811    Jump joMul32(Imm32 imm, RegisterID src, RegisterID dest)
    17961812    {
    17971813        mul32(imm, src, dest);
     1814        return Jump(m_assembler.jo());
     1815    }
     1816   
     1817    Jump joSub32(RegisterID src, RegisterID dest)
     1818    {
     1819        sub32(src, dest);
    17981820        return Jump(m_assembler.jo());
    17991821    }
Note: See TracChangeset for help on using the changeset viewer.