80 lines
2.9 KiB
Text
80 lines
2.9 KiB
Text
|
# RUN: llvm-mc -filetype=obj -triple=x86_64 %s -o %t
|
||
|
|
||
|
## Check we do not skip zeroes blocks if have relocations pointed to these places.
|
||
|
# RUN: llvm-objdump -D --reloc -j .rodata %t | FileCheck %s
|
||
|
# RUN: llvm-objdump -D --reloc -j .rodata --disassemble-symbols=rodata3 %t | FileCheck %s --check-prefix=CHECK2
|
||
|
|
||
|
# CHECK: 0000000000000000 <rodata1>:
|
||
|
# CHECK-NEXT: 0: 00 00 addb %al, (%rax)
|
||
|
# CHECK-NEXT: 0000000000000000: R_X86_64_64 x0
|
||
|
# CHECK-NEXT: 2: 00 00 addb %al, (%rax)
|
||
|
# CHECK-NEXT: 4: 00 00 addb %al, (%rax)
|
||
|
# CHECK-NEXT: 6: 00 00 addb %al, (%rax)
|
||
|
# CHECK-NEXT: 8: 00 00 addb %al, (%rax)
|
||
|
# CHECK-NEXT: 0000000000000008: R_X86_64_64 x1
|
||
|
# CHECK-NEXT: ...
|
||
|
# CHECK-NEXT: 16: 00 00 addb %al, (%rax)
|
||
|
# CHECK-NEXT: 18: 00 00 addb %al, (%rax)
|
||
|
# CHECK-NEXT: 0000000000000018: R_X86_64_64 x2
|
||
|
# CHECK-NEXT: 1a: 00 00 addb %al, (%rax)
|
||
|
# CHECK-NEXT: 1c: 00 00 addb %al, (%rax)
|
||
|
# CHECK-NEXT: 1e: 00 00 addb %al, (%rax)
|
||
|
# CHECK-EMPTY:
|
||
|
# CHECK-NEXT: 000000000000001f <rodata2>:
|
||
|
# CHECK-NEXT: ...
|
||
|
# CHECK-EMPTY:
|
||
|
# CHECK-NEXT: 0000000000000037 <rodata3>:
|
||
|
# CHECK-NEXT: ...
|
||
|
# CHECK-NEXT: 3f: 00 00 addb %al, (%rax)
|
||
|
# CHECK-NEXT: 000000000000003f: R_X86_64_64 x3
|
||
|
# CHECK-NEXT: 41: 00 00 addb %al, (%rax)
|
||
|
# CHECK-NEXT: 43: 00 00 addb %al, (%rax)
|
||
|
# CHECK-NEXT: 45: 00 00 addb %al, (%rax)
|
||
|
|
||
|
# CHECK2: Disassembly of section .rodata:
|
||
|
# CHECK2-EMPTY:
|
||
|
# CHECK2-NEXT: 0000000000000037 <rodata3>:
|
||
|
# CHECK2-NEXT: ...
|
||
|
# CHECK2-NEXT: 3f: 00 00 addb %al, (%rax)
|
||
|
# CHECK2-NEXT: 000000000000003f: R_X86_64_64 x3
|
||
|
# CHECK2-NEXT: 41: 00 00 addb %al, (%rax)
|
||
|
# CHECK2-NEXT: 43: 00 00 addb %al, (%rax)
|
||
|
# CHECK2-NEXT: 45: 00 00 addb %al, (%rax)
|
||
|
# CHECK2-NOT: {{.}}
|
||
|
|
||
|
## Check that without -reloc all zeroes would be omitted.
|
||
|
# RUN: llvm-objdump -D %t | FileCheck %s --check-prefix=SKIP
|
||
|
|
||
|
# SKIP: Disassembly of section .rodata:
|
||
|
# SKIP-EMPTY:
|
||
|
# SKIP-NEXT: 0000000000000000 <rodata1>:
|
||
|
# SKIP-NEXT: ...
|
||
|
# SKIP-NEXT: 1c: 00 00 addb %al, (%rax)
|
||
|
# SKIP-NEXT: 1e: 00 00 addb %al, (%rax)
|
||
|
# SKIP-EMPTY:
|
||
|
# SKIP-NEXT: 000000000000001f <rodata2>:
|
||
|
# SKIP-NEXT: ...
|
||
|
# SKIP-EMPTY:
|
||
|
# SKIP-NEXT: 0000000000000037 <rodata3>:
|
||
|
# SKIP-NEXT: ...
|
||
|
# SKIP-EMPTY:
|
||
|
# SKIP-NEXT: Disassembly of section .rela.rodata:
|
||
|
|
||
|
.rodata
|
||
|
.globl rodata1, rodata2
|
||
|
rodata1:
|
||
|
.reloc ., BFD_RELOC_64, x0
|
||
|
.space 8
|
||
|
.reloc ., BFD_RELOC_64, x1
|
||
|
.space 16
|
||
|
.reloc ., BFD_RELOC_64, x2
|
||
|
.space 7
|
||
|
|
||
|
rodata2:
|
||
|
.space 24
|
||
|
|
||
|
rodata3:
|
||
|
.space 8
|
||
|
.reloc ., BFD_RELOC_64, x3
|
||
|
.space 8
|