-
Simon Zünd authored
This CL extends Error.stack to include frames of functions declared with the C++ FunctionTemplate API. For example, "print" in d8. Two changes are necessary: - HandleApiCall and friends need to go through an BUILTIN_EXIT frame instead of an EXIT frame. The existing stack-trace machinery will then pick up FunctionTemplate frames without additional changes. - Turbofan doesn't go through HandleApiCall, but instead uses an ASM builtin to enter FunctionTemplate functions. A "marker" frame state is needed to include these frames in the stack trace. Note: This CL only includes these frames in Error.stack, but not (yet) in the stack-trace API (v8.h). Bug: v8:8742,v8:6802 Change-Id: Ic0631af883cf56e0d0122a2e0c54e36fed324d91 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1609835 Commit-Queue: Simon Zünd <szuend@chromium.org> Reviewed-by: Sigurd Schneider <sigurds@chromium.org> Reviewed-by: Benedikt Meurer <bmeurer@chromium.org> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#61602}
3dd56612