Skip to content

Commit

Permalink
gyp: fix post-mortem in v0.11
Browse files Browse the repository at this point in the history
Expose missing constants and keep symbols on OSX.
  • Loading branch information
indutny committed Jul 23, 2014
1 parent 3530fa9 commit eba7aae
Showing 1 changed file with 34 additions and 2 deletions.
36 changes: 34 additions & 2 deletions deps/v8/tools/gen-postmortem-metadata.py
Original file line number Diff line number Diff line change
Expand Up @@ -79,6 +79,14 @@
{ 'name': 'SmiShiftSize', 'value': 'kSmiShiftSize' },
{ 'name': 'PointerSizeLog2', 'value': 'kPointerSizeLog2' },

{ 'name': 'OddballFalse', 'value': 'Oddball::kFalse' },
{ 'name': 'OddballTrue', 'value': 'Oddball::kTrue' },
{ 'name': 'OddballTheHole', 'value': 'Oddball::kTheHole' },
{ 'name': 'OddballNull', 'value': 'Oddball::kNull' },
{ 'name': 'OddballArgumentMarker', 'value': 'Oddball::kArgumentMarker' },
{ 'name': 'OddballUndefined', 'value': 'Oddball::kUndefined' },
{ 'name': 'OddballOther', 'value': 'Oddball::kOther' },

{ 'name': 'prop_desc_key',
'value': 'DescriptorArray::kDescriptorKey' },
{ 'name': 'prop_desc_details',
Expand All @@ -96,6 +104,20 @@
{ 'name': 'prop_type_mask',
'value': 'PropertyDetails::TypeField::kMask' },

{ 'name': 'bit_field2_elements_kind_mask',
'value': 'Map::kElementsKindMask' },
{ 'name': 'bit_field2_elements_kind_shift',
'value': 'Map::kElementsKindShift' },
{ 'name': 'bit_field3_dictionary_map_shift',
'value': 'Map::DictionaryMap::kShift' },

{ 'name': 'elements_fast_holey_elements',
'value': 'FAST_HOLEY_ELEMENTS' },
{ 'name': 'elements_fast_elements',
'value': 'FAST_ELEMENTS' },
{ 'name': 'elements_dictionary_elements',
'value': 'DICTIONARY_ELEMENTS' },

{ 'name': 'off_fp_context',
'value': 'StandardFrameConstants::kContextOffset' },
{ 'name': 'off_fp_marker',
Expand All @@ -117,6 +139,15 @@
'Map, transitions, uintptr_t, kTransitionsOrBackPointerOffset',
'Map, inobject_properties, int, kInObjectPropertiesOffset',
'Map, instance_size, int, kInstanceSizeOffset',
'Map, bit_field, char, kBitFieldOffset',
'Map, bit_field2, char, kBitField2Offset',
'Map, prototype, Object, kPrototypeOffset',
'StringDictionaryShape, prefix_size, int, kPrefixSize',
'StringDictionaryShape, entry_size, int, kEntrySize',
'SeededNumberDictionaryShape, prefix_size, int, kPrefixSize',
'UnseededNumberDictionaryShape, prefix_size, int, kPrefixSize',
'NumberDictionaryShape, entry_size, int, kEntrySize',
'Oddball, kind_offset, int, kKindOffset',
'HeapNumber, value, double, kValueOffset',
'ConsString, first, String, kFirstOffset',
'ConsString, second, String, kSecondOffset',
Expand Down Expand Up @@ -356,7 +387,7 @@ def parse_field(call):
'value': '%s::%s' % (klass, offset)
});

assert(kind == 'SMI_ACCESSORS');
assert(kind == 'SMI_ACCESSORS' or kind == 'ACCESSORS_TO_SMI');
klass = args[0];
field = args[1];
offset = args[2];
Expand All @@ -380,7 +411,8 @@ def load_fields():
# may span multiple lines and may contain nested parentheses. We also
# call parse_field() to pick apart the invocation.
#
prefixes = [ 'ACCESSORS', 'ACCESSORS_GCSAFE', 'SMI_ACCESSORS' ];
prefixes = [ 'ACCESSORS', 'ACCESSORS_GCSAFE',
'SMI_ACCESSORS', 'ACCESSORS_TO_SMI' ];
current = '';
opens = 0;

Expand Down

0 comments on commit eba7aae

Please sign in to comment.