1 // Test section manipulation via .linkonce directive.
3 // RUN: llvm-mc -triple i386-pc-win32 -filetype=obj %s | llvm-readobj -s -t | FileCheck %s
4 // RUN: llvm-mc -triple x86_64-pc-win32 -filetype=obj %s | llvm-readobj -s -t | FileCheck %s
23 .linkonce same_contents
27 .linkonce associative s1
42 // Check that valid '.section' names can be associated.
44 .linkonce associative .foo$bar
51 // CHECK: Characteristics [
52 // CHECK: IMAGE_SCN_LNK_COMDAT
57 // CHECK: Characteristics [
58 // CHECK: IMAGE_SCN_LNK_COMDAT
63 // CHECK: Characteristics [
64 // CHECK: IMAGE_SCN_LNK_COMDAT
69 // CHECK: Characteristics [
70 // CHECK: IMAGE_SCN_LNK_COMDAT
75 // CHECK: Characteristics [
76 // CHECK: IMAGE_SCN_LNK_COMDAT
81 // CHECK: Characteristics [
82 // CHECK: IMAGE_SCN_LNK_COMDAT
87 // CHECK: Characteristics [
88 // CHECK: IMAGE_SCN_LNK_COMDAT
93 // CHECK: Characteristics [
94 // CHECK: IMAGE_SCN_LNK_COMDAT
99 // CHECK: Characteristics [
100 // CHECK: IMAGE_SCN_LNK_COMDAT
107 // CHECK: Section: s1 (1)
108 // CHECK: AuxSectionDef {
110 // CHECK: Selection: Any (0x2)
115 // CHECK: Section: s2 (2)
116 // CHECK: AuxSectionDef {
118 // CHECK: Selection: NoDuplicates (0x1)
123 // CHECK: Section: s3 (3)
124 // CHECK: AuxSectionDef {
126 // CHECK: Selection: Any (0x2)
131 // CHECK: Section: s4 (4)
132 // CHECK: AuxSectionDef {
134 // CHECK: Selection: SameSize (0x3)
139 // CHECK: Section: s5 (5)
140 // CHECK: AuxSectionDef {
142 // CHECK: Selection: ExactMatch (0x4)
147 // CHECK: Section: s6 (6)
148 // CHECK: AuxSectionDef {
150 // CHECK: Selection: Associative (0x5)
151 // CHECK: AssocSection: s1
156 // CHECK: Section: s7 (7)
157 // CHECK: AuxSectionDef {
159 // CHECK: Selection: Largest (0x6)
164 // CHECK: Section: s8 (8)
165 // CHECK: AuxSectionDef {
167 // CHECK: Selection: Newest (0x7)
171 // CHECK: Name: multi
173 // CHECK: Section: multi (10)
174 // CHECK: AuxSectionDef {
176 // CHECK: Selection: Associative (0x5)
177 // CHECK: AssocSection: .foo$bar