llvm-project/lld/test/COFF/Inputs
Martin Storsjo d581dd5013 [LLD] [COFF] Implement MinGW default manifest handling
In mingw environments, resources are normally compiled to resource
object files directly, instead of letting the linker convert them to
COFF format.

Since some time, GCC supports the notion of a default manifest object.
When invoking the linker, GCC looks for the default manifest object
file, and if found in the expected path, it is added to linker commands.

The default manifest is one that indicates support for the latest known
versions of windows, to implicitly unlock the modern behaviours of certain
APIs.

Not all mingw/gcc distributions include this file, but e.g. in msys2,
the default manifest object is distributed in a separate package (which
can be but might not always be installed).

This means that even if user projects only use one single resource
object file, the linker can end up with two resource object files,
and thus needs to support merging them.

The default manifest has a language id of zero, and GNU ld has got
logic for dropping a manifest with a zero language id, if there's
another manifest present with a nonzero language id. If there are
multiple manifests with a nonzero language id, the merging process
errors out.

Differential Revision: https://reviews.llvm.org/D66825

llvm-svn: 370974
2019-09-04 20:34:00 +00:00
..
alias-implib.lib [COFF] Avoid loading objects for mingw autoimport, when a defined alias exists 2019-08-02 11:02:34 +00:00
alpha.ll COFF: handle multiply defined symbols with different storage 2017-09-01 22:12:10 +00:00
armnt-executable.obj.yaml
armnt-executable.s
associative-comdat-2.s [COFF] Drop unused comdat sections when GC is turned off 2017-06-16 20:47:19 +00:00
associative-comdat-mingw-2.s [COFF] Treat .xdata/.pdata$<sym> as implicitly associative to <sym> for MinGW 2018-08-06 21:26:09 +00:00
bad-block-size.pdb [LLD][COFF] Cleanup error messages / add more coverage tests 2018-09-10 13:51:21 +00:00
bar.ll Revert "Change the X86 datalayout to add three address spaces for 32 bit signed," 2019-08-28 01:08:54 +00:00
beta.ll COFF: handle multiply defined symbols with different storage 2017-09-01 22:12:10 +00:00
cl-gl.obj
combined-resources-2.rc Delete trailing \r. NFC 2019-05-02 00:39:03 +00:00
combined-resources-2.res Add more stringent tests for the resource section of executables. 2017-06-27 21:28:55 +00:00
combined-resources-2.yaml [LLD] [COFF] Support merging resource object files 2019-08-30 06:56:33 +00:00
combined-resources-cursor.bmp Add more stringent tests for the resource section of executables. 2017-06-27 21:28:55 +00:00
combined-resources-okay.bmp Add more stringent tests for the resource section of executables. 2017-06-27 21:28:55 +00:00
combined-resources.rc Add more stringent tests for the resource section of executables. 2017-06-27 21:28:55 +00:00
combined-resources.res Add more stringent tests for the resource section of executables. 2017-06-27 21:28:55 +00:00
combined-resources.yaml [LLD] [COFF] Support merging resource object files 2019-08-30 06:56:33 +00:00
comdat-jumptable2.s [COFF] In MinGW mode, ignore relocations against a discarded section 2018-09-30 18:31:03 +00:00
common-replacement.s [COFF] Remove a superfluous warning about aligncomm for non-common symbols 2018-08-06 19:49:18 +00:00
conflict.ll Revert "Change the X86 datalayout to add three address spaces for 32 bit signed," 2019-08-28 01:08:54 +00:00
constant-export.ll Revert "Change the X86 datalayout to add three address spaces for 32 bit signed," 2019-08-28 01:08:54 +00:00
constant-import.s COFF: actually synthesize CONST imports properly 2017-04-28 17:06:40 +00:00
crt-dyn-initializer-order_1.yaml Delete trailing \r. NFC 2019-05-02 00:39:03 +00:00
crt-dyn-initializer-order_2.yaml Delete trailing \r. NFC 2019-05-02 00:39:03 +00:00
default.def COFF: improve link conformance for import names 2017-07-19 02:01:27 +00:00
delayimports-error.yaml Do not allow delay-importing data symbols. 2017-05-25 18:03:34 +00:00
delayimporttables-dll1.yaml [COFF] Fix delay import directory iterator 2019-04-04 14:13:28 +00:00
delayimporttables-dll2.yaml [COFF] Fix delay import directory iterator 2019-04-04 14:13:28 +00:00
eh_frame_terminator-crtend.s [COFF] Link crtend.o as the last object file 2019-04-15 10:57:44 +00:00
eh_frame_terminator-otherfunc.s [COFF] Link crtend.o as the last object file 2019-04-15 10:57:44 +00:00
empty.yaml lld-link: Implement support for %_PDB% and %_EXT% for /pdbaltpath:. 2018-10-08 23:06:05 +00:00
entry-mangled.ll Revert "Change the X86 datalayout to add three address spaces for 32 bit signed," 2019-08-28 01:08:54 +00:00
except_handler3.lib [coff] correctly emit safeseh entries for handlers defined in dlls 2017-11-16 01:22:01 +00:00
export.ll Revert "Change the X86 datalayout to add three address spaces for 32 bit signed," 2019-08-28 01:08:54 +00:00
export.yaml
export2.yaml
extension.def test: add COFF test for library extension handling 2017-07-18 22:25:07 +00:00
failmismatch1.ll [LLD][COFF] Attempt fix for failifmismatch test on aarch64-only builder. 2019-03-07 13:32:29 +00:00
failmismatch2.ll [LLD][COFF] Attempt fix for failifmismatch test on aarch64-only builder. 2019-03-07 13:32:29 +00:00
far-arm64-abs.s [COFF] Implement the remaining ARM64 relocations 2018-05-04 06:06:27 +00:00
gamma.ll COFF: handle multiply defined symbols with different storage 2017-09-01 22:12:10 +00:00
generic.yaml [PDB] Resubmit "Support embedding natvis files in PDBs." 2018-03-23 19:57:25 +00:00
globals-dia-func-collision3.obj [PDB] One more fix for hasing GSI records. 2018-07-06 21:01:42 +00:00
globals-dia-vfunc-collision.obj [PDB] Sort globals symbols by name in GSI hash buckets. 2018-07-06 02:33:58 +00:00
globals-dia-vfunc-collision2.obj [PDB] Sort globals symbols by name in GSI hash buckets. 2018-07-06 02:33:58 +00:00
globals-dia-vfunc-simple.obj [PDB] Sort globals symbols by name in GSI hash buckets. 2018-07-06 02:33:58 +00:00
gnu-implib-data.s [COFF] Allow automatic dllimport from gnu import libraries 2018-09-26 06:13:39 +00:00
gnu-implib-func.s [COFF] Support linking to import libraries from GNU binutils 2018-09-21 22:01:06 +00:00
gnu-implib-head.s [COFF] Support linking to import libraries from GNU binutils 2018-09-21 22:01:06 +00:00
gnu-implib-tail.s [COFF] Support linking to import libraries from GNU binutils 2018-09-21 22:01:06 +00:00
gnu-weak.o [COFF] Cope with weak aliases produced by GNU tools 2018-10-03 18:31:53 +00:00
gnu-weak2.o [COFF] Cope with weak aliases produced by GNU tools 2018-10-03 18:31:53 +00:00
guardcf-align-foobar.yaml lld-link: align sections to 16 bytes if referenced from the gfids table 2018-06-28 15:22:40 +00:00
hello32.yaml Fix linkrepro.test after safeseh:no change 2019-07-16 18:33:13 +00:00
hello64.asm
hello64.obj
icf-safe.s COFF: Implement safe ICF on rodata using address-significance tables. 2018-08-23 17:44:42 +00:00
id.res lld-link: Add /force:multipleres extension to make dupe resource diag non-fatal 2019-05-02 21:21:55 +00:00
id.res.o [COFF] Fix .rsrc sections with differing permissions 2019-06-28 17:13:52 +00:00
import.yaml Garbage collect dllimported symbols. 2017-05-24 22:30:06 +00:00
imports-mangle.lib
include1a.yaml
include1b.yaml
include1c.yaml
inline-weak.o [COFF] Cope with GCC produced weak aliases referring to comdat functions 2018-10-05 19:43:16 +00:00
inline-weak2.o [COFF] Cope with GCC produced weak aliases referring to comdat functions 2018-10-05 19:43:16 +00:00
libcall-archive.ll Revert "Change the X86 datalayout to add three address spaces for 32 bit signed," 2019-08-28 01:08:54 +00:00
libcall-archive.s [COFF] Add libcall symbols to the link when LTO is being used 2019-08-22 19:40:07 +00:00
library-arm64.lib [COFF] Add initial support for some ARM64 relocations and import thunks 2017-07-11 07:22:44 +00:00
library.def COFF: add support for lib mode usage 2017-06-15 20:39:58 +00:00
library.lib
library2-arm64.lib [COFF] Align import address chunks to the pointer size 2017-07-20 05:49:54 +00:00
library2.def [COFF] Align import address chunks to the pointer size 2017-07-20 05:49:54 +00:00
loadconfig-cfg-x64.s [COFF] Add integration test for LTO + /guard:cf 2018-03-14 19:49:28 +00:00
locally-imported-def.s [COFF] Warn for locally imported symbols 2017-12-15 07:49:21 +00:00
locally-imported-imp.s [COFF] Warn for locally imported symbols 2017-12-15 07:49:21 +00:00
lto-cache.ll Revert "Change the X86 datalayout to add three address spaces for 32 bit signed," 2019-08-28 01:08:54 +00:00
lto-chkstk-chkstk.s
lto-chkstk-foo.s
lto-comdat1.ll Revert "Change the X86 datalayout to add three address spaces for 32 bit signed," 2019-08-28 01:08:54 +00:00
lto-comdat2.ll Revert "Change the X86 datalayout to add three address spaces for 32 bit signed," 2019-08-28 01:08:54 +00:00
lto-dep.ll Revert "Change the X86 datalayout to add three address spaces for 32 bit signed," 2019-08-28 01:08:54 +00:00
lto-lazy-reference-dummy.ll Revert "Change the X86 datalayout to add three address spaces for 32 bit signed," 2019-08-28 01:08:54 +00:00
lto-lazy-reference-quadruple.ll Revert "Change the X86 datalayout to add three address spaces for 32 bit signed," 2019-08-28 01:08:54 +00:00
machine-x64.yaml
machine-x86.yaml
mangled-symbol.s lld-link: Demangle symbols from archives in diagnostics 2019-07-19 13:29:10 +00:00
manifest-lang0.res [LLD] [COFF] Implement MinGW default manifest handling 2019-09-04 20:34:00 +00:00
manifest-lang0.yaml [LLD] [COFF] Implement MinGW default manifest handling 2019-09-04 20:34:00 +00:00
manifest-lang1.res [LLD] [COFF] Implement MinGW default manifest handling 2019-09-04 20:34:00 +00:00
manifest-lang1.yaml [LLD] [COFF] Implement MinGW default manifest handling 2019-09-04 20:34:00 +00:00
manifest-lang2.res [LLD] [COFF] Implement MinGW default manifest handling 2019-09-04 20:34:00 +00:00
manifest-lang2.yaml [LLD] [COFF] Implement MinGW default manifest handling 2019-09-04 20:34:00 +00:00
manifestinput.test
msvclto-order-a.ll Revert "Change the X86 datalayout to add three address spaces for 32 bit signed," 2019-08-28 01:08:54 +00:00
msvclto-order-b.ll Revert "Change the X86 datalayout to add three address spaces for 32 bit signed," 2019-08-28 01:08:54 +00:00
msvclto.s
named.def COFF: improve link conformance for import names 2017-07-19 02:01:27 +00:00
natvis-1.natvis [PDB] Resubmit "Support embedding natvis files in PDBs." 2018-03-23 19:57:25 +00:00
natvis-2.natvis [PDB] Resubmit "Support embedding natvis files in PDBs." 2018-03-23 19:57:25 +00:00
natvis-3.natvis [PDB] Resubmit "Support embedding natvis files in PDBs." 2018-03-23 19:57:25 +00:00
no-ipi-stream-obj.obj.yaml [lld] Fix type server merging with PDBs without IPI stream 2019-06-12 22:33:16 +00:00
no-ipi-stream-pdb.pdb.yaml [lld] Fix type server merging with PDBs without IPI stream 2019-06-12 22:33:16 +00:00
object.s COFF: improve link conformance for import names 2017-07-19 02:01:27 +00:00
oldname.yaml Garbage collect dllimported symbols. 2017-05-24 22:30:06 +00:00
order.yaml Add the /order option. 2018-01-27 00:34:46 +00:00
otherFunc.s [COFF] Store import symbol pointers as pointers to the base class 2018-07-10 10:40:11 +00:00
pdb-diff-cl.pdb Fix some differences between lld and MSVC generated PDBs. 2017-07-07 18:45:56 +00:00
pdb-diff.cpp Delete trailing \r. NFC 2019-05-02 00:39:03 +00:00
pdb-diff.obj Fix some differences between lld and MSVC generated PDBs. 2017-07-07 18:45:56 +00:00
pdb-file-statics-a.yaml [COFF] Update LLD yaml test cases to include .bss size 2019-05-10 22:12:51 +00:00
pdb-file-statics-b.yaml [COFF] Update LLD yaml test cases to include .bss size 2019-05-10 22:12:51 +00:00
pdb-global-constants-a.s Deduplicate S_CONSTANTs in LLD. 2019-06-11 18:02:39 +00:00
pdb-global-constants-b.s Deduplicate S_CONSTANTs in LLD. 2019-06-11 18:02:39 +00:00
pdb-global-gc.s [COFF] Allow debug info to relocate against discarded symbols 2017-06-28 17:06:35 +00:00
pdb-globals.yaml [COFF] Update LLD yaml test cases to include .bss size 2019-05-10 22:12:51 +00:00
pdb-hashes-1.yaml Resubmit [pdb] Change /DEBUG:GHASH to emit 8 byte hashes." 2018-05-17 22:55:15 +00:00
pdb-hashes-2-missing.yaml Resubmit [pdb] Change /DEBUG:GHASH to emit 8 byte hashes." 2018-05-17 22:55:15 +00:00
pdb-hashes-2.yaml Resubmit [pdb] Change /DEBUG:GHASH to emit 8 byte hashes." 2018-05-17 22:55:15 +00:00
pdb-import-gc.lib [COFF] Allow debug info to relocate against discarded symbols 2017-06-28 17:06:35 +00:00
pdb-scopes-a.yaml Update LLD tests for CodeView dumper change in r339907 2018-08-16 18:03:06 +00:00
pdb-scopes-b.yaml Update LLD tests for CodeView dumper change in r339907 2018-08-16 18:03:06 +00:00
pdb-type-server-invalid-path.yaml Re-land [LLD][COFF] Early load PDB type server files 2019-06-03 12:39:47 +00:00
pdb-type-server-missing-2.yaml [LLD][COFF] Cleanup error messages / add more coverage tests 2018-09-10 13:51:21 +00:00
pdb-type-server-simple-a.yaml Update LLD tests for CodeView dumper change in r339907 2018-08-16 18:03:06 +00:00
pdb-type-server-simple-b.yaml Update LLD tests for CodeView dumper change in r339907 2018-08-16 18:03:06 +00:00
pdb-type-server-simple-ts.yaml [PDB] Merge in types and items from type servers (/Zi) 2017-07-18 00:21:25 +00:00
pdb-type-server-valid-signature.yaml [LLD][COFF] Don't take into account the 'age' when looking for PDB type server 2019-06-05 02:01:43 +00:00
pdb1.yaml [codeview] YAMLize all section offsets and indices in symbol records 2017-06-20 21:19:22 +00:00
pdb2.yaml Resubmit "[codeview] Make obj2yaml/yaml2obj support .debug$S..." 2017-06-14 15:59:27 +00:00
pdb_comdat_bar.yaml [COFF] Update LLD yaml test cases to include .bss size 2019-05-10 22:12:51 +00:00
pdb_comdat_main.yaml Remove trailing whitespace. 2017-12-12 20:00:30 +00:00
pdb_lines_1.yaml Remove trailing whitespace. 2017-12-12 20:00:30 +00:00
pdb_lines_1_relative.yaml [PDB] Add PDBSourcePath flag to support absolutize source file path 2018-07-19 04:56:22 +00:00
pdb_lines_2.yaml Remove trailing whitespace. 2017-12-12 20:00:30 +00:00
pdb_lines_2_relative.yaml [PDB] Add PDBSourcePath flag to support absolutize source file path 2018-07-19 04:56:22 +00:00
precomp-a.obj [COFF][LLD] Add link support for Microsoft precompiled headers OBJs 2018-11-05 19:20:47 +00:00
precomp-b.obj [COFF][LLD] Add link support for Microsoft precompiled headers OBJs 2018-11-05 19:20:47 +00:00
precomp-invalid.obj [COFF][LLD] Add link support for Microsoft precompiled headers OBJs 2018-11-05 19:20:47 +00:00
precomp.obj [COFF][LLD] Add link support for Microsoft precompiled headers OBJs 2018-11-05 19:20:47 +00:00
resource.res
ret42.lib
ret42.obj
ret42.yaml
start-lib1.ll reland "[lld-link] implement -start-lib and -end-lib" 2019-09-03 20:32:16 +00:00
start-lib2.ll reland "[lld-link] implement -start-lib and -end-lib" 2019-09-03 20:32:16 +00:00
std32.lib
std64.lib
thinlto-empty.ll Revert "Change the X86 datalayout to add three address spaces for 32 bit signed," 2019-08-28 01:08:54 +00:00
thinlto-mangled-qux.ll Revert "Change the X86 datalayout to add three address spaces for 32 bit signed," 2019-08-28 01:08:54 +00:00
thinlto.ll Revert "Change the X86 datalayout to add three address spaces for 32 bit signed," 2019-08-28 01:08:54 +00:00
tlssup.s [test] Fix the test from the previous commit when run on windows. NFC. 2019-07-23 07:28:23 +00:00
undefined-symbol-lto-a.ll Revert "Change the X86 datalayout to add three address spaces for 32 bit signed," 2019-08-28 01:08:54 +00:00
undefined-symbol-lto-b.ll Revert "Change the X86 datalayout to add three address spaces for 32 bit signed," 2019-08-28 01:08:54 +00:00
weak-external.ll Revert "Change the X86 datalayout to add three address spaces for 32 bit signed," 2019-08-28 01:08:54 +00:00
weak-external2.ll Revert "Change the X86 datalayout to add three address spaces for 32 bit signed," 2019-08-28 01:08:54 +00:00
weak-external3.ll Revert "Change the X86 datalayout to add three address spaces for 32 bit signed," 2019-08-28 01:08:54 +00:00