| OLD | NEW |
| 1 // Copyright 2010 the V8 project authors. All rights reserved. | 1 // Copyright 2010 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 207 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 218 ObjectSlotCallback copy_object_func); | 218 ObjectSlotCallback copy_object_func); |
| 219 | 219 |
| 220 | 220 |
| 221 // The all static Heap captures the interface to the global object heap. | 221 // The all static Heap captures the interface to the global object heap. |
| 222 // All JavaScript contexts by this process share the same object heap. | 222 // All JavaScript contexts by this process share the same object heap. |
| 223 | 223 |
| 224 class Heap : public AllStatic { | 224 class Heap : public AllStatic { |
| 225 public: | 225 public: |
| 226 // Configure heap size before setup. Return false if the heap has been | 226 // Configure heap size before setup. Return false if the heap has been |
| 227 // setup already. | 227 // setup already. |
| 228 static bool ConfigureHeap(int max_semispace_size, | 228 static bool ConfigureHeap(intptr_t max_semispace_size, |
| 229 int max_old_gen_size, | 229 intptr_t max_old_gen_size, |
| 230 int max_executable_size); | 230 intptr_t max_executable_size); |
| 231 static bool ConfigureHeapDefault(); | 231 static bool ConfigureHeapDefault(); |
| 232 | 232 |
| 233 // Initializes the global object heap. If create_heap_objects is true, | 233 // Initializes the global object heap. If create_heap_objects is true, |
| 234 // also creates the basic non-mutable objects. | 234 // also creates the basic non-mutable objects. |
| 235 // Returns whether it succeeded. | 235 // Returns whether it succeeded. |
| 236 static bool Setup(bool create_heap_objects); | 236 static bool Setup(bool create_heap_objects); |
| 237 | 237 |
| 238 // Destroys all memory allocated by the heap. | 238 // Destroys all memory allocated by the heap. |
| 239 static void TearDown(); | 239 static void TearDown(); |
| 240 | 240 |
| (...skipping 1868 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2109 // Return whether this object should be retained. If NULL is returned the | 2109 // Return whether this object should be retained. If NULL is returned the |
| 2110 // object has no references. Otherwise the address of the retained object | 2110 // object has no references. Otherwise the address of the retained object |
| 2111 // should be returned as in some GC situations the object has been moved. | 2111 // should be returned as in some GC situations the object has been moved. |
| 2112 virtual Object* RetainAs(Object* object) = 0; | 2112 virtual Object* RetainAs(Object* object) = 0; |
| 2113 }; | 2113 }; |
| 2114 | 2114 |
| 2115 | 2115 |
| 2116 } } // namespace v8::internal | 2116 } } // namespace v8::internal |
| 2117 | 2117 |
| 2118 #endif // V8_HEAP_H_ | 2118 #endif // V8_HEAP_H_ |
| OLD | NEW |