Changeset 93010 in webkit for trunk/Source/JavaScriptCore/dfg/DFGJITCompiler.cpp
- Timestamp:
- Aug 12, 2011, 4:27:45 PM (14 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/Source/JavaScriptCore/dfg/DFGJITCompiler.cpp
r92909 r93010 52 52 loadPtr(addressFor(node.virtualRegister()), temporary); 53 53 Jump isInteger = branchPtr(MacroAssembler::AboveOrEqual, temporary, GPRInfo::tagTypeNumberRegister); 54 jitAssertIsJSDouble(temporary); 55 addPtr(GPRInfo::tagTypeNumberRegister, temporary); 56 movePtrToDouble(temporary, fpr); 54 unboxDouble(temporary, fpr); 57 55 Jump hasUnboxedDouble = jump(); 58 56 isInteger.link(this); … … 198 196 } 199 197 200 jit.moveDoubleToPtr(fpr(), other.gpr()); 201 jit.subPtr(GPRInfo::tagTypeNumberRegister, other.gpr()); 198 jit.boxDouble(fpr(), other.gpr()); 202 199 203 200 if (done.isSet()) … … 207 204 208 205 if (UNLIKELY(other.isFPR())) { 209 jit.addPtr(GPRInfo::tagTypeNumberRegister, gpr()); 210 jit.movePtrToDouble(gpr(), other.fpr()); 206 jit.unboxDouble(gpr(), other.fpr()); 211 207 return; 212 208 } … … 254 250 } 255 251 256 jit.moveDoubleToPtr(fpr(), other.gpr()); 257 jit.subPtr(GPRInfo::tagTypeNumberRegister, other.gpr()); 252 jit.boxDouble(fpr(), other.gpr()); 258 253 259 254 if (done.isSet()) 260 255 done.link(&jit); 261 256 262 jit.addPtr(GPRInfo::tagTypeNumberRegister, scratchGPR); 263 jit.movePtrToDouble(scratchGPR, fpr()); 257 jit.unboxDouble(scratchGPR, fpr()); 264 258 return; 265 259 }
Note:
See TracChangeset
for help on using the changeset viewer.