/* * Any copyright is dedicated to the Public Domain. * http://creativecommons.org/licenses/publicdomain/ */ if (!this.hasOwnProperty("TypedObject")) quit(); setJitCompilerOption("ion.warmup.trigger", 30); var PointType = TypedObject.uint16.array(3); var VecPointType = PointType.array(3); function foo() { for (var i = 0; i < 5000; i += 10) { var vec = new VecPointType(); var i0 = i % 3; var i1 = (i+1) % 3; var i2 = (i+2) % 3; vec[i0][i0] = i; vec[i0][i1] = i+1; vec[i0][i2] = i+2; vec[i1][i0] = i+3; vec[i1][i1] = i+4; vec[i1][i2] = i+5; vec[i2][i0] = i+6; vec[i2][i1] = i+7; vec[i2][i2] = i+8; var sum = vec[i0][i0] + vec[i0][i1] + vec[i0][i2]; assertEq(sum, 3*i + 3); sum = vec[i1][i0] + vec[i1][i1] + vec[i1][i2]; assertEq(sum, 3*i + 12); sum = vec[i2][i0] + vec[i2][i1] + vec[i2][i2]; assertEq(sum, 3*i + 21); } } foo();