summaryrefslogtreecommitdiffstats
path: root/llvm/test/tools/llvm-objdump/ARM
diff options
context:
space:
mode:
authorKevin Enderby <enderby@apple.com>2014-11-06 19:00:13 +0000
committerKevin Enderby <enderby@apple.com>2014-11-06 19:00:13 +0000
commit930fdc77ddcaa766a88af3dcf28d80fe2217922f (patch)
treebd1b88d008b8905f370722b89be332f7e3cfa1d5 /llvm/test/tools/llvm-objdump/ARM
parentfbaaed6b581a3d08b16f0a247e32e98398d014ea (diff)
downloadbcm5719-llvm-930fdc77ddcaa766a88af3dcf28d80fe2217922f.tar.gz
bcm5719-llvm-930fdc77ddcaa766a88af3dcf28d80fe2217922f.zip
Plumb in the ARM thumb symbolizer in llvm-objdump’s Mach-O disassembler and
add the code and test cases for 32-bit ARM symbolizer. Also fixed the printing of data in code as it was not using the table correctly and needed to fix one of the test cases too. This will break lld’s test/mach-o/arm-interworking-movw.yaml till the tweak for that is made. Which I’ll be committing immediately after this commit. llvm-svn: 221470
Diffstat (limited to 'llvm/test/tools/llvm-objdump/ARM')
-rwxr-xr-xllvm/test/tools/llvm-objdump/ARM/Inputs/hello.exe.macho-armbin0 -> 49408 bytes
-rw-r--r--llvm/test/tools/llvm-objdump/ARM/Inputs/hello.obj.macho-armbin0 -> 744 bytes
-rw-r--r--llvm/test/tools/llvm-objdump/ARM/macho-symbolized-disassembly.test8
-rw-r--r--llvm/test/tools/llvm-objdump/ARM/macho-symbolized-subtractor.test15
4 files changed, 23 insertions, 0 deletions
diff --git a/llvm/test/tools/llvm-objdump/ARM/Inputs/hello.exe.macho-arm b/llvm/test/tools/llvm-objdump/ARM/Inputs/hello.exe.macho-arm
new file mode 100755
index 00000000000..40d657b35c0
--- /dev/null
+++ b/llvm/test/tools/llvm-objdump/ARM/Inputs/hello.exe.macho-arm
Binary files differ
diff --git a/llvm/test/tools/llvm-objdump/ARM/Inputs/hello.obj.macho-arm b/llvm/test/tools/llvm-objdump/ARM/Inputs/hello.obj.macho-arm
new file mode 100644
index 00000000000..fb8706b2857
--- /dev/null
+++ b/llvm/test/tools/llvm-objdump/ARM/Inputs/hello.obj.macho-arm
Binary files differ
diff --git a/llvm/test/tools/llvm-objdump/ARM/macho-symbolized-disassembly.test b/llvm/test/tools/llvm-objdump/ARM/macho-symbolized-disassembly.test
new file mode 100644
index 00000000000..eeeab526cf8
--- /dev/null
+++ b/llvm/test/tools/llvm-objdump/ARM/macho-symbolized-disassembly.test
@@ -0,0 +1,8 @@
+// RUN: llvm-objdump -d -m -no-show-raw-insn -full-leading-addr -print-imm-hex %p/Inputs/hello.obj.macho-arm | FileCheck %s -check-prefix=OBJ
+// RUN: llvm-objdump -d -m -no-show-raw-insn -full-leading-addr -print-imm-hex %p/Inputs/hello.exe.macho-arm | FileCheck %s -check-prefix=EXE
+
+OBJ: 00000006 movw r3, :lower16:((54-14)-4)
+OBJ: 0000000a movt r3, :upper16:((54-14)-4)
+OBJ: 00000024 bl _printf
+
+EXE: 0000bfa8 blx 0xbffc @ symbol stub for: _printf
diff --git a/llvm/test/tools/llvm-objdump/ARM/macho-symbolized-subtractor.test b/llvm/test/tools/llvm-objdump/ARM/macho-symbolized-subtractor.test
new file mode 100644
index 00000000000..65df2a984cd
--- /dev/null
+++ b/llvm/test/tools/llvm-objdump/ARM/macho-symbolized-subtractor.test
@@ -0,0 +1,15 @@
+# RUN: llvm-mc < %s -triple armv7-apple-darwin -filetype=obj | llvm-objdump -m -d - | FileCheck %s
+ .thumb
+ .thumb_func _t
+_t:
+ movw r3, :lower16:(Str-(PCinst+4))
+ movt r3, :upper16:(Str-(PCinst+4))
+ .thumb_func PCinst
+PCinst:
+ add r3, pc
+
+ .section __TEXT,__cstring,cstring_literals
+Str:
+ .asciz "Hello world\n"
+# CHECK: movw r3, :lower16:((Str-PCinst)-4)
+# CHECK: movt r3, :upper16:((Str-PCinst)-4)
OpenPOWER on IntegriCloud