[LLVMdev] Using LLVM for decompiling.

Roel Jordans r.jordans at tue.nl
Mon May 7 05:13:28 PDT 2012


Hi James,

In short, decompilation is currently not available.

However, there was a discussion on the mailinglist a while ago where 
someone proposed a Google Summer of Code project to make it available.

You might find the resulting discussion interesting.

http://lists.cs.uiuc.edu/pipermail/llvmdev/2012-April/048617.html

Kind regards,
  Roel

On 07/05/12 12:47, James Courtier-Dutton wrote:
> Hi,
>
> I am writing a decompiler. I was wondering if some of LLVM could be
> used for a decompiler.
> There are several stages in the decompiler process.
> 1) Take binary and create a higher level representation of it. Like RTL.
> 2) The output is then broken into blocks or nodes, each block ends in
> a CALL, JMP, RET, or 2-way or multiway conditional JMP.
> 3) The blocks or nodes are then analyzed for structure in order to
> extract loop information and if...then...else information.
> 4) Once structure is obtained, data types can be analyzed.
> 5) Lastly, source code is output in C or C++ or whatever is needed.
>
> I was wondering if LLVM could help with any of these steps.
> I am looking at doing step (3) better. Can LLVM help in that area?
>
> Kind Regards
>
> James
> _______________________________________________
> LLVM Developers mailing list
> LLVMdev at cs.uiuc.edu         http://llvm.cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev



More information about the llvm-dev mailing list