Changeset 125541 in webkit for trunk/Source/JavaScriptCore/assembler/MacroAssemblerARM.cpp
- Timestamp:
- Aug 14, 2012, 4:28:25 AM (13 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/Source/JavaScriptCore/assembler/MacroAssemblerARM.cpp
r124930 r125541 77 77 78 78 if (address.offset >= 0 && address.offset + 0x2 <= 0xff) { 79 m_assembler.add _r(ARMRegisters::S0, address.base, op2);80 m_assembler. dtrh_u(ARMAssembler::LoadUint16, dest, ARMRegisters::S0, ARMAssembler::getOp2Half(address.offset));81 m_assembler. dtrh_u(ARMAssembler::LoadUint16, ARMRegisters::S0, ARMRegisters::S0, ARMAssembler::getOp2Half(address.offset + 0x2));79 m_assembler.add(ARMRegisters::S0, address.base, op2); 80 m_assembler.halfDtrUp(ARMAssembler::LoadUint16, dest, ARMRegisters::S0, ARMAssembler::getOp2Half(address.offset)); 81 m_assembler.halfDtrUp(ARMAssembler::LoadUint16, ARMRegisters::S0, ARMRegisters::S0, ARMAssembler::getOp2Half(address.offset + 0x2)); 82 82 } else if (address.offset < 0 && address.offset >= -0xff) { 83 m_assembler.add _r(ARMRegisters::S0, address.base, op2);84 m_assembler. dtrh_d(ARMAssembler::LoadUint16, dest, ARMRegisters::S0, ARMAssembler::getOp2Half(-address.offset));85 m_assembler. dtrh_d(ARMAssembler::LoadUint16, ARMRegisters::S0, ARMRegisters::S0, ARMAssembler::getOp2Half(-address.offset - 0x2));83 m_assembler.add(ARMRegisters::S0, address.base, op2); 84 m_assembler.halfDtrDown(ARMAssembler::LoadUint16, dest, ARMRegisters::S0, ARMAssembler::getOp2Half(-address.offset)); 85 m_assembler.halfDtrDown(ARMAssembler::LoadUint16, ARMRegisters::S0, ARMRegisters::S0, ARMAssembler::getOp2Half(-address.offset - 0x2)); 86 86 } else { 87 87 m_assembler.moveImm(address.offset, ARMRegisters::S0); 88 m_assembler.add _r(ARMRegisters::S0, ARMRegisters::S0, op2);89 m_assembler. dtrh_ur(ARMAssembler::LoadUint16, dest, address.base, ARMRegisters::S0);90 m_assembler.add _r(ARMRegisters::S0, ARMRegisters::S0, ARMAssembler::Op2Immediate | 0x2);91 m_assembler. dtrh_ur(ARMAssembler::LoadUint16, ARMRegisters::S0, address.base, ARMRegisters::S0);88 m_assembler.add(ARMRegisters::S0, ARMRegisters::S0, op2); 89 m_assembler.halfDtrUpRegister(ARMAssembler::LoadUint16, dest, address.base, ARMRegisters::S0); 90 m_assembler.add(ARMRegisters::S0, ARMRegisters::S0, ARMAssembler::Op2Immediate | 0x2); 91 m_assembler.halfDtrUpRegister(ARMAssembler::LoadUint16, ARMRegisters::S0, address.base, ARMRegisters::S0); 92 92 } 93 m_assembler.orr _r(dest, dest, m_assembler.lsl(ARMRegisters::S0, 16));93 m_assembler.orr(dest, dest, m_assembler.lsl(ARMRegisters::S0, 16)); 94 94 } 95 95 #endif
Note:
See TracChangeset
for help on using the changeset viewer.