Lines Matching full:instruction
179 case Instruction::UDiv:
180 case Instruction::SDiv:
181 case Instruction::FDiv:
182 case Instruction::URem:
183 case Instruction::SRem:
184 case Instruction::FRem:
237 if (CE->getOpcode() == Instruction::Sub) {
241 LHS->getOpcode() == Instruction::PtrToInt &&
242 RHS->getOpcode() == Instruction::PtrToInt &&
739 // can't be inline because we don't want to #include Instruction.h into
742 return Instruction::isCast(getOpcode());
746 return getOpcode() == Instruction::ICmp || getOpcode() == Instruction::FCmp;
750 if (getOpcode() != Instruction::GetElementPtr) return false;
775 return getOpcode() == Instruction::ExtractValue ||
776 getOpcode() == Instruction::InsertValue;
804 case Instruction::Trunc:
805 case Instruction::ZExt:
806 case Instruction::SExt:
807 case Instruction::FPTrunc:
808 case Instruction::FPExt:
809 case Instruction::UIToFP:
810 case Instruction::SIToFP:
811 case Instruction::FPToUI:
812 case Instruction::FPToSI:
813 case Instruction::PtrToInt:
814 case Instruction::IntToPtr:
815 case Instruction::BitCast:
817 case Instruction::Select:
822 case Instruction::InsertElement:
827 case Instruction::ExtractElement:
831 case Instruction::ShuffleVector:
836 case Instruction::GetElementPtr: {
872 case Instruction::Trunc:
873 case Instruction::ZExt:
874 case Instruction::SExt:
875 case Instruction::FPTrunc:
876 case Instruction::FPExt:
877 case Instruction::UIToFP:
878 case Instruction::SIToFP:
879 case Instruction::FPToUI:
880 case Instruction::FPToSI:
881 case Instruction::PtrToInt:
882 case Instruction::IntToPtr:
883 case Instruction::BitCast:
885 case Instruction::Select:
887 case Instruction::InsertElement:
889 case Instruction::ExtractElement:
891 case Instruction::ShuffleVector:
893 case Instruction::GetElementPtr:
897 case Instruction::ICmp:
898 case Instruction::FCmp:
1212 Instruction::CastOps opc, Constant *C, Type *Ty) {
1228 Instruction::CastOps opc = Instruction::CastOps(oc);
1229 assert(Instruction::isCast(opc) && "opcode out of range");
1237 case Instruction::Trunc: return getTrunc(C, Ty);
1238 case Instruction::ZExt: return getZExt(C, Ty);
1239 case Instruction::SExt: return getSExt(C, Ty);
1240 case Instruction::FPTrunc: return getFPTrunc(C, Ty);
1241 case Instruction::FPExt: return getFPExtend(C, Ty);
1242 case Instruction::UIToFP: return getUIToFP(C, Ty);
1243 case Instruction::SIToFP: return getSIToFP(C, Ty);
1244 case Instruction::FPToUI: return getFPToUI(C, Ty);
1245 case Instruction::FPToSI: return getFPToSI(C, Ty);
1246 case Instruction::PtrToInt: return getPtrToInt(C, Ty);
1247 case Instruction::IntToPtr: return getIntToPtr(C, Ty);
1248 case Instruction::BitCast: return getBitCast(C, Ty);
1286 Instruction::CastOps opcode =
1287 (SrcBits == DstBits ? Instruction::BitCast :
1288 (SrcBits > DstBits ? Instruction::Trunc :
1289 (isSigned ? Instruction::SExt : Instruction::ZExt)));
1300 Instruction::CastOps opcode =
1301 (SrcBits > DstBits ? Instruction::FPTrunc : Instruction::FPExt);
1316 return getFoldedCast(Instruction::Trunc, C, Ty);
1330 return getFoldedCast(Instruction::SExt, C, Ty);
1344 return getFoldedCast(Instruction::ZExt, C, Ty);
1356 return getFoldedCast(Instruction::FPTrunc, C, Ty);
1368 return getFoldedCast(Instruction::FPExt, C, Ty);
1379 return getFoldedCast(Instruction::UIToFP, C, Ty);
1390 return getFoldedCast(Instruction::SIToFP, C, Ty);
1401 return getFoldedCast(Instruction::FPToUI, C, Ty);
1412 return getFoldedCast(Instruction::FPToSI, C, Ty);
1418 return getFoldedCast(Instruction::PtrToInt, C, DstTy);
1424 return getFoldedCast(Instruction::IntToPtr, C, DstTy);
1428 assert(CastInst::castIsValid(Instruction::BitCast, C, DstTy) &&
1435 return getFoldedCast(Instruction::BitCast, C, DstTy);
1441 assert(Opcode >= Instruction::BinaryOpsBegin &&
1442 Opcode < Instruction::BinaryOpsEnd &&
1449 case Instruction::Add:
1450 case Instruction::Sub:
1451 case Instruction::Mul:
1456 case Instruction::FAdd:
1457 case Instruction::FSub:
1458 case Instruction::FMul:
1464 case Instruction::UDiv:
1465 case Instruction::SDiv:
1470 case Instruction::FDiv:
1475 case Instruction::URem:
1476 case Instruction::SRem:
1481 case Instruction::FRem:
1486 case Instruction::And:
1487 case Instruction::Or:
1488 case Instruction::Xor:
1493 case Instruction::Shl:
1494 case Instruction::LShr:
1495 case Instruction::AShr:
1589 ExprMapKeyType Key(Instruction::Select, argVec);
1616 const ExprMapKeyType Key(Instruction::GetElementPtr, ArgVec, 0,
1637 const ExprMapKeyType Key(Instruction::ICmp, ArgVec, pred);
1660 const ExprMapKeyType Key(Instruction::FCmp, ArgVec, pred);
1682 const ExprMapKeyType Key(Instruction::ExtractElement,ArgVec);
1704 const ExprMapKeyType Key(Instruction::InsertElement,ArgVec);
1726 const ExprMapKeyType Key(Instruction::ShuffleVector,ArgVec);
1776 return get(Instruction::Xor, C, Constant::getAllOnesValue(C->getType()));
1783 return get(Instruction::Add, C1, C2, Flags);
1787 return get(Instruction::FAdd, C1, C2);
1794 return get(Instruction::Sub, C1, C2, Flags);
1798 return get(Instruction::FSub, C1, C2);
1805 return get(Instruction::Mul, C1, C2, Flags);
1809 return get(Instruction::FMul, C1, C2);
1813 return get(Instruction::UDiv, C1, C2,
1818 return get(Instruction::SDiv, C1, C2,
1823 return get(Instruction::FDiv, C1, C2);
1827 return get(Instruction::URem, C1, C2);
1831 return get(Instruction::SRem, C1, C2);
1835 return get(Instruction::FRem, C1, C2);
1839 return get(Instruction::And, C1, C2);
1843 return get(Instruction::Or, C1, C2);
1847 return get(Instruction::Xor, C1, C2);
1854 return get(Instruction::Shl, C1, C2, Flags);
1858 return get(Instruction::LShr, C1, C2,
1863 return get(Instruction::AShr, C1, C2,
1875 return Instruction::getOpcodeName(getOpcode());
1883 : ConstantExpr(DestTy, Instruction::GetElementPtr,
2084 if (getOpcode() == Instruction::GetElementPtr) {
2098 } else if (getOpcode() == Instruction::ExtractValue) {
2104 } else if (getOpcode() == Instruction::InsertValue) {
2115 } else if (getOpcode() == Instruction::Select) {
2123 } else if (getOpcode() == Instruction::ExtractElement) {
2129 } else if (getOpcode() == Instruction::InsertElement) {
2137 } else if (getOpcode() == Instruction::ShuffleVector) {
2150 if (getOpcode() == Instruction::ICmp)
2153 assert(getOpcode() == Instruction::FCmp);