Ignore:
Timestamp:
Dec 5, 2008, 5:36:16 PM (16 years ago)
Author:
[email protected]
Message:

2008-12-05 Gavin Barraclough <[email protected]>

Reviewed by Geoff Garen.

Second tranche of porting JIT.cpp to MacroAssembler interface.

  • assembler/MacroAssembler.h: (JSC::MacroAssembler::mul32): (JSC::MacroAssembler::jl32): (JSC::MacroAssembler::jnzSub32): (JSC::MacroAssembler::joAdd32): (JSC::MacroAssembler::joMul32): (JSC::MacroAssembler::jzSub32):
  • jit/JIT.cpp: (JSC::JIT::emitSlowScriptCheck): (JSC::JIT::privateCompileMainPass): (JSC::JIT::privateCompileSlowCases): (JSC::JIT::privateCompileCTIMachineTrampolines):
  • jit/JIT.h:
  • jit/JITInlineMethods.h: (JSC::JIT::emitJumpIfNotJSCell): (JSC::JIT::emitJumpSlowCaseIfNotJSCell):
File:
1 edited

Legend:

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

    r39043 r39058  
    298298    }
    299299   
     300    void mul32(Imm32 imm, RegisterID src, RegisterID dest)
     301    {
     302        m_assembler.imull_i32r(src, imm.m_value, dest);
     303    }
     304   
    300305    void or32(Imm32 imm, RegisterID dest)
    301306    {
     
    607612        return Jump(m_assembler.jge());
    608613    }
     614
     615    Jump jl32(RegisterID left, RegisterID right)
     616    {
     617        m_assembler.cmpl_rr(right, left);
     618        return Jump(m_assembler.jl());
     619    }
    609620   
    610621    Jump jl32(RegisterID left, Imm32 right)
     
    738749    //   operation caused an overflow to occur.
    739750
     751    Jump jnzSub32(Imm32 imm, RegisterID dest)
     752    {
     753        sub32(imm, dest);
     754        return Jump(m_assembler.jne());
     755    }
     756   
     757    Jump joAdd32(RegisterID src, RegisterID dest)
     758    {
     759        add32(src, dest);
     760        return Jump(m_assembler.jo());
     761    }
     762   
     763    Jump joAdd32(Imm32 imm, RegisterID dest)
     764    {
     765        add32(imm, dest);
     766        return Jump(m_assembler.jo());
     767    }
     768   
     769    Jump joMul32(Imm32 imm, RegisterID src, RegisterID dest)
     770    {
     771        mul32(imm, src, dest);
     772        return Jump(m_assembler.jo());
     773    }
     774   
    740775    Jump jzSub32(Imm32 imm, RegisterID dest)
    741776    {
    742         if (CAN_SIGN_EXTEND_8_32(imm.m_value))
    743             m_assembler.subl_i8r(imm.m_value, dest);
    744         else
    745             m_assembler.subl_i32r(imm.m_value, dest);
     777        sub32(imm, dest);
    746778        return Jump(m_assembler.je());
    747779    }
    748780   
    749     Jump joAdd32(RegisterID src, RegisterID dest)
    750     {
    751         m_assembler.addl_rr(src, dest);
    752         return Jump(m_assembler.jo());
    753     }
    754    
    755781
    756782    // Miscellaneous operations:
Note: See TracChangeset for help on using the changeset viewer.