[llvm-commits] [llvm] r77499 - /llvm/trunk/utils/TableGen/AsmWriterEmitter.cpp

David Greene dag at cray.com
Fri Jul 31 11:54:55 PDT 2009


On Friday 31 July 2009 10:35, Chris Lattner wrote:

> >> Yep, that sounds like hte right thing to me.  If verbose-asm is off,
> >> outputting \t as a space or a literal \t makes sense!
> >
> > Ok, I'll get on it.
>
> Many thanks David!

Hrm.  What about this:

        .byte   0x66; leaq      foo at TLSGD(%rip), %rdi; .word    0x6666; rex64; 
call     __tls_get_addr at PLT

which is now output as this:

        .byte   0x66; leaq foo at TLSGD(%rip), %rdi; .word 0x6666; rex64; call 
__tls_get_addr at PLT

and four tests fail because they expect to see a tab between "leaq" and "foo?"

I wrote a special case in the patch to retain the tab after the mnemonic 
(before operand 1) but it doesn't catch this (and other) cases because the 
multiple instructions actually are considered many "operands" of the ".byte" 
by AsmWriter.

Is it ok if I just change the tests to look for a space instead?

This is kind of an ugly way to output a mix of data and instructions.  I 
wonder if we can invent a better way to support this in the future.

                               -Dave



More information about the llvm-commits mailing list