Lines Matching refs:op2
54 unsigned op2 = currentInstruction[3].u.operand;
56 emitGetVirtualRegisters(op1, regT0, op2, regT2);
71 unsigned op2 = currentInstruction[3].u.operand;
74 UNUSED_PARAM(op2);
87 unsigned op2 = currentInstruction[3].u.operand;
89 if (isOperandConstantImmediateInt(op2)) {
90 // isOperandConstantImmediateInt(op2) => 1 SlowCase
94 rshift32(Imm32(getConstantOperandImmediateInt(op2) & 0x1f), regT0);
96 emitGetVirtualRegisters(op1, regT0, op2, regT2);
122 unsigned op2 = currentInstruction[3].u.operand;
126 if (isOperandConstantImmediateInt(op2)) {
129 stubCall.addArgument(op2, regT2);
155 unsigned op2 = currentInstruction[3].u.operand;
159 if (isOperandConstantImmediateInt(op2)) {
163 int shift = getConstantOperand(op2).asInt32();
175 emitGetVirtualRegisters(op1, regT0, op2, regT1);
191 unsigned op2 = currentInstruction[3].u.operand;
192 if (isOperandConstantImmediateInt(op2)) {
193 int shift = getConstantOperand(op2).asInt32();
215 // op2 = regT1
224 failures.append(emitJumpIfNotImmediateInteger(regT1)); // op2 is not an int
235 linkSlowCase(iter); // int32 check - op2 is not an int
241 stubCall.addArgument(op2, regT1);
248 unsigned op2 = currentInstruction[2].u.operand;
257 emitGetVirtualRegister(op2, regT0);
265 if (isOperandConstantImmediateChar(op2)) {
271 addJump(branch32(GreaterThanOrEqual, regT0, Imm32(asString(getConstantOperand(op2))->tryGetValue()[0])), target);
274 if (isOperandConstantImmediateInt(op2)) {
277 int32_t op2imm = getConstantOperandImmediateInt(op2);
280 emitGetVirtualRegister(op2, regT1);
285 emitGetVirtualRegisters(op1, regT0, op2, regT1);
296 unsigned op2 = currentInstruction[2].u.operand;
303 if (isOperandConstantImmediateChar(op1) || isOperandConstantImmediateChar(op2)) {
310 stubCall.addArgument(op2, regT1);
316 if (isOperandConstantImmediateInt(op2)) {
324 int32_t op2imm = getConstantOperand(op2).asInt32();;
338 stubCall.addArgument(op2, regT2);
401 unsigned op2 = currentInstruction[2].u.operand;
410 emitGetVirtualRegister(op2, regT0);
418 if (isOperandConstantImmediateChar(op2)) {
424 addJump(branch32(LessThan, regT0, Imm32(asString(getConstantOperand(op2))->tryGetValue()[0])), target);
427 if (isOperandConstantImmediateInt(op2)) {
430 int32_t op2imm = getConstantOperandImmediateInt(op2);
433 emitGetVirtualRegister(op2, regT1);
438 emitGetVirtualRegisters(op1, regT0, op2, regT1);
449 unsigned op2 = currentInstruction[2].u.operand;
456 if (isOperandConstantImmediateChar(op1) || isOperandConstantImmediateChar(op2)) {
463 stubCall.addArgument(op2, regT1);
469 if (isOperandConstantImmediateInt(op2)) {
477 int32_t op2imm = getConstantOperand(op2).asInt32();
491 stubCall.addArgument(op2, regT2);
554 unsigned op2 = currentInstruction[2].u.operand;
563 emitGetVirtualRegister(op2, regT0);
571 if (isOperandConstantImmediateChar(op2)) {
577 addJump(branch32(invert ? GreaterThan : LessThanOrEqual, regT0, Imm32(asString(getConstantOperand(op2))->tryGetValue()[0])), target);
580 if (isOperandConstantImmediateInt(op2)) {
583 int32_t op2imm = getConstantOperandImmediateInt(op2);
586 emitGetVirtualRegister(op2, regT1);
591 emitGetVirtualRegisters(op1, regT0, op2, regT1);
602 unsigned op2 = currentInstruction[2].u.operand;
610 if (isOperandConstantImmediateChar(op1) || isOperandConstantImmediateChar(op2)) {
617 stubCall.addArgument(op2, regT1);
623 if (isOperandConstantImmediateInt(op2)) {
631 int32_t op2imm = getConstantOperand(op2).asInt32();;
645 stubCall.addArgument(op2, regT2);
719 unsigned op2 = currentInstruction[3].u.operand;
722 emitGetVirtualRegister(op2, regT0);
728 } else if (isOperandConstantImmediateInt(op2)) {
731 int32_t imm = getConstantOperandImmediateInt(op2);
736 emitGetVirtualRegisters(op1, regT0, op2, regT1);
747 unsigned op2 = currentInstruction[3].u.operand;
755 } else if (isOperandConstantImmediateInt(op2)) {
758 stubCall.addArgument(op2, regT2);
878 unsigned op2 = currentInstruction[3].u.operand;
887 emitGetVirtualRegisters(op1, regT0, op2, regT2);
917 unsigned op2 = currentInstruction[3].u.operand;
921 stubCall.addArgument(op2, regT2);
930 unsigned op2 = currentInstruction[3].u.operand;
936 stubCall.addArgument(op2, regT2);
949 void JIT::compileBinaryArithOp(OpcodeID opcodeID, unsigned, unsigned op1, unsigned op2, OperandTypes)
951 emitGetVirtualRegisters(op1, regT0, op2, regT1);
966 void JIT::compileBinaryArithOpSlowCase(OpcodeID opcodeID, Vector<SlowCaseEntry>::iterator& iter, unsigned result, unsigned op1, unsigned op2, OperandTypes types, bool op1HasImmediateIntFastCase, bool op2HasImmediateIntFastCase)
991 emitGetVirtualRegister(op2, regT1);
1010 emitGetVirtualRegister(op2, regT1);
1059 unsigned op2 = currentInstruction[3].u.operand;
1065 stubCall.addArgument(op2, regT2);
1071 emitGetVirtualRegister(op2, regT0);
1075 } else if (isOperandConstantImmediateInt(op2)) {
1078 addSlowCase(branchAdd32(Overflow, Imm32(getConstantOperandImmediateInt(op2)), regT0));
1081 compileBinaryArithOp(op_add, result, op1, op2, types);
1090 unsigned op2 = currentInstruction[3].u.operand;
1097 bool op2HasImmediateIntFastCase = !op1HasImmediateIntFastCase && isOperandConstantImmediateInt(op2);
1098 compileBinaryArithOpSlowCase(op_add, iter, result, op1, op2, OperandTypes::fromInt(currentInstruction[4].u.operand), op1HasImmediateIntFastCase, op2HasImmediateIntFastCase);
1105 unsigned op2 = currentInstruction[3].u.operand;
1111 emitGetVirtualRegister(op2, regT0);
1115 } else if (isOperandConstantImmediateInt(op2) && ((value = getConstantOperandImmediateInt(op2)) > 0)) {
1121 compileBinaryArithOp(op_mul, result, op1, op2, types);
1130 unsigned op2 = currentInstruction[3].u.operand;
1134 bool op2HasImmediateIntFastCase = !op1HasImmediateIntFastCase && isOperandConstantImmediateInt(op2) && getConstantOperandImmediateInt(op2) > 0;
1135 compileBinaryArithOpSlowCase(op_mul, iter, result, op1, op2, OperandTypes::fromInt(currentInstruction[4].u.operand), op1HasImmediateIntFastCase, op2HasImmediateIntFastCase);
1142 unsigned op2 = currentInstruction[3].u.operand;
1164 if (isOperandConstantImmediateDouble(op2)) {
1165 emitGetVirtualRegister(op2, regT1);
1168 } else if (isOperandConstantImmediateInt(op2)) {
1169 emitLoadInt32ToDouble(op2, fpRegT1);
1171 emitGetVirtualRegister(op2, regT1);
1195 unsigned op2 = currentInstruction[3].u.operand;
1207 if (!isOperandConstantImmediateDouble(op2) && !isOperandConstantImmediateInt(op2)) {
1211 // There is an extra slow case for (op1 * -N) or (-N * op2), to check for 0 since this should produce a result of -0.
1214 stubCall.addArgument(op2, regT2);
1222 unsigned op2 = currentInstruction[3].u.operand;
1225 compileBinaryArithOp(op_sub, result, op1, op2, types);
1233 unsigned op2 = currentInstruction[3].u.operand;
1236 compileBinaryArithOpSlowCase(op_sub, iter, result, op1, op2, types, false, false);