llvm-project/lld
serge-sans-paille 5f290c090a Move STLFunctionalExtras out of STLExtras
Only using that change in StringRef already decreases the number of
preoprocessed lines from 7837621 to 7776151 for LLVMSupport

Perhaps more interestingly, it shows that many files were relying on the
inclusion of StringRef.h to have the declaration from STLExtras.h. This
patch tries hard to patch relevant part of llvm-project impacted by this
hidden dependency removal.

Potential impact:
- "llvm/ADT/StringRef.h" no longer includes <memory>,
  "llvm/ADT/Optional.h" nor "llvm/ADT/STLExtras.h"

Related Discourse thread:
https://llvm.discourse.group/t/include-what-you-use-include-cleanup/5831
2022-01-24 14:13:21 +01:00
..
COFF Re-land [LLD] Remove global state in lldCommon 2022-01-20 14:53:26 -05:00
Common Re-land [LLD] Remove global state in lldCommon 2022-01-20 14:53:26 -05:00
ELF Move STLFunctionalExtras out of STLExtras 2022-01-24 14:13:21 +01:00
MachO [lld][macho] Stop grouping symbols by sections in mapfile. 2022-01-20 12:16:37 -08:00
MinGW Re-land [LLD] Remove global state in lldCommon 2022-01-20 14:53:26 -05:00
cmake/modules [CMake] Factor out config prefix finding logic 2022-01-07 20:16:18 +00:00
docs [ELF] Update help messages to prefer canonical name for some long options 2022-01-06 00:43:46 -08:00
include/lld Re-land [LLD] Remove global state in lldCommon 2022-01-20 14:53:26 -05:00
test [LLD][ELF][AArch64] Update test with incorrect REQUIRES line [NFC] 2022-01-24 10:04:28 +00:00
tools/lld Re-land [LLD] Remove global state in lldCommon 2022-01-20 14:53:26 -05:00
utils
wasm [lld][WebAssembly] Remove redundant config setting 2022-01-20 15:21:56 -08:00
.clang-format
.clang-tidy NFC: .clang-tidy: Inherit configs from parents to improve maintainability 2021-06-08 08:25:59 -07:00
.gitignore
CMakeLists.txt [cmake] Make include(GNUInstallDirs) always below project(..) 2022-01-20 18:59:17 +00:00
CODE_OWNERS.TXT Add code owners of new MachO port 2020-09-02 19:32:12 -07:00
LICENSE.TXT
README.md [doc] Place sha256 in lld/README.md into backticks 2021-01-12 10:19:40 -08:00

README.md

LLVM Linker (lld)

This directory and its subdirectories contain source code for the LLVM Linker, a modular cross platform linker which is built as part of the LLVM compiler infrastructure project.

lld is open source software. You may freely distribute it under the terms of the license agreement found in LICENSE.txt.

Benchmarking

In order to make sure various developers can evaluate patches over the same tests, we create a collection of self contained programs.

It is hosted at https://s3-us-west-2.amazonaws.com/linker-tests/lld-speed-test.tar.xz

The current sha256 is 10eec685463d5a8bbf08d77f4ca96282161d396c65bd97dc99dbde644a31610f.