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

Unified Diff: runtime/vm/object.h

Issue 2646443005: Track async causal stack traces (Closed)
Patch Set: rebase Created 3 years, 10 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
« no previous file with comments | « runtime/vm/method_recognizer.cc ('k') | runtime/vm/object.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: runtime/vm/object.h
diff --git a/runtime/vm/object.h b/runtime/vm/object.h
index 69dc8146685755d55607dc1a7175e4df918de61e..4d9e8042125f5ac0d901f1a71c4302e5668a0910 100644
--- a/runtime/vm/object.h
+++ b/runtime/vm/object.h
@@ -8388,14 +8388,19 @@ class StackTrace : public Instance {
intptr_t Length() const;
- RawFunction* FunctionAtFrame(intptr_t frame_index) const;
+ RawStackTrace* async_link() const { return raw_ptr()->async_link_; }
+ void set_async_link(const StackTrace& async_link) const;
+ void set_expand_inlined(bool value) const;
+ RawArray* code_array() const { return raw_ptr()->code_array_; }
RawCode* CodeAtFrame(intptr_t frame_index) const;
void SetCodeAtFrame(intptr_t frame_index, const Code& code) const;
+ RawFunction* FunctionAtFrame(intptr_t frame_index) const;
+
+ RawArray* pc_offset_array() const { return raw_ptr()->pc_offset_array_; }
RawSmi* PcOffsetAtFrame(intptr_t frame_index) const;
void SetPcOffsetAtFrame(intptr_t frame_index, const Smi& pc_offset) const;
- void set_expand_inlined(bool value) const;
static intptr_t InstanceSize() {
return RoundedAllocationSize(sizeof(RawStackTrace));
@@ -8404,9 +8409,15 @@ class StackTrace : public Instance {
const Array& pc_offset_array,
Heap::Space space = Heap::kNew);
+ static RawStackTrace* New(const Array& code_array,
+ const Array& pc_offset_array,
+ const StackTrace& async_link,
+ Heap::Space space = Heap::kNew);
+
// The argument 'max_frames' limits the number of printed frames.
- const char* ToCStringInternal(intptr_t* frame_index,
- intptr_t max_frames = kMaxInt32) const;
+ static const char* ToCStringInternal(const StackTrace& stack_trace,
+ intptr_t* frame_index,
+ intptr_t max_frames = kMaxInt32);
private:
void set_code_array(const Array& code_array) const;
« no previous file with comments | « runtime/vm/method_recognizer.cc ('k') | runtime/vm/object.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698