llvm-project/lld/COFF
Hans Wennborg 1e1e3ba252 Unify the two CRC implementations
David added the JamCRC implementation in r246590. More recently, Eugene
added a CRC-32 implementation in r357901, which falls back to zlib's
crc32 function if present.

These checksums are essentially the same, so having multiple
implementations seems unnecessary. This replaces the CRC-32
implementation with the simpler one from JamCRC, and implements the
JamCRC interface in terms of CRC-32 since this means it can use zlib's
implementation when available, saving a few bytes and potentially making
it faster.

JamCRC took an ArrayRef<char> argument, and CRC-32 took a StringRef.
This patch changes it to ArrayRef<uint8_t> which I think is the best
choice, and simplifies a few of the callers nicely.

Differential revision: https://reviews.llvm.org/D68570

llvm-svn: 374148
2019-10-09 09:06:30 +00:00
..
CMakeLists.txt [LLD] [COFF] Use the unified llvm demangle frontend function. NFC. 2019-09-27 12:23:45 +00:00
Chunks.cpp [COFF] Rename variale references in comments after VariableName -> variableName change 2019-07-16 08:26:38 +00:00
Chunks.h [Coding style change][lld] Rename variables for non-ELF ports 2019-07-11 05:40:30 +00:00
Config.h [LLD] [COFF] Resolve source locations for undefined references using dwarf 2019-09-25 11:03:48 +00:00
DLL.cpp [COFF] Clarify a comment. NFC. 2019-08-02 11:08:15 +00:00
DLL.h [COFF] Share the tail in delayimport symbol thunks 2019-07-11 21:19:11 +00:00
DebugTypes.cpp reland "[lld-link] implement -start-lib and -end-lib" 2019-09-03 20:32:16 +00:00
DebugTypes.h [Coding style change][lld] Rename variables for non-ELF ports 2019-07-11 05:40:30 +00:00
Driver.cpp Add /reproduce option to lld/COFF 2019-10-04 07:27:38 +00:00
Driver.h lld-link: Add a flag /lldignoreenv that makes lld-link ignore env vars. 2019-09-13 13:13:52 +00:00
DriverUtils.cpp lld-link: Add a flag /lldignoreenv that makes lld-link ignore env vars. 2019-09-13 13:13:52 +00:00
ICF.cpp [NFC][COFF] fix typo in comment ("algortihm" -> "algorithm") 2019-09-24 20:17:54 +00:00
ICF.h [Coding style change][lld] Rename variables for non-ELF ports 2019-07-11 05:40:30 +00:00
InputFiles.cpp reland "[lld-link] implement -start-lib and -end-lib" 2019-09-03 20:32:16 +00:00
InputFiles.h reland "[lld-link] implement -start-lib and -end-lib" 2019-09-03 20:32:16 +00:00
LTO.cpp [lld-link] implement -lto-obj-path 2019-08-21 18:24:59 +00:00
LTO.h [lld-link] implement -thinlto-index-only 2019-07-11 18:03:14 +00:00
MapFile.cpp Fight a bit against global initializers. NFC. 2019-08-22 19:43:27 +00:00
MapFile.h [Coding style change][lld] Rename variables for non-ELF ports 2019-07-11 05:40:30 +00:00
MarkLive.cpp Fix odd variable names. 2019-07-12 06:12:27 +00:00
MarkLive.h [Coding style change][lld] Rename variables for non-ELF ports 2019-07-11 05:40:30 +00:00
MinGW.cpp Rename F_{None,Text,Append} to OF_{None,Text,Append}. NFC 2019-08-05 05:43:48 +00:00
MinGW.h [Coding style change][lld] Rename variables for non-ELF ports 2019-07-11 05:40:30 +00:00
Options.td Add /reproduce option to lld/COFF 2019-10-04 07:27:38 +00:00
PDB.cpp Unify the two CRC implementations 2019-10-09 09:06:30 +00:00
PDB.h [LLD] [COFF] Resolve source locations for undefined references using dwarf 2019-09-25 11:03:48 +00:00
README.md Update the documents of the new LLD. 2016-03-12 06:06:40 +00:00
SymbolTable.cpp [LLD] [COFF] Resolve source locations for undefined references using dwarf 2019-09-25 11:03:48 +00:00
SymbolTable.h reland "[lld-link] implement -start-lib and -end-lib" 2019-09-03 20:32:16 +00:00
Symbols.cpp [LLD] [COFF] Always demangle the __imp_ prefix to __declspec(dllimport) 2019-10-04 19:47:59 +00:00
Symbols.h reland "[lld-link] implement -start-lib and -end-lib" 2019-09-03 20:32:16 +00:00
TypeMerger.h [Coding style change][lld] Rename variables for non-ELF ports 2019-07-11 05:40:30 +00:00
Writer.cpp [lld] Don't create hints-section if Hint/Name Table is empty 2019-10-09 06:48:24 +00:00
Writer.h [Coding style change][lld] Rename variables for non-ELF ports 2019-07-11 05:40:30 +00:00

README.md

See docs/NewLLD.rst