On Wed, Mar 23, 2011 at 12:06 PM, Richard Henderson <r...@redhat.com> wrote:
> On 03/19/2011 08:46 AM, H.J. Lu wrote:
>> Operations on stack and frame pointers, like push/pop, require stack
>> and frame pointers in DImode.  Even if I use word_mode in gen_push
>> and gen_pop, I got
>
> No they don't.  Not really.  Assuming the stack and frame pointer are
> properly zero extended, and no one tries to place a stack frame across
> null, then you can also represent it by an SImode operation.
>
>> x.i:10:1: error: unrecognizable insn:
>> (insn/f 22 5 23 2 (set (mem:SI (pre_dec:DI (reg/f:SI 7 sp)) [0 S4 A8])
>>         (reg/f:SI 6 bp)) x.i:6 -1
>>      (nil))
>
> Well, gee, that merely means a pattern needs to be adjusted.
>
>

Are you suggesting that we should say that SP and BP are 32bits so
that x32 has 16 integer registers, 14 are 64 bites and 2 are 32 bits?
How will it work with RA? Can I use BP for integer operations?

-- 
H.J.

Reply via email to