hanchenye-llvm-project/lld/ELF
Petr Hosek 3c6de1a66c [ELF] Use late evaluation for ALIGN in expression
While the following expression is handled fine:

  PROVIDE_HIDDEN(newsym = oldsym + address);

The following expression triggers an error because the expression
is evaluated as absolute:

  PROVIDE_HIDDEN(newsym = ALIGN(oldsym, CONSTANT(MAXPAGESIZE)) + address);

To avoid this error, we use late evaluation for ALIGN by making the
alignment an attribute of the expression itself.

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

llvm-svn: 304185
2017-05-30 03:18:28 +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 [lld][ELF]Add option to make .dynamic read only 2017-05-26 19:12:38 +00:00
Driver.cpp [lld][ELF]Add option to make .dynamic read only 2017-05-26 19:12:38 +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 ELF: --gdb-index: Change findSection to return an InputSection. 2017-05-15 17:59:21 +00:00
ICF.cpp Improve parallelism of ICF. 2017-05-24 19:22:34 +00:00
ICF.h
InputFiles.cpp [ELF] - Do not allow -r to eat comdats. 2017-05-29 08:37:50 +00:00
InputFiles.h Revert "Simplify a variable type by using StringRef instead of CachedHashStringRef." 2017-05-25 21:53:02 +00:00
InputSection.cpp [ELF] - Do not allow -r to eat comdats. 2017-05-29 08:37:50 +00:00
InputSection.h [ELF] - Do not allow -r to eat comdats. 2017-05-29 08:37:50 +00:00
LTO.cpp [lld] Infer relocation model from module flags in relocatable LTO link. 2017-05-22 21:11:44 +00:00
LTO.h ELF: Add ThinLTO caching support. 2017-03-01 23:00:10 +00:00
LinkerScript.cpp [ELF] Use late evaluation for ALIGN in expression 2017-05-30 03:18:28 +00:00
LinkerScript.h [ELF] Use late evaluation for ALIGN in expression 2017-05-30 03:18:28 +00:00
MapFile.cpp Keep a list of all OutputSectionCommands. 2017-05-30 01:30:14 +00:00
MapFile.h Keep a list of all OutputSectionCommands. 2017-05-30 01:30:14 +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
Options.td Accept not only --reproduce <foo> but also --reproduce=<foo>. 2017-05-25 19:49:54 +00:00
OutputSections.cpp [ELF] - Do not allow -r to eat comdats. 2017-05-29 08:37:50 +00:00
OutputSections.h Move writeTo to OutputSectionCommand. 2017-05-24 18:08:04 +00:00
README.md
Relocations.cpp Alternative way to detemplate GotSection. 2017-05-18 16:45:36 +00:00
Relocations.h [ELF] Support R_ARM_SBREL32 Relocation 2017-05-18 09:12:21 +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 [ELF] Use late evaluation for ALIGN in expression 2017-05-30 03:18:28 +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] - Use llvm::to_integer() instead of StringRef::getAsInteger(). 2017-05-16 08:19:25 +00:00
Strings.h Simplify BinaryFile::parse and add comments. 2017-04-27 04:01:36 +00:00
SymbolTable.cpp Revert "Simplify a variable type by using StringRef instead of CachedHashStringRef." 2017-05-25 21:53:02 +00:00
SymbolTable.h Revert "Simplify a variable type by using StringRef instead of CachedHashStringRef." 2017-05-25 21:53:02 +00:00
Symbols.cpp Detemplate SymbolBody::getGotVA. NFC. 2017-05-11 23:28:49 +00:00
Symbols.h Detemplate SymbolBody::getGotVA. NFC. 2017-05-11 23:28:49 +00:00
SyntheticSections.cpp [lld][ELF]Add option to make .dynamic read only 2017-05-26 19:12:38 +00:00
SyntheticSections.h [ELF] - Do not produce duplicate values in .gdb_index's constant pool area. 2017-05-26 12:09:26 +00:00
Target.cpp [ELF] Support R_ARM_SBREL32 Relocation 2017-05-18 09:12:21 +00:00
Target.h Remove isTlsLocalDynamicRel and isTlsInitialExecRel. 2017-05-05 20:25:54 +00:00
Threads.h [Support] Move Parallel algorithms from LLD to LLVM. 2017-05-11 00:03:52 +00:00
Thunks.cpp [ELF] - Detemplate Thunk creation. 2017-05-17 07:10:59 +00:00
Thunks.h [ELF] - Detemplate Thunk creation. 2017-05-17 07:10:59 +00:00
Writer.cpp Replace a few more uses of OutputSections. 2017-05-30 01:36:48 +00:00
Writer.h Inline a trivial constructor. 2017-05-26 02:17:13 +00:00

README.md

See docs/NewLLD.rst