| OLD | NEW | 
|---|
|  | (Empty) | 
| 1 // Copyright (c) 2014, the Dart project authors.  Please see the AUTHORS file |  | 
| 2 // for details. All rights reserved. Use of this source code is governed by a |  | 
| 3 // BSD-style license that can be found in the LICENSE file. |  | 
| 4 |  | 
| 5 library dart2js.stress; |  | 
| 6 import "dart2js.dart" as dart2js; |  | 
| 7 |  | 
| 8 const ITERATIONS_FLAG_PREFIX = "--iterations="; |  | 
| 9 void main(List<String> args) { |  | 
| 10   print("Reminder: for best performance, " |  | 
| 11         "dart2js should be run with the VM flag --heap_growth_rate=512"); |  | 
| 12   Stopwatch sw = new Stopwatch(); |  | 
| 13   int count = 0; |  | 
| 14   int maxCount = null; |  | 
| 15   if (args.isNotEmpty && args[0].startsWith(ITERATIONS_FLAG_PREFIX)) { |  | 
| 16     maxCount = int.parse(args[0].substring(ITERATIONS_FLAG_PREFIX.length)); |  | 
| 17     args = args.sublist(1); |  | 
| 18   } |  | 
| 19   if (maxCount == null) { |  | 
| 20     print("Running indefinitely.\n" |  | 
| 21           "Use '$ITERATIONS_FLAG_PREFIX<count>' to set a repetition count" |  | 
| 22           " (as first flag)."); |  | 
| 23   } |  | 
| 24   args = ["--suppress-warnings", "--suppress-hints"]..addAll(args); |  | 
| 25   void iterate() { |  | 
| 26     count++; |  | 
| 27     sw.reset(); |  | 
| 28     sw.start(); |  | 
| 29     dart2js.internalMain(args) |  | 
| 30       .then((_) { |  | 
| 31         print("$count: ${sw.elapsedMilliseconds}ms"); |  | 
| 32       }) |  | 
| 33       .then((_) { |  | 
| 34         if (maxCount == null || count < maxCount) { |  | 
| 35           iterate(); |  | 
| 36         } |  | 
| 37       }); |  | 
| 38   } |  | 
| 39   iterate(); |  | 
| 40 } |  | 
| OLD | NEW | 
|---|