Bug 898442 - IonMonkey: Fix a bug in the IonSpewer which caused it to skip spewing of some functions.
authorDan Gohman <sunfish@google.com>
Mon, 29 Jul 2013 16:37:35 -0700
changeset 152749 770b97caaababc0feb961b4cc8d9812f15b88dc6
parent 152748 fed05531f9e33d7cc647f5436d515572c5c76951
child 152750 e5305a6fba38e7607addecf33f3078855b90adbc
push id2859
push userakeybl@mozilla.com
push dateMon, 16 Sep 2013 19:14:59 +0000
treeherdermozilla-beta@87d3c51cd2bf [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
bugs898442
milestone25.0a1
first release with
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
last release without
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
Bug 898442 - IonMonkey: Fix a bug in the IonSpewer which caused it to skip spewing of some functions.
js/src/ion/IonSpewer.cpp
--- a/js/src/ion/IonSpewer.cpp
+++ b/js/src/ion/IonSpewer.cpp
@@ -181,17 +181,20 @@ IonSpewer::spewPass(const char *pass, Li
     jsonSpewer.spewIntervals(ra);
     jsonSpewer.endPass();
 }
 
 void
 IonSpewer::endFunction()
 {
     if (!isSpewingFunction()) {
-        filteredOutCompilations--;
+        if (inited_) {
+            JS_ASSERT(filteredOutCompilations != 0);
+            filteredOutCompilations--;
+        }
         return;
     }
 
     c1Spewer.endFunction();
     jsonSpewer.endFunction();
 
     this->graph = NULL;
 }