Chromium Code Reviews| Index: tests/language/try_catch_optimized2_test.dart |
| =================================================================== |
| --- tests/language/try_catch_optimized2_test.dart (revision 0) |
| +++ tests/language/try_catch_optimized2_test.dart (revision 0) |
| @@ -0,0 +1,31 @@ |
| +// Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file |
| +// for details. All rights reserved. Use of this source code is governed by a |
| +// BSD-style license that can be found in the LICENSE file. |
| +// VMOptions=--optimization-counter-threshold=10 --no-use-osr |
| + |
| +import "package:expect/expect.dart"; |
| + |
| +// Test allocation sinking with optimized try-catch. |
| + |
| +bar() { // Should not be inlined. |
| + try { |
| + } finally { } |
| +} |
| + |
| +foo(a) { |
| + var r = 0; |
| + for (var i in a) { |
| + r += i; |
| + } |
| + try { |
| + bar(); |
| + } finally { |
| + } |
| + return r; |
| +} |
| + |
| +main() { |
| + var a = [1,2,3]; |
| + for (var i=0; i<20; i++) foo(a); |
|
srdjan
2013/07/18 14:07:00
Add spaces between -> i = 0; i < 20
Florian Schneider
2013/07/18 14:12:46
Done.
|
| + Expect.equals(6, foo(a)); |
| +} |