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

Unified Diff: runtime/vm/raw_object.h

Issue 356623002: Reduce size of PCDescriptors. Order struct fields so that they do not get padded unnecessarily. (Closed) Base URL: http://dart.googlecode.com/svn/branches/bleeding_edge/dart/
Patch Set: Created 6 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
« runtime/vm/object.h ('K') | « runtime/vm/object.cc ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: runtime/vm/raw_object.h
===================================================================
--- runtime/vm/raw_object.h (revision 37664)
+++ runtime/vm/raw_object.h (working copy)
@@ -906,8 +906,16 @@
intptr_t length_; // Number of descriptors.
+ struct PcDescriptorRec {
+ uword pc;
+ int32_t deopt_id;
+ int32_t token_pos; // Or deopt reason.
+ int16_t try_index; // Or deopt index.
+ int8_t kind;
+ };
+
// Variable length data follows here.
- intptr_t* data() { OPEN_ARRAY_START(intptr_t, intptr_t); }
+ PcDescriptorRec* data() { OPEN_ARRAY_START(PcDescriptorRec, intptr_t); }
friend class Object;
};
@@ -947,10 +955,10 @@
struct VarInfo {
intptr_t index; // Slot index on stack or in context.
- int8_t kind; // Entry kind of type VarInfoKind.
- int16_t scope_id; // Scope to which the variable belongs.
intptr_t begin_pos; // Token position of scope start.
intptr_t end_pos; // Token position of scope end.
+ int16_t scope_id; // Scope to which the variable belongs.
+ int8_t kind; // Entry kind of type VarInfoKind.
};
private:
« runtime/vm/object.h ('K') | « runtime/vm/object.cc ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698