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 #ifndef V8_OBJECTS_H_ | 5 #ifndef V8_OBJECTS_H_ |
6 #define V8_OBJECTS_H_ | 6 #define V8_OBJECTS_H_ |
7 | 7 |
8 #include "src/allocation.h" | 8 #include "src/allocation.h" |
9 #include "src/assert-scope.h" | 9 #include "src/assert-scope.h" |
10 #include "src/builtins.h" | 10 #include "src/builtins.h" |
11 #include "src/elements-kind.h" | 11 #include "src/elements-kind.h" |
| 12 #include "src/field-index.h" |
12 #include "src/flags.h" | 13 #include "src/flags.h" |
13 #include "src/list.h" | 14 #include "src/list.h" |
14 #include "src/property-details.h" | 15 #include "src/property-details.h" |
15 #include "src/smart-pointers.h" | 16 #include "src/smart-pointers.h" |
16 #include "src/unicode-inl.h" | 17 #include "src/unicode-inl.h" |
17 #if V8_TARGET_ARCH_ARM64 | 18 #if V8_TARGET_ARCH_ARM64 |
18 #include "src/arm64/constants-arm64.h" | 19 #include "src/arm64/constants-arm64.h" |
19 #elif V8_TARGET_ARCH_ARM | 20 #elif V8_TARGET_ARCH_ARM |
20 #include "src/arm/constants-arm.h" | 21 #include "src/arm/constants-arm.h" |
21 #elif V8_TARGET_ARCH_MIPS | 22 #elif V8_TARGET_ARCH_MIPS |
(...skipping 2470 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2492 static Handle<SeededNumberDictionary> NormalizeElements( | 2493 static Handle<SeededNumberDictionary> NormalizeElements( |
2493 Handle<JSObject> object); | 2494 Handle<JSObject> object); |
2494 | 2495 |
2495 // Transform slow named properties to fast variants. | 2496 // Transform slow named properties to fast variants. |
2496 static void TransformToFastProperties(Handle<JSObject> object, | 2497 static void TransformToFastProperties(Handle<JSObject> object, |
2497 int unused_property_fields); | 2498 int unused_property_fields); |
2498 | 2499 |
2499 // Access fast-case object properties at index. | 2500 // Access fast-case object properties at index. |
2500 static Handle<Object> FastPropertyAt(Handle<JSObject> object, | 2501 static Handle<Object> FastPropertyAt(Handle<JSObject> object, |
2501 Representation representation, | 2502 Representation representation, |
2502 int index); | 2503 FieldIndex index); |
2503 inline Object* RawFastPropertyAt(int index); | 2504 inline Object* RawFastPropertyAt(FieldIndex index); |
2504 inline void FastPropertyAtPut(int index, Object* value); | 2505 inline void FastPropertyAtPut(FieldIndex index, Object* value); |
2505 void WriteToField(int descriptor, Object* value); | 2506 void WriteToField(int descriptor, Object* value); |
2506 | 2507 |
2507 // Access to in object properties. | 2508 // Access to in object properties. |
2508 inline int GetInObjectPropertyOffset(int index); | 2509 inline int GetInObjectPropertyOffset(int index); |
2509 inline Object* InObjectPropertyAt(int index); | 2510 inline Object* InObjectPropertyAt(int index); |
2510 inline Object* InObjectPropertyAtPut(int index, | 2511 inline Object* InObjectPropertyAtPut(int index, |
2511 Object* value, | 2512 Object* value, |
2512 WriteBarrierMode mode | 2513 WriteBarrierMode mode |
2513 = UPDATE_WRITE_BARRIER); | 2514 = UPDATE_WRITE_BARRIER); |
2514 | 2515 |
(...skipping 8733 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
11248 } else { | 11249 } else { |
11249 value &= ~(1 << bit_position); | 11250 value &= ~(1 << bit_position); |
11250 } | 11251 } |
11251 return value; | 11252 return value; |
11252 } | 11253 } |
11253 }; | 11254 }; |
11254 | 11255 |
11255 } } // namespace v8::internal | 11256 } } // namespace v8::internal |
11256 | 11257 |
11257 #endif // V8_OBJECTS_H_ | 11258 #endif // V8_OBJECTS_H_ |
OLD | NEW |