[llvm-dev] ORC JIT Weekly #23 -- C API Extensions, DefinitionGenerator changes, OrcV1 removal.
Lang Hames via llvm-dev
llvm-dev at lists.llvm.org
Sun Oct 4 21:08:29 PDT 2020
The OrcV1 removal patch is still under development at
https://github.com/lhames/llvm-project/tree/orcv1-removal. I've been
working with Andres Freund to extend the C API to the point where
Postgres's JIT can migrate to it. In the process Andres tracked down a
number of bugs and memory leaks that have now been fixed -- Thanks Andres!
There is one further change that I'd like to land and test in the
orcv1-removal branch before I start moving this code to the mainline:
Updating definition generators to support asynchronous execution outside
the session lock. This change would allow definition generators to take
arbitrarily long without blocking core state updates. This is likely to be
beneficial even for simple generators (e.g.
TCPDynamicLibrarySearchGenerator, where JIT state updates could continue in
parallel with the RPC call to look up symbols in the remote). For more
complex generators (e.g. something that needs to index new source to find a
definition) this scheme may allow substantial work to be done while waiting
on generation. Doing this work on the orcv1-removal branch may save us some
churn in the C APIs on the mainline so if I can get it working there in the
next day or so then that is what I will do. Otherwise I will land
orcv1-removal more-or-less as-is this week and we can continue this on the
If you're coming to the LLVM dev meeting next week -- I'll ping the JIT BoF
topics-of-interest thread tomorrow with the current list of discussion
topics. If you've thought of anything you'd like to discuss that will be a
good opportunity to add it to the list.
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the llvm-dev