Searched refs:Overflow (Results 1 - 25 of 42) sorted by relevance

12

/freebsd-11-stable/contrib/llvm-project/clang/lib/Basic/
H A DFixedPoint.cpp19 bool *Overflow) const {
24 if (Overflow)
25 *Overflow = false;
44 else if (Overflow)
45 *Overflow = true;
54 else if (Overflow)
55 *Overflow = true;
153 bool *Overflow) const {
170 if (Overflow)
171 *Overflow
250 getFromIntValue(const llvm::APSInt &Value, const FixedPointSemantics &DstFXSema, bool *Overflow) argument
[all...]
/freebsd-11-stable/contrib/llvm-project/clang/include/clang/Basic/
H A DFixedPoint.h124 bool *Overflow = nullptr) const;
129 // explanation of the Overflow parameter.
130 APFixedPoint add(const APFixedPoint &Other, bool *Overflow = nullptr) const;
134 APFixedPoint negate(bool *Overflow = nullptr) const;
162 bool *Overflow = nullptr) const;
197 bool *Overflow = nullptr);
/freebsd-11-stable/contrib/llvm-project/llvm/include/llvm/Support/
H A DCheckedArithmetic.h33 bool Overflow;
34 llvm::APInt Out = (ALHS.*Op)(ARHS, Overflow);
35 if (Overflow)
/freebsd-11-stable/contrib/llvm-project/llvm/lib/Support/
H A DAPInt.cpp1956 APInt APInt::sadd_ov(const APInt &RHS, bool &Overflow) const {
1958 Overflow = isNonNegative() == RHS.isNonNegative() &&
1963 APInt APInt::uadd_ov(const APInt &RHS, bool &Overflow) const {
1965 Overflow = Res.ult(RHS);
1969 APInt APInt::ssub_ov(const APInt &RHS, bool &Overflow) const {
1971 Overflow = isNonNegative() != RHS.isNonNegative() &&
1976 APInt APInt::usub_ov(const APInt &RHS, bool &Overflow) const {
1978 Overflow = Res.ugt(*this);
1982 APInt APInt::sdiv_ov(const APInt &RHS, bool &Overflow) const {
1984 Overflow
[all...]
/freebsd-11-stable/contrib/llvm-project/clang/lib/Lex/
H A DPPExpressions.cpp306 // Overflow parsing integer literal.
441 bool Overflow = !Result.isUnsigned() && Result.Val.isMinSignedValue(); local
444 if (Overflow && ValueLive)
654 bool Overflow = false; local
669 Res = llvm::APSInt(LHS.Val.sdiv_ov(RHS.Val, Overflow), false);
681 Res = llvm::APSInt(LHS.Val.smul_ov(RHS.Val, Overflow), false);
688 Res = LHS.Val.ushl_ov(RHS.Val, Overflow);
690 Res = llvm::APSInt(LHS.Val.sshl_ov(RHS.Val, Overflow), false);
697 Overflow = true;
707 Res = llvm::APSInt(LHS.Val.sadd_ov(RHS.Val, Overflow), fals
[all...]
/freebsd-11-stable/contrib/llvm-project/llvm/include/llvm/ADT/
H A DAPInt.h1114 APInt sadd_ov(const APInt &RHS, bool &Overflow) const;
1115 APInt uadd_ov(const APInt &RHS, bool &Overflow) const;
1116 APInt ssub_ov(const APInt &RHS, bool &Overflow) const;
1117 APInt usub_ov(const APInt &RHS, bool &Overflow) const;
1118 APInt sdiv_ov(const APInt &RHS, bool &Overflow) const;
1119 APInt smul_ov(const APInt &RHS, bool &Overflow) const;
1120 APInt umul_ov(const APInt &RHS, bool &Overflow) const;
1121 APInt sshl_ov(const APInt &Amt, bool &Overflow) const;
1122 APInt ushl_ov(const APInt &Amt, bool &Overflow) const;
/freebsd-11-stable/contrib/llvm-project/llvm/lib/Analysis/
H A DMemoryBuiltins.cpp646 bool Overflow;
647 Size = Size.umul_ov(NumElems, Overflow);
648 return Overflow ? unknown() : std::make_pair(align(Size, I.getAlignment()),
710 bool Overflow;
711 Size = Size.umul_ov(NumElems, Overflow);
712 return Overflow ? unknown() : std::make_pair(Size, Zero);
H A DConstantFolding.cpp952 bool Overflow; local
953 APInt NewIdx = Offset.sdiv_ov(ElemSize, Overflow);
954 if (Overflow)
2157 bool Overflow; local
2161 Res = C0->sadd_ov(*C1, Overflow);
2164 Res = C0->uadd_ov(*C1, Overflow);
2167 Res = C0->ssub_ov(*C1, Overflow);
2170 Res = C0->usub_ov(*C1, Overflow);
2173 Res = C0->smul_ov(*C1, Overflow);
2176 Res = C0->umul_ov(*C1, Overflow);
[all...]
/freebsd-11-stable/contrib/llvm-project/llvm/lib/Transforms/InstCombine/
H A DInstCombineMulDivRem.cpp649 bool Overflow; local
650 Product = IsSigned ? C1.smul_ov(C2, Overflow) : C1.umul_ov(C2, Overflow);
651 return Overflow;
971 bool Overflow; local
972 APInt C2ShlC1 = C2->ushl_ov(*C1, Overflow);
973 if (!Overflow) {
H A DInstCombineCompares.cpp41 bool Overflow; local
43 Result = In1.sadd_ov(In2, Overflow);
45 Result = In1.uadd_ov(In2, Overflow);
47 return Overflow;
54 bool Overflow; local
56 Result = In1.ssub_ov(In2, Overflow);
58 Result = In1.usub_ov(In2, Overflow);
60 return Overflow;
2576 bool Overflow; local
2578 Cmp.isSigned() ? C.ssub_ov(*C2, Overflow)
4505 OptimizeOverflowCheck( Instruction::BinaryOps BinaryOp, bool IsSigned, Value *LHS, Value *RHS, Instruction &OrigI, Value *&Result, Constant *&Overflow) argument
5620 Constant *Overflow; local
[all...]
H A DInstCombineInternal.h686 /// \p Result and a constant \p Overflow value.
688 Constant *Overflow) {
689 Constant *V[] = {UndefValue::get(Result->getType()), Overflow};
687 CreateOverflowTuple(IntrinsicInst *II, Value *Result, Constant *Overflow) argument
H A DInstCombineCalls.cpp2034 bool Overflow; local
2036 IsSigned ? C1->sadd_ov(*C0, Overflow) : C1->uadd_ov(*C0, Overflow);
2037 if (!Overflow)
2140 bool Overflow; local
2141 NewVal = Val->sadd_ov(*Val2, Overflow);
2142 if (Overflow) {
4374 bool Overflow; local
4376 APInt Size = N.umul_ov(Op1C->getValue(), Overflow);
4377 if (!Overflow)
[all...]
/freebsd-11-stable/contrib/llvm-project/llvm/lib/CodeGen/SelectionDAG/
H A DLegalizeVectorOps.cpp1435 SDValue Result, Overflow; local
1436 TLI.expandUADDSUBO(Node, Result, Overflow, DAG);
1438 Results.push_back(Overflow);
1443 SDValue Result, Overflow; local
1444 TLI.expandSADDSUBO(Node, Result, Overflow, DAG);
1446 Results.push_back(Overflow);
1451 SDValue Result, Overflow; local
1452 if (!TLI.expandMULO(Node, Result, Overflow, DAG))
1453 std::tie(Result, Overflow) = DAG.UnrollVectorOverflowOp(Node);
1456 Results.push_back(Overflow);
[all...]
H A DTargetLowering.cpp7142 SDValue Overflow = Result.getValue(1);
7149 SDValue OverflowMask = DAG.getSExtOrTrunc(Overflow, dl, VT);
7152 // Overflow ? 0xffff.... : (LHS + RHS)
7153 return DAG.getSelect(dl, VT, Overflow, AllOnes, SumDiff);
7157 SDValue OverflowMask = DAG.getSExtOrTrunc(Overflow, dl, VT);
7161 // Overflow ? 0 : (LHS - RHS)
7162 return DAG.getSelect(dl, VT, Overflow, Zero, SumDiff);
7164 // SatMax -> Overflow && SumDiff < 0
7165 // SatMin -> Overflow && SumDiff >= 0
7172 return DAG.getSelect(dl, VT, Overflow, Resul
[all...]
H A DLegalizeIntegerTypes.cpp1161 // Overflow occurred if it occurred in the larger type, or if the high part
1164 SDValue Overflow; local
1171 Overflow = DAG.getSetCC(DL, N->getValueType(1), Hi,
1178 Overflow = DAG.getSetCC(DL, N->getValueType(1), SExt, Mul, ISD::SETNE);
1183 Overflow = DAG.getNode(ISD::OR, DL, N->getValueType(1), Overflow,
1187 ReplaceValueWith(SDValue(N, 1), Overflow); local
3055 SDValue Overflow = Result.getValue(1); local
3064 Result = DAG.getSelect(dl, VT, Overflow, Result, Product);
3070 Result = DAG.getSelect(dl, VT, Overflow, SatMa
3553 SDValue Overflow = DAG.getNode(ISD::AND, dl, BitVT, local
3580 ReplaceValueWith(SDValue(N, 1), Overflow); local
[all...]
H A DLegalizeDAG.cpp3457 SDValue Overflow = DAG.getSetCC(dl, SetCCType, Sum, LHS, CC);
3476 DAG.getNode(ISD::OR, dl, SetCCType, Overflow, Overflow2);
3484 SDValue Result, Overflow;
3485 TLI.expandSADDSUBO(Node, Result, Overflow, DAG);
3487 Results.push_back(Overflow);
3492 SDValue Result, Overflow;
3493 TLI.expandUADDSUBO(Node, Result, Overflow, DAG);
3495 Results.push_back(Overflow);
3500 SDValue Result, Overflow;
3501 if (TLI.expandMULO(Node, Result, Overflow, DA
[all...]
/freebsd-11-stable/contrib/llvm-project/llvm/lib/Target/AMDGPU/Utils/
H A DAMDGPUBaseInfo.cpp1272 uint32_t Overflow = 0;
1277 Overflow = Imm - MaxImm;
1292 Overflow = High - Align;
1299 if (Overflow > 0 &&
1304 SOffset = Overflow;
/freebsd-11-stable/contrib/llvm-project/llvm/lib/IR/
H A DConstantRange.cpp1529 bool Overflow;
1531 (void) Min.umul_ov(OtherMin, Overflow);
1532 if (Overflow)
1535 (void) Max.umul_ov(OtherMax, Overflow);
1536 if (Overflow)
/freebsd-11-stable/contrib/llvm-project/llvm/lib/Target/AMDGPU/
H A DR600ISelLowering.cpp808 // Overflow. So we do the shift in two steps, the alternative is to
811 SDValue Overflow = DAG.getNode(ISD::SRL, DL, VT, Lo, CompShift); local
812 Overflow = DAG.getNode(ISD::SRL, DL, VT, Overflow, One);
815 HiSmall = DAG.getNode(ISD::OR, DL, VT, HiSmall, Overflow);
846 // Overflow. So we do the shift in two steps, the alternative is to
849 SDValue Overflow = DAG.getNode(ISD::SHL, DL, VT, Hi, CompShift); local
850 Overflow = DAG.getNode(ISD::SHL, DL, VT, Overflow, One);
854 LoSmall = DAG.getNode(ISD::OR, DL, VT, LoSmall, Overflow);
[all...]
H A DAMDGPURegisterBankInfo.cpp1316 unsigned Overflow = ImmOffset & ~MaxImm; local
1317 ImmOffset -= Overflow;
1318 if ((int32_t)Overflow < 0) {
1319 Overflow += ImmOffset;
1324 if (Overflow != 0) {
1326 BaseReg = B.buildConstant(S32, Overflow).getReg(0);
1328 auto OverflowVal = B.buildConstant(S32, Overflow);
H A DAMDGPUInstructionSelector.cpp932 unsigned Overflow = ImmOffset & ~MaxImm;
933 ImmOffset -= Overflow;
934 if ((int32_t)Overflow < 0) {
935 Overflow += ImmOffset;
939 if (Overflow != 0) {
950 .addImm(Overflow);
955 .addImm(Overflow);
/freebsd-11-stable/contrib/gcc/config/arm/
H A Dieee754-sf.S242 @ Overflow: return INF.
500 @ Overflow?
578 @ Overflow: return INF (sign already in r0).
H A Dieee754-df.S353 @ Overflow: return INF.
696 @ Overflow?
817 @ Overflow: return INF (sign already in xh).
/freebsd-11-stable/contrib/llvm-project/llvm/lib/Target/AArch64/
H A DAArch64ISelLowering.cpp2209 SDValue Value, Overflow; local
2268 Overflow = DAG.getNode(AArch64ISD::SUBS, DL, VTs, UpperBits, LowerBits)
2279 Overflow =
2296 Overflow = DAG.getNode(AArch64ISD::SUBS, DL, VTs, UpperBits, LowerBits)
2301 Overflow =
2315 Overflow = Value.getValue(1);
2317 return std::make_pair(Value, Overflow);
2363 SDValue Value, Overflow; local
2364 std::tie(Value, Overflow) = getAArch64XALUOOp(CC, Sel.getValue(0), DAG);
2367 CCVal, Overflow);
2467 SDValue Value, Overflow; local
4985 SDValue Value, Overflow; local
5515 SDValue Value, Overflow; local
[all...]
/freebsd-11-stable/contrib/llvm-project/clang/lib/CodeGen/
H A DCGExprScalar.cpp62 bool Overflow = true; local
67 Result = LHSAP.sadd_ov(RHSAP, Overflow);
69 Result = LHSAP.uadd_ov(RHSAP, Overflow);
72 Result = LHSAP.ssub_ov(RHSAP, Overflow);
74 Result = LHSAP.usub_ov(RHSAP, Overflow);
77 Result = LHSAP.smul_ov(RHSAP, Overflow);
79 Result = LHSAP.umul_ov(RHSAP, Overflow);
82 Result = LHSAP.sdiv_ov(RHSAP, Overflow);
86 return Overflow;

Completed in 449 milliseconds

12