Changeset 48938 in webkit for trunk/JavaScriptCore/jit/JITArithmetic.cpp
- Timestamp:
- Sep 30, 2009, 11:26:28 AM (16 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/JavaScriptCore/jit/JITArithmetic.cpp
r48920 r48938 2413 2413 unsigned op1 = currentInstruction[2].u.operand; 2414 2414 unsigned op2 = currentInstruction[3].u.operand; 2415 OperandTypes types = OperandTypes::fromInt(currentInstruction[4].u.operand); 2415 2416 2416 2417 if (!types.first().mightBeNumber() || !types.second().mightBeNumber()) { 2417 2418 JITStubCall stubCall(this, cti_op_add); 2418 stubCall.addArgument(op1 );2419 stubCall.addArgument(op2 );2420 stubCall.call( dst);2419 stubCall.addArgument(op1, regT2); 2420 stubCall.addArgument(op2, regT2); 2421 stubCall.call(result); 2421 2422 return; 2422 2423 } … … 2435 2436 emitPutVirtualRegister(result); 2436 2437 } else { 2437 OperandTypes types = OperandTypes::fromInt(currentInstruction[4].u.operand); 2438 if (types.first().mightBeNumber() && types.second().mightBeNumber()) 2439 compileBinaryArithOp(op_add, result, op1, op2, OperandTypes::fromInt(currentInstruction[4].u.operand)); 2440 else { 2441 JITStubCall stubCall(this, cti_op_add); 2442 stubCall.addArgument(op1, regT2); 2443 stubCall.addArgument(op2, regT2); 2444 stubCall.call(result); 2445 } 2438 compileBinaryArithOp(op_add, result, op1, op2, OperandTypes::fromInt(currentInstruction[4].u.operand)); 2446 2439 } 2447 2440 } … … 2453 2446 unsigned op2 = currentInstruction[3].u.operand; 2454 2447 2448 OperandTypes types = OperandTypes::fromInt(currentInstruction[4].u.operand); 2455 2449 if (!types.first().mightBeNumber() || !types.second().mightBeNumber()) 2456 2450 return;
Note:
See TracChangeset
for help on using the changeset viewer.