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.cpp536 Instruction *InnerShift, in canEvaluateShiftedShift() argument
538 assert(InnerShift->isLogicalShift() && "Unexpected instruction type"); in canEvaluateShiftedShift()
542 if (!match(InnerShift->getOperand(1), m_APInt(InnerShiftConst))) in canEvaluateShiftedShift()
548 bool IsInnerShl = InnerShift->getOpcode() == Instruction::Shl; in canEvaluateShiftedShift()
564 unsigned TypeWidth = InnerShift->getType()->getScalarSizeInBits(); in canEvaluateShiftedShift()
570 if (IC.MaskedValueIsZero(InnerShift->getOperand(0), Mask, CxtI)) in canEvaluateShiftedShift()
641 static Value *foldShiftedShift(BinaryOperator *InnerShift, unsigned OuterShAmt, in foldShiftedShift() argument
644 bool IsInnerShl = InnerShift->getOpcode() == Instruction::Shl; in foldShiftedShift()
645 Type *ShType = InnerShift->getType(); in foldShiftedShift()
650 match(InnerShift->getOperand(1), m_APInt(C1)); in foldShiftedShift()
[all …]
/freebsd/contrib/llvm-project/llvm/lib/CodeGen/SelectionDAG/
H A DDAGCombiner.cpp7113 unsigned InnerShift; // The opposite direction to the OuterShift. in unfoldExtremeBitClearingToShifts() local
7115 auto matchMask = [&OuterShift, &InnerShift, &Y](SDValue M) -> bool { in unfoldExtremeBitClearingToShifts()
7120 InnerShift = ISD::SRL; in unfoldExtremeBitClearingToShifts()
7122 InnerShift = ISD::SHL; in unfoldExtremeBitClearingToShifts()
7143 SDValue T0 = DAG.getNode(InnerShift, DL, VT, X, Y); in unfoldExtremeBitClearingToShifts()
11024 SDValue InnerShift = N0.getOperand(0); in visitSRL() local
11026 if (auto *N001C = isConstOrConstSplat(InnerShift.getOperand(1))) { in visitSRL()
11029 EVT InnerShiftVT = InnerShift.getValueType(); in visitSRL()
11030 EVT ShiftAmtVT = InnerShift.getOperand(1).getValueType(); in visitSRL()
11039 InnerShift.getOperand(0), NewShiftAmt); in visitSRL()
[all …]