1.1 --- a/src/Structures.h Sat Aug 04 23:26:49 2012 -0700
1.2 +++ b/src/Structures.h Sat Aug 04 23:58:23 2012 -0700
1.3 @@ -103,8 +103,11 @@
1.4 unsigned traceOffsetCount_;
1.5 Barriered<Type> type_;
1.6
1.7 + // List of descriptors which must be allocated upon initialization.
1.8 + Barriered<FixedArray> composed_;
1.9 +
1.10 public:
1.11 - static StructMap *New(Zone *zone, const StructureBufferBuilder &builder);
1.12 + static StructMap *New(Zone *zone, const StructureBufferBuilder &builder, Handle<FixedArray> composed);
1.13
1.14 unsigned structureSize() {
1.15 return structureSize_;
1.16 @@ -121,6 +124,10 @@
1.17 Type *type() {
1.18 return type_;
1.19 }
1.20 + FixedArray *composed() {
1.21 + return composed_;
1.22 + }
1.23 +
1.24 void setType(Type *type) {
1.25 assert(!type_);
1.26 type_ = type;
1.27 @@ -130,6 +137,9 @@
1.28 static inline size_t offsetOfType() {
1.29 return OFFSETOF(StructMap, type_);
1.30 }
1.31 + static inline size_t offsetOfComposed() {
1.32 + return OFFSETOF(StructMap, composed_);
1.33 + }
1.34 // End GC descriptors.
1.35
1.36 static inline StructMap *cast(Object *obj) {