diff options
Diffstat (limited to 'deps/v8/test/mjsunit/external-array.js')
-rw-r--r-- | deps/v8/test/mjsunit/external-array.js | 18 |
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); |