Looks to me like it was a performance improvement, not a degradation, from
325% slower to 46% slower. Assuming N% slower means that programs take
1+N/100 times as much time to run (I haven't read the paper, so I don't
know what the actual numbers are), this is almost a 3x improvement. What
were you expecting, miracles? Without architectural support it's hard to
optimize out all the overhead of array bounds checking, so you have to
accept a tradeoff.

And, according to the numbers you quote, some programs aren't slowed down
at all, so it's possible to optimize out all the overhead of bounds
checking in some cases.
--
Barry Margolin, Thinking Machines Corp.