[NFC][RemoveDIs] Prefer iterators over inst-pointers in InstCombine
[llvm-project.git] / llvm / test / MC / COFF / linkonce.s
blob1fe1d6453be915d9aa076952842d7fad55c1d370
1 // Test section manipulation via .linkonce directive.
2 //
3 // RUN: llvm-mc -triple i386-pc-win32 -filetype=obj %s | llvm-readobj -S --symbols - | FileCheck %s
4 // RUN: llvm-mc -triple x86_64-pc-win32 -filetype=obj %s | llvm-readobj -S --symbols - | FileCheck %s
6 .section s1
7 .linkonce
8 .long 1
10 .section s2
11 .linkonce one_only
12 .long 1
14 .section s3
15 .linkonce discard
16 .long 1
18 .section s4
19 .linkonce same_size
20 .long 1
22 .section s5
23 .linkonce same_contents
24 .long 1
26 .section s6
27 .long 1
29 .section s7
30 .linkonce largest
31 .long 1
33 .section s8
34 .linkonce newest
35 .long 1
37 .section .foo$bar
38 .linkonce discard
39 .long 1
42 // CHECK: Sections [
43 // CHECK: Section {
44 // CHECK: Name: s1
45 // CHECK: Characteristics [
46 // CHECK: IMAGE_SCN_LNK_COMDAT
47 // CHECK: ]
48 // CHECK: }
49 // CHECK: Section {
50 // CHECK: Name: s2
51 // CHECK: Characteristics [
52 // CHECK: IMAGE_SCN_LNK_COMDAT
53 // CHECK: ]
54 // CHECK: }
55 // CHECK: Section {
56 // CHECK: Name: s3
57 // CHECK: Characteristics [
58 // CHECK: IMAGE_SCN_LNK_COMDAT
59 // CHECK: ]
60 // CHECK: }
61 // CHECK: Section {
62 // CHECK: Name: s4
63 // CHECK: Characteristics [
64 // CHECK: IMAGE_SCN_LNK_COMDAT
65 // CHECK: ]
66 // CHECK: }
67 // CHECK: Section {
68 // CHECK: Name: s5
69 // CHECK: Characteristics [
70 // CHECK: IMAGE_SCN_LNK_COMDAT
71 // CHECK: ]
72 // CHECK: }
73 // CHECK: Section {
74 // CHECK: Name: s6
75 // CHECK: Characteristics [
76 // CHECK: ]
77 // CHECK: }
78 // CHECK: Section {
79 // CHECK: Name: s7
80 // CHECK: Characteristics [
81 // CHECK: IMAGE_SCN_LNK_COMDAT
82 // CHECK: ]
83 // CHECK: }
84 // CHECK: Section {
85 // CHECK: Name: s8
86 // CHECK: Characteristics [
87 // CHECK: IMAGE_SCN_LNK_COMDAT
88 // CHECK: ]
89 // CHECK: }
90 // CHECK: ]
91 // CHECK: Symbols [
92 // CHECK: Symbol {
93 // CHECK: Name: s1
94 // CHECK: Section: s1 (4)
95 // CHECK: AuxSectionDef {
96 // CHECK: Number: 4
97 // CHECK: Selection: Any (0x2)
98 // CHECK: }
99 // CHECK: }
100 // CHECK: Symbol {
101 // CHECK: Name: s2
102 // CHECK: Section: s2 (5)
103 // CHECK: AuxSectionDef {
104 // CHECK: Number: 5
105 // CHECK: Selection: NoDuplicates (0x1)
106 // CHECK: }
107 // CHECK: }
108 // CHECK: Symbol {
109 // CHECK: Name: s3
110 // CHECK: Section: s3 (6)
111 // CHECK: AuxSectionDef {
112 // CHECK: Number: 6
113 // CHECK: Selection: Any (0x2)
114 // CHECK: }
115 // CHECK: }
116 // CHECK: Symbol {
117 // CHECK: Name: s4
118 // CHECK: Section: s4 (7)
119 // CHECK: AuxSectionDef {
120 // CHECK: Number: 7
121 // CHECK: Selection: SameSize (0x3)
122 // CHECK: }
123 // CHECK: }
124 // CHECK: Symbol {
125 // CHECK: Name: s5
126 // CHECK: Section: s5 (8)
127 // CHECK: AuxSectionDef {
128 // CHECK: Number: 8
129 // CHECK: Selection: ExactMatch (0x4)
130 // CHECK: }
131 // CHECK: }
132 // CHECK: Symbol {
133 // CHECK: Name: s6
134 // CHECK: }
135 // CHECK: Symbol {
136 // CHECK: Name: s7
137 // CHECK: Section: s7 (10)
138 // CHECK: AuxSectionDef {
139 // CHECK: Number: 10
140 // CHECK: Selection: Largest (0x6)
141 // CHECK: }
142 // CHECK: }
143 // CHECK: Symbol {
144 // CHECK: Name: s8
145 // CHECK: Section: s8 (11)
146 // CHECK: AuxSectionDef {
147 // CHECK: Number: 11
148 // CHECK: Selection: Newest (0x7)
149 // CHECK: }
150 // CHECK: }