[llvm-commits] [llvm] r114563 - in /llvm/trunk/lib/Target/ARM/AsmPrinter: ARMInstPrinter.cpp ARMInstPrinter.h

Chris Lattner clattner at apple.com
Wed Sep 22 14:57:11 PDT 2010


On Sep 22, 2010, at 2:52 PM, Jim Grosbach wrote:

> 
> On Sep 22, 2010, at 2:37 PM, Chris Lattner wrote:
> 
>> 
>> On Sep 22, 2010, at 11:37 AM, Jim Grosbach wrote:
>> 
>>> Author: grosbach
>>> Date: Wed Sep 22 13:37:14 2010
>>> New Revision: 114563
>>> 
>>> URL: http://llvm.org/viewvc/llvm-project?rev=114563&view=rev
>>> Log:
>>> Add PrintSpecial() handling for  in ARM MC instruction printer.
>> 
>> Hi Jim,
>> 
>> What instructions are using ${:comment}?  Are they pseudo instructions that should be handled at mcinst lowering time?  Would a disassembler ever create them?
>> 
> 
> It's mostly the pseudo instructions that are using it, yes. Most of those are expanded by the back end before MC lowering time, but not all.
> 
> For those that aren't (the sjlj.setjmp horrible blob stands out here), yes, they should be handled explicitly at lowering time, and finishing that up is on the agenda right after I get PLT implemented.

Ok, when you get to it, please come back to this and remove PrintSpecial.  I agree it's good to get it out of the way in the intermediate term though!

> The one exception (and the one instance that a disassembler may create) is the trap instructions (one ARM mode, one Thumb mode), which use .long/.short directives with a comment about what they're actually doing.

I think that trap should be lowered at mcinstlowering time too.  It can emit a .word and use emitcomment.  The asm string for the instruction should be empty.

Thanks Jim,

-Chris



More information about the llvm-commits mailing list