[AArch64][SVE] Enable DiagnosticPredicates for SVE LD1 instructions.
authorSander de Smalen <sander.desmalen@arm.com>
Thu, 26 Apr 2018 12:54:42 +0000 (12:54 +0000)
committerSander de Smalen <sander.desmalen@arm.com>
Thu, 26 Apr 2018 12:54:42 +0000 (12:54 +0000)
commitfe17a78b86d3cf1218a605601e15673f501d4f2b
tree271944b9bb7b837e9c711332ef82c925b471bd0f
parentbd896472296edcff008f1e90c7926fc440b333ff
[AArch64][SVE] Enable DiagnosticPredicates for SVE LD1 instructions.

This patch extends the PredicateMethod of AsmOperands used in SVE's
LD1 instructions with a DiagnosticPredicate. This makes them 'context
sensitive' to the operand that has been parsed and tells the user to
use the right register (with expected shift/extend), rather than telling
the immediate is out of range when it actually parsed a register.

Patch [2/2] in a series to improve assembler diagnostics for SVE:
-  Patch [1/2]: https://reviews.llvm.org/D45879
-  Patch [2/2]: https://reviews.llvm.org/D45880

Reviewers: olista01, stoklund, craig.topper, mcrosier, rengolin, echristo, fhahn, SjoerdMeijer, evandro, javed.absar

Reviewed By: fhahn

Differential Revision: https://reviews.llvm.org/D45880

llvm-svn: 330934
12 files changed:
llvm/lib/Target/AArch64/AsmParser/AArch64AsmParser.cpp
llvm/test/MC/AArch64/SVE/ld1b-diagnostics.s
llvm/test/MC/AArch64/SVE/ld1d-diagnostics.s
llvm/test/MC/AArch64/SVE/ld1h-diagnostics.s
llvm/test/MC/AArch64/SVE/ld1sb-diagnostics.s
llvm/test/MC/AArch64/SVE/ld1sh-diagnostics.s
llvm/test/MC/AArch64/SVE/ld1sw-diagnostics.s
llvm/test/MC/AArch64/SVE/ld1w-diagnostics.s
llvm/test/MC/AArch64/SVE/ldff1d-diagnostics.s
llvm/test/MC/AArch64/SVE/ldff1sh-diagnostics.s
llvm/test/MC/AArch64/SVE/ldff1sw-diagnostics.s
llvm/test/MC/AArch64/SVE/ldff1w-diagnostics.s