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 2471 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2493 static Handle<SeededNumberDictionary> NormalizeElements( | 2494 static Handle<SeededNumberDictionary> NormalizeElements( |
2494 Handle<JSObject> object); | 2495 Handle<JSObject> object); |
2495 | 2496 |
2496 // Transform slow named properties to fast variants. | 2497 // Transform slow named properties to fast variants. |
2497 static void TransformToFastProperties(Handle<JSObject> object, | 2498 static void TransformToFastProperties(Handle<JSObject> object, |
2498 int unused_property_fields); | 2499 int unused_property_fields); |
2499 | 2500 |
2500 // Access fast-case object properties at index. | 2501 // Access fast-case object properties at index. |
2501 static Handle<Object> FastPropertyAt(Handle<JSObject> object, | 2502 static Handle<Object> FastPropertyAt(Handle<JSObject> object, |
2502 Representation representation, | 2503 Representation representation, |
2503 int index); | 2504 FieldIndex index); |
2504 inline Object* RawFastPropertyAt(int index); | 2505 inline Object* RawFastPropertyAt(FieldIndex index); |
2505 inline void FastPropertyAtPut(int index, Object* value); | 2506 inline void FastPropertyAtPut(FieldIndex index, Object* value); |
2506 void WriteToField(int descriptor, Object* value); | 2507 void WriteToField(int descriptor, Object* value); |
2507 | 2508 |
2508 // Access to in object properties. | 2509 // Access to in object properties. |
2509 inline int GetInObjectPropertyOffset(int index); | 2510 inline int GetInObjectPropertyOffset(int index); |
2510 inline Object* InObjectPropertyAt(int index); | 2511 inline Object* InObjectPropertyAt(int index); |
2511 inline Object* InObjectPropertyAtPut(int index, | 2512 inline Object* InObjectPropertyAtPut(int index, |
2512 Object* value, | 2513 Object* value, |
2513 WriteBarrierMode mode | 2514 WriteBarrierMode mode |
2514 = UPDATE_WRITE_BARRIER); | 2515 = UPDATE_WRITE_BARRIER); |
2515 | 2516 |
(...skipping 8728 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
11244 } else { | 11245 } else { |
11245 value &= ~(1 << bit_position); | 11246 value &= ~(1 << bit_position); |
11246 } | 11247 } |
11247 return value; | 11248 return value; |
11248 } | 11249 } |
11249 }; | 11250 }; |
11250 | 11251 |
11251 } } // namespace v8::internal | 11252 } } // namespace v8::internal |
11252 | 11253 |
11253 #endif // V8_OBJECTS_H_ | 11254 #endif // V8_OBJECTS_H_ |
OLD | NEW |