Bug 1276162 part 1 - Stop skipping contexts in GetScriptedCallerActivationFast. r=bz
authorJan de Mooij <jdemooij@mozilla.com>
Sat, 28 May 2016 10:33:32 +0200
changeset 299412 d04a27a81ae928cd3535ffb34595ba5d2248a1e8
parent 299411 0667549f62c0b41938ec448951e1b476ea7e88f5
child 299413 54abdc6d524e87f3714d90ee2df276caa999b8f5
push id77559
push userjandemooij@gmail.com
push dateSat, 28 May 2016 09:16:11 +0000
treeherdermozilla-inbound@54abdc6d524e [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewersbz
bugs1276162
milestone49.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 1276162 part 1 - Stop skipping contexts in GetScriptedCallerActivationFast. r=bz
js/src/jsapi.cpp
--- a/js/src/jsapi.cpp
+++ b/js/src/jsapi.cpp
@@ -6450,19 +6450,16 @@ DescribeScriptedCaller(JSContext* cx, Au
 // the activation's global for GetScriptedCallerGlobal. If, however, all 'outer'
 // frames are self-hosted, it's possible Ion inlined a non-self-hosted script,
 // so we must return false and use the slower path.
 static bool
 GetScriptedCallerActivationFast(JSContext* cx, Activation** activation)
 {
     ActivationIterator activationIter(cx->runtime());
 
-    while (!activationIter.done() && activationIter->cx() != cx)
-        ++activationIter;
-
     if (activationIter.done()) {
         *activation = nullptr;
         return true;
     }
 
     *activation = activationIter.activation();
 
     if (activationIter->isJit()) {