- Index
- » Developer
- » OpenModelica development
- » LLVM dynamic compilation
LLVM dynamic compilation
LLVM dynamic compilation
Is anybody works on integrating LLVM JIT/dynamic compilation features in OpenModelica ?
Using LLVM in background can avoid large time of model compiling via gcc: every module can be
compiled separately and in background with user continous works. Am I right ?
Or in any case final linkage stage must be done in RAM packing object code for models to work together ?
Is dynamic compilation (triggered by object modifucation) applicable at all for Modelica language realisation ?
Re: LLVM dynamic compilation
gcc can also run in the background and JIT is not really interesting. LLVM is interesting for other reasons: generating LLVM bitcode in memory instead of going through C-code.
- sjoelund.se
- 1700 Posts
Re: LLVM dynamic compilation
Yes, that's what I had in mind -- dynamic compilation into memory using LLVM JIT low-level objects (vectors, non-C assembly-like functions, command basic blocks), and using some LLVM optimizer passes, triggered by Modelica objects modifications (user modify model -> Modelica engine triggers only this object recompilation in memory in background thread)
Re: LLVM dynamic compilation
dponyatov wrote:
Modelica engine triggers only this object recompilation in memory in background thread
That you cannot really do in Modelica since the generated code depends on the full model. (And if you could, you could do the same with GCC generating object-files ready to be linked).
- sjoelund.se
- 1700 Posts
- Index
- » Developer
- » OpenModelica development
- » LLVM dynamic compilation