Base register restrictions

2009-06-29 Thread Dobes
I am working on a port to an architecture with some strict rules. The restriction that I am unable to figure out how to enforce is a base register that is allowed in the destination operand, but not in a source operand. For example, this would be allowed "add 4($1), $8, $9", but this would not b

Re: Registers safe across function calls

2009-06-17 Thread Dobes
Please ignore this previous message... I found the error in my machine dependent code. Dobes wrote: > > I'd like to be able to specify registers that are safe across function > calls (without the need to save/restore) and I cannot figure out how to do > this. I know tha

Registers safe across function calls

2009-06-17 Thread Dobes
I'd like to be able to specify registers that are safe across function calls (without the need to save/restore) and I cannot figure out how to do this. I know that I can set these particular registers to '0' in CALL_USED_REGISTERS and then remove the call/restore in the prologue/epilogue, but the

Re: Getting variable attribute from rtx

2009-03-30 Thread Dobes
Ian Lance Taylor-3 wrote: > > Dobes writes: > >>>> See the SYMBOL_REF_FLAGS stuff in rtl.h and various examples in the >>>> back-ends. >>> Or, better, look for uses of lookup_attribute. >>> >> >> OK, I've now got

Re: Getting variable attribute from rtx

2009-03-28 Thread Dobes
>> See the SYMBOL_REF_FLAGS stuff in rtl.h and various examples in the >> back-ends. > Or, better, look for uses of lookup_attribute. > OK, I've now got it working for globals and static locals by tagging the rtl in "encode_section_info" and checking for that tag later. How can I do the same

Getting variable attribute from rtx

2009-03-27 Thread Dobes
I need to add support for some custom attributes that I need to know during operand matching. I have no problem adding the attributes, but I don't know what to do so that I can access the information later. My function that is called to handle the attribute looks like this: static tree attr_mya