[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Lightning] Re: `pushr' on SPARC

From: Paolo Bonzini
Subject: [Lightning] Re: `pushr' on SPARC
Date: Mon, 06 Nov 2006 16:08:28 +0100
User-agent: Thunderbird (Macintosh/20060909)

  1. Keep the non-working pushr/popr.

Solution (1) seems quite harmful since the resulting programs produce
erroneous results.
(No more than previous versions, but I agree that it is not nice.)
  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. :-) 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), but it would work in 99% of the cases, though, and this limitation may be documented in the NEWS file together with the deprecation of pushr/popr.
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).


reply via email to

[Prev in Thread] Current Thread [Next in Thread]