summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Target/ARM/ARM.td
diff options
context:
space:
mode:
authorOliver Stannard <oliver.stannard@arm.com>2017-10-03 10:26:11 +0000
committerOliver Stannard <oliver.stannard@arm.com>2017-10-03 10:26:11 +0000
commite093bad472ce7ad1715321abbb3b1fdbf42e2693 (patch)
tree35bbe814682e57c6f011b55b0dbb6b79fd34cdaf /llvm/lib/Target/ARM/ARM.td
parentd87af9a1c043713ef24f84258f8dfd11778e7be8 (diff)
downloadbcm5719-llvm-e093bad472ce7ad1715321abbb3b1fdbf42e2693.tar.gz
bcm5719-llvm-e093bad472ce7ad1715321abbb3b1fdbf42e2693.zip
[ARM] Use new assembler diags for ARM
This converts the ARM AsmParser to use the new assembly matcher error reporting mechanism, which allows errors to be reported for multiple instruction encodings when it is ambiguous which one the user intended to use. By itself this doesn't improve many error messages, because we don't have diagnostic text for most operand types, but as we add that then this will allow more of those diagnostic strings to be used when they are relevant. Differential revision: https://reviews.llvm.org/D31530 llvm-svn: 314779
Diffstat (limited to 'llvm/lib/Target/ARM/ARM.td')
-rw-r--r--llvm/lib/Target/ARM/ARM.td5
1 files changed, 5 insertions, 0 deletions
diff --git a/llvm/lib/Target/ARM/ARM.td b/llvm/lib/Target/ARM/ARM.td
index 25b9802f541..c1a3f639461 100644
--- a/llvm/lib/Target/ARM/ARM.td
+++ b/llvm/lib/Target/ARM/ARM.td
@@ -1022,6 +1022,10 @@ def ARMAsmWriter : AsmWriter {
bit isMCAsmWriter = 1;
}
+def ARMAsmParser : AsmParser {
+ bit ReportMultipleNearMisses = 1;
+}
+
def ARMAsmParserVariant : AsmParserVariant {
int Variant = 0;
string Name = "ARM";
@@ -1032,5 +1036,6 @@ def ARM : Target {
// Pull in Instruction Info.
let InstructionSet = ARMInstrInfo;
let AssemblyWriters = [ARMAsmWriter];
+ let AssemblyParsers = [ARMAsmParser];
let AssemblyParserVariants = [ARMAsmParserVariant];
}
OpenPOWER on IntegriCloud