| OLD | NEW |
| 1 // Copyright 2012 the V8 project authors. All rights reserved. | 1 // Copyright 2012 the V8 project authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 // | 4 // |
| 5 // Review notes: | 5 // Review notes: |
| 6 // | 6 // |
| 7 // - The use of macros in these inline functions may seem superfluous | 7 // - The use of macros in these inline functions may seem superfluous |
| 8 // but it is absolutely needed to make sure gcc generates optimal | 8 // but it is absolutely needed to make sure gcc generates optimal |
| 9 // code. gcc is not happy when attempting to inline too deep. | 9 // code. gcc is not happy when attempting to inline too deep. |
| 10 // | 10 // |
| (...skipping 143 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 154 | 154 |
| 155 | 155 |
| 156 // External objects are not extensible, so the map check is enough. | 156 // External objects are not extensible, so the map check is enough. |
| 157 bool Object::IsExternal() const { | 157 bool Object::IsExternal() const { |
| 158 return Object::IsHeapObject() && | 158 return Object::IsHeapObject() && |
| 159 HeapObject::cast(this)->map() == | 159 HeapObject::cast(this)->map() == |
| 160 HeapObject::cast(this)->GetHeap()->external_map(); | 160 HeapObject::cast(this)->GetHeap()->external_map(); |
| 161 } | 161 } |
| 162 | 162 |
| 163 | 163 |
| 164 bool Object::IsAccessorInfo() const { | 164 bool Object::IsAccessorInfo() const { return IsExecutableAccessorInfo(); } |
| 165 return IsExecutableAccessorInfo() || IsDeclaredAccessorInfo(); | |
| 166 } | |
| 167 | 165 |
| 168 | 166 |
| 169 bool Object::IsSmi() const { | 167 bool Object::IsSmi() const { |
| 170 return HAS_SMI_TAG(this); | 168 return HAS_SMI_TAG(this); |
| 171 } | 169 } |
| 172 | 170 |
| 173 | 171 |
| 174 bool Object::IsHeapObject() const { | 172 bool Object::IsHeapObject() const { |
| 175 return Internals::HasHeapObjectTag(this); | 173 return Internals::HasHeapObjectTag(this); |
| 176 } | 174 } |
| (...skipping 5305 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 5482 ACCESSORS(GlobalObject, global_proxy, JSObject, kGlobalProxyOffset) | 5480 ACCESSORS(GlobalObject, global_proxy, JSObject, kGlobalProxyOffset) |
| 5483 | 5481 |
| 5484 ACCESSORS(JSGlobalProxy, native_context, Object, kNativeContextOffset) | 5482 ACCESSORS(JSGlobalProxy, native_context, Object, kNativeContextOffset) |
| 5485 ACCESSORS(JSGlobalProxy, hash, Object, kHashOffset) | 5483 ACCESSORS(JSGlobalProxy, hash, Object, kHashOffset) |
| 5486 | 5484 |
| 5487 ACCESSORS(AccessorInfo, name, Object, kNameOffset) | 5485 ACCESSORS(AccessorInfo, name, Object, kNameOffset) |
| 5488 ACCESSORS_TO_SMI(AccessorInfo, flag, kFlagOffset) | 5486 ACCESSORS_TO_SMI(AccessorInfo, flag, kFlagOffset) |
| 5489 ACCESSORS(AccessorInfo, expected_receiver_type, Object, | 5487 ACCESSORS(AccessorInfo, expected_receiver_type, Object, |
| 5490 kExpectedReceiverTypeOffset) | 5488 kExpectedReceiverTypeOffset) |
| 5491 | 5489 |
| 5492 ACCESSORS(DeclaredAccessorDescriptor, serialized_data, ByteArray, | |
| 5493 kSerializedDataOffset) | |
| 5494 | |
| 5495 ACCESSORS(DeclaredAccessorInfo, descriptor, DeclaredAccessorDescriptor, | |
| 5496 kDescriptorOffset) | |
| 5497 | |
| 5498 ACCESSORS(ExecutableAccessorInfo, getter, Object, kGetterOffset) | 5490 ACCESSORS(ExecutableAccessorInfo, getter, Object, kGetterOffset) |
| 5499 ACCESSORS(ExecutableAccessorInfo, setter, Object, kSetterOffset) | 5491 ACCESSORS(ExecutableAccessorInfo, setter, Object, kSetterOffset) |
| 5500 ACCESSORS(ExecutableAccessorInfo, data, Object, kDataOffset) | 5492 ACCESSORS(ExecutableAccessorInfo, data, Object, kDataOffset) |
| 5501 | 5493 |
| 5502 ACCESSORS(Box, value, Object, kValueOffset) | 5494 ACCESSORS(Box, value, Object, kValueOffset) |
| 5503 | 5495 |
| 5504 ACCESSORS(AccessorPair, getter, Object, kGetterOffset) | 5496 ACCESSORS(AccessorPair, getter, Object, kGetterOffset) |
| 5505 ACCESSORS(AccessorPair, setter, Object, kSetterOffset) | 5497 ACCESSORS(AccessorPair, setter, Object, kSetterOffset) |
| 5506 | 5498 |
| 5507 ACCESSORS(AccessCheckInfo, named_callback, Object, kNamedCallbackOffset) | 5499 ACCESSORS(AccessCheckInfo, named_callback, Object, kNamedCallbackOffset) |
| (...skipping 2010 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 7518 #undef READ_SHORT_FIELD | 7510 #undef READ_SHORT_FIELD |
| 7519 #undef WRITE_SHORT_FIELD | 7511 #undef WRITE_SHORT_FIELD |
| 7520 #undef READ_BYTE_FIELD | 7512 #undef READ_BYTE_FIELD |
| 7521 #undef WRITE_BYTE_FIELD | 7513 #undef WRITE_BYTE_FIELD |
| 7522 #undef NOBARRIER_READ_BYTE_FIELD | 7514 #undef NOBARRIER_READ_BYTE_FIELD |
| 7523 #undef NOBARRIER_WRITE_BYTE_FIELD | 7515 #undef NOBARRIER_WRITE_BYTE_FIELD |
| 7524 | 7516 |
| 7525 } } // namespace v8::internal | 7517 } } // namespace v8::internal |
| 7526 | 7518 |
| 7527 #endif // V8_OBJECTS_INL_H_ | 7519 #endif // V8_OBJECTS_INL_H_ |
| OLD | NEW |