Define pseudos mirroring the the VGPR indexing ones, and adjust the
operands in the s_movrel* instructions to avoid the result def.
Details
Diff Detail
Event Timeline
| llvm/test/CodeGen/AMDGPU/inserted-wait-states.mir | ||
|---|---|---|
| 425 | It does not define anything. This is not good. It used to define a wrong register though, which is not good either. Can we have a version which will have a whole super reg def and then read the whole super reg as well? | |
| llvm/test/CodeGen/AMDGPU/inserted-wait-states.mir | ||
|---|---|---|
| 425 | Do you mean just in the test? The way it works here is to keep the instruction definition matching the encoding. The pseudo-expansion adds the implicit use/def of the super register. The alternatives would be to multiply the number of movreld physical instruction definitions | |
LGTM. A verifier update is desirable though.
| llvm/test/CodeGen/AMDGPU/inserted-wait-states.mir | ||
|---|---|---|
| 425 | That is good to know. Although I think we need a verifier code to check for the presence of these impdef/impuse and update tests. Not necessarily in this change. | |
It does not define anything. This is not good. It used to define a wrong register though, which is not good either. Can we have a version which will have a whole super reg def and then read the whole super reg as well?