llvm-6502/test/Object/X86/objdump-disassembly-symbolic.test
Rafael Espindola 7df9059541 Implement getRelocationAddress for MachO and ET_REL elf files.
With that, fix the symbolizer to work with any ELF file.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@205588 91177308-0d34-0410-b5e6-96231b3b80d8
2014-04-03 23:54:35 +00:00

69 lines
4.0 KiB
Plaintext

RUN: llvm-objdump -d -symbolize %p/../Inputs/trivial-object-test.elf-x86-64 \
RUN: | FileCheck %s -check-prefix ELF-x86-64
RUN: llvm-objdump -d -symbolize %p/../Inputs/trivial-object-test.macho-x86-64 \
RUN: | FileCheck %s -check-prefix MACHO-x86-64
# Generate this using:
# ld trivial-object-test.macho-x86-64 -undefined dynamic_lookup
RUN: llvm-objdump -d -symbolize %p/../Inputs/trivial-executable-test.macho-x86-64 \
RUN: | FileCheck %s -check-prefix MACHO-STUBS-x86-64
ELF-x86-64: file format ELF64-x86-64
ELF-x86-64: Disassembly of section .text:
ELF-x86-64: main:
ELF-x86-64: 0: 48 83 ec 08 subq $8, %rsp
ELF-x86-64: 4: c7 44 24 04 00 00 00 00 movl $0, 4(%rsp)
ELF-x86-64: c: bf 00 00 00 00 movl $.rodata.str1.1, %edi
ELF-x86-64: 11: e8 00 00 00 00 callq puts-4
ELF-x86-64: 16: 30 c0 xorb %al, %al
ELF-x86-64: 18: e8 00 00 00 00 callq SomeOtherFunction-4
ELF-x86-64: 1d: 8b 44 24 04 movl 4(%rsp), %eax
ELF-x86-64: 21: 48 83 c4 08 addq $8, %rsp
ELF-x86-64: 25: c3 ret
MACHO-x86-64: file format Mach-O 64-bit x86-64
MACHO-x86-64: Disassembly of section __TEXT,__text:
MACHO-x86-64: _main:
MACHO-x86-64: 0: 48 83 ec 08 subq $8, %rsp
MACHO-x86-64: 4: c7 44 24 04 00 00 00 00 movl $0, 4(%rsp)
MACHO-x86-64: c: 48 8d 3d 00 00 00 00 leaq L_.str(%rip), %rdi ## literal pool for: Hello World!
MACHO-x86-64: 13: e8 00 00 00 00 callq _puts
MACHO-x86-64: 18: 30 c0 xorb %al, %al
MACHO-x86-64: 1a: e8 00 00 00 00 callq _SomeOtherFunction
MACHO-x86-64: 1f: 8b 44 24 04 movl 4(%rsp), %eax
MACHO-x86-64: 23: 48 83 c4 08 addq $8, %rsp
MACHO-x86-64: 27: c3 ret
MACHO-STUBS-x86-64: file format Mach-O 64-bit x86-64
MACHO-STUBS-x86-64: Disassembly of section __TEXT,__text:
MACHO-STUBS-x86-64: _main:
MACHO-STUBS-x86-64: 1f90: 48 83 ec 08 subq $8, %rsp
MACHO-STUBS-x86-64: 1f94: c7 44 24 04 00 00 00 00 movl $0, 4(%rsp)
MACHO-STUBS-x86-64: 1f9c: 48 8d 3d 45 00 00 00 leaq 69(%rip), %rdi ## literal pool for: Hello World!
MACHO-STUBS-x86-64: 1fa3: e8 16 00 00 00 callq puts
MACHO-STUBS-x86-64: 1fa8: 30 c0 xorb %al, %al
MACHO-STUBS-x86-64: 1faa: e8 09 00 00 00 callq SomeOtherFunction
MACHO-STUBS-x86-64: 1faf: 8b 44 24 04 movl 4(%rsp), %eax
MACHO-STUBS-x86-64: 1fb3: 48 83 c4 08 addq $8, %rsp
MACHO-STUBS-x86-64: 1fb7: c3 ret
RUN: llvm-objdump -d -symbolize %p/../Inputs/relocation-relocatable.elf-i386 \
RUN: | FileCheck %s -check-prefix ELF-i386-REL
ELF-i386-REL: Disassembly of section .text:
ELF-i386-REL-NEXT: f:
ELF-i386-REL-NEXT: 0: e9 fc ff ff ff jmp h
ELF-i386-REL: g:
ELF-i386-REL-NEXT: 5: e9 fc ff ff ff jmp f
RUN: llvm-objdump -d -symbolize %p/../Inputs/relocation-dynamic.elf-i386 \
RUN: | FileCheck %s -check-prefix ELF-i386-DYN
ELF-i386-DYN: Disassembly of section .text:
ELF-i386-DYN-NEXT: f:
ELF-i386-DYN-NEXT: 1a4: e9 fc ff ff ff jmp h
ELF-i386-DYN: g:
ELF-i386-DYN-NEXT: 1a9: e9 fc ff ff ff jmp f