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: register allocation in gcc


I understood what you suggested. But how to 
define a register class (possibly in <MACHINE>.c file).


Paulo J. Matos-3 wrote:
> 
> On 18/10/11 08:06, vikramsp wrote:
>>
>> In my .md file there is an insn
>> (define_insn abssf2
>>        ....
>>        ....
>>       (clobber (match_scratch 2 ""))
>>
>> the %2 register is allocated as r0 in the real code.
>> My problem is that i want other than r0 to be allocated
>> for operand 2.
>> Please help how to do that.
> 
> In the "" after the 2 comes the constraint list. Constrain the register 
> to be somewhere that doesn't include r0.
> 
> So, for example, define a constraint x that corresponds to a register 
> class that doesn't contain r0 and then do:
> (define_insn abssf2
>         ....
>         ....
>        (clobber (match_scratch 2 "x"))
> 
> -- 
> PMatos
> 
> 
> 

-- 
View this message in context: http://old.nabble.com/register-allocation-in-gcc-tp32672662p32676581.html
Sent from the gcc - Help mailing list archive at Nabble.com.


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