Home
last modified time | relevance | path

Searched refs:CarryIn (Results 1 – 14 of 14) sorted by relevance

/freebsd/contrib/llvm-project/llvm/lib/Target/AMDGPU/
H A DSIPeepholeSDWA.cpp1050 MachineOperand *CarryIn = TII->getNamedOperand(MISucc, AMDGPU::OpName::src2); in pseudoOpConvertToVOP2() local
1051 if (!CarryIn) in pseudoOpConvertToVOP2()
1056 if (!MRI->hasOneUse(CarryIn->getReg()) || !MRI->use_empty(CarryOut->getReg())) in pseudoOpConvertToVOP2()
1082 MISucc.substituteRegister(CarryIn->getReg(), TRI->getVCC(), 0, *TRI); in pseudoOpConvertToVOP2()
1100 const MachineOperand &CarryIn = in convertVcndmaskToVOP2() local
1102 Register CarryReg = CarryIn.getReg(); in convertVcndmaskToVOP2()
1119 BuildMI(MBB, MI, MI.getDebugLoc(), TII->get(AMDGPU::COPY), Vcc).add(CarryIn); in convertVcndmaskToVOP2()
H A DAMDGPULegalizerInfo.cpp3967 [&](Register &LocalAccum, const Carry &CarryIn) -> Register { in buildMultiply() argument
3968 if (CarryIn.empty()) in buildMultiply()
3973 if (CarryIn.size() == 1) { in buildMultiply()
3975 LocalAccum = B.buildZExt(S32, CarryIn[0]).getReg(0); in buildMultiply()
3981 CarryAccum = B.buildZExt(S32, CarryIn[0]).getReg(0); in buildMultiply()
3982 for (unsigned i = 1; i + 1 < CarryIn.size(); ++i) { in buildMultiply()
3984 B.buildUAdde(S32, S1, CarryAccum, getZero32(), CarryIn[i]) in buildMultiply()
3995 B.buildUAdde(S32, S1, CarryAccum, LocalAccum, CarryIn.back()); in buildMultiply()
4011 [&](MutableArrayRef<Register> LocalAccum, unsigned DstIndex, Carry &CarryIn) in buildMultiply()
4022 (!UsePartialMad64_32 || !CarryIn.empty())) { in buildMultiply()
[all …]
/freebsd/contrib/llvm-project/llvm/include/llvm/CodeGen/GlobalISel/
H A DMachineIRBuilder.h643 const SrcOp &CarryIn) { in buildUAdde() argument
645 {Op0, Op1, CarryIn}); in buildUAdde()
651 const SrcOp &CarryIn) { in buildUSube() argument
653 {Op0, Op1, CarryIn}); in buildUSube()
659 const SrcOp &CarryIn) { in buildSAdde() argument
661 {Op0, Op1, CarryIn}); in buildSAdde()
667 const SrcOp &CarryIn) { in buildSSube() argument
669 {Op0, Op1, CarryIn}); in buildSSube()
/freebsd/contrib/llvm-project/llvm/lib/Target/CSKY/
H A DCSKYISelDAGToDAG.cpp369 auto CarryIn = InvertCarryFlag(Subtarget, CurDAG, Dl, Op2); in selectSubCarry() local
372 Dl, {Type0, Type1}, {Op0, Op1, CarryIn}); in selectSubCarry()
/freebsd/contrib/llvm-project/llvm/lib/Target/RISCV/
H A DRISCVInstrInfoVPseudos.td1503 bit CarryIn,
1507 !if(CarryIn,
2415 // For vadc and vsbc, CarryIn == 1 and CarryOut == 0
2416 multiclass VPseudoBinaryV_VM<LMULInfo m, bit CarryOut = 0, bit CarryIn = 1,
2421 def "_VV" # !if(CarryIn, "M", "") # "_" # m.MX :
2423 !if(!and(CarryIn, !not(CarryOut)),
2425 m.vrclass, m.vrclass, m, CarryIn, Constraint, TargetConstraintType>;
2435 multiclass VPseudoBinaryV_XM<LMULInfo m, bit CarryOut = 0, bit CarryIn = 1,
2437 def "_VX" # !if(CarryIn, "M", "") # "_" # m.MX :
2439 !if(!and(CarryIn, !not(CarryOut)),
[all …]
/freebsd/contrib/llvm-project/llvm/lib/Target/Hexagon/
H A DHexagonVectorCombine.cpp465 Value *CarryIn = nullptr) const
1939 Value *CarryIn) const in createAddCarry()
1946 if (CarryIn == nullptr && HVC.HST.useHVXV66Ops()) { in createAddCarry()
1950 if (CarryIn == nullptr) in createAddCarry()
1951 CarryIn = HVC.getNullValue(HVC.getBoolTy(HVC.length(VecTy))); in createAddCarry()
1952 Args.push_back(CarryIn); in createAddCarry()
1965 if (CarryIn != nullptr) { in createAddCarry()
1975 {CarryIn, HVC.getConstInt(Mask)}); in createAddCarry()
/freebsd/contrib/llvm-project/llvm/lib/CodeGen/GlobalISel/
H A DLegalizerHelper.cpp2483 std::optional<Register> CarryIn; in widenScalarAddSubOverflow() local
2506 CarryIn = MI.getOperand(4).getReg(); in widenScalarAddSubOverflow()
2511 CarryIn = MI.getOperand(4).getReg(); in widenScalarAddSubOverflow()
2516 CarryIn = MI.getOperand(4).getReg(); in widenScalarAddSubOverflow()
2521 CarryIn = MI.getOperand(4).getReg(); in widenScalarAddSubOverflow()
2529 if (CarryIn) in widenScalarAddSubOverflow()
2541 if (CarryIn) { in widenScalarAddSubOverflow()
2545 {LHSExt, RHSExt, *CarryIn}) in widenScalarAddSubOverflow()
4584 auto [Res, CarryOut, LHS, RHS, CarryIn] = MI.getFirst5Regs(); in lower()
4597 auto ZExtCarryIn = MIRBuilder.buildZExt(Ty, CarryIn); in lower()
[all …]
/freebsd/contrib/llvm-project/clang/lib/AST/ByteCode/
H A DInterpBuiltin.cpp880 APSInt CarryIn = popToAPSInt(S.Stk, LHST); in interp__builtin_carryop() local
902 LHS.uadd_ov(RHS, FirstOverflowed).uadd_ov(CarryIn, SecondOverflowed); in interp__builtin_carryop()
910 LHS.usub_ov(RHS, FirstOverflowed).usub_ov(CarryIn, SecondOverflowed); in interp__builtin_carryop()
1414 APSInt CarryIn = popToAPSInt(S.Stk, CarryInT); in interp__builtin_ia32_addcarry_subborrow() local
1420 unsigned CarryInBit = CarryIn.ugt(0) ? 1 : 0; in interp__builtin_ia32_addcarry_subborrow()
/freebsd/contrib/llvm-project/llvm/lib/CodeGen/SelectionDAG/
H A DDAGCombiner.cpp436 SDValue visitUADDO_CARRYLike(SDValue N0, SDValue N1, SDValue CarryIn,
438 SDValue visitSADDO_CARRYLike(SDValue N0, SDValue N1, SDValue CarryIn,
3516 SDValue CarryIn = N->getOperand(2); in visitADDE() local
3523 N1, N0, CarryIn); in visitADDE()
3526 if (CarryIn.getOpcode() == ISD::CARRY_FALSE) in visitADDE()
3535 SDValue CarryIn = N->getOperand(2); in visitUADDO_CARRY() local
3542 return DAG.getNode(ISD::UADDO_CARRY, DL, N->getVTList(), N1, N0, CarryIn); in visitUADDO_CARRY()
3545 if (isNullConstant(CarryIn)) { in visitUADDO_CARRY()
3554 EVT CarryVT = CarryIn.getValueType(); in visitUADDO_CARRY()
3555 SDValue CarryExt = DAG.getBoolExtOrTrunc(CarryIn, DL, VT, CarryVT); in visitUADDO_CARRY()
[all …]
H A DTargetLowering.cpp11383 SDValue CarryIn = DAG.getConstant(0, dl, Node->getValueType(1)); in expandUADDSUBO() local
11385 { LHS, RHS, CarryIn }); in expandUADDSUBO()
/freebsd/contrib/llvm-project/llvm/lib/Target/X86/
H A DX86InstCombineIntrinsic.cpp644 Value *CarryIn = II.getArgOperand(0); in simplifyX86addcarry() local
654 if (match(CarryIn, m_ZeroInt())) { in simplifyX86addcarry()
H A DX86ISelLowering.cpp57488 SDValue CarryIn = N->getOperand(2); in combineADC() local
57495 CarryIn); in combineADC()
57510 DAG.getTargetConstant(X86::COND_B, DL, MVT::i8), CarryIn), in combineADC()
57523 DAG.getConstant(Sum, DL, LHS.getValueType()), CarryIn); in combineADC()
57526 if (SDValue Flags = combineCarryThroughADD(CarryIn, DAG)) { in combineADC()
57537 LHS.getOperand(1), CarryIn); in combineADC()
/freebsd/contrib/llvm-project/llvm/lib/Target/ARM/
H A DARMISelDAGToDAG.cpp2653 SDValue CarryIn = N->getOperand(FirstInputOp + 2); in SelectMVE_VADCSBC() local
2654 ConstantSDNode *CarryInConstant = dyn_cast<ConstantSDNode>(CarryIn); in SelectMVE_VADCSBC()
2661 Ops.push_back(CarryIn); in SelectMVE_VADCSBC()
/freebsd/contrib/llvm-project/clang/lib/AST/
H A DExprConstant.cpp13655 APSInt LHS, RHS, CarryIn, CarryOut, Result; in VisitBuiltinCallExpr() local
13659 !EvaluateInteger(E->getArg(2), CarryIn, Info) || in VisitBuiltinCallExpr()
13677 LHS.uadd_ov(RHS, FirstOverflowed).uadd_ov(CarryIn, SecondOverflowed); in VisitBuiltinCallExpr()
13685 LHS.usub_ov(RHS, FirstOverflowed).usub_ov(CarryIn, SecondOverflowed); in VisitBuiltinCallExpr()
13877 APSInt CarryIn, LHS, RHS; in VisitBuiltinCallExpr() local
13879 if (!EvaluateInteger(E->getArg(0), CarryIn, Info) || in VisitBuiltinCallExpr()
13889 unsigned CarryInBit = CarryIn.ugt(0) ? 1 : 0; in VisitBuiltinCallExpr()