2018-04-21 05:10:33 +08:00
|
|
|
# RUN: yaml2obj %s > %t.obj
|
|
|
|
# RUN: lld-link /out:%t.dll /entry:__ImageBase /dll %t.obj
|
|
|
|
# RUN: llvm-readobj -sections %t.dll | FileCheck %s
|
|
|
|
# RUN: lld-link /out:%t.dll /entry:__ImageBase /dll %t.obj /section:.foo,rwe
|
|
|
|
# RUN: llvm-readobj -sections %t.dll | FileCheck --check-prefix=SECTION %s
|
|
|
|
# RUN: lld-link /out:%t.dll /entry:__ImageBase /dll %t.obj /merge:.foo=.bar
|
|
|
|
# RUN: llvm-readobj -sections -section-data %t.dll | FileCheck --check-prefix=MERGE %s
|
|
|
|
# RUN: lld-link /out:%t.dll /entry:__ImageBase /dll %t.obj /merge:.foo=.bar /section:.foo,rwe
|
|
|
|
# RUN: llvm-readobj -sections %t.dll | FileCheck --check-prefix=MERGE-SECTION %s
|
|
|
|
|
|
|
|
# CHECK: Name: .foo
|
|
|
|
# CHECK: Characteristics [
|
|
|
|
# CHECK-NEXT: IMAGE_SCN_CNT_INITIALIZED_DATA
|
|
|
|
# CHECK-NEXT: IMAGE_SCN_MEM_READ
|
|
|
|
# CHECK-NEXT: ]
|
|
|
|
|
|
|
|
# CHECK: Name: .foo
|
|
|
|
# CHECK: Characteristics [
|
|
|
|
# CHECK-NEXT: IMAGE_SCN_CNT_INITIALIZED_DATA
|
|
|
|
# CHECK-NEXT: IMAGE_SCN_MEM_READ
|
|
|
|
# CHECK-NEXT: IMAGE_SCN_MEM_WRITE
|
|
|
|
# CHECK-NEXT: ]
|
|
|
|
|
|
|
|
# SECTION: Name: .foo
|
|
|
|
# SECTION: Characteristics [
|
2018-04-21 05:23:16 +08:00
|
|
|
# SECTION-NEXT: IMAGE_SCN_CNT_INITIALIZED_DATA
|
2018-04-21 05:10:33 +08:00
|
|
|
# SECTION-NEXT: IMAGE_SCN_MEM_EXECUTE
|
|
|
|
# SECTION-NEXT: IMAGE_SCN_MEM_READ
|
|
|
|
# SECTION-NEXT: IMAGE_SCN_MEM_WRITE
|
|
|
|
# SECTION-NEXT: ]
|
|
|
|
|
|
|
|
# SECTION: Name: .foo
|
|
|
|
# SECTION: Characteristics [
|
2018-04-21 05:23:16 +08:00
|
|
|
# SECTION-NEXT: IMAGE_SCN_CNT_INITIALIZED_DATA
|
2018-04-21 05:10:33 +08:00
|
|
|
# SECTION-NEXT: IMAGE_SCN_MEM_EXECUTE
|
|
|
|
# SECTION-NEXT: IMAGE_SCN_MEM_READ
|
|
|
|
# SECTION-NEXT: IMAGE_SCN_MEM_WRITE
|
|
|
|
# SECTION-NEXT: ]
|
|
|
|
|
|
|
|
# MERGE: Name: .bar
|
|
|
|
# MERGE: Characteristics [
|
|
|
|
# MERGE-NEXT: IMAGE_SCN_CNT_INITIALIZED_DATA
|
|
|
|
# MERGE-NEXT: IMAGE_SCN_MEM_READ
|
|
|
|
# MERGE-NEXT: ]
|
|
|
|
# MERGE-NEXT: SectionData (
|
|
|
|
# MERGE-NEXT: 0000: 0301
|
|
|
|
|
|
|
|
# MERGE: Name: .bar
|
|
|
|
# MERGE: Characteristics [
|
|
|
|
# MERGE-NEXT: IMAGE_SCN_CNT_INITIALIZED_DATA
|
|
|
|
# MERGE-NEXT: IMAGE_SCN_MEM_READ
|
|
|
|
# MERGE-NEXT: IMAGE_SCN_MEM_WRITE
|
|
|
|
# MERGE-NEXT: ]
|
|
|
|
# MERGE-NEXT: SectionData (
|
|
|
|
# MERGE-NEXT: 0000: 04
|
|
|
|
|
|
|
|
# MERGE: Name: .foo
|
|
|
|
# MERGE: Characteristics [
|
|
|
|
# MERGE-NEXT: IMAGE_SCN_CNT_INITIALIZED_DATA
|
|
|
|
# MERGE-NEXT: IMAGE_SCN_MEM_READ
|
|
|
|
# MERGE-NEXT: IMAGE_SCN_MEM_WRITE
|
|
|
|
# MERGE-NEXT: ]
|
|
|
|
# MERGE-NEXT: SectionData (
|
|
|
|
# MERGE-NEXT: 0000: 02
|
|
|
|
|
|
|
|
# MERGE-SECTION: Name: .bar
|
|
|
|
# MERGE-SECTION: Characteristics [
|
|
|
|
# MERGE-SECTION-NEXT: IMAGE_SCN_CNT_INITIALIZED_DATA
|
|
|
|
# MERGE-SECTION-NEXT: IMAGE_SCN_MEM_READ
|
|
|
|
# MERGE-SECTION-NEXT: ]
|
|
|
|
|
|
|
|
# MERGE-SECTION: Name: .bar
|
|
|
|
# MERGE-SECTION: Characteristics [
|
|
|
|
# MERGE-SECTION-NEXT: IMAGE_SCN_CNT_INITIALIZED_DATA
|
|
|
|
# MERGE-SECTION-NEXT: IMAGE_SCN_MEM_READ
|
|
|
|
# MERGE-SECTION-NEXT: IMAGE_SCN_MEM_WRITE
|
|
|
|
# MERGE-SECTION-NEXT: ]
|
|
|
|
|
|
|
|
# MERGE-SECTION: Name: .foo
|
|
|
|
# MERGE-SECTION: Characteristics [
|
2018-04-21 05:23:16 +08:00
|
|
|
# MERGE-SECTION-NEXT: IMAGE_SCN_CNT_INITIALIZED_DATA
|
2018-04-21 05:10:33 +08:00
|
|
|
# MERGE-SECTION-NEXT: IMAGE_SCN_MEM_EXECUTE
|
|
|
|
# MERGE-SECTION-NEXT: IMAGE_SCN_MEM_READ
|
|
|
|
# MERGE-SECTION-NEXT: IMAGE_SCN_MEM_WRITE
|
|
|
|
# MERGE-SECTION-NEXT: ]
|
|
|
|
|
|
|
|
--- !COFF
|
|
|
|
header:
|
|
|
|
Machine: IMAGE_FILE_MACHINE_AMD64
|
|
|
|
Characteristics: [ ]
|
|
|
|
sections:
|
|
|
|
- Name: .foo
|
|
|
|
Characteristics: [ IMAGE_SCN_CNT_INITIALIZED_DATA, IMAGE_SCN_MEM_READ ]
|
|
|
|
Alignment: 1
|
|
|
|
SectionData: 01
|
|
|
|
- Name: .foo
|
|
|
|
Characteristics: [ IMAGE_SCN_CNT_INITIALIZED_DATA, IMAGE_SCN_MEM_READ, IMAGE_SCN_MEM_WRITE ]
|
|
|
|
Alignment: 1
|
|
|
|
SectionData: 02
|
|
|
|
- Name: .bar
|
|
|
|
Characteristics: [ IMAGE_SCN_CNT_INITIALIZED_DATA, IMAGE_SCN_MEM_READ ]
|
|
|
|
Alignment: 1
|
|
|
|
SectionData: 03
|
|
|
|
- Name: .bar
|
|
|
|
Characteristics: [ IMAGE_SCN_CNT_INITIALIZED_DATA, IMAGE_SCN_MEM_READ, IMAGE_SCN_MEM_WRITE ]
|
|
|
|
Alignment: 1
|
|
|
|
SectionData: 04
|
|
|
|
symbols:
|
|
|
|
...
|