Fix --disable-ion build, part 2.
authorJan de Mooij <jdemooij@mozilla.com>
Wed, 20 Mar 2013 15:22:11 +0100
changeset 127431 787d817bf96ab99106e62235f30b3f2626fe2eff
parent 127430 609cec014f3bd9dba6665946f5d1131297a7b244
child 127432 e9103474ab60a620b33e766934f4b8b667539f26
push id1
push userroot
push dateMon, 20 Oct 2014 17:29:22 +0000
milestone22.0a1
Fix --disable-ion build, part 2.
js/src/jsinterp.cpp
--- a/js/src/jsinterp.cpp
+++ b/js/src/jsinterp.cpp
@@ -46,17 +46,20 @@
 #include "vm/Shape.h"
 
 #ifdef JS_METHODJIT
 #include "methodjit/MethodJIT.h"
 #include "methodjit/Logging.h"
 #endif
 #include "ion/Ion.h"
 #include "ion/BaselineJIT.h"
+
+#ifdef JS_ION
 #include "ion/IonFrames-inl.h"
+#endif
 
 #include "jsatominlines.h"
 #include "jsboolinlines.h"
 #include "jsinferinlines.h"
 #include "jsinterpinlines.h"
 #include "jsobjinlines.h"
 #include "jsopcodeinlines.h"
 #include "jsprobes.h"
@@ -3507,21 +3510,21 @@ js::Lambda(JSContext *cx, HandleFunction
 {
     RootedObject clone(cx, CloneFunctionObjectIfNotSingleton(cx, fun, parent));
     if (!clone)
         return NULL;
 
     if (fun->isArrow()) {
         // Note that this will assert if called from Ion code. Ion can't yet
         // emit code for a bound arrow function (bug 851913).
-        AbstractFramePtr frame = NullFramePtr();
+        AbstractFramePtr frame = cx->fp();
+#ifdef JS_ION
         if (cx->fp()->runningInIon())
             frame = ion::GetTopBaselineFrame(cx);
-        else
-            frame = cx->fp();
+#endif
 
         if (!ComputeThis(cx, frame))
             return NULL;
 
         RootedValue thisval(cx, frame.thisValue());
         clone = js_fun_bind(cx, clone, thisval, NULL, 0);
         if (!clone)
             return NULL;