/freebsd-current/contrib/llvm-project/clang/lib/AST/ |
H A D | ExprConstant.cpp | 2754 Int = Int.trunc(NewBitWidth).extend(OldBitWidth); 2772 Result = Value.trunc(LHS.getBitWidth()); 7277 APSInt Truncated = Val.trunc(IntWidth); 9385 "Alignment should not be changed by ext/trunc"); 9600 DesiredVal = Desired.trunc(Info.Ctx.getCharWidth()).getZExtValue(); 13672 APSInt Result = TrueResult.trunc(Info.Ctx.getIntWidth(E->getType()));
|
/freebsd-current/contrib/llvm-project/llvm/lib/Target/SystemZ/ |
H A D | SystemZISelLowering.cpp | 803 uint64_t Byte = IntBits.lshr(I * 8).trunc(8).getZExtValue(); 878 APInt HighValue = SplatBits.lshr(HalfSize).trunc(HalfSize); 879 APInt LowValue = SplatBits.trunc(HalfSize); 2670 // with (sext (trunc X)) into a comparison with (shl X, 32). 6570 // If we have (trunc (extract_vector_elt X, Y)), try to turn it into 6627 // Convert (zext (xor (trunc X), C)) into (xor (trunc X), C') if the size 7728 SrcDemE = SrcDemE.trunc(NumElts / 2); 7768 APInt DemEls = DemandedElts.trunc(NumSrc0Els);
|
/freebsd-current/contrib/llvm-project/llvm/lib/Transforms/InstCombine/ |
H A D | InstCombineCompares.cpp | 1132 Value *TruncA = Builder.CreateTrunc(A, NewType, A->getName() + ".trunc"); 1133 Value *TruncB = Builder.CreateTrunc(B, NewType, B->getName() + ".trunc"); 1407 /// Fold icmp (trunc X), C. 1414 // icmp slt trunc(signum(V)) 1 --> icmp slt V, 1 1429 // (trunc (1 << Y) to iN) == 0 --> Y u>= N 1430 // (trunc (1 << Y) to iN) != 0 --> Y u< N 1435 // (trunc (1 << Y) to iN) == 2**C --> Y == C 1436 // (trunc (1 << Y) to iN) != 2**C --> Y != C 1443 // (trunc X to i8) == C --> (X & 0xff) == (zext C) 1452 // Simplify icmp eq (trunc [all...] |
H A D | InstCombineAndOrXor.cpp | 757 /// %t0 = trunc i32 %arg to i8 1083 // For a trunc(lshr Y, Shift) pattern, make sure we're only extracting bits 2307 // bitwidth of X and OP behaves well when given trunc(C1) and X. 2332 Constant *TruncC1 = ConstantInt::get(X->getType(), C1->trunc(XWidth)); 2336 Constant *TruncC = ConstantInt::get(X->getType(), C->trunc(XWidth)); 2343 // and (bo (zext X), Y), C --> zext (bo X, (trunc Y)) 2353 // and (bo Y, (zext X)), C --> zext (bo (trunc Y), X) 3269 // (trunc x) == C1 & (and x, CA) == C2 -> (and x, CA|CMAX) == C1|C2 3270 // (trunc x) != C1 | (and x, CA) != C2 -> (and x, CA|CMAX) != C1|C2 3278 // (trunc [all...] |
H A D | InstCombineCasts.cpp | 66 // This also handles the case of zext(trunc(x)) -> zext(x). 254 /// Ty will always be a type smaller than V. We should return true if trunc(V) 256 /// then trunc(inst(x,y)) can be computed as inst(trunc(x),trunc(y)), which only 342 // trunc(trunc(x)) -> trunc(x) 346 // trunc(ext(x)) -> ext(x) if the source type is smaller than the new dest 347 // trunc(ex [all...] |
H A D | InstCombineAddSub.cpp | 818 // (zext (X +nuw C2)) + C1 --> zext (X + (C2 + trunc(C1))) 825 ConstantInt::get(X->getType(), *C2 + C1->trunc(C2->getBitWidth())); 2541 // trunc(p)-trunc(q) -> trunc(p-q)
|
H A D | InstCombineCalls.cpp | 1879 // bswap(trunc(bswap(x))) -> trunc(lshr(x, c)) 2483 case Intrinsic::trunc: {
|
/freebsd-current/contrib/llvm-project/llvm/lib/CodeGen/GlobalISel/ |
H A D | LegalizerHelper.cpp | 1234 Val.lshr(Offset).trunc(NarrowSize)); 1245 Val.lshr(NumParts * NarrowSize).trunc(LeftoverBits)); 1265 LLVM_DEBUG(dbgs() << "Can't narrow trunc to type " << NarrowTy << "\n"); 2193 // Now trunc the NewOp to the original result. 2233 // Use a shift that will preserve the number of sign bits when the trunc is 3363 // v1 = i24 trunc v5 3476 // TODO: Handle vector trunc stores 6999 // t = trunc(x); 7031 // result = trunc(src); 8212 APInt Scalar = ValVRegAndVal->Value.trunc( [all...] |
H A D | CombinerHelper.cpp | 581 // and emit a variant of (extend (trunc X)) for the others according to the 2035 Csts.emplace_back(Val.trunc(ShiftAmt)); 2540 // TODO: Fix truncstore combine to handle (trunc(lshr (trunc x), k)). 3995 // trunc in front. 4616 // set VReg will cause type mismatch if it comes from extend/trunc 4838 // add_64(x, y) & 65535 == zext(add_16(trunc(x), trunc(y))) & 65535 5253 .trunc(W);
|
H A D | IRTranslator.cpp | 1884 case Intrinsic::trunc:
|
/freebsd-current/contrib/llvm-project/llvm/lib/Support/ |
H A D | APFloat.cpp | 3995 significand = significand.trunc(significand.getActiveBits());
|
/freebsd-current/contrib/llvm-project/lldb/source/Plugins/SymbolFile/DWARF/ |
H A D | DWARFASTParserClang.cpp | 2859 result = result.trunc(type_bits);
|
/freebsd-current/contrib/llvm-project/llvm/lib/Target/AArch64/ |
H A D | AArch64ISelDAGToDAG.cpp | 3980 .trunc(VT.getFixedSizeInBits()) 4020 .trunc(VT.getFixedSizeInBits())
|
/freebsd-current/contrib/llvm-project/llvm/lib/CodeGen/SelectionDAG/ |
H A D | LegalizeIntegerTypes.cpp | 3594 Lo = DAG.getConstant(Cst.trunc(NBitWidth), dl, NVT, IsTarget, IsOpaque); 3595 Hi = DAG.getConstant(Cst.lshr(NBitWidth).trunc(NBitWidth), dl, NVT, IsTarget,
|
H A D | LegalizeDAG.cpp | 479 SDValue Lo = DAG.getConstant(IntVal.trunc(32), dl, MVT::i32); 480 SDValue Hi = DAG.getConstant(IntVal.lshr(32).trunc(32), dl, MVT::i32);
|
H A D | DAGCombiner.cpp | 824 /// (trunc (and X, C)) -> (and (trunc X), (trunc C)) 827 /// requirements are checked by the function (e.g. that trunc is 2546 // Peek through trunc to shift amount type. 3418 // fold (uaddo_carry 0, 0, X) -> (and (ext/trunc X), 1) and no carry. 3773 // sub(a,trunc(umin(zext(a),b))) -> usubsat(a,trunc(umin(b,SatLimit))) 5531 const APInt &C1 = N1C->getAPIntValue().trunc(N1.getScalarValueSizeInBits()); 5532 const APInt &C2 = N3C->getAPIntValue().trunc(N [all...] |
/freebsd-current/contrib/llvm-project/llvm/lib/Target/AMDGPU/ |
H A D | AMDGPUISelLowering.cpp | 1919 // fq = trunc(fq); 2327 // result = trunc(src) 2488 // result = trunc(src); 3407 // tf := trunc(val); 4115 // trunc (srl (bitcast (build_vector x, y))), 16 -> trunc (bitcast y) 4137 // i16 (trunc (srl i64:x, K)), K <= 16 -> 4138 // i16 (trunc (srl (i32 (trunc x), K))) 5621 LHSKnown = LHSKnown.trunc(2 [all...] |
H A D | AMDGPUInstructionSelector.cpp | 2640 .addImm(Imm.trunc(32).getZExtValue());
|
/freebsd-current/contrib/llvm-project/llvm/lib/Analysis/ |
H A D | InstructionSimplify.cpp | 721 // As that strip may trace through `addrspacecast`, need to sext or trunc 884 // trunc(X) - trunc(Y) -> trunc(X - Y) if everything simplifies. 890 // It does! Now see if "trunc V" simplifies. 893 // It does, return the simplified "trunc V". 6070 case Intrinsic::trunc: 6090 case Intrinsic::trunc:
|
/freebsd-current/contrib/llvm-project/llvm/lib/Transforms/Utils/ |
H A D | SimplifyLibCalls.cpp | 3645 return replaceUnaryCall(CI, Builder, Intrinsic::trunc);
|
/freebsd-current/sys/ufs/ffs/ |
H A D | ffs_softdep.c | 8512 int trunc) 8524 if (bp && (trunc || newblk->nb_jnewblk)) { 8540 if (trunc && (freefrag = newblk->nb_freefrag) != NULL) { 10861 ("free_indirdep: Indir trunc list not empty.")); 8508 cancel_allocindir( struct allocindir *aip, struct buf *bp, struct freeblks *freeblks, int trunc) argument
|
/freebsd-current/contrib/llvm-project/llvm/lib/Target/X86/ |
H A D | X86ISelLowering.cpp | 3711 Ops.push_back(DAG.getConstant(V.trunc(32), dl, EltVT)); 3712 Ops.push_back(DAG.getConstant(V.lshr(32).trunc(32), dl, EltVT)); 4777 SrcEltBits[0] = SrcEltBits[0].trunc(SrcEltSizeInBits); 5882 // Peek through trunc/aext/zext. 10000 // Try to lower trunc+vector_shuffle to a vpmovdb or a vpmovdw instruction. 12219 assert(VT.isInteger() && "Unexpected non-integer trunc broadcast!"); 12247 // Hopefully, we can fold away the trunc/srl/load into the broadcast. 20231 /// e.g. trunc <8 x i32> X to <8 x i16> --> 21632 /// trunc(X + copysign(nextafter(0.5, 0.0), X)). 22365 // Match icmp(bitcast(vXi1 trunc( [all...] |
H A D | X86ISelDAGToDAG.cpp | 3962 // *logically* shifted (potentially with one-use trunc inbetween), 4706 MaskVal = MaskVal.trunc(32);
|
/freebsd-current/contrib/llvm-project/clang/lib/Sema/ |
H A D | SemaOpenMP.cpp | 8651 NoNeedToConvert = LRes.trunc(BW).extend(BW + 1) == LRes; 8652 LRes = LRes.trunc(BW); 8660 NoNeedToConvert && LRes.trunc(BW).extend(BW + 1) == LRes; 8662 LRes = LRes.trunc(BW); 8682 NoNeedToConvert = URes.trunc(BW).extend(BW + 1) == URes;
|
/freebsd-current/contrib/llvm-project/llvm/lib/Target/NVPTX/ |
H A D | NVPTXISelLowering.cpp | 614 // Turn FP truncstore into trunc + store. 2315 Value = Value.trunc(8); 2838 // v = trunc i16 to i1 5258 // If we get here, the AND is unnecessary. Just replace it with the trunc
|