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 1493 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1504 } else if (FLAG_track_double_fields && representation.IsDouble()) { | 1504 } else if (FLAG_track_double_fields && representation.IsDouble()) { |
1505 return IsNumber(); | 1505 return IsNumber(); |
1506 } else if (FLAG_track_heap_object_fields && representation.IsHeapObject()) { | 1506 } else if (FLAG_track_heap_object_fields && representation.IsHeapObject()) { |
1507 return IsHeapObject(); | 1507 return IsHeapObject(); |
1508 } | 1508 } |
1509 return true; | 1509 return true; |
1510 } | 1510 } |
1511 | 1511 |
1512 Handle<HeapType> OptimalType(Isolate* isolate, Representation representation); | 1512 Handle<HeapType> OptimalType(Isolate* isolate, Representation representation); |
1513 | 1513 |
1514 inline MaybeObject* AllocateNewStorageFor(Heap* heap, | 1514 inline static Handle<Object> NewStorageFor(Isolate* isolate, |
1515 Representation representation); | 1515 Handle<Object> object, |
| 1516 Representation representation); |
1516 | 1517 |
1517 // Returns true if the object is of the correct type to be used as a | 1518 // Returns true if the object is of the correct type to be used as a |
1518 // implementation of a JSObject's elements. | 1519 // implementation of a JSObject's elements. |
1519 inline bool HasValidElements(); | 1520 inline bool HasValidElements(); |
1520 | 1521 |
1521 inline bool HasSpecificClassOf(String* name); | 1522 inline bool HasSpecificClassOf(String* name); |
1522 | 1523 |
1523 MUST_USE_RESULT MaybeObject* ToObject(Isolate* isolate); // ECMA-262 9.9. | 1524 MUST_USE_RESULT MaybeObject* ToObject(Isolate* isolate); // ECMA-262 9.9. |
1524 bool BooleanValue(); // ECMA-262 9.2. | 1525 bool BooleanValue(); // ECMA-262 9.2. |
1525 | 1526 |
(...skipping 1075 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2601 // Convert and update the elements backing store to be a | 2602 // Convert and update the elements backing store to be a |
2602 // SeededNumberDictionary dictionary. Returns the backing after conversion. | 2603 // SeededNumberDictionary dictionary. Returns the backing after conversion. |
2603 static Handle<SeededNumberDictionary> NormalizeElements( | 2604 static Handle<SeededNumberDictionary> NormalizeElements( |
2604 Handle<JSObject> object); | 2605 Handle<JSObject> object); |
2605 | 2606 |
2606 // Transform slow named properties to fast variants. | 2607 // Transform slow named properties to fast variants. |
2607 static void TransformToFastProperties(Handle<JSObject> object, | 2608 static void TransformToFastProperties(Handle<JSObject> object, |
2608 int unused_property_fields); | 2609 int unused_property_fields); |
2609 | 2610 |
2610 // Access fast-case object properties at index. | 2611 // Access fast-case object properties at index. |
2611 MUST_USE_RESULT inline MaybeObject* FastPropertyAt( | |
2612 Representation representation, | |
2613 int index); | |
2614 static Handle<Object> FastPropertyAt(Handle<JSObject> object, | 2612 static Handle<Object> FastPropertyAt(Handle<JSObject> object, |
2615 Representation representation, | 2613 Representation representation, |
2616 int index); | 2614 int index); |
2617 inline Object* RawFastPropertyAt(int index); | 2615 inline Object* RawFastPropertyAt(int index); |
2618 inline void FastPropertyAtPut(int index, Object* value); | 2616 inline void FastPropertyAtPut(int index, Object* value); |
2619 | 2617 |
2620 // Access to in object properties. | 2618 // Access to in object properties. |
2621 inline int GetInObjectPropertyOffset(int index); | 2619 inline int GetInObjectPropertyOffset(int index); |
2622 inline Object* InObjectPropertyAt(int index); | 2620 inline Object* InObjectPropertyAt(int index); |
2623 inline Object* InObjectPropertyAtPut(int index, | 2621 inline Object* InObjectPropertyAtPut(int index, |
(...skipping 8433 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
11057 } else { | 11055 } else { |
11058 value &= ~(1 << bit_position); | 11056 value &= ~(1 << bit_position); |
11059 } | 11057 } |
11060 return value; | 11058 return value; |
11061 } | 11059 } |
11062 }; | 11060 }; |
11063 | 11061 |
11064 } } // namespace v8::internal | 11062 } } // namespace v8::internal |
11065 | 11063 |
11066 #endif // V8_OBJECTS_H_ | 11064 #endif // V8_OBJECTS_H_ |
OLD | NEW |