This is the mail archive of the gcc-help@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

RE: builtin assembler constraints


Hi guys,

Thanks for all your discussions. I believe its very informative, but I don't think I can follow your suggestions.
I'm not a software programmer, nor a part of the compiler design team. Your jargon and majority of asm constraint wordage in the GCC manual remains unclear for me. I'm just a GCC user, which wants to use new CPU instructions with old compiler version. I have no any intention to modify GCC by myself.

Regards
Alex. 

-----Original Message-----
From: Ian Lance Taylor [mailto:iant@google.com] 
Sent: Saturday, February 09, 2013 9:54 PM
To: Chung-Ju Wu
Cc: Georg-Johann Lay; Grobman Alexander-R53196; gcc-help@gcc.gnu.org
Subject: Re: builtin assembler constraints

On Sat, Feb 9, 2013 at 6:28 PM, Chung-Ju Wu <jasonwucj@gmail.com> wrote:
>
> I guess Georg refers to this situation:
>
> EVEN_SET_REGISTERS: $r0, $r2, $r4, $r6, ...
> ODD_SET_REGISTERS: $r1, $r3, $r5, $r7, ...
>
> And IRA/reload cannot allocate $r0+$r2 for DImode/DFmode.
> Because a reg rtx with a machine mode that specifies more than one 
> word actually represents several consecutive hardware registers.

For that kind of thing you use HARD_REGNO_MODE_OK to say that DImode/DFmode can only go in even registers.  Then you make the insns use the class that permits all registers.  That does not prevent you from also having even and odd register classes.

Ian



Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]