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

References

include/llvm/Analysis/TargetTransformInfoImpl.h
   95     case Instruction::Trunc:
include/llvm/CodeGen/BasicTTIImpl.h
  416     case Instruction::Trunc:
  700       if (Opcode == Instruction::BitCast || Opcode == Instruction::Trunc)
  704     if (Opcode == Instruction::Trunc &&
 1373           2 * ConcreteTTI->getCastInstrCost(Instruction::Trunc, RetTy, ExtTy);
 1437           2 * ConcreteTTI->getCastInstrCost(Instruction::Trunc, MulTy, ExtTy);
include/llvm/IR/IRBuilder.h
 1890     return CreateCast(Instruction::Trunc, V, DestTy, Name);
include/llvm/IR/Instructions.h
 4739     return I->getOpcode() == Trunc;
include/llvm/IR/PatternMatch.h
 1300 inline CastClass_match<OpTy, Instruction::Trunc> m_Trunc(const OpTy &Op) {
 1301   return CastClass_match<OpTy, Instruction::Trunc>(Op);
 1305 inline match_combine_or<CastClass_match<OpTy, Instruction::Trunc>, OpTy>
lib/Analysis/CFLGraph.h
  529       case Instruction::Trunc:
lib/Analysis/ConstantFolding.cpp
 1352   case Instruction::Trunc:
lib/Analysis/DemandedBits.cpp
  263   case Instruction::Trunc:
lib/Analysis/InstructionSimplify.cpp
  796         if (Value *W = SimplifyCastInst(Instruction::Trunc, V, Op0->getType(),
 4904   if (LoadedCE->getOpcode() == Instruction::Trunc) {
lib/Analysis/LazyValueInfo.cpp
 1029   case Instruction::Trunc:
lib/Analysis/ObjCARCInstKind.cpp
  272     case Instruction::Trunc:
lib/Analysis/ScalarEvolution.cpp
 6447   case Instruction::Trunc:
lib/Analysis/TargetTransformInfo.cpp
 1222   case Instruction::Trunc:
lib/Analysis/ValueTracking.cpp
 1130   case Instruction::Trunc: {
 2594     case Instruction::Trunc:
 4326   case Instruction::Trunc:
 4987   case Instruction::Trunc:
lib/AsmParser/LLLexer.cpp
  852   INSTKEYWORD(trunc,       Trunc);
lib/Bitcode/Reader/BitcodeReader.cpp
 1041   case bitc::CAST_TRUNC   : return Instruction::Trunc;
lib/Bitcode/Writer/BitcodeWriter.cpp
  504   case Instruction::Trunc   : return bitc::CAST_TRUNC;
lib/CodeGen/AsmPrinter/AsmPrinter.cpp
 2217   case Instruction::Trunc:
lib/CodeGen/CodeGenPrepare.cpp
 5762     case Instruction::Trunc: {
lib/CodeGen/SelectionDAG/FastISel.cpp
 1889   case Instruction::Trunc:
lib/CodeGen/TargetLoweringBase.cpp
 1617   case Trunc:          return ISD::TRUNCATE;
lib/ExecutionEngine/ExecutionEngine.cpp
  656     case Instruction::Trunc: {
lib/ExecutionEngine/Interpreter/Execution.cpp
 2024   case Instruction::Trunc:
lib/IR/ConstantFold.cpp
  706   case Instruction::Trunc: {
 1630     case Instruction::Trunc:
lib/IR/ConstantRange.cpp
  631   case Instruction::Trunc:
lib/IR/Constants.cpp
 1247   case Instruction::Trunc:
 1571   case Instruction::Trunc:
 1651      (SrcBits > DstBits ? Instruction::Trunc :
 1679   return getFoldedCast(Instruction::Trunc, C, Ty, OnlyIfReduced);
 2990   case Instruction::Trunc:
lib/IR/Instruction.cpp
  340   case Trunc:         return "trunc";
lib/IR/Instructions.cpp
 2456     case Instruction::Trunc:
 2495     case Instruction::Trunc:
 2752   case Trunc:         return new TruncInst         (S, Ty, Name, InsertBefore);
 2774   case Trunc:         return new TruncInst         (S, Ty, Name, InsertAtEnd);
 2828   return Create(Instruction::Trunc, S, Ty, Name, InsertBefore);
 2836   return Create(Instruction::Trunc, S, Ty, Name, InsertAtEnd);
 2920      (SrcBits > DstBits ? Instruction::Trunc :
 2934      (SrcBits > DstBits ? Instruction::Trunc :
 3113         return Trunc;                               // int -> smaller int
 3211   case Instruction::Trunc:
 3304 ) : CastInst(Ty, Trunc, S, Name, InsertBefore) {
 3310 ) : CastInst(Ty, Trunc, S, Name, InsertAtEnd) {
lib/Target/AArch64/AArch64FastISel.cpp
 5193   case Instruction::Trunc:
lib/Target/AArch64/AArch64ISelLowering.cpp
 8606     case Instruction::Trunc:
lib/Target/AArch64/AArch64TargetTransformInfo.cpp
  125   case Instruction::Trunc:
lib/Target/ARM/ARMCodeGenPrepare.cpp
  819     case Instruction::Trunc:
lib/Target/ARM/ARMFastISel.cpp
 2872     case Instruction::Trunc:
lib/Target/Hexagon/HexagonLoopIdiomRecognition.cpp
  988     case Instruction::Trunc:
lib/Target/Mips/MipsFastISel.cpp
 2073   case Instruction::Trunc:
lib/Target/NVPTX/NVPTXAsmPrinter.cpp
 2045   case Instruction::Trunc:
lib/Target/PowerPC/PPCFastISel.cpp
 1977     case Instruction::Trunc:
lib/Target/SystemZ/SystemZTargetTransformInfo.cpp
  166   case Instruction::Trunc:
  683     if (Opcode == Instruction::Trunc) {
lib/Target/WebAssembly/WebAssemblyFastISel.cpp
 1368   case Instruction::Trunc:
lib/Target/X86/X86FastISel.cpp
 3631   case Instruction::Trunc:
lib/Target/X86/X86TargetTransformInfo.cpp
 3032   case Instruction::Trunc:
lib/Target/XCore/XCoreLowerThreadLocal.cpp
  107     case Instruction::Trunc:
lib/Transforms/AggressiveInstCombine/TruncInstCombine.cpp
   44   case Instruction::Trunc:
  104     case Instruction::Trunc:
  311     case Instruction::Trunc:
lib/Transforms/InstCombine/InstCombineCasts.cpp
  192   case Instruction::Trunc:
  419   case Instruction::Trunc:
  660   assert((Opcode == Instruction::Trunc || Opcode == Instruction::FPTrunc) &&
  995   case Instruction::Trunc: // zext(trunc(x)) -> trunc(x) or zext(x)
 1324   case Instruction::Trunc: // sext(trunc(x)) -> trunc(x) or sext(x)
lib/Transforms/InstCombine/InstCombineShifts.cpp
  135     Ret = CastInst::Create(Instruction::Trunc, NewShift, Sh0->getType());
lib/Transforms/InstCombine/InstCombineSimplifyDemanded.cpp
  361   case Instruction::Trunc: {
lib/Transforms/InstCombine/InstCombineVectorOps.cpp
 1169     case Instruction::Trunc:
 1259     case Instruction::Trunc:
 1335     case Instruction::Trunc:
lib/Transforms/InstCombine/InstructionCombining.cpp
 1318       if (Cast->getOpcode() == Instruction::Trunc) {
 1383     } else if (Ancestor->getOpcode() == Instruction::Trunc) {
lib/Transforms/Scalar/GVN.cpp
  517     case Instruction::Trunc:
lib/Transforms/Scalar/GVNSink.cpp
  465     case Instruction::Trunc:
lib/Transforms/Scalar/LoopRerollPass.cpp
  753     case Instruction::Trunc:
lib/Transforms/Scalar/NewGVN.cpp
 2018     case Instruction::Trunc:
lib/Transforms/Scalar/SCCP.cpp
 1515       case Instruction::Trunc:
lib/Transforms/Utils/BypassSlowDivision.cpp
  294       Builder.CreateCast(Instruction::Trunc, Divisor, BypassType);
  296       Builder.CreateCast(Instruction::Trunc, Dividend, BypassType);
lib/Transforms/Utils/Local.cpp
 2869       auto *Trunc = CastInst::Create(Instruction::Trunc, Provider, DemandedTy,
lib/Transforms/Utils/LoopRotationUtils.cpp
  577     case Instruction::Trunc:
lib/Transforms/Vectorize/LoopVectorize.cpp
 1688     Start = Builder.CreateCast(Instruction::Trunc, Start, TruncType);
 3343         case Instruction::Trunc:
 4238   case Instruction::Trunc:
 6267   case Instruction::Trunc:
 6275       return TTI.getCastInstrCost(Instruction::Trunc, Trunc->getDestTy(),
 6289       if (I->getOpcode() == Instruction::Trunc) {
 6877     case Instruction::Trunc:
lib/Transforms/Vectorize/SLPVectorizer.cpp
 2488     case Instruction::Trunc:
 3044     case Instruction::Trunc:
 3869     case Instruction::Trunc:
 5004   case Instruction::Trunc:
tools/lldb/source/Expression/IRInterpreter.cpp
  589       case Instruction::Trunc:
 1236     case Instruction::Trunc: {
unittests/IR/InstructionsTest.cpp
  226   EXPECT_EQ(CastInst::Trunc, CastInst::getCastOpcode(c64, true, V8x8Ty, true));