OLD | NEW |
1 // Copyright 2007-2009 the V8 project authors. All rights reserved. | 1 // Copyright 2007-2009 the V8 project authors. All rights reserved. |
2 // Redistribution and use in source and binary forms, with or without | 2 // Redistribution and use in source and binary forms, with or without |
3 // modification, are permitted provided that the following conditions are | 3 // modification, are permitted provided that the following conditions are |
4 // met: | 4 // met: |
5 // | 5 // |
6 // * Redistributions of source code must retain the above copyright | 6 // * Redistributions of source code must retain the above copyright |
7 // notice, this list of conditions and the following disclaimer. | 7 // notice, this list of conditions and the following disclaimer. |
8 // * Redistributions in binary form must reproduce the above | 8 // * Redistributions in binary form must reproduce the above |
9 // copyright notice, this list of conditions and the following | 9 // copyright notice, this list of conditions and the following |
10 // disclaimer in the documentation and/or other materials provided | 10 // disclaimer in the documentation and/or other materials provided |
(...skipping 3193 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
3204 static const int kHeapObjectMapOffset = 0; | 3204 static const int kHeapObjectMapOffset = 0; |
3205 static const int kMapInstanceTypeOffset = sizeof(void*) + sizeof(int); | 3205 static const int kMapInstanceTypeOffset = sizeof(void*) + sizeof(int); |
3206 static const int kStringResourceOffset = | 3206 static const int kStringResourceOffset = |
3207 InternalConstants<sizeof(void*)>::kStringResourceOffset; | 3207 InternalConstants<sizeof(void*)>::kStringResourceOffset; |
3208 | 3208 |
3209 static const int kProxyProxyOffset = sizeof(void*); | 3209 static const int kProxyProxyOffset = sizeof(void*); |
3210 static const int kJSObjectHeaderSize = 3 * sizeof(void*); | 3210 static const int kJSObjectHeaderSize = 3 * sizeof(void*); |
3211 static const int kFullStringRepresentationMask = 0x07; | 3211 static const int kFullStringRepresentationMask = 0x07; |
3212 static const int kExternalTwoByteRepresentationTag = 0x02; | 3212 static const int kExternalTwoByteRepresentationTag = 0x02; |
3213 | 3213 |
3214 // These constants are compiler dependent so their values must be | 3214 static const int kJSObjectType = 0x9f; |
3215 // defined within the implementation. | 3215 static const int kFirstNonstringType = 0x80; |
3216 V8EXPORT static int kJSObjectType; | 3216 static const int kProxyType = 0x85; |
3217 V8EXPORT static int kFirstNonstringType; | |
3218 V8EXPORT static int kProxyType; | |
3219 | 3217 |
3220 static inline bool HasHeapObjectTag(internal::Object* value) { | 3218 static inline bool HasHeapObjectTag(internal::Object* value) { |
3221 return ((reinterpret_cast<intptr_t>(value) & kHeapObjectTagMask) == | 3219 return ((reinterpret_cast<intptr_t>(value) & kHeapObjectTagMask) == |
3222 kHeapObjectTag); | 3220 kHeapObjectTag); |
3223 } | 3221 } |
3224 | 3222 |
3225 static inline bool HasSmiTag(internal::Object* value) { | 3223 static inline bool HasSmiTag(internal::Object* value) { |
3226 return ((reinterpret_cast<intptr_t>(value) & kSmiTagMask) == kSmiTag); | 3224 return ((reinterpret_cast<intptr_t>(value) & kSmiTagMask) == kSmiTag); |
3227 } | 3225 } |
3228 | 3226 |
(...skipping 351 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
3580 | 3578 |
3581 } // namespace v8 | 3579 } // namespace v8 |
3582 | 3580 |
3583 | 3581 |
3584 #undef V8EXPORT | 3582 #undef V8EXPORT |
3585 #undef V8EXPORT_INLINE | 3583 #undef V8EXPORT_INLINE |
3586 #undef TYPE_CHECK | 3584 #undef TYPE_CHECK |
3587 | 3585 |
3588 | 3586 |
3589 #endif // V8_H_ | 3587 #endif // V8_H_ |
OLD | NEW |