[llvm-dev] Help with segfault in llvm_shutdown with LLVM 5.0 Release build
Diptorup Deb via llvm-dev
llvm-dev at lists.llvm.org
Tue Sep 19 18:14:18 PDT 2017
On 09/19/2017 01:49 PM, Friedman, Eli wrote:
> See https://reviews.llvm.org/D33515 for context. I thought we fixed the
> problem, but it looks like you found some other way to trigger it.
Thanks for the reference.
I realized after sending the last email that I missed two details.
First, our module is an out-of-tree pass. Second, we are using
add_library(Canary MODULE Canary.cpp).
Using the CMakeLists.txt from the patch you referred to as a reference I
tried couple of changes in our CMakeLists.txt.
A) Changed the add_library command to SHARED_LIB
B) Added target_link_libraries(CanaryPass LLVMipo)
Now I am getting the following error:
opt: CommandLine Error: Option 'enable-partial-inlining' registered more
LLVM ERROR: inconsistency in registered CommandLine options
Additionally, in case it is useful in identifying the issue. My
development environment has two LLVM 5.0 installs, a Debug and a Release
mode respectively. The problem happens when I build the module with the
Release mode clang, while also using the Release mode install path as my
LLVM_ROOT. If I use the Debug mode install path as the LLVM_ROOT, then
things work fine.
Also, I was able to build our module using GCC 6.3 and then load the
module into the Release mode's opt, without triggering the segfault.
More information about the llvm-dev