[llvm] [SLPVectorizer][AMDGPU] Look-through vectorization of AMDGPU intrinsics (PR #175821)
via llvm-commits
llvm-commits at lists.llvm.org
Tue Mar 31 19:25:41 PDT 2026
xgxanq wrote:
> > @alexey-bataev The Look-through state is another sub-kind for target’s intrinsic call. The vectorized tree would otherwise be terminated by the target’s intrinsic call. Now the target’s intrinsic call is still the `NeedToGather` State, and `NeedToGather` of the target’s intrinsic call will be the root to try to build another vectorized tree.`NeedToGather` no longer marks the termination of the vectorized tree just because of the specific call. So do we need to consider introducing another state specifically for calls?
>
> No, such nodes must serve as natural terminators of the trees and then as the roots of the new trees, they should not serve as the intermediate tree nodes
@alexey-bataev I don't agree with you. Just terminate the original tree vefore such nodes (it is done) and then build a new tree is different from the look-through method. Look-through method can keep the only big tree and the tree cost calculation will be in a big scope. But as you said. Just build a new tree, there will exist a big tree terminated by the target's intrinsic call node and a small tree starts from the target's intrinsic call. I don't think the small tree consider it's own tree cost is better.
https://github.com/llvm/llvm-project/pull/175821
More information about the llvm-commits
mailing list