Index: test/mjsunit/array-natives-elements.js |
diff --git a/test/mjsunit/array-natives-elements.js b/test/mjsunit/array-natives-elements.js |
index 7ed108ebba4851316c34c89f94f164f511a5948a..a19a931adbf5ebee90cc50af5b66a37a8fbc85bf 100644 |
--- a/test/mjsunit/array-natives-elements.js |
+++ b/test/mjsunit/array-natives-elements.js |
@@ -30,7 +30,7 @@ |
// IC and Crankshaft support for smi-only elements in dynamic array literals. |
function get(foo) { return foo; } // Used to generate dynamic values. |
-function array_natives_test(optimized) { |
+function array_natives_test() { |
// Ensure small array literals start in specific element kind mode. |
assertTrue(%HasFastSmiElements([])); |
@@ -151,6 +151,7 @@ |
assertTrue(%HasFastSmiElements(a3)); |
assertEquals([1], a3r); |
assertEquals([2, 2, 3], a3); |
+ |
a3 = [1.1,2,3]; |
a3r = a3.splice(0, 0); |
assertTrue(%HasFastDoubleElements(a3r)); |
@@ -165,12 +166,13 @@ |
assertEquals([2, 3], a3); |
a3 = [1.1,2,3]; |
a3r = a3.splice(0, 0, 2); |
- assertTrue(%HasFastDoubleElements(a3r)); |
+ // Commented out since handled in js, which takes the best fit. |
+ // assertTrue(%HasFastDoubleElements(a3r)); |
+ assertTrue(%HasFastSmiElements(a3r)); |
assertTrue(%HasFastDoubleElements(a3)); |
assertEquals([], a3r); |
assertEquals([2, 1.1, 2, 3], a3); |
a3 = [1.1,2,3]; |
- assertTrue(%HasFastDoubleElements(a3)); |
a3r = a3.splice(0, 1, 2); |
assertTrue(%HasFastDoubleElements(a3r)); |
assertTrue(%HasFastDoubleElements(a3)); |
@@ -178,7 +180,9 @@ |
assertEquals([2, 2, 3], a3); |
a3 = [1.1,2,3]; |
a3r = a3.splice(0, 0, 2.1); |
- assertTrue(%HasFastDoubleElements(a3r)); |
+ // Commented out since handled in js, which takes the best fit. |
+ // assertTrue(%HasFastDoubleElements(a3r)); |
+ assertTrue(%HasFastSmiElements(a3r)); |
assertTrue(%HasFastDoubleElements(a3)); |
assertEquals([], a3r); |
assertEquals([2.1, 1.1, 2, 3], a3); |
@@ -190,7 +194,9 @@ |
assertEquals([2.2, 2, 3], a3); |
a3 = [1,2,3]; |
a3r = a3.splice(0, 0, 2.1); |
- assertTrue(%HasFastDoubleElements(a3r)); |
+ // Commented out since handled in js, which takes the best fit. |
+ // assertTrue(%HasFastDoubleElements(a3r)); |
+ assertTrue(%HasFastSmiElements(a3r)); |
assertTrue(%HasFastDoubleElements(a3)); |
assertEquals([], a3r); |
assertEquals([2.1, 1, 2, 3], a3); |
@@ -200,6 +206,7 @@ |
assertTrue(%HasFastDoubleElements(a3)); |
assertEquals([1], a3r); |
assertEquals([2.2, 2, 3], a3); |
+ |
a3 = [{},2,3]; |
a3r = a3.splice(0, 0); |
assertTrue(%HasFastObjectElements(a3r)); |
@@ -224,6 +231,7 @@ |
assertTrue(%HasFastObjectElements(a3)); |
assertEquals([1], a3r); |
assertEquals([{}, 2, 3], a3); |
+ |
a3 = [1.1,2,3]; |
a3r = a3.splice(0, 0, {}); |
assertTrue(%HasFastObjectElements(a3r)); |
@@ -236,19 +244,6 @@ |
assertTrue(%HasFastObjectElements(a3)); |
assertEquals([1.1], a3r); |
assertEquals([{}, 2, 3], a3); |
- a3 = [1.1, 2.2, 3.3]; |
- a3r = a3.splice(2, 1); |
- assertTrue(%HasFastDoubleElements(a3r)); |
- assertTrue(%HasFastDoubleElements(a3)); |
- assertEquals([3.3], a3r); |
- //assertTrue(%HasFastDoubleElements(a3r)); |
- assertEquals([1.1, 2.2], a3); |
- //assertTrue(%HasFastDoubleElements(a3r)); |
- a3r = a3.splice(1, 1, 4.4, 5.5); |
- //assertTrue(%HasFastDoubleElements(a3r)); |
- //assertTrue(%HasFastDoubleElements(a3)); |
- assertEquals([2.2], a3r); |
- assertEquals([1.1, 4.4, 5.5], a3); |
// Pop |
var a4 = [1,2,3]; |
@@ -296,7 +291,7 @@ |
} |
for (var i = 0; i < 3; i++) { |
- array_natives_test(false); |
+ array_natives_test(); |
} |
%OptimizeFunctionOnNextCall(array_natives_test); |
-array_natives_test(true); |
+array_natives_test(); |