Home
last modified time | relevance | path

Searched refs:BinOpc (Results 1 – 6 of 6) sorted by relevance

/freebsd/contrib/llvm-project/llvm/lib/Transforms/InstCombine/
H A DInstCombineSelect.cpp1953 const auto BinOpc = Instruction::BinaryOps(Opcode); in foldSelectWithConstOpToBinOp() local
1954 Value *BinOp = Builder.CreateBinOp(BinOpc, MinMax, C2); in foldSelectWithConstOpToBinOp()
1959 if (BinOpc == Instruction::Add || BinOpc == Instruction::Sub || in foldSelectWithConstOpToBinOp()
1960 BinOpc == Instruction::Mul) { in foldSelectWithConstOpToBinOp()
1963 willNotOverflow(BinOpc, RHS, C2, *BinOpInst, /*IsSigned=*/true)) in foldSelectWithConstOpToBinOp()
1966 willNotOverflow(BinOpc, RHS, C2, *BinOpInst, /*IsSigned=*/false)) in foldSelectWithConstOpToBinOp()
H A DInstructionCombining.cpp989 unsigned BinOpc = BO2->getOpcode(); in foldBinOpShiftWithShift() local
991 if (!IsValidBinOpc(I.getOpcode()) || !IsValidBinOpc(BinOpc)) in foldBinOpShiftWithShift()
996 BinOpc == Instruction::Xor && match(Mask, m_AllOnes())) { in foldBinOpShiftWithShift()
1008 if (BinOpc == I.getOpcode() && in foldBinOpShiftWithShift()
1009 IsCompletelyDistributable(I.getOpcode(), BinOpc, ShOpc)) { in foldBinOpShiftWithShift()
1024 if (!CanDistributeBinops(I.getOpcode(), BinOpc, ShOpc, CMask, CShift)) in foldBinOpShiftWithShift()
1030 static_cast<Instruction::BinaryOps>(BinOpc), X, NewCMask); in foldBinOpShiftWithShift()
H A DInstCombineCompares.cpp5924 auto ApplyOffsetImpl = [&](Value *V, unsigned BinOpc, Value *RHS) -> Value * { in foldICmpEqualityWithOffset() argument
5925 Value *Simplified = simplifyBinOp(BinOpc, V, RHS, SQ); in foldICmpEqualityWithOffset()
5936 auto ApplyOffset = [&](Value *V, unsigned BinOpc, in foldICmpEqualityWithOffset()
5941 Value *TrueVal = ApplyOffsetImpl(Sel->getTrueValue(), BinOpc, RHS); in foldICmpEqualityWithOffset()
5944 Value *FalseVal = ApplyOffsetImpl(Sel->getFalseValue(), BinOpc, RHS); in foldICmpEqualityWithOffset()
5949 if (Value *Simplified = ApplyOffsetImpl(V, BinOpc, RHS)) in foldICmpEqualityWithOffset()
5955 auto BinOpc = static_cast<unsigned>(BinOp); in foldICmpEqualityWithOffset() local
5957 auto Op0Result = ApplyOffset(Op0, BinOpc, RHS); in foldICmpEqualityWithOffset()
5960 auto Op1Result = ApplyOffset(Op1, BinOpc, RHS); in foldICmpEqualityWithOffset()
/freebsd/contrib/llvm-project/llvm/lib/Target/RISCV/
H A DRISCVISelDAGToDAG.cpp576 unsigned BinOpc; in tryShrinkShlLogicImm() local
579 case ISD::AND: BinOpc = RISCV::ANDI; break; in tryShrinkShlLogicImm()
580 case ISD::OR: BinOpc = RISCV::ORI; break; in tryShrinkShlLogicImm()
581 case ISD::XOR: BinOpc = RISCV::XORI; break; in tryShrinkShlLogicImm()
587 BinOpc, DL, VT, Shift.getOperand(0), in tryShrinkShlLogicImm()
/freebsd/contrib/llvm-project/llvm/lib/Transforms/Vectorize/
H A DLoopVectorize.cpp8116 std::optional<unsigned> BinOpc; in getScaledReductions() local
8150 BinOpc = std::make_optional(ExtendUser->getOpcode()); in getScaledReductions()
8158 BinOpc = std::nullopt; in getScaledReductions()
8178 PHI->getType(), VF, OpAExtend, OpBExtend, BinOpc, CM.CostKind); in getScaledReductions()
/freebsd/contrib/llvm-project/llvm/lib/CodeGen/SelectionDAG/
H A DDAGCombiner.cpp28636 unsigned BinOpc = N1.getOpcode(); in foldSelectOfBinops() local
28637 if (!TLI.isBinOp(BinOpc) || (N2.getOpcode() != BinOpc) || in foldSelectOfBinops()
28660 DAG.getNode(BinOpc, DL, OpVTs, {NewSel, N1.getOperand(1)}, Flags); in foldSelectOfBinops()
28674 DAG.getNode(BinOpc, DL, OpVTs, {N1.getOperand(0), NewSel}, Flags); in foldSelectOfBinops()