Changeset 51067 in webkit
- Timestamp:
- Nov 16, 2009, 11:16:22 PM (16 years ago)
- Location:
- trunk/JavaScriptCore
- Files:
-
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/JavaScriptCore/ChangeLog
r51032 r51067 1 2009-11-16 Zoltan Herczeg <[email protected]> 2 3 Reviewed by Gavin Barraclough. 4 5 https://bugs.webkit.org/show_bug.cgi?id=31050 6 7 Minor fixes for JSVALUE32_64: branchConvertDoubleToInt32 8 failed on a CortexA8 CPU, but not on a simulator; and 9 JITCall.cpp modifications was somehow not committed to mainline. 10 11 * assembler/ARMAssembler.h: 12 (JSC::ARMAssembler::fmrs_r): 13 * assembler/MacroAssemblerARM.h: 14 (JSC::MacroAssemblerARM::branchConvertDoubleToInt32): 15 * jit/JITCall.cpp: 16 (JSC::JIT::compileOpCall): 17 1 18 2009-11-16 Joerg Bornemann <[email protected]> 2 19 -
trunk/JavaScriptCore/assembler/ARMAssembler.h
r50981 r51067 511 511 } 512 512 513 void fmrs_r(int dd, int rn, Condition cc = AL)514 { 515 emitInst(static_cast<ARMWord>(cc) | FMRS, r n, dd, 0);513 void fmrs_r(int rd, int dn, Condition cc = AL) 514 { 515 emitInst(static_cast<ARMWord>(cc) | FMRS, rd, dn, 0); 516 516 } 517 517 -
trunk/JavaScriptCore/assembler/MacroAssemblerARM.h
r50981 r51067 830 830 void branchConvertDoubleToInt32(FPRegisterID src, RegisterID dest, JumpList& failureCases, FPRegisterID fpTemp) 831 831 { 832 m_assembler.ftosid_r( src, ARMRegisters::SD0);833 m_assembler.fmrs_r( ARMRegisters::SD0, dest);832 m_assembler.ftosid_r(ARMRegisters::SD0, src); 833 m_assembler.fmrs_r(dest, ARMRegisters::SD0); 834 834 835 835 // Convert the integer result back to float & compare to the original value - if not equal or unordered (NaN) then jump. 836 836 m_assembler.fsitod_r(ARMRegisters::SD0, ARMRegisters::SD0); 837 failureCases.append(branchDouble(DoubleNotEqual , src, ARMRegisters::SD0));837 failureCases.append(branchDouble(DoubleNotEqualOrUnordered, src, ARMRegisters::SD0)); 838 838 839 839 // If the result is zero, it might have been -0.0, and 0.0 equals to -0.0 -
trunk/JavaScriptCore/jit/JITCall.cpp
r50201 r51067 316 316 317 317 DataLabelPtr addressOfLinkedFunctionCheck; 318 319 BEGIN_UNINTERRUPTED_SEQUENCE(sequenceOpCall); 320 318 321 Jump jumpToSlow = branchPtrWithPatch(NotEqual, regT0, addressOfLinkedFunctionCheck, ImmPtr(0)); 322 323 END_UNINTERRUPTED_SEQUENCE(sequenceOpCall); 324 319 325 addSlowCase(jumpToSlow); 320 326 ASSERT(differenceBetween(addressOfLinkedFunctionCheck, jumpToSlow) == patchOffsetOpCallCompareToJump);
Note:
See TracChangeset
for help on using the changeset viewer.