Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[ORC] Introduce LazyReexportsManager, JITLinkTrampolines, ORC-RT base… #118923

Merged
merged 4 commits into from
Dec 7, 2024

Conversation

lhames
Copy link
Contributor

@lhames lhames commented Dec 6, 2024

…d reentry.

These utilities provide new, more generic and easier to use support for lazy compilation in ORC.

LazyReexportsManager is an alternative to LazyCallThroughManager. It takes requests for lazy re-entry points in the form of an alias map: lazy-reexports = {
( <entry point symbol #1>, <implementation symbol #1> ),
( <entry point symbol #2>, <implementation symbol #2> ),
...
( <entry point symbol #n>, <implementation symbol #n> )
}

LazyReexportsManager then:

  1. binds the entry points to the implementation names in an internal table.
  2. creates a JIT re-entry trampoline for each entry point.
  3. creates a redirectable symbol for each of the entry point name and binds redirectable symbol to the corresponding reentry trampoline.

When an entry point symbol is first called at runtime (which may be on any thread of the JIT'd program) it will re-enter the JIT via the trampoline and trigger a lookup for the implementation symbol stored in LazyReexportsManager's internal table. When the lookup completes the entry point symbol will be updated (via the RedirectableSymbolManager) to point at the implementation symbol, and execution will proceed to the implementation symbol.

Actual construction of the re-entry trampolines and redirectable symbols is delegated to an EmitTrampolines functor and the RedirectableSymbolsManager respectively.

JITLinkReentryTrampolines.h provides a JITLink-based implementation of the EmitTrampolines functor. (AArch64 only in this patch, but other architectures will be added in the near future).

Register state save and reentry functionality is added to the ORC runtime in the __orc_rt_sysv_resolve and __orc_rt_resolve_implementation functions (the latter is generic, the former will need custom implementations for each ABI and architecture to be supported, however this should be much less effort than the existing OrcABISupport approach, since the ORC runtime allows this code to be written as native assembly).

The resulting system:

  1. Works equally well for in-process and out-of-process JIT'd code.
  2. Requires less boilerplate to set up.

Given an ObjectLinkingLayer and PlatformJD (JITDylib containing the ORC runtime), setup is just:

auto RSMgr = JITLinkRedirectableSymbolManager::Create(OLL);
if (!RSMgr)
  return RSMgr.takeError();

auto LRMgr = createJITLinkLazyReexportsManager(OLL, **RSMgr, PlatformJD);
if (!LRMgr)
  return LRMgr.takeError();

after which lazy reexports can be introduced with:

JD.define(lazyReexports(LRMgr, <alias map>));

LazyObectLinkingLayer is updated to use this new method, but the LLVM-IR level CompileOnDemandLayer will continue to use LazyCallThroughManager and OrcABISupport until the new system supports a wider range of architectures and ABIs.

The llvm-jitlink utility's -lazy option now uses the new scheme. Since it depends on the ORC runtime, the lazy-link.ll testcase and associated helpers are moved to the ORC runtime.

…d reentry.

These utilities provide new, more generic and easier to use support for lazy
compilation in ORC.

LazyReexportsManager is an alternative to LazyCallThroughManager. It takes
requests for lazy re-entry points in the form of an alias map:
lazy-reexports = {
  ( <entry point symbol #1>, <implementation symbol #1> ),
  ( <entry point symbol #2>, <implementation symbol #2> ),
  ...
  ( <entry point symbol #n>, <implementation symbol #n> )
}

LazyReexportsManager then:
1. binds the entry points to the implementation names in an internal table.
2. creates a JIT re-entry trampoline for each entry point.
3. creates a redirectable symbol for each of the entry point name and binds
   redirectable symbol to the corresponding reentry trampoline.

When an entry point symbol is first called at runtime (which may be on any
thread of the JIT'd program) it will re-enter the JIT via the trampoline and
trigger a lookup for the implementation symbol stored in LazyReexportsManager's
internal table. When the lookup completes the entry point symbol will be
updated (via the RedirectableSymbolManager) to point at the implementation
symbol, and execution will proceed to the implementation symbol.

Actual construction of the re-entry trampolines and redirectable symbols is
delegated to an EmitTrampolines functor and the RedirectableSymbolsManager
respectively.

JITLinkReentryTrampolines.h provides a JITLink-based implementation of the
EmitTrampolines functor. (AArch64 only in this patch, but other architectures
will be added in the near future).

Register state save and reentry functionality is added to the ORC runtime
in the __orc_rt_sysv_resolve and __orc_rt_resolve_implementation functions
(the latter is generic, the former will need custom implementations for each
ABI and architecture to be supported, however this should be much less effort
than the existing OrcABISupport approach, since the ORC runtime allows this
code to be written as native assembly).

The resulting system:
1. Works equally well for in-process and out-of-process JIT'd code.
2. Requires less boilerplate to set up.

Given an ObjectLinkingLayer and PlatformJD (JITDylib containing the ORC
runtime), setup is just:

```c++
auto RSMgr = JITLinkRedirectableSymbolManager::Create(OLL);
if (!RSMgr)
  return RSMgr.takeError();

auto LRMgr = createJITLinkLazyReexportsManager(OLL, **RSMgr, PlatformJD);
if (!LRMgr)
  return LRMgr.takeError();
```

after which lazy reexports can be introduced with:

```c++
JD.define(lazyReexports(LRMgr, <alias map>));
```

LazyObectLinkingLayer is updated to use this new method, but the LLVM-IR level
CompileOnDemandLayer will continue to use LazyCallThroughManager and
OrcABISupport until the new system supports a wider range of architectures and
ABIs.

The llvm-jitlink utility's -lazy option now uses the new scheme. Since it
depends on the ORC runtime, the lazy-link.ll testcase and associated helpers
are moved to the ORC runtime.
@lhames lhames merged commit 570ecdc into llvm:main Dec 7, 2024
8 checks passed
@llvm-ci
Copy link
Collaborator

llvm-ci commented Dec 7, 2024

LLVM Buildbot has detected a new failure on builder clang-aarch64-sve-vla running on linaro-g3-01 while building compiler-rt,llvm at step 7 "ninja check 1".

Full details are available at: https://lab.llvm.org/buildbot/#/builders/17/builds/4446

Here is the relevant piece of the build log for the reference
Step 7 (ninja check 1) failure: stage 1 checked (failure)
******************** TEST 'ORC-aarch64-linux :: TestCases/Generic/lazy-link.ll' FAILED ********************
Exit Code: 2

Command Output (stderr):
--
RUN: at line 6: rm -rf /home/tcwg-buildbot/worker/clang-aarch64-sve-vla/stage1/runtimes/runtimes-bins/compiler-rt/test/orc/AARCH64LinuxConfig/TestCases/Generic/Output/lazy-link.ll.tmp && mkdir -p /home/tcwg-buildbot/worker/clang-aarch64-sve-vla/stage1/runtimes/runtimes-bins/compiler-rt/test/orc/AARCH64LinuxConfig/TestCases/Generic/Output/lazy-link.ll.tmp
+ rm -rf /home/tcwg-buildbot/worker/clang-aarch64-sve-vla/stage1/runtimes/runtimes-bins/compiler-rt/test/orc/AARCH64LinuxConfig/TestCases/Generic/Output/lazy-link.ll.tmp
+ mkdir -p /home/tcwg-buildbot/worker/clang-aarch64-sve-vla/stage1/runtimes/runtimes-bins/compiler-rt/test/orc/AARCH64LinuxConfig/TestCases/Generic/Output/lazy-link.ll.tmp
RUN: at line 7: /home/tcwg-buildbot/worker/clang-aarch64-sve-vla/stage1/./bin/clang    -Wthread-safety -Wthread-safety-reference -Wthread-safety-beta   -c -o /home/tcwg-buildbot/worker/clang-aarch64-sve-vla/stage1/runtimes/runtimes-bins/compiler-rt/test/orc/AARCH64LinuxConfig/TestCases/Generic/Output/lazy-link.ll.tmp/foo.o /home/tcwg-buildbot/worker/clang-aarch64-sve-vla/llvm/compiler-rt/test/orc/TestCases/Generic/Inputs/foo-ret-42.ll
+ /home/tcwg-buildbot/worker/clang-aarch64-sve-vla/stage1/./bin/clang -Wthread-safety -Wthread-safety-reference -Wthread-safety-beta -c -o /home/tcwg-buildbot/worker/clang-aarch64-sve-vla/stage1/runtimes/runtimes-bins/compiler-rt/test/orc/AARCH64LinuxConfig/TestCases/Generic/Output/lazy-link.ll.tmp/foo.o /home/tcwg-buildbot/worker/clang-aarch64-sve-vla/llvm/compiler-rt/test/orc/TestCases/Generic/Inputs/foo-ret-42.ll
warning: overriding the module target triple with aarch64-unknown-linux-gnu [-Woverride-module]
1 warning generated.
RUN: at line 8: /home/tcwg-buildbot/worker/clang-aarch64-sve-vla/stage1/./bin/clang    -Wthread-safety -Wthread-safety-reference -Wthread-safety-beta   -c -o /home/tcwg-buildbot/worker/clang-aarch64-sve-vla/stage1/runtimes/runtimes-bins/compiler-rt/test/orc/AARCH64LinuxConfig/TestCases/Generic/Output/lazy-link.ll.tmp/x.o /home/tcwg-buildbot/worker/clang-aarch64-sve-vla/llvm/compiler-rt/test/orc/TestCases/Generic/Inputs/var-x-42.ll
+ /home/tcwg-buildbot/worker/clang-aarch64-sve-vla/stage1/./bin/clang -Wthread-safety -Wthread-safety-reference -Wthread-safety-beta -c -o /home/tcwg-buildbot/worker/clang-aarch64-sve-vla/stage1/runtimes/runtimes-bins/compiler-rt/test/orc/AARCH64LinuxConfig/TestCases/Generic/Output/lazy-link.ll.tmp/x.o /home/tcwg-buildbot/worker/clang-aarch64-sve-vla/llvm/compiler-rt/test/orc/TestCases/Generic/Inputs/var-x-42.ll
warning: overriding the module target triple with aarch64-unknown-linux-gnu [-Woverride-module]
1 warning generated.
RUN: at line 9: /home/tcwg-buildbot/worker/clang-aarch64-sve-vla/stage1/./bin/clang    -Wthread-safety -Wthread-safety-reference -Wthread-safety-beta   -c -o /home/tcwg-buildbot/worker/clang-aarch64-sve-vla/stage1/runtimes/runtimes-bins/compiler-rt/test/orc/AARCH64LinuxConfig/TestCases/Generic/Output/lazy-link.ll.tmp/main.o /home/tcwg-buildbot/worker/clang-aarch64-sve-vla/llvm/compiler-rt/test/orc/TestCases/Generic/lazy-link.ll
+ /home/tcwg-buildbot/worker/clang-aarch64-sve-vla/stage1/./bin/clang -Wthread-safety -Wthread-safety-reference -Wthread-safety-beta -c -o /home/tcwg-buildbot/worker/clang-aarch64-sve-vla/stage1/runtimes/runtimes-bins/compiler-rt/test/orc/AARCH64LinuxConfig/TestCases/Generic/Output/lazy-link.ll.tmp/main.o /home/tcwg-buildbot/worker/clang-aarch64-sve-vla/llvm/compiler-rt/test/orc/TestCases/Generic/lazy-link.ll
warning: overriding the module target triple with aarch64-unknown-linux-gnu [-Woverride-module]
1 warning generated.
RUN: at line 10: /home/tcwg-buildbot/worker/clang-aarch64-sve-vla/stage1/./bin/llvm-jitlink -orc-runtime=/home/tcwg-buildbot/worker/clang-aarch64-sve-vla/stage1/./lib/../lib/clang/20/lib/aarch64-unknown-linux-gnu/liborc_rt.a -noexec -show-linked-files /home/tcwg-buildbot/worker/clang-aarch64-sve-vla/stage1/runtimes/runtimes-bins/compiler-rt/test/orc/AARCH64LinuxConfig/TestCases/Generic/Output/lazy-link.ll.tmp/main.o -lazy /home/tcwg-buildbot/worker/clang-aarch64-sve-vla/stage1/runtimes/runtimes-bins/compiler-rt/test/orc/AARCH64LinuxConfig/TestCases/Generic/Output/lazy-link.ll.tmp/foo.o      -lazy /home/tcwg-buildbot/worker/clang-aarch64-sve-vla/stage1/runtimes/runtimes-bins/compiler-rt/test/orc/AARCH64LinuxConfig/TestCases/Generic/Output/lazy-link.ll.tmp/x.o | FileCheck /home/tcwg-buildbot/worker/clang-aarch64-sve-vla/llvm/compiler-rt/test/orc/TestCases/Generic/lazy-link.ll
+ FileCheck /home/tcwg-buildbot/worker/clang-aarch64-sve-vla/llvm/compiler-rt/test/orc/TestCases/Generic/lazy-link.ll
+ /home/tcwg-buildbot/worker/clang-aarch64-sve-vla/stage1/./bin/llvm-jitlink -orc-runtime=/home/tcwg-buildbot/worker/clang-aarch64-sve-vla/stage1/./lib/../lib/clang/20/lib/aarch64-unknown-linux-gnu/liborc_rt.a -noexec -show-linked-files /home/tcwg-buildbot/worker/clang-aarch64-sve-vla/stage1/runtimes/runtimes-bins/compiler-rt/test/orc/AARCH64LinuxConfig/TestCases/Generic/Output/lazy-link.ll.tmp/main.o -lazy /home/tcwg-buildbot/worker/clang-aarch64-sve-vla/stage1/runtimes/runtimes-bins/compiler-rt/test/orc/AARCH64LinuxConfig/TestCases/Generic/Output/lazy-link.ll.tmp/foo.o -lazy /home/tcwg-buildbot/worker/clang-aarch64-sve-vla/stage1/runtimes/runtimes-bins/compiler-rt/test/orc/AARCH64LinuxConfig/TestCases/Generic/Output/lazy-link.ll.tmp/x.o
llvm-jitlink error: Symbols not found: [ __orc_rt_reentry ]
llvm-jitlink: ../llvm/llvm/lib/ExecutionEngine/Orc/Core.cpp:1480: void llvm::orc::JITDylib::detachQueryHelper(AsynchronousSymbolQuery &, const SymbolNameSet &): Assertion `MaterializingInfos.count(QuerySymbol) && "QuerySymbol does not have MaterializingInfo"' failed.
PLEASE submit a bug report to https://github.com/llvm/llvm-project/issues/ and include the crash backtrace.
Stack dump:
0.	Program arguments: /home/tcwg-buildbot/worker/clang-aarch64-sve-vla/stage1/./bin/llvm-jitlink -orc-runtime=/home/tcwg-buildbot/worker/clang-aarch64-sve-vla/stage1/./lib/../lib/clang/20/lib/aarch64-unknown-linux-gnu/liborc_rt.a -noexec -show-linked-files /home/tcwg-buildbot/worker/clang-aarch64-sve-vla/stage1/runtimes/runtimes-bins/compiler-rt/test/orc/AARCH64LinuxConfig/TestCases/Generic/Output/lazy-link.ll.tmp/main.o -lazy /home/tcwg-buildbot/worker/clang-aarch64-sve-vla/stage1/runtimes/runtimes-bins/compiler-rt/test/orc/AARCH64LinuxConfig/TestCases/Generic/Output/lazy-link.ll.tmp/foo.o -lazy /home/tcwg-buildbot/worker/clang-aarch64-sve-vla/stage1/runtimes/runtimes-bins/compiler-rt/test/orc/AARCH64LinuxConfig/TestCases/Generic/Output/lazy-link.ll.tmp/x.o
 #0 0x0000b0f84ee884d0 llvm::sys::PrintStackTrace(llvm::raw_ostream&, int) (/home/tcwg-buildbot/worker/clang-aarch64-sve-vla/stage1/./bin/llvm-jitlink+0x29d84d0)
 #1 0x0000b0f84ee864cc llvm::sys::RunSignalHandlers() (/home/tcwg-buildbot/worker/clang-aarch64-sve-vla/stage1/./bin/llvm-jitlink+0x29d64cc)
 #2 0x0000b0f84ee88ba4 SignalHandler(int) Signals.cpp:0:0
 #3 0x0000e7b42795d9d0 (linux-vdso.so.1+0x9d0)
 #4 0x0000e7b4274bf200 __pthread_kill_implementation ./nptl/pthread_kill.c:44:76
 #5 0x0000e7b42747a67c gsignal ./signal/../sysdeps/posix/raise.c:27:6
 #6 0x0000e7b427467130 abort ./stdlib/abort.c:81:7
 #7 0x0000e7b427473fd0 __assert_fail_base ./assert/assert.c:89:7
 #8 0x0000e7b427474040 __assert_perror_fail ./assert/assert-perr.c:31:1
 #9 0x0000b0f84ec77398 llvm::orc::JITDylib::detachQueryHelper(llvm::orc::AsynchronousSymbolQuery&, llvm::DenseSet<llvm::orc::SymbolStringPtr, llvm::DenseMapInfo<llvm::orc::SymbolStringPtr, void>> const&) (/home/tcwg-buildbot/worker/clang-aarch64-sve-vla/stage1/./bin/llvm-jitlink+0x27c7398)
#10 0x0000b0f84ec76fc8 llvm::orc::AsynchronousSymbolQuery::detach() (/home/tcwg-buildbot/worker/clang-aarch64-sve-vla/stage1/./bin/llvm-jitlink+0x27c6fc8)
#11 0x0000b0f84ec9f3c0 llvm::orc::ExecutionSession::IL_failSymbols(llvm::orc::JITDylib&, std::vector<llvm::orc::SymbolStringPtr, std::allocator<llvm::orc::SymbolStringPtr>> const&)::$_0::operator()(llvm::orc::JITDylib::MaterializingInfo&) const Core.cpp:0:0
#12 0x0000b0f84ec8471c llvm::orc::ExecutionSession::IL_failSymbols(llvm::orc::JITDylib&, std::vector<llvm::orc::SymbolStringPtr, std::allocator<llvm::orc::SymbolStringPtr>> const&) (/home/tcwg-buildbot/worker/clang-aarch64-sve-vla/stage1/./bin/llvm-jitlink+0x27d471c)
#13 0x0000b0f84ec9f88c llvm::orc::ExecutionSession::OL_notifyFailed(llvm::orc::MaterializationResponsibility&) (/home/tcwg-buildbot/worker/clang-aarch64-sve-vla/stage1/./bin/llvm-jitlink+0x27ef88c)
#14 0x0000b0f84ecf94e0 llvm::orc::LazyReexportsManager::emitRedirectableSymbols(std::unique_ptr<llvm::orc::MaterializationResponsibility, std::default_delete<llvm::orc::MaterializationResponsibility>>, llvm::DenseMap<llvm::orc::SymbolStringPtr, llvm::orc::SymbolAliasMapEntry, llvm::DenseMapInfo<llvm::orc::SymbolStringPtr, void>, llvm::detail::DenseMapPair<llvm::orc::SymbolStringPtr, llvm::orc::SymbolAliasMapEntry>>, llvm::Expected<std::vector<llvm::orc::ExecutorSymbolDef, std::allocator<llvm::orc::ExecutorSymbolDef>>>) (/home/tcwg-buildbot/worker/clang-aarch64-sve-vla/stage1/./bin/llvm-jitlink+0x28494e0)
#15 0x0000b0f84ecfe5f4 void llvm::detail::UniqueFunctionBase<void, llvm::Expected<std::vector<llvm::orc::ExecutorSymbolDef, std::allocator<llvm::orc::ExecutorSymbolDef>>>>::CallImpl<llvm::orc::LazyReexportsManager::emitReentryTrampolines(std::unique_ptr<llvm::orc::MaterializationResponsibility, std::default_delete<llvm::orc::MaterializationResponsibility>>, llvm::DenseMap<llvm::orc::SymbolStringPtr, llvm::orc::SymbolAliasMapEntry, llvm::DenseMapInfo<llvm::orc::SymbolStringPtr, void>, llvm::detail::DenseMapPair<llvm::orc::SymbolStringPtr, llvm::orc::SymbolAliasMapEntry>>)::$_0>(void*, llvm::Expected<std::vector<llvm::orc::ExecutorSymbolDef, std::allocator<llvm::orc::ExecutorSymbolDef>>>&) LazyReexports.cpp:0:0
#16 0x0000b0f84ecf3268 void llvm::detail::UniqueFunctionBase<void, llvm::Expected<llvm::DenseMap<llvm::orc::SymbolStringPtr, llvm::orc::ExecutorSymbolDef, llvm::DenseMapInfo<llvm::orc::SymbolStringPtr, void>, llvm::detail::DenseMapPair<llvm::orc::SymbolStringPtr, llvm::orc::ExecutorSymbolDef>>>>::CallImpl<llvm::orc::JITLinkReentryTrampolines::emit(llvm::IntrusiveRefCntPtr<llvm::orc::ResourceTracker>, unsigned long, llvm::unique_function<void (llvm::Expected<std::vector<llvm::orc::ExecutorSymbolDef, std::allocator<llvm::orc::ExecutorSymbolDef>>>)>)::$_0>(void*, llvm::Expected<llvm::DenseMap<llvm::orc::SymbolStringPtr, llvm::orc::ExecutorSymbolDef, llvm::DenseMapInfo<llvm::orc::SymbolStringPtr, void>, llvm::detail::DenseMapPair<llvm::orc::SymbolStringPtr, llvm::orc::ExecutorSymbolDef>>>&) JITLinkReentryTrampolines.cpp:0:0
#17 0x0000b0f84ec7679c llvm::orc::AsynchronousSymbolQuery::handleFailed(llvm::Error) (/home/tcwg-buildbot/worker/clang-aarch64-sve-vla/stage1/./bin/llvm-jitlink+0x27c679c)
#18 0x0000b0f84ec9fa94 llvm::orc::ExecutionSession::OL_notifyFailed(llvm::orc::MaterializationResponsibility&) (/home/tcwg-buildbot/worker/clang-aarch64-sve-vla/stage1/./bin/llvm-jitlink+0x27efa94)
#19 0x0000b0f84ed3d184 llvm::orc::ObjectLinkingLayerJITLinkContext::notifyFailed(llvm::Error) ObjectLinkingLayer.cpp:0:0
#20 0x0000b0f84ea4a3b8 void llvm::detail::UniqueFunctionBase<void, llvm::Error>::CallImpl<llvm::jitlink::JITLinkerBase::abandonAllocAndBailOut(std::unique_ptr<llvm::jitlink::JITLinkerBase, std::default_delete<llvm::jitlink::JITLinkerBase>>, llvm::Error)::$_0>(void*, llvm::Error&) JITLinkGeneric.cpp:0:0
#21 0x0000b0f84ed26bbc llvm::orc::InProcessMemoryMapper::release(llvm::ArrayRef<llvm::orc::ExecutorAddr>, llvm::unique_function<void (llvm::Error)>) (/home/tcwg-buildbot/worker/clang-aarch64-sve-vla/stage1/./bin/llvm-jitlink+0x2876bbc)
...

@llvm-ci
Copy link
Collaborator

llvm-ci commented Dec 7, 2024

LLVM Buildbot has detected a new failure on builder sanitizer-aarch64-linux running on sanitizer-buildbot7 while building compiler-rt,llvm at step 2 "annotate".

Full details are available at: https://lab.llvm.org/buildbot/#/builders/51/builds/7283

Here is the relevant piece of the build log for the reference
Step 2 (annotate) failure: 'python ../sanitizer_buildbot/sanitizers/zorg/buildbot/builders/sanitizers/buildbot_selector.py' (failure)
...
[182/186] Generating MSAN_INST_TEST_OBJECTS.msan_test.cpp.aarch64-with-call.o
[183/186] Generating Msan-aarch64-with-call-Test
[184/186] Generating MSAN_INST_TEST_OBJECTS.msan_test.cpp.aarch64.o
[185/186] Generating Msan-aarch64-Test
[185/186] Running compiler_rt regression tests
llvm-lit: /home/b/sanitizer-aarch64-linux/build/llvm-project/llvm/utils/lit/lit/discovery.py:276: warning: input '/home/b/sanitizer-aarch64-linux/build/build_default/runtimes/runtimes-bins/compiler-rt/test/interception/Unit' contained no tests
llvm-lit: /home/b/sanitizer-aarch64-linux/build/llvm-project/llvm/utils/lit/lit/discovery.py:276: warning: input '/home/b/sanitizer-aarch64-linux/build/build_default/runtimes/runtimes-bins/compiler-rt/test/sanitizer_common/Unit' contained no tests
llvm-lit: /home/b/sanitizer-aarch64-linux/build/llvm-project/llvm/utils/lit/lit/main.py:72: note: The test suite configuration requested an individual test timeout of 0 seconds but a timeout of 900 seconds was requested on the command line. Forcing timeout to be 900 seconds.
-- Testing: 5555 tests, 48 workers --
Testing:  0.. 10.. 20.. 30..
FAIL: ORC-aarch64-linux :: TestCases/Generic/lazy-link.ll (2114 of 5555)
******************** TEST 'ORC-aarch64-linux :: TestCases/Generic/lazy-link.ll' FAILED ********************
Exit Code: 2

Command Output (stderr):
--
RUN: at line 6: rm -rf /home/b/sanitizer-aarch64-linux/build/build_default/runtimes/runtimes-bins/compiler-rt/test/orc/AARCH64LinuxConfig/TestCases/Generic/Output/lazy-link.ll.tmp && mkdir -p /home/b/sanitizer-aarch64-linux/build/build_default/runtimes/runtimes-bins/compiler-rt/test/orc/AARCH64LinuxConfig/TestCases/Generic/Output/lazy-link.ll.tmp
+ rm -rf /home/b/sanitizer-aarch64-linux/build/build_default/runtimes/runtimes-bins/compiler-rt/test/orc/AARCH64LinuxConfig/TestCases/Generic/Output/lazy-link.ll.tmp
+ mkdir -p /home/b/sanitizer-aarch64-linux/build/build_default/runtimes/runtimes-bins/compiler-rt/test/orc/AARCH64LinuxConfig/TestCases/Generic/Output/lazy-link.ll.tmp
RUN: at line 7: /home/b/sanitizer-aarch64-linux/build/build_default/./bin/clang    -Wthread-safety -Wthread-safety-reference -Wthread-safety-beta   -c -o /home/b/sanitizer-aarch64-linux/build/build_default/runtimes/runtimes-bins/compiler-rt/test/orc/AARCH64LinuxConfig/TestCases/Generic/Output/lazy-link.ll.tmp/foo.o /home/b/sanitizer-aarch64-linux/build/llvm-project/compiler-rt/test/orc/TestCases/Generic/Inputs/foo-ret-42.ll
+ /home/b/sanitizer-aarch64-linux/build/build_default/./bin/clang -Wthread-safety -Wthread-safety-reference -Wthread-safety-beta -c -o /home/b/sanitizer-aarch64-linux/build/build_default/runtimes/runtimes-bins/compiler-rt/test/orc/AARCH64LinuxConfig/TestCases/Generic/Output/lazy-link.ll.tmp/foo.o /home/b/sanitizer-aarch64-linux/build/llvm-project/compiler-rt/test/orc/TestCases/Generic/Inputs/foo-ret-42.ll
warning: overriding the module target triple with aarch64-unknown-linux-gnu [-Woverride-module]
1 warning generated.
RUN: at line 8: /home/b/sanitizer-aarch64-linux/build/build_default/./bin/clang    -Wthread-safety -Wthread-safety-reference -Wthread-safety-beta   -c -o /home/b/sanitizer-aarch64-linux/build/build_default/runtimes/runtimes-bins/compiler-rt/test/orc/AARCH64LinuxConfig/TestCases/Generic/Output/lazy-link.ll.tmp/x.o /home/b/sanitizer-aarch64-linux/build/llvm-project/compiler-rt/test/orc/TestCases/Generic/Inputs/var-x-42.ll
+ /home/b/sanitizer-aarch64-linux/build/build_default/./bin/clang -Wthread-safety -Wthread-safety-reference -Wthread-safety-beta -c -o /home/b/sanitizer-aarch64-linux/build/build_default/runtimes/runtimes-bins/compiler-rt/test/orc/AARCH64LinuxConfig/TestCases/Generic/Output/lazy-link.ll.tmp/x.o /home/b/sanitizer-aarch64-linux/build/llvm-project/compiler-rt/test/orc/TestCases/Generic/Inputs/var-x-42.ll
warning: overriding the module target triple with aarch64-unknown-linux-gnu [-Woverride-module]
1 warning generated.
RUN: at line 9: /home/b/sanitizer-aarch64-linux/build/build_default/./bin/clang    -Wthread-safety -Wthread-safety-reference -Wthread-safety-beta   -c -o /home/b/sanitizer-aarch64-linux/build/build_default/runtimes/runtimes-bins/compiler-rt/test/orc/AARCH64LinuxConfig/TestCases/Generic/Output/lazy-link.ll.tmp/main.o /home/b/sanitizer-aarch64-linux/build/llvm-project/compiler-rt/test/orc/TestCases/Generic/lazy-link.ll
+ /home/b/sanitizer-aarch64-linux/build/build_default/./bin/clang -Wthread-safety -Wthread-safety-reference -Wthread-safety-beta -c -o /home/b/sanitizer-aarch64-linux/build/build_default/runtimes/runtimes-bins/compiler-rt/test/orc/AARCH64LinuxConfig/TestCases/Generic/Output/lazy-link.ll.tmp/main.o /home/b/sanitizer-aarch64-linux/build/llvm-project/compiler-rt/test/orc/TestCases/Generic/lazy-link.ll
warning: overriding the module target triple with aarch64-unknown-linux-gnu [-Woverride-module]
1 warning generated.
RUN: at line 10: /home/b/sanitizer-aarch64-linux/build/build_default/./bin/llvm-jitlink -orc-runtime=/home/b/sanitizer-aarch64-linux/build/build_default/./lib/../lib/clang/20/lib/aarch64-unknown-linux-gnu/liborc_rt.a -noexec -show-linked-files /home/b/sanitizer-aarch64-linux/build/build_default/runtimes/runtimes-bins/compiler-rt/test/orc/AARCH64LinuxConfig/TestCases/Generic/Output/lazy-link.ll.tmp/main.o -lazy /home/b/sanitizer-aarch64-linux/build/build_default/runtimes/runtimes-bins/compiler-rt/test/orc/AARCH64LinuxConfig/TestCases/Generic/Output/lazy-link.ll.tmp/foo.o      -lazy /home/b/sanitizer-aarch64-linux/build/build_default/runtimes/runtimes-bins/compiler-rt/test/orc/AARCH64LinuxConfig/TestCases/Generic/Output/lazy-link.ll.tmp/x.o | FileCheck /home/b/sanitizer-aarch64-linux/build/llvm-project/compiler-rt/test/orc/TestCases/Generic/lazy-link.ll
+ /home/b/sanitizer-aarch64-linux/build/build_default/./bin/llvm-jitlink -orc-runtime=/home/b/sanitizer-aarch64-linux/build/build_default/./lib/../lib/clang/20/lib/aarch64-unknown-linux-gnu/liborc_rt.a -noexec -show-linked-files /home/b/sanitizer-aarch64-linux/build/build_default/runtimes/runtimes-bins/compiler-rt/test/orc/AARCH64LinuxConfig/TestCases/Generic/Output/lazy-link.ll.tmp/main.o -lazy /home/b/sanitizer-aarch64-linux/build/build_default/runtimes/runtimes-bins/compiler-rt/test/orc/AARCH64LinuxConfig/TestCases/Generic/Output/lazy-link.ll.tmp/foo.o -lazy /home/b/sanitizer-aarch64-linux/build/build_default/runtimes/runtimes-bins/compiler-rt/test/orc/AARCH64LinuxConfig/TestCases/Generic/Output/lazy-link.ll.tmp/x.o
+ FileCheck /home/b/sanitizer-aarch64-linux/build/llvm-project/compiler-rt/test/orc/TestCases/Generic/lazy-link.ll
llvm-jitlink error: Symbols not found: [ __orc_rt_reentry ]
llvm-jitlink: /home/b/sanitizer-aarch64-linux/build/llvm-project/llvm/lib/ExecutionEngine/Orc/Core.cpp:1480: void llvm::orc::JITDylib::detachQueryHelper(AsynchronousSymbolQuery &, const SymbolNameSet &): Assertion `MaterializingInfos.count(QuerySymbol) && "QuerySymbol does not have MaterializingInfo"' failed.
PLEASE submit a bug report to https://github.com/llvm/llvm-project/issues/ and include the crash backtrace.
Stack dump:
0.	Program arguments: /home/b/sanitizer-aarch64-linux/build/build_default/./bin/llvm-jitlink -orc-runtime=/home/b/sanitizer-aarch64-linux/build/build_default/./lib/../lib/clang/20/lib/aarch64-unknown-linux-gnu/liborc_rt.a -noexec -show-linked-files /home/b/sanitizer-aarch64-linux/build/build_default/runtimes/runtimes-bins/compiler-rt/test/orc/AARCH64LinuxConfig/TestCases/Generic/Output/lazy-link.ll.tmp/main.o -lazy /home/b/sanitizer-aarch64-linux/build/build_default/runtimes/runtimes-bins/compiler-rt/test/orc/AARCH64LinuxConfig/TestCases/Generic/Output/lazy-link.ll.tmp/foo.o -lazy /home/b/sanitizer-aarch64-linux/build/build_default/runtimes/runtimes-bins/compiler-rt/test/orc/AARCH64LinuxConfig/TestCases/Generic/Output/lazy-link.ll.tmp/x.o
 #0 0x0000c7aa01ed01b0 llvm::sys::PrintStackTrace(llvm::raw_ostream&, int) (/home/b/sanitizer-aarch64-linux/build/build_default/./bin/llvm-jitlink+0x29c01b0)
 #1 0x0000c7aa01ece03c llvm::sys::RunSignalHandlers() (/home/b/sanitizer-aarch64-linux/build/build_default/./bin/llvm-jitlink+0x29be03c)
 #2 0x0000c7aa01ed08cc SignalHandler(int) Signals.cpp:0:0
 #3 0x0000e99dbccd28f8 (linux-vdso.so.1+0x8f8)
 #4 0x0000e99dbc6c7628 (/lib/aarch64-linux-gnu/libc.so.6+0x87628)
 #5 0x0000e99dbc67cb3c raise (/lib/aarch64-linux-gnu/libc.so.6+0x3cb3c)
 #6 0x0000e99dbc667e00 abort (/lib/aarch64-linux-gnu/libc.so.6+0x27e00)
 #7 0x0000e99dbc675cbc (/lib/aarch64-linux-gnu/libc.so.6+0x35cbc)
 #8 0x0000e99dbc675d2c (/lib/aarch64-linux-gnu/libc.so.6+0x35d2c)
 #9 0x0000c7aa01cccbac llvm::orc::JITDylib::detachQueryHelper(llvm::orc::AsynchronousSymbolQuery&, llvm::DenseSet<llvm::orc::SymbolStringPtr, llvm::DenseMapInfo<llvm::orc::SymbolStringPtr, void>> const&) (/home/b/sanitizer-aarch64-linux/build/build_default/./bin/llvm-jitlink+0x27bcbac)
Step 9 (test compiler-rt symbolizer) failure: test compiler-rt symbolizer (failure)
...
[182/186] Generating MSAN_INST_TEST_OBJECTS.msan_test.cpp.aarch64-with-call.o
[183/186] Generating Msan-aarch64-with-call-Test
[184/186] Generating MSAN_INST_TEST_OBJECTS.msan_test.cpp.aarch64.o
[185/186] Generating Msan-aarch64-Test
[185/186] Running compiler_rt regression tests
llvm-lit: /home/b/sanitizer-aarch64-linux/build/llvm-project/llvm/utils/lit/lit/discovery.py:276: warning: input '/home/b/sanitizer-aarch64-linux/build/build_default/runtimes/runtimes-bins/compiler-rt/test/interception/Unit' contained no tests
llvm-lit: /home/b/sanitizer-aarch64-linux/build/llvm-project/llvm/utils/lit/lit/discovery.py:276: warning: input '/home/b/sanitizer-aarch64-linux/build/build_default/runtimes/runtimes-bins/compiler-rt/test/sanitizer_common/Unit' contained no tests
llvm-lit: /home/b/sanitizer-aarch64-linux/build/llvm-project/llvm/utils/lit/lit/main.py:72: note: The test suite configuration requested an individual test timeout of 0 seconds but a timeout of 900 seconds was requested on the command line. Forcing timeout to be 900 seconds.
-- Testing: 5555 tests, 48 workers --
Testing:  0.. 10.. 20.. 30..
FAIL: ORC-aarch64-linux :: TestCases/Generic/lazy-link.ll (2114 of 5555)
******************** TEST 'ORC-aarch64-linux :: TestCases/Generic/lazy-link.ll' FAILED ********************
Exit Code: 2

Command Output (stderr):
--
RUN: at line 6: rm -rf /home/b/sanitizer-aarch64-linux/build/build_default/runtimes/runtimes-bins/compiler-rt/test/orc/AARCH64LinuxConfig/TestCases/Generic/Output/lazy-link.ll.tmp && mkdir -p /home/b/sanitizer-aarch64-linux/build/build_default/runtimes/runtimes-bins/compiler-rt/test/orc/AARCH64LinuxConfig/TestCases/Generic/Output/lazy-link.ll.tmp
+ rm -rf /home/b/sanitizer-aarch64-linux/build/build_default/runtimes/runtimes-bins/compiler-rt/test/orc/AARCH64LinuxConfig/TestCases/Generic/Output/lazy-link.ll.tmp
+ mkdir -p /home/b/sanitizer-aarch64-linux/build/build_default/runtimes/runtimes-bins/compiler-rt/test/orc/AARCH64LinuxConfig/TestCases/Generic/Output/lazy-link.ll.tmp
RUN: at line 7: /home/b/sanitizer-aarch64-linux/build/build_default/./bin/clang    -Wthread-safety -Wthread-safety-reference -Wthread-safety-beta   -c -o /home/b/sanitizer-aarch64-linux/build/build_default/runtimes/runtimes-bins/compiler-rt/test/orc/AARCH64LinuxConfig/TestCases/Generic/Output/lazy-link.ll.tmp/foo.o /home/b/sanitizer-aarch64-linux/build/llvm-project/compiler-rt/test/orc/TestCases/Generic/Inputs/foo-ret-42.ll
+ /home/b/sanitizer-aarch64-linux/build/build_default/./bin/clang -Wthread-safety -Wthread-safety-reference -Wthread-safety-beta -c -o /home/b/sanitizer-aarch64-linux/build/build_default/runtimes/runtimes-bins/compiler-rt/test/orc/AARCH64LinuxConfig/TestCases/Generic/Output/lazy-link.ll.tmp/foo.o /home/b/sanitizer-aarch64-linux/build/llvm-project/compiler-rt/test/orc/TestCases/Generic/Inputs/foo-ret-42.ll
warning: overriding the module target triple with aarch64-unknown-linux-gnu [-Woverride-module]
1 warning generated.
RUN: at line 8: /home/b/sanitizer-aarch64-linux/build/build_default/./bin/clang    -Wthread-safety -Wthread-safety-reference -Wthread-safety-beta   -c -o /home/b/sanitizer-aarch64-linux/build/build_default/runtimes/runtimes-bins/compiler-rt/test/orc/AARCH64LinuxConfig/TestCases/Generic/Output/lazy-link.ll.tmp/x.o /home/b/sanitizer-aarch64-linux/build/llvm-project/compiler-rt/test/orc/TestCases/Generic/Inputs/var-x-42.ll
+ /home/b/sanitizer-aarch64-linux/build/build_default/./bin/clang -Wthread-safety -Wthread-safety-reference -Wthread-safety-beta -c -o /home/b/sanitizer-aarch64-linux/build/build_default/runtimes/runtimes-bins/compiler-rt/test/orc/AARCH64LinuxConfig/TestCases/Generic/Output/lazy-link.ll.tmp/x.o /home/b/sanitizer-aarch64-linux/build/llvm-project/compiler-rt/test/orc/TestCases/Generic/Inputs/var-x-42.ll
warning: overriding the module target triple with aarch64-unknown-linux-gnu [-Woverride-module]
1 warning generated.
RUN: at line 9: /home/b/sanitizer-aarch64-linux/build/build_default/./bin/clang    -Wthread-safety -Wthread-safety-reference -Wthread-safety-beta   -c -o /home/b/sanitizer-aarch64-linux/build/build_default/runtimes/runtimes-bins/compiler-rt/test/orc/AARCH64LinuxConfig/TestCases/Generic/Output/lazy-link.ll.tmp/main.o /home/b/sanitizer-aarch64-linux/build/llvm-project/compiler-rt/test/orc/TestCases/Generic/lazy-link.ll
+ /home/b/sanitizer-aarch64-linux/build/build_default/./bin/clang -Wthread-safety -Wthread-safety-reference -Wthread-safety-beta -c -o /home/b/sanitizer-aarch64-linux/build/build_default/runtimes/runtimes-bins/compiler-rt/test/orc/AARCH64LinuxConfig/TestCases/Generic/Output/lazy-link.ll.tmp/main.o /home/b/sanitizer-aarch64-linux/build/llvm-project/compiler-rt/test/orc/TestCases/Generic/lazy-link.ll
warning: overriding the module target triple with aarch64-unknown-linux-gnu [-Woverride-module]
1 warning generated.
RUN: at line 10: /home/b/sanitizer-aarch64-linux/build/build_default/./bin/llvm-jitlink -orc-runtime=/home/b/sanitizer-aarch64-linux/build/build_default/./lib/../lib/clang/20/lib/aarch64-unknown-linux-gnu/liborc_rt.a -noexec -show-linked-files /home/b/sanitizer-aarch64-linux/build/build_default/runtimes/runtimes-bins/compiler-rt/test/orc/AARCH64LinuxConfig/TestCases/Generic/Output/lazy-link.ll.tmp/main.o -lazy /home/b/sanitizer-aarch64-linux/build/build_default/runtimes/runtimes-bins/compiler-rt/test/orc/AARCH64LinuxConfig/TestCases/Generic/Output/lazy-link.ll.tmp/foo.o      -lazy /home/b/sanitizer-aarch64-linux/build/build_default/runtimes/runtimes-bins/compiler-rt/test/orc/AARCH64LinuxConfig/TestCases/Generic/Output/lazy-link.ll.tmp/x.o | FileCheck /home/b/sanitizer-aarch64-linux/build/llvm-project/compiler-rt/test/orc/TestCases/Generic/lazy-link.ll
+ /home/b/sanitizer-aarch64-linux/build/build_default/./bin/llvm-jitlink -orc-runtime=/home/b/sanitizer-aarch64-linux/build/build_default/./lib/../lib/clang/20/lib/aarch64-unknown-linux-gnu/liborc_rt.a -noexec -show-linked-files /home/b/sanitizer-aarch64-linux/build/build_default/runtimes/runtimes-bins/compiler-rt/test/orc/AARCH64LinuxConfig/TestCases/Generic/Output/lazy-link.ll.tmp/main.o -lazy /home/b/sanitizer-aarch64-linux/build/build_default/runtimes/runtimes-bins/compiler-rt/test/orc/AARCH64LinuxConfig/TestCases/Generic/Output/lazy-link.ll.tmp/foo.o -lazy /home/b/sanitizer-aarch64-linux/build/build_default/runtimes/runtimes-bins/compiler-rt/test/orc/AARCH64LinuxConfig/TestCases/Generic/Output/lazy-link.ll.tmp/x.o
+ FileCheck /home/b/sanitizer-aarch64-linux/build/llvm-project/compiler-rt/test/orc/TestCases/Generic/lazy-link.ll
llvm-jitlink error: Symbols not found: [ __orc_rt_reentry ]
llvm-jitlink: /home/b/sanitizer-aarch64-linux/build/llvm-project/llvm/lib/ExecutionEngine/Orc/Core.cpp:1480: void llvm::orc::JITDylib::detachQueryHelper(AsynchronousSymbolQuery &, const SymbolNameSet &): Assertion `MaterializingInfos.count(QuerySymbol) && "QuerySymbol does not have MaterializingInfo"' failed.
PLEASE submit a bug report to https://github.com/llvm/llvm-project/issues/ and include the crash backtrace.
Stack dump:
0.	Program arguments: /home/b/sanitizer-aarch64-linux/build/build_default/./bin/llvm-jitlink -orc-runtime=/home/b/sanitizer-aarch64-linux/build/build_default/./lib/../lib/clang/20/lib/aarch64-unknown-linux-gnu/liborc_rt.a -noexec -show-linked-files /home/b/sanitizer-aarch64-linux/build/build_default/runtimes/runtimes-bins/compiler-rt/test/orc/AARCH64LinuxConfig/TestCases/Generic/Output/lazy-link.ll.tmp/main.o -lazy /home/b/sanitizer-aarch64-linux/build/build_default/runtimes/runtimes-bins/compiler-rt/test/orc/AARCH64LinuxConfig/TestCases/Generic/Output/lazy-link.ll.tmp/foo.o -lazy /home/b/sanitizer-aarch64-linux/build/build_default/runtimes/runtimes-bins/compiler-rt/test/orc/AARCH64LinuxConfig/TestCases/Generic/Output/lazy-link.ll.tmp/x.o
 #0 0x0000c7aa01ed01b0 llvm::sys::PrintStackTrace(llvm::raw_ostream&, int) (/home/b/sanitizer-aarch64-linux/build/build_default/./bin/llvm-jitlink+0x29c01b0)
 #1 0x0000c7aa01ece03c llvm::sys::RunSignalHandlers() (/home/b/sanitizer-aarch64-linux/build/build_default/./bin/llvm-jitlink+0x29be03c)
 #2 0x0000c7aa01ed08cc SignalHandler(int) Signals.cpp:0:0
 #3 0x0000e99dbccd28f8 (linux-vdso.so.1+0x8f8)
 #4 0x0000e99dbc6c7628 (/lib/aarch64-linux-gnu/libc.so.6+0x87628)
 #5 0x0000e99dbc67cb3c raise (/lib/aarch64-linux-gnu/libc.so.6+0x3cb3c)
 #6 0x0000e99dbc667e00 abort (/lib/aarch64-linux-gnu/libc.so.6+0x27e00)
 #7 0x0000e99dbc675cbc (/lib/aarch64-linux-gnu/libc.so.6+0x35cbc)
 #8 0x0000e99dbc675d2c (/lib/aarch64-linux-gnu/libc.so.6+0x35d2c)
 #9 0x0000c7aa01cccbac llvm::orc::JITDylib::detachQueryHelper(llvm::orc::AsynchronousSymbolQuery&, llvm::DenseSet<llvm::orc::SymbolStringPtr, llvm::DenseMapInfo<llvm::orc::SymbolStringPtr, void>> const&) (/home/b/sanitizer-aarch64-linux/build/build_default/./bin/llvm-jitlink+0x27bcbac)
Step 11 (test compiler-rt debug) failure: test compiler-rt debug (failure)
...
[182/186] Generating MSAN_INST_TEST_OBJECTS.msan_test.cpp.aarch64-with-call.o
[183/186] Generating Msan-aarch64-with-call-Test
[184/186] Generating MSAN_INST_TEST_OBJECTS.msan_test.cpp.aarch64.o
[185/186] Generating Msan-aarch64-Test
[185/186] Running compiler_rt regression tests
llvm-lit: /home/b/sanitizer-aarch64-linux/build/llvm-project/llvm/utils/lit/lit/discovery.py:276: warning: input '/home/b/sanitizer-aarch64-linux/build/build_default/runtimes/runtimes-bins/compiler-rt/test/interception/Unit' contained no tests
llvm-lit: /home/b/sanitizer-aarch64-linux/build/llvm-project/llvm/utils/lit/lit/discovery.py:276: warning: input '/home/b/sanitizer-aarch64-linux/build/build_default/runtimes/runtimes-bins/compiler-rt/test/sanitizer_common/Unit' contained no tests
llvm-lit: /home/b/sanitizer-aarch64-linux/build/llvm-project/llvm/utils/lit/lit/main.py:72: note: The test suite configuration requested an individual test timeout of 0 seconds but a timeout of 900 seconds was requested on the command line. Forcing timeout to be 900 seconds.
-- Testing: 2795 of 5556 tests, 48 workers --
Testing:  0.. 10.. 
FAIL: ORC-aarch64-linux :: TestCases/Generic/lazy-link.ll (564 of 2795)
******************** TEST 'ORC-aarch64-linux :: TestCases/Generic/lazy-link.ll' FAILED ********************
Exit Code: 2

Command Output (stderr):
--
RUN: at line 6: rm -rf /home/b/sanitizer-aarch64-linux/build/build_default/runtimes/runtimes-bins/compiler-rt/test/orc/AARCH64LinuxConfig/TestCases/Generic/Output/lazy-link.ll.tmp && mkdir -p /home/b/sanitizer-aarch64-linux/build/build_default/runtimes/runtimes-bins/compiler-rt/test/orc/AARCH64LinuxConfig/TestCases/Generic/Output/lazy-link.ll.tmp
+ rm -rf /home/b/sanitizer-aarch64-linux/build/build_default/runtimes/runtimes-bins/compiler-rt/test/orc/AARCH64LinuxConfig/TestCases/Generic/Output/lazy-link.ll.tmp
+ mkdir -p /home/b/sanitizer-aarch64-linux/build/build_default/runtimes/runtimes-bins/compiler-rt/test/orc/AARCH64LinuxConfig/TestCases/Generic/Output/lazy-link.ll.tmp
RUN: at line 7: /home/b/sanitizer-aarch64-linux/build/build_default/./bin/clang    -Wthread-safety -Wthread-safety-reference -Wthread-safety-beta   -c -o /home/b/sanitizer-aarch64-linux/build/build_default/runtimes/runtimes-bins/compiler-rt/test/orc/AARCH64LinuxConfig/TestCases/Generic/Output/lazy-link.ll.tmp/foo.o /home/b/sanitizer-aarch64-linux/build/llvm-project/compiler-rt/test/orc/TestCases/Generic/Inputs/foo-ret-42.ll
+ /home/b/sanitizer-aarch64-linux/build/build_default/./bin/clang -Wthread-safety -Wthread-safety-reference -Wthread-safety-beta -c -o /home/b/sanitizer-aarch64-linux/build/build_default/runtimes/runtimes-bins/compiler-rt/test/orc/AARCH64LinuxConfig/TestCases/Generic/Output/lazy-link.ll.tmp/foo.o /home/b/sanitizer-aarch64-linux/build/llvm-project/compiler-rt/test/orc/TestCases/Generic/Inputs/foo-ret-42.ll
warning: overriding the module target triple with aarch64-unknown-linux-gnu [-Woverride-module]
1 warning generated.
RUN: at line 8: /home/b/sanitizer-aarch64-linux/build/build_default/./bin/clang    -Wthread-safety -Wthread-safety-reference -Wthread-safety-beta   -c -o /home/b/sanitizer-aarch64-linux/build/build_default/runtimes/runtimes-bins/compiler-rt/test/orc/AARCH64LinuxConfig/TestCases/Generic/Output/lazy-link.ll.tmp/x.o /home/b/sanitizer-aarch64-linux/build/llvm-project/compiler-rt/test/orc/TestCases/Generic/Inputs/var-x-42.ll
+ /home/b/sanitizer-aarch64-linux/build/build_default/./bin/clang -Wthread-safety -Wthread-safety-reference -Wthread-safety-beta -c -o /home/b/sanitizer-aarch64-linux/build/build_default/runtimes/runtimes-bins/compiler-rt/test/orc/AARCH64LinuxConfig/TestCases/Generic/Output/lazy-link.ll.tmp/x.o /home/b/sanitizer-aarch64-linux/build/llvm-project/compiler-rt/test/orc/TestCases/Generic/Inputs/var-x-42.ll
warning: overriding the module target triple with aarch64-unknown-linux-gnu [-Woverride-module]
1 warning generated.
RUN: at line 9: /home/b/sanitizer-aarch64-linux/build/build_default/./bin/clang    -Wthread-safety -Wthread-safety-reference -Wthread-safety-beta   -c -o /home/b/sanitizer-aarch64-linux/build/build_default/runtimes/runtimes-bins/compiler-rt/test/orc/AARCH64LinuxConfig/TestCases/Generic/Output/lazy-link.ll.tmp/main.o /home/b/sanitizer-aarch64-linux/build/llvm-project/compiler-rt/test/orc/TestCases/Generic/lazy-link.ll
+ /home/b/sanitizer-aarch64-linux/build/build_default/./bin/clang -Wthread-safety -Wthread-safety-reference -Wthread-safety-beta -c -o /home/b/sanitizer-aarch64-linux/build/build_default/runtimes/runtimes-bins/compiler-rt/test/orc/AARCH64LinuxConfig/TestCases/Generic/Output/lazy-link.ll.tmp/main.o /home/b/sanitizer-aarch64-linux/build/llvm-project/compiler-rt/test/orc/TestCases/Generic/lazy-link.ll
warning: overriding the module target triple with aarch64-unknown-linux-gnu [-Woverride-module]
1 warning generated.
RUN: at line 10: /home/b/sanitizer-aarch64-linux/build/build_default/./bin/llvm-jitlink -orc-runtime=/home/b/sanitizer-aarch64-linux/build/build_default/./lib/../lib/clang/20/lib/aarch64-unknown-linux-gnu/liborc_rt.a -noexec -show-linked-files /home/b/sanitizer-aarch64-linux/build/build_default/runtimes/runtimes-bins/compiler-rt/test/orc/AARCH64LinuxConfig/TestCases/Generic/Output/lazy-link.ll.tmp/main.o -lazy /home/b/sanitizer-aarch64-linux/build/build_default/runtimes/runtimes-bins/compiler-rt/test/orc/AARCH64LinuxConfig/TestCases/Generic/Output/lazy-link.ll.tmp/foo.o      -lazy /home/b/sanitizer-aarch64-linux/build/build_default/runtimes/runtimes-bins/compiler-rt/test/orc/AARCH64LinuxConfig/TestCases/Generic/Output/lazy-link.ll.tmp/x.o | FileCheck /home/b/sanitizer-aarch64-linux/build/llvm-project/compiler-rt/test/orc/TestCases/Generic/lazy-link.ll
+ /home/b/sanitizer-aarch64-linux/build/build_default/./bin/llvm-jitlink -orc-runtime=/home/b/sanitizer-aarch64-linux/build/build_default/./lib/../lib/clang/20/lib/aarch64-unknown-linux-gnu/liborc_rt.a -noexec -show-linked-files /home/b/sanitizer-aarch64-linux/build/build_default/runtimes/runtimes-bins/compiler-rt/test/orc/AARCH64LinuxConfig/TestCases/Generic/Output/lazy-link.ll.tmp/main.o -lazy /home/b/sanitizer-aarch64-linux/build/build_default/runtimes/runtimes-bins/compiler-rt/test/orc/AARCH64LinuxConfig/TestCases/Generic/Output/lazy-link.ll.tmp/foo.o -lazy /home/b/sanitizer-aarch64-linux/build/build_default/runtimes/runtimes-bins/compiler-rt/test/orc/AARCH64LinuxConfig/TestCases/Generic/Output/lazy-link.ll.tmp/x.o
+ FileCheck /home/b/sanitizer-aarch64-linux/build/llvm-project/compiler-rt/test/orc/TestCases/Generic/lazy-link.ll
llvm-jitlink error: Symbols not found: [ __orc_rt_reentry ]
llvm-jitlink: /home/b/sanitizer-aarch64-linux/build/llvm-project/llvm/lib/ExecutionEngine/Orc/Core.cpp:1480: void llvm::orc::JITDylib::detachQueryHelper(AsynchronousSymbolQuery &, const SymbolNameSet &): Assertion `MaterializingInfos.count(QuerySymbol) && "QuerySymbol does not have MaterializingInfo"' failed.
PLEASE submit a bug report to https://github.com/llvm/llvm-project/issues/ and include the crash backtrace.
Stack dump:
0.	Program arguments: /home/b/sanitizer-aarch64-linux/build/build_default/./bin/llvm-jitlink -orc-runtime=/home/b/sanitizer-aarch64-linux/build/build_default/./lib/../lib/clang/20/lib/aarch64-unknown-linux-gnu/liborc_rt.a -noexec -show-linked-files /home/b/sanitizer-aarch64-linux/build/build_default/runtimes/runtimes-bins/compiler-rt/test/orc/AARCH64LinuxConfig/TestCases/Generic/Output/lazy-link.ll.tmp/main.o -lazy /home/b/sanitizer-aarch64-linux/build/build_default/runtimes/runtimes-bins/compiler-rt/test/orc/AARCH64LinuxConfig/TestCases/Generic/Output/lazy-link.ll.tmp/foo.o -lazy /home/b/sanitizer-aarch64-linux/build/build_default/runtimes/runtimes-bins/compiler-rt/test/orc/AARCH64LinuxConfig/TestCases/Generic/Output/lazy-link.ll.tmp/x.o
 #0 0x0000b47a439a01b0 llvm::sys::PrintStackTrace(llvm::raw_ostream&, int) (/home/b/sanitizer-aarch64-linux/build/build_default/./bin/llvm-jitlink+0x29c01b0)
 #1 0x0000b47a4399e03c llvm::sys::RunSignalHandlers() (/home/b/sanitizer-aarch64-linux/build/build_default/./bin/llvm-jitlink+0x29be03c)
 #2 0x0000b47a439a08cc SignalHandler(int) Signals.cpp:0:0
 #3 0x0000f278a442d8f8 (linux-vdso.so.1+0x8f8)
 #4 0x0000f278a3cc7628 (/lib/aarch64-linux-gnu/libc.so.6+0x87628)
 #5 0x0000f278a3c7cb3c raise (/lib/aarch64-linux-gnu/libc.so.6+0x3cb3c)
 #6 0x0000f278a3c67e00 abort (/lib/aarch64-linux-gnu/libc.so.6+0x27e00)
 #7 0x0000f278a3c75cbc (/lib/aarch64-linux-gnu/libc.so.6+0x35cbc)
 #8 0x0000f278a3c75d2c (/lib/aarch64-linux-gnu/libc.so.6+0x35d2c)
 #9 0x0000b47a4379cbac llvm::orc::JITDylib::detachQueryHelper(llvm::orc::AsynchronousSymbolQuery&, llvm::DenseSet<llvm::orc::SymbolStringPtr, llvm::DenseMapInfo<llvm::orc::SymbolStringPtr, void>> const&) (/home/b/sanitizer-aarch64-linux/build/build_default/./bin/llvm-jitlink+0x27bcbac)
Step 14 (test compiler-rt default) failure: test compiler-rt default (failure)
...
[182/186] Generating MSAN_INST_TEST_OBJECTS.msan_test.cpp.aarch64-with-call.o
[183/186] Generating Msan-aarch64-with-call-Test
[184/186] Generating MSAN_INST_TEST_OBJECTS.msan_test.cpp.aarch64.o
[185/186] Generating Msan-aarch64-Test
[185/186] Running compiler_rt regression tests
llvm-lit: /home/b/sanitizer-aarch64-linux/build/llvm-project/llvm/utils/lit/lit/discovery.py:276: warning: input '/home/b/sanitizer-aarch64-linux/build/build_default/runtimes/runtimes-bins/compiler-rt/test/interception/Unit' contained no tests
llvm-lit: /home/b/sanitizer-aarch64-linux/build/llvm-project/llvm/utils/lit/lit/discovery.py:276: warning: input '/home/b/sanitizer-aarch64-linux/build/build_default/runtimes/runtimes-bins/compiler-rt/test/sanitizer_common/Unit' contained no tests
llvm-lit: /home/b/sanitizer-aarch64-linux/build/llvm-project/llvm/utils/lit/lit/main.py:72: note: The test suite configuration requested an individual test timeout of 0 seconds but a timeout of 900 seconds was requested on the command line. Forcing timeout to be 900 seconds.
-- Testing: 5555 tests, 48 workers --
Testing:  0.. 10.. 20.. 30..
FAIL: ORC-aarch64-linux :: TestCases/Generic/lazy-link.ll (2118 of 5555)
******************** TEST 'ORC-aarch64-linux :: TestCases/Generic/lazy-link.ll' FAILED ********************
Exit Code: 2

Command Output (stderr):
--
RUN: at line 6: rm -rf /home/b/sanitizer-aarch64-linux/build/build_default/runtimes/runtimes-bins/compiler-rt/test/orc/AARCH64LinuxConfig/TestCases/Generic/Output/lazy-link.ll.tmp && mkdir -p /home/b/sanitizer-aarch64-linux/build/build_default/runtimes/runtimes-bins/compiler-rt/test/orc/AARCH64LinuxConfig/TestCases/Generic/Output/lazy-link.ll.tmp
+ rm -rf /home/b/sanitizer-aarch64-linux/build/build_default/runtimes/runtimes-bins/compiler-rt/test/orc/AARCH64LinuxConfig/TestCases/Generic/Output/lazy-link.ll.tmp
+ mkdir -p /home/b/sanitizer-aarch64-linux/build/build_default/runtimes/runtimes-bins/compiler-rt/test/orc/AARCH64LinuxConfig/TestCases/Generic/Output/lazy-link.ll.tmp
RUN: at line 7: /home/b/sanitizer-aarch64-linux/build/build_default/./bin/clang    -Wthread-safety -Wthread-safety-reference -Wthread-safety-beta   -c -o /home/b/sanitizer-aarch64-linux/build/build_default/runtimes/runtimes-bins/compiler-rt/test/orc/AARCH64LinuxConfig/TestCases/Generic/Output/lazy-link.ll.tmp/foo.o /home/b/sanitizer-aarch64-linux/build/llvm-project/compiler-rt/test/orc/TestCases/Generic/Inputs/foo-ret-42.ll
+ /home/b/sanitizer-aarch64-linux/build/build_default/./bin/clang -Wthread-safety -Wthread-safety-reference -Wthread-safety-beta -c -o /home/b/sanitizer-aarch64-linux/build/build_default/runtimes/runtimes-bins/compiler-rt/test/orc/AARCH64LinuxConfig/TestCases/Generic/Output/lazy-link.ll.tmp/foo.o /home/b/sanitizer-aarch64-linux/build/llvm-project/compiler-rt/test/orc/TestCases/Generic/Inputs/foo-ret-42.ll
warning: overriding the module target triple with aarch64-unknown-linux-gnu [-Woverride-module]
1 warning generated.
RUN: at line 8: /home/b/sanitizer-aarch64-linux/build/build_default/./bin/clang    -Wthread-safety -Wthread-safety-reference -Wthread-safety-beta   -c -o /home/b/sanitizer-aarch64-linux/build/build_default/runtimes/runtimes-bins/compiler-rt/test/orc/AARCH64LinuxConfig/TestCases/Generic/Output/lazy-link.ll.tmp/x.o /home/b/sanitizer-aarch64-linux/build/llvm-project/compiler-rt/test/orc/TestCases/Generic/Inputs/var-x-42.ll
+ /home/b/sanitizer-aarch64-linux/build/build_default/./bin/clang -Wthread-safety -Wthread-safety-reference -Wthread-safety-beta -c -o /home/b/sanitizer-aarch64-linux/build/build_default/runtimes/runtimes-bins/compiler-rt/test/orc/AARCH64LinuxConfig/TestCases/Generic/Output/lazy-link.ll.tmp/x.o /home/b/sanitizer-aarch64-linux/build/llvm-project/compiler-rt/test/orc/TestCases/Generic/Inputs/var-x-42.ll
warning: overriding the module target triple with aarch64-unknown-linux-gnu [-Woverride-module]
1 warning generated.
RUN: at line 9: /home/b/sanitizer-aarch64-linux/build/build_default/./bin/clang    -Wthread-safety -Wthread-safety-reference -Wthread-safety-beta   -c -o /home/b/sanitizer-aarch64-linux/build/build_default/runtimes/runtimes-bins/compiler-rt/test/orc/AARCH64LinuxConfig/TestCases/Generic/Output/lazy-link.ll.tmp/main.o /home/b/sanitizer-aarch64-linux/build/llvm-project/compiler-rt/test/orc/TestCases/Generic/lazy-link.ll
+ /home/b/sanitizer-aarch64-linux/build/build_default/./bin/clang -Wthread-safety -Wthread-safety-reference -Wthread-safety-beta -c -o /home/b/sanitizer-aarch64-linux/build/build_default/runtimes/runtimes-bins/compiler-rt/test/orc/AARCH64LinuxConfig/TestCases/Generic/Output/lazy-link.ll.tmp/main.o /home/b/sanitizer-aarch64-linux/build/llvm-project/compiler-rt/test/orc/TestCases/Generic/lazy-link.ll
warning: overriding the module target triple with aarch64-unknown-linux-gnu [-Woverride-module]
1 warning generated.
RUN: at line 10: /home/b/sanitizer-aarch64-linux/build/build_default/./bin/llvm-jitlink -orc-runtime=/home/b/sanitizer-aarch64-linux/build/build_default/./lib/../lib/clang/20/lib/aarch64-unknown-linux-gnu/liborc_rt.a -noexec -show-linked-files /home/b/sanitizer-aarch64-linux/build/build_default/runtimes/runtimes-bins/compiler-rt/test/orc/AARCH64LinuxConfig/TestCases/Generic/Output/lazy-link.ll.tmp/main.o -lazy /home/b/sanitizer-aarch64-linux/build/build_default/runtimes/runtimes-bins/compiler-rt/test/orc/AARCH64LinuxConfig/TestCases/Generic/Output/lazy-link.ll.tmp/foo.o      -lazy /home/b/sanitizer-aarch64-linux/build/build_default/runtimes/runtimes-bins/compiler-rt/test/orc/AARCH64LinuxConfig/TestCases/Generic/Output/lazy-link.ll.tmp/x.o | FileCheck /home/b/sanitizer-aarch64-linux/build/llvm-project/compiler-rt/test/orc/TestCases/Generic/lazy-link.ll
+ FileCheck /home/b/sanitizer-aarch64-linux/build/llvm-project/compiler-rt/test/orc/TestCases/Generic/lazy-link.ll
+ /home/b/sanitizer-aarch64-linux/build/build_default/./bin/llvm-jitlink -orc-runtime=/home/b/sanitizer-aarch64-linux/build/build_default/./lib/../lib/clang/20/lib/aarch64-unknown-linux-gnu/liborc_rt.a -noexec -show-linked-files /home/b/sanitizer-aarch64-linux/build/build_default/runtimes/runtimes-bins/compiler-rt/test/orc/AARCH64LinuxConfig/TestCases/Generic/Output/lazy-link.ll.tmp/main.o -lazy /home/b/sanitizer-aarch64-linux/build/build_default/runtimes/runtimes-bins/compiler-rt/test/orc/AARCH64LinuxConfig/TestCases/Generic/Output/lazy-link.ll.tmp/foo.o -lazy /home/b/sanitizer-aarch64-linux/build/build_default/runtimes/runtimes-bins/compiler-rt/test/orc/AARCH64LinuxConfig/TestCases/Generic/Output/lazy-link.ll.tmp/x.o
llvm-jitlink error: Symbols not found: [ __orc_rt_reentry ]
llvm-jitlink: /home/b/sanitizer-aarch64-linux/build/llvm-project/llvm/lib/ExecutionEngine/Orc/Core.cpp:1480: void llvm::orc::JITDylib::detachQueryHelper(AsynchronousSymbolQuery &, const SymbolNameSet &): Assertion `MaterializingInfos.count(QuerySymbol) && "QuerySymbol does not have MaterializingInfo"' failed.
PLEASE submit a bug report to https://github.com/llvm/llvm-project/issues/ and include the crash backtrace.
Stack dump:
0.	Program arguments: /home/b/sanitizer-aarch64-linux/build/build_default/./bin/llvm-jitlink -orc-runtime=/home/b/sanitizer-aarch64-linux/build/build_default/./lib/../lib/clang/20/lib/aarch64-unknown-linux-gnu/liborc_rt.a -noexec -show-linked-files /home/b/sanitizer-aarch64-linux/build/build_default/runtimes/runtimes-bins/compiler-rt/test/orc/AARCH64LinuxConfig/TestCases/Generic/Output/lazy-link.ll.tmp/main.o -lazy /home/b/sanitizer-aarch64-linux/build/build_default/runtimes/runtimes-bins/compiler-rt/test/orc/AARCH64LinuxConfig/TestCases/Generic/Output/lazy-link.ll.tmp/foo.o -lazy /home/b/sanitizer-aarch64-linux/build/build_default/runtimes/runtimes-bins/compiler-rt/test/orc/AARCH64LinuxConfig/TestCases/Generic/Output/lazy-link.ll.tmp/x.o
 #0 0x0000ad90211401b0 llvm::sys::PrintStackTrace(llvm::raw_ostream&, int) (/home/b/sanitizer-aarch64-linux/build/build_default/./bin/llvm-jitlink+0x29c01b0)
 #1 0x0000ad902113e03c llvm::sys::RunSignalHandlers() (/home/b/sanitizer-aarch64-linux/build/build_default/./bin/llvm-jitlink+0x29be03c)
 #2 0x0000ad90211408cc SignalHandler(int) Signals.cpp:0:0
 #3 0x0000eebd339d78f8 (linux-vdso.so.1+0x8f8)
 #4 0x0000eebd332c7628 (/lib/aarch64-linux-gnu/libc.so.6+0x87628)
 #5 0x0000eebd3327cb3c raise (/lib/aarch64-linux-gnu/libc.so.6+0x3cb3c)
 #6 0x0000eebd33267e00 abort (/lib/aarch64-linux-gnu/libc.so.6+0x27e00)
 #7 0x0000eebd33275cbc (/lib/aarch64-linux-gnu/libc.so.6+0x35cbc)
 #8 0x0000eebd33275d2c (/lib/aarch64-linux-gnu/libc.so.6+0x35d2c)
 #9 0x0000ad9020f3cbac llvm::orc::JITDylib::detachQueryHelper(llvm::orc::AsynchronousSymbolQuery&, llvm::DenseSet<llvm::orc::SymbolStringPtr, llvm::DenseMapInfo<llvm::orc::SymbolStringPtr, void>> const&) (/home/b/sanitizer-aarch64-linux/build/build_default/./bin/llvm-jitlink+0x27bcbac)
Step 16 (test standalone compiler-rt) failure: test standalone compiler-rt (failure)
...
llvm-lit: /home/b/sanitizer-aarch64-linux/build/llvm-project/compiler-rt/test/lit.common.cfg.py:60: warning: Path reported by clang does not exist: "/home/b/sanitizer-aarch64-linux/build/compiler_rt_build/lib/aarch64-unknown-linux-gnu". This path was found by running ['/home/b/sanitizer-aarch64-linux/build/build_default/bin/clang', '--target=aarch64-unknown-linux-gnu', '-Wthread-safety', '-Wthread-safety-reference', '-Wthread-safety-beta', '-nobuiltininc', '-I/home/b/sanitizer-aarch64-linux/build/llvm-project/compiler-rt/include', '-idirafter', '/home/b/sanitizer-aarch64-linux/build/build_default/lib/clang/20/include', '-resource-dir=/home/b/sanitizer-aarch64-linux/build/compiler_rt_build', '-Wl,-rpath,/home/b/sanitizer-aarch64-linux/build/compiler_rt_build/lib/linux', '-print-runtime-dir'].
llvm-lit: /home/b/sanitizer-aarch64-linux/build/llvm-project/compiler-rt/test/lit.common.cfg.py:60: warning: Path reported by clang does not exist: "/home/b/sanitizer-aarch64-linux/build/compiler_rt_build/lib/aarch64-unknown-linux-gnu". This path was found by running ['/home/b/sanitizer-aarch64-linux/build/build_default/bin/clang', '--target=aarch64-unknown-linux-gnu', '-Wthread-safety', '-Wthread-safety-reference', '-Wthread-safety-beta', '-nobuiltininc', '-I/home/b/sanitizer-aarch64-linux/build/llvm-project/compiler-rt/include', '-idirafter', '/home/b/sanitizer-aarch64-linux/build/build_default/lib/clang/20/include', '-resource-dir=/home/b/sanitizer-aarch64-linux/build/compiler_rt_build', '-Wl,-rpath,/home/b/sanitizer-aarch64-linux/build/compiler_rt_build/lib/linux', '-print-runtime-dir'].
llvm-lit: /home/b/sanitizer-aarch64-linux/build/llvm-project/compiler-rt/test/lit.common.cfg.py:60: warning: Path reported by clang does not exist: "/home/b/sanitizer-aarch64-linux/build/compiler_rt_build/lib/aarch64-unknown-linux-gnu". This path was found by running ['/home/b/sanitizer-aarch64-linux/build/build_default/bin/clang', '--target=aarch64-unknown-linux-gnu', '-Wthread-safety', '-Wthread-safety-reference', '-Wthread-safety-beta', '-nobuiltininc', '-I/home/b/sanitizer-aarch64-linux/build/llvm-project/compiler-rt/include', '-idirafter', '/home/b/sanitizer-aarch64-linux/build/build_default/lib/clang/20/include', '-resource-dir=/home/b/sanitizer-aarch64-linux/build/compiler_rt_build', '-Wl,-rpath,/home/b/sanitizer-aarch64-linux/build/compiler_rt_build/lib/linux', '-print-runtime-dir'].
llvm-lit: /home/b/sanitizer-aarch64-linux/build/llvm-project/compiler-rt/test/lit.common.cfg.py:60: warning: Path reported by clang does not exist: "/home/b/sanitizer-aarch64-linux/build/compiler_rt_build/lib/aarch64-unknown-linux-gnu". This path was found by running ['/home/b/sanitizer-aarch64-linux/build/build_default/bin/clang', '--target=aarch64-unknown-linux-gnu', '-Wthread-safety', '-Wthread-safety-reference', '-Wthread-safety-beta', '-nobuiltininc', '-I/home/b/sanitizer-aarch64-linux/build/llvm-project/compiler-rt/include', '-idirafter', '/home/b/sanitizer-aarch64-linux/build/build_default/lib/clang/20/include', '-resource-dir=/home/b/sanitizer-aarch64-linux/build/compiler_rt_build', '-Wl,-rpath,/home/b/sanitizer-aarch64-linux/build/compiler_rt_build/lib/linux', '-print-runtime-dir'].
llvm-lit: /home/b/sanitizer-aarch64-linux/build/llvm-project/compiler-rt/test/lit.common.cfg.py:60: warning: Path reported by clang does not exist: "/home/b/sanitizer-aarch64-linux/build/compiler_rt_build/lib/aarch64-unknown-linux-gnu". This path was found by running ['/home/b/sanitizer-aarch64-linux/build/build_default/bin/clang', '--target=aarch64-unknown-linux-gnu', '-Wthread-safety', '-Wthread-safety-reference', '-Wthread-safety-beta', '-nobuiltininc', '-I/home/b/sanitizer-aarch64-linux/build/llvm-project/compiler-rt/include', '-idirafter', '/home/b/sanitizer-aarch64-linux/build/build_default/lib/clang/20/include', '-resource-dir=/home/b/sanitizer-aarch64-linux/build/compiler_rt_build', '-Wl,-rpath,/home/b/sanitizer-aarch64-linux/build/compiler_rt_build/lib/linux', '-print-runtime-dir'].
llvm-lit: /home/b/sanitizer-aarch64-linux/build/llvm-project/compiler-rt/test/lit.common.cfg.py:60: warning: Path reported by clang does not exist: "/home/b/sanitizer-aarch64-linux/build/compiler_rt_build/lib/aarch64-unknown-linux-gnu". This path was found by running ['/home/b/sanitizer-aarch64-linux/build/build_default/bin/clang', '--target=aarch64-unknown-linux-gnu', '-Wthread-safety', '-Wthread-safety-reference', '-Wthread-safety-beta', '-nobuiltininc', '-I/home/b/sanitizer-aarch64-linux/build/llvm-project/compiler-rt/include', '-idirafter', '/home/b/sanitizer-aarch64-linux/build/build_default/lib/clang/20/include', '-resource-dir=/home/b/sanitizer-aarch64-linux/build/compiler_rt_build', '-Wl,-rpath,/home/b/sanitizer-aarch64-linux/build/compiler_rt_build/lib/linux', '-print-runtime-dir'].
llvm-lit: /home/b/sanitizer-aarch64-linux/build/llvm-project/compiler-rt/test/lit.common.cfg.py:60: warning: Path reported by clang does not exist: "/home/b/sanitizer-aarch64-linux/build/compiler_rt_build/lib/aarch64-unknown-linux-gnu". This path was found by running ['/home/b/sanitizer-aarch64-linux/build/build_default/bin/clang', '--target=aarch64-unknown-linux-gnu', '-Wthread-safety', '-Wthread-safety-reference', '-Wthread-safety-beta', '-nobuiltininc', '-I/home/b/sanitizer-aarch64-linux/build/llvm-project/compiler-rt/include', '-idirafter', '/home/b/sanitizer-aarch64-linux/build/build_default/lib/clang/20/include', '-resource-dir=/home/b/sanitizer-aarch64-linux/build/compiler_rt_build', '-Wl,-rpath,/home/b/sanitizer-aarch64-linux/build/compiler_rt_build/lib/linux', '-print-runtime-dir'].
llvm-lit: /home/b/sanitizer-aarch64-linux/build/llvm-project/llvm/utils/lit/lit/main.py:72: note: The test suite configuration requested an individual test timeout of 0 seconds but a timeout of 900 seconds was requested on the command line. Forcing timeout to be 900 seconds.
-- Testing: 5370 tests, 48 workers --
Testing:  0.. 10.. 20.. 30.. 40
FAIL: ORC-aarch64-linux :: TestCases/Generic/lazy-link.ll (2342 of 5370)
******************** TEST 'ORC-aarch64-linux :: TestCases/Generic/lazy-link.ll' FAILED ********************
Exit Code: 2

Command Output (stderr):
--
RUN: at line 6: rm -rf /home/b/sanitizer-aarch64-linux/build/compiler_rt_build/test/orc/AARCH64LinuxConfig/TestCases/Generic/Output/lazy-link.ll.tmp && mkdir -p /home/b/sanitizer-aarch64-linux/build/compiler_rt_build/test/orc/AARCH64LinuxConfig/TestCases/Generic/Output/lazy-link.ll.tmp
+ rm -rf /home/b/sanitizer-aarch64-linux/build/compiler_rt_build/test/orc/AARCH64LinuxConfig/TestCases/Generic/Output/lazy-link.ll.tmp
+ mkdir -p /home/b/sanitizer-aarch64-linux/build/compiler_rt_build/test/orc/AARCH64LinuxConfig/TestCases/Generic/Output/lazy-link.ll.tmp
RUN: at line 7: /home/b/sanitizer-aarch64-linux/build/build_default/bin/clang    -Wthread-safety -Wthread-safety-reference -Wthread-safety-beta  -nobuiltininc -I/home/b/sanitizer-aarch64-linux/build/llvm-project/compiler-rt/include -idirafter /home/b/sanitizer-aarch64-linux/build/build_default/lib/clang/20/include -resource-dir=/home/b/sanitizer-aarch64-linux/build/compiler_rt_build -Wl,-rpath,/home/b/sanitizer-aarch64-linux/build/compiler_rt_build/lib/linux  -c -o /home/b/sanitizer-aarch64-linux/build/compiler_rt_build/test/orc/AARCH64LinuxConfig/TestCases/Generic/Output/lazy-link.ll.tmp/foo.o /home/b/sanitizer-aarch64-linux/build/llvm-project/compiler-rt/test/orc/TestCases/Generic/Inputs/foo-ret-42.ll
+ /home/b/sanitizer-aarch64-linux/build/build_default/bin/clang -Wthread-safety -Wthread-safety-reference -Wthread-safety-beta -nobuiltininc -I/home/b/sanitizer-aarch64-linux/build/llvm-project/compiler-rt/include -idirafter /home/b/sanitizer-aarch64-linux/build/build_default/lib/clang/20/include -resource-dir=/home/b/sanitizer-aarch64-linux/build/compiler_rt_build -Wl,-rpath,/home/b/sanitizer-aarch64-linux/build/compiler_rt_build/lib/linux -c -o /home/b/sanitizer-aarch64-linux/build/compiler_rt_build/test/orc/AARCH64LinuxConfig/TestCases/Generic/Output/lazy-link.ll.tmp/foo.o /home/b/sanitizer-aarch64-linux/build/llvm-project/compiler-rt/test/orc/TestCases/Generic/Inputs/foo-ret-42.ll
clang: warning: -Wl,-rpath,/home/b/sanitizer-aarch64-linux/build/compiler_rt_build/lib/linux: 'linker' input unused [-Wunused-command-line-argument]
clang: warning: argument unused during compilation: '-I /home/b/sanitizer-aarch64-linux/build/llvm-project/compiler-rt/include' [-Wunused-command-line-argument]
clang: warning: argument unused during compilation: '-idirafter /home/b/sanitizer-aarch64-linux/build/build_default/lib/clang/20/include' [-Wunused-command-line-argument]
warning: overriding the module target triple with aarch64-unknown-linux-gnu [-Woverride-module]
1 warning generated.
RUN: at line 8: /home/b/sanitizer-aarch64-linux/build/build_default/bin/clang    -Wthread-safety -Wthread-safety-reference -Wthread-safety-beta  -nobuiltininc -I/home/b/sanitizer-aarch64-linux/build/llvm-project/compiler-rt/include -idirafter /home/b/sanitizer-aarch64-linux/build/build_default/lib/clang/20/include -resource-dir=/home/b/sanitizer-aarch64-linux/build/compiler_rt_build -Wl,-rpath,/home/b/sanitizer-aarch64-linux/build/compiler_rt_build/lib/linux  -c -o /home/b/sanitizer-aarch64-linux/build/compiler_rt_build/test/orc/AARCH64LinuxConfig/TestCases/Generic/Output/lazy-link.ll.tmp/x.o /home/b/sanitizer-aarch64-linux/build/llvm-project/compiler-rt/test/orc/TestCases/Generic/Inputs/var-x-42.ll
+ /home/b/sanitizer-aarch64-linux/build/build_default/bin/clang -Wthread-safety -Wthread-safety-reference -Wthread-safety-beta -nobuiltininc -I/home/b/sanitizer-aarch64-linux/build/llvm-project/compiler-rt/include -idirafter /home/b/sanitizer-aarch64-linux/build/build_default/lib/clang/20/include -resource-dir=/home/b/sanitizer-aarch64-linux/build/compiler_rt_build -Wl,-rpath,/home/b/sanitizer-aarch64-linux/build/compiler_rt_build/lib/linux -c -o /home/b/sanitizer-aarch64-linux/build/compiler_rt_build/test/orc/AARCH64LinuxConfig/TestCases/Generic/Output/lazy-link.ll.tmp/x.o /home/b/sanitizer-aarch64-linux/build/llvm-project/compiler-rt/test/orc/TestCases/Generic/Inputs/var-x-42.ll
clang: warning: -Wl,-rpath,/home/b/sanitizer-aarch64-linux/build/compiler_rt_build/lib/linux: 'linker' input unused [-Wunused-command-line-argument]
clang: warning: argument unused during compilation: '-I /home/b/sanitizer-aarch64-linux/build/llvm-project/compiler-rt/include' [-Wunused-command-line-argument]
clang: warning: argument unused during compilation: '-idirafter /home/b/sanitizer-aarch64-linux/build/build_default/lib/clang/20/include' [-Wunused-command-line-argument]
warning: overriding the module target triple with aarch64-unknown-linux-gnu [-Woverride-module]
1 warning generated.
RUN: at line 9: /home/b/sanitizer-aarch64-linux/build/build_default/bin/clang    -Wthread-safety -Wthread-safety-reference -Wthread-safety-beta  -nobuiltininc -I/home/b/sanitizer-aarch64-linux/build/llvm-project/compiler-rt/include -idirafter /home/b/sanitizer-aarch64-linux/build/build_default/lib/clang/20/include -resource-dir=/home/b/sanitizer-aarch64-linux/build/compiler_rt_build -Wl,-rpath,/home/b/sanitizer-aarch64-linux/build/compiler_rt_build/lib/linux  -c -o /home/b/sanitizer-aarch64-linux/build/compiler_rt_build/test/orc/AARCH64LinuxConfig/TestCases/Generic/Output/lazy-link.ll.tmp/main.o /home/b/sanitizer-aarch64-linux/build/llvm-project/compiler-rt/test/orc/TestCases/Generic/lazy-link.ll
+ /home/b/sanitizer-aarch64-linux/build/build_default/bin/clang -Wthread-safety -Wthread-safety-reference -Wthread-safety-beta -nobuiltininc -I/home/b/sanitizer-aarch64-linux/build/llvm-project/compiler-rt/include -idirafter /home/b/sanitizer-aarch64-linux/build/build_default/lib/clang/20/include -resource-dir=/home/b/sanitizer-aarch64-linux/build/compiler_rt_build -Wl,-rpath,/home/b/sanitizer-aarch64-linux/build/compiler_rt_build/lib/linux -c -o /home/b/sanitizer-aarch64-linux/build/compiler_rt_build/test/orc/AARCH64LinuxConfig/TestCases/Generic/Output/lazy-link.ll.tmp/main.o /home/b/sanitizer-aarch64-linux/build/llvm-project/compiler-rt/test/orc/TestCases/Generic/lazy-link.ll
clang: warning: -Wl,-rpath,/home/b/sanitizer-aarch64-linux/build/compiler_rt_build/lib/linux: 'linker' input unused [-Wunused-command-line-argument]
clang: warning: argument unused during compilation: '-I /home/b/sanitizer-aarch64-linux/build/llvm-project/compiler-rt/include' [-Wunused-command-line-argument]
clang: warning: argument unused during compilation: '-idirafter /home/b/sanitizer-aarch64-linux/build/build_default/lib/clang/20/include' [-Wunused-command-line-argument]
warning: overriding the module target triple with aarch64-unknown-linux-gnu [-Woverride-module]
1 warning generated.
RUN: at line 10: /home/b/sanitizer-aarch64-linux/build/build_default/./bin/llvm-jitlink -orc-runtime=/home/b/sanitizer-aarch64-linux/build/compiler_rt_build/lib/linux/liborc_rt-aarch64.a -noexec -show-linked-files /home/b/sanitizer-aarch64-linux/build/compiler_rt_build/test/orc/AARCH64LinuxConfig/TestCases/Generic/Output/lazy-link.ll.tmp/main.o -lazy /home/b/sanitizer-aarch64-linux/build/compiler_rt_build/test/orc/AARCH64LinuxConfig/TestCases/Generic/Output/lazy-link.ll.tmp/foo.o      -lazy /home/b/sanitizer-aarch64-linux/build/compiler_rt_build/test/orc/AARCH64LinuxConfig/TestCases/Generic/Output/lazy-link.ll.tmp/x.o | FileCheck /home/b/sanitizer-aarch64-linux/build/llvm-project/compiler-rt/test/orc/TestCases/Generic/lazy-link.ll
+ FileCheck /home/b/sanitizer-aarch64-linux/build/llvm-project/compiler-rt/test/orc/TestCases/Generic/lazy-link.ll
+ /home/b/sanitizer-aarch64-linux/build/build_default/./bin/llvm-jitlink -orc-runtime=/home/b/sanitizer-aarch64-linux/build/compiler_rt_build/lib/linux/liborc_rt-aarch64.a -noexec -show-linked-files /home/b/sanitizer-aarch64-linux/build/compiler_rt_build/test/orc/AARCH64LinuxConfig/TestCases/Generic/Output/lazy-link.ll.tmp/main.o -lazy /home/b/sanitizer-aarch64-linux/build/compiler_rt_build/test/orc/AARCH64LinuxConfig/TestCases/Generic/Output/lazy-link.ll.tmp/foo.o -lazy /home/b/sanitizer-aarch64-linux/build/compiler_rt_build/test/orc/AARCH64LinuxConfig/TestCases/Generic/Output/lazy-link.ll.tmp/x.o
llvm-jitlink error: Symbols not found: [ __orc_rt_reentry ]
llvm-jitlink: /home/b/sanitizer-aarch64-linux/build/llvm-project/llvm/lib/ExecutionEngine/Orc/Core.cpp:1480: void llvm::orc::JITDylib::detachQueryHelper(AsynchronousSymbolQuery &, const SymbolNameSet &): Assertion `MaterializingInfos.count(QuerySymbol) && "QuerySymbol does not have MaterializingInfo"' failed.
PLEASE submit a bug report to https://github.com/llvm/llvm-project/issues/ and include the crash backtrace.
Stack dump:
0.	Program arguments: /home/b/sanitizer-aarch64-linux/build/build_default/./bin/llvm-jitlink -orc-runtime=/home/b/sanitizer-aarch64-linux/build/compiler_rt_build/lib/linux/liborc_rt-aarch64.a -noexec -show-linked-files /home/b/sanitizer-aarch64-linux/build/compiler_rt_build/test/orc/AARCH64LinuxConfig/TestCases/Generic/Output/lazy-link.ll.tmp/main.o -lazy /home/b/sanitizer-aarch64-linux/build/compiler_rt_build/test/orc/AARCH64LinuxConfig/TestCases/Generic/Output/lazy-link.ll.tmp/foo.o -lazy /home/b/sanitizer-aarch64-linux/build/compiler_rt_build/test/orc/AARCH64LinuxConfig/TestCases/Generic/Output/lazy-link.ll.tmp/x.o
 #0 0x0000b9c6e9f601b0 llvm::sys::PrintStackTrace(llvm::raw_ostream&, int) (/home/b/sanitizer-aarch64-linux/build/build_default/./bin/llvm-jitlink+0x29c01b0)

lhames added a commit that referenced this pull request Dec 7, 2024
@llvm-ci
Copy link
Collaborator

llvm-ci commented Dec 7, 2024

LLVM Buildbot has detected a new failure on builder clang-aarch64-sve-vls running on linaro-g3-03 while building compiler-rt,llvm at step 7 "ninja check 1".

Full details are available at: https://lab.llvm.org/buildbot/#/builders/143/builds/3963

Here is the relevant piece of the build log for the reference
Step 7 (ninja check 1) failure: stage 1 checked (failure)
******************** TEST 'ORC-aarch64-linux :: TestCases/Generic/lazy-link.ll' FAILED ********************
Exit Code: 2

Command Output (stderr):
--
RUN: at line 6: rm -rf /home/tcwg-buildbot/worker/clang-aarch64-sve-vls/stage1/runtimes/runtimes-bins/compiler-rt/test/orc/AARCH64LinuxConfig/TestCases/Generic/Output/lazy-link.ll.tmp && mkdir -p /home/tcwg-buildbot/worker/clang-aarch64-sve-vls/stage1/runtimes/runtimes-bins/compiler-rt/test/orc/AARCH64LinuxConfig/TestCases/Generic/Output/lazy-link.ll.tmp
+ rm -rf /home/tcwg-buildbot/worker/clang-aarch64-sve-vls/stage1/runtimes/runtimes-bins/compiler-rt/test/orc/AARCH64LinuxConfig/TestCases/Generic/Output/lazy-link.ll.tmp
+ mkdir -p /home/tcwg-buildbot/worker/clang-aarch64-sve-vls/stage1/runtimes/runtimes-bins/compiler-rt/test/orc/AARCH64LinuxConfig/TestCases/Generic/Output/lazy-link.ll.tmp
RUN: at line 7: /home/tcwg-buildbot/worker/clang-aarch64-sve-vls/stage1/./bin/clang    -Wthread-safety -Wthread-safety-reference -Wthread-safety-beta   -c -o /home/tcwg-buildbot/worker/clang-aarch64-sve-vls/stage1/runtimes/runtimes-bins/compiler-rt/test/orc/AARCH64LinuxConfig/TestCases/Generic/Output/lazy-link.ll.tmp/foo.o /home/tcwg-buildbot/worker/clang-aarch64-sve-vls/llvm/compiler-rt/test/orc/TestCases/Generic/Inputs/foo-ret-42.ll
+ /home/tcwg-buildbot/worker/clang-aarch64-sve-vls/stage1/./bin/clang -Wthread-safety -Wthread-safety-reference -Wthread-safety-beta -c -o /home/tcwg-buildbot/worker/clang-aarch64-sve-vls/stage1/runtimes/runtimes-bins/compiler-rt/test/orc/AARCH64LinuxConfig/TestCases/Generic/Output/lazy-link.ll.tmp/foo.o /home/tcwg-buildbot/worker/clang-aarch64-sve-vls/llvm/compiler-rt/test/orc/TestCases/Generic/Inputs/foo-ret-42.ll
warning: overriding the module target triple with aarch64-unknown-linux-gnu [-Woverride-module]
1 warning generated.
RUN: at line 8: /home/tcwg-buildbot/worker/clang-aarch64-sve-vls/stage1/./bin/clang    -Wthread-safety -Wthread-safety-reference -Wthread-safety-beta   -c -o /home/tcwg-buildbot/worker/clang-aarch64-sve-vls/stage1/runtimes/runtimes-bins/compiler-rt/test/orc/AARCH64LinuxConfig/TestCases/Generic/Output/lazy-link.ll.tmp/x.o /home/tcwg-buildbot/worker/clang-aarch64-sve-vls/llvm/compiler-rt/test/orc/TestCases/Generic/Inputs/var-x-42.ll
+ /home/tcwg-buildbot/worker/clang-aarch64-sve-vls/stage1/./bin/clang -Wthread-safety -Wthread-safety-reference -Wthread-safety-beta -c -o /home/tcwg-buildbot/worker/clang-aarch64-sve-vls/stage1/runtimes/runtimes-bins/compiler-rt/test/orc/AARCH64LinuxConfig/TestCases/Generic/Output/lazy-link.ll.tmp/x.o /home/tcwg-buildbot/worker/clang-aarch64-sve-vls/llvm/compiler-rt/test/orc/TestCases/Generic/Inputs/var-x-42.ll
warning: overriding the module target triple with aarch64-unknown-linux-gnu [-Woverride-module]
1 warning generated.
RUN: at line 9: /home/tcwg-buildbot/worker/clang-aarch64-sve-vls/stage1/./bin/clang    -Wthread-safety -Wthread-safety-reference -Wthread-safety-beta   -c -o /home/tcwg-buildbot/worker/clang-aarch64-sve-vls/stage1/runtimes/runtimes-bins/compiler-rt/test/orc/AARCH64LinuxConfig/TestCases/Generic/Output/lazy-link.ll.tmp/main.o /home/tcwg-buildbot/worker/clang-aarch64-sve-vls/llvm/compiler-rt/test/orc/TestCases/Generic/lazy-link.ll
+ /home/tcwg-buildbot/worker/clang-aarch64-sve-vls/stage1/./bin/clang -Wthread-safety -Wthread-safety-reference -Wthread-safety-beta -c -o /home/tcwg-buildbot/worker/clang-aarch64-sve-vls/stage1/runtimes/runtimes-bins/compiler-rt/test/orc/AARCH64LinuxConfig/TestCases/Generic/Output/lazy-link.ll.tmp/main.o /home/tcwg-buildbot/worker/clang-aarch64-sve-vls/llvm/compiler-rt/test/orc/TestCases/Generic/lazy-link.ll
warning: overriding the module target triple with aarch64-unknown-linux-gnu [-Woverride-module]
1 warning generated.
RUN: at line 10: /home/tcwg-buildbot/worker/clang-aarch64-sve-vls/stage1/./bin/llvm-jitlink -orc-runtime=/home/tcwg-buildbot/worker/clang-aarch64-sve-vls/stage1/./lib/../lib/clang/20/lib/aarch64-unknown-linux-gnu/liborc_rt.a -noexec -show-linked-files /home/tcwg-buildbot/worker/clang-aarch64-sve-vls/stage1/runtimes/runtimes-bins/compiler-rt/test/orc/AARCH64LinuxConfig/TestCases/Generic/Output/lazy-link.ll.tmp/main.o -lazy /home/tcwg-buildbot/worker/clang-aarch64-sve-vls/stage1/runtimes/runtimes-bins/compiler-rt/test/orc/AARCH64LinuxConfig/TestCases/Generic/Output/lazy-link.ll.tmp/foo.o      -lazy /home/tcwg-buildbot/worker/clang-aarch64-sve-vls/stage1/runtimes/runtimes-bins/compiler-rt/test/orc/AARCH64LinuxConfig/TestCases/Generic/Output/lazy-link.ll.tmp/x.o | FileCheck /home/tcwg-buildbot/worker/clang-aarch64-sve-vls/llvm/compiler-rt/test/orc/TestCases/Generic/lazy-link.ll
+ /home/tcwg-buildbot/worker/clang-aarch64-sve-vls/stage1/./bin/llvm-jitlink -orc-runtime=/home/tcwg-buildbot/worker/clang-aarch64-sve-vls/stage1/./lib/../lib/clang/20/lib/aarch64-unknown-linux-gnu/liborc_rt.a -noexec -show-linked-files /home/tcwg-buildbot/worker/clang-aarch64-sve-vls/stage1/runtimes/runtimes-bins/compiler-rt/test/orc/AARCH64LinuxConfig/TestCases/Generic/Output/lazy-link.ll.tmp/main.o -lazy /home/tcwg-buildbot/worker/clang-aarch64-sve-vls/stage1/runtimes/runtimes-bins/compiler-rt/test/orc/AARCH64LinuxConfig/TestCases/Generic/Output/lazy-link.ll.tmp/foo.o -lazy /home/tcwg-buildbot/worker/clang-aarch64-sve-vls/stage1/runtimes/runtimes-bins/compiler-rt/test/orc/AARCH64LinuxConfig/TestCases/Generic/Output/lazy-link.ll.tmp/x.o
+ FileCheck /home/tcwg-buildbot/worker/clang-aarch64-sve-vls/llvm/compiler-rt/test/orc/TestCases/Generic/lazy-link.ll
llvm-jitlink error: Symbols not found: [ __orc_rt_reentry ]
llvm-jitlink: ../llvm/llvm/lib/ExecutionEngine/Orc/Core.cpp:1480: void llvm::orc::JITDylib::detachQueryHelper(AsynchronousSymbolQuery &, const SymbolNameSet &): Assertion `MaterializingInfos.count(QuerySymbol) && "QuerySymbol does not have MaterializingInfo"' failed.
PLEASE submit a bug report to https://github.com/llvm/llvm-project/issues/ and include the crash backtrace.
Stack dump:
0.	Program arguments: /home/tcwg-buildbot/worker/clang-aarch64-sve-vls/stage1/./bin/llvm-jitlink -orc-runtime=/home/tcwg-buildbot/worker/clang-aarch64-sve-vls/stage1/./lib/../lib/clang/20/lib/aarch64-unknown-linux-gnu/liborc_rt.a -noexec -show-linked-files /home/tcwg-buildbot/worker/clang-aarch64-sve-vls/stage1/runtimes/runtimes-bins/compiler-rt/test/orc/AARCH64LinuxConfig/TestCases/Generic/Output/lazy-link.ll.tmp/main.o -lazy /home/tcwg-buildbot/worker/clang-aarch64-sve-vls/stage1/runtimes/runtimes-bins/compiler-rt/test/orc/AARCH64LinuxConfig/TestCases/Generic/Output/lazy-link.ll.tmp/foo.o -lazy /home/tcwg-buildbot/worker/clang-aarch64-sve-vls/stage1/runtimes/runtimes-bins/compiler-rt/test/orc/AARCH64LinuxConfig/TestCases/Generic/Output/lazy-link.ll.tmp/x.o
 #0 0x0000aaaaca1684d0 llvm::sys::PrintStackTrace(llvm::raw_ostream&, int) (/home/tcwg-buildbot/worker/clang-aarch64-sve-vls/stage1/./bin/llvm-jitlink+0x29d84d0)
 #1 0x0000aaaaca1664cc llvm::sys::RunSignalHandlers() (/home/tcwg-buildbot/worker/clang-aarch64-sve-vls/stage1/./bin/llvm-jitlink+0x29d64cc)
 #2 0x0000aaaaca168ba4 SignalHandler(int) Signals.cpp:0:0
 #3 0x0000ffffa79579d0 (linux-vdso.so.1+0x9d0)
 #4 0x0000ffffa74bf200 __pthread_kill_implementation ./nptl/pthread_kill.c:44:76
 #5 0x0000ffffa747a67c gsignal ./signal/../sysdeps/posix/raise.c:27:6
 #6 0x0000ffffa7467130 abort ./stdlib/abort.c:81:7
 #7 0x0000ffffa7473fd0 __assert_fail_base ./assert/assert.c:89:7
 #8 0x0000ffffa7474040 __assert_perror_fail ./assert/assert-perr.c:31:1
 #9 0x0000aaaac9f57398 llvm::orc::JITDylib::detachQueryHelper(llvm::orc::AsynchronousSymbolQuery&, llvm::DenseSet<llvm::orc::SymbolStringPtr, llvm::DenseMapInfo<llvm::orc::SymbolStringPtr, void>> const&) (/home/tcwg-buildbot/worker/clang-aarch64-sve-vls/stage1/./bin/llvm-jitlink+0x27c7398)
#10 0x0000aaaac9f56fc8 llvm::orc::AsynchronousSymbolQuery::detach() (/home/tcwg-buildbot/worker/clang-aarch64-sve-vls/stage1/./bin/llvm-jitlink+0x27c6fc8)
#11 0x0000aaaac9f7f3c0 llvm::orc::ExecutionSession::IL_failSymbols(llvm::orc::JITDylib&, std::vector<llvm::orc::SymbolStringPtr, std::allocator<llvm::orc::SymbolStringPtr>> const&)::$_0::operator()(llvm::orc::JITDylib::MaterializingInfo&) const Core.cpp:0:0
#12 0x0000aaaac9f6471c llvm::orc::ExecutionSession::IL_failSymbols(llvm::orc::JITDylib&, std::vector<llvm::orc::SymbolStringPtr, std::allocator<llvm::orc::SymbolStringPtr>> const&) (/home/tcwg-buildbot/worker/clang-aarch64-sve-vls/stage1/./bin/llvm-jitlink+0x27d471c)
#13 0x0000aaaac9f7f88c llvm::orc::ExecutionSession::OL_notifyFailed(llvm::orc::MaterializationResponsibility&) (/home/tcwg-buildbot/worker/clang-aarch64-sve-vls/stage1/./bin/llvm-jitlink+0x27ef88c)
#14 0x0000aaaac9fd94e0 llvm::orc::LazyReexportsManager::emitRedirectableSymbols(std::unique_ptr<llvm::orc::MaterializationResponsibility, std::default_delete<llvm::orc::MaterializationResponsibility>>, llvm::DenseMap<llvm::orc::SymbolStringPtr, llvm::orc::SymbolAliasMapEntry, llvm::DenseMapInfo<llvm::orc::SymbolStringPtr, void>, llvm::detail::DenseMapPair<llvm::orc::SymbolStringPtr, llvm::orc::SymbolAliasMapEntry>>, llvm::Expected<std::vector<llvm::orc::ExecutorSymbolDef, std::allocator<llvm::orc::ExecutorSymbolDef>>>) (/home/tcwg-buildbot/worker/clang-aarch64-sve-vls/stage1/./bin/llvm-jitlink+0x28494e0)
#15 0x0000aaaac9fde5f4 void llvm::detail::UniqueFunctionBase<void, llvm::Expected<std::vector<llvm::orc::ExecutorSymbolDef, std::allocator<llvm::orc::ExecutorSymbolDef>>>>::CallImpl<llvm::orc::LazyReexportsManager::emitReentryTrampolines(std::unique_ptr<llvm::orc::MaterializationResponsibility, std::default_delete<llvm::orc::MaterializationResponsibility>>, llvm::DenseMap<llvm::orc::SymbolStringPtr, llvm::orc::SymbolAliasMapEntry, llvm::DenseMapInfo<llvm::orc::SymbolStringPtr, void>, llvm::detail::DenseMapPair<llvm::orc::SymbolStringPtr, llvm::orc::SymbolAliasMapEntry>>)::$_0>(void*, llvm::Expected<std::vector<llvm::orc::ExecutorSymbolDef, std::allocator<llvm::orc::ExecutorSymbolDef>>>&) LazyReexports.cpp:0:0
#16 0x0000aaaac9fd3268 void llvm::detail::UniqueFunctionBase<void, llvm::Expected<llvm::DenseMap<llvm::orc::SymbolStringPtr, llvm::orc::ExecutorSymbolDef, llvm::DenseMapInfo<llvm::orc::SymbolStringPtr, void>, llvm::detail::DenseMapPair<llvm::orc::SymbolStringPtr, llvm::orc::ExecutorSymbolDef>>>>::CallImpl<llvm::orc::JITLinkReentryTrampolines::emit(llvm::IntrusiveRefCntPtr<llvm::orc::ResourceTracker>, unsigned long, llvm::unique_function<void (llvm::Expected<std::vector<llvm::orc::ExecutorSymbolDef, std::allocator<llvm::orc::ExecutorSymbolDef>>>)>)::$_0>(void*, llvm::Expected<llvm::DenseMap<llvm::orc::SymbolStringPtr, llvm::orc::ExecutorSymbolDef, llvm::DenseMapInfo<llvm::orc::SymbolStringPtr, void>, llvm::detail::DenseMapPair<llvm::orc::SymbolStringPtr, llvm::orc::ExecutorSymbolDef>>>&) JITLinkReentryTrampolines.cpp:0:0
#17 0x0000aaaac9f5679c llvm::orc::AsynchronousSymbolQuery::handleFailed(llvm::Error) (/home/tcwg-buildbot/worker/clang-aarch64-sve-vls/stage1/./bin/llvm-jitlink+0x27c679c)
#18 0x0000aaaac9f7fa94 llvm::orc::ExecutionSession::OL_notifyFailed(llvm::orc::MaterializationResponsibility&) (/home/tcwg-buildbot/worker/clang-aarch64-sve-vls/stage1/./bin/llvm-jitlink+0x27efa94)
#19 0x0000aaaaca01d184 llvm::orc::ObjectLinkingLayerJITLinkContext::notifyFailed(llvm::Error) ObjectLinkingLayer.cpp:0:0
#20 0x0000aaaac9d2a3b8 void llvm::detail::UniqueFunctionBase<void, llvm::Error>::CallImpl<llvm::jitlink::JITLinkerBase::abandonAllocAndBailOut(std::unique_ptr<llvm::jitlink::JITLinkerBase, std::default_delete<llvm::jitlink::JITLinkerBase>>, llvm::Error)::$_0>(void*, llvm::Error&) JITLinkGeneric.cpp:0:0
#21 0x0000aaaaca006bbc llvm::orc::InProcessMemoryMapper::release(llvm::ArrayRef<llvm::orc::ExecutorAddr>, llvm::unique_function<void (llvm::Error)>) (/home/tcwg-buildbot/worker/clang-aarch64-sve-vls/stage1/./bin/llvm-jitlink+0x2876bbc)
...

@llvm-ci
Copy link
Collaborator

llvm-ci commented Dec 8, 2024

LLVM Buildbot has detected a new failure on builder lld-x86_64-win running on as-worker-93 while building compiler-rt,llvm at step 7 "test-build-unified-tree-check-all".

Full details are available at: https://lab.llvm.org/buildbot/#/builders/146/builds/1782

Here is the relevant piece of the build log for the reference
Step 7 (test-build-unified-tree-check-all) failure: test (failure)
******************** TEST 'LLVM-Unit :: Support/./SupportTests.exe/38/87' FAILED ********************
Script(shard):
--
GTEST_OUTPUT=json:C:\a\lld-x86_64-win\build\unittests\Support\.\SupportTests.exe-LLVM-Unit-23640-38-87.json GTEST_SHUFFLE=0 GTEST_TOTAL_SHARDS=87 GTEST_SHARD_INDEX=38 C:\a\lld-x86_64-win\build\unittests\Support\.\SupportTests.exe
--

Script:
--
C:\a\lld-x86_64-win\build\unittests\Support\.\SupportTests.exe --gtest_filter=ProgramEnvTest.CreateProcessLongPath
--
C:\a\lld-x86_64-win\llvm-project\llvm\unittests\Support\ProgramTest.cpp(160): error: Expected equality of these values:
  0
  RC
    Which is: -2

C:\a\lld-x86_64-win\llvm-project\llvm\unittests\Support\ProgramTest.cpp(163): error: fs::remove(Twine(LongPath)): did not return errc::success.
error number: 13
error message: permission denied



C:\a\lld-x86_64-win\llvm-project\llvm\unittests\Support\ProgramTest.cpp:160
Expected equality of these values:
  0
  RC
    Which is: -2

C:\a\lld-x86_64-win\llvm-project\llvm\unittests\Support\ProgramTest.cpp:163
fs::remove(Twine(LongPath)): did not return errc::success.
error number: 13
error message: permission denied




********************


lhames added a commit that referenced this pull request Dec 9, 2024
This reapplies 570ecdc, which was reverted in 6073dd9 due to bot
failures.

The test failures on Linux were fixed by:
1. Removing an overly restrictive assertion (query dependence on a symbol no
longer implies a MaterializingInfo for that symbol)
2. Adding reentry and resolver files to the ORC runtime CMakeLists.txt for
Linux.
3. Adding the __orc_rt_reentry -> __orc_rt_sysv_reentry alias to ELFNixPlatform.
lhames added a commit that referenced this pull request Dec 9, 2024
…ith fixes"

This reverts commit 41652c6 while I investigate
more bot failures.
lhames added a commit that referenced this pull request Dec 9, 2024
…xes.

This re-applies 570ecdc, which was reverted in 74e8a37 due to bot
failures. This commit renames sysv_resolve.cpp to resolve.cpp, which was the
cause of the config errors.
broxigarchen pushed a commit to broxigarchen/llvm-project that referenced this pull request Dec 10, 2024
llvm#118923)

…d reentry.

These utilities provide new, more generic and easier to use support for
lazy compilation in ORC.

LazyReexportsManager is an alternative to LazyCallThroughManager. It
takes requests for lazy re-entry points in the form of an alias map:
lazy-reexports = {
  ( <entry point symbol llvm#1>, <implementation symbol llvm#1> ),
  ( <entry point symbol llvm#2>, <implementation symbol llvm#2> ),
  ...
  ( <entry point symbol #n>, <implementation symbol #n> )
}

LazyReexportsManager then:
1. binds the entry points to the implementation names in an internal
table.
2. creates a JIT re-entry trampoline for each entry point.
3. creates a redirectable symbol for each of the entry point name and
binds redirectable symbol to the corresponding reentry trampoline.

When an entry point symbol is first called at runtime (which may be on
any thread of the JIT'd program) it will re-enter the JIT via the
trampoline and trigger a lookup for the implementation symbol stored in
LazyReexportsManager's internal table. When the lookup completes the
entry point symbol will be updated (via the RedirectableSymbolManager)
to point at the implementation symbol, and execution will proceed to the
implementation symbol.

Actual construction of the re-entry trampolines and redirectable symbols
is delegated to an EmitTrampolines functor and the
RedirectableSymbolsManager respectively.

JITLinkReentryTrampolines.h provides a JITLink-based implementation of
the EmitTrampolines functor. (AArch64 only in this patch, but other
architectures will be added in the near future).

Register state save and reentry functionality is added to the ORC
runtime in the __orc_rt_sysv_resolve and __orc_rt_resolve_implementation
functions (the latter is generic, the former will need custom
implementations for each ABI and architecture to be supported, however
this should be much less effort than the existing OrcABISupport
approach, since the ORC runtime allows this code to be written as native
assembly).

The resulting system:
1. Works equally well for in-process and out-of-process JIT'd code.
2. Requires less boilerplate to set up.

Given an ObjectLinkingLayer and PlatformJD (JITDylib containing the ORC
runtime), setup is just:

```c++
auto RSMgr = JITLinkRedirectableSymbolManager::Create(OLL);
if (!RSMgr)
  return RSMgr.takeError();

auto LRMgr = createJITLinkLazyReexportsManager(OLL, **RSMgr, PlatformJD);
if (!LRMgr)
  return LRMgr.takeError();
```

after which lazy reexports can be introduced with:

```c++
JD.define(lazyReexports(LRMgr, <alias map>));
```

LazyObectLinkingLayer is updated to use this new method, but the LLVM-IR
level CompileOnDemandLayer will continue to use LazyCallThroughManager
and OrcABISupport until the new system supports a wider range of
architectures and ABIs.

The llvm-jitlink utility's -lazy option now uses the new scheme. Since
it depends on the ORC runtime, the lazy-link.ll testcase and associated
helpers are moved to the ORC runtime.
broxigarchen pushed a commit to broxigarchen/llvm-project that referenced this pull request Dec 10, 2024
broxigarchen pushed a commit to broxigarchen/llvm-project that referenced this pull request Dec 10, 2024
…fixes

This reapplies 570ecdc, which was reverted in 6073dd9 due to bot
failures.

The test failures on Linux were fixed by:
1. Removing an overly restrictive assertion (query dependence on a symbol no
longer implies a MaterializingInfo for that symbol)
2. Adding reentry and resolver files to the ORC runtime CMakeLists.txt for
Linux.
3. Adding the __orc_rt_reentry -> __orc_rt_sysv_reentry alias to ELFNixPlatform.
broxigarchen pushed a commit to broxigarchen/llvm-project that referenced this pull request Dec 10, 2024
…" with fixes"

This reverts commit 41652c6 while I investigate
more bot failures.
broxigarchen pushed a commit to broxigarchen/llvm-project that referenced this pull request Dec 10, 2024
…h fixes.

This re-applies 570ecdc, which was reverted in 74e8a37 due to bot
failures. This commit renames sysv_resolve.cpp to resolve.cpp, which was the
cause of the config errors.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants