Archived OpenModelica forums. Posting is disabled.

Alternative forums include GitHub discussions or StackOverflow (make sure to read the Stack Overflow rules; you need to have well-formed questions)


Forgot password? | Forgot username? | Register

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.

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).

There are 0 guests and 0 other users also viewing this topic
You are here: