0a7fcd0f28
This makes sure that frames representing builtin stub continuations not only materialize all stack slots, but also spilled register values. Note that this also applies when the stub frame is not the top-most frame. R=jarin@chromium.org TEST=mjsunit/regress/regress-6907 BUG=v8:6907 Change-Id: I01a2edf5629de6aac61ceea350d1ab5f91dc2dc1 Reviewed-on: https://chromium-review.googlesource.com/707245 Reviewed-by: Jaroslav Sevcik <jarin@chromium.org> Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#48415}
22 lines
500 B
JavaScript
22 lines
500 B
JavaScript
// Copyright 2017 the V8 project authors. All rights reserved.
|
|
// Use of this source code is governed by a BSD-style license that can be
|
|
// found in the LICENSE file.
|
|
|
|
// Flags: --allow-natives-syntax
|
|
|
|
(function TestDematerializedContextInBuiltin() {
|
|
var f = function() {
|
|
var b = [1,2,3];
|
|
var callback = function(v,i,o) {
|
|
%_DeoptimizeNow();
|
|
};
|
|
try { throw 0 } catch(e) {
|
|
return b.forEach(callback);
|
|
}
|
|
}
|
|
f();
|
|
f();
|
|
%OptimizeFunctionOnNextCall(f);
|
|
f();
|
|
})();
|