[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: flonum consing
Miles Bader <miles@cogsci.edinburgh.ac.uk> writes:
> So to avoid float (and other immediate) consing on function args/return vals,
> couldn't you have the compiler automatically produce two entry points for
> functions, one for general lisp vals, and one that expected float args in
> certain regs, and returned float results in certain other regs? [You could
> also have flag somewhere instead of multiple entry points]
Theoretically, yes. But there are a huge number of potential
problems that you have to deal with at runtime. You could probably
work out a system that would work, but the complexity (and hence, the
probability for bugs) would be astronomical. And besides, would
probably could get pretty close to the same performance with a
generational GC (which we are working on).
-William Lott
CMU Common Lisp Group