Index: src/snapshot/deserializer.h |
diff --git a/src/snapshot/deserializer.h b/src/snapshot/deserializer.h |
index 76259a80cda5e2c0c2a7769a154630e991e31876..d98798399a7b918466c05b1387fed84e97542c4a 100644 |
--- a/src/snapshot/deserializer.h |
+++ b/src/snapshot/deserializer.h |
@@ -5,6 +5,7 @@ |
#ifndef V8_SNAPSHOT_DESERIALIZER_H_ |
#define V8_SNAPSHOT_DESERIALIZER_H_ |
+#include "src/deoptimizer.h" |
#include "src/heap/heap.h" |
#include "src/objects.h" |
#include "src/snapshot/serializer-common.h" |
@@ -41,6 +42,7 @@ class Deserializer : public SerializerDeserializer { |
deserializing_user_code_(deserializing_user_code), |
next_alignment_(kWordAligned) { |
DecodeReservation(data->Reservations()); |
+ memset(max_deopt_entry_ids_, 0, sizeof(max_deopt_entry_ids_)); |
} |
~Deserializer() override; |
@@ -62,7 +64,12 @@ class Deserializer : public SerializerDeserializer { |
attached_objects_.Add(attached_object); |
} |
+ int max_deopt_entry_id(Deoptimizer::BailoutType bailout_type) const { |
+ return max_deopt_entry_ids_[bailout_type]; |
+ } |
+ |
private: |
+ Address DecodeExternalReference(uint32_t reference_id); |
void VisitPointers(Object** start, Object** end) override; |
void Synchronize(VisitorSynchronization::SyncTag tag) override; |
@@ -151,6 +158,7 @@ class Deserializer : public SerializerDeserializer { |
bool deserializing_user_code_; |
AllocationAlignment next_alignment_; |
+ int max_deopt_entry_ids_[Deoptimizer::kLastBailoutType + 1]; |
DISALLOW_COPY_AND_ASSIGN(Deserializer); |
}; |