[PATCH] D110950: [AMDGPU] Enable divergence-driven BFE selection

Stanislav Mekhanoshin via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon Nov 1 12:10:45 PDT 2021


rampitec added inline comments.


================
Comment at: llvm/lib/Target/AMDGPU/AMDGPUISelDAGToDAG.cpp:1953
+                                     uint32_t Offset, uint32_t Width) {
+  if (IsDivergent) {
+    unsigned Opcode = IsSigned ? AMDGPU::V_BFE_I32_e64 : AMDGPU::V_BFE_U32_e64;
----------------
Cannot IsDivergent be derived from the Val itself? Like `SDNode(Val, 0)->isDivergent()`?


================
Comment at: llvm/test/CodeGen/AMDGPU/divergence-driven-bfe-isel.ll:4
+; GCN_LABEL: @bfe_uniform
+; GCN: s_bfe_u32
+define amdgpu_kernel void @bfe_uniform(i32 %val, i32 addrspace(1)* %out) {
----------------
Check constants used in the instructions too.


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D110950/new/

https://reviews.llvm.org/D110950



More information about the llvm-commits mailing list