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

Unified Diff: runtime/vm/object.h

Issue 2692803006: Track the 'awaiter return' call stack use it to detect uncaught exceptions in async functions (Closed)
Patch Set: port to other architectures 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
Index: runtime/vm/object.h
diff --git a/runtime/vm/object.h b/runtime/vm/object.h
index 9023b2f4256329a2b5df6364409b5cd61919d5b9..71b465ebb33bd25e800af4fd20516b0f869a31dd 100644
--- a/runtime/vm/object.h
+++ b/runtime/vm/object.h
@@ -4512,12 +4512,15 @@ class ExceptionHandlers : public Object {
uword HandlerPCOffset(intptr_t try_index) const;
intptr_t OuterTryIndex(intptr_t try_index) const;
bool NeedsStackTrace(intptr_t try_index) const;
+ bool IsGenerated(intptr_t try_index) const;
void SetHandlerInfo(intptr_t try_index,
intptr_t outer_try_index,
uword handler_pc_offset,
bool needs_stacktrace,
- bool has_catch_all) const;
+ bool has_catch_all,
+ TokenPosition token_pos,
+ bool is_generated) const;
RawArray* GetHandledTypes(intptr_t try_index) const;
void SetHandledTypes(intptr_t try_index, const Array& handled_types) const;
@@ -4681,6 +4684,16 @@ class Code : public Object {
StorePointer(&raw_ptr()->code_source_map_, code_source_map.raw());
}
+ RawArray* await_token_positions() const {
+#if defined(DART_PRECOMPILED_RUNTIME)
+ return Array::null();
+#else
+ return raw_ptr()->await_token_positions_;
+#endif
+ }
+
+ void SetAwaitTokenPositions(const Array& await_token_positions) const;
+
// Used during reloading (see object_reload.cc). Calls Reset on all ICDatas
// that are embedded inside the Code object.
void ResetICDatas(Zone* zone) const;

Powered by Google App Engine
This is Rietveld 408576698