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

Side by Side Diff: runtime/vm/object_service.cc

Issue 2692803006: Track the 'awaiter return' call stack use it to detect uncaught exceptions in async functions (Closed)
Patch Set: rmacnak review Created 3 years, 9 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 unified diff | Download patch
OLDNEW
1 // Copyright (c) 2016, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2016, the Dart project authors. Please see the AUTHORS file
2 // for details. All rights reserved. Use of this source code is governed by a 2 // for details. All rights reserved. Use of this source code is governed by a
3 // BSD-style license that can be found in the LICENSE file. 3 // BSD-style license that can be found in the LICENSE file.
4 4
5 #include "vm/debugger.h" 5 #include "vm/debugger.h"
6 #include "vm/disassembler.h" 6 #include "vm/disassembler.h"
7 #include "vm/object.h" 7 #include "vm/object.h"
8 #include "vm/object_store.h" 8 #include "vm/object_store.h"
9 #include "vm/stub_code.h" 9 #include "vm/stub_code.h"
10 #include "vm/symbols.h" 10 #include "vm/symbols.h"
(...skipping 851 matching lines...) Expand 10 before | Expand all | Expand 10 after
862 const PcDescriptors& descriptors = PcDescriptors::Handle(pc_descriptors()); 862 const PcDescriptors& descriptors = PcDescriptors::Handle(pc_descriptors());
863 if (!descriptors.IsNull()) { 863 if (!descriptors.IsNull()) {
864 JSONObject desc(&jsobj, "_descriptors"); 864 JSONObject desc(&jsobj, "_descriptors");
865 descriptors.PrintToJSONObject(&desc, false); 865 descriptors.PrintToJSONObject(&desc, false);
866 } 866 }
867 867
868 PrintJSONInlineIntervals(&jsobj); 868 PrintJSONInlineIntervals(&jsobj);
869 } 869 }
870 870
871 871
872 void Code::SetAwaitTokenPositions(const Array& await_token_positions) const {
873 StorePointer(&raw_ptr()->await_token_positions_, await_token_positions.raw());
874 }
875
876
872 void Context::PrintJSONImpl(JSONStream* stream, bool ref) const { 877 void Context::PrintJSONImpl(JSONStream* stream, bool ref) const {
873 JSONObject jsobj(stream); 878 JSONObject jsobj(stream);
874 // TODO(turnidge): Should the user level type for Context be Context 879 // TODO(turnidge): Should the user level type for Context be Context
875 // or Object? 880 // or Object?
876 AddCommonObjectProperties(&jsobj, "Context", ref); 881 AddCommonObjectProperties(&jsobj, "Context", ref);
877 jsobj.AddServiceId(*this); 882 jsobj.AddServiceId(*this);
878 883
879 jsobj.AddProperty("length", num_variables()); 884 jsobj.AddProperty("length", num_variables());
880 885
881 if (ref) { 886 if (ref) {
(...skipping 674 matching lines...) Expand 10 before | Expand all | Expand 10 after
1556 jsobj.AddProperty("mirrorReferent", referent_handle); 1561 jsobj.AddProperty("mirrorReferent", referent_handle);
1557 } 1562 }
1558 1563
1559 void UserTag::PrintJSONImpl(JSONStream* stream, bool ref) const { 1564 void UserTag::PrintJSONImpl(JSONStream* stream, bool ref) const {
1560 Instance::PrintJSONImpl(stream, ref); 1565 Instance::PrintJSONImpl(stream, ref);
1561 } 1566 }
1562 1567
1563 #endif 1568 #endif
1564 1569
1565 } // namespace dart 1570 } // namespace dart
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698