[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Lightning] Re: `pushr' on SPARC
From: |
Ludovic Courtès |
Subject: |
[Lightning] Re: `pushr' on SPARC |
Date: |
Mon, 06 Nov 2006 17:15:10 +0100 |
User-agent: |
Gnus/5.110006 (No Gnus v0.6) Emacs/21.4 (gnu/linux) |
Paolo Bonzini <address@hidden> writes:
>> 2. Include a fixed pushr/popr.
>>
>> While (2) incurs some overhead, I don't clearly understand the impact of
>> larger stack frames. Are you concerned by cache misses? Keep in mind
>> that lightning 1.2 allocated 120 octets per stack frame (it could have
>> allocated only 104) while this fix allocates 104 + 32 = 136 octets (that
>> is, "only" 16 additional octets compared to 1.2).
>>
> Then we could make the stack area only 16 bytes (4 words) and I would
> be forced to shut up. :-)
Indeed! ;-)
BTW, you did not tell what your major concern is wrt. large stack
frames.
> Your solution may still not work if push
> and pop are in different basic blocks (e.g. push before a conditional
> jump, pop in both branches of the jump)
Hmmm, good point.
>> Solution (2b) could be a nice compromise, provided we clearly recommend
>> against using both `allocai' and `pushr' (which is needed anyway for the
>> other architectures, according to your previous post).
>>
> Yes.
So which one would you prefer? Given the limitations of both, I have no
strong preference. Maybe (2b) would be "less bad" since it would allow
legacy (i.e., pre-allocai) programs to work as expected.
I'll look at implementing it over the next few days.
Thanks,
Ludovic.
- [Lightning] Re: merging, Paolo Bonzini, 2006/11/06
- [Lightning] `pushr' on SPARC, Ludovic Courtès, 2006/11/06
- [Lightning] Re: `pushr' on SPARC, Paolo Bonzini, 2006/11/06
- Re: [Lightning] Re: `pushr' on SPARC, Ludovic Courtès, 2006/11/14
- Re: [Lightning] Re: `pushr' on SPARC, Paolo Bonzini, 2006/11/14
- Re: [Lightning] Re: `pushr' on SPARC, Ludovic Courtès, 2006/11/14
- Re: [Lightning] Re: `pushr' on SPARC, Paolo Bonzini, 2006/11/14
- [Lightning] Re: `pushr' on SPARC, Ludovic Courtès, 2006/11/15