Index: src/objects.h |
=================================================================== |
--- src/objects.h (revision 2356) |
+++ src/objects.h (working copy) |
@@ -297,97 +297,202 @@ |
V(JS_FUNCTION_TYPE) \ |
+ |
// Since string types are not consecutive, this macro is used to |
// iterate over them. |
#define STRING_TYPE_LIST(V) \ |
- V(SHORT_SYMBOL_TYPE, SeqTwoByteString::kAlignedSize, short_symbol) \ |
- V(MEDIUM_SYMBOL_TYPE, SeqTwoByteString::kAlignedSize, medium_symbol) \ |
- V(LONG_SYMBOL_TYPE, SeqTwoByteString::kAlignedSize, long_symbol) \ |
- V(SHORT_ASCII_SYMBOL_TYPE, SeqAsciiString::kAlignedSize, short_ascii_symbol) \ |
+ V(SHORT_SYMBOL_TYPE, \ |
+ SeqTwoByteString::kAlignedSize, \ |
+ short_symbol, \ |
+ ShortSymbol) \ |
+ V(MEDIUM_SYMBOL_TYPE, \ |
+ SeqTwoByteString::kAlignedSize, \ |
+ medium_symbol, \ |
+ MediumSymbol) \ |
+ V(LONG_SYMBOL_TYPE, \ |
+ SeqTwoByteString::kAlignedSize, \ |
+ long_symbol, \ |
+ LongSymbol) \ |
+ V(SHORT_ASCII_SYMBOL_TYPE, \ |
+ SeqAsciiString::kAlignedSize, \ |
+ short_ascii_symbol, \ |
+ ShortAsciiSymbol) \ |
V(MEDIUM_ASCII_SYMBOL_TYPE, \ |
SeqAsciiString::kAlignedSize, \ |
- medium_ascii_symbol) \ |
- V(LONG_ASCII_SYMBOL_TYPE, SeqAsciiString::kAlignedSize, long_ascii_symbol) \ |
- V(SHORT_CONS_SYMBOL_TYPE, ConsString::kSize, short_cons_symbol) \ |
- V(MEDIUM_CONS_SYMBOL_TYPE, ConsString::kSize, medium_cons_symbol) \ |
- V(LONG_CONS_SYMBOL_TYPE, ConsString::kSize, long_cons_symbol) \ |
- V(SHORT_CONS_ASCII_SYMBOL_TYPE, ConsString::kSize, short_cons_ascii_symbol) \ |
- V(MEDIUM_CONS_ASCII_SYMBOL_TYPE, ConsString::kSize, medium_cons_ascii_symbol)\ |
- V(LONG_CONS_ASCII_SYMBOL_TYPE, ConsString::kSize, long_cons_ascii_symbol) \ |
- V(SHORT_SLICED_SYMBOL_TYPE, SlicedString::kSize, short_sliced_symbol) \ |
- V(MEDIUM_SLICED_SYMBOL_TYPE, SlicedString::kSize, medium_sliced_symbol) \ |
- V(LONG_SLICED_SYMBOL_TYPE, SlicedString::kSize, long_sliced_symbol) \ |
+ medium_ascii_symbol, \ |
+ MediumAsciiSymbol) \ |
+ V(LONG_ASCII_SYMBOL_TYPE, \ |
+ SeqAsciiString::kAlignedSize, \ |
+ long_ascii_symbol, \ |
+ LongAsciiSymbol) \ |
+ V(SHORT_CONS_SYMBOL_TYPE, \ |
+ ConsString::kSize, \ |
+ short_cons_symbol, \ |
+ ShortConsSymbol) \ |
+ V(MEDIUM_CONS_SYMBOL_TYPE, \ |
+ ConsString::kSize, \ |
+ medium_cons_symbol, \ |
+ MediumConsSymbol) \ |
+ V(LONG_CONS_SYMBOL_TYPE, \ |
+ ConsString::kSize, \ |
+ long_cons_symbol, \ |
+ LongConsSymbol) \ |
+ V(SHORT_CONS_ASCII_SYMBOL_TYPE, \ |
+ ConsString::kSize, \ |
+ short_cons_ascii_symbol, \ |
+ ShortConsAsciiSymbol) \ |
+ V(MEDIUM_CONS_ASCII_SYMBOL_TYPE, \ |
+ ConsString::kSize, \ |
+ medium_cons_ascii_symbol, \ |
+ MediumConsAsciiSymbol) \ |
+ V(LONG_CONS_ASCII_SYMBOL_TYPE, \ |
+ ConsString::kSize, \ |
+ long_cons_ascii_symbol, \ |
+ LongConsAsciiSymbol) \ |
+ V(SHORT_SLICED_SYMBOL_TYPE, \ |
+ SlicedString::kSize, \ |
+ short_sliced_symbol, \ |
+ ShortSlicedSymbol) \ |
+ V(MEDIUM_SLICED_SYMBOL_TYPE, \ |
+ SlicedString::kSize, \ |
+ medium_sliced_symbol, \ |
+ MediumSlicedSymbol) \ |
+ V(LONG_SLICED_SYMBOL_TYPE, \ |
+ SlicedString::kSize, \ |
+ long_sliced_symbol, \ |
+ LongSlicedSymbol) \ |
V(SHORT_SLICED_ASCII_SYMBOL_TYPE, \ |
SlicedString::kSize, \ |
- short_sliced_ascii_symbol) \ |
+ short_sliced_ascii_symbol, \ |
+ ShortSlicedAsciiSymbol) \ |
V(MEDIUM_SLICED_ASCII_SYMBOL_TYPE, \ |
SlicedString::kSize, \ |
- medium_sliced_ascii_symbol) \ |
+ medium_sliced_ascii_symbol, \ |
+ MediumSlicedAsciiSymbol) \ |
V(LONG_SLICED_ASCII_SYMBOL_TYPE, \ |
SlicedString::kSize, \ |
- long_sliced_ascii_symbol) \ |
+ long_sliced_ascii_symbol, \ |
+ LongSlicedAsciiSymbol) \ |
V(SHORT_EXTERNAL_SYMBOL_TYPE, \ |
ExternalTwoByteString::kSize, \ |
- short_external_symbol) \ |
+ short_external_symbol, \ |
+ ShortExternalSymbol) \ |
V(MEDIUM_EXTERNAL_SYMBOL_TYPE, \ |
ExternalTwoByteString::kSize, \ |
- medium_external_symbol) \ |
+ medium_external_symbol, \ |
+ MediumExternalSymbol) \ |
V(LONG_EXTERNAL_SYMBOL_TYPE, \ |
ExternalTwoByteString::kSize, \ |
- long_external_symbol) \ |
+ long_external_symbol, \ |
+ LongExternalSymbol) \ |
V(SHORT_EXTERNAL_ASCII_SYMBOL_TYPE, \ |
ExternalAsciiString::kSize, \ |
- short_external_ascii_symbol) \ |
+ short_external_ascii_symbol, \ |
+ ShortExternalAsciiSymbol) \ |
V(MEDIUM_EXTERNAL_ASCII_SYMBOL_TYPE, \ |
ExternalAsciiString::kSize, \ |
- medium_external_ascii_symbol) \ |
+ medium_external_ascii_symbol, \ |
+ MediumExternalAsciiSymbol) \ |
V(LONG_EXTERNAL_ASCII_SYMBOL_TYPE, \ |
ExternalAsciiString::kSize, \ |
- long_external_ascii_symbol) \ |
- V(SHORT_STRING_TYPE, SeqTwoByteString::kAlignedSize, short_string) \ |
- V(MEDIUM_STRING_TYPE, SeqTwoByteString::kAlignedSize, medium_string) \ |
- V(LONG_STRING_TYPE, SeqTwoByteString::kAlignedSize, long_string) \ |
- V(SHORT_ASCII_STRING_TYPE, SeqAsciiString::kAlignedSize, short_ascii_string) \ |
+ long_external_ascii_symbol, \ |
+ LongExternalAsciiSymbol) \ |
+ V(SHORT_STRING_TYPE, \ |
+ SeqTwoByteString::kAlignedSize, \ |
+ short_string, \ |
+ ShortString) \ |
+ V(MEDIUM_STRING_TYPE, \ |
+ SeqTwoByteString::kAlignedSize, \ |
+ medium_string, \ |
+ MediumString) \ |
+ V(LONG_STRING_TYPE, \ |
+ SeqTwoByteString::kAlignedSize, \ |
+ long_string, \ |
+ LongString) \ |
+ V(SHORT_ASCII_STRING_TYPE, \ |
+ SeqAsciiString::kAlignedSize, \ |
+ short_ascii_string, \ |
+ ShortAsciiString) \ |
V(MEDIUM_ASCII_STRING_TYPE, \ |
SeqAsciiString::kAlignedSize, \ |
- medium_ascii_string) \ |
- V(LONG_ASCII_STRING_TYPE, SeqAsciiString::kAlignedSize, long_ascii_string) \ |
- V(SHORT_CONS_STRING_TYPE, ConsString::kSize, short_cons_string) \ |
- V(MEDIUM_CONS_STRING_TYPE, ConsString::kSize, medium_cons_string) \ |
- V(LONG_CONS_STRING_TYPE, ConsString::kSize, long_cons_string) \ |
- V(SHORT_CONS_ASCII_STRING_TYPE, ConsString::kSize, short_cons_ascii_string) \ |
- V(MEDIUM_CONS_ASCII_STRING_TYPE, ConsString::kSize, medium_cons_ascii_string)\ |
- V(LONG_CONS_ASCII_STRING_TYPE, ConsString::kSize, long_cons_ascii_string) \ |
- V(SHORT_SLICED_STRING_TYPE, SlicedString::kSize, short_sliced_string) \ |
- V(MEDIUM_SLICED_STRING_TYPE, SlicedString::kSize, medium_sliced_string) \ |
- V(LONG_SLICED_STRING_TYPE, SlicedString::kSize, long_sliced_string) \ |
+ medium_ascii_string, \ |
+ MediumAsciiString) \ |
+ V(LONG_ASCII_STRING_TYPE, \ |
+ SeqAsciiString::kAlignedSize, \ |
+ long_ascii_string, \ |
+ LongAsciiString) \ |
+ V(SHORT_CONS_STRING_TYPE, \ |
+ ConsString::kSize, \ |
+ short_cons_string, \ |
+ ShortConsString) \ |
+ V(MEDIUM_CONS_STRING_TYPE, \ |
+ ConsString::kSize, \ |
+ medium_cons_string, \ |
+ MediumConsString) \ |
+ V(LONG_CONS_STRING_TYPE, \ |
+ ConsString::kSize, \ |
+ long_cons_string, \ |
+ LongConsString) \ |
+ V(SHORT_CONS_ASCII_STRING_TYPE, \ |
+ ConsString::kSize, \ |
+ short_cons_ascii_string, \ |
+ ShortConsAsciiString) \ |
+ V(MEDIUM_CONS_ASCII_STRING_TYPE, \ |
+ ConsString::kSize, \ |
+ medium_cons_ascii_string, \ |
+ MediumConsAsciiString) \ |
+ V(LONG_CONS_ASCII_STRING_TYPE, \ |
+ ConsString::kSize, \ |
+ long_cons_ascii_string, \ |
+ LongConsAsciiString) \ |
+ V(SHORT_SLICED_STRING_TYPE, \ |
+ SlicedString::kSize, \ |
+ short_sliced_string, \ |
+ ShortSlicedString) \ |
+ V(MEDIUM_SLICED_STRING_TYPE, \ |
+ SlicedString::kSize, \ |
+ medium_sliced_string, \ |
+ MediumSlicedString) \ |
+ V(LONG_SLICED_STRING_TYPE, \ |
+ SlicedString::kSize, \ |
+ long_sliced_string, \ |
+ LongSlicedString) \ |
V(SHORT_SLICED_ASCII_STRING_TYPE, \ |
SlicedString::kSize, \ |
- short_sliced_ascii_string) \ |
+ short_sliced_ascii_string, \ |
+ ShortSlicedAsciiString) \ |
V(MEDIUM_SLICED_ASCII_STRING_TYPE, \ |
SlicedString::kSize, \ |
- medium_sliced_ascii_string) \ |
+ medium_sliced_ascii_string, \ |
+ MediumSlicedAsciiString) \ |
V(LONG_SLICED_ASCII_STRING_TYPE, \ |
SlicedString::kSize, \ |
- long_sliced_ascii_string) \ |
+ long_sliced_ascii_string, \ |
+ LongSlicedAsciiString) \ |
V(SHORT_EXTERNAL_STRING_TYPE, \ |
ExternalTwoByteString::kSize, \ |
- short_external_string) \ |
+ short_external_string, \ |
+ ShortExternalString) \ |
V(MEDIUM_EXTERNAL_STRING_TYPE, \ |
ExternalTwoByteString::kSize, \ |
- medium_external_string) \ |
+ medium_external_string, \ |
+ MediumExternalString) \ |
V(LONG_EXTERNAL_STRING_TYPE, \ |
ExternalTwoByteString::kSize, \ |
- long_external_string) \ |
+ long_external_string, \ |
+ LongExternalString) \ |
V(SHORT_EXTERNAL_ASCII_STRING_TYPE, \ |
ExternalAsciiString::kSize, \ |
- short_external_ascii_string) \ |
+ short_external_ascii_string, \ |
+ ShortExternalAsciiString) \ |
V(MEDIUM_EXTERNAL_ASCII_STRING_TYPE, \ |
ExternalAsciiString::kSize, \ |
- medium_external_ascii_string) \ |
+ medium_external_ascii_string, \ |
+ MediumExternalAsciiString) \ |
V(LONG_EXTERNAL_ASCII_STRING_TYPE, \ |
ExternalAsciiString::kSize, \ |
- long_external_ascii_string) |
+ long_external_ascii_string, \ |
+ LongExternalAsciiString) |
// A struct is a simple object a set of object-valued fields. Including an |
// object type in this causes the compiler to generate most of the boilerplate |