[LLVMdev] [PATCH] Support asm comment output
dag at cray.com
Mon Jul 13 09:31:39 PDT 2009
On Sunday 12 July 2009 18:56, Chris Lattner wrote:
> On Jul 10, 2009, at 3:05 PM, David Greene wrote:
> > Here's the first of several patches to get comments into asm
> > output. This one
> > adds comment information to MachineInstructions and outputs it in the
> > generated AsmPrinters. This includes TableGen work to trigger the
> > comment
> > output in the right places.
> A couple of things are important to discuss:
> + dynamic_cast<formatted_raw_ostream &>(O) << Comment(*c);
> We're trying to eliminate rtti, please don't add new uses of it.
> Switching all of the asmprinter to statically use
> formatted_raw_ostream would be appropriate.
I was attempting to reduce the number of files affected, but if you
want this change I'll go ahead and do it.
> Before we settle on whether this is the right thing to do or not, can
> you talk about what comments you plan to add to these instructions?
> Comments indicating what a memoperand are (for example) don't need to
> be explicitly store in the machineinstr, they can be synthesized from
> the MachineOperand directly.
Some things we've used comments for:
- Tag instructons with source line information (customers really want this).
- Tag instructions as register spills or reloads.
- Tag instructions as top-of-loop, with nesting information (we use this
to do some static analysis on asm files).
- Tag instructions with an ID of the tblgen pattern that generated them. This
is super useful for debugging.
More information about the llvm-dev