[llvm] [AMDGPU] Create an AMDGPUIfConverter pass (PR #106415)

Jay Foad via llvm-commits llvm-commits at lists.llvm.org
Wed Sep 18 09:18:06 PDT 2024


Juan Manuel Martinez =?utf-8?q?Caamaño?= <juamarti at amd.com>,
Juan Manuel Martinez =?utf-8?q?Caamaño?= <juamarti at amd.com>,
Juan Manuel Martinez =?utf-8?q?Caamaño?= <juamarti at amd.com>,
Juan Manuel Martinez =?utf-8?q?Caamaño?= <juamarti at amd.com>,
Juan Manuel Martinez =?utf-8?q?Caamaño?= <juamarti at amd.com>,
Juan Manuel Martinez =?utf-8?q?Caamaño?= <juamarti at amd.com>,
Juan Manuel Martinez =?utf-8?q?Caamaño?= <juamarti at amd.com>,
Juan Manuel Martinez =?utf-8?q?Caamaño?= <juamarti at amd.com>,
Juan Manuel Martinez =?utf-8?q?Caamaño?= <juamarti at amd.com>,
Juan Manuel Martinez =?utf-8?q?Caamaño?= <juamarti at amd.com>
Message-ID:
In-Reply-To: <llvm.org/llvm/llvm-project/pull/106415 at github.com>


jayfoad wrote:

I think this is roughly the codegen you would get if the branch condition was divergent _and_ `SIPreEmitPeephole::removeExeczBranch` successfully removed the `s_cbranch_execz`, right? Maybe there is some way to implement this by selectively treating some uniform branch conditions as if they were divergent? (Or to put it another way, handling uniform branches specially is just an optimization, and it should be conservatively correct to handle all branches as if they were divergent. So maybe you could selectively disable that optimization.)

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


More information about the llvm-commits mailing list