If we see a use of both Contiguous and ArrayStorage, we should just convert to ArrayStorage instead of handling both. Similarly, in the future when we have Int32 and Double arrays, and we see a use of both Int32 and Double, we should just convert to Double instead of handling both. This should be a speed-up and a huge simplification, since the current "polymorphic" modes require a lot of code.
*** This bug has been marked as a duplicate of bug 99260 ***
On second thought, I'm going to do this separately from https://bugs.webkit.org/show_bug.cgi?id=99260.
Created attachment 168601 [details] work in progress
Created attachment 168603 [details] the patch
Comment on attachment 168603 [details] the patch r=me
Landed in http://trac.webkit.org/changeset/131289