| // RUN: llvm-mc -filetype=obj -triple x86_64-pc-linux-gnu %s -o - | llvm-readobj -t | FileCheck %s | |
| // Test that all symbols are of type STT_TLS. | |
| leaq foo1@TLSGD(%rip), %rdi | |
| leaq foo2@GOTTPOFF(%rip), %rdi | |
| leaq foo3@TLSLD(%rip), %rdi | |
| .long foo4@GOTTPOFF | |
| .long foo5@TLSLD | |
| .long foo6@TLSGD | |
| .section .zed,"awT",@progbits | |
| foobar: | |
| .long 43 | |
| // CHECK: Symbol { | |
| // CHECK: Name: foobar | |
| // CHECK-NEXT: Value: 0x0 | |
| // CHECK-NEXT: Size: 0 | |
| // CHECK-NEXT: Binding: Local | |
| // CHECK-NEXT: Type: TLS | |
| // CHECK-NEXT: Other: 0 | |
| // CHECK-NEXT: Section: .zed | |
| // CHECK-NEXT: } | |
| // CHECK: Symbol { | |
| // CHECK: Name: foo1 | |
| // CHECK-NEXT: Value: 0x0 | |
| // CHECK-NEXT: Size: 0 | |
| // CHECK-NEXT: Binding: Global | |
| // CHECK-NEXT: Type: TLS | |
| // CHECK-NEXT: Other: 0 | |
| // CHECK-NEXT: Section: Undefined (0x0) | |
| // CHECK-NEXT: } | |
| // CHECK-NEXT: Symbol { | |
| // CHECK-NEXT: Name: foo2 | |
| // CHECK-NEXT: Value: 0x0 | |
| // CHECK-NEXT: Size: 0 | |
| // CHECK-NEXT: Binding: Global | |
| // CHECK-NEXT: Type: TLS | |
| // CHECK-NEXT: Other: 0 | |
| // CHECK-NEXT: Section: Undefined (0x0) | |
| // CHECK-NEXT: } | |
| // CHECK-NEXT: Symbol { | |
| // CHECK-NEXT: Name: foo3 | |
| // CHECK-NEXT: Value: 0x0 | |
| // CHECK-NEXT: Size: 0 | |
| // CHECK-NEXT: Binding: Global | |
| // CHECK-NEXT: Type: TLS | |
| // CHECK-NEXT: Other: 0 | |
| // CHECK-NEXT: Section: Undefined (0x0) | |
| // CHECK-NEXT: } | |
| // CHECK-NEXT: Symbol { | |
| // CHECK-NEXT: Name: foo4 | |
| // CHECK-NEXT: Value: 0x0 | |
| // CHECK-NEXT: Size: 0 | |
| // CHECK-NEXT: Binding: Global | |
| // CHECK-NEXT: Type: TLS | |
| // CHECK-NEXT: Other: 0 | |
| // CHECK-NEXT: Section: Undefined (0x0) | |
| // CHECK-NEXT: } | |
| // CHECK-NEXT: Symbol { | |
| // CHECK-NEXT: Name: foo5 | |
| // CHECK-NEXT: Value: 0x0 | |
| // CHECK-NEXT: Size: 0 | |
| // CHECK-NEXT: Binding: Global | |
| // CHECK-NEXT: Type: TLS | |
| // CHECK-NEXT: Other: 0 | |
| // CHECK-NEXT: Section: Undefined (0x0) | |
| // CHECK-NEXT: } | |
| // CHECK-NEXT: Symbol { | |
| // CHECK-NEXT: Name: foo6 | |
| // CHECK-NEXT: Value: 0x0 | |
| // CHECK-NEXT: Size: 0 | |
| // CHECK-NEXT: Binding: Global | |
| // CHECK-NEXT: Type: TLS | |
| // CHECK-NEXT: Other: 0 | |
| // CHECK-NEXT: Section: Undefined (0x0) | |
| // CHECK-NEXT: } |