Lines Matching refs:Overflow
267 /// \brief Emit a call to llvm.{sadd,uadd,ssub,usub,smul,umul}.with.overflow.*
272 /// \arg X The first argument to the llvm.*.with.overflow.*.
273 /// \arg Y The second argument to the llvm.*.with.overflow.*.
274 /// \arg Carry The carry returned by the llvm.*.with.overflow.*.
1604 // %tmp1 = call {i32, i1} @llvm.uadd.with.overflow.i32(i32 %x, i32 %y)
1607 // %tmp2 = call {i32, i1} @llvm.uadd.with.overflow.i32(i32 %tmpsum1,
1621 // Decide if we are lowering to a uadd.with.overflow or usub.with.overflow.
1681 llvm_unreachable("Unknown overflow builtin id.");
1708 llvm::Value *Overflow, *Result;
1709 Result = EmitOverflowIntrinsic(*this, IntrinsicId, Left, Right, Overflow);
1716 // To see if the truncation caused an overflow, we will extend
1723 Overflow = Builder.CreateOr(Overflow, TruncationOverflow);
1732 return RValue::get(Overflow);
1761 // Decide which of the overflow intrinsics we are lowering to:
1764 default: llvm_unreachable("Unknown overflow builtin id.");