Chromium Code Reviews| Index: tests/language/optimized_setter_test.dart |
| =================================================================== |
| --- tests/language/optimized_setter_test.dart (revision 24922) |
| +++ tests/language/optimized_setter_test.dart (working copy) |
| @@ -2,6 +2,7 @@ |
| // 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. |
| // Test various setter situations, testing special cases in optimizing compiler. |
| +// VMOptions=--optimization-counter-threshold=10 --no-use-osr |
| import "package:expect/expect.dart"; |
| @@ -21,7 +22,7 @@ |
| A a = new A(); |
| B b = new B(); |
| // Optimize 'oneTarget' for one class, one target. |
| - for (int i = 0; i < 2000; i++) { |
| + for (int i = 0; i < 20; i++) { |
| oneTarget(a, 5); |
| Expect.equals(5, a.field); |
| } |
| @@ -29,7 +30,7 @@ |
| oneTarget(b, 6); |
| Expect.equals(6, b.field); |
| // Optimize 'oneTarget' for A and B classes, one target. |
| - for (int i = 0; i < 2000; i++) { |
| + for (int i = 0; i < 20; i++) { |
| oneTarget(a, 7); |
| Expect.equals(7, a.field); |
| } |
| @@ -48,7 +49,7 @@ |
| } |
| A a = new A(); |
| - for (int i = 0; i < 2000; i++) { |
| + for (int i = 0; i < 20; i++) { |
| var r = maybeSet(a, 5, false); |
| Expect.equals(0, a.field); |
| Expect.equals(-1, r); |
| @@ -56,7 +57,7 @@ |
| var r = maybeSet(a, 5, true); |
| Expect.equals(5, a.field); |
| Expect.equals(5, r); |
| - for (int i = 0; i < 2000; i++) { |
| + for (int i = 0; i < 20; i++) { |
| var r = maybeSet(a, 6, true); |
| Expect.equals(6, a.field); |
| Expect.equals(6, r); |
| @@ -80,13 +81,13 @@ |
| } |
| X x = new X(); |
| - for (int i = 0; i < 2000; i++) { |
| + for (int i = 0; i < 20; i++) { |
| var r = oneTarget(x, 3); |
| Expect.equals(3, x.pField); |
| Expect.equals(3, r); |
| } |
| oneTarget(x, 0); |
| - for (int i = 0; i < 2000; i++) { |
| + for (int i = 0; i < 20; i++) { |
| incField(x); |
| } |
| Expect.equals(11, x.pField); |
| @@ -105,14 +106,14 @@ |
| // Both classes 'Y' and 'A' have a distinct field getter. |
| A a = new A(); |
| Y y = new Y(); |
| - for (int i = 0; i < 2000; i++) { |
| + for (int i = 0; i < 20; i++) { |
| var r = oneTarget(a, 5); |
| Expect.equals(5, a.field); |
| Expect.equals(5, r); |
| r = oneTarget(y, 6); |
| Expect.equals(6, y.field); |
| Expect.equals(6, r); |
| - } |
| + } |
| } |
| class Z { |
| @@ -128,7 +129,7 @@ |
| Y y = new Y(); |
| Z z = new Z(); |
| - for (int i = 0; i < 2000; i++) { |
| + for (int i = 0; i < 20; i++) { |
| var r = oneTarget(y, 8); |
| Expect.equals(8, y.field); |
| Expect.equals(8, r); |
| @@ -143,7 +144,7 @@ |
| } |
| void main() { |
| - for (int i = 0; i< 2000; i++) {} |
| + for (int i = 0; i< 20; i++) {} |
|
zra
2013/07/11 20:11:28
What's the point of this loop?
srdjan
2013/07/11 20:15:32
Don't know. Will remove it.
|
| sameImplicitSetter(); |
| setterNoFeedback(); |
| sameNotImplicitSetter(); |