Stephen Weeks
Tue, 15 Aug 2000 14:55:37 -0700 (PDT)

> The  must-not-alias  thing is probably only relevant for mutable objects,

I disagree.  It lets you do things like common subexpression elimination and
loop invariant removal of in the presence of stores to the heap and stack.  For
example, suppose you have a tuple select followed by an allocation, followed by
a tuple select.  At the machine and x86 level, this looks like a load, followed
by a sequence of stores, followed by a load.

> For my FFT (which is currently 1/2 the speed of the GNU Scientific library) I
> would say that the extra level of indirection in arrays of complex's  is  the
> major cost.

Is this some SML code that you have?  Let's add it to the benchmark suite.