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 1480 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1491 // Adjusts the amount of registered external memory. | 1491 // Adjusts the amount of registered external memory. |
1492 // Returns the adjusted value. | 1492 // Returns the adjusted value. |
1493 inline intptr_t AdjustAmountOfExternalAllocatedMemory( | 1493 inline intptr_t AdjustAmountOfExternalAllocatedMemory( |
1494 intptr_t change_in_bytes); | 1494 intptr_t change_in_bytes); |
1495 | 1495 |
1496 // Allocate uninitialized fixed array. | 1496 // Allocate uninitialized fixed array. |
1497 MUST_USE_RESULT MaybeObject* AllocateRawFixedArray(int length); | 1497 MUST_USE_RESULT MaybeObject* AllocateRawFixedArray(int length); |
1498 MUST_USE_RESULT MaybeObject* AllocateRawFixedArray(int length, | 1498 MUST_USE_RESULT MaybeObject* AllocateRawFixedArray(int length, |
1499 PretenureFlag pretenure); | 1499 PretenureFlag pretenure); |
1500 | 1500 |
| 1501 // Predicate that governs global pre-tenuring decisions based on observed |
| 1502 // promotion rates of previous collections. |
| 1503 inline bool ShouldGloballyPretenure() { |
| 1504 return new_space_high_promotion_mode_active_; |
| 1505 } |
| 1506 |
1501 inline intptr_t PromotedTotalSize() { | 1507 inline intptr_t PromotedTotalSize() { |
1502 return PromotedSpaceSizeOfObjects() + PromotedExternalMemorySize(); | 1508 return PromotedSpaceSizeOfObjects() + PromotedExternalMemorySize(); |
1503 } | 1509 } |
1504 | 1510 |
1505 // True if we have reached the allocation limit in the old generation that | 1511 // True if we have reached the allocation limit in the old generation that |
1506 // should force the next GC (caused normally) to be a full one. | 1512 // should force the next GC (caused normally) to be a full one. |
1507 inline bool OldGenerationPromotionLimitReached() { | 1513 inline bool OldGenerationPromotionLimitReached() { |
1508 return PromotedTotalSize() > old_gen_promotion_limit_; | 1514 return PromotedTotalSize() > old_gen_promotion_limit_; |
1509 } | 1515 } |
1510 | 1516 |
(...skipping 1519 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
3030 AssertNoAllocation no_alloc; // i.e. no gc allowed. | 3036 AssertNoAllocation no_alloc; // i.e. no gc allowed. |
3031 | 3037 |
3032 private: | 3038 private: |
3033 DISALLOW_IMPLICIT_CONSTRUCTORS(PathTracer); | 3039 DISALLOW_IMPLICIT_CONSTRUCTORS(PathTracer); |
3034 }; | 3040 }; |
3035 #endif // DEBUG | 3041 #endif // DEBUG |
3036 | 3042 |
3037 } } // namespace v8::internal | 3043 } } // namespace v8::internal |
3038 | 3044 |
3039 #endif // V8_HEAP_H_ | 3045 #endif // V8_HEAP_H_ |
OLD | NEW |