llvm-project/lld/test/COFF/Inputs
Bob Haarman c103156c60 lld-link: align sections to 16 bytes if referenced from the gfids table
Summary:
Control flow guard works best when targets it checks are 16-byte aligned.
Microsoft's link.exe helps ensure this by aligning code from sections
that are referenced from the gfids table to 16 bytes when linking with
-guard:cf, even if the original section specifies a smaller alignment.
This change implements that behavior in lld-link.

See https://crbug.com/857012 for more details.

Reviewers: ruiu, hans, thakis, zturner

Subscribers: llvm-commits

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

llvm-svn: 335864
2018-06-28 15:22:40 +00:00
..
alpha.ll COFF: handle multiply defined symbols with different storage 2017-09-01 22:12:10 +00:00
armnt-executable.obj.yaml [yaml2obj] Updating LLD tests to account for LLVM r273915 2016-06-27 20:17:08 +00:00
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
bar.ll COFF: include archive name in LTO object name 2017-03-28 21:20:06 +00:00
beta.ll COFF: handle multiply defined symbols with different storage 2017-09-01 22:12:10 +00:00
cl-gl.obj Partially revert r287009: Remove trailing whitespace. 2016-11-15 19:09:13 +00:00
combined-resources-2.rc Add more stringent tests for the resource section of executables. 2017-06-27 21:28:55 +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-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
conflict.ll
constant-export.ll IR: Replace the "Linker Options" module flag with "llvm.linker.options" named metadata. 2017-06-12 20:10:48 +00:00
constant-import.s COFF: actually synthesize CONST imports properly 2017-04-28 17:06:40 +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
entry-mangled.ll
except_handler3.lib [coff] correctly emit safeseh entries for handlers defined in dlls 2017-11-16 01:22:01 +00:00
export.ll
export.yaml [yaml2obj] Updating LLD tests to account for LLVM r273915 2016-06-27 20:17:08 +00:00
export2.yaml [yaml2obj] Updating LLD tests to account for LLVM r273915 2016-06-27 20:17:08 +00:00
extension.def test: add COFF test for library extension handling 2017-07-18 22:25:07 +00:00
far-arm-thumb-abs.s COFF ARM: Error out if 24 bit thumb branches are out of range 2016-08-05 17:33:24 +00:00
far-arm-thumb-abs20.s [COFF] Error out if 20 bit thumb branches are out of range 2017-12-14 08:56:36 +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
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 [yaml2obj] Updating LLD tests to account for LLVM r273915 2016-06-27 20:17:08 +00:00
hello64.asm
hello64.obj
import.yaml Garbage collect dllimported symbols. 2017-05-24 22:30:06 +00:00
imports-mangle.lib
include1a.yaml [yaml2obj] Updating LLD tests to account for LLVM r273915 2016-06-27 20:17:08 +00:00
include1b.yaml [yaml2obj] Updating LLD tests to account for LLVM r273915 2016-06-27 20:17:08 +00:00
include1c.yaml [yaml2obj] Updating LLD tests to account for LLVM r273915 2016-06-27 20:17:08 +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 COFF: Implement ThinLTO cache and cache pruning support. 2017-09-08 00:50:50 +00:00
lto-chkstk-chkstk.s
lto-chkstk-foo.s
lto-comdat1.ll
lto-comdat2.ll
lto-dep.ll
lto-lazy-reference-dummy.ll LTO: Don't follow lazy references when seeing new definitions in the combined LTO object 2016-10-12 09:00:06 +00:00
lto-lazy-reference-quadruple.ll LTO: Don't follow lazy references when seeing new definitions in the combined LTO object 2016-10-12 09:00:06 +00:00
machine-x64.yaml [yaml2obj] Updating LLD tests to account for LLVM r273915 2016-06-27 20:17:08 +00:00
machine-x86.yaml [yaml2obj] Updating LLD tests to account for LLVM r273915 2016-06-27 20:17:08 +00:00
manifestinput.test
msvclto-order-a.ll [coff] for /msvclto, pass archive members with prevailing symbols first 2017-04-21 21:38:01 +00:00
msvclto-order-b.ll [coff] for /msvclto, pass archive members with prevailing symbols first 2017-04-21 21:38:01 +00:00
msvclto.s Add an option to use the MSVC linker to link LTO-generated object files. 2017-02-06 20:47:55 +00:00
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
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
pdb-diff-cl.pdb Fix some differences between lld and MSVC generated PDBs. 2017-07-07 18:45:56 +00:00
pdb-diff.cpp Fix some differences between lld and MSVC generated PDBs. 2017-07-07 18:45:56 +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 CV register names. 2018-05-29 14:58:41 +00:00
pdb-file-statics-b.yaml [COFF] Update CV register names. 2018-05-29 14:58:41 +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 Fix newly failing tests. 2018-01-08 23:07:39 +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 [COFF] Update CV register names. 2018-05-29 14:58:41 +00:00
pdb-scopes-b.yaml [COFF] Update CV register names. 2018-05-29 14:58:41 +00:00
pdb-type-server-simple-a.yaml [COFF] Update CV register names. 2018-05-29 14:58:41 +00:00
pdb-type-server-simple-b.yaml [COFF] Update CV register names. 2018-05-29 14:58:41 +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
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 Remove trailing whitespace. 2017-12-12 20:00:30 +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_2.yaml Remove trailing whitespace. 2017-12-12 20:00:30 +00:00
resource.res
ret42.lib
ret42.obj
ret42.yaml [yaml2obj] Updating LLD tests to account for LLVM r273915 2016-06-27 20:17:08 +00:00
std32.lib
std64.lib
thinlto-mangled-qux.ll COFF: tests for thinlto with mangled names 2017-03-31 22:17:02 +00:00
weak-external.ll
weak-external2.ll
weak-external3.ll