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 2174 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2185 } | 2185 } |
2186 } | 2186 } |
2187 | 2187 |
2188 | 2188 |
2189 bool JSObject::HasFastProperties() { | 2189 bool JSObject::HasFastProperties() { |
2190 DCHECK(properties()->IsDictionary() == map()->is_dictionary_map()); | 2190 DCHECK(properties()->IsDictionary() == map()->is_dictionary_map()); |
2191 return !properties()->IsDictionary(); | 2191 return !properties()->IsDictionary(); |
2192 } | 2192 } |
2193 | 2193 |
2194 | 2194 |
| 2195 MaybeHandle<Object> JSObject::SetOwnElement(Handle<JSObject> object, |
| 2196 uint32_t index, |
| 2197 Handle<Object> value, |
| 2198 LanguageMode language_mode) { |
| 2199 return JSObject::SetOwnElement(object, index, value, NONE, language_mode); |
| 2200 } |
| 2201 |
| 2202 |
2195 bool Map::TooManyFastProperties(StoreFromKeyed store_mode) { | 2203 bool Map::TooManyFastProperties(StoreFromKeyed store_mode) { |
2196 if (unused_property_fields() != 0) return false; | 2204 if (unused_property_fields() != 0) return false; |
2197 if (is_prototype_map()) return false; | 2205 if (is_prototype_map()) return false; |
2198 int minimum = store_mode == CERTAINLY_NOT_STORE_FROM_KEYED ? 128 : 12; | 2206 int minimum = store_mode == CERTAINLY_NOT_STORE_FROM_KEYED ? 128 : 12; |
2199 int limit = Max(minimum, inobject_properties()); | 2207 int limit = Max(minimum, inobject_properties()); |
2200 int external = NumberOfFields() - inobject_properties(); | 2208 int external = NumberOfFields() - inobject_properties(); |
2201 return external > limit; | 2209 return external > limit; |
2202 } | 2210 } |
2203 | 2211 |
2204 | 2212 |
(...skipping 5399 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
7604 #undef READ_SHORT_FIELD | 7612 #undef READ_SHORT_FIELD |
7605 #undef WRITE_SHORT_FIELD | 7613 #undef WRITE_SHORT_FIELD |
7606 #undef READ_BYTE_FIELD | 7614 #undef READ_BYTE_FIELD |
7607 #undef WRITE_BYTE_FIELD | 7615 #undef WRITE_BYTE_FIELD |
7608 #undef NOBARRIER_READ_BYTE_FIELD | 7616 #undef NOBARRIER_READ_BYTE_FIELD |
7609 #undef NOBARRIER_WRITE_BYTE_FIELD | 7617 #undef NOBARRIER_WRITE_BYTE_FIELD |
7610 | 7618 |
7611 } } // namespace v8::internal | 7619 } } // namespace v8::internal |
7612 | 7620 |
7613 #endif // V8_OBJECTS_INL_H_ | 7621 #endif // V8_OBJECTS_INL_H_ |
OLD | NEW |