1# RUN: llvm-mc -filetype=obj -triple x86_64-pc-win32 %s | llvm-readobj -symbols | FileCheck %s
2
3# This assembly should make an object with two .text sections, two .xdata
4# sections, and two .pdata sections.
5
6        .def     f;
7        .scl    2;
8        .type   32;
9        .endef
10        .section        .text,"xr",discard,f
11        .globl  f
12        .p2align        4, 0x90
13f:                                      # @f
14.Ltmp0:
15.seh_proc f
16# BB#0:
17        subq    $40, %rsp
18.Ltmp1:
19        .seh_stackalloc 40
20.Ltmp2:
21        .seh_endprologue
22        callq   g
23        nop
24        addq    $40, %rsp
25        retq
26        .seh_handlerdata
27        .section        .text,"xr",discard,f
28.Ltmp3:
29        .seh_endproc
30
31        .def     g;
32        .scl    3;
33        .type   32;
34        .endef
35        .section        .text,"xr",associative,f
36        .p2align        4, 0x90
37g:                                      # @g
38.Ltmp4:
39.seh_proc g
40# BB#0:
41.Ltmp5:
42        .seh_endprologue
43        retq
44        .seh_handlerdata
45        .section        .text,"xr",associative,f
46.Ltmp6:
47        .seh_endproc
48
49
50# CHECK: Symbols [
51# CHECK:   Symbol {
52# CHECK:     Name: .text
53# CHECK:     Section: .text (4)
54# CHECK:     AuxSymbolCount: 1
55# CHECK:     AuxSectionDef {
56# CHECK:       Length: 15
57# CHECK:       RelocationCount: 1
58# CHECK:       LineNumberCount: 0
59# CHECK:       Checksum: 0xE17CBB7
60# CHECK:       Number: 4
61# CHECK:       Selection: Any (0x2)
62# CHECK:     }
63# CHECK:   }
64# CHECK:   Symbol {
65# CHECK:     Name: .xdata
66# CHECK:     Value: 0
67# CHECK:     Section: .xdata (5)
68# CHECK:     BaseType: Null (0x0)
69# CHECK:     ComplexType: Null (0x0)
70# CHECK:     StorageClass: Static (0x3)
71# CHECK:     AuxSymbolCount: 1
72# CHECK:     AuxSectionDef {
73# CHECK:       Length: 8
74# CHECK:       RelocationCount: 0
75# CHECK:       LineNumberCount: 0
76# CHECK:       Checksum: 0xFC539D1
77# CHECK:       Number: 4
78# CHECK:       Selection: Associative (0x5)
79# CHECK:       AssocSection: .text (4)
80# CHECK:     }
81# CHECK:   }
82# CHECK:   Symbol {
83# CHECK:     Name: .text
84# CHECK:     Value: 0
85# CHECK:     Section: .text (6)
86# CHECK:     BaseType: Null (0x0)
87# CHECK:     ComplexType: Null (0x0)
88# CHECK:     StorageClass: Static (0x3)
89# CHECK:     AuxSymbolCount: 1
90# CHECK:     AuxSectionDef {
91# CHECK:       Length: 1
92# CHECK:       RelocationCount: 0
93# CHECK:       LineNumberCount: 0
94# CHECK:       Checksum: 0x26D930A
95# CHECK:       Number: 4
96# CHECK:       Selection: Associative (0x5)
97# CHECK:       AssocSection: .text (4)
98# CHECK:     }
99# CHECK:   }
100# CHECK:   Symbol {
101# CHECK:     Name: .xdata
102# CHECK:     Value: 0
103# CHECK:     Section: .xdata (7)
104# CHECK:     BaseType: Null (0x0)
105# CHECK:     ComplexType: Null (0x0)
106# CHECK:     StorageClass: Static (0x3)
107# CHECK:     AuxSymbolCount: 1
108# CHECK:     AuxSectionDef {
109# CHECK:       Length: 8
110# CHECK:       RelocationCount: 0
111# CHECK:       LineNumberCount: 0
112# CHECK:       Checksum: 0xCCAA009E
113# CHECK:       Number: 4
114# CHECK:       Selection: Associative (0x5)
115# CHECK:       AssocSection: .text (4)
116# CHECK:     }
117# CHECK:   }
118# CHECK:   Symbol {
119# CHECK:     Name: .pdata
120# CHECK:     Value: 0
121# CHECK:     Section: .pdata (8)
122# CHECK:     BaseType: Null (0x0)
123# CHECK:     ComplexType: Null (0x0)
124# CHECK:     StorageClass: Static (0x3)
125# CHECK:     AuxSymbolCount: 1
126# CHECK:     AuxSectionDef {
127# CHECK:       Length: 12
128# CHECK:       RelocationCount: 3
129# CHECK:       LineNumberCount: 0
130# CHECK:       Checksum: 0xD92012AC
131# CHECK:       Number: 4
132# CHECK:       Selection: Associative (0x5)
133# CHECK:       AssocSection: .text (4)
134# CHECK:     }
135# CHECK:   }
136# CHECK:   Symbol {
137# CHECK:     Name: .pdata
138# CHECK:     Value: 0
139# CHECK:     Section: .pdata (9)
140# CHECK:     BaseType: Null (0x0)
141# CHECK:     ComplexType: Null (0x0)
142# CHECK:     StorageClass: Static (0x3)
143# CHECK:     AuxSymbolCount: 1
144# CHECK:     AuxSectionDef {
145# CHECK:       Length: 12
146# CHECK:       RelocationCount: 3
147# CHECK:       LineNumberCount: 0
148# CHECK:       Checksum: 0xCCAA009E
149# CHECK:       Number: 4
150# CHECK:       Selection: Associative (0x5)
151# CHECK:       AssocSection: .text (4)
152# CHECK:     }
153# CHECK:   }
154# CHECK: ]
155