OLD | NEW |
1 // Copyright 2012 the V8 project authors. All rights reserved. | 1 // Copyright 2012 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 4804 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
4815 inline bool has_instance_call_handler() { | 4815 inline bool has_instance_call_handler() { |
4816 return ((1 << kHasInstanceCallHandler) & bit_field()) != 0; | 4816 return ((1 << kHasInstanceCallHandler) & bit_field()) != 0; |
4817 } | 4817 } |
4818 | 4818 |
4819 inline void set_is_extensible(bool value); | 4819 inline void set_is_extensible(bool value); |
4820 inline bool is_extensible(); | 4820 inline bool is_extensible(); |
4821 | 4821 |
4822 inline void set_elements_kind(ElementsKind elements_kind) { | 4822 inline void set_elements_kind(ElementsKind elements_kind) { |
4823 ASSERT(elements_kind < kElementsKindCount); | 4823 ASSERT(elements_kind < kElementsKindCount); |
4824 ASSERT(kElementsKindCount <= (1 << kElementsKindBitCount)); | 4824 ASSERT(kElementsKindCount <= (1 << kElementsKindBitCount)); |
| 4825 ASSERT(!is_observed() || |
| 4826 elements_kind == DICTIONARY_ELEMENTS || |
| 4827 elements_kind == NON_STRICT_ARGUMENTS_ELEMENTS || |
| 4828 IsExternalArrayElementsKind(elements_kind)); |
4825 set_bit_field2((bit_field2() & ~kElementsKindMask) | | 4829 set_bit_field2((bit_field2() & ~kElementsKindMask) | |
4826 (elements_kind << kElementsKindShift)); | 4830 (elements_kind << kElementsKindShift)); |
4827 ASSERT(this->elements_kind() == elements_kind); | 4831 ASSERT(this->elements_kind() == elements_kind); |
4828 } | 4832 } |
4829 | 4833 |
4830 inline ElementsKind elements_kind() { | 4834 inline ElementsKind elements_kind() { |
4831 return static_cast<ElementsKind>( | 4835 return static_cast<ElementsKind>( |
4832 (bit_field2() & kElementsKindMask) >> kElementsKindShift); | 4836 (bit_field2() & kElementsKindMask) >> kElementsKindShift); |
4833 } | 4837 } |
4834 | 4838 |
(...skipping 4248 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
9083 } else { | 9087 } else { |
9084 value &= ~(1 << bit_position); | 9088 value &= ~(1 << bit_position); |
9085 } | 9089 } |
9086 return value; | 9090 return value; |
9087 } | 9091 } |
9088 }; | 9092 }; |
9089 | 9093 |
9090 } } // namespace v8::internal | 9094 } } // namespace v8::internal |
9091 | 9095 |
9092 #endif // V8_OBJECTS_H_ | 9096 #endif // V8_OBJECTS_H_ |
OLD | NEW |