| Index: src/codegen.h
|
| diff --git a/src/codegen.h b/src/codegen.h
|
| index 1e87a1b9e7654feddd63ab869ad43a055733b609..f04158891f0c34087f3ae6a72e0b0d56636a562a 100644
|
| --- a/src/codegen.h
|
| +++ b/src/codegen.h
|
| @@ -120,6 +120,33 @@ class ElementsTransitionGenerator : public AllStatic {
|
| static const int kNumberDictionaryProbes = 4;
|
|
|
|
|
| +class CodeAgingHelper {
|
| + public:
|
| + CodeAgingHelper();
|
| +
|
| + uint32_t young_sequence_length() const { return young_sequence_.length(); }
|
| + bool IsYoung(byte* candidate) const {
|
| + return memcmp(candidate,
|
| + young_sequence_.start(),
|
| + young_sequence_.length()) == 0;
|
| + }
|
| + void CopyYoungSequenceTo(byte* new_buffer) const {
|
| + CopyBytes(new_buffer, young_sequence_.start(), young_sequence_.length());
|
| + }
|
| +
|
| +#ifdef DEBUG
|
| + bool IsOld(byte* candidate) const;
|
| +#endif
|
| +
|
| + protected:
|
| + const EmbeddedVector<byte, kNoCodeAgeSequenceLength> young_sequence_;
|
| +#ifdef DEBUG
|
| +#ifdef V8_TARGET_ARCH_ARM64
|
| + const EmbeddedVector<byte, kNoCodeAgeSequenceLength> old_sequence_;
|
| +#endif
|
| +#endif
|
| +};
|
| +
|
| } } // namespace v8::internal
|
|
|
| #endif // V8_CODEGEN_H_
|
|
|