38a719f965
This switches full-codegen to no longer push and pop StackHandler markers onto the operand stack, but relies on a range-based handler table instead. We only use StackHandlers in JSEntryStubs to mark the transition from C to JS code. Note that this makes deoptimization and OSR from within any try-block work out of the box, makes the non-exception paths faster and should overall be neutral on the memory footprint (pros). On the other hand it makes the exception paths slower and actually throwing and exception more expensive (cons). R=yangguo@chromium.org TEST=cctest/test-run-jsexceptions/DeoptTry Review URL: https://codereview.chromium.org/1010883002 Cr-Commit-Position: refs/heads/master@{#27440}
21 lines
474 B
JavaScript
21 lines
474 B
JavaScript
// Copyright 2014 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 --expose-debug-as debug
|
|
|
|
Debug = debug.Debug;
|
|
Debug.setListener(function() {});
|
|
Debug.setBreakOnException();
|
|
|
|
try {
|
|
try {
|
|
%DebugPushPromise(new Promise(function() {}), function() {});
|
|
} catch (e) {
|
|
}
|
|
throw new Error();
|
|
} catch (e) {
|
|
}
|
|
|
|
Debug.setListener(null);
|