Lines Matching refs:ShVal1
89 auto matchFunnelShift = [](Value *V, Value *&ShVal0, Value *&ShVal1, in foldGuardedFunnelShift()
98 m_LShr(m_Value(ShVal1), in foldGuardedFunnelShift()
109 m_LShr(m_Value(ShVal1), m_Value(ShAmt)))))) { in foldGuardedFunnelShift()
125 Value *ShVal0, *ShVal1, *ShAmt; in foldGuardedFunnelShift() local
126 Intrinsic::ID IID = matchFunnelShift(P0, ShVal0, ShVal1, ShAmt); in foldGuardedFunnelShift()
129 (IID == Intrinsic::fshr && ShVal1 != P1)) { in foldGuardedFunnelShift()
130 IID = matchFunnelShift(P1, ShVal0, ShVal1, ShAmt); in foldGuardedFunnelShift()
133 (IID == Intrinsic::fshr && ShVal1 != P0)) in foldGuardedFunnelShift()
149 if (!DT.dominates(ShVal0, TermI) || !DT.dominates(ShVal1, TermI)) in foldGuardedFunnelShift()
163 if (ShVal0 == ShVal1) in foldGuardedFunnelShift()
171 if (ShVal0 != ShVal1) { in foldGuardedFunnelShift()
172 if (IsFshl && !llvm::isGuaranteedNotToBePoison(ShVal1)) in foldGuardedFunnelShift()
173 ShVal1 = Builder.CreateFreeze(ShVal1); in foldGuardedFunnelShift()
193 Phi.replaceAllUsesWith(Builder.CreateCall(F, {ShVal0, ShVal1, ShAmt})); in foldGuardedFunnelShift()