#ifndef V8_DEOPTIMIZER_DEOPTIMIZE_REASON_H_
#define V8_DEOPTIMIZER_DEOPTIMIZE_REASON_H_
#include "src/common/globals.h"
namespace v8 {
namespace internal {
#define DEOPTIMIZE_REASON_LIST(V) …
enum class DeoptimizeReason : uint8_t { … };
constexpr DeoptimizeReason kFirstDeoptimizeReason = …;
constexpr DeoptimizeReason kLastDeoptimizeReason = …;
static_assert …;
constexpr int kDeoptimizeReasonCount = …;
V8_EXPORT_PRIVATE std::ostream& operator<<(std::ostream&, DeoptimizeReason);
size_t hash_value(DeoptimizeReason reason);
V8_EXPORT_PRIVATE char const* DeoptimizeReasonToString(DeoptimizeReason reason);
constexpr bool IsDeoptimizationWithoutCodeInvalidation(
DeoptimizeReason reason) { … }
}
}
#endif