[llvm] [AMDGPU] Waterfall loop codegen improvement in SIInstrInfo (PR #192415)
Jay Foad via llvm-commits
llvm-commits at lists.llvm.org
Thu Jun 4 05:18:38 PDT 2026
================
@@ -52,12 +57,22 @@ class LaneMaskConstants {
: AMDGPU::S_ANDN2_SAVEEXEC_B64),
AndN2TermOpc(IsWave32 ? AMDGPU::S_ANDN2_B32_term
: AMDGPU::S_ANDN2_B64_term),
+ AndN2WrExecOpc(IsWave32 ? AMDGPU::S_ANDN2_WREXEC_B32
+ : AMDGPU::S_ANDN2_WREXEC_B64),
AndSaveExecOpc(IsWave32 ? AMDGPU::S_AND_SAVEEXEC_B32
: AMDGPU::S_AND_SAVEEXEC_B64),
AndSaveExecTermOpc(IsWave32 ? AMDGPU::S_AND_SAVEEXEC_B32_term
: AMDGPU::S_AND_SAVEEXEC_B64_term),
BfmOpc(IsWave32 ? AMDGPU::S_BFM_B32 : AMDGPU::S_BFM_B64),
CMovOpc(IsWave32 ? AMDGPU::S_CMOV_B32 : AMDGPU::S_CMOV_B64),
+ CmpXEqU32Opc(IsWave32 ? AMDGPU::V_CMPX_EQ_U32_nosdst_e32
+ : AMDGPU::V_CMPX_EQ_U32_nosdst_e64),
----------------
jayfoad wrote:
This looks wrong. You're selecting either the VOPC or VOP3 encoding, which hsa nothing to do with wave size.
https://github.com/llvm/llvm-project/pull/192415
More information about the llvm-commits
mailing list