Home
last modified time | relevance | path

Searched refs:InnerShift (Results 1 – 2 of 2) sorted by relevance

/freebsd/contrib/llvm-project/llvm/lib/Transforms/InstCombine/
H A DInstCombineShifts.cpp520 Instruction *InnerShift, in canEvaluateShiftedShift() argument
522 assert(InnerShift->isLogicalShift() && "Unexpected instruction type"); in canEvaluateShiftedShift()
526 if (!match(InnerShift->getOperand(1), m_APInt(InnerShiftConst))) in canEvaluateShiftedShift()
532 bool IsInnerShl = InnerShift->getOpcode() == Instruction::Shl; in canEvaluateShiftedShift()
548 unsigned TypeWidth = InnerShift->getType()->getScalarSizeInBits(); in canEvaluateShiftedShift()
554 if (IC.MaskedValueIsZero(InnerShift->getOperand(0), Mask, 0, CxtI)) in canEvaluateShiftedShift()
625 static Value *foldShiftedShift(BinaryOperator *InnerShift, unsigned OuterShAmt, in foldShiftedShift() argument
628 bool IsInnerShl = InnerShift->getOpcode() == Instruction::Shl; in foldShiftedShift()
629 Type *ShType = InnerShift->getType(); in foldShiftedShift()
634 match(InnerShift->getOperand(1), m_APInt(C1)); in foldShiftedShift()
[all …]
/freebsd/contrib/llvm-project/llvm/lib/CodeGen/SelectionDAG/
H A DDAGCombiner.cpp6721 unsigned InnerShift; // The opposite direction to the OuterShift. in unfoldExtremeBitClearingToShifts() local
6723 auto matchMask = [&OuterShift, &InnerShift, &Y](SDValue M) -> bool { in unfoldExtremeBitClearingToShifts()
6728 InnerShift = ISD::SRL; in unfoldExtremeBitClearingToShifts()
6730 InnerShift = ISD::SHL; in unfoldExtremeBitClearingToShifts()
6751 SDValue T0 = DAG.getNode(InnerShift, DL, VT, X, Y); in unfoldExtremeBitClearingToShifts()
10575 SDValue InnerShift = N0.getOperand(0); in visitSRL() local
10577 if (auto *N001C = isConstOrConstSplat(InnerShift.getOperand(1))) { in visitSRL()
10580 EVT InnerShiftVT = InnerShift.getValueType(); in visitSRL()
10581 EVT ShiftAmtVT = InnerShift.getOperand(1).getValueType(); in visitSRL()
10590 InnerShift.getOperand(0), NewShiftAmt); in visitSRL()
[all …]