mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2024-11-26 04:32:44 +01:00
28e82b6565
-t is --symbols in llvm-readobj but --section-details (unimplemented) in readelf. The confusing option should not be used since we aim for improving compatibility. Keep just one llvm-readobj -t use case in test/tools/llvm-readobj/symbols.test llvm-svn: 359661
45 lines
989 B
ArmAsm
45 lines
989 B
ArmAsm
// RUN: llvm-mc %s -triple=thumbv7-linux-gnueabi \
|
|
// RUN: -filetype=obj -o - | llvm-readobj -S --sd -r --symbols | \
|
|
// RUN: FileCheck %s
|
|
|
|
// We want to test relocatable thumb function call.
|
|
|
|
.thumb_func
|
|
foo:
|
|
.fnstart
|
|
bx lr
|
|
.cantunwind
|
|
.fnend
|
|
|
|
.align 1
|
|
bar:
|
|
.fnstart
|
|
push {r7, lr}
|
|
bl foo(PLT)
|
|
pop {r7, pc}
|
|
.cantunwind
|
|
.fnend
|
|
|
|
// make sure that bl 0 <foo> (fff7feff) is correctly encoded
|
|
// CHECK: Sections [
|
|
// CHECK: SectionData (
|
|
// CHECK: 0000: 704780B5 FFF7FEFF 80BD
|
|
// CHECK: )
|
|
// CHECK: ]
|
|
|
|
// CHECK: Relocations [
|
|
// CHECK-NEXT: Section {{.*}} .rel.text {
|
|
// CHECK-NEXT: 0x4 R_ARM_THM_CALL foo 0x0
|
|
// CHECK-NEXT: }
|
|
// CHECK-NEXT: Section {{.*}} .rel.ARM.exidx {
|
|
// CHECK-NEXT: 0x0 R_ARM_PREL31 .text 0x0
|
|
// CHECK-NEXT: 0x8 R_ARM_PREL31 .text 0x0
|
|
// CHECK-NEXT: }
|
|
// CHECK-NEXT: ]
|
|
|
|
// make sure foo is thumb function: bit 0 = 1
|
|
// CHECK: Symbols [
|
|
// CHECK: Symbol {
|
|
// CHECK: Name: foo
|
|
// CHECK-NEXT: Value: 0x1
|