Bug 1583172 part 1 - Remove always-nullptr arguments from jit::Recompile. r=tcampbell
☠☠ backed out by 3954181d6538 ☠ ☠
authorJan de Mooij <jdemooij@mozilla.com>
Tue, 01 Oct 2019 13:55:24 +0000
changeset 495893 92dca2ee7dd353141a7f659b4b7b12ed1bb7b76d
parent 495892 083967e704d273762f70e90b3a4b62e7aa1e9b66
child 495894 e94031916ebf60d2b2e69217daf7e122aa69bf56
push id114140
push userdvarga@mozilla.com
push dateWed, 02 Oct 2019 18:04:51 +0000
treeherdermozilla-inbound@32eb0ea893f3 [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewerstcampbell
bugs1583172
milestone71.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 1583172 part 1 - Remove always-nullptr arguments from jit::Recompile. r=tcampbell Differential Revision: https://phabricator.services.mozilla.com/D46911
js/src/jit/Ion.cpp
js/src/jit/Ion.h
js/src/jit/VMFunctions.cpp
--- a/js/src/jit/Ion.cpp
+++ b/js/src/jit/Ion.cpp
@@ -2414,27 +2414,26 @@ bool jit::IonCompileScriptForBaseline(JS
       script->resetWarmUpCounterToDelayIonCompilation();
     }
     return true;
   }
 
   return true;
 }
 
-MethodStatus jit::Recompile(JSContext* cx, HandleScript script,
-                            BaselineFrame* osrFrame, jsbytecode* osrPc,
-                            bool force) {
+MethodStatus jit::Recompile(JSContext* cx, HandleScript script, bool force) {
   MOZ_ASSERT(script->hasIonScript());
   if (script->ionScript()->isRecompiling()) {
     return Method_Compiled;
   }
 
   MOZ_ASSERT(!script->baselineScript()->hasPendingIonBuilder());
 
-  MethodStatus status = Compile(cx, script, osrFrame, osrPc, force);
+  MethodStatus status = Compile(cx, script, /* osrFrame = */ nullptr,
+                                /* osrPc = */ nullptr, force);
   if (status != Method_Compiled) {
     if (status == Method_CantCompile) {
       ForbidCompilation(cx, script);
     }
     return status;
   }
 
   return Method_Compiled;
--- a/js/src/jit/Ion.h
+++ b/js/src/jit/Ion.h
@@ -141,18 +141,17 @@ bool CanIonCompileScript(JSContext* cx, 
 bool CanIonInlineScript(JSScript* script);
 
 MOZ_MUST_USE bool IonCompileScriptForBaseline(JSContext* cx,
                                               BaselineFrame* frame,
                                               jsbytecode* pc);
 
 MethodStatus CanEnterIon(JSContext* cx, RunState& state);
 
-MethodStatus Recompile(JSContext* cx, HandleScript script,
-                       BaselineFrame* osrFrame, jsbytecode* osrPc, bool force);
+MethodStatus Recompile(JSContext* cx, HandleScript script, bool force);
 
 enum JitExecStatus {
   // The method call had to be aborted due to a stack limit check. This
   // error indicates that Ion never attempted to clean up frames.
   JitExec_Aborted,
 
   // The method call resulted in an error, and IonMonkey has cleaned up
   // frames.
--- a/js/src/jit/VMFunctions.cpp
+++ b/js/src/jit/VMFunctions.cpp
@@ -1305,17 +1305,17 @@ bool RecompileImpl(JSContext* cx, bool f
 
   RootedScript script(cx, frame.script());
   MOZ_ASSERT(script->hasIonScript());
 
   if (!IsIonEnabled()) {
     return true;
   }
 
-  MethodStatus status = Recompile(cx, script, nullptr, nullptr, force);
+  MethodStatus status = Recompile(cx, script, force);
   if (status == Method_Error) {
     return false;
   }
 
   return true;
 }
 
 bool IonForcedRecompile(JSContext* cx) {