150
|
1 # RUN: yaml2obj %s > %t.obj
|
|
2 # RUN: lld-link /out:%t.dll /entry:__ImageBase /dll %t.obj
|
|
3 # RUN: llvm-readobj --sections %t.dll | FileCheck %s
|
|
4 # RUN: lld-link /out:%t.dll /entry:__ImageBase /dll %t.obj /section:.foo,rwe
|
|
5 # RUN: llvm-readobj --sections %t.dll | FileCheck --check-prefix=SECTION %s
|
|
6 # RUN: lld-link /out:%t.dll /entry:__ImageBase /dll %t.obj /merge:.foo=.bar
|
|
7 # RUN: llvm-readobj --sections --section-data %t.dll | FileCheck --check-prefix=MERGE %s
|
|
8 # RUN: lld-link /out:%t.dll /entry:__ImageBase /dll %t.obj /merge:.foo=.bar /section:.foo,rwe
|
|
9 # RUN: llvm-readobj --sections %t.dll | FileCheck --check-prefix=MERGE-SECTION %s
|
|
10
|
|
11 # CHECK: Name: .foo
|
|
12 # CHECK: Characteristics [
|
|
13 # CHECK-NEXT: IMAGE_SCN_CNT_INITIALIZED_DATA
|
|
14 # CHECK-NEXT: IMAGE_SCN_MEM_READ
|
|
15 # CHECK-NEXT: ]
|
|
16
|
|
17 # CHECK: Name: .foo
|
|
18 # CHECK: Characteristics [
|
|
19 # CHECK-NEXT: IMAGE_SCN_CNT_INITIALIZED_DATA
|
|
20 # CHECK-NEXT: IMAGE_SCN_MEM_READ
|
|
21 # CHECK-NEXT: IMAGE_SCN_MEM_WRITE
|
|
22 # CHECK-NEXT: ]
|
|
23
|
|
24 # SECTION: Name: .foo
|
|
25 # SECTION: Characteristics [
|
|
26 # SECTION-NEXT: IMAGE_SCN_CNT_INITIALIZED_DATA
|
|
27 # SECTION-NEXT: IMAGE_SCN_MEM_EXECUTE
|
|
28 # SECTION-NEXT: IMAGE_SCN_MEM_READ
|
|
29 # SECTION-NEXT: IMAGE_SCN_MEM_WRITE
|
|
30 # SECTION-NEXT: ]
|
|
31
|
|
32 # SECTION: Name: .foo
|
|
33 # SECTION: Characteristics [
|
|
34 # SECTION-NEXT: IMAGE_SCN_CNT_INITIALIZED_DATA
|
|
35 # SECTION-NEXT: IMAGE_SCN_MEM_EXECUTE
|
|
36 # SECTION-NEXT: IMAGE_SCN_MEM_READ
|
|
37 # SECTION-NEXT: IMAGE_SCN_MEM_WRITE
|
|
38 # SECTION-NEXT: ]
|
|
39
|
|
40 # MERGE: Name: .bar
|
|
41 # MERGE: Characteristics [
|
|
42 # MERGE-NEXT: IMAGE_SCN_CNT_INITIALIZED_DATA
|
|
43 # MERGE-NEXT: IMAGE_SCN_MEM_READ
|
|
44 # MERGE-NEXT: ]
|
|
45 # MERGE-NEXT: SectionData (
|
|
46 # MERGE-NEXT: 0000: 0301
|
|
47
|
|
48 # MERGE: Name: .bar
|
|
49 # MERGE: Characteristics [
|
|
50 # MERGE-NEXT: IMAGE_SCN_CNT_INITIALIZED_DATA
|
|
51 # MERGE-NEXT: IMAGE_SCN_MEM_READ
|
|
52 # MERGE-NEXT: IMAGE_SCN_MEM_WRITE
|
|
53 # MERGE-NEXT: ]
|
|
54 # MERGE-NEXT: SectionData (
|
|
55 # MERGE-NEXT: 0000: 04
|
|
56
|
|
57 # MERGE: Name: .foo
|
|
58 # MERGE: Characteristics [
|
|
59 # MERGE-NEXT: IMAGE_SCN_CNT_INITIALIZED_DATA
|
|
60 # MERGE-NEXT: IMAGE_SCN_MEM_READ
|
|
61 # MERGE-NEXT: IMAGE_SCN_MEM_WRITE
|
|
62 # MERGE-NEXT: ]
|
|
63 # MERGE-NEXT: SectionData (
|
|
64 # MERGE-NEXT: 0000: 02
|
|
65
|
|
66 # MERGE-SECTION: Name: .bar
|
|
67 # MERGE-SECTION: Characteristics [
|
|
68 # MERGE-SECTION-NEXT: IMAGE_SCN_CNT_INITIALIZED_DATA
|
|
69 # MERGE-SECTION-NEXT: IMAGE_SCN_MEM_READ
|
|
70 # MERGE-SECTION-NEXT: ]
|
|
71
|
|
72 # MERGE-SECTION: Name: .bar
|
|
73 # MERGE-SECTION: Characteristics [
|
|
74 # MERGE-SECTION-NEXT: IMAGE_SCN_CNT_INITIALIZED_DATA
|
|
75 # MERGE-SECTION-NEXT: IMAGE_SCN_MEM_READ
|
|
76 # MERGE-SECTION-NEXT: IMAGE_SCN_MEM_WRITE
|
|
77 # MERGE-SECTION-NEXT: ]
|
|
78
|
|
79 # MERGE-SECTION: Name: .foo
|
|
80 # MERGE-SECTION: Characteristics [
|
|
81 # MERGE-SECTION-NEXT: IMAGE_SCN_CNT_INITIALIZED_DATA
|
|
82 # MERGE-SECTION-NEXT: IMAGE_SCN_MEM_EXECUTE
|
|
83 # MERGE-SECTION-NEXT: IMAGE_SCN_MEM_READ
|
|
84 # MERGE-SECTION-NEXT: IMAGE_SCN_MEM_WRITE
|
|
85 # MERGE-SECTION-NEXT: ]
|
|
86
|
|
87 --- !COFF
|
|
88 header:
|
|
89 Machine: IMAGE_FILE_MACHINE_AMD64
|
|
90 Characteristics: [ ]
|
|
91 sections:
|
|
92 - Name: .foo
|
|
93 Characteristics: [ IMAGE_SCN_CNT_INITIALIZED_DATA, IMAGE_SCN_MEM_READ ]
|
|
94 Alignment: 1
|
|
95 SectionData: 01
|
|
96 - Name: .foo
|
|
97 Characteristics: [ IMAGE_SCN_CNT_INITIALIZED_DATA, IMAGE_SCN_MEM_READ, IMAGE_SCN_MEM_WRITE ]
|
|
98 Alignment: 1
|
|
99 SectionData: 02
|
|
100 - Name: .bar
|
|
101 Characteristics: [ IMAGE_SCN_CNT_INITIALIZED_DATA, IMAGE_SCN_MEM_READ ]
|
|
102 Alignment: 1
|
|
103 SectionData: 03
|
|
104 - Name: .bar
|
|
105 Characteristics: [ IMAGE_SCN_CNT_INITIALIZED_DATA, IMAGE_SCN_MEM_READ, IMAGE_SCN_MEM_WRITE ]
|
|
106 Alignment: 1
|
|
107 SectionData: 04
|
|
108 symbols:
|
|
109 ...
|