Lines Matching refs:ShVal1
78 auto matchFunnelShift = [](Value *V, Value *&ShVal0, Value *&ShVal1, in foldGuardedFunnelShift()
86 m_LShr(m_Value(ShVal1), in foldGuardedFunnelShift()
96 m_LShr(m_Value(ShVal1), m_Deferred(ShAmt)))))) { in foldGuardedFunnelShift()
111 Value *ShVal0, *ShVal1, *ShAmt; in foldGuardedFunnelShift() local
112 Intrinsic::ID IID = matchFunnelShift(P0, ShVal0, ShVal1, ShAmt); in foldGuardedFunnelShift()
115 (IID == Intrinsic::fshr && ShVal1 != P1)) { in foldGuardedFunnelShift()
116 IID = matchFunnelShift(P1, ShVal0, ShVal1, ShAmt); in foldGuardedFunnelShift()
119 (IID == Intrinsic::fshr && ShVal1 != P0)) in foldGuardedFunnelShift()
135 if (!DT.dominates(ShVal0, TermI) || !DT.dominates(ShVal1, TermI)) in foldGuardedFunnelShift()
149 if (ShVal0 == ShVal1) in foldGuardedFunnelShift()
157 if (ShVal0 != ShVal1) { in foldGuardedFunnelShift()
158 if (IsFshl && !llvm::isGuaranteedNotToBePoison(ShVal1)) in foldGuardedFunnelShift()
159 ShVal1 = Builder.CreateFreeze(ShVal1); in foldGuardedFunnelShift()
179 Phi.replaceAllUsesWith(Builder.CreateCall(F, {ShVal0, ShVal1, ShAmt})); in foldGuardedFunnelShift()