aboutsummaryrefslogtreecommitdiffstats
path: root/test/MC/ARM/directive-eabi_attribute-diagnostics.s
diff options
context:
space:
mode:
Diffstat (limited to 'test/MC/ARM/directive-eabi_attribute-diagnostics.s')
-rw-r--r--test/MC/ARM/directive-eabi_attribute-diagnostics.s36
1 files changed, 36 insertions, 0 deletions
diff --git a/test/MC/ARM/directive-eabi_attribute-diagnostics.s b/test/MC/ARM/directive-eabi_attribute-diagnostics.s
new file mode 100644
index 0000000..d1ae352
--- /dev/null
+++ b/test/MC/ARM/directive-eabi_attribute-diagnostics.s
@@ -0,0 +1,36 @@
+@ RUN: not llvm-mc -triple armv7-elf -filetype asm -o /dev/null %s 2>&1 \
+@ RUN: | FileCheck %s
+
+ .syntax unified
+ .thumb
+
+ .eabi_attribute Tag_unknown_name, 0
+@ CHECK: error: attribute name not recognised: Tag_unknown_name
+@ CHECK: .eabi_attribute Tag_unknown_name
+@ CHECK: ^
+
+ .eabi_attribute [non_constant_expression], 0
+@ CHECK: error: expected numeric constant
+@ CHECK: .eabi_attribute [non_constant_expression], 0
+@ CHECK: ^
+
+ .eabi_attribute 42, "forty two"
+@ CHECK: error: expected numeric constant
+@ CHECK: .eabi_attribute 42, "forty two"
+@ CHECK: ^
+
+ .eabi_attribute 43, 43
+@ CHECK: error: bad string constant
+@ CHECK: .eabi_attribute 43, 43
+@ CHECK: ^
+
+ .eabi_attribute 0
+@ CHECK: error: comma expected
+@ CHECK: .eabi_attribute 0
+@ CHECK: ^
+
+ .eabi_attribute Tag_MPextension_use_old, 0
+@ CHECK: error: attribute name not recognised: Tag_MPextension_use_old
+@ CHECK: .eabi_attribute Tag_MPextension_use_old, 0
+@ CHECK: ^
+