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 5297 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
5308 kPreAgedCodeAge = kIsOldCodeAge - 1 | 5308 kPreAgedCodeAge = kIsOldCodeAge - 1 |
5309 }; | 5309 }; |
5310 #undef DECLARE_CODE_AGE_ENUM | 5310 #undef DECLARE_CODE_AGE_ENUM |
5311 | 5311 |
5312 // Code aging. Indicates how many full GCs this code has survived without | 5312 // Code aging. Indicates how many full GCs this code has survived without |
5313 // being entered through the prologue. Used to determine when it is | 5313 // being entered through the prologue. Used to determine when it is |
5314 // relatively safe to flush this code object and replace it with the lazy | 5314 // relatively safe to flush this code object and replace it with the lazy |
5315 // compilation stub. | 5315 // compilation stub. |
5316 static void MakeCodeAgeSequenceYoung(byte* sequence, Isolate* isolate); | 5316 static void MakeCodeAgeSequenceYoung(byte* sequence, Isolate* isolate); |
5317 static void MarkCodeAsExecuted(byte* sequence, Isolate* isolate); | 5317 static void MarkCodeAsExecuted(byte* sequence, Isolate* isolate); |
5318 void MakeYoung(); | 5318 void MakeYoung(Isolate* isolate); |
5319 void MakeOlder(MarkingParity); | 5319 void MakeOlder(MarkingParity); |
5320 static bool IsYoungSequence(Isolate* isolate, byte* sequence); | 5320 static bool IsYoungSequence(Isolate* isolate, byte* sequence); |
5321 bool IsOld(); | 5321 bool IsOld(); |
5322 Age GetAge(); | 5322 Age GetAge(); |
5323 // Gets the raw code age, including psuedo code-age values such as | 5323 // Gets the raw code age, including psuedo code-age values such as |
5324 // kNotExecutedCodeAge and kExecutedOnceCodeAge. | 5324 // kNotExecutedCodeAge and kExecutedOnceCodeAge. |
5325 Age GetRawAge(); | 5325 Age GetRawAge(); |
5326 static inline Code* GetPreAgedCodeAgeStub(Isolate* isolate) { | 5326 static inline Code* GetPreAgedCodeAgeStub(Isolate* isolate) { |
5327 return GetCodeAgeStub(isolate, kNotExecutedCodeAge, NO_MARKING_PARITY); | 5327 return GetCodeAgeStub(isolate, kNotExecutedCodeAge, NO_MARKING_PARITY); |
5328 } | 5328 } |
(...skipping 5650 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
10979 } else { | 10979 } else { |
10980 value &= ~(1 << bit_position); | 10980 value &= ~(1 << bit_position); |
10981 } | 10981 } |
10982 return value; | 10982 return value; |
10983 } | 10983 } |
10984 }; | 10984 }; |
10985 | 10985 |
10986 } } // namespace v8::internal | 10986 } } // namespace v8::internal |
10987 | 10987 |
10988 #endif // V8_OBJECTS_H_ | 10988 #endif // V8_OBJECTS_H_ |
OLD | NEW |