Skip to content

Instantly share code, notes, and snippets.

@syg
Created July 23, 2013 12:35
Show Gist options
  • Save syg/6062043 to your computer and use it in GitHub Desktop.
Save syg/6062043 to your computer and use it in GitHub Desktop.
diff --git a/js/src/vm/ForkJoin.cpp b/js/src/vm/ForkJoin.cpp
index 2f9a1a2..e80620a 100644
--- a/js/src/vm/ForkJoin.cpp
+++ b/js/src/vm/ForkJoin.cpp
@@ -1127,6 +1127,21 @@ js::ParallelDo::invalidateBailedOutScripts()
return true;
}
+struct AutoSetEagerBaseline
+{
+ uint32_t old;
+
+ AutoSetEagerBaseline()
+ : old(ion::js_IonOptions.baselineUsesBeforeCompile)
+ {
+ ion::js_IonOptions.baselineUsesBeforeCompile = 0;
+ }
+
+ ~AutoSetEagerBaseline() {
+ ion::js_IonOptions.baselineUsesBeforeCompile = old;
+ }
+};
+
js::ParallelDo::TrafficLight
js::ParallelDo::warmupExecution(bool stopIfComplete,
ExecutionStatus *status)
@@ -1136,6 +1151,8 @@ js::ParallelDo::warmupExecution(bool stopIfComplete,
Spew(SpewOps, "Executing warmup.");
+ AutoSetEagerBaseline goddammit;
+
AutoEnterWarmup warmup(cx_->runtime());
RootedValue funVal(cx_, ObjectValue(*fun_));
bool complete;
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment