Mercurial > hg > truffle
changeset 10582:6cb9516d7036
Ensure compilation in System_currentTimeMillis02
author | Morris Meyer <morris.meyer@oracle.com> |
---|---|
date | Sun, 30 Jun 2013 11:19:21 -0400 |
parents | 63d0eaa9b25d |
children | 9af370c1fdf0 |
files | graal/com.oracle.graal.jtt/src/com/oracle/graal/jtt/jdk/System_currentTimeMillis02.java |
diffstat | 1 files changed, 16 insertions(+), 5 deletions(-) [+] |
line wrap: on
line diff
--- a/graal/com.oracle.graal.jtt/src/com/oracle/graal/jtt/jdk/System_currentTimeMillis02.java Sat Jun 29 22:06:05 2013 -0400 +++ b/graal/com.oracle.graal.jtt/src/com/oracle/graal/jtt/jdk/System_currentTimeMillis02.java Sun Jun 30 11:19:21 2013 -0400 @@ -29,15 +29,26 @@ */ public class System_currentTimeMillis02 extends JTTTest { + static void m(long[] times) { + times[1] = System.currentTimeMillis() - times[0]; + } + public static boolean test() { - long start = System.currentTimeMillis(); - long delta = 0; - for (int i = 0; delta == 0 && i < 5000000; i++) { - delta = System.currentTimeMillis() - start; + long times[] = new long[2]; // { start, delta } + times[0] = System.currentTimeMillis(); + times[1] = 0; + // force compilation: + for (int i = 0; i < 5000; i++) { + m(times); + } + times[0] = System.currentTimeMillis(); + times[1] = 0; + for (int i = 0; times[1] == 0 && i < 5000000; i++) { + m(times); // do nothing. } // better get at least 100 millisecond resolution. - return delta >= 1 && delta < 100; + return times[1] >= 1 && times[1] < 100; } @Test