You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The inliner optimization deletes internal functions that were inlined. The problem is that the JIT engine may still have references to such functions, in particular there might be some code in memory that references such functions (via stubs).
This bug is easy to trigger. I'll attach a simple test case.
The zip file contains the following:
module.c/bc - a module with 2 little functions to be loaded at runtime.
you may need to regenerate the .bc file with e.g. clang. I've compiled it in a
linux/x86 machine
jitbug.cpp - the test case itself. comment line 49 (i.e. disable the inliner) to make the test pass.
compile.sh - a one-linner to compile the jitbug.cpp file