reference, declarationdefinition
definition → references, declarations, derived classes, virtual overrides
reference to multiple definitions → definitions
unreferenced

References

examples/BrainF/BrainF.cpp
  217             CreateTrunc(tape_0, IntegerType::getInt8Ty(C), tapereg);
include/llvm/IR/IRBuilder.h
 1912       return CreateTrunc(V, DestTy, Name);
 1927       return CreateTrunc(V, DestTy, Name);
 2519       V = CreateTrunc(V, ExtractedTy, Name + ".trunc");
lib/Analysis/ScalarEvolutionExpander.cpp
 1445       Result = Builder.CreateTrunc(Result, TruncTy);
 1638   Value *I = Builder.CreateTrunc(V, Ty);
lib/CodeGen/AtomicExpandPass.cpp
  675   Ret.ShiftAmt = Builder.CreateTrunc(Ret.ShiftAmt, Ret.WordType, "ShiftAmt");
  721     Value *Loaded_Shiftdown = Builder.CreateTrunc(
  768   Value *FinalOldResult = Builder.CreateTrunc(
  802   Value *FinalOldResult = Builder.CreateTrunc(
  925   Value *FinalOldVal = Builder.CreateTrunc(
  967   Value *FinalOldResult = Builder.CreateTrunc(
  989   Value *FinalOldVal = Builder.CreateTrunc(
lib/CodeGen/CodeGenPrepare.cpp
 2416       Val = Builder.CreateTrunc(Opnd, Ty, "promoted");
 4870           V = Builder.CreateTrunc(V, IntPtrTy, "sunkaddr");
 4957         V = Builder.CreateTrunc(V, IntPtrTy, "sunkaddr");
lib/IR/AutoUpgrade.cpp
 2229       Value *Trunc0 = Builder.CreateTrunc(CI->getArgOperand(0), Type::getInt32Ty(C));
 2276       Rep = Builder.CreateTrunc(CI->getArgOperand(0), Ty);
 3459       Rep = Builder.CreateTrunc(Ctlz, Builder.getInt32Ty(), "ctlz.trunc");
 3468       Rep = Builder.CreateTrunc(Popc, Builder.getInt32Ty(), "ctpop.trunc");
 3663     Args.back() = Builder.CreateTrunc(Args.back(), Type::getInt8Ty(C), "trunc");
lib/IR/Core.cpp
 3706   return wrap(unwrap(B)->CreateTrunc(unwrap(Val), unwrap(DestTy), Name));
lib/Target/AArch64/AArch64ISelLowering.cpp
12203   Value *Trunc = Builder.CreateTrunc(Builder.CreateCall(Ldxr, Addr), IntEltTy);
12229     Value *Lo = Builder.CreateTrunc(Val, Int64Ty, "lo");
12230     Value *Hi = Builder.CreateTrunc(Builder.CreateLShr(Val, 64), Int64Ty, "hi");
lib/Target/AMDGPU/AMDGPUAtomicOptimizer.cpp
  494       Value *const ExtractLo = B.CreateTrunc(NewV, B.getInt32Ty());
  496           B.CreateTrunc(B.CreateLShr(NewV, 32), B.getInt32Ty());
  593       Value *const ExtractLo = B.CreateTrunc(PHI, B.getInt32Ty());
  595           B.CreateTrunc(B.CreateLShr(PHI, 32), B.getInt32Ty());
lib/Target/AMDGPU/AMDGPUCodeGenPrepare.cpp
  322   TruncRes = Builder.CreateTrunc(ExtRes, I.getType());
  378   TruncRes = Builder.CreateTrunc(ExtRes, I.getType());
  404       Builder.CreateTrunc(LShrOp, I.getType());
  623   Value *Lo = Builder.CreateTrunc(MUL64, I32Ty);
  625   Hi = Builder.CreateTrunc(Hi, I32Ty);
  729     Res = Builder.CreateTrunc(Res, Builder.getIntNTy(DivBits));
  771     Res = Builder.CreateTrunc(Res, Ty);
  880   Res = Builder.CreateTrunc(Res, Ty);
  968     Value *ValTrunc = Builder.CreateTrunc(WidenLoad, IntNTy);
lib/Target/AMDGPU/AMDGPULowerKernelArguments.cpp
  207       Value *Trunc = Builder.CreateTrunc(ExtractBits, ArgIntTy);
lib/Target/ARM/ARMCodeGenPrepare.cpp
  618     auto *Trunc = dyn_cast<Instruction>(Builder.CreateTrunc(V, TruncTy));
lib/Target/ARM/ARMISelLowering.cpp
16665     Value *Lo = Builder.CreateTrunc(Val, Int32Ty, "lo");
16666     Value *Hi = Builder.CreateTrunc(Builder.CreateLShr(Val, 32), Int32Ty, "hi");
lib/Target/ARM/ARMParallelDSP.cpp
  784   Value *Bottom = IRB.CreateTrunc(WideLoad, Base->getType());
  791   Value *Trunc = IRB.CreateTrunc(Top, OffsetTy);
lib/Target/Hexagon/HexagonLoopIdiomRecognition.cpp
 1100       Value *T = IRBuilder<>(ExitB, End).CreateTrunc(P, PTy);
 1550     P = B.CreateTrunc(P, QI->getType());
lib/Target/RISCV/RISCVISelLowering.cpp
 2843     Result = Builder.CreateTrunc(Result, Builder.getInt32Ty());
 2874     Result = Builder.CreateTrunc(Result, Builder.getInt32Ty());
lib/Transforms/InstCombine/InstCombineAndOrXor.cpp
 1859         Value *NewCast = Builder.CreateTrunc(X, I.getType(), "and.shrunk");
 2125     return Builder.CreateTrunc(A, CmpInst::makeCmpResultType(Ty));
lib/Transforms/InstCombine/InstCombineCalls.cpp
  607   return Builder.CreateTrunc(Shuffle, ResTy);
lib/Transforms/InstCombine/InstCombineCasts.cpp
  567   Value *NarrowShAmt = Builder.CreateTrunc(ShAmt, DestTy);
  568   Value *X = Builder.CreateTrunc(ShVal, DestTy);
  602       Value *TruncX = Builder.CreateTrunc(BinOp1, DestTy);
  608       Value *TruncX = Builder.CreateTrunc(BinOp0, DestTy);
  614       Value *NarrowOp1 = Builder.CreateTrunc(BinOp1, DestTy);
  619       Value *NarrowOp0 = Builder.CreateTrunc(BinOp0, DestTy);
  645     Value *NarrowOp = Builder.CreateTrunc(Shuf->getOperand(0), Trunc.getType());
  831         Value *NewTrunc = Builder.CreateTrunc(A, DestTy, A->getName() + ".tr");
 1167       Value *Trunc = Builder.CreateTrunc(A, CI.getType());
lib/Transforms/InstCombine/InstCombineCompares.cpp
  317       Idx = Builder.CreateTrunc(Idx, IntPtrTy);
  490       VariableIdx = IC.Builder.CreateTrunc(VariableIdx, IntPtrTy);
  946             ROffset = Builder.CreateTrunc(ROffset, LHSIndexTy);
  948             LOffset = Builder.CreateTrunc(LOffset, RHSIndexTy);
 1324   Value *TruncA = Builder.CreateTrunc(A, NewType, A->getName() + ".trunc");
 1325   Value *TruncB = Builder.CreateTrunc(B, NewType, B->getName() + ".trunc");
 1868       Value *Trunc = Builder.CreateTrunc(X, NTy);
 2156     return new ICmpInst(Pred, Builder.CreateTrunc(X, TruncTy), NewC);
 4204       return new ICmpInst(Pred, A, Builder.CreateTrunc(B, A->getType()));
lib/Transforms/InstCombine/InstCombinePHI.cpp
 1089         Res = Builder.CreateTrunc(Res, Ty, "extract.t");
lib/Transforms/InstCombine/InstCombineVectorOps.cpp
  248       return new BitCastInst(Builder.CreateTrunc(Scalar, DestIntTy), DestTy);
lib/Transforms/InstCombine/InstructionCombining.cpp
 2631     Value *NewCond = Builder.CreateTrunc(Cond, Ty, "trunc");
lib/Transforms/Instrumentation/DataFlowSanitizer.cpp
 1245     Value *TruncShadow = IRB.CreateTrunc(WideShadow, DFS.ShadowTy);
lib/Transforms/Instrumentation/HWAddressSanitizer.cpp
  629   Value *PtrTag = IRB.CreateTrunc(IRB.CreateLShr(PtrLong, kPointerTagShift),
  656   Value *PtrLowBits = IRB.CreateTrunc(IRB.CreateAnd(PtrLong, 15), Int8Ty);
  780   Value *JustTag = IRB.CreateTrunc(Tag, IRB.getInt8Ty());
lib/Transforms/Instrumentation/MemorySanitizer.cpp
 1897     setShadow(&I, IRB.CreateTrunc(getShadow(&I, 0), I.getType(), "_msprop"));
lib/Transforms/Scalar/IndVarSimplify.cpp
 1351   Value *Trunc = Builder.CreateTrunc(DU.WideDef, DU.NarrowDef->getType());
 1567         Value *Trunc = Builder.CreateTrunc(WidePhi, DU.NarrowDef->getType());
 1596         NewDef = Builder.CreateTrunc(DU.WideDef, DU.NarrowUse->getType());
 2534       CmpIndVar = Builder.CreateTrunc(CmpIndVar, ExitCnt->getType(),
lib/Transforms/Scalar/SROA.cpp
 2147     V = IRB.CreateTrunc(V, Ty, Name + ".trunc");
 2696             V = IRB.CreateTrunc(V, AITy, "load.trunc");
lib/Transforms/Utils/BypassSlowDivision.cpp
  374     Value *TruncDividend = Builder.CreateTrunc(Dividend, BypassType);
  375     Value *TruncDivisor = Builder.CreateTrunc(Divisor, BypassType);
lib/Transforms/Utils/IntegerDivision.cpp
  520   Trunc = Builder.CreateTrunc(ExtRem, RemTy);
  568   Trunc = Builder.CreateTrunc(ExtRem, RemTy);
  617   Trunc = Builder.CreateTrunc(ExtDiv, DivTy);
  666   Trunc = Builder.CreateTrunc(ExtDiv, DivTy);
lib/Transforms/Utils/SimplifyCFG.cpp
 5124     return Builder.CreateTrunc(DownShifted, BitMapElementTy, "switch.masked");
 5463     Value *LoBit = Builder.CreateTrunc(
lib/Transforms/Utils/SimplifyLibCalls.cpp
 2446     Value *V = B.CreateTrunc(CI->getArgOperand(2), B.getInt8Ty(), "char");
 2558       Value *V = B.CreateTrunc(CI->getArgOperand(3), B.getInt8Ty(), "char");
lib/Transforms/Utils/VNCoercion.cpp
  444     RV = Builder.CreateTrunc(RV, SrcVal->getType());
lib/Transforms/Vectorize/LoopVectorize.cpp
 1687     Step = Builder.CreateTrunc(Step, TruncType);
 1861       ScalarIV = Builder.CreateTrunc(ScalarIV, TruncType);
 1862       Step = Builder.CreateTrunc(Step, TruncType);
 3752       Value *Trunc = Builder.CreateTrunc(RdxParts[Part], RdxVecTy);
 3766       RdxParts[Part] = Builder.CreateTrunc(RdxParts[Part], RdxVecTy);
lib/Transforms/Vectorize/SLPVectorizer.cpp
 4259     auto *Trunc = Builder.CreateTrunc(VectorRoot, VecTy);
tools/clang/lib/CodeGen/CGBuiltin.cpp
  439     V = CGF.Builder.CreateTrunc(V, IntTy);
  767       CGF.Builder.CreateAnd(CGF.Builder.CreateTrunc(BitPos, CGF.Int8Ty),
 1367     Result = CGF.Builder.CreateTrunc(SignedResult, ResTy);
 1385     Result = CGF.Builder.CreateTrunc(Result, ResTy);
 2468     Value *ByteVal = Builder.CreateTrunc(EmitScalarExpr(E->getArg(1)),
 2487     Value *ByteVal = Builder.CreateTrunc(EmitScalarExpr(E->getArg(1)),
 3279       llvm::Value *ResultTrunc = Builder.CreateTrunc(Result, ResultLLVMTy);
 5294     return Builder.CreateTrunc(Ops[0], VTy, "vaddhn");
 5556     return Builder.CreateTrunc(Ops[0], Ty, "vmovn");
 5641     return Builder.CreateTrunc(Ops[0], Ty, "vshrn_n");
 5696     return Builder.CreateTrunc(Ops[0], VTy, "vsubhn");
 5945       return Builder.CreateTrunc(Call, ValueType);
 7634     return Builder.CreateTrunc(Ops[0], Int16Ty);
 7657     return Builder.CreateTrunc(Ops[0], Int16Ty);
 7674     return Builder.CreateTrunc(Ops[0], Int16Ty);
 8768     return Builder.CreateTrunc(Ops[0], Int8Ty);
 8780     return Builder.CreateTrunc(Ops[0], Int16Ty);
 8792     return Builder.CreateTrunc(Ops[0], Int8Ty);
 8804     return Builder.CreateTrunc(Ops[0], Int16Ty);
 8813     return Builder.CreateTrunc(Ops[0], Int8Ty);
 8822     return Builder.CreateTrunc(Ops[0], Int16Ty);
 8831     return Builder.CreateTrunc(Ops[0], Int8Ty);
 8840     return Builder.CreateTrunc(Ops[0], Int16Ty);
 8849     return Builder.CreateTrunc(Ops[0], Int8Ty);
 8858     return Builder.CreateTrunc(Ops[0], Int16Ty);
 8867     return Builder.CreateTrunc(Ops[0], Int8Ty);
 8876     return Builder.CreateTrunc(Ops[0], Int16Ty);
 8885     return Builder.CreateTrunc(Ops[0], HalfTy);
 8894     return Builder.CreateTrunc(Ops[0], HalfTy);
 8903     return Builder.CreateTrunc(Ops[0], Int8Ty);
 8912     return Builder.CreateTrunc(Ops[0], Int16Ty);
 8921     return Builder.CreateTrunc(Ops[0], Int8Ty);
 8930     return Builder.CreateTrunc(Ops[0], Int16Ty);
 8939     return Builder.CreateTrunc(Ops[0], Int8Ty);
 8948     return Builder.CreateTrunc(Ops[0], Int16Ty);
 8957     return Builder.CreateTrunc(Ops[0], Int8Ty);
 8966     return Builder.CreateTrunc(Ops[0], Int16Ty);
 8975     return Builder.CreateTrunc(Ops[0], HalfTy);
 8984     return Builder.CreateTrunc(Ops[0], HalfTy);
 8993     return Builder.CreateTrunc(Ops[0], HalfTy);
 9002     return Builder.CreateTrunc(Ops[0], HalfTy);
 9011     return Builder.CreateTrunc(Ops[0], HalfTy);
 9020     return Builder.CreateTrunc(Ops[0], HalfTy);
 9034     return Builder.CreateTrunc(Ops[0], Int16Ty);
 9051     return Builder.CreateTrunc(Ops[0], Int16Ty);
 9068     return Builder.CreateTrunc(Ops[0], Int16Ty);
 9085     return Builder.CreateTrunc(Ops[0], Int16Ty);
10360     Value *Mhi = Builder.CreateTrunc(
10362     Value *Mlo = Builder.CreateTrunc(Ops[1], Int32Ty);
10931     Value *Res = Builder.CreateTrunc(Ops[0], Ops[1]->getType());
10939         return Builder.CreateTrunc(Ops[0], Ops[1]->getType());
12231     return Builder.CreateTrunc(Res, Int64Ty);
14267       Value *Trunc = Builder.CreateTrunc(Val, ElemType);
14530     DestVal = Builder.CreateTrunc(DestVal, DestTy);
tools/clang/lib/CodeGen/CGCall.cpp
 1192         Val = CGF.Builder.CreateTrunc(Val, DestIntTy, "coerce.val.ii");
 2177     return CGF.Builder.CreateTrunc(value, varType, "arg.unpromote");
tools/clang/lib/CodeGen/CGExpr.cpp
  817       Hash = Builder.CreateTrunc(Hash, IntPtrTy);
 1710     return Builder.CreateTrunc(Value, Builder.getInt1Ty(), "tobool");
tools/clang/lib/CodeGen/CGExprCXX.cpp
  814       numElements = CGF.Builder.CreateTrunc(numElements, CGF.SizeTy);
tools/clang/lib/CodeGen/CGExprScalar.cpp
 3145   handlerResult = Builder.CreateTrunc(handlerResult, opTy);
 3816         Result = Builder.CreateTrunc(Result, Builder.getInt1Ty());
 4317       Val = Builder.CreateTrunc(Val, ArgTy);
tools/clang/lib/CodeGen/CGObjC.cpp
 1078       ivarVal = Builder.CreateTrunc(load, newTy);
tools/clang/lib/CodeGen/CGStmt.cpp
 2313         Tmp = Builder.CreateTrunc(Tmp,
 2320         Tmp = Builder.CreateTrunc(Tmp, TruncTy);
tools/clang/lib/CodeGen/ItaniumCXXABI.cpp
  644     VTableOffset = Builder.CreateTrunc(VTableOffset, CGF.Int32Ty);
tools/clang/lib/CodeGen/MicrosoftCXXABI.cpp
  980   Offset = CGF.Builder.CreateTrunc(Offset, CGF.Int32Ty);
tools/clang/lib/CodeGen/TargetInfo.cpp
 7287     llvm::Value *V = CGF.Builder.CreateTrunc(Promoted, IntTy);
tools/polly/lib/CodeGen/LoopGeneratorsGOMP.cpp
  139   Value *HasNextSchedule = Builder.CreateTrunc(