Skip to content

Crash in llvm::StringTableBuilder::write #125018

Open
@AtomicOperation

Description

@AtomicOperation

LMK if this isn't the right place for this.

 #0 0x00007f61aab3bbf5 llvm::sys::PrintStackTrace(llvm::raw_ostream&, int) (/home/coder/git/roblox/master/Client/dependencies/clang/bin/../lib/libLLVM.so.19.1+0x2690bf5)
 #1 0x00007f61aab3986e llvm::sys::RunSignalHandlers() (/home/coder/git/roblox/master/Client/dependencies/clang/bin/../lib/libLLVM.so.19.1+0x268e86e)
 #2 0x00007f61aab3c27f SignalHandler(int) Signals.cpp:0:0
 #3 0x00007f61ad741420 __restore_rt (/lib/x86_64-linux-gnu/libpthread.so.0+0x14420)
 #4 0x00007f61a82f5ae6 /build/glibc-LcI20x/glibc-2.31/string/../sysdeps/x86_64/multiarch/memmove-vec-unaligned-erms.S:416:0
 #5 0x00007f61ac44391d llvm::StringTableBuilder::write(unsigned char*) const (/home/coder/git/roblox/master/Client/dependencies/clang/bin/../lib/libLLVM.so.19.1+0x3f9891d)
 #6 0x00007f61aaabfddd std::__1::__function::__func<llvm::parallelFor(unsigned long, unsigned long, llvm::function_ref<void (unsigned long)>)::$_0, std::__1::allocator<llvm::parallelFor(unsigned long, unsigned long, llvm::function_ref<void (unsigned long)>)::$_0>, void ()>::operator()() Parallel.cpp:0:0
 #7 0x00007f61aaabd590 llvm::parallelFor(unsigned long, unsigned long, llvm::function_ref<void (unsigned long)>) (/home/coder/git/roblox/master/Client/dependencies/clang/bin/../lib/libLLVM.so.19.1+0x2612590)
 #8 0x000055bb372f8c4d lld::elf::MergeNoTailSection::writeTo(unsigned char*) (/home/coder/git/roblox/master/Client/dependencies/clang/bin/ld.lld+0x3a9c4d)
 #9 0x000055bb3729d63a void lld::elf::OutputSection::writeTo<llvm::object::ELFType<(llvm::endianness)1, true>>(unsigned char*, llvm::parallel::TaskGroup&)::'lambda'(unsigned long, unsigned long)::operator()(unsigned long, unsigned long) const OutputSections.cpp:0:0
#10 0x00007f61aaabfcca std::__1::__function::__func<llvm::parallel::TaskGroup::spawn(std::__1::function<void ()>, bool)::$_0, std::__1::allocator<llvm::parallel::TaskGroup::spawn(std::__1::function<void ()>, bool)::$_0>, void ()>::operator()() Parallel.cpp:0:0
#11 0x00007f61aaabe59e llvm::parallel::detail::(anonymous namespace)::ThreadPoolExecutor::work(llvm::ThreadPoolStrategy, unsigned int) Parallel.cpp:0:0

Excluding the actual libraries (of which there are a lot) the command line is basically:

clang++
--sysroot=/home/coder/git/roblox/master/Client/dependencies/clang
-stdlib=libc++
-msse4
-D_FORTIFY_SOURCE=0
-fcolor-diagnostics
-DNDEBUG
-Wl,--no-rosegment,--build-id=uuid
-fuse-ld=lld
-lc++abi
-Wl,-z,stack-size=8388608
-fPIC
-fsanitize=address,fuzzer-no-link

This is on Ubuntu 20.04. The runtimes in the sysroot were built with musl, but the binaries weren't.

clang version 19.1.3 (https://github.rbx.com/GameEngine/llvm-project.git b4171ab8ef2bffc38b03887be39c82039d426dff)

Metadata

Metadata

Assignees

No one assigned

    Labels

    crashPrefer [crash-on-valid] or [crash-on-invalid]lld:ELFneeds-reductionLarge reproducer that should be reduced into a simpler form

    Type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions