1. AMDGPU: Make VReg_1 only include 1 artificial register (details)
Commit 21bc8e5a137d76879223ac2d8ff1ba92e2ea3acb by arsenm2
AMDGPU: Make VReg_1 only include 1 artificial register
When TableGen is inferring register classes from contexts, it uses a
sorting function based on the number of registers in the class. Since
this was being treated as an alias of VGPR_32, they had exactly the same
size. The sort used wasn't a stable sort, and even if it were, I believe
the tie breaker would effectively end up being the alphabetical ordering
of the class name. There appear to be issues trying to use an empty set
of registers, so add only one so this will always sort to the end.
Also add a comment explaining how VReg_1 is a dirty hack for
This does end up changing the behavior of i1 with inline asm and VGPR
constraints, but the existing behavior was was already nonsensical and
inconsistent. It should probably be disallowed anyway.
Fixes bug 43699
The file was modifiedllvm/test/CodeGen/AMDGPU/inline-asm.ll
The file was modifiedllvm/lib/Target/AMDGPU/