At 4:00 PM -0500 3/3/03, Benjamin Goldberg wrote:
Jason Gloudon wrote:

On Mon, Mar 03, 2003 at 01:07:36PM +0000, Piers Cawley wrote:


 > > I think you're overlooking the "restoreall" done just before the
 > > jump-no-save-returnaddress operation...  I see two "saveall"s and
 > > two "restoreall"s.
 >
 > But with proper tail call optimization you'd only need *one*
 > saveall. That's why it's an optimization.

 Tail call optimization is a space (stack size) optimization. The
 scheme definition only requires space efficiency. The time
 optimization is important but a secondary consideration for the
 functional language folks.

Here's an idea -- considering that the first op of every sub seems to be a 'saveall' instruction,

If that's true, we need to thump IMCC some. There's no reason for this to be the first op--if the caller wanted any registers saved it had darned well beter have taken care of it itself. That's the point of caller-save, after all...
--
Dan


--------------------------------------"it's like this"-------------------
Dan Sugalski                          even samurai
[EMAIL PROTECTED]                         have teddy bears and even
                                      teddy bears get drunk

Reply via email to