[LLVMdev] VMKit: msil optimization

RĂ¼diger Klaehn rklaehn at googlemail.com
Sat May 16 02:58:09 PDT 2009

Hello all.
is it possible to use LLVM to optimize existing .NET assemblies?

Basically doing the following:

- read in MSIL and convert into LLVM internal representation
- perform global optimizations on LLVM internal representation
- write out optimized MSIL using the existing LLVM backend

I presume that the capability to convert MSIL into LLVM internal
representation exists somewhere in VMKit.

The reason I need this is the following:

I have a very large C# application that is in desperate need of some
optimization. The problem is that the microsoft C# compiler does almost no
optimization but relies on the MS JIT compiler to do it. But the MS JIT
compiler does not do any agressive optimization, especially inlining and
subsequent optimizations. So the generated machine code is just atrocious
and performance is much lower than expected.

I know that optimizing on a MSIL level will somewhat alleviate the problem
since the microsoft C++/CLR compiler does MSIL level optimizations and
produces much faster code in some tests I have written. But rewriting the
application in question in C++/CLR is not an option.

best regards,

RĂ¼diger Klaehn
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20090516/d11cbc80/attachment.html>

More information about the llvm-dev mailing list