Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(114)

Unified Diff: src/frames.h

Issue 2069823003: [wasm] Enable wasm frame inspection for debugging (Closed) Base URL: https://chromium.googlesource.com/v8/v8.git@split-wasm-debug
Patch Set: fix gcmole reports Created 4 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: src/frames.h
diff --git a/src/frames.h b/src/frames.h
index 213e8f74fc92d3e56bddbe0a679e02030e28090c..2d4a70c83b67ee3c4da3c5a6b88c063252b7ded6 100644
--- a/src/frames.h
+++ b/src/frames.h
@@ -671,9 +671,6 @@ class StandardFrame : public StackFrame {
// Testers.
bool is_standard() const override { return true; }
- // Accessors.
- inline Object* context() const;
-
// Access the expressions in the stack frame including locals.
inline Object* GetExpression(int index) const;
inline void SetExpression(int index, Object* value);
@@ -738,6 +735,7 @@ class JavaScriptFrame : public StandardFrame {
// Accessors.
virtual JSFunction* function() const;
virtual Object* receiver() const;
+ inline Object* context() const;
inline void set_receiver(Object* value);
@@ -970,8 +968,9 @@ class WasmFrame : public StandardFrame {
// Determine the code for the frame.
Code* unchecked_code() const override;
- Object* wasm_obj();
- uint32_t function_index();
+ // Accessors.
+ Object* wasm_obj() const;
+ uint32_t function_index() const;
static WasmFrame* cast(StackFrame* frame) {
DCHECK(frame->is_wasm());
@@ -1161,6 +1160,7 @@ class JavaScriptFrameIterator BASE_EMBEDDED {
class StackTraceFrameIterator BASE_EMBEDDED {
public:
explicit StackTraceFrameIterator(Isolate* isolate);
+ StackTraceFrameIterator(Isolate* isolate, StackFrame::Id id);
bool done() const { return iterator_.done(); }
void Advance();
@@ -1171,6 +1171,11 @@ class StackTraceFrameIterator BASE_EMBEDDED {
inline JavaScriptFrame* javascript_frame() const;
inline WasmFrame* wasm_frame() const;
+ // Advance to the frame holding the arguments for the current
+ // frame. This only affects the current frame if it is a javascript frame and
+ // has adapted arguments.
+ void AdvanceToArgumentsFrame();
+
private:
StackFrameIterator iterator_;
bool IsValidFrame(StackFrame* frame) const;
« src/debug/mirrors.js ('K') | « src/debug/mirrors.js ('k') | src/frames.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698