Adds support for "/ENTRY" and "/SUBSYSTEM" linker options in .drectve sections. Some Mozilla binaries were using these directives and MSVC link.exe appears to allow them. No attempt is made to reconcile these with the options on the command line. Patch by David Major! Differential Revision: https://reviews.llvm.org/D39972 llvm-svn: 319356
25 lines
815 B
Plaintext
25 lines
815 B
Plaintext
# RUN: yaml2obj < %s > %t.obj
|
|
# RUN: lld-link /subsystem:console /out:%t.exe %t.obj
|
|
|
|
--- !COFF
|
|
header:
|
|
Machine: IMAGE_FILE_MACHINE_I386
|
|
Characteristics: []
|
|
sections:
|
|
- Name: .text
|
|
Characteristics: [ IMAGE_SCN_CNT_CODE, IMAGE_SCN_MEM_EXECUTE, IMAGE_SCN_MEM_READ ]
|
|
Alignment: 4
|
|
SectionData: B800000000506800000000680000000050E80000000050E800000000
|
|
- Name: .drectve
|
|
Characteristics: [ IMAGE_SCN_LNK_INFO, IMAGE_SCN_LNK_REMOVE ]
|
|
Alignment: 1
|
|
SectionData: 2f656e7472793a437573746f6d456e74727900 # /entry:CustomEntry
|
|
symbols:
|
|
- Name: _CustomEntry
|
|
Value: 0
|
|
SectionNumber: 1
|
|
SimpleType: IMAGE_SYM_TYPE_NULL
|
|
ComplexType: IMAGE_SYM_DTYPE_NULL
|
|
StorageClass: IMAGE_SYM_CLASS_EXTERNAL
|
|
...
|