OLD | NEW |
1 // Copyright 2012 the V8 project authors. All rights reserved. | 1 // Copyright 2012 the V8 project authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #ifndef V8_OBJECTS_H_ | 5 #ifndef V8_OBJECTS_H_ |
6 #define V8_OBJECTS_H_ | 6 #define V8_OBJECTS_H_ |
7 | 7 |
8 #include <iosfwd> | 8 #include <iosfwd> |
9 | 9 |
10 #include "src/allocation.h" | 10 #include "src/allocation.h" |
(...skipping 5292 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
5303 kPreAgedCodeAge = kIsOldCodeAge - 1 | 5303 kPreAgedCodeAge = kIsOldCodeAge - 1 |
5304 }; | 5304 }; |
5305 #undef DECLARE_CODE_AGE_ENUM | 5305 #undef DECLARE_CODE_AGE_ENUM |
5306 | 5306 |
5307 // Code aging. Indicates how many full GCs this code has survived without | 5307 // Code aging. Indicates how many full GCs this code has survived without |
5308 // being entered through the prologue. Used to determine when it is | 5308 // being entered through the prologue. Used to determine when it is |
5309 // relatively safe to flush this code object and replace it with the lazy | 5309 // relatively safe to flush this code object and replace it with the lazy |
5310 // compilation stub. | 5310 // compilation stub. |
5311 static void MakeCodeAgeSequenceYoung(byte* sequence, Isolate* isolate); | 5311 static void MakeCodeAgeSequenceYoung(byte* sequence, Isolate* isolate); |
5312 static void MarkCodeAsExecuted(byte* sequence, Isolate* isolate); | 5312 static void MarkCodeAsExecuted(byte* sequence, Isolate* isolate); |
| 5313 void MakeYoung(); |
5313 void MakeOlder(MarkingParity); | 5314 void MakeOlder(MarkingParity); |
5314 static bool IsYoungSequence(Isolate* isolate, byte* sequence); | 5315 static bool IsYoungSequence(Isolate* isolate, byte* sequence); |
5315 bool IsOld(); | 5316 bool IsOld(); |
5316 Age GetAge(); | 5317 Age GetAge(); |
5317 // Gets the raw code age, including psuedo code-age values such as | 5318 // Gets the raw code age, including psuedo code-age values such as |
5318 // kNotExecutedCodeAge and kExecutedOnceCodeAge. | 5319 // kNotExecutedCodeAge and kExecutedOnceCodeAge. |
5319 Age GetRawAge(); | 5320 Age GetRawAge(); |
5320 static inline Code* GetPreAgedCodeAgeStub(Isolate* isolate) { | 5321 static inline Code* GetPreAgedCodeAgeStub(Isolate* isolate) { |
5321 return GetCodeAgeStub(isolate, kNotExecutedCodeAge, NO_MARKING_PARITY); | 5322 return GetCodeAgeStub(isolate, kNotExecutedCodeAge, NO_MARKING_PARITY); |
5322 } | 5323 } |
(...skipping 5527 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
10850 } else { | 10851 } else { |
10851 value &= ~(1 << bit_position); | 10852 value &= ~(1 << bit_position); |
10852 } | 10853 } |
10853 return value; | 10854 return value; |
10854 } | 10855 } |
10855 }; | 10856 }; |
10856 | 10857 |
10857 } } // namespace v8::internal | 10858 } } // namespace v8::internal |
10858 | 10859 |
10859 #endif // V8_OBJECTS_H_ | 10860 #endif // V8_OBJECTS_H_ |
OLD | NEW |