summaryrefslogtreecommitdiffstats
path: root/llvm/test/tools/llvm-objdump/ARM
diff options
context:
space:
mode:
authorSam Parker <sam.parker@arm.com>2017-01-13 11:04:21 +0000
committerSam Parker <sam.parker@arm.com>2017-01-13 11:04:21 +0000
commit770ceb69ba997d9a58cc258490640960911e7c11 (patch)
tree56912ea2260427dfdb4ede08dc37ee9dbdc56024 /llvm/test/tools/llvm-objdump/ARM
parent438a1ecc2caa8a0e96ba26ea067069d59ae03404 (diff)
downloadbcm5719-llvm-770ceb69ba997d9a58cc258490640960911e7c11.tar.gz
bcm5719-llvm-770ceb69ba997d9a58cc258490640960911e7c11.zip
[ARM] Enable objdump to construct triple for ARM
Now that The ARMAttributeParser has been moved into the library, it has been modified so that it can parse the attributes without printing them and stores them in a map. ELFObjectFile now queries the attributes to fill out the architecture details of a provided triple for 'arm' and 'thumb' targets. llvm-objdump uses this new functionality. Differential Revision: https://reviews.llvm.org/D28281 llvm-svn: 291898
Diffstat (limited to 'llvm/test/tools/llvm-objdump/ARM')
-rw-r--r--llvm/test/tools/llvm-objdump/ARM/v5t-subarch.s10
-rw-r--r--llvm/test/tools/llvm-objdump/ARM/v5te-subarch.s10
-rw-r--r--llvm/test/tools/llvm-objdump/ARM/v5tej-subarch.s7
-rw-r--r--llvm/test/tools/llvm-objdump/ARM/v6-subarch.s9
-rw-r--r--llvm/test/tools/llvm-objdump/ARM/v6k-subarch.s9
-rw-r--r--llvm/test/tools/llvm-objdump/ARM/v6m-subarch.s9
-rw-r--r--llvm/test/tools/llvm-objdump/ARM/v6t2-subarch.s10
-rw-r--r--llvm/test/tools/llvm-objdump/ARM/v7m-subarch.s10
8 files changed, 74 insertions, 0 deletions
diff --git a/llvm/test/tools/llvm-objdump/ARM/v5t-subarch.s b/llvm/test/tools/llvm-objdump/ARM/v5t-subarch.s
new file mode 100644
index 00000000000..c9ce2cf6ceb
--- /dev/null
+++ b/llvm/test/tools/llvm-objdump/ARM/v5t-subarch.s
@@ -0,0 +1,10 @@
+@ RUN: llvm-mc < %s -triple armv5t-elf -filetype=obj | llvm-objdump -triple=arm -d - | FileCheck %s
+
+.arch armv5t
+
+clz:
+clz r0, r1
+
+@ CHECK-LABEL: clz
+@ CHECK: 11 0f 6f e1
+
diff --git a/llvm/test/tools/llvm-objdump/ARM/v5te-subarch.s b/llvm/test/tools/llvm-objdump/ARM/v5te-subarch.s
new file mode 100644
index 00000000000..87e8548fb01
--- /dev/null
+++ b/llvm/test/tools/llvm-objdump/ARM/v5te-subarch.s
@@ -0,0 +1,10 @@
+@ RUN: llvm-mc < %s -triple armv5te-elf -filetype=obj | llvm-objdump -triple=arm -d - | FileCheck %s
+
+.arch armv5te
+
+strd:
+strd r0, r1, [r2, +r3]
+
+@ CHECK-LABEL strd
+@ CHECK: f3 00 82 e1 strd r0, r1, [r2, r3]
+
diff --git a/llvm/test/tools/llvm-objdump/ARM/v5tej-subarch.s b/llvm/test/tools/llvm-objdump/ARM/v5tej-subarch.s
new file mode 100644
index 00000000000..42dc87389a3
--- /dev/null
+++ b/llvm/test/tools/llvm-objdump/ARM/v5tej-subarch.s
@@ -0,0 +1,7 @@
+@ RUN: llvm-mc < %s -triple armv5tej-elf -filetype=obj | llvm-objdump -triple=arm -d - | FileCheck %s
+
+bxj:
+bxj r0
+
+@ CHECK-LABEL: bxj
+@ CHECK: 20 ff 2f e1 bxj r0
diff --git a/llvm/test/tools/llvm-objdump/ARM/v6-subarch.s b/llvm/test/tools/llvm-objdump/ARM/v6-subarch.s
new file mode 100644
index 00000000000..c70761e7c8c
--- /dev/null
+++ b/llvm/test/tools/llvm-objdump/ARM/v6-subarch.s
@@ -0,0 +1,9 @@
+@ RUN: llvm-mc < %s -triple armv6-elf -filetype=obj | llvm-objdump -triple=arm -d - | FileCheck %s
+
+.arch armv6
+
+umaal:
+umaal r0, r1, r2, r3
+
+@ CHECK-LABEL:umaal
+@ CHECK: 92 03 41 e0 umaal r0, r1, r2, r3
diff --git a/llvm/test/tools/llvm-objdump/ARM/v6k-subarch.s b/llvm/test/tools/llvm-objdump/ARM/v6k-subarch.s
new file mode 100644
index 00000000000..8df4ce5e257
--- /dev/null
+++ b/llvm/test/tools/llvm-objdump/ARM/v6k-subarch.s
@@ -0,0 +1,9 @@
+@ RUN: llvm-mc < %s -triple armv6k-elf -filetype=obj | llvm-objdump -triple=arm -d - | FileCheck %s
+
+.arch armv6k
+
+clrex:
+clrex
+
+@ CHECK-LABEL: clrex
+@ CHECK: 1f f0 7f f5 clrex
diff --git a/llvm/test/tools/llvm-objdump/ARM/v6m-subarch.s b/llvm/test/tools/llvm-objdump/ARM/v6m-subarch.s
new file mode 100644
index 00000000000..f4c56989c17
--- /dev/null
+++ b/llvm/test/tools/llvm-objdump/ARM/v6m-subarch.s
@@ -0,0 +1,9 @@
+@ RUN: llvm-mc < %s -triple armv6m-elf -filetype=obj | llvm-objdump -triple=thumb -d - | FileCheck %s
+
+.arch armv6m
+
+dmb:
+dmb
+
+@ CHECK-LABEL: dmb
+@ CHECK: bf f3 5f 8f dmb sy
diff --git a/llvm/test/tools/llvm-objdump/ARM/v6t2-subarch.s b/llvm/test/tools/llvm-objdump/ARM/v6t2-subarch.s
new file mode 100644
index 00000000000..36e13434297
--- /dev/null
+++ b/llvm/test/tools/llvm-objdump/ARM/v6t2-subarch.s
@@ -0,0 +1,10 @@
+@ RUN: llvm-mc < %s -triple armv6t2-elf -filetype=obj | llvm-objdump -triple=thumb -d - | FileCheck %s
+
+.arch armv6t2
+
+.thumb
+umaalt2:
+umaal r0, r1, r2, r3
+
+@ CHECK-LABEL: umaalt2
+@ CHECK: e2 fb 63 01 umaal r0, r1, r2, r3
diff --git a/llvm/test/tools/llvm-objdump/ARM/v7m-subarch.s b/llvm/test/tools/llvm-objdump/ARM/v7m-subarch.s
new file mode 100644
index 00000000000..8f6ff57e0ff
--- /dev/null
+++ b/llvm/test/tools/llvm-objdump/ARM/v7m-subarch.s
@@ -0,0 +1,10 @@
+@ RUN: llvm-mc < %s -triple armv7m-elf -filetype=obj | llvm-objdump -triple=thumb -d - | FileCheck %s
+
+.arch armv7m
+
+umlal:
+umlal r0, r1, r2, r3
+
+@ CHECK-LABEL: umlal
+@ CHECK: e2 fb 03 01 umlal r0, r1, r2, r3
+
OpenPOWER on IntegriCloud