[SystemZ] Improve handling of inline asm constraints.
authorJonas Paulsson <paulsson@linux.vnet.ibm.com>
Tue, 4 Feb 2020 23:12:36 +0000 (00:12 +0100)
committerJonas Paulsson <paulsson@linux.vnet.ibm.com>
Wed, 5 Feb 2020 22:04:16 +0000 (17:04 -0500)
commit4a3760d2ba3026d45f44fe127ac2909371d5ee19
tree71b79a95a16c65e65e5eb878e6ceef23b38ef95e
parent5687acf431de4f6a156b2f6906eb4eb503ac70ce
[SystemZ]  Improve handling of inline asm constraints.

The "{=v0}" constraint did not result in the expected error message in the
abscence of the vector facility, because 'v0' matches as a string into the
AnyRegBitRegClass in common code.

This patch adds checks for vector support in case of "{v" and soft-float in
case of "{f" to remedy this.

Review: Ulrich Weigand.
llvm/lib/Target/SystemZ/SystemZISelLowering.cpp
llvm/test/CodeGen/SystemZ/soft-float-inline-asm-04.ll [new file with mode: 0644]