| 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 13541 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 13552 rv = v8::V8::IdleNotification(); | 13552 rv = v8::V8::IdleNotification(); |
| 13553 if (rv) | 13553 if (rv) |
| 13554 break; | 13554 break; |
| 13555 } | 13555 } |
| 13556 CHECK(rv == true); | 13556 CHECK(rv == true); |
| 13557 } | 13557 } |
| 13558 | 13558 |
| 13559 // Test that idle notification can be handled and eventually returns true. | 13559 // Test that idle notification can be handled and eventually returns true. |
| 13560 // This just checks the contract of the IdleNotification() function, | 13560 // This just checks the contract of the IdleNotification() function, |
| 13561 // and does not verify that it does reasonable work. | 13561 // and does not verify that it does reasonable work. |
| 13562 THREADED_TEST(IdleNotificationWithHint) { | 13562 TEST(IdleNotificationWithHint) { |
| 13563 v8::HandleScope scope; | 13563 v8::HandleScope scope; |
| 13564 LocalContext env; | 13564 LocalContext env; |
| 13565 CompileRun("function binom(n, m) {" | 13565 { |
| 13566 " var C = [[1]];" | 13566 i::AlwaysAllocateScope always_allocate; |
| 13567 " for (var i = 1; i <= n; ++i) {" | 13567 CompileRun("function binom(n, m) {" |
| 13568 " C[i] = [1];" | 13568 " var C = [[1]];" |
| 13569 " for (var j = 1; j < i; ++j) {" | 13569 " for (var i = 1; i <= n; ++i) {" |
| 13570 " C[i][j] = C[i-1][j-1] + C[i-1][j];" | 13570 " C[i] = [1];" |
| 13571 " }" | 13571 " for (var j = 1; j < i; ++j) {" |
| 13572 " C[i][i] = 1;" | 13572 " C[i][j] = C[i-1][j-1] + C[i-1][j];" |
| 13573 " }" | 13573 " }" |
| 13574 " return C[n][m];" | 13574 " C[i][i] = 1;" |
| 13575 "};" | 13575 " }" |
| 13576 "binom(1000, 500)"); | 13576 " return C[n][m];" |
| 13577 "};" |
| 13578 "binom(1000, 500)"); |
| 13579 } |
| 13577 bool rv = false; | 13580 bool rv = false; |
| 13578 intptr_t old_size = HEAP->SizeOfObjects(); | 13581 intptr_t old_size = HEAP->SizeOfObjects(); |
| 13579 bool no_idle_work = v8::V8::IdleNotification(10); | 13582 bool no_idle_work = v8::V8::IdleNotification(10); |
| 13580 for (int i = 0; i < 200; i++) { | 13583 for (int i = 0; i < 200; i++) { |
| 13581 rv = v8::V8::IdleNotification(10); | 13584 rv = v8::V8::IdleNotification(10); |
| 13582 if (rv) | 13585 if (rv) |
| 13583 break; | 13586 break; |
| 13584 } | 13587 } |
| 13585 CHECK(rv == true); | 13588 CHECK(rv == true); |
| 13586 intptr_t new_size = HEAP->SizeOfObjects(); | 13589 intptr_t new_size = HEAP->SizeOfObjects(); |
| (...skipping 2237 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 15824 CompileRun("throw 'exception';"); | 15827 CompileRun("throw 'exception';"); |
| 15825 } | 15828 } |
| 15826 | 15829 |
| 15827 | 15830 |
| 15828 TEST(CallCompletedCallbackTwoExceptions) { | 15831 TEST(CallCompletedCallbackTwoExceptions) { |
| 15829 v8::HandleScope scope; | 15832 v8::HandleScope scope; |
| 15830 LocalContext env; | 15833 LocalContext env; |
| 15831 v8::V8::AddCallCompletedCallback(CallCompletedCallbackException); | 15834 v8::V8::AddCallCompletedCallback(CallCompletedCallbackException); |
| 15832 CompileRun("throw 'first exception';"); | 15835 CompileRun("throw 'first exception';"); |
| 15833 } | 15836 } |
| OLD | NEW |