| 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 1789 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1800 // new space, or if the value is an immortal immutable object, like the maps | 1800 // new space, or if the value is an immortal immutable object, like the maps |
| 1801 // of primitive (non-JS) objects like strings, heap numbers etc. | 1801 // of primitive (non-JS) objects like strings, heap numbers etc. |
| 1802 inline void set_map_no_write_barrier(Map* value); | 1802 inline void set_map_no_write_barrier(Map* value); |
| 1803 | 1803 |
| 1804 // Get the map using acquire load. | 1804 // Get the map using acquire load. |
| 1805 inline Map* synchronized_map(); | 1805 inline Map* synchronized_map(); |
| 1806 inline MapWord synchronized_map_word(); | 1806 inline MapWord synchronized_map_word(); |
| 1807 | 1807 |
| 1808 // Set the map using release store | 1808 // Set the map using release store |
| 1809 inline void synchronized_set_map(Map* value); | 1809 inline void synchronized_set_map(Map* value); |
| 1810 inline void synchronized_set_map_no_write_barrier(Map* value); |
| 1810 inline void synchronized_set_map_word(MapWord map_word); | 1811 inline void synchronized_set_map_word(MapWord map_word); |
| 1811 | 1812 |
| 1812 // During garbage collection, the map word of a heap object does not | 1813 // During garbage collection, the map word of a heap object does not |
| 1813 // necessarily contain a map pointer. | 1814 // necessarily contain a map pointer. |
| 1814 inline MapWord map_word(); | 1815 inline MapWord map_word(); |
| 1815 inline void set_map_word(MapWord map_word); | 1816 inline void set_map_word(MapWord map_word); |
| 1816 | 1817 |
| 1817 // The Heap the object was allocated in. Used also to access Isolate. | 1818 // The Heap the object was allocated in. Used also to access Isolate. |
| 1818 inline Heap* GetHeap(); | 1819 inline Heap* GetHeap(); |
| 1819 | 1820 |
| (...skipping 2980 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 4800 | 4801 |
| 4801 | 4802 |
| 4802 // FreeSpace represents fixed sized areas of the heap that are not currently in | 4803 // FreeSpace represents fixed sized areas of the heap that are not currently in |
| 4803 // use. Used by the heap and GC. | 4804 // use. Used by the heap and GC. |
| 4804 class FreeSpace: public HeapObject { | 4805 class FreeSpace: public HeapObject { |
| 4805 public: | 4806 public: |
| 4806 // [size]: size of the free space including the header. | 4807 // [size]: size of the free space including the header. |
| 4807 inline int size(); | 4808 inline int size(); |
| 4808 inline void set_size(int value); | 4809 inline void set_size(int value); |
| 4809 | 4810 |
| 4811 inline int nobarrier_size(); |
| 4812 inline void nobarrier_set_size(int value); |
| 4813 |
| 4810 inline int Size() { return size(); } | 4814 inline int Size() { return size(); } |
| 4811 | 4815 |
| 4812 // Casting. | 4816 // Casting. |
| 4813 static inline FreeSpace* cast(Object* obj); | 4817 static inline FreeSpace* cast(Object* obj); |
| 4814 | 4818 |
| 4815 // Dispatched behavior. | 4819 // Dispatched behavior. |
| 4816 DECLARE_PRINTER(FreeSpace) | 4820 DECLARE_PRINTER(FreeSpace) |
| 4817 DECLARE_VERIFIER(FreeSpace) | 4821 DECLARE_VERIFIER(FreeSpace) |
| 4818 | 4822 |
| 4819 // Layout description. | 4823 // Layout description. |
| (...skipping 6170 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 10990 } else { | 10994 } else { |
| 10991 value &= ~(1 << bit_position); | 10995 value &= ~(1 << bit_position); |
| 10992 } | 10996 } |
| 10993 return value; | 10997 return value; |
| 10994 } | 10998 } |
| 10995 }; | 10999 }; |
| 10996 | 11000 |
| 10997 } } // namespace v8::internal | 11001 } } // namespace v8::internal |
| 10998 | 11002 |
| 10999 #endif // V8_OBJECTS_H_ | 11003 #endif // V8_OBJECTS_H_ |
| OLD | NEW |