llvm-project/lld/ELF
Rui Ueyama 91b95b61f8 Add memory ORIGIN and LENGTH expression support
Adds support for the ORIGIN and LENGTH linker script built in functions.

  ORIGIN(memory) Return the origin of the memory region
  LENGTH(memory) Return the length of the memory region

Redo of D29775 for refactored linker script parsing.

Patch by Robert Clarke

Differential Revision: https://reviews.llvm.org/D32934

llvm-svn: 302564
2017-05-09 18:24:38 +00:00
..
CMakeLists.txt Move the parser for the linker script to a separate file. 2017-04-05 05:07:39 +00:00
Config.h [ELF] - Set DF_STATIC_TLS flag for i386 target. 2017-05-08 10:24:38 +00:00
Driver.cpp Remember OffsetInArchive in LazyObjectFile. 2017-05-05 15:17:07 +00:00
Driver.h Remove a dead function declaration. 2017-05-02 22:42:24 +00:00
DriverUtils.cpp Sort. 2017-03-27 03:42:55 +00:00
EhFrame.cpp Change the error format to report corrupted .eh_frame. 2017-04-01 01:42:20 +00:00
EhFrame.h Convert InputSectionBase to a class. 2017-02-23 02:28:28 +00:00
Error.cpp Flush output in log() 2017-04-28 21:35:02 +00:00
Error.h Update comments. 2017-03-30 22:57:49 +00:00
Filesystem.cpp Make LLD work even if the current directory is not writable. 2017-04-26 16:15:07 +00:00
Filesystem.h Move code to emit error messages from Filesystem.cpp to Driver.cpp. 2017-04-26 16:14:46 +00:00
GdbIndex.cpp Remove a comment that is taken from gdb man page. 2017-03-29 00:09:40 +00:00
GdbIndex.h Split GdbIndexBuilder class into non-member functions. 2017-03-01 22:54:50 +00:00
ICF.cpp [ELF] Mark ARM Exceptions that refer to folded code as not live 2017-04-13 08:52:58 +00:00
ICF.h Do not pass Symtab to markLive/doICF since Symtab is globally accessible. 2016-05-02 19:30:42 +00:00
InputFiles.cpp Remember OffsetInArchive in LazyObjectFile. 2017-05-05 15:17:07 +00:00
InputFiles.h Remove redundant `explicit`. 2017-05-05 19:24:58 +00:00
InputSection.cpp Use toString(Inputfile*) to format a file object. 2017-04-28 20:00:09 +00:00
InputSection.h Change the error message format for undefined symbols. 2017-03-30 19:13:47 +00:00
LTO.cpp Revert r301897, "ELF: Set symbol binding to STB_GLOBAL when undefining symbols during LTO." 2017-05-03 19:23:30 +00:00
LTO.h ELF: Add ThinLTO caching support. 2017-03-01 23:00:10 +00:00
LinkerScript.cpp [ELF] - Linkerscript: support combination of linkerscript and --compress-debug-sections. 2017-05-08 10:18:12 +00:00
LinkerScript.h Delete LinkerScript::getSectionIndex. 2017-05-05 21:34:26 +00:00
MapFile.cpp Fix comments. 2017-04-30 20:58:20 +00:00
MapFile.h Merge OutputSectionBase and OutputSection. NFC. 2017-02-24 15:07:30 +00:00
MarkLive.cpp [ELF] - Combine LinkerScriptBase and LinkerScript<ELFT> 2017-03-20 10:09:58 +00:00
Memory.h Remove lld/Support/Memory.h. 2016-12-18 14:06:06 +00:00
Mips.cpp [ELF][MIPS] N32 ABI support 2016-11-05 22:58:01 +00:00
Options.td [ELF] - Accept --defsym foo=value form. 2017-05-05 11:59:15 +00:00
OutputSections.cpp [ELF] - Linkerscript: support combination of linkerscript and --compress-debug-sections. 2017-05-08 10:18:12 +00:00
OutputSections.h Create an OutputSection for each non-empty OutputSectionCommand. 2017-04-26 22:30:15 +00:00
README.md Update the documents of the new LLD. 2016-03-12 06:06:40 +00:00
Relocations.cpp Remove isTlsLocalDynamicRel and isTlsInitialExecRel. 2017-05-05 20:25:54 +00:00
Relocations.h [ELF] Make createThunks a class [NFC] 2017-04-05 10:30:09 +00:00
ScriptLexer.cpp Handle ":" as a regular token character in linker scripts. 2017-03-09 19:23:00 +00:00
ScriptLexer.h Handle ":" as a regular token character in linker scripts. 2017-03-09 19:23:00 +00:00
ScriptParser.cpp Add memory ORIGIN and LENGTH expression support 2017-05-09 18:24:38 +00:00
ScriptParser.h Move the parser for the linker script to a separate file. 2017-04-05 05:07:39 +00:00
Strings.cpp [ELF] __cxa_demangle is now called itaniumDemangle. Update. 2017-01-17 01:59:13 +00:00
Strings.h Simplify BinaryFile::parse and add comments. 2017-04-27 04:01:36 +00:00
SymbolTable.cpp Reduce code duplication. NFC. 2017-05-04 14:54:48 +00:00
SymbolTable.h [ELF] - Implemented --defsym option. 2017-04-26 10:40:02 +00:00
Symbols.cpp Reduce code duplication. NFC. 2017-05-04 14:54:48 +00:00
Symbols.h Add "1" suffix if there's varaible ends with "2". 2017-04-13 21:37:56 +00:00
SyntheticSections.cpp [ELF] - Set DF_STATIC_TLS flag for i386 target. 2017-05-08 10:24:38 +00:00
SyntheticSections.h Replace uintX_t with uint64_t. 2017-04-14 01:34:45 +00:00
Target.cpp [ELF] - Set DF_STATIC_TLS flag for i386 target. 2017-05-08 10:24:38 +00:00
Target.h Remove isTlsLocalDynamicRel and isTlsInitialExecRel. 2017-05-05 20:25:54 +00:00
Threads.h Update comments. 2017-03-24 00:15:57 +00:00
Thunks.cpp [ELF] Rename ARM Thunks in anticipation of Range Thunks 2017-04-04 09:29:36 +00:00
Thunks.h [ELF] Detemplate ThunkSection and Thunk classes. NFC. 2017-03-16 10:40:50 +00:00
Writer.cpp Use a simpler heuristic for placing orphans. 2017-05-09 13:58:46 +00:00
Writer.h Simplify the header allocation. 2017-05-04 19:34:17 +00:00

README.md

See docs/NewLLD.rst