llvm-project/lld/ELF
Fangrui Song b067aa56ce [ELF] Produce DT_RISCV_VARIANT_CC
https://github.com/riscv/riscv-elf-psabi-doc/pull/190 introduced STO_RISCV_VARIANT_CC.
The linker should:

* Copy the STO_RISCV_VARIANT_CC bit to .symtab/.dynsym: already fulfilled after
  82ed93ea05
* Produce DT_RISCV_VARIANT_CC if at least one R_RISCV_JUMP_SLOT relocation
  references a symbol with the STO_RISCV_VARIANT_CC bit. Done by this patch.

Reviewed By: kito-cheng

Differential Revision: https://reviews.llvm.org/D107951
2022-12-04 21:08:37 -08:00
..
Arch [ELF] Add InputSectionBase::{addRelocs,relocs} and GotSection::addConstant to add/access relocations 2022-11-21 04:12:03 +00:00
AArch64ErrataFix.cpp [ELF] Add final to some SyntheticSection derived classes 2022-12-03 18:11:34 +00:00
AArch64ErrataFix.h [lld/elf] Use C++17 nested namespace syntax in most places 2022-08-10 16:47:30 -04:00
ARMErrataFix.cpp [ELF] Add final to some SyntheticSection derived classes 2022-12-03 18:11:34 +00:00
ARMErrataFix.h [lld/elf] Use C++17 nested namespace syntax in most places 2022-08-10 16:47:30 -04:00
CMakeLists.txt [LLD] [ELF] Fix building with LLVM_LINK_LLVM_DYLIB since zstd was taken into use 2022-09-22 15:14:24 +03:00
CallGraphSort.cpp [ELF] CallGraphSort: replace vector<int> with unique_ptr<int[]>. NFC 2022-07-29 00:59:48 -07:00
CallGraphSort.h [lld/elf] Use C++17 nested namespace syntax in most places 2022-08-10 16:47:30 -04:00
Config.h IR: HotnessThreshold llvm::Optional => std::optional 2022-12-04 19:06:47 +00:00
DWARF.cpp [DebugInfo] llvm::Optional => std::optional 2022-12-05 00:09:22 +00:00
DWARF.h [lld] Change Optional to std::optional 2022-11-27 17:25:34 -08:00
Driver.cpp [ELF] Change most llvm::Optional to std::optional 2022-11-26 19:19:15 -08:00
Driver.h [ELF] Change most llvm::Optional to std::optional 2022-11-26 19:19:15 -08:00
DriverUtils.cpp [ELF] Change most llvm::Optional to std::optional 2022-11-26 19:19:15 -08:00
EhFrame.cpp [ELF] Change rawData to content() and data() to contentMaybeDecompress() 2022-11-20 22:43:22 +00:00
EhFrame.h [lld/elf] Use C++17 nested namespace syntax in most places 2022-08-10 16:47:30 -04:00
ICF.cpp [ELF] Change rawData to content() and data() to contentMaybeDecompress() 2022-11-20 22:43:22 +00:00
ICF.h [lld/elf] Use C++17 nested namespace syntax in most places 2022-08-10 16:47:30 -04:00
InputFiles.cpp Support: Convert some Optional to std::optional 2022-12-02 08:02:19 +00:00
InputFiles.h [lld] Change Optional to std::optional 2022-11-27 17:25:34 -08:00
InputSection.cpp [lld][NFC] rename ELF alignment into addralign 2022-12-01 16:20:12 +00:00
InputSection.h [lld][NFC] rename ELF alignment into addralign 2022-12-01 16:20:12 +00:00
LTO.cpp [lld] Use std::nullopt instead of None (NFC) 2022-12-02 23:12:36 -08:00
LTO.h [lld/elf] Use C++17 nested namespace syntax in most places 2022-08-10 16:47:30 -04:00
LinkerScript.cpp [lld][NFC] rename ELF alignment into addralign 2022-12-01 16:20:12 +00:00
LinkerScript.h [ELF] Change most llvm::Optional to std::optional 2022-11-26 19:19:15 -08:00
MapFile.cpp [lld][NFC] rename ELF alignment into addralign 2022-12-01 16:20:12 +00:00
MapFile.h [lld/elf] Use C++17 nested namespace syntax in most places 2022-08-10 16:47:30 -04:00
MarkLive.cpp [ELF] Change rawData to content() and data() to contentMaybeDecompress() 2022-11-20 22:43:22 +00:00
MarkLive.h [lld/elf] Use C++17 nested namespace syntax in most places 2022-08-10 16:47:30 -04:00
Options.td [lld/ELF] Make plugin-opt=jobs= help text refer to --thinlto-jobs= 2022-11-21 10:57:16 -05:00
OutputSections.cpp [lld][NFC] rename ELF alignment into addralign 2022-12-01 16:20:12 +00:00
OutputSections.h [ELF] Change most llvm::Optional to std::optional 2022-11-26 19:19:15 -08:00
README.md
Relocations.cpp [lld][NFC] rename ELF alignment into addralign 2022-12-01 16:20:12 +00:00
Relocations.h [ELF] Move scanRelocations into Relocations.cpp. NFC 2022-09-04 21:31:18 -07:00
ScriptLexer.cpp [ELF] Support -= *= /= <<= >>= &= |= in symbol assignments 2022-06-25 22:22:59 -07:00
ScriptLexer.h [lld/elf] Use C++17 nested namespace syntax in most places 2022-08-10 16:47:30 -04:00
ScriptParser.cpp [lld] Use std::nullopt instead of None (NFC) 2022-12-02 23:12:36 -08:00
ScriptParser.h [lld/elf] Use C++17 nested namespace syntax in most places 2022-08-10 16:47:30 -04:00
SymbolTable.cpp [lld][nfc] Remove lld::demangle() (partial revert of D116279) 2022-10-14 15:28:47 -04:00
SymbolTable.h [ELF] Change most llvm::Optional to std::optional 2022-11-26 19:19:15 -08:00
Symbols.cpp [ELF] -r: don't define __global_pointer$ 2022-11-22 12:37:51 -08:00
Symbols.h [ELF] -r: don't define __global_pointer$ 2022-11-22 12:37:51 -08:00
SyntheticSections.cpp [ELF] Produce DT_RISCV_VARIANT_CC 2022-12-04 21:08:37 -08:00
SyntheticSections.h [ELF] Add final to some SyntheticSection derived classes 2022-12-03 18:11:34 +00:00
Target.cpp [ELF] Add InputSectionBase::{addRelocs,relocs} and GotSection::addConstant to add/access relocations 2022-11-21 04:12:03 +00:00
Target.h [ELF] Change most llvm::Optional to std::optional 2022-11-26 19:19:15 -08:00
Thunks.cpp [ELF] Change most llvm::Optional to std::optional 2022-11-26 19:19:15 -08:00
Thunks.h [lld/elf] Use C++17 nested namespace syntax in most places 2022-08-10 16:47:30 -04:00
Writer.cpp [ELF] Fix TimeTraceScope for "Finalize .eh_frame" 2022-12-03 18:00:51 +00:00
Writer.h [lld/elf] Use C++17 nested namespace syntax in most places 2022-08-10 16:47:30 -04:00

README.md

See docs/NewLLD.rst