js/src/jit-test/tests/basic/perf-smoketest.js

Wed, 31 Dec 2014 06:09:35 +0100

author
Michael Schloh von Bennewitz <michael@schloh.com>
date
Wed, 31 Dec 2014 06:09:35 +0100
changeset 0
6474c204b198
permissions
-rw-r--r--

Cloned upstream origin tor-browser at tor-browser-31.3.0esr-4.5-1-build1
revision ID fc1c9ff7c1b2defdbc039f12214767608f46423f for hacking purpose.

     1 function spin_loop()
     2 {
     3     for (let i = 0; i < 10000; i++) ;
     4 }
     6 function check_timing(label, count) {
     7     if (count == -1) {
     8 	print("TEST-UNEXPECTED-FAIL | TestPerf | " + label);
     9 	throwError();
    10     } else {
    11 	print("TEST-PASS | TestPerf | " + label + " = " + count);
    12     }
    13 }
    15 var pm = new PerfMeasurement(PerfMeasurement.ALL);
    16 if (pm.eventsMeasured == 0) {
    17     print("TEST-KNOWN-FAIL | perf-smoketest | stub, skipping test");
    18 } else {
    19     pm.start();
    20     spin_loop();
    21     pm.stop();
    23     check_timing("cpu_cycles", pm.cpu_cycles);
    24     check_timing("instructions", pm.instructions);
    25     check_timing("cache_references", pm.cache_references);
    26     check_timing("cache_misses", pm.cache_misses);
    27     check_timing("branch_instructions", pm.branch_instructions);
    28     check_timing("branch_misses", pm.branch_misses);
    29     check_timing("bus_cycles", pm.bus_cycles);
    30     check_timing("page_faults", pm.page_faults);
    31     check_timing("major_page_faults", pm.major_page_faults);
    32     check_timing("context_switches", pm.context_switches);
    33     check_timing("cpu_migrations", pm.cpu_migrations);
    34 }

mercurial