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

Unified Diff: runtime/vm/raw_object.h

Issue 10830131: Adding deopt info to code object. (Closed) Base URL: http://dart.googlecode.com/svn/branches/bleeding_edge/dart/
Patch Set: Created 8 years, 5 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/raw_object.h
===================================================================
--- runtime/vm/raw_object.h (revision 10150)
+++ runtime/vm/raw_object.h (working copy)
@@ -37,6 +37,7 @@
V(Stackmap) \
V(LocalVarDescriptors) \
V(ExceptionHandlers) \
+ V(DeoptInfo) \
V(Context) \
V(ContextScope) \
V(ICData) \
@@ -784,6 +785,8 @@
RawFunction* function_;
RawExceptionHandlers* exception_handlers_;
RawPcDescriptors* pc_descriptors_;
+ RawArray* deopt_info_array_;
+ RawArray* object_table_;
RawArray* stackmaps_;
RawLocalVarDescriptors* var_descriptors_;
RawArray* comments_;
@@ -896,6 +899,18 @@
};
+// Contains an array of deoptimization commands, e.g., move a specific register
+// into a specific slot of unoptimized frame.
+class RawDeoptInfo : public RawObject {
+ RAW_HEAP_OBJECT_IMPLEMENTATION(DeoptInfo);
+
+ RawSmi* length_; // Number of deoptimization commands
+
+ // Variable length data follows here.
+ intptr_t data_[0];
+};
+
+
class RawContext : public RawObject {
RAW_HEAP_OBJECT_IMPLEMENTATION(Context);

Powered by Google App Engine
This is Rietveld 408576698