1f4a2713aSLionel Sambuc// RUN: llvm-mc -filetype=obj -triple x86_64-pc-linux-gnu %s -o - | llvm-readobj -t | FileCheck %s 2f4a2713aSLionel Sambuc 3f4a2713aSLionel Sambuc// Test that all symbols are of type STT_TLS. 4f4a2713aSLionel Sambuc 5f4a2713aSLionel Sambuc leaq foo1@TLSGD(%rip), %rdi 6f4a2713aSLionel Sambuc leaq foo2@GOTTPOFF(%rip), %rdi 7f4a2713aSLionel Sambuc leaq foo3@TLSLD(%rip), %rdi 8f4a2713aSLionel Sambuc .long foo4@GOTTPOFF 9f4a2713aSLionel Sambuc .long foo5@TLSLD 10f4a2713aSLionel Sambuc .long foo6@TLSGD 11f4a2713aSLionel Sambuc .section .zed,"awT",@progbits 12f4a2713aSLionel Sambucfoobar: 13f4a2713aSLionel Sambuc .long 43 14f4a2713aSLionel Sambuc 15f4a2713aSLionel Sambuc// CHECK: Symbol { 16*0a6a1f1dSLionel Sambuc// CHECK: Name: foobar 17f4a2713aSLionel Sambuc// CHECK-NEXT: Value: 0x0 18f4a2713aSLionel Sambuc// CHECK-NEXT: Size: 0 19f4a2713aSLionel Sambuc// CHECK-NEXT: Binding: Local 20f4a2713aSLionel Sambuc// CHECK-NEXT: Type: TLS 21f4a2713aSLionel Sambuc// CHECK-NEXT: Other: 0 22f4a2713aSLionel Sambuc// CHECK-NEXT: Section: .zed (0x5) 23f4a2713aSLionel Sambuc// CHECK-NEXT: } 24f4a2713aSLionel Sambuc 25f4a2713aSLionel Sambuc// CHECK: Symbol { 26*0a6a1f1dSLionel Sambuc// CHECK: Name: foo1 27f4a2713aSLionel Sambuc// CHECK-NEXT: Value: 0x0 28f4a2713aSLionel Sambuc// CHECK-NEXT: Size: 0 29f4a2713aSLionel Sambuc// CHECK-NEXT: Binding: Global 30f4a2713aSLionel Sambuc// CHECK-NEXT: Type: TLS 31f4a2713aSLionel Sambuc// CHECK-NEXT: Other: 0 32*0a6a1f1dSLionel Sambuc// CHECK-NEXT: Section: Undefined (0x0) 33f4a2713aSLionel Sambuc// CHECK-NEXT: } 34f4a2713aSLionel Sambuc// CHECK-NEXT: Symbol { 35*0a6a1f1dSLionel Sambuc// CHECK-NEXT: Name: foo2 36f4a2713aSLionel Sambuc// CHECK-NEXT: Value: 0x0 37f4a2713aSLionel Sambuc// CHECK-NEXT: Size: 0 38f4a2713aSLionel Sambuc// CHECK-NEXT: Binding: Global 39f4a2713aSLionel Sambuc// CHECK-NEXT: Type: TLS 40f4a2713aSLionel Sambuc// CHECK-NEXT: Other: 0 41*0a6a1f1dSLionel Sambuc// CHECK-NEXT: Section: Undefined (0x0) 42f4a2713aSLionel Sambuc// CHECK-NEXT: } 43f4a2713aSLionel Sambuc// CHECK-NEXT: Symbol { 44*0a6a1f1dSLionel Sambuc// CHECK-NEXT: Name: foo3 45f4a2713aSLionel Sambuc// CHECK-NEXT: Value: 0x0 46f4a2713aSLionel Sambuc// CHECK-NEXT: Size: 0 47f4a2713aSLionel Sambuc// CHECK-NEXT: Binding: Global 48f4a2713aSLionel Sambuc// CHECK-NEXT: Type: TLS 49f4a2713aSLionel Sambuc// CHECK-NEXT: Other: 0 50*0a6a1f1dSLionel Sambuc// CHECK-NEXT: Section: Undefined (0x0) 51f4a2713aSLionel Sambuc// CHECK-NEXT: } 52f4a2713aSLionel Sambuc// CHECK-NEXT: Symbol { 53*0a6a1f1dSLionel Sambuc// CHECK-NEXT: Name: foo4 54f4a2713aSLionel Sambuc// CHECK-NEXT: Value: 0x0 55f4a2713aSLionel Sambuc// CHECK-NEXT: Size: 0 56f4a2713aSLionel Sambuc// CHECK-NEXT: Binding: Global 57f4a2713aSLionel Sambuc// CHECK-NEXT: Type: TLS 58f4a2713aSLionel Sambuc// CHECK-NEXT: Other: 0 59*0a6a1f1dSLionel Sambuc// CHECK-NEXT: Section: Undefined (0x0) 60f4a2713aSLionel Sambuc// CHECK-NEXT: } 61f4a2713aSLionel Sambuc// CHECK-NEXT: Symbol { 62*0a6a1f1dSLionel Sambuc// CHECK-NEXT: Name: foo5 63f4a2713aSLionel Sambuc// CHECK-NEXT: Value: 0x0 64f4a2713aSLionel Sambuc// CHECK-NEXT: Size: 0 65f4a2713aSLionel Sambuc// CHECK-NEXT: Binding: Global 66f4a2713aSLionel Sambuc// CHECK-NEXT: Type: TLS 67f4a2713aSLionel Sambuc// CHECK-NEXT: Other: 0 68*0a6a1f1dSLionel Sambuc// CHECK-NEXT: Section: Undefined (0x0) 69f4a2713aSLionel Sambuc// CHECK-NEXT: } 70f4a2713aSLionel Sambuc// CHECK-NEXT: Symbol { 71*0a6a1f1dSLionel Sambuc// CHECK-NEXT: Name: foo6 72f4a2713aSLionel Sambuc// CHECK-NEXT: Value: 0x0 73f4a2713aSLionel Sambuc// CHECK-NEXT: Size: 0 74f4a2713aSLionel Sambuc// CHECK-NEXT: Binding: Global 75f4a2713aSLionel Sambuc// CHECK-NEXT: Type: TLS 76f4a2713aSLionel Sambuc// CHECK-NEXT: Other: 0 77*0a6a1f1dSLionel Sambuc// CHECK-NEXT: Section: Undefined (0x0) 78f4a2713aSLionel Sambuc// CHECK-NEXT: } 79