1// REQUIRES: x86
2// RUN: llvm-mc -filetype=obj -triple=x86_64-pc-linux -save-temp-labels %s -o %t
3// RUN: ld.lld -discard-none -shared %t -o %t2
4// RUN: llvm-readobj -S --section-data --symbols %t2 | FileCheck %s
5
6.text
7.Lmyvar:
8.Lmyothervar:
9
10// CHECK:   Section {
11// CHECK:     Name: .strtab
12// CHECK-NEXT:     Type: SHT_STRTAB
13// CHECK-NEXT:     Flags [
14// CHECK-NEXT:     ]
15// CHECK-NEXT:     Address:
16// CHECK-NEXT:     Offset:
17// CHECK-NEXT:     Size:
18// CHECK-NEXT:     Link:
19// CHECK-NEXT:     Info:
20// CHECK-NEXT:     AddressAlignment:
21// CHECK-NEXT:     EntrySize:
22// CHECK-NEXT:     SectionData (
23// CHECK-NEXT:       0000: 002E4C6D 796F7468 65727661 72002E4C  |..Lmyothervar..L|
24// CHECK-NEXT:       0010: 6D797661 72005F44 594E414D 494300    |myvar._DYNAMIC.|
25// CHECK-NEXT:     )
26// CHECK-NEXT:   }
27
28// CHECK:   Symbol {
29// CHECK-NEXT:     Name:
30// CHECK-NEXT:     Value: 0x0
31// CHECK-NEXT:     Size: 0
32// CHECK-NEXT:     Binding: Local
33// CHECK-NEXT:     Type: None
34// CHECK-NEXT:     Other: 0
35// CHECK-NEXT:     Section: Undefined
36// CHECK-NEXT:   }
37// CHECK-NEXT:   Symbol {
38// CHECK-NEXT:     Name: .Lmyothervar
39// CHECK-NEXT:     Value:
40// CHECK-NEXT:     Size: 0
41// CHECK-NEXT:     Binding: Local
42// CHECK-NEXT:     Type: None
43// CHECK-NEXT:     Other: 0
44// CHECK-NEXT:     Section: .text
45// CHECK-NEXT:   }
46// CHECK-NEXT:   Symbol {
47// CHECK-NEXT:     Name: .Lmyvar
48// CHECK-NEXT:     Value:
49// CHECK-NEXT:     Size: 0
50// CHECK-NEXT:     Binding: Local
51// CHECK-NEXT:     Type: None
52// CHECK-NEXT:     Other: 0
53// CHECK-NEXT:     Section: .text
54// CHECK-NEXT:   }
55