[llvm] [InstCombine] [X86] pblendvb intrinsics must be replaced by select when possible (PR #137322)

via llvm-commits llvm-commits at lists.llvm.org
Fri Apr 25 08:25:01 PDT 2025


vortex73 wrote:

> You don't need the new blend.ll file - we already have test coverage in PhaseOrdering/X86

Oh alright I'll rectify this.



> I'm not convinced all this is necessary - a small VectorCombine pass for bitops that matches:
> 
> ```
>   bitop(bitcast(x),bitcast(y)) -> bitcast(bitop(x,y))
> ```
> 
> along with cost checks should be enough.

I had considered this, but my main motivator for the decomposition approach was the fact that it could handle deeper logical expressions without the need for additional passes. Anyways I'm open to switch back but I'm guessing some sort of hyrid approach could be taken later to handle more complex patterns.

https://github.com/llvm/llvm-project/pull/137322


More information about the llvm-commits mailing list