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

Reid Kleckner rnk at google.com
Mon Feb 24 23:50:10 PST 2014


I work on LLVM and used to work on Dr. Memory, a memory debugger similar to
Valgrind's Memcheck.  I think using LLVM as a Valgrind backend is probably
feasible, but I highly doubt that LLVM will be able to generate code
quickly enough to make it usable.  It might be worthwhile as a second level
JIT, but usually the major downside to DBI tools is the startup overhead,
and LLVM code generation can only increase that.

That doesn't mean it wouldn't be a fun project, though.  :)


On Mon, Feb 24, 2014 at 10:51 AM, Denis Steckelmacher
<steckdenis at yahoo.fr>wrote:

> 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
> _______________________________________________
> LLVM Developers mailing list
> LLVMdev at cs.uiuc.edu         http://llvm.cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20140224/3c90b311/attachment.html>


More information about the llvm-dev mailing list