aboutsummaryrefslogtreecommitdiff
path: root/deps/v8/test/mjsunit/external-array.js
diff options
context:
space:
mode:
Diffstat (limited to 'deps/v8/test/mjsunit/external-array.js')
-rw-r--r--deps/v8/test/mjsunit/external-array.js18
1 files changed, 16 insertions, 2 deletions
diff --git a/deps/v8/test/mjsunit/external-array.js b/deps/v8/test/mjsunit/external-array.js
index 78f27809b7..3f0614032c 100644
--- a/deps/v8/test/mjsunit/external-array.js
+++ b/deps/v8/test/mjsunit/external-array.js
@@ -38,6 +38,7 @@ function f(a) {
a[0] = 0;
a[1] = 0;
}
+%PrepareFunctionForOptimization(f);
var a = new Int32Array(2);
for (var i = 0; i < 5; i++) {
@@ -167,10 +168,12 @@ assertEquals(2, a.BYTES_PER_ELEMENT);
// Test Float64Arrays.
function get(a, index) {
return a[index];
-}
+};
+%PrepareFunctionForOptimization(get);
function set(a, index, value) {
a[index] = value;
-}
+};
+%PrepareFunctionForOptimization(set);
function temp() {
var array = new Float64Array(2);
for (var i = 0; i < 5; i++) {
@@ -293,6 +296,7 @@ function test_store_nan(array, sum) {
const kRuns = 10;
function run_test(test_func, array, expected_result) {
+ %PrepareFunctionForOptimization(test_func);
for (var i = 0; i < 5; i++) test_func(array, 0);
%OptimizeFunctionOnNextCall(test_func);
var sum = 0;
@@ -344,6 +348,7 @@ for (var t = 0; t < types.length; t++) {
assertTrue(delete a.length);
// Make sure bounds checks are handled correctly for external arrays.
+ %PrepareFunctionForOptimization(run_bounds_test);
run_bounds_test(a);
run_bounds_test(a);
run_bounds_test(a);
@@ -364,6 +369,7 @@ for (var t = 0; t < types.length; t++) {
return a[0] = a[0] = 1;
}
+ %PrepareFunctionForOptimization(array_load_set_smi_check2);
array_load_set_smi_check2(a);
%OptimizeFunctionOnNextCall(array_load_set_smi_check2);
array_load_set_smi_check2(a);
@@ -378,6 +384,7 @@ function store_float32_undefined(ext_array) {
ext_array[0] = undefined;
}
+%PrepareFunctionForOptimization(store_float32_undefined);
var float32_array = new Float32Array(1);
// Make sure runtime does it right
store_float32_undefined(float32_array);
@@ -394,6 +401,7 @@ function store_float64_undefined(ext_array) {
ext_array[0] = undefined;
}
+%PrepareFunctionForOptimization(store_float64_undefined);
var float64_array = new Float64Array(1);
// Make sure runtime does it right
store_float64_undefined(float64_array);
@@ -639,6 +647,8 @@ function boo(a, i, v) {
function do_tagged_index_external_array_test(constructor) {
var t_array = new constructor([1, 2, 3, 4, 5, 6]);
+ %PrepareFunctionForOptimization(goo);
+ %PrepareFunctionForOptimization(boo);
assertEquals(1, goo(t_array, 0));
assertEquals(1, goo(t_array, 0));
boo(t_array, 0, 13);
@@ -661,6 +671,8 @@ do_tagged_index_external_array_test(Float32Array);
do_tagged_index_external_array_test(Float64Array);
var built_in_array = new Array(1, 2, 3, 4, 5, 6);
+%PrepareFunctionForOptimization(goo);
+%PrepareFunctionForOptimization(boo);
assertEquals(1, goo(built_in_array, 0));
assertEquals(1, goo(built_in_array, 0));
%OptimizeFunctionOnNextCall(goo);
@@ -671,6 +683,8 @@ assertEquals(11, goo(built_in_array, 0));
%ClearFunctionFeedback(boo);
built_in_array = new Array(1.5, 2, 3, 4, 5, 6);
+%PrepareFunctionForOptimization(goo);
+%PrepareFunctionForOptimization(boo);
assertEquals(1.5, goo(built_in_array, 0));
assertEquals(1.5, goo(built_in_array, 0));
%OptimizeFunctionOnNextCall(goo);