llvm-project/lld/COFF
David Majnemer 08af4e56e1 [COFF] Don't call memcpy with a NULL argument
Some declarations of memcpy (like glibc's for example) are attributed
with notnull which makes it UB for NULL to get passed in, even if the
memcpy count is zero.

To account for this, guard the memcpy with an appropriate precondition.

This should fix the last UBSan bug, exposed by the test suite, in the
COFF linker.

llvm-svn: 263919
2016-03-20 23:10:12 +00:00
..
CMakeLists.txt Fix BUILD_SHARED_LIBS build. 2016-03-01 15:56:53 +00:00
Chunks.cpp [COFF] Use coff_section::getAlignment 2016-03-17 16:58:08 +00:00
Chunks.h [COFF] Don't hard-code the load configuration size 2016-03-15 09:48:27 +00:00
Config.h COFF: Implement DLL symbol forwarding. 2016-01-09 01:22:00 +00:00
DLL.cpp Update for LLVM function name change. 2016-01-14 20:53:50 +00:00
DLL.h Make these headers as being c++. 2015-08-14 14:12:54 +00:00
Driver.cpp Merge DarwinLdDriver and Driver. 2016-03-02 19:08:05 +00:00
Driver.h Merge DarwinLdDriver and Driver. 2016-03-02 19:08:05 +00:00
DriverUtils.cpp COFF: Implement DLL symbol forwarding. 2016-01-09 01:22:00 +00:00
Error.cpp Port the error functions from ELF to COFF. 2015-08-06 14:58:50 +00:00
Error.h Make these headers as being c++. 2015-08-14 14:12:54 +00:00
ICF.cpp Rename so that the function name is consistent between ELF and COFF. 2016-02-25 18:49:11 +00:00
InputFiles.cpp [COFF] Remove undefined behavior from ObjectFile::createWeakExternal 2016-03-20 22:56:31 +00:00
InputFiles.h [COFF] Remove undefined behavior from ObjectFile::createWeakExternal 2016-03-20 22:56:31 +00:00
MarkLive.cpp COFF: Move markLive() from Writer.cpp to its own file. 2015-09-19 21:36:28 +00:00
ModuleDef.cpp [LLD] Fix Clang-tidy modernize-use-nullptr warnings; other minor cleanups. 2015-10-02 00:36:00 +00:00
Options.td COFF: Add /nosymtab command line option. 2015-09-21 23:43:31 +00:00
PDB.cpp COFF: Create an empty but valid PDF file. 2015-12-08 18:39:55 +00:00
README.md Update the documents of the new LLD. 2016-03-12 06:06:40 +00:00
SymbolTable.cpp Update for LLVM api change. 2015-12-04 02:42:47 +00:00
SymbolTable.h COFF: Run InputFile::parse() in background using std::async(). 2015-09-20 03:11:16 +00:00
Symbols.cpp [COFF] Remove an unused function, getFileOff 2016-03-15 09:48:18 +00:00
Symbols.h [COFF] Remove an unused function, getFileOff 2016-03-15 09:48:18 +00:00
Writer.cpp [COFF] Don't call memcpy with a NULL argument 2016-03-20 23:10:12 +00:00
Writer.h COFF: Move markLive() from Writer.cpp to its own file. 2015-09-19 21:36:28 +00:00

README.md

See docs/NewLLD.rst