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 2491 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2502 FixedArray* bridge = FixedArray::cast(get(kEnumCacheIndex)); | 2502 FixedArray* bridge = FixedArray::cast(get(kEnumCacheIndex)); |
2503 return bridge->get(kEnumCacheBridgeCacheIndex); | 2503 return bridge->get(kEnumCacheBridgeCacheIndex); |
2504 } | 2504 } |
2505 | 2505 |
2506 Object** GetEnumCacheSlot() { | 2506 Object** GetEnumCacheSlot() { |
2507 ASSERT(HasEnumCache()); | 2507 ASSERT(HasEnumCache()); |
2508 return HeapObject::RawField(reinterpret_cast<HeapObject*>(this), | 2508 return HeapObject::RawField(reinterpret_cast<HeapObject*>(this), |
2509 kEnumCacheOffset); | 2509 kEnumCacheOffset); |
2510 } | 2510 } |
2511 | 2511 |
| 2512 void ClearEnumCache(); |
| 2513 |
2512 // Initialize or change the enum cache, | 2514 // Initialize or change the enum cache, |
2513 // using the supplied storage for the small "bridge". | 2515 // using the supplied storage for the small "bridge". |
2514 void SetEnumCache(FixedArray* bridge_storage, | 2516 void SetEnumCache(FixedArray* bridge_storage, |
2515 FixedArray* new_cache, | 2517 FixedArray* new_cache, |
2516 Object* new_index_cache); | 2518 Object* new_index_cache); |
2517 | 2519 |
2518 // Accessors for fetching instance descriptor at descriptor number. | 2520 // Accessors for fetching instance descriptor at descriptor number. |
2519 inline String* GetKey(int descriptor_number); | 2521 inline String* GetKey(int descriptor_number); |
2520 inline Object** GetKeySlot(int descriptor_number); | 2522 inline Object** GetKeySlot(int descriptor_number); |
2521 inline Object* GetValue(int descriptor_number); | 2523 inline Object* GetValue(int descriptor_number); |
(...skipping 6452 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
8974 } else { | 8976 } else { |
8975 value &= ~(1 << bit_position); | 8977 value &= ~(1 << bit_position); |
8976 } | 8978 } |
8977 return value; | 8979 return value; |
8978 } | 8980 } |
8979 }; | 8981 }; |
8980 | 8982 |
8981 } } // namespace v8::internal | 8983 } } // namespace v8::internal |
8982 | 8984 |
8983 #endif // V8_OBJECTS_H_ | 8985 #endif // V8_OBJECTS_H_ |
OLD | NEW |