| Issue |
55386
|
| Summary |
IMAGE_REL_AMD64_ADDR32NB relocation fatal error
|
| Labels |
|
| Assignees |
|
| Reporter |
pierre-mercs
|
After updating our code from LLVM3.5 to LLVM13, we encounter an unpredictable and frequent fatal error from "lib\ExecutionEngine\RuntimeDyld\Targets\RuntimeDyldCOFFX86_64.h:117", apparently in .pdata sections.
Our program lets the user enter code in a custom language. We then begin execution, lazily compiling that code with MCJIT as we find out what is actually needed.
We used to do it with a single LLVM module, but LLVM won't let us do that anymore, we need to close the module and open a new one everytime a function is compiled. We adapted our code to LLVM13+ with inspiration from the kaleidoscope tutorial.
When performing relocations, .pdata sections addresses are sometimes less than the module's ImageBase, leading to this fatal_error.
Comments hint at the need to use an ordered section layout, is there one readily available ?
Is there an obvious point we are missing ?
Is it a known LLVM limitation or bug ?
_______________________________________________
llvm-bugs mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs