Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
Revision tags: llvmorg-21-init, llvmorg-19.1.7, llvmorg-19.1.6
# 2ccf7ed2 05-Dec-2024 Jared Wyles <jared.wyles@gmail.com>

[JITLink] Switch to SymbolStringPtr for Symbol names (#115796)

Use SymbolStringPtr for Symbol names in LinkGraph. This reduces string interning
on the boundary between JITLink and ORC, and allows p

[JITLink] Switch to SymbolStringPtr for Symbol names (#115796)

Use SymbolStringPtr for Symbol names in LinkGraph. This reduces string interning
on the boundary between JITLink and ORC, and allows pointer comparisons (rather
than string comparisons) between Symbol names. This should improve the
performance and readability of code that bridges between JITLink and ORC (e.g.
ObjectLinkingLayer and ObjectLinkingLayer::Plugins).

To enable use of SymbolStringPtr a std::shared_ptr<SymbolStringPool> is added to
LinkGraph and threaded through to its construction sites in LLVM and Bolt. All
LinkGraphs that are to have symbol names compared by pointer equality must point
to the same SymbolStringPool instance, which in ORC sessions should be the pool
attached to the ExecutionSession.
---------

Co-authored-by: Lang Hames <lhames@gmail.com>

show more ...


Revision tags: llvmorg-19.1.5, llvmorg-19.1.4
# 529c0913 02-Nov-2024 Lang Hames <lhames@gmail.com>

[ORC] Simplify JITLinkRedirectableSymbolManager, fix definition locations.

Redirectable stubs should be placed in the same JITDylib as their names, with
their lifetimes managed according to the Reso

[ORC] Simplify JITLinkRedirectableSymbolManager, fix definition locations.

Redirectable stubs should be placed in the same JITDylib as their names, with
their lifetimes managed according to the ResourceTracker used when adding them.

The original implementation created a single pool of stubs in the JITDylib
that is passed to the JITLinkRedirectableSymbolManager constructor, but this
may cause the addresses of the redirectable symbols themselves (added to the
JITDylibs passed to createRedirectableSymbols) to appear outside the address
range of their defining JITDylib.

This patch fixes the issue by dropping the pool and emitting a new graph for
each set of requested redirectable symbols. We lose the ability to recycle
stubs, but gain the ability to free them entirely. Since we don't expect stub
reuse to be a common case this is likely the best trade-off.

If in the future we do need to return to a stub pool we should create a
separate one for each JITDylib to ensure that addresses behave as expected.

show more ...


# 1d657cfe 02-Nov-2024 Lang Hames <lhames@gmail.com>

[ORC] Initialize native target in JITLinkRedirectionManagerTest test fixture.

The native target must be initialized here otherwise the test will be skipped
unless some prior test happens to initiali

[ORC] Initialize native target in JITLinkRedirectionManagerTest test fixture.

The native target must be initialized here otherwise the test will be skipped
unless some prior test happens to initialize it. Failure to initialize the
native target was causing the test to be skipped when --gtest_filter was used.

show more ...


Revision tags: llvmorg-19.1.3, llvmorg-19.1.2
# 39aae575 14-Oct-2024 Sunho Kim <ksunhokim123@gmail.com>

[ORC] skip reoptimization tests on PPC.

Fix https://lab.llvm.org/buildbot/#/builders/64/builds/1202.


# e5f7e73d 13-Oct-2024 Sunho Kim <ksunhokim123@gmail.com>

[ORC] Skip reoptimization test on COFF-ARM64.

Try to skip tests to prevent build bot failure:
https://lab.llvm.org/buildbot/#/builders/161/builds/2692


# 222d8fad 11-Oct-2024 Sunho Kim <ksunhokim123@gmail.com>

[ORC] Try to skip unsupported targets in reoptimization test.

Many build bots are getting failures because of this:
https://lab.llvm.org/buildbot/#/builders/140/builds/8600
https://lab.llvm.org/buil

[ORC] Try to skip unsupported targets in reoptimization test.

Many build bots are getting failures because of this:
https://lab.llvm.org/buildbot/#/builders/140/builds/8600
https://lab.llvm.org/buildbot/#/builders/137/builds/6824
https://lab.llvm.org/buildbot/#/builders/140/builds/8600

show more ...


Revision tags: llvmorg-19.1.1, llvmorg-19.1.0, llvmorg-19.1.0-rc4, llvmorg-19.1.0-rc3, llvmorg-19.1.0-rc2, llvmorg-19.1.0-rc1, llvmorg-20-init, llvmorg-18.1.8, llvmorg-18.1.7, llvmorg-18.1.6, llvmorg-18.1.5
# 188ede28 26-Apr-2024 Sunho Kim <ksunhokim123@gmail.com>

[ORC] Implement basic reoptimization.


Revision tags: llvmorg-18.1.4, llvmorg-18.1.3, llvmorg-18.1.2, llvmorg-18.1.1, llvmorg-18.1.0, llvmorg-18.1.0-rc4, llvmorg-18.1.0-rc3, llvmorg-18.1.0-rc2, llvmorg-18.1.0-rc1, llvmorg-19-init, llvmorg-17.0.6, llvmorg-17.0.5, llvmorg-17.0.4, llvmorg-17.0.3, llvmorg-17.0.2, llvmorg-17.0.1, llvmorg-17.0.0, llvmorg-17.0.0-rc4, llvmorg-17.0.0-rc3
# 2c01b278 21-Aug-2023 Sunho Kim <ksunhokim123@gmail.com>

[ORC] Introduce RedirectionManager interface and implementation using JITLink.