hanchenye-llvm-project/lld
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
..
COFF [lld] Fix a bug where we continually re-follow type servers. 2017-05-25 21:16:03 +00:00
ELF [ELF] Use late evaluation for ALIGN in expression 2017-05-30 03:18:28 +00:00
cmake/modules [lld][cmake] Fix BUILD_SHARED_LIBS installation 2017-01-24 10:41:02 +00:00
docs docs: Fix Sphinx detection with out-of-tree builds 2017-05-09 01:43:22 +00:00
include/lld [Support] Move Parallel algorithms from LLD to LLVM. 2017-05-11 00:03:52 +00:00
lib [Support] Move Parallel algorithms from LLD to LLVM. 2017-05-11 00:03:52 +00:00
test [ELF] Use late evaluation for ALIGN in expression 2017-05-30 03:18:28 +00:00
tools/lld Accept not only lld-link but also LLD-LINK, for example. 2017-04-12 18:29:52 +00:00
unittests [Support] Move Parallel algorithms from LLD to LLVM. 2017-05-11 00:03:52 +00:00
.arcconfig Upgrade all the .arcconfigs to https. 2016-07-14 13:15:37 +00:00
.clang-format
.gitignore
CMakeLists.txt Dummy commit to trigger CMake reconfiguration and unbreak Sphinx build 2017-05-04 08:32:33 +00:00
CODE_OWNERS.TXT
LICENSE.TXT
README.md

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.