Home | History | Annotate | Download | only in Interpreter

Lines Matching defs:Dest

52      Dest.TY##Val = Src1.TY##Val OP Src2.TY##Val; \
55 static void executeFAddInst(GenericValue &Dest, GenericValue Src1,
66 static void executeFSubInst(GenericValue &Dest, GenericValue Src1,
77 static void executeFMulInst(GenericValue &Dest, GenericValue Src1,
88 static void executeFDivInst(GenericValue &Dest, GenericValue Src1,
99 static void executeFRemInst(GenericValue &Dest, GenericValue Src1,
103 Dest.FloatVal = fmod(Src1.FloatVal, Src2.FloatVal);
106 Dest.DoubleVal = fmod(Src1.DoubleVal, Src2.DoubleVal);
116 Dest.IntVal = APInt(1,Src1.IntVal.OP(Src2.IntVal)); \
122 Dest.AggregateVal.resize( Src1.AggregateVal.size() ); \
124 Dest.AggregateVal[_i].IntVal = APInt(1, \
134 Dest.IntVal = APInt(1,(void*)(intptr_t)Src1.PointerVal OP \
140 GenericValue Dest;
149 return Dest;
154 GenericValue Dest;
163 return Dest;
168 GenericValue Dest;
177 return Dest;
182 GenericValue Dest;
191 return Dest;
196 GenericValue Dest;
205 return Dest;
210 GenericValue Dest;
219 return Dest;
224 GenericValue Dest;
233 return Dest;
238 GenericValue Dest;
247 return Dest;
252 GenericValue Dest;
261 return Dest;
266 GenericValue Dest;
275 return Dest;
306 Dest.IntVal = APInt(1,Src1.TY##Val OP Src2.TY##Val); \
311 Dest.AggregateVal.resize( Src1.AggregateVal.size() ); \
313 Dest.AggregateVal[_i].IntVal = APInt(1, \
327 GenericValue Dest;
336 return Dest;
342 Dest.IntVal = APInt(1,false); \
343 return Dest; \
347 Dest.IntVal = APInt(1,false); \
348 return Dest; \
354 Dest.AggregateVal.resize( X.AggregateVal.size() ); \
358 Dest.AggregateVal[_i].IntVal = APInt(1,FLAG); \
360 Dest.AggregateVal[_i].IntVal = APInt(1,!FLAG); \
378 GenericValue Dest;
383 GenericValue DestMask = Dest;
396 Dest.AggregateVal[_i].IntVal = APInt(1,false);
398 return Dest;
403 GenericValue Dest;
412 return Dest;
417 GenericValue Dest;
426 return Dest;
431 GenericValue Dest;
440 return Dest;
445 GenericValue Dest;
454 return Dest;
460 Dest.IntVal = APInt(1,true); \
461 return Dest; \
464 Dest.IntVal = APInt(1,true); \
465 return Dest; \
470 GenericValue DestMask = Dest; \
471 Dest = FUNC(Src1, Src2, Ty); \
474 Dest.AggregateVal[_i].IntVal = APInt(1, true); \
475 return Dest; \
480 GenericValue Dest;
490 GenericValue Dest;
499 GenericValue Dest;
508 GenericValue Dest;
517 GenericValue Dest;
526 GenericValue Dest;
535 GenericValue Dest;
538 Dest.AggregateVal.resize( Src1.AggregateVal.size() );
541 Dest.AggregateVal[_i].IntVal = APInt(1,
548 Dest.AggregateVal[_i].IntVal = APInt(1,
555 Dest.IntVal = APInt(1,(Src1.FloatVal == Src1.FloatVal &&
558 Dest.IntVal = APInt(1,(Src1.DoubleVal == Src1.DoubleVal &&
561 return Dest;
566 GenericValue Dest;
569 Dest.AggregateVal.resize( Src1.AggregateVal.size() );
572 Dest.AggregateVal[_i].IntVal = APInt(1,
579 Dest.AggregateVal[_i].IntVal = APInt(1,
586 Dest.IntVal = APInt(1,(Src1.FloatVal != Src1.FloatVal ||
589 Dest.IntVal = APInt(1,(Src1.DoubleVal != Src1.DoubleVal ||
592 return Dest;
597 GenericValue Dest;
600 Dest.AggregateVal.resize( Src1.AggregateVal.size() );
602 Dest.AggregateVal[_i].IntVal = APInt(1,val);
604 Dest.IntVal = APInt(1, val);
607 return Dest;
792 GenericValue Dest;
796 Dest.AggregateVal.resize( Src1.AggregateVal.size() );
798 Dest.AggregateVal[i] = (Src1.AggregateVal[i].IntVal == 0) ?
801 Dest = (Src1.IntVal == 0) ? Src3 : Src2;
803 return Dest;
883 BasicBlock *Dest;
885 Dest = I.getSuccessor(0); // Uncond branches have a fixed dest...
889 Dest = I.getSuccessor(1);
891 SwitchToNewBasicBlock(Dest, SF);
901 BasicBlock *Dest = nullptr;
905 Dest = cast<BasicBlock>(i.getCaseSuccessor());
909 if (!Dest) Dest = I.getDefaultDest(); // No cases matched: use default
910 SwitchToNewBasicBlock(Dest, SF);
915 void *Dest = GVTOP(getOperandValue(I.getAddress(), SF));
916 SwitchToNewBasicBlock((BasicBlock*)Dest, SF);
930 void Interpreter::SwitchToNewBasicBlock(BasicBlock *Dest, ExecutionContext &SF){
932 SF.CurBB = Dest; // Update CurBB to branch destination
1082 case Intrinsic::vacopy: // va_copy: dest = src
1141 GenericValue Dest;
1152 Dest.AggregateVal.push_back(Result);
1158 Dest.IntVal = valueToShift.shl(getShiftAmount(shiftAmount, valueToShift));
1161 SetValue(&I, Dest, SF);
1168 GenericValue Dest;
1179 Dest.AggregateVal.push_back(Result);
1185 Dest.IntVal = valueToShift.lshr(getShiftAmount(shiftAmount, valueToShift));
1188 SetValue(&I, Dest, SF);
1195 GenericValue Dest;
1206 Dest.AggregateVal.push_back(Result);
1212 Dest.IntVal = valueToShift.ashr(getShiftAmount(shiftAmount, valueToShift));
1215 SetValue(&I, Dest, SF);
1220 GenericValue Dest, Src = getOperandValue(SrcVal, SF);
1227 Dest.AggregateVal.resize(NumElts);
1229 Dest.AggregateVal[i].IntVal = Src.AggregateVal[i].IntVal.trunc(DBitWidth);
1233 Dest.IntVal = Src.IntVal.trunc(DBitWidth);
1235 return Dest;
1241 GenericValue Dest, Src = getOperandValue(SrcVal, SF);
1247 Dest.AggregateVal.resize(size);
1249 Dest.AggregateVal[i].IntVal = Src.AggregateVal[i].IntVal.sext(DBitWidth);
1253 Dest.IntVal = Src.IntVal.sext(DBitWidth);
1255 return Dest;
1261 GenericValue Dest, Src = getOperandValue(SrcVal, SF);
1268 Dest.AggregateVal.resize(size);
1270 Dest.AggregateVal[i].IntVal = Src.AggregateVal[i].IntVal.zext(DBitWidth);
1274 Dest.IntVal = Src.IntVal.zext(DBitWidth);
1276 return Dest;
1281 GenericValue Dest, Src = getOperandValue(SrcVal, SF);
1290 Dest.AggregateVal.resize(size);
1292 Dest.AggregateVal[i].FloatVal = (float)Src.AggregateVal[i].DoubleVal;
1296 Dest.FloatVal = (float)Src.DoubleVal;
1299 return Dest;
1304 GenericValue Dest, Src = getOperandValue(SrcVal, SF);
1312 Dest.AggregateVal.resize(size);
1314 Dest.AggregateVal[i].DoubleVal = (double)Src.AggregateVal[i].FloatVal;
1318 Dest.DoubleVal = (double)Src.FloatVal;
1321 return Dest;
1327 GenericValue Dest, Src = getOperandValue(SrcVal, SF);
1335 Dest.AggregateVal.resize(size);
1340 Dest.AggregateVal[i].IntVal = APIntOps::RoundFloatToAPInt(
1344 Dest.AggregateVal[i].IntVal = APIntOps::RoundDoubleToAPInt(
1353 Dest.IntVal = APIntOps::RoundFloatToAPInt(Src.FloatVal, DBitWidth);
1355 Dest.IntVal = APIntOps::RoundDoubleToAPInt(Src.DoubleVal, DBitWidth);
1359 return Dest;
1365 GenericValue Dest, Src = getOperandValue(SrcVal, SF);
1373 Dest.AggregateVal.resize(size);
1378 Dest.AggregateVal[i].IntVal = APIntOps::RoundFloatToAPInt(
1382 Dest.AggregateVal[i].IntVal = APIntOps::RoundDoubleToAPInt(
1391 Dest.IntVal = APIntOps::RoundFloatToAPInt(Src.FloatVal, DBitWidth);
1393 Dest.IntVal = APIntOps::RoundDoubleToAPInt(Src.DoubleVal, DBitWidth);
1396 return Dest;
1401 GenericValue Dest, Src = getOperandValue(SrcVal, SF);
1407 Dest.AggregateVal.resize(size);
1412 Dest.AggregateVal[i].FloatVal =
1416 Dest.AggregateVal[i].DoubleVal =
1423 Dest.FloatVal = APIntOps::RoundAPIntToFloat(Src.IntVal);
1425 Dest.DoubleVal = APIntOps::RoundAPIntToDouble(Src.IntVal);
1428 return Dest;
1433 GenericValue Dest, Src = getOperandValue(SrcVal, SF);
1439 Dest.AggregateVal.resize(size);
1444 Dest.AggregateVal[i].FloatVal =
1448 Dest.AggregateVal[i].DoubleVal =
1456 Dest.FloatVal = APIntOps::RoundSignedAPIntToFloat(Src.IntVal);
1458 Dest.DoubleVal = APIntOps::RoundSignedAPIntToDouble(Src.IntVal);
1462 return Dest;
1468 GenericValue Dest, Src = getOperandValue(SrcVal, SF);
1471 Dest.IntVal = APInt(DBitWidth, (intptr_t) Src.PointerVal);
1472 return Dest;
1477 GenericValue Dest, Src = getOperandValue(SrcVal, SF);
1484 Dest.PointerVal = PointerTy(intptr_t(Src.IntVal.getZExtValue()));
1485 return Dest;
1494 GenericValue Dest, Src = getOperandValue(SrcVal, SF);
1597 Dest.AggregateVal.resize(DstNum);
1599 Dest.AggregateVal[i].DoubleVal =
1602 Dest.AggregateVal.resize(DstNum);
1604 Dest.AggregateVal[i].FloatVal =
1607 Dest = TempDst;
1611 Dest.DoubleVal = TempDst.AggregateVal[0].IntVal.bitsToDouble();
1613 Dest.FloatVal = TempDst.AggregateVal[0].IntVal.bitsToFloat();
1615 Dest.IntVal = TempDst.AggregateVal[0].IntVal;
1624 Dest.PointerVal = Src.PointerVal;
1627 Dest.IntVal = APInt::floatToBits(Src.FloatVal);
1629 Dest.IntVal = APInt::doubleToBits(Src.DoubleVal);
1631 Dest.IntVal = Src.IntVal;
1637 Dest.FloatVal = Src.IntVal.bitsToFloat();
1639 Dest.FloatVal = Src.FloatVal;
1643 Dest.DoubleVal = Src.IntVal.bitsToDouble();
1645 Dest.DoubleVal = Src.DoubleVal;
1652 return Dest;
1716 case Type::TY##TyID: Dest.TY##Val = Src.TY##Val; break
1724 GenericValue Dest;
1730 Dest.IntVal = Src.IntVal;
1736 dbgs() << "Unhandled dest type for vaarg instruction: " << *Ty << "\n";
1741 SetValue(&I, Dest, SF);
1751 GenericValue Dest;
1764 Dest.IntVal = Src1.AggregateVal[indx].IntVal;
1767 Dest.FloatVal = Src1.AggregateVal[indx].FloatVal;
1770 Dest.DoubleVal = Src1.AggregateVal[indx].DoubleVal;
1777 SetValue(&I, Dest, SF);
1785 llvm_unreachable("Unhandled dest type for insertelement instruction");
1790 GenericValue Dest;
1795 Dest.AggregateVal = Src1.AggregateVal;
1801 llvm_unreachable("Unhandled dest type for insertelement instruction");
1803 Dest.AggregateVal[indx].IntVal = Src2.IntVal;
1806 Dest.AggregateVal[indx].FloatVal = Src2.FloatVal;
1809 Dest.AggregateVal[indx].DoubleVal = Src2.DoubleVal;
1812 SetValue(&I, Dest, SF);
1820 llvm_unreachable("Unhandled dest type for shufflevector instruction");
1825 GenericValue Dest;
1836 Dest.AggregateVal.resize(src3Size);
1840 llvm_unreachable("Unhandled dest type for insertelement instruction");
1846 Dest.AggregateVal[i].IntVal = Src1.AggregateVal[j].IntVal;
1848 Dest.AggregateVal[i].IntVal = Src2.AggregateVal[j-src1Size].IntVal;
1862 Dest.AggregateVal[i].FloatVal = Src1.AggregateVal[j].FloatVal;
1864 Dest.AggregateVal[i].FloatVal = Src2.AggregateVal[j-src1Size].FloatVal;
1873 Dest.AggregateVal[i].DoubleVal = Src1.AggregateVal[j].DoubleVal;
1875 Dest.AggregateVal[i].DoubleVal =
1882 SetValue(&I, Dest, SF);
1888 GenericValue Dest;
1903 llvm_unreachable("Unhandled dest type for extractelement instruction");
1906 Dest.IntVal = pSrc->IntVal;
1909 Dest.FloatVal = pSrc->FloatVal;
1912 Dest.DoubleVal = pSrc->DoubleVal;
1917 Dest.AggregateVal = pSrc->AggregateVal;
1920 Dest.PointerVal = pSrc->PointerVal;
1924 SetValue(&I, Dest, SF);
1934 GenericValue Dest = Src1; // Dest is a slightly changed Src1
1939 GenericValue *pDest = &Dest;
1944 // pDest points to the target value in the Dest now
1950 llvm_unreachable("Unhandled dest type for insertelement instruction");
1971 SetValue(&I, Dest, SF);
2023 GenericValue Dest;
2026 case Instruction::Add: Dest.IntVal = Op0.IntVal + Op1.IntVal; break;
2027 case Instruction::Sub: Dest.IntVal = Op0.IntVal - Op1.IntVal; break;
2028 case Instruction::Mul: Dest.IntVal = Op0.IntVal * Op1.IntVal; break;
2029 case Instruction::FAdd: executeFAddInst(Dest, Op0, Op1, Ty); break;
2030 case Instruction::FSub: executeFSubInst(Dest, Op0, Op1, Ty); break;
2031 case Instruction::FMul: executeFMulInst(Dest, Op0, Op1, Ty); break;
2032 case Instruction::FDiv: executeFDivInst(Dest, Op0, Op1, Ty); break;
2033 case Instruction::FRem: executeFRemInst(Dest, Op0, Op1, Ty); break;
2034 case Instruction::SDiv: Dest.IntVal = Op0.IntVal.sdiv(Op1.IntVal); break;
2035 case Instruction::UDiv: Dest.IntVal = Op0.IntVal.udiv(Op1.IntVal); break;
2036 case Instruction::URem: Dest.IntVal = Op0.IntVal.urem(Op1.IntVal); break;
2037 case Instruction::SRem: Dest.IntVal = Op0.IntVal.srem(Op1.IntVal); break;
2038 case Instruction::And: Dest.IntVal = Op0.IntVal & Op1.IntVal; break;
2039 case Instruction::Or: Dest.IntVal = Op0.IntVal | Op1.IntVal; break;
2040 case Instruction::Xor: Dest.IntVal = Op0.IntVal ^ Op1.IntVal; break;
2042 Dest.IntVal = Op0.IntVal.shl(Op1.IntVal.getZExtValue());
2045 Dest.IntVal = Op0.IntVal.lshr(Op1.IntVal.getZExtValue());
2048 Dest.IntVal = Op0.IntVal.ashr(Op1.IntVal.getZExtValue());
2054 return Dest;