80 lines · plain
1# RUN: yaml2obj %s -o %t.obj2# RUN: lld-link /out:%t.exe /entry:main /subsystem:console /force \3# RUN: /merge:.foo=.abc /merge:.bar=.def %t.obj /debug4# RUN: llvm-readobj --sections %t.exe | FileCheck %s5 6# RUN: lld-link /out:%t.exe /entry:main /subsystem:console /force \7# RUN: /merge:.foo=.bar /merge:.bar=.abc %t.obj /debug8# RUN: llvm-readobj --sections %t.exe | FileCheck --check-prefix=CHECK2 %s9 10# RUN: env LLD_IN_TEST=1 not lld-link /out:%t.exe /entry:main /subsystem:console /force \11# RUN: /merge:.rsrc=.foo %t.obj /debug 2>&1 | FileCheck --check-prefix=NO-RSRC %s12# RUN: env LLD_IN_TEST=1 not lld-link /out:%t.exe /entry:main /subsystem:console /force \13# RUN: /merge:.foo=.rsrc %t.obj /debug 2>&1 | FileCheck --check-prefix=NO-RSRC %s14# RUN: env LLD_IN_TEST=1 not lld-link /out:%t.exe /entry:main /subsystem:console /force \15# RUN: /merge:.reloc=.foo %t.obj /debug 2>&1 | FileCheck --check-prefix=NO-RELOC %s16# RUN: env LLD_IN_TEST=1 not lld-link /out:%t.exe /entry:main /subsystem:console /force \17# RUN: /merge:.foo=.reloc %t.obj /debug 2>&1 | FileCheck --check-prefix=NO-RELOC %s18# RUN: env LLD_IN_TEST=1 not lld-link /out:%t.exe /entry:main /subsystem:console /force \19# RUN: /merge:.foo=.foo1 /merge:.foo1=.foo %t.obj /debug 2>&1 | FileCheck --check-prefix=NO-CYCLE %s20# RUN: env LLD_IN_TEST=1 not lld-link /out:%t.exe /entry:main /subsystem:console /force \21# RUN: /merge:.foo=.foo1 /merge:.foo1=.foo2 /merge:.foo2=.foo1 %t.obj /debug 2>&1 | FileCheck --check-prefix=NO-CYCLE %s22 23# CHECK: Name: .def24# CHECK: Name: .abc25 26# CHECK2-NOT: Name: .bar27# CHECK2: Name: .abc28# CHECK2-NOT: Name: .bar29 30# NO-RSRC: /merge: cannot merge '.rsrc' with any section31# NO-RELOC: /merge: cannot merge '.reloc' with any section32 33# NO-CYCLE: /merge: cycle found for section '.foo'34 35--- !COFF36header:37 Machine: IMAGE_FILE_MACHINE_AMD6438 Characteristics: []39sections:40 - Name: .foo41 Characteristics: [ IMAGE_SCN_CNT_INITIALIZED_DATA, IMAGE_SCN_MEM_READ, IMAGE_SCN_MEM_WRITE ]42 Alignment: 443 SectionData: 00000000000044 - Name: .bar45 Characteristics: [ IMAGE_SCN_CNT_INITIALIZED_DATA, IMAGE_SCN_MEM_READ, IMAGE_SCN_MEM_WRITE ]46 Alignment: 447 SectionData: 00000000000048symbols:49 - Name: .foo50 Value: 051 SectionNumber: 152 SimpleType: IMAGE_SYM_TYPE_NULL53 ComplexType: IMAGE_SYM_DTYPE_NULL54 StorageClass: IMAGE_SYM_CLASS_STATIC55 SectionDefinition:56 Length: 657 NumberOfRelocations: 058 NumberOfLinenumbers: 059 CheckSum: 060 Number: 061 - Name: .bar62 Value: 063 SectionNumber: 264 SimpleType: IMAGE_SYM_TYPE_NULL65 ComplexType: IMAGE_SYM_DTYPE_NULL66 StorageClass: IMAGE_SYM_CLASS_STATIC67 SectionDefinition:68 Length: 669 NumberOfRelocations: 070 NumberOfLinenumbers: 071 CheckSum: 072 Number: 073 - Name: main74 Value: 075 SectionNumber: 176 SimpleType: IMAGE_SYM_TYPE_NULL77 ComplexType: IMAGE_SYM_DTYPE_FUNCTION78 StorageClass: IMAGE_SYM_CLASS_EXTERNAL79...80