Another bit of info. Every time I've seen this they've all had the | same construct: | | (let ((x <init>)) | (declare (double-float x)) | <some code that setf's x> | x) | | For some reason, it seems that, because x is returned, the compiler | thinks that x needs to be boxed everywhere instead of just boxing the | final x.
This has been around since the start of the x86 port. It makes a simple dot product function much slower than need be. Paul
