diff options
| author | Michael Trent <mtrent@apple.com> | 2017-12-12 23:53:46 +0000 |
|---|---|---|
| committer | Michael Trent <mtrent@apple.com> | 2017-12-12 23:53:46 +0000 |
| commit | 0f6bfaf17615772f4909cdc38f9ba51dcadbcba9 (patch) | |
| tree | eff75742b3955a2745aca97b4b2c95df00954391 /llvm/test/tools/llvm-objdump | |
| parent | e9ed2327b618e4846f6e510943d5b33bc37c7299 (diff) | |
| download | bcm5719-llvm-0f6bfaf17615772f4909cdc38f9ba51dcadbcba9.tar.gz bcm5719-llvm-0f6bfaf17615772f4909cdc38f9ba51dcadbcba9.zip | |
Updated llvm-objdump to display local relocations in Mach-O binaries
Summary:
llvm-objdump's Mach-O parser was updated in r306037 to display external
relocations for MH_KEXT_BUNDLE file types. This change extends the Macho-O
parser to display local relocations for MH_PRELOAD files. When used with
the -macho option relocations will be displayed in a historical format.
rdar://35778019
Reviewers: enderby
Subscribers: llvm-commits
Differential Revision: https://reviews.llvm.org/D41061
llvm-svn: 320532
Diffstat (limited to 'llvm/test/tools/llvm-objdump')
| -rwxr-xr-x | llvm/test/tools/llvm-objdump/X86/Inputs/macho-preload-x86_64 | bin | 0 -> 1084 bytes | |||
| -rw-r--r-- | llvm/test/tools/llvm-objdump/X86/macho-preload-relocations.test | 5 | ||||
| -rw-r--r-- | llvm/test/tools/llvm-objdump/X86/macho-relocations.test | 12 | ||||
| -rw-r--r-- | llvm/test/tools/llvm-objdump/X86/malformed-machos.test | 2 |
4 files changed, 13 insertions, 6 deletions
diff --git a/llvm/test/tools/llvm-objdump/X86/Inputs/macho-preload-x86_64 b/llvm/test/tools/llvm-objdump/X86/Inputs/macho-preload-x86_64 Binary files differnew file mode 100755 index 00000000000..236606e77c6 --- /dev/null +++ b/llvm/test/tools/llvm-objdump/X86/Inputs/macho-preload-x86_64 diff --git a/llvm/test/tools/llvm-objdump/X86/macho-preload-relocations.test b/llvm/test/tools/llvm-objdump/X86/macho-preload-relocations.test new file mode 100644 index 00000000000..dda0b2b465b --- /dev/null +++ b/llvm/test/tools/llvm-objdump/X86/macho-preload-relocations.test @@ -0,0 +1,5 @@ +// RUN: llvm-objdump -macho -r %p/Inputs/macho-preload-x86_64 | FileCheck %s + +CHECK: Local relocation information 1 entries +CHECK: address pcrel length extern type scattered symbolnum/value +CHECK: 00000000 False quad False UNSIGND False 2 (__TEXT,__cstring) diff --git a/llvm/test/tools/llvm-objdump/X86/macho-relocations.test b/llvm/test/tools/llvm-objdump/X86/macho-relocations.test index 536aec8b1bc..111cf0cc95b 100644 --- a/llvm/test/tools/llvm-objdump/X86/macho-relocations.test +++ b/llvm/test/tools/llvm-objdump/X86/macho-relocations.test @@ -1,7 +1,9 @@ RUN: llvm-objdump -macho -r %p/Inputs/hello.obj.macho-x86_64 | FileCheck %s -CHECK: RELOCATION RECORDS FOR [__text]: -CHECK: 0000000000000027 X86_64_RELOC_BRANCH _printf -CHECK: 000000000000000b X86_64_RELOC_SIGNED L_.str -CHECK: RELOCATION RECORDS FOR [__compact_unwind]: -CHECK: 0000000000000000 X86_64_RELOC_UNSIGNED __text +CHECK: Relocation information (__TEXT,__text) 2 entries +CHECK: address pcrel length extern type scattered symbolnum/value +CHECK: 00000027 True long True BRANCH False _printf +CHECK: 0000000b True long True SIGNED False L_.str +CHECK: Relocation information (__LD,__compact_unwind) 1 entries +CHECK: address pcrel length extern type scattered symbolnum/value +CHECK: 00000000 False quad False UNSIGND False 1 (__TEXT,__text) diff --git a/llvm/test/tools/llvm-objdump/X86/malformed-machos.test b/llvm/test/tools/llvm-objdump/X86/malformed-machos.test index e29df464a4e..414cf973b9d 100644 --- a/llvm/test/tools/llvm-objdump/X86/malformed-machos.test +++ b/llvm/test/tools/llvm-objdump/X86/malformed-machos.test @@ -68,4 +68,4 @@ RUN: not llvm-objdump -macho -objc-meta-data %p/Inputs/macho-invalid-bind-entry INVALID-BIND-ENTRY: macho-invalid-bind-entry': truncated or malformed object (for BIND_OPCODE_SET_DYLIB_ORDINAL_ULEB bad library ordinal: 83 (max 0) for opcode at: 0x0) RUN: llvm-objdump -macho -r %p/Inputs/macho-invalid-reloc-section-index | FileCheck -check-prefix INVALID-RELOC-SECTION-INDEX %s -INVALID-RELOC-SECTION-INDEX: 0000000000000021 X86_64_RELOC_UNSIGNED 8388613 (?,?) +INVALID-RELOC-SECTION-INDEX: 00000021 False byte False UNSIGND False 8388613 (?,?) |

