-
-
Notifications
You must be signed in to change notification settings - Fork 5.5k
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
libLLVM and libjulia-codegen seem to use different TypeID's #49121
Comments
Why is it getting |
The issue here is not that it's getting The issue is that seemingly |
|
Ah, so the question is how we accidentally forced it to be local instead of weak when linking our libjulia-codegen. Maybe a fault of our expmap file? |
The dynamic linker needs to unify `llvm::Any::TypeId` across DSOs. In our case `libjulia-codegen` and `libLLVM`. See https://github.com/llvm/llvm-project/blob/2bc4c3e920ee078ef2879b00c40440e0867f0b9e/llvm/include/llvm/ADT/Any.h#L30 Fixes: #49121
The dynamic linker needs to unify `llvm::Any::TypeId` across DSOs. In our case `libjulia-codegen` and `libLLVM`. See https://github.com/llvm/llvm-project/blob/2bc4c3e920ee078ef2879b00c40440e0867f0b9e/llvm/include/llvm/ADT/Any.h#L30 Fixes: #49121
The dynamic linker needs to unify `llvm::Any::TypeId` across DSOs. In our case `libjulia-codegen` and `libLLVM`. See https://github.com/llvm/llvm-project/blob/2bc4c3e920ee078ef2879b00c40440e0867f0b9e/llvm/include/llvm/ADT/Any.h#L30 Fixes: #49121
The dynamic linker needs to unify `llvm::Any::TypeId` across DSOs. In our case `libjulia-codegen` and `libLLVM`. See https://github.com/llvm/llvm-project/blob/2bc4c3e920ee078ef2879b00c40440e0867f0b9e/llvm/include/llvm/ADT/Any.h#L30 Fixes: #49121 (cherry picked from commit d8fa3c8)
The dynamic linker needs to unify `llvm::Any::TypeId` across DSOs. In our case `libjulia-codegen` and `libLLVM`. See https://github.com/llvm/llvm-project/blob/2bc4c3e920ee078ef2879b00c40440e0867f0b9e/llvm/include/llvm/ADT/Any.h#L30 Fixes: JuliaLang#49121
The dynamic linker needs to unify `llvm::Any::TypeId` across DSOs. In our case `libjulia-codegen` and `libLLVM`. See https://github.com/llvm/llvm-project/blob/2bc4c3e920ee078ef2879b00c40440e0867f0b9e/llvm/include/llvm/ADT/Any.h#L30 Fixes: #49121 (cherry picked from commit d8fa3c8)
I was confused why #49121 was re-occuring locally, until I noticed this file was not getting rebuilt.
I was confused why JuliaLang#49121 was re-occuring locally, until I noticed this file was not getting rebuilt.
@pchintalapudi just now showed me a bug where we hit the assertion in https://github.com/llvm/llvm-project/blob/f28c006a5895fc0e329fe15fead81e37457cb1d1/llvm/lib/Passes/StandardInstrumentations.cpp#L366
On inspection we see a TypeID corresponding with Module and the allocation point of that typeid is in
libjulia-codegen
.Tracing the disassembly we saw a load from a global variable and that the ID for disagreed. Now of note is that on my system build of libLLVM:
u
stands forgnu unique
. Now we build our version of libLLVM with-fno-gnu-unique
to avoid issues around multiple different copies of libLLVM being loaded.https://bugs.llvm.org/show_bug.cgi?id=48221
So we seem to have an issue that
libjulia-codegen
andlibLLVM
resolve the same weak symbol to different things...x-ref: llvm/llvm-project#47565
The text was updated successfully, but these errors were encountered: