[LLVMdev] [PATCH] Support asm comment output

Mark Shannon marks at dcs.gla.ac.uk
Tue Jul 14 02:52:45 PDT 2009

David Greene wrote:
> On Monday 13 July 2009 13:29, David Greene wrote:
>> I forgot about the LLVM instruction information.  That's something that
>> can't be synthesized by the asmprinter.  Again, we only emit some of this
>> with special debug flags so we don't carry the original IR around in
>> comments all the time.  :)
> If the FI question can be answered (how do we know it's a spill slot)?
> Then the above is the only use I think we don't have a long-term answer for.
> I don't see how asmprinter can synthesize this information.
> Line numbers are still a problem because we need to propagate the information
> from LLVM IR to MachineInstrs and there's currently no DebugLoc information
> in LLVM IR Instructions.  I'll take a look at the existing DebugLoc and see if 
> we can put our LLVM IR line number info there instead of printing it to 
> comments early.
> If it's any comfort, we've been running with this MachineInstr for a
> very long time and done multiple public releases.  We always go through
> asm to do our x86 compiles and no one has ever complained about compile
> time or memory usage in this area (legalize is actually our biggest problem).  
> And we compile HUGE source files containing very large functions.
> Of course, our requirements aren't the same as everyone else's requirements
> so I understand that there may be tighter tolerances in some use cases.  
> Examples of where the MachineInstr comments might be a problem would be 
> helpful.

In JIT compilers anything that slows down compilation is BAD. Plus most 
VMs already have there own debug/introspection infrastructure, so none 
is required in the machine code.
Also when translating from a very high level language to llvm, there 
tends to be a *lot* of instructions, so keeping them small is important.

I have posted in the past lamenting llvm slow compilation and it has got 
faster since.

So, thanks to everyone for making the machine-code generation faster,
and please, keep making it faster :)

>                               -Dave
> _______________________________________________
> 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