5 #ifndef V8_INTERPRETER_BYTECODE_FLAGS_H_ 6 #define V8_INTERPRETER_BYTECODE_FLAGS_H_ 15 class AstStringConstants;
17 namespace interpreter {
24 static uint8_t Encode(
bool use_fast_shallow_clone,
int runtime_flags);
35 static uint8_t Encode(
int runtime_flags,
bool fast_clone_supported);
46 static uint8_t Encode(
bool pretenure,
bool is_function_scope);
52 #define TYPEOF_LITERAL_LIST(V) \ 58 V(Undefined, undefined) \ 59 V(Function, function) \ 65 enum class LiteralFlag : uint8_t {
66 #define DECLARE_LITERAL_FLAG(name, _) k##name, 67 TYPEOF_LITERAL_LIST(DECLARE_LITERAL_FLAG)
68 #undef DECLARE_LITERAL_FLAG 73 static uint8_t Encode(LiteralFlag literal_flag);
74 static LiteralFlag Decode(uint8_t raw_flag);
84 :
public BitField8<bool, LanguageModeBit::kNext, 1> {};
85 STATIC_ASSERT(LanguageModeSize <= LanguageModeBit::kNumValues);
87 static uint8_t Encode(LanguageMode language_mode,
88 LookupHoistingMode lookup_hoisting_mode);
98 #endif // V8_INTERPRETER_BYTECODE_FLAGS_H_