llvm-project/lld/COFF
Martin Storsjö d07f43641f [LLD] [COFF] Fix handling of LTO comdats with nontrivial selection types after 728cc0075e
Commit 728cc0075e made comdat symbols
from LTO objects be treated as any regular comdat symbol. This works
great for symbols that actually are IMAGE_COMDAT_SELECT_ANY, but
if the symbols have a less trivial selection type that require comparing
either the section chunk size or contents, we can't check that before
actually doing the LTO compilation.

Therefore bring back one aspect of handling from before; that comdat
resolution with a leader from an LTO symbol is essentially skipped,
like it was before 728cc0075e.

Differential Revision: https://reviews.llvm.org/D104605
2021-06-25 09:39:56 +03:00
..
CMakeLists.txt [COFF] Port CallGraphSort to COFF from ELF 2020-07-30 15:21:44 -07:00
CallGraphSort.cpp [COFF] Port CallGraphSort to COFF from ELF 2020-07-30 15:21:44 -07:00
CallGraphSort.h [COFF] Port CallGraphSort to COFF from ELF 2020-07-30 15:21:44 -07:00
Chunks.cpp lld-coff: Simplify a few lambda uses after 7975dd033c 2021-05-24 17:26:46 -07:00
Chunks.h [COFF] Remove a truncation assertion from setRVA 2021-05-13 19:37:14 -07:00
Config.h [LLD] Implement /guard:[no]ehcont 2021-04-14 15:06:49 +08:00
DLL.cpp [LLD] [COFF] Remove a stray duplicate comment. NFC. 2021-06-17 13:02:35 +03:00
DLL.h [COFF] Share the tail in delayimport symbol thunks 2019-07-11 21:19:11 +00:00
DebugTypes.cpp [lld] Rename StringRef _lower() method calls to _insensitive() 2021-06-25 00:22:01 +03:00
DebugTypes.h [LLD][COFF] Simplify function. NFC. 2021-01-07 22:37:11 -05:00
Driver.cpp [lld] Rename StringRef _lower() method calls to _insensitive() 2021-06-25 00:22:01 +03:00
Driver.h [lld-link] Add /reproduce: support for several flags 2021-02-22 16:52:49 -05:00
DriverUtils.cpp [OptTable] Rename PrintHelp to printHelp 2021-06-24 14:47:03 -07:00
ICF.cpp Revert "[COFF] Only consider associated EH sections during ICF" 2021-03-29 19:15:35 -07:00
ICF.h [lld-link] Add safe icf mode to lld-link, which does safe icf for all sections. 2021-03-03 14:52:33 -08:00
InputFiles.cpp [LLD] [COFF] Fix handling of LTO comdats with nontrivial selection types after 728cc0075e 2021-06-25 09:39:56 +03:00
InputFiles.h [LLD] Implement /guard:[no]ehcont 2021-04-14 15:06:49 +08:00
LLDMapFile.cpp [Support] Move LLD's parallel algorithm wrappers to support 2020-05-05 15:21:05 -07:00
LLDMapFile.h [lld-link] Support /map option, matching link.exe 's /map output format 2020-03-24 09:48:00 -04:00
LTO.cpp Reland "[lld-link] Enable addrsig table in COFF lto" 2021-04-29 15:54:12 -07:00
LTO.h [COFF] Assign unique identifiers to ObjFiles from LTO 2020-04-17 17:15:12 -07:00
MapFile.cpp [Support] Move LLD's parallel algorithm wrappers to support 2020-05-05 15:21:05 -07:00
MapFile.h [Coding style change][lld] Rename variables for non-ELF ports 2019-07-11 05:40:30 +00:00
MarkLive.cpp [COFF] Don't treat DWARF sections as GC roots 2020-03-27 12:37:43 -07:00
MarkLive.h [Coding style change][lld] Rename variables for non-ELF ports 2019-07-11 05:40:30 +00:00
MinGW.cpp [LLD] [COFF] Fix the mingw --export-all-symbols behaviour with comdat symbols 2021-04-29 23:35:10 +03:00
MinGW.h Reapply [LLD] [COFF] Implement a GNU/ELF like -wrap option 2020-10-15 22:14:02 +03:00
Options.td [lld] add context-sensitive PGO options for COFF. 2021-03-24 23:40:09 -07:00
PDB.cpp [PDB] Do not record PGO or coverage public symbols 2021-05-19 12:41:31 -07:00
PDB.h Re-land "[PDB] Merge types in parallel when using ghashing" 2020-09-30 15:44:38 -07:00
README.md
SymbolTable.cpp Reapply [LLD] [COFF] Implement a GNU/ELF like -wrap option 2020-10-15 22:14:02 +03:00
SymbolTable.h [COFF] Assign unique identifiers to ObjFiles from LTO 2020-04-17 17:15:12 -07:00
Symbols.cpp [COFF] Migrate COFFObjectFile to Expected<T> 2020-05-08 14:01:39 -07:00
Symbols.h [CFGuard] Add address-taken IAT tables and delay-load support 2020-11-17 18:24:45 -08:00
TypeMerger.h [PDB] Use one func id DenseMap instead of per-source maps, NFC 2020-10-01 12:22:27 -07:00
Writer.cpp [lld-link] Fix -Wunused-but-set-variable in -DLLVM_ENABLE_ASSERTIONS=off build. NFC 2021-06-20 11:35:02 -07:00
Writer.h [LLD][COFF] Cover usage of LLD-as-a-library in tests 2020-09-24 15:07:50 -04:00

README.md

See docs/NewLLD.rst