Skip to content

--image-codegen flag segfaults #49614

@vtjnash

Description

@vtjnash
> ./julia -q --image-codegen
do something to hit compilation
(lldb) bt
* thread #1, queue = 'com.apple.main-thread', stop reason = EXC_BAD_ACCESS (code=EXC_I386_GPFLT)
  * frame #0: 0x00000001005c9687 libjulia-codegen.1.10.dylib`JuliaOJIT::addModule(llvm::orc::ThreadSafeModule) [inlined] unsigned long std::__1::__cxx_atomic_fetch_sub[abi:v15006]<unsigned long>(__a=<unavailable>, __delta=1, __order=memory_order_seq_cst) at atomic:1031:12 [opt]
    frame #1: 0x00000001005c9687 libjulia-codegen.1.10.dylib`JuliaOJIT::addModule(llvm::orc::ThreadSafeModule) [inlined] std::__1::__atomic_base<unsigned long, true>::fetch_sub[abi:v15006](this=<unavailable>, __op=1, __m=memory_order_seq_cst) at atomic:1665:17 [opt]
    frame #2: 0x00000001005c9687 libjulia-codegen.1.10.dylib`JuliaOJIT::addModule(llvm::orc::ThreadSafeModule) [inlined] std::__1::__atomic_base<unsigned long, true>::operator--[abi:v15006](this=<unavailable>) at atomic:1700:57 [opt]
    frame #3: 0x00000001005c9687 libjulia-codegen.1.10.dylib`JuliaOJIT::addModule(llvm::orc::ThreadSafeModule) [inlined] llvm::orc::SymbolStringPtr::~SymbolStringPtr(this=<unavailable>) at SymbolStringPool.h:92:7 [opt]
    frame #4: 0x00000001005c967d libjulia-codegen.1.10.dylib`JuliaOJIT::addModule(llvm::orc::ThreadSafeModule) [inlined] llvm::orc::SymbolStringPtr::~SymbolStringPtr(this=<unavailable>) at SymbolStringPool.h:89:22 [opt]
    frame #5: 0x00000001005c967d libjulia-codegen.1.10.dylib`JuliaOJIT::addModule(llvm::orc::ThreadSafeModule) at DenseMap.h:370:22 [opt]
    frame #6: 0x00000001005c965b libjulia-codegen.1.10.dylib`JuliaOJIT::addModule(llvm::orc::ThreadSafeModule) [inlined] llvm::DenseMap<llvm::orc::SymbolStringPtr, llvm::JITEvaluatedSymbol, llvm::DenseMapInfo<llvm::orc::SymbolStringPtr, void>, llvm::detail::DenseMapPair<llvm::orc::SymbolStringPtr, llvm::JITEvaluatedSymbol> >::~DenseMap(this=<unavailable>) at DenseMap.h:755:11 [opt]
    frame #7: 0x00000001005c965b libjulia-codegen.1.10.dylib`JuliaOJIT::addModule(llvm::orc::ThreadSafeModule) [inlined] llvm::DenseMap<llvm::orc::SymbolStringPtr, llvm::JITEvaluatedSymbol, llvm::DenseMapInfo<llvm::orc::SymbolStringPtr, void>, llvm::detail::DenseMapPair<llvm::orc::SymbolStringPtr, llvm::JITEvaluatedSymbol> >::~DenseMap(this=<unavailable>) at DenseMap.h:754:15 [opt]
    frame #8: 0x00000001005c965b libjulia-codegen.1.10.dylib`JuliaOJIT::addModule(this=0x0000000103015400, TSM=ThreadSafeModule @ 0x0000000110bfea48) at jitlayers.cpp:1499:20 [opt]
    frame #9: 0x00000001005d266c libjulia-codegen.1.10.dylib`jl_add_to_ee(M=0x0000600002902948, NewExports=0x0000000110bfec80, Queued=0x0000000110bfecd0, Stack=size=0) at jitlayers.cpp:1907:25 [opt]
    frame #10: 0x00000001005caa61 libjulia-codegen.1.10.dylib`_jl_compile_codeinst(codeinst=<unavailable>, src=<unavailable>, world=<unavailable>, context=<unavailable>, is_recompile=<unavailable>) at jitlayers.cpp:248:13 [opt]

Metadata

Metadata

Assignees

No one assigned

    Labels

    regressionRegression in behavior compared to a previous version

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions