OLD | NEW |
1 // Copyright 2006-2008 the V8 project authors. All rights reserved. | 1 // Copyright 2006-2008 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 538 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
549 | 549 |
550 // Allocates an uninitialized object. The memory is non-executable if the | 550 // Allocates an uninitialized object. The memory is non-executable if the |
551 // hardware and OS allow. | 551 // hardware and OS allow. |
552 // Returns Failure::RetryAfterGC(requested_bytes, space) if the allocation | 552 // Returns Failure::RetryAfterGC(requested_bytes, space) if the allocation |
553 // failed. | 553 // failed. |
554 // Please note this function does not perform a garbage collection. | 554 // Please note this function does not perform a garbage collection. |
555 static inline Object* AllocateRaw(int size_in_bytes, | 555 static inline Object* AllocateRaw(int size_in_bytes, |
556 AllocationSpace space, | 556 AllocationSpace space, |
557 AllocationSpace retry_space); | 557 AllocationSpace retry_space); |
558 | 558 |
| 559 // Initialize a filler object to keep the ability to iterate over the heap |
| 560 // when shortening objects. |
| 561 static void CreateFillerObjectAt(Address addr, int size); |
| 562 |
559 // Makes a new native code object | 563 // Makes a new native code object |
560 // Returns Failure::RetryAfterGC(requested_bytes, space) if the allocation | 564 // Returns Failure::RetryAfterGC(requested_bytes, space) if the allocation |
561 // failed. On success, the pointer to the Code object is stored in the | 565 // failed. On success, the pointer to the Code object is stored in the |
562 // self_reference. This allows generated code to reference its own Code | 566 // self_reference. This allows generated code to reference its own Code |
563 // object by containing this pointer. | 567 // object by containing this pointer. |
564 // Please note this function does not perform a garbage collection. | 568 // Please note this function does not perform a garbage collection. |
565 static Object* CreateCode(const CodeDesc& desc, | 569 static Object* CreateCode(const CodeDesc& desc, |
566 ScopeInfo<>* sinfo, | 570 ScopeInfo<>* sinfo, |
567 Code::Flags flags, | 571 Code::Flags flags, |
568 Code** self_reference = NULL); | 572 Code** self_reference = NULL); |
(...skipping 716 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1285 int marked_count_; | 1289 int marked_count_; |
1286 | 1290 |
1287 // The count from the end of the previous full GC. Will be zero if there | 1291 // The count from the end of the previous full GC. Will be zero if there |
1288 // was no previous full GC. | 1292 // was no previous full GC. |
1289 int previous_marked_count_; | 1293 int previous_marked_count_; |
1290 }; | 1294 }; |
1291 | 1295 |
1292 } } // namespace v8::internal | 1296 } } // namespace v8::internal |
1293 | 1297 |
1294 #endif // V8_HEAP_H_ | 1298 #endif // V8_HEAP_H_ |
OLD | NEW |