History log of /llvm-project/lld/ELF/ScriptParser.cpp (Results 1 – 25 of 283)
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
Revision tags: llvmorg-21-init
# 8c2030b7 22-Jan-2025 Parth Arora <quic_partaror@quicinc.com>

[LLD] [ELF] Add support for linker script unary plus operator (#121508)

This commit adds support for linker script unary plus ('+') operator. It
is helpful for improving compatibility between LLD a

[LLD] [ELF] Add support for linker script unary plus operator (#121508)

This commit adds support for linker script unary plus ('+') operator. It
is helpful for improving compatibility between LLD and GNU LD.

Closes #118047

show more ...


Revision tags: llvmorg-19.1.7, llvmorg-19.1.6, llvmorg-19.1.5, llvmorg-19.1.4
# 2991a4e2 17-Nov-2024 Fangrui Song <i@maskray.me>

[ELF] Replace functions bAlloc/saver/uniqueSaver with member access


# a626eb2a 16-Nov-2024 Fangrui Song <i@maskray.me>

[ELF] Pass ctx to bAlloc/saver/uniqueSaver


# e24457a3 15-Nov-2024 Fangrui Song <i@maskray.me>

[ELF] Migrate away from global ctx


# ed6c106e 07-Nov-2024 Fangrui Song <i@maskray.me>

[ELF] Replace errorCount with errCount(ctx)

to reduce reliance on the global context.


# 9b058bb4 07-Nov-2024 Fangrui Song <i@maskray.me>

[ELF] Replace errorOrWarn(...) with Err


# f8bae3af 07-Nov-2024 Fangrui Song <i@maskray.me>

[ELF] Replace warn(...) with Warn


# 09c2c5e1 07-Nov-2024 Fangrui Song <i@maskray.me>

[ELF] Replace error(...) with ErrAlways or Err

Most are migrated to ErrAlways mechanically.
In the future we should change most to Err.


Revision tags: llvmorg-19.1.3, llvmorg-19.1.2
# f2b01338 07-Oct-2024 Fangrui Song <i@maskray.me>

[ELF] Move static nextGroupId isInGroup to LinkerDriver


# 49865107 06-Oct-2024 Fangrui Song <i@maskray.me>

[ELF] Pass Ctx & to InputFiles


# 35900689 04-Oct-2024 Fangrui Song <i@maskray.me>

[ELF] Pass Ctx & to OutputSections


Revision tags: llvmorg-19.1.1
# df0864e7 23-Sep-2024 Fangrui Song <i@maskray.me>

[ELF] Move elf::symtab into Ctx

Remove the global variable `symtab` and add a member variable
(`std::unique_ptr<SymbolTable>`) to `Ctx` instead.

This is one step toward eliminating global states.

[ELF] Move elf::symtab into Ctx

Remove the global variable `symtab` and add a member variable
(`std::unique_ptr<SymbolTable>`) to `Ctx` instead.

This is one step toward eliminating global states.

Pull Request: https://github.com/llvm/llvm-project/pull/109612

show more ...


# 33204002 21-Sep-2024 Fangrui Song <i@maskray.me>

[ELF] ScriptParser: make Ctx & a member variable. NFC

Lambda captures need adjusting.


# cf57a670 21-Sep-2024 Fangrui Song <i@maskray.me>

[ELF] ScriptParser: pass Ctx to ScriptParser and ScriptLexer. NFC


Revision tags: llvmorg-19.1.0, llvmorg-19.1.0-rc4
# b4feb266 22-Aug-2024 Fangrui Song <i@maskray.me>

[ELF] Move target to Ctx. NFC

Ctx was introduced in March 2022 as a more suitable place for such
singletons.

Follow-up to driver (2022-10) and script (2024-08).


# 4629aa17 22-Aug-2024 Fangrui Song <i@maskray.me>

[ELF] Move script into Ctx. NFC

Ctx was introduced in March 2022 as a more suitable place for such
singletons.

We now use default-initialization for `LinkerScript` and should pay
attention to non-c

[ELF] Move script into Ctx. NFC

Ctx was introduced in March 2022 as a more suitable place for such
singletons.

We now use default-initialization for `LinkerScript` and should pay
attention to non-class types (e.g. `dot` is initialized by commit
503907dc505db1e439e7061113bf84dd105f2e35).

show more ...


Revision tags: llvmorg-19.1.0-rc3
# 7e8a9020 05-Aug-2024 Daniel Thornburgh <dthorn@google.com>

[LLD] Add CLASS syntax to SECTIONS (#95323)

This allows the input section matching algorithm to be separated from
output section descriptions. This allows a group of sections to be
assigned to mul

[LLD] Add CLASS syntax to SECTIONS (#95323)

This allows the input section matching algorithm to be separated from
output section descriptions. This allows a group of sections to be
assigned to multiple output sections, providing an explicit version of
--enable-non-contiguous-regions's spilling that doesn't require altering
global linker script matching behavior with a flag. It also makes the
linker script language more expressive even if spilling is not intended,
since input section matching can be done in a different order than
sections are placed in an output section.

The implementation reuses the backend mechanism provided by
--enable-non-contiguous-regions, so it has roughly similar semantics and
limitations. In particular, sections cannot be spilled into or out of
INSERT, OVERWRITE_SECTIONS, or /DISCARD/. The former two aren't
intrinsic, so it may be possible to relax those restrictions later.

show more ...


Revision tags: llvmorg-19.1.0-rc2
# ff7f97a8 28-Jul-2024 Fangrui Song <i@maskray.me>

[ELF] --defsym: support quoted LHS

and move = splitting from Driver.cpp to ScriptParser.cpp.


# a7e8bddf 28-Jul-2024 Fangrui Song <i@maskray.me>

[ELF] Respect --sysroot for INCLUDE

If an included script is under the sysroot directory, when it opens an
absolute path file (`INPUT` or `GROUP`), add sysroot before the absolute
path. When the inc

[ELF] Respect --sysroot for INCLUDE

If an included script is under the sysroot directory, when it opens an
absolute path file (`INPUT` or `GROUP`), add sysroot before the absolute
path. When the included script ends, the `isUnderSysroot` state is
restored.

show more ...


# a4921f10 28-Jul-2024 Fangrui Song <i@maskray.me>

[ELF] Output section phdr: support quoted names


# 9c16a4a2 28-Jul-2024 Fangrui Song <i@maskray.me>

[ELF] INSERT [AFTER|BEFORE]: support quoted names


# 8f72b0cb 28-Jul-2024 Fangrui Song <i@maskray.me>

[ELF] Fix INCLUDE cycle detection

Fix #93947: the cycle detection mechanism added by
https://reviews.llvm.org/D37524 also disallowed including a file twice,
which is an unnecessary limitation.

Now

[ELF] Fix INCLUDE cycle detection

Fix #93947: the cycle detection mechanism added by
https://reviews.llvm.org/D37524 also disallowed including a file twice,
which is an unnecessary limitation.

Now that we have an include stack #100493, supporting multiple inclusion
is trivial. Note: a filename can be referenced with many different
paths, e.g. a.lds, ./a.lds, ././a.lds. We don't attempt to detect the
cycle in the earliest point.

show more ...


# dbd65a07 27-Jul-2024 Fangrui Song <i@maskray.me>

[ELF] OUTPUT_ARCH: report unclosed error


# 74f843d0 27-Jul-2024 Fangrui Song <i@maskray.me>

[ELF] Replace unquote(next()) with readName. NFC


# 0d8bc10a 27-Jul-2024 Fangrui Song <i@maskray.me>

[ELF] Memory region: support quoted names


12345678910>>...12