[PATCH] Inserting directives directly after inline asm blocks

Jack Carter Jack.Carter at imgtec.com
Thu Apr 25 13:00:25 PDT 2013


I guess I am missing something here.

I do not expect the code generator to ever to support .set reorder. It is due to ancient compilers not handling delay slots in Mips and leaving that to the assembler. The assembler handles the state of reorder/noreorder on its own just as it will handle pushed and popped states in the future. This emission of the set reorder/noreorder is just to feed the assembler what it expects.

I don't see the need to create the new methods, but I do want to know why I am wrong ;-)

Jack
________________________________________
From: Rafael EspĂ­ndola [rafael.espindola at gmail.com]
Sent: Thursday, April 25, 2013 12:36 PM
To: Jack Carter
Cc: Richard Sandiford; llvm-commits at cs.uiuc.edu
Subject: Re: [PATCH] Inserting directives directly after inline asm blocks

On 25 April 2013 11:35, Jack Carter <Jack.Carter at imgtec.com> wrote:
> Rafael,
>
> Thanks for looking at this.
>
> Yes, it is on our road map for llvm-mc to support .set reorder and to have that as the defacto default for historical purposes.
>
> I don't understand the other suggestions though. I thought I generated this codegen operation like the the others. How is this different? Is there a precedent? Some example that I can model?

There is only one suggestion really, not using hasRawTextSupport.

You would need a emitReorder and emitNoReorder methods. The asm
implementation just prints ".set reorder" and ".set noreorder". The
object implementation for emitNoReorder is a nop (that is the only
supported mode right now) and emitReorder produces a "not implemented
yet error.

> Jack

Cheers,
Rafael





More information about the llvm-commits mailing list