[LLVMdev] Function-at-a-time Processing

Duncan Sands baldrick at free.fr
Thu Jul 29 00:25:30 PDT 2010


Hi David,

> Not a dumb question.  The problem is that we can't actually create the
> entire LLVM IR to dump it to a file.  It's too big.  Instead, what we
> did with 2.5 was create the module-level data (globals, etc.)  and then
> handled each function separately: translate to LLVM IR, optimize, print
> asm and delete.  We never had LLVM IR for the entire translation unit at
> any time so we could not create an LLVM IR file if we wanted to.  I did
> hack in a special mode to hold all the LLVM IR so we could dump it out.
> But this was for debugging purposes and wouldn't work with some customer
> codes which are very large.

llvm-gcc has code (turned off) to do exactly the same thing.  Chris added it,
but I don't think he ever got it working reliably.  I don't know what the
problem was.

Ciao,

Duncan.



More information about the llvm-dev mailing list