[LLVMdev] runtime optimizations in LLVM

Kamal R. Prasad kamalpr at yahoo.com
Sun Jul 6 22:12:03 PDT 2008




--- On Thu, 1/3/08, Gordon Henriksen <gordonhenriksen at mac.com> wrote:
> 
> On Jan 2, 2008, at 05:57, Kamal R. Prasad wrote:
> 
> > (im new to LLVM , so pl excuse if this is a naive q).
> 
> Welcome!
> 
thanks

> > Can someone provide info on what runtime optimizations
> are done in  
> > LLVM?
> 
> You can use any of LLVM's optimizing transformations in
> a JIT context.  
> There's a list here:
> 

> http://llvm.org/docs/Passes.html
> 
> Unlike Java, you're in the driver's seat. You can
> determine which  
> optimizations are applied to your code, and when.
> 

yes -but can you tell me which optimizations have been proven to be more effective when applied at run time i.e. when input data is available?

> > do you have something along lines of JVM's hotspot
> feature?
> 
> You can recompile a function in the JIT at any time.
> 
I am interested in optimizing code that was compiled using a C/C++ compiler. So, I will have binaries but probably not the source code.

> http://llvm.org/doxygen/classllvm_1_1ExecutionEngine.html#a18
> 
> However, LLVM does not yet have support frame rewriting;
> you cannot re- 
> optimize and resume a function that is on the call stack.
> 
> > How efficient is the optimized code vis-a-vis native
> code?
> 
> It is native code! :) LLVM is also an excellent static
> compiler (see  
> llvm-gcc, clang).
> 
can I pull out the backend part which is used for runtime optimization?

thanks
kamal

> — Gordon


      




More information about the llvm-dev mailing list