| OLD | NEW | 
|    1 // Copyright 2012 the V8 project authors. All rights reserved. |    1 // Copyright 2012 the V8 project authors. All rights reserved. | 
|    2 // Redistribution and use in source and binary forms, with or without |    2 // Redistribution and use in source and binary forms, with or without | 
|    3 // modification, are permitted provided that the following conditions are |    3 // modification, are permitted provided that the following conditions are | 
|    4 // met: |    4 // met: | 
|    5 // |    5 // | 
|    6 //     * Redistributions of source code must retain the above copyright |    6 //     * Redistributions of source code must retain the above copyright | 
|    7 //       notice, this list of conditions and the following disclaimer. |    7 //       notice, this list of conditions and the following disclaimer. | 
|    8 //     * Redistributions in binary form must reproduce the above |    8 //     * Redistributions in binary form must reproduce the above | 
|    9 //       copyright notice, this list of conditions and the following |    9 //       copyright notice, this list of conditions and the following | 
|   10 //       disclaimer in the documentation and/or other materials provided |   10 //       disclaimer in the documentation and/or other materials provided | 
| (...skipping 10 matching lines...) Expand all  Loading... | 
|   21 // SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT |   21 // SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT | 
|   22 // LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, |   22 // LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, | 
|   23 // DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY |   23 // DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY | 
|   24 // THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT |   24 // THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT | 
|   25 // (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE |   25 // (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE | 
|   26 // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |   26 // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | 
|   27  |   27  | 
|   28 // Test dictionary -> double elements -> dictionary elements round trip |   28 // Test dictionary -> double elements -> dictionary elements round trip | 
|   29  |   29  | 
|   30 // Flags: --allow-natives-syntax --unbox-double-arrays --expose-gc |   30 // Flags: --allow-natives-syntax --unbox-double-arrays --expose-gc | 
|   31 // Flags: --noparallel-recompilation |  | 
|   32  |   31  | 
|   33 var large_array_size = 100000; |   32 var large_array_size = 100000; | 
|   34 var approx_dict_to_elements_threshold = 70000; |   33 var approx_dict_to_elements_threshold = 70000; | 
|   35  |   34  | 
|   36 var name = 0; |   35 var name = 0; | 
|   37  |   36  | 
|   38 function expected_array_value(i) { |   37 function expected_array_value(i) { | 
|   39   if ((i % 50) != 0) { |   38   if ((i % 50) != 0) { | 
|   40     return i; |   39     return i; | 
|   41   } else { |   40   } else { | 
| (...skipping 297 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
|  339   test_various_stores(large_array, |  338   test_various_stores(large_array, | 
|  340                       Infinity, |  339                       Infinity, | 
|  341                       -Infinity, |  340                       -Infinity, | 
|  342                       expected_array_value(7)); |  341                       expected_array_value(7)); | 
|  343  |  342  | 
|  344   test_various_loads7(large_array, |  343   test_various_loads7(large_array, | 
|  345                       Infinity, |  344                       Infinity, | 
|  346                       -Infinity, |  345                       -Infinity, | 
|  347                       expected_array_value(7)); |  346                       expected_array_value(7)); | 
|  348  |  347  | 
|  349   assertTrue(%GetOptimizationStatus(test_various_stores) != 2); |  348   assertOptimized(test_various_stores); | 
|  350  |  349  | 
|  351   // Make sure that we haven't converted from fast double. |  350   // Make sure that we haven't converted from fast double. | 
|  352   assertTrue(%HasFastDoubleElements(large_array)); |  351   assertTrue(%HasFastDoubleElements(large_array)); | 
|  353 } |  352 } | 
|  354  |  353  | 
|  355 // Force gc here to start with a clean heap if we repeat this test multiple |  354 // Force gc here to start with a clean heap if we repeat this test multiple | 
|  356 // times. |  355 // times. | 
|  357 gc(); |  356 gc(); | 
|  358 testOneArrayType(make_object_like_array); |  357 testOneArrayType(make_object_like_array); | 
|  359 testOneArrayType(Array); |  358 testOneArrayType(Array); | 
| (...skipping 183 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
|  543   assertEquals(expected_array_value(2), large_array4[2]); |  542   assertEquals(expected_array_value(2), large_array4[2]); | 
|  544 } |  543 } | 
|  545  |  544  | 
|  546 test_setter(); |  545 test_setter(); | 
|  547 test_setter(); |  546 test_setter(); | 
|  548 test_setter(); |  547 test_setter(); | 
|  549 %OptimizeFunctionOnNextCall(test_setter); |  548 %OptimizeFunctionOnNextCall(test_setter); | 
|  550 test_setter(); |  549 test_setter(); | 
|  551 test_setter(); |  550 test_setter(); | 
|  552 test_setter(); |  551 test_setter(); | 
| OLD | NEW |