
11 Apr
2007
11 Apr
'07
3:43 a.m.
Lennart Augustsson wrote:
So then tail calls should be very cheap when most of the arguments don't change.
Yes, but the problem tends to be the arguments that change, and the fact that they are passed on the stack. A C loop would keep the loop-carried variables in registers. On x86_64 you get better code becuase some of the args are passed in registers, but it's not really proper loop optimisation. We know what needs to be done, and we plan to make progress on this soon, hopefully over the summer. Cheers, Simon