[PATCH] D137542: [AMDGPU] Use aperture registers instead of S_GETREG

Pierre van Houtryve via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue Nov 8 00:09:29 PST 2022


Pierre-vh added a comment.

In D137542#3912195 <https://reviews.llvm.org/D137542#3912195>, @arsenm wrote:

> I'm assuming you haven't tried running this. I have another attempt for this I did about 2 years ago I can send you. My conclusion then was this is a broken feature, and it's not really a 32-bit register. Instead, this seems to be a 64-bit register and any 32-bit operand ends up reading the low bits (which are always 0). We should still try to use them, but you have to extract the high bits with a shift

I indeed haven't tried running it yet, I planned too but some issues prevented me from doing it.
Do you mean that we need to add a 32 bits right-shift to src_shared_based before using it?
Should we just store it in a SGPR pair and use the high register maybe? (e.g. `s_mov_b64 s[0:1], src_shared_base` then use `s0` (or is it `s1`? I always forget)


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D137542



More information about the llvm-commits mailing list