[LLVMdev] [GSoC 2014] Using LLVM as a code-generation backend for Valgrind

Denis Steckelmacher steckdenis at yahoo.fr
Mon Feb 24 10:51:21 PST 2014


Hi,

I've seen on the LLVM's Open Projet Page [1] an idea about using LLVM to 
generate native code in Valgrind. For what I know, Valgrind uses libVEX 
to translate native instructions into a bitcode, used to add the 
instrumentation and then translated back to native code for execution.

Valgrind and LLVM are two tools that I use nearly every day. I'm also 
very interested in code generation and optimization, so adding the 
possibility to use LLVM to generate native code in libVEX interests me 
very much. Is it a good idea? Could a LLVM backend bring something 
useful to Valgrind (for instance, faster execution or more targets 
supported) ?

I've sent this message to the LLVM and Valgrind mailing lists because 
I've originally found the idea on the LLVM's website, but Valgrind is 
the object of the idea. By the way, does anyone already know if LLVM or 
Valgrind will be a mentoring organization for this year's GSoC?

You can find in [2] the list of my past projects. During the GSoC 2011, 
I had the chance to use the Clang libraries to compile C code, and the 
LLVM JIT to execute it (with instrumented stdlib functions). I have also 
played with the LLVM C bindings to generate code when I explored some 
parts of Mesa.

Denis Steckelmacher

[1] : http://llvm.org/OpenProjects.html#misc_new
[2] : http://steckdenis.be/page-projects.html



More information about the llvm-dev mailing list