13namespace interpreter {
25 bool fast_clone_supported) {
33 bool might_always_turbofan) {
35 if (!might_always_turbofan && !pretenure && is_function_scope) {
45 if (raw_literal == ast_constants->number_string()) {
46 return LiteralFlag::kNumber;
47 }
else if (raw_literal == ast_constants->string_string()) {
48 return LiteralFlag::kString;
49 }
else if (raw_literal == ast_constants->symbol_string()) {
50 return LiteralFlag::kSymbol;
51 }
else if (raw_literal == ast_constants->boolean_string()) {
52 return LiteralFlag::kBoolean;
53 }
else if (raw_literal == ast_constants->bigint_string()) {
54 return LiteralFlag::kBigInt;
55 }
else if (raw_literal == ast_constants->undefined_string()) {
56 return LiteralFlag::kUndefined;
57 }
else if (raw_literal == ast_constants->function_string()) {
58 return LiteralFlag::kFunction;
59 }
else if (raw_literal == ast_constants->object_string()) {
60 return LiteralFlag::kObject;
62 return LiteralFlag::kOther;
68 return static_cast<uint8_t
>(literal_flag);
73 DCHECK_LE(raw_flag,
static_cast<uint8_t
>(LiteralFlag::kOther));
79 switch (literal_flag) {
80#define CASE(Name, name) \
81 case LiteralFlag::k##Name: \
#define TYPEOF_LITERAL_LIST(V)
static constexpr T decode(U value)
static constexpr U encode(T value)
static uint8_t Encode(bool use_fast_shallow_clone, int runtime_flags)
static uint8_t Encode(bool pretenure, bool is_function_scope, bool might_always_turbofan)
static uint8_t Encode(int runtime_flags, bool fast_clone_supported)
static LanguageMode GetLanguageMode(uint8_t flags)
static uint8_t Encode(LanguageMode language_mode, LookupHoistingMode lookup_hoisting_mode)
static bool IsLookupHoistingMode(uint8_t flags)
static uint8_t Encode(LiteralFlag literal_flag)
static LiteralFlag GetFlagForLiteral(const AstStringConstants *ast_constants, Literal *literal)
static LiteralFlag Decode(uint8_t raw_flag)
static const char * ToString(LiteralFlag literal_flag)
ZoneVector< RpoNumber > & result
FunctionLiteral * literal
#define DCHECK_LE(v1, v2)
#define DCHECK_IMPLIES(v1, v2)