Index: llvm/test/tools/llvm-objdump/ELF/private-headers.test =================================================================== --- /dev/null +++ llvm/test/tools/llvm-objdump/ELF/private-headers.test @@ -0,0 +1,66 @@ +# RUN: yaml2obj %s -o %t +# RUN: llvm-objdump --private-headers %t | FileCheck %s + +# CHECK: Program Header: +# CHECK-NEXT: LOAD off 0x00000000000000b0 vaddr 0x0000000000001000 paddr 0x0000000000001000 align 2**0 +# CHECK-NEXT: filesz 0x0000000000000058 memsz 0x0000000000000058 flags --- +# CHECK-NEXT: DYNAMIC off 0x00000000000000e8 vaddr 0x0000000000001010 paddr 0x0000000000001010 align 2**0 +# CHECK-NEXT: filesz 0x0000000000000020 memsz 0x0000000000000020 flags --- +# CHECK: Dynamic Section: +# CHECK-NEXT: NEEDED bar +# CHECK: Version definitions: +# CHECK-NEXT:1 0x01 0x075bcd15 foo +# CHECK-NEXT:2 0x02 0x3ade68b1 VERSION_1 +# CHECK-NEXT: VERSION_2 + +--- !ELF +FileHeader: + Class: ELFCLASS64 + Data: ELFDATA2LSB + Type: ET_EXEC + Machine: EM_X86_64 +Sections: + - Name: .dynstr + Type: SHT_STRTAB + Address: 0x1000 + Size: 0x38 + Content: "0062617200666F6F0056455253494F4E5F320056455253494F4E5F3100" + - Name: .dynamic + Type: SHT_DYNAMIC + Address: 0x1010 + Link: 1 + Entries: + - Tag: DT_NEEDED + Value: 0x1 + - Tag: DT_NULL + Value: 0x0 + - Name: .gnu.version_d + Type: SHT_GNU_verdef + Flags: [ SHF_ALLOC ] + AddressAlign: 0x0000000000000004 + Entries: + - Version: 1 + Flags: 1 + VersionNdx: 1 + Hash: 123456789 + Names: + - foo + - Version: 1 + Flags: 2 + VersionNdx: 2 + Hash: 987654321 + Names: + - VERSION_1 + - VERSION_2 +ProgramHeaders: + - Type: PT_LOAD + VAddr: 0x1000 + FirstSec: .dynstr + LastSec: .dynamic + - Type: PT_DYNAMIC + VAddr: 0x1010 + FirstSec: .dynamic + LastSec: .dynamic +DynamicSymbols: + - Name: bar + Binding: STB_GLOBAL Index: llvm/test/tools/llvm-objdump/X86/print-imm-hex.s =================================================================== --- /dev/null +++ llvm/test/tools/llvm-objdump/X86/print-imm-hex.s @@ -0,0 +1,29 @@ +# RUN: llvm-mc -filetype=obj -triple=x86_64-unknown-linux %s -o %t + +# RUN: llvm-objdump -d %t | FileCheck %s --check-prefix=NOPRINT +# RUN: llvm-objdump -d --print-imm-hex --no-print-imm-hex %t | FileCheck %s --check-prefix=NOPRINT +# RUN: llvm-objdump -d --no-print-imm-hex --print-imm-hex %t | FileCheck %s --check-prefix=PRINT + +.text + retq + movq 0x123456(%rip),%rax + movabs $0x5555555555555554,%rax + lwpval $0x0, 0x40(%rdx,%rax), %r15d + lwpins $0x0, 0x1cf01cf0, %r15d + .word 0xffff + +# NOPRINT: 0000000000000000 <.text>: +# NOPRINT-NEXT: 0: c3 retq +# NOPRINT-NEXT: 1: 48 8b 05 56 34 12 00 movq 1193046(%rip), %rax # 12345e <.text+0x12345e> +# NOPRINT-NEXT: 8: 48 b8 54 55 55 55 55 55 55 55 movabsq $6148914691236517204, %rax +# NOPRINT-NEXT: 12: 8f ea 00 12 4c 02 40 00 00 00 00 lwpval $0, 64(%rdx,%rax), %r15d +# NOPRINT-NEXT: 1d: 8f ea 00 12 04 25 f0 1c f0 1c 00 00 00 00 lwpins $0, 485498096, %r15d +# NOPRINT-NEXT: 2b: ff ff + +# PRINT: 0000000000000000 <.text>: +# PRINT-NEXT: 0: c3 retq +# PRINT-NEXT: 1: 48 8b 05 56 34 12 00 movq 0x123456(%rip), %rax # 12345e <.text+0x12345e> +# PRINT-NEXT: 8: 48 b8 54 55 55 55 55 55 55 55 movabsq $0x5555555555555554, %rax +# PRINT-NEXT: 12: 8f ea 00 12 4c 02 40 00 00 00 00 lwpval $0x0, 0x40(%rdx,%rax), %r15d +# PRINT-NEXT: 1d: 8f ea 00 12 04 25 f0 1c f0 1c 00 00 00 00 lwpins $0x0, 0x1cf01cf0, %r15d +# PRINT-NEXT: 2b: ff ff Index: llvm/test/tools/llvm-objdump/section-headers.test =================================================================== --- llvm/test/tools/llvm-objdump/section-headers.test +++ llvm/test/tools/llvm-objdump/section-headers.test @@ -51,6 +51,12 @@ - Name: .debug_info Type: SHT_PROGBITS Flags: [ SHF_WRITE, SHF_ALLOC ] + +## Check that --section-headers and --headers are aliases for -h. +# RUN: llvm-objdump --section-headers --show-lma %t-whitespace.o \ +# RUN: | FileCheck %s --check-prefix=WHITESPACE --strict-whitespace +# RUN: llvm-objdump --headers --show-lma %t-whitespace.o \ +# RUN: | FileCheck %s --check-prefix=WHITESPACE --strict-whitespace ## The name field automatically expands past the default 13 columns when a ## section name is longer than that.