v8
V8 is Google’s open source high-performance JavaScript and WebAssembly engine, written in C++.
Loading...
Searching...
No Matches
v8::internal::interpreter::BytecodeGenerator Class Referencefinal

#include <bytecode-generator.h>

Inheritance diagram for v8::internal::interpreter::BytecodeGenerator:
Collaboration diagram for v8::internal::interpreter::BytecodeGenerator:

Classes

class  AccumulatorPreservingScope
 
class  AssignmentLhsData
 
class  ContextScope
 
class  ControlScope
 
class  ControlScopeForBreakable
 
class  ControlScopeForDerivedConstructor
 
class  ControlScopeForIteration
 
class  ControlScopeForTopLevel
 
class  ControlScopeForTryCatch
 
class  ControlScopeForTryFinally
 
class  CurrentScope
 
class  DisposablesStackScope
 
class  EffectResultScope
 
class  ExpressionResultScope
 
class  FeedbackSlotCache
 
class  ForInScope
 
class  HoleCheckElisionMergeScope
 
class  HoleCheckElisionScope
 
class  IteratorRecord
 
class  LoopScope
 
class  MultipleEntryBlockContextScope
 
class  NaryCodeCoverageSlots
 
class  OptionalChainNullLabelScope
 
class  RegisterAllocationScope
 
class  TestResultScope
 
class  TopLevelDeclarationsBuilder
 
class  ValueResultScope
 

Public Types

enum  TypeHint : uint8_t {
  kBoolean = 1 << 0 , kInternalizedString = 1 << 1 , kString = kInternalizedString | (1 << 2) , kAny = kBoolean | kString ,
  kUnknown = 0xFFu
}
 

Public Member Functions

 BytecodeGenerator (LocalIsolate *local_isolate, Zone *zone, UnoptimizedCompilationInfo *info, const AstStringConstants *ast_string_constants, std::vector< FunctionLiteral * > *eager_inner_literals, Handle< Script > script)
 
void GenerateBytecode (uintptr_t stack_limit)
 
template<typename IsolateT >
Handle< BytecodeArrayFinalizeBytecode (IsolateT *isolate, Handle< Script > script)
 
template<typename IsolateT >
DirectHandle< TrustedByteArrayFinalizeSourcePositionTable (IsolateT *isolate)
 
void VisitModuleDeclarations (Declaration::List *declarations)
 
void VisitGlobalDeclarations (Declaration::List *declarations)
 
void VisitDeclarations (Declaration::List *declarations)
 
void VisitStatements (const ZonePtrList< Statement > *statments, int start=0)
 
- Public Member Functions inherited from v8::internal::AstVisitor< BytecodeGenerator >
void Visit (AstNode *node)
 
void VisitDeclarations (Declaration::List *declarations)
 
void VisitStatements (const ZonePtrList< Statement > *statements)
 
void VisitExpressions (const ZonePtrList< Expression > *expressions)
 

Static Public Member Functions

static bool IsSameOrSubTypeHint (TypeHint hint1, TypeHint hint2)
 
static bool IsStringTypeHint (TypeHint hint)
 

Private Types

enum class  TestFallthrough { kThen , kElse , kNone }
 
enum class  AccumulatorPreservingMode { kNone , kPreserve }
 
using ToBooleanMode = BytecodeArrayBuilder::ToBooleanMode
 

Private Member Functions

void GenerateBytecodeBody ()
 
void GenerateBaseConstructorBody ()
 
void GenerateDerivedConstructorBody ()
 
void GenerateAsyncFunctionBody ()
 
void GenerateAsyncGeneratorFunctionBody ()
 
void GenerateBodyPrologue ()
 
void GenerateBodyStatements (int start=0)
 
void GenerateBodyStatementsWithoutImplicitFinalReturn (int start=0)
 
template<typename IsolateT >
void AllocateDeferredConstants (IsolateT *isolate, Handle< Script > script)
 
 DEFINE_AST_VISITOR_SUBCLASS_MEMBERS ()
 
void VisitArithmeticExpression (BinaryOperation *binop)
 
void VisitCommaExpression (BinaryOperation *binop)
 
void VisitLogicalOrExpression (BinaryOperation *binop)
 
void VisitLogicalAndExpression (BinaryOperation *binop)
 
void VisitNullishExpression (BinaryOperation *binop)
 
void VisitNaryArithmeticExpression (NaryOperation *expr)
 
void VisitNaryCommaExpression (NaryOperation *expr)
 
void VisitNaryLogicalOrExpression (NaryOperation *expr)
 
void VisitNaryLogicalAndExpression (NaryOperation *expr)
 
void VisitNaryNullishExpression (NaryOperation *expr)
 
void VisitVoid (UnaryOperation *expr)
 
void VisitTypeOf (UnaryOperation *expr)
 
void VisitNot (UnaryOperation *expr)
 
void VisitDelete (UnaryOperation *expr)
 
void VisitForTypeOfValue (Expression *expr)
 
void VisitCondition (Expression *expr)
 
void VisitArguments (const ZonePtrList< Expression > *args, RegisterList *arg_regs)
 
void VisitKeyedSuperPropertyLoad (Property *property, Register opt_receiver_out)
 
void VisitNamedSuperPropertyLoad (Property *property, Register opt_receiver_out)
 
void VisitPropertyLoad (Register obj, Property *expr)
 
void VisitPropertyLoadForRegister (Register obj, Property *expr, Register destination)
 
AssignmentLhsData PrepareAssignmentLhs (Expression *lhs, AccumulatorPreservingMode accumulator_preserving_mode=AccumulatorPreservingMode::kNone)
 
void BuildAssignment (const AssignmentLhsData &data, Token::Value op, LookupHoistingMode lookup_hoisting_mode)
 
void BuildThisVariableLoad ()
 
void BuildDeclareCall (Runtime::FunctionId id)
 
ExpressionGetDestructuringDefaultValue (Expression **target)
 
void BuildDestructuringArrayAssignment (ArrayLiteral *pattern, Token::Value op, LookupHoistingMode lookup_hoisting_mode)
 
void BuildDestructuringObjectAssignment (ObjectLiteral *pattern, Token::Value op, LookupHoistingMode lookup_hoisting_mode)
 
void BuildLoadNamedProperty (const Expression *object_expr, Register object, const AstRawString *name)
 
void BuildSetNamedProperty (const Expression *object_expr, Register object, const AstRawString *name)
 
void BuildStoreGlobal (Variable *variable)
 
void BuildLoadKeyedProperty (Register object, FeedbackSlot slot)
 
bool IsVariableInRegister (Variable *var, Register reg)
 
void SetVariableInRegister (Variable *var, Register reg)
 
VariableGetPotentialVariableInAccumulator ()
 
void BuildVariableLoad (Variable *variable, HoleCheckMode hole_check_mode, TypeofMode typeof_mode=TypeofMode::kNotInside)
 
void BuildVariableLoadForAccumulatorValue (Variable *variable, HoleCheckMode hole_check_mode, TypeofMode typeof_mode=TypeofMode::kNotInside)
 
void BuildVariableAssignment (Variable *variable, Token::Value op, HoleCheckMode hole_check_mode, LookupHoistingMode lookup_hoisting_mode=LookupHoistingMode::kNormal)
 
void BuildLiteralCompareNil (Token::Value compare_op, BytecodeArrayBuilder::NilValue nil)
 
void BuildLiteralStrictCompareBoolean (Literal *literal)
 
void BuildReturn (int source_position)
 
void BuildAsyncReturn (int source_position)
 
void BuildAsyncGeneratorReturn ()
 
void BuildReThrow ()
 
void RememberHoleCheckInCurrentBlock (Variable *variable)
 
bool VariableNeedsHoleCheckInCurrentBlock (Variable *variable, HoleCheckMode hole_check_mode)
 
bool VariableNeedsHoleCheckInCurrentBlockForAssignment (Variable *variable, Token::Value op, HoleCheckMode hole_check_mode)
 
void BuildHoleCheckForVariableAssignment (Variable *variable, Token::Value op)
 
void BuildThrowIfHole (Variable *variable)
 
void BuildNewLocalActivationContext ()
 
void BuildLocalActivationContextInitialization ()
 
void BuildNewLocalBlockContext (Scope *scope)
 
void BuildNewLocalCatchContext (Scope *scope)
 
void BuildNewLocalWithContext (Scope *scope)
 
void BuildGeneratorPrologue ()
 
void BuildSuspendPoint (int position)
 
void BuildAwait (int position=kNoSourcePosition)
 
void BuildAwait (Expression *await_expr)
 
void BuildFinalizeIteration (IteratorRecord iterator, Register done, Register iteration_continuation_token)
 
void BuildGetIterator (IteratorType hint)
 
IteratorRecord BuildGetIteratorRecord (Register iterator_next, Register iterator_object, IteratorType hint)
 
IteratorRecord BuildGetIteratorRecord (IteratorType hint)
 
void BuildIteratorNext (const IteratorRecord &iterator, Register next_result)
 
void BuildIteratorClose (const IteratorRecord &iterator, Expression *expr=nullptr)
 
void BuildCallIteratorMethod (Register iterator, const AstRawString *method, RegisterList receiver_and_args, BytecodeLabel *if_called, BytecodeLabels *if_notcalled)
 
void BuildFillArrayWithIterator (IteratorRecord iterator, Register array, Register index, Register value, FeedbackSlot next_value_slot, FeedbackSlot next_done_slot, FeedbackSlot index_slot, FeedbackSlot element_slot)
 
void BuildCreateArrayLiteral (const ZonePtrList< Expression > *elements, ArrayLiteral *expr)
 
void BuildCreateObjectLiteral (Register literal, uint8_t flags, size_t entry)
 
void AllocateTopLevelRegisters ()
 
void VisitArgumentsObject (Variable *variable)
 
void VisitRestArgumentsArray (Variable *rest)
 
void VisitCallSuper (Call *call)
 
void BuildInstanceInitializationAfterSuperCall (Register this_function, Register instance)
 
void BuildInvalidPropertyAccess (MessageTemplate tmpl, Property *property)
 
void BuildPrivateBrandCheck (Property *property, Register object)
 
void BuildPrivateMethodIn (Variable *private_name, Expression *object_expression)
 
void BuildPrivateGetterAccess (Register obj, Register access_pair)
 
void BuildPrivateSetterAccess (Register obj, Register access_pair, Register value)
 
void BuildPrivateDebugDynamicGet (Property *property, Register obj)
 
void BuildPrivateDebugDynamicSet (Property *property, Register obj, Register value)
 
void BuildPrivateMethods (ClassLiteral *expr, bool is_static, Register home_object)
 
void BuildClassProperty (ClassLiteral::Property *property)
 
void BuildClassLiteral (ClassLiteral *expr, Register name)
 
void VisitClassLiteral (ClassLiteral *expr, Register name)
 
void VisitNewTargetVariable (Variable *variable)
 
void VisitThisFunctionVariable (Variable *variable)
 
void BuildPrivateBrandInitialization (Register receiver, Variable *brand)
 
void BuildInstanceMemberInitialization (Register constructor, Register instance)
 
void BuildGeneratorObjectVariableInitialization ()
 
void VisitBlockDeclarationsAndStatements (Block *stmt)
 
void VisitBlockMaybeDispose (Block *stmt)
 
void VisitLiteralAccessor (LiteralProperty *property, Register value_out)
 
void VisitForInAssignment (Expression *expr)
 
void VisitModuleNamespaceImports ()
 
void VisitLogicalTest (Token::Value token, Expression *left, Expression *right, int right_coverage_slot)
 
void VisitNaryLogicalTest (Token::Value token, NaryOperation *expr, const NaryCodeCoverageSlots *coverage_slots)
 
void VisitLogicalTestSubExpression (Token::Value token, Expression *expr, BytecodeLabels *then_labels, BytecodeLabels *else_labels, int coverage_slot)
 
bool VisitLogicalOrSubExpression (Expression *expr, BytecodeLabels *end_labels, int coverage_slot)
 
bool VisitLogicalAndSubExpression (Expression *expr, BytecodeLabels *end_labels, int coverage_slot)
 
bool VisitNullishSubExpression (Expression *expr, BytecodeLabels *end_labels, int coverage_slot)
 
void VisitIterationBody (IterationStatement *stmt, LoopBuilder *loop_builder)
 
void VisitInScope (Statement *stmt, Scope *scope)
 
void BuildPushUndefinedIntoRegisterList (RegisterList *reg_list)
 
void BuildLoadPropertyKey (LiteralProperty *property, Register out_reg)
 
int AllocateBlockCoverageSlotIfEnabled (AstNode *node, SourceRangeKind kind)
 
int AllocateNaryBlockCoverageSlotIfEnabled (NaryOperation *node, size_t index)
 
int AllocateConditionalChainBlockCoverageSlotIfEnabled (ConditionalChain *node, SourceRangeKind kind, size_t index)
 
void BuildIncrementBlockCoverageCounterIfEnabled (AstNode *node, SourceRangeKind kind)
 
void BuildIncrementBlockCoverageCounterIfEnabled (int coverage_array_slot)
 
void BuildTest (ToBooleanMode mode, BytecodeLabels *then_labels, BytecodeLabels *else_labels, TestFallthrough fallthrough)
 
template<typename TryBodyFunc , typename CatchBodyFunc >
void BuildTryCatch (TryBodyFunc try_body_func, CatchBodyFunc catch_body_func, HandlerTable::CatchPrediction catch_prediction, TryCatchStatement *stmt_for_coverage=nullptr)
 
template<typename TryBodyFunc , typename FinallyBodyFunc >
void BuildTryFinally (TryBodyFunc try_body_func, FinallyBodyFunc finally_body_func, HandlerTable::CatchPrediction catch_prediction, TryFinallyStatement *stmt_for_coverage=nullptr)
 
template<typename WrappedFunc >
void BuildDisposeScope (WrappedFunc wrapped_func, bool has_await_using)
 
template<typename ExpressionFunc >
void BuildOptionalChain (ExpressionFunc expression_func)
 
void BuildGetAndCheckSuperConstructor (Register this_function, Register new_target, Register constructor, BytecodeLabel *super_ctor_call_done)
 
void BuildSuperCallOptimization (Register this_function, Register new_target, Register constructor_then_instance, BytecodeLabel *super_ctor_call_done)
 
TypeHint VisitForAccumulatorValue (Expression *expr)
 
void VisitForAccumulatorValueOrTheHole (Expression *expr)
 
V8_WARN_UNUSED_RESULT Register VisitForRegisterValue (Expression *expr)
 
V8_INLINE void VisitForRegisterValue (Expression *expr, Register destination)
 
void VisitAndPushIntoRegisterList (Expression *expr, RegisterList *reg_list)
 
void VisitForEffect (Expression *expr)
 
void VisitForTest (Expression *expr, BytecodeLabels *then_labels, BytecodeLabels *else_labels, TestFallthrough fallthrough)
 
void VisitForNullishTest (Expression *expr, BytecodeLabels *then_labels, BytecodeLabels *test_next_labels, BytecodeLabels *else_labels)
 
template<typename T >
void VisitInHoleCheckElisionScope (T *node)
 
void VisitIterationBodyInHoleCheckElisionScope (IterationStatement *stmt, LoopBuilder *loop_builder)
 
TypeHint VisitInHoleCheckElisionScopeForAccumulatorValue (Expression *expr)
 
void VisitInSameTestExecutionScope (Expression *expr)
 
Register GetRegisterForLocalVariable (Variable *variable)
 
bool IsLocalVariableWithInternalizedStringHint (Expression *expr)
 
TypeHint GetTypeHintForLocalVariable (Variable *variable)
 
Runtime::FunctionId StoreToSuperRuntimeId ()
 
Runtime::FunctionId StoreKeyedToSuperRuntimeId ()
 
FeedbackSlot GetCachedLoadGlobalICSlot (TypeofMode typeof_mode, Variable *variable)
 
FeedbackSlot GetCachedStoreGlobalICSlot (LanguageMode language_mode, Variable *variable)
 
FeedbackSlot GetCachedLoadICSlot (const Expression *expr, const AstRawString *name)
 
FeedbackSlot GetCachedLoadSuperICSlot (const AstRawString *name)
 
FeedbackSlot GetCachedStoreICSlot (const Expression *expr, const AstRawString *name)
 
FeedbackSlot GetDummyCompareICSlot ()
 
int GetCachedCreateClosureSlot (FunctionLiteral *literal)
 
void AddToEagerLiteralsIfEager (FunctionLiteral *literal)
 
Register incoming_new_target () const
 
Register generator_object () const
 
BytecodeArrayBuilderbuilder ()
 
Zonezone () const
 
DeclarationScopeclosure_scope () const
 
UnoptimizedCompilationInfoinfo () const
 
const AstStringConstantsast_string_constants () const
 
Scopecurrent_scope () const
 
void set_current_scope (Scope *scope)
 
ControlScopeexecution_control () const
 
void set_execution_control (ControlScope *scope)
 
ContextScopeexecution_context () const
 
void set_execution_context (ContextScope *context)
 
void set_execution_result (ExpressionResultScope *execution_result)
 
ExpressionResultScopeexecution_result () const
 
BytecodeRegisterAllocatorregister_allocator ()
 
TopLevelDeclarationsBuildertop_level_builder ()
 
LanguageMode language_mode () const
 
FunctionKind function_kind () const
 
FeedbackVectorSpecfeedback_spec ()
 
int feedback_index (FeedbackSlot slot) const
 
FeedbackSlotCachefeedback_slot_cache ()
 
HandlerTable::CatchPrediction catch_prediction () const
 
void set_catch_prediction (HandlerTable::CatchPrediction value)
 
LoopScopecurrent_loop_scope () const
 
void set_current_loop_scope (LoopScope *loop_scope)
 
ForInScopecurrent_for_in_scope () const
 
void set_current_for_in_scope (ForInScope *for_in_scope)
 
Register current_disposables_stack () const
 
void set_current_disposables_stack (Register disposables_stack)
 

Static Private Member Functions

static constexpr ToBooleanMode ToBooleanModeFromTypeHint (TypeHint type_hint)
 

Private Attributes

LocalIsolatelocal_isolate_
 
Zonezone_
 
BytecodeArrayBuilder builder_
 
UnoptimizedCompilationInfoinfo_
 
const AstStringConstantsast_string_constants_
 
DeclarationScopeclosure_scope_
 
Scopecurrent_scope_
 
std::vector< FunctionLiteral * > * eager_inner_literals_
 
Handle< Scriptscript_
 
FeedbackSlotCachefeedback_slot_cache_
 
TopLevelDeclarationsBuildertop_level_builder_
 
BlockCoverageBuilderblock_coverage_builder_
 
ZoneVector< std::pair< FunctionLiteral *, size_t > > function_literals_
 
ZoneVector< std::pair< NativeFunctionLiteral *, size_t > > native_function_literals_
 
ZoneVector< std::pair< ObjectLiteralBoilerplateBuilder *, size_t > > object_literals_
 
ZoneVector< std::pair< ArrayLiteralBoilerplateBuilder *, size_t > > array_literals_
 
ZoneVector< std::pair< ClassLiteral *, size_t > > class_literals_
 
ZoneVector< std::pair< GetTemplateObject *, size_t > > template_objects_
 
ZoneVector< Variable * > vars_in_hole_check_bitmap_
 
ZoneVector< std::pair< Call *, Scope * > > eval_calls_
 
ControlScopeexecution_control_
 
ContextScopeexecution_context_
 
ExpressionResultScopeexecution_result_
 
Register incoming_new_target_or_generator_
 
Register current_disposables_stack_
 
BytecodeLabelsoptional_chaining_null_labels_
 
SharedFeedbackSlot dummy_feedback_slot_
 
BytecodeJumpTablegenerator_jump_table_
 
int suspend_count_
 
int loop_depth_
 
Variable::HoleCheckBitmap hole_check_bitmap_
 
LoopScopecurrent_loop_scope_
 
ForInScopecurrent_for_in_scope_
 
HandlerTable::CatchPrediction catch_prediction_
 

Additional Inherited Members

- Protected Member Functions inherited from v8::internal::AstVisitor< BytecodeGenerator >
BytecodeGenerator * impl ()
 

Detailed Description

Definition at line 32 of file bytecode-generator.h.

Member Typedef Documentation

◆ ToBooleanMode

Member Enumeration Documentation

◆ AccumulatorPreservingMode

Enumerator
kNone 
kPreserve 

Definition at line 109 of file bytecode-generator.h.

◆ TestFallthrough

Enumerator
kThen 
kElse 
kNone 

Definition at line 108 of file bytecode-generator.h.

◆ TypeHint

Enumerator
kBoolean 
kInternalizedString 
kString 
kAny 
kUnknown 

Definition at line 34 of file bytecode-generator.h.

Constructor & Destructor Documentation

◆ BytecodeGenerator()

v8::internal::interpreter::BytecodeGenerator::BytecodeGenerator ( LocalIsolate * local_isolate,
Zone * zone,
UnoptimizedCompilationInfo * info,
const AstStringConstants * ast_string_constants,
std::vector< FunctionLiteral * > * eager_inner_literals,
Handle< Script > script )
explicit

Definition at line 1391 of file bytecode-generator.cc.

Here is the call graph for this function:

Member Function Documentation

◆ AddToEagerLiteralsIfEager()

void v8::internal::interpreter::BytecodeGenerator::AddToEagerLiteralsIfEager ( FunctionLiteral * literal)
private

Definition at line 3245 of file bytecode-generator.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ AllocateBlockCoverageSlotIfEnabled()

int v8::internal::interpreter::BytecodeGenerator::AllocateBlockCoverageSlotIfEnabled ( AstNode * node,
SourceRangeKind kind )
private

Definition at line 8337 of file bytecode-generator.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ AllocateConditionalChainBlockCoverageSlotIfEnabled()

int v8::internal::interpreter::BytecodeGenerator::AllocateConditionalChainBlockCoverageSlotIfEnabled ( ConditionalChain * node,
SourceRangeKind kind,
size_t index )
private

Definition at line 8352 of file bytecode-generator.cc.

Here is the call graph for this function:

◆ AllocateDeferredConstants()

template<typename IsolateT >
template void v8::internal::interpreter::BytecodeGenerator::AllocateDeferredConstants ( IsolateT * isolate,
Handle< Script > script )
private

Definition at line 1534 of file bytecode-generator.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ AllocateNaryBlockCoverageSlotIfEnabled()

int v8::internal::interpreter::BytecodeGenerator::AllocateNaryBlockCoverageSlotIfEnabled ( NaryOperation * node,
size_t index )
private

Definition at line 8344 of file bytecode-generator.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ AllocateTopLevelRegisters()

void v8::internal::interpreter::BytecodeGenerator::AllocateTopLevelRegisters ( )
private

Definition at line 1975 of file bytecode-generator.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ ast_string_constants()

const AstStringConstants * v8::internal::interpreter::BytecodeGenerator::ast_string_constants ( ) const
inlineprivate

Definition at line 534 of file bytecode-generator.h.

Here is the caller graph for this function:

◆ BuildAssignment()

void v8::internal::interpreter::BytecodeGenerator::BuildAssignment ( const AssignmentLhsData & data,
Token::Value op,
LookupHoistingMode lookup_hoisting_mode )
private

Definition at line 5506 of file bytecode-generator.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ BuildAsyncGeneratorReturn()

void v8::internal::interpreter::BytecodeGenerator::BuildAsyncGeneratorReturn ( )
private

◆ BuildAsyncReturn()

void v8::internal::interpreter::BytecodeGenerator::BuildAsyncReturn ( int source_position)
private

Definition at line 4596 of file bytecode-generator.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ BuildAwait() [1/2]

void v8::internal::interpreter::BytecodeGenerator::BuildAwait ( Expression * await_expr)
private

◆ BuildAwait() [2/2]

void v8::internal::interpreter::BytecodeGenerator::BuildAwait ( int position = kNoSourcePosition)
private

Definition at line 6070 of file bytecode-generator.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ BuildCallIteratorMethod()

void v8::internal::interpreter::BytecodeGenerator::BuildCallIteratorMethod ( Register iterator,
const AstRawString * method,
RegisterList receiver_and_args,
BytecodeLabel * if_called,
BytecodeLabels * if_notcalled )
private

Definition at line 7695 of file bytecode-generator.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ BuildClassLiteral()

void v8::internal::interpreter::BytecodeGenerator::BuildClassLiteral ( ClassLiteral * expr,
Register name )
private

Definition at line 3278 of file bytecode-generator.cc.

◆ BuildClassProperty()

void v8::internal::interpreter::BytecodeGenerator::BuildClassProperty ( ClassLiteral::Property * property)
private

Definition at line 3607 of file bytecode-generator.cc.

Here is the call graph for this function:

◆ BuildCreateArrayLiteral()

void v8::internal::interpreter::BytecodeGenerator::BuildCreateArrayLiteral ( const ZonePtrList< Expression > * elements,
ArrayLiteral * expr )
private

Definition at line 4253 of file bytecode-generator.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ BuildCreateObjectLiteral()

void v8::internal::interpreter::BytecodeGenerator::BuildCreateObjectLiteral ( Register literal,
uint8_t flags,
size_t entry )
private

Definition at line 3924 of file bytecode-generator.cc.

Here is the call graph for this function:

◆ BuildDeclareCall()

void v8::internal::interpreter::BytecodeGenerator::BuildDeclareCall ( Runtime::FunctionId id)
private

Definition at line 2164 of file bytecode-generator.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ BuildDestructuringArrayAssignment()

void v8::internal::interpreter::BytecodeGenerator::BuildDestructuringArrayAssignment ( ArrayLiteral * pattern,
Token::Value op,
LookupHoistingMode lookup_hoisting_mode )
private

Definition at line 5197 of file bytecode-generator.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ BuildDestructuringObjectAssignment()

void v8::internal::interpreter::BytecodeGenerator::BuildDestructuringObjectAssignment ( ObjectLiteral * pattern,
Token::Value op,
LookupHoistingMode lookup_hoisting_mode )
private

Definition at line 5371 of file bytecode-generator.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ BuildDisposeScope()

template<typename WrappedFunc >
void v8::internal::interpreter::BytecodeGenerator::BuildDisposeScope ( WrappedFunc wrapped_func,
bool has_await_using )
private

Definition at line 2819 of file bytecode-generator.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ builder()

BytecodeArrayBuilder * v8::internal::interpreter::BytecodeGenerator::builder ( )
inlineprivate

Definition at line 530 of file bytecode-generator.h.

◆ BuildFillArrayWithIterator()

void v8::internal::interpreter::BytecodeGenerator::BuildFillArrayWithIterator ( IteratorRecord iterator,
Register array,
Register index,
Register value,
FeedbackSlot next_value_slot,
FeedbackSlot next_done_slot,
FeedbackSlot index_slot,
FeedbackSlot element_slot )
private

Definition at line 4219 of file bytecode-generator.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ BuildFinalizeIteration()

void v8::internal::interpreter::BytecodeGenerator::BuildFinalizeIteration ( IteratorRecord iterator,
Register done,
Register iteration_continuation_token )
private

Definition at line 5064 of file bytecode-generator.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ BuildGeneratorObjectVariableInitialization()

void v8::internal::interpreter::BytecodeGenerator::BuildGeneratorObjectVariableInitialization ( )
private

Definition at line 8290 of file bytecode-generator.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ BuildGeneratorPrologue()

void v8::internal::interpreter::BytecodeGenerator::BuildGeneratorPrologue ( )
private

Definition at line 1999 of file bytecode-generator.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ BuildGetAndCheckSuperConstructor()

void v8::internal::interpreter::BytecodeGenerator::BuildGetAndCheckSuperConstructor ( Register this_function,
Register new_target,
Register constructor,
BytecodeLabel * super_ctor_call_done )
private

Definition at line 6841 of file bytecode-generator.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ BuildGetIterator()

void v8::internal::interpreter::BytecodeGenerator::BuildGetIterator ( IteratorType hint)
private

Definition at line 7594 of file bytecode-generator.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ BuildGetIteratorRecord() [1/2]

BytecodeGenerator::IteratorRecord v8::internal::interpreter::BytecodeGenerator::BuildGetIteratorRecord ( IteratorType hint)
private

Definition at line 7670 of file bytecode-generator.cc.

Here is the call graph for this function:

◆ BuildGetIteratorRecord() [2/2]

BytecodeGenerator::IteratorRecord v8::internal::interpreter::BytecodeGenerator::BuildGetIteratorRecord ( Register iterator_next,
Register iterator_object,
IteratorType hint )
private

Definition at line 7657 of file bytecode-generator.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ BuildHoleCheckForVariableAssignment()

void v8::internal::interpreter::BytecodeGenerator::BuildHoleCheckForVariableAssignment ( Variable * variable,
Token::Value op )
private

Definition at line 4669 of file bytecode-generator.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ BuildIncrementBlockCoverageCounterIfEnabled() [1/2]

void v8::internal::interpreter::BytecodeGenerator::BuildIncrementBlockCoverageCounterIfEnabled ( AstNode * node,
SourceRangeKind kind )
private

Definition at line 8361 of file bytecode-generator.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ BuildIncrementBlockCoverageCounterIfEnabled() [2/2]

void v8::internal::interpreter::BytecodeGenerator::BuildIncrementBlockCoverageCounterIfEnabled ( int coverage_array_slot)
private

Definition at line 8367 of file bytecode-generator.cc.

Here is the call graph for this function:

◆ BuildInstanceInitializationAfterSuperCall()

void v8::internal::interpreter::BytecodeGenerator::BuildInstanceInitializationAfterSuperCall ( Register this_function,
Register instance )
private

Definition at line 6791 of file bytecode-generator.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ BuildInstanceMemberInitialization()

void v8::internal::interpreter::BytecodeGenerator::BuildInstanceMemberInitialization ( Register constructor,
Register instance )
private

Definition at line 3770 of file bytecode-generator.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ BuildInvalidPropertyAccess()

void v8::internal::interpreter::BytecodeGenerator::BuildInvalidPropertyAccess ( MessageTemplate tmpl,
Property * property )
private

Definition at line 3725 of file bytecode-generator.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ BuildIteratorClose()

void v8::internal::interpreter::BytecodeGenerator::BuildIteratorClose ( const IteratorRecord & iterator,
Expression * expr = nullptr )
private

Definition at line 7713 of file bytecode-generator.cc.

Here is the call graph for this function:

◆ BuildIteratorNext()

void v8::internal::interpreter::BytecodeGenerator::BuildIteratorNext ( const IteratorRecord & iterator,
Register next_result )
private

Definition at line 7677 of file bytecode-generator.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ BuildLiteralCompareNil()

void v8::internal::interpreter::BytecodeGenerator::BuildLiteralCompareNil ( Token::Value compare_op,
BytecodeArrayBuilder::NilValue nil )
private

Definition at line 7359 of file bytecode-generator.cc.

Here is the call graph for this function:

◆ BuildLiteralStrictCompareBoolean()

void v8::internal::interpreter::BytecodeGenerator::BuildLiteralStrictCompareBoolean ( Literal * literal)
private

Definition at line 7381 of file bytecode-generator.cc.

Here is the call graph for this function:

◆ BuildLoadKeyedProperty()

void v8::internal::interpreter::BytecodeGenerator::BuildLoadKeyedProperty ( Register object,
FeedbackSlot slot )
private

Definition at line 4900 of file bytecode-generator.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ BuildLoadNamedProperty()

void v8::internal::interpreter::BytecodeGenerator::BuildLoadNamedProperty ( const Expression * object_expr,
Register object,
const AstRawString * name )
private

Definition at line 4860 of file bytecode-generator.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ BuildLoadPropertyKey()

void v8::internal::interpreter::BytecodeGenerator::BuildLoadPropertyKey ( LiteralProperty * property,
Register out_reg )
private

Definition at line 8325 of file bytecode-generator.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ BuildLocalActivationContextInitialization()

void v8::internal::interpreter::BytecodeGenerator::BuildLocalActivationContextInitialization ( )
private

Definition at line 8177 of file bytecode-generator.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ BuildNewLocalActivationContext()

void v8::internal::interpreter::BytecodeGenerator::BuildNewLocalActivationContext ( )
private

Definition at line 8150 of file bytecode-generator.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ BuildNewLocalBlockContext()

void v8::internal::interpreter::BytecodeGenerator::BuildNewLocalBlockContext ( Scope * scope)
private

Definition at line 8203 of file bytecode-generator.cc.

Here is the call graph for this function:

◆ BuildNewLocalCatchContext()

void v8::internal::interpreter::BytecodeGenerator::BuildNewLocalCatchContext ( Scope * scope)
private

Definition at line 8221 of file bytecode-generator.cc.

Here is the call graph for this function:

◆ BuildNewLocalWithContext()

void v8::internal::interpreter::BytecodeGenerator::BuildNewLocalWithContext ( Scope * scope)
private

Definition at line 8210 of file bytecode-generator.cc.

Here is the call graph for this function:

◆ BuildOptionalChain()

template<typename ExpressionFunc >
void v8::internal::interpreter::BytecodeGenerator::BuildOptionalChain ( ExpressionFunc expression_func)
private

Definition at line 6437 of file bytecode-generator.cc.

Here is the call graph for this function:

◆ BuildPrivateBrandCheck()

void v8::internal::interpreter::BytecodeGenerator::BuildPrivateBrandCheck ( Property * property,
Register object )
private

Definition at line 6315 of file bytecode-generator.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ BuildPrivateBrandInitialization()

void v8::internal::interpreter::BytecodeGenerator::BuildPrivateBrandInitialization ( Register receiver,
Variable * brand )
private

Definition at line 3739 of file bytecode-generator.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ BuildPrivateDebugDynamicGet()

void v8::internal::interpreter::BytecodeGenerator::BuildPrivateDebugDynamicGet ( Property * property,
Register obj )
private

Definition at line 6198 of file bytecode-generator.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ BuildPrivateDebugDynamicSet()

void v8::internal::interpreter::BytecodeGenerator::BuildPrivateDebugDynamicSet ( Property * property,
Register obj,
Register value )
private

Definition at line 6211 of file bytecode-generator.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ BuildPrivateGetterAccess()

void v8::internal::interpreter::BytecodeGenerator::BuildPrivateGetterAccess ( Register obj,
Register access_pair )
private

Definition at line 6226 of file bytecode-generator.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ BuildPrivateMethodIn()

void v8::internal::interpreter::BytecodeGenerator::BuildPrivateMethodIn ( Variable * private_name,
Expression * object_expression )
private

Definition at line 6256 of file bytecode-generator.cc.

Here is the call graph for this function:

◆ BuildPrivateMethods()

void v8::internal::interpreter::BytecodeGenerator::BuildPrivateMethods ( ClassLiteral * expr,
bool is_static,
Register home_object )
private

◆ BuildPrivateSetterAccess()

void v8::internal::interpreter::BytecodeGenerator::BuildPrivateSetterAccess ( Register obj,
Register access_pair,
Register value )
private

Definition at line 6240 of file bytecode-generator.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ BuildPushUndefinedIntoRegisterList()

void v8::internal::interpreter::BytecodeGenerator::BuildPushUndefinedIntoRegisterList ( RegisterList * reg_list)
private

Definition at line 8319 of file bytecode-generator.cc.

Here is the call graph for this function:

◆ BuildReThrow()

void v8::internal::interpreter::BytecodeGenerator::BuildReThrow ( )
private

Definition at line 4620 of file bytecode-generator.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ BuildReturn()

void v8::internal::interpreter::BytecodeGenerator::BuildReturn ( int source_position)
private

Definition at line 4584 of file bytecode-generator.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ BuildSetNamedProperty()

void v8::internal::interpreter::BytecodeGenerator::BuildSetNamedProperty ( const Expression * object_expr,
Register object,
const AstRawString * name )
private

Definition at line 4867 of file bytecode-generator.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ BuildStoreGlobal()

void v8::internal::interpreter::BytecodeGenerator::BuildStoreGlobal ( Variable * variable)
private

Definition at line 4885 of file bytecode-generator.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ BuildSuperCallOptimization()

void v8::internal::interpreter::BytecodeGenerator::BuildSuperCallOptimization ( Register this_function,
Register new_target,
Register constructor_then_instance,
BytecodeLabel * super_ctor_call_done )
private

Definition at line 6860 of file bytecode-generator.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ BuildSuspendPoint()

void v8::internal::interpreter::BytecodeGenerator::BuildSuspendPoint ( int position)
private

Definition at line 5710 of file bytecode-generator.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ BuildTest()

void v8::internal::interpreter::BytecodeGenerator::BuildTest ( ToBooleanMode mode,
BytecodeLabels * then_labels,
BytecodeLabels * else_labels,
TestFallthrough fallthrough )
private

Definition at line 8436 of file bytecode-generator.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ BuildThisVariableLoad()

void v8::internal::interpreter::BytecodeGenerator::BuildThisVariableLoad ( )
private

Definition at line 7797 of file bytecode-generator.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ BuildThrowIfHole()

void v8::internal::interpreter::BytecodeGenerator::BuildThrowIfHole ( Variable * variable)
private

Definition at line 4646 of file bytecode-generator.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ BuildTryCatch()

template<typename TryBodyFunc , typename CatchBodyFunc >
void v8::internal::interpreter::BytecodeGenerator::BuildTryCatch ( TryBodyFunc try_body_func,
CatchBodyFunc catch_body_func,
HandlerTable::CatchPrediction catch_prediction,
TryCatchStatement * stmt_for_coverage = nullptr )
private

Definition at line 2694 of file bytecode-generator.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ BuildTryFinally()

template<typename TryBodyFunc , typename FinallyBodyFunc >
void v8::internal::interpreter::BytecodeGenerator::BuildTryFinally ( TryBodyFunc try_body_func,
FinallyBodyFunc finally_body_func,
HandlerTable::CatchPrediction catch_prediction,
TryFinallyStatement * stmt_for_coverage = nullptr )
private

Definition at line 2747 of file bytecode-generator.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ BuildVariableAssignment()

void v8::internal::interpreter::BytecodeGenerator::BuildVariableAssignment ( Variable * variable,
Token::Value op,
HoleCheckMode hole_check_mode,
LookupHoistingMode lookup_hoisting_mode = LookupHoistingMode::kNormal )
private

Definition at line 4691 of file bytecode-generator.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ BuildVariableLoad()

void v8::internal::interpreter::BytecodeGenerator::BuildVariableLoad ( Variable * variable,
HoleCheckMode hole_check_mode,
TypeofMode typeof_mode = TypeofMode::kNotInside )
private

Definition at line 4446 of file bytecode-generator.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ BuildVariableLoadForAccumulatorValue()

void v8::internal::interpreter::BytecodeGenerator::BuildVariableLoadForAccumulatorValue ( Variable * variable,
HoleCheckMode hole_check_mode,
TypeofMode typeof_mode = TypeofMode::kNotInside )
private

Definition at line 4578 of file bytecode-generator.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ catch_prediction()

HandlerTable::CatchPrediction v8::internal::interpreter::BytecodeGenerator::catch_prediction ( ) const
inlineprivate

Definition at line 570 of file bytecode-generator.h.

Here is the caller graph for this function:

◆ closure_scope()

DeclarationScope * v8::internal::interpreter::BytecodeGenerator::closure_scope ( ) const
inlineprivate

Definition at line 532 of file bytecode-generator.h.

Here is the caller graph for this function:

◆ current_disposables_stack()

Register v8::internal::interpreter::BytecodeGenerator::current_disposables_stack ( ) const
inlineprivate

Definition at line 589 of file bytecode-generator.h.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ current_for_in_scope()

ForInScope * v8::internal::interpreter::BytecodeGenerator::current_for_in_scope ( ) const
inlineprivate

Definition at line 582 of file bytecode-generator.h.

Here is the caller graph for this function:

◆ current_loop_scope()

LoopScope * v8::internal::interpreter::BytecodeGenerator::current_loop_scope ( ) const
inlineprivate

Definition at line 577 of file bytecode-generator.h.

◆ current_scope()

Scope * v8::internal::interpreter::BytecodeGenerator::current_scope ( ) const
inlineprivate

Definition at line 538 of file bytecode-generator.h.

Here is the caller graph for this function:

◆ DEFINE_AST_VISITOR_SUBCLASS_MEMBERS()

v8::internal::interpreter::BytecodeGenerator::DEFINE_AST_VISITOR_SUBCLASS_MEMBERS ( )
private

◆ execution_context()

ContextScope * v8::internal::interpreter::BytecodeGenerator::execution_context ( ) const
inlineprivate

Definition at line 545 of file bytecode-generator.h.

Here is the caller graph for this function:

◆ execution_control()

ControlScope * v8::internal::interpreter::BytecodeGenerator::execution_control ( ) const
inlineprivate

Definition at line 541 of file bytecode-generator.h.

Here is the caller graph for this function:

◆ execution_result()

ExpressionResultScope * v8::internal::interpreter::BytecodeGenerator::execution_result ( ) const
inlineprivate

Definition at line 552 of file bytecode-generator.h.

Here is the caller graph for this function:

◆ feedback_index()

int v8::internal::interpreter::BytecodeGenerator::feedback_index ( FeedbackSlot slot) const
inlineprivate

Definition at line 8575 of file bytecode-generator.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ feedback_slot_cache()

FeedbackSlotCache * v8::internal::interpreter::BytecodeGenerator::feedback_slot_cache ( )
inlineprivate

Definition at line 566 of file bytecode-generator.h.

Here is the caller graph for this function:

◆ feedback_spec()

FeedbackVectorSpec * v8::internal::interpreter::BytecodeGenerator::feedback_spec ( )
inlineprivate

Definition at line 8571 of file bytecode-generator.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ FinalizeBytecode()

template<typename IsolateT >
template Handle< BytecodeArray > v8::internal::interpreter::BytecodeGenerator::FinalizeBytecode ( IsolateT * isolate,
Handle< Script > script )

Definition at line 1464 of file bytecode-generator.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ FinalizeSourcePositionTable()

template<typename IsolateT >
template DirectHandle< TrustedByteArray > v8::internal::interpreter::BytecodeGenerator::FinalizeSourcePositionTable ( IsolateT * isolate)

Definition at line 1502 of file bytecode-generator.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ function_kind()

FunctionKind v8::internal::interpreter::BytecodeGenerator::function_kind ( ) const
inlineprivate

Definition at line 8551 of file bytecode-generator.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ GenerateAsyncFunctionBody()

void v8::internal::interpreter::BytecodeGenerator::GenerateAsyncFunctionBody ( )
private

Definition at line 1829 of file bytecode-generator.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ GenerateAsyncGeneratorFunctionBody()

void v8::internal::interpreter::BytecodeGenerator::GenerateAsyncGeneratorFunctionBody ( )
private

Definition at line 1874 of file bytecode-generator.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ GenerateBaseConstructorBody()

void v8::internal::interpreter::BytecodeGenerator::GenerateBaseConstructorBody ( )
private

Definition at line 1745 of file bytecode-generator.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ GenerateBodyPrologue()

void v8::internal::interpreter::BytecodeGenerator::GenerateBodyPrologue ( )
private

Definition at line 1703 of file bytecode-generator.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ GenerateBodyStatements()

void v8::internal::interpreter::BytecodeGenerator::GenerateBodyStatements ( int start = 0)
private

Definition at line 1942 of file bytecode-generator.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ GenerateBodyStatementsWithoutImplicitFinalReturn()

void v8::internal::interpreter::BytecodeGenerator::GenerateBodyStatementsWithoutImplicitFinalReturn ( int start = 0)
private

Definition at line 1962 of file bytecode-generator.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ GenerateBytecode()

void v8::internal::interpreter::BytecodeGenerator::GenerateBytecode ( uintptr_t stack_limit)

Definition at line 1635 of file bytecode-generator.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ GenerateBytecodeBody()

void v8::internal::interpreter::BytecodeGenerator::GenerateBytecodeBody ( )
private

Definition at line 1684 of file bytecode-generator.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ GenerateDerivedConstructorBody()

void v8::internal::interpreter::BytecodeGenerator::GenerateDerivedConstructorBody ( )
private

Definition at line 1765 of file bytecode-generator.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ generator_object()

Register v8::internal::interpreter::BytecodeGenerator::generator_object ( ) const
inlineprivate

Definition at line 8565 of file bytecode-generator.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ GetCachedCreateClosureSlot()

int v8::internal::interpreter::BytecodeGenerator::GetCachedCreateClosureSlot ( FunctionLiteral * literal)
private

Definition at line 8673 of file bytecode-generator.cc.

Here is the call graph for this function:

◆ GetCachedLoadGlobalICSlot()

FeedbackSlot v8::internal::interpreter::BytecodeGenerator::GetCachedLoadGlobalICSlot ( TypeofMode typeof_mode,
Variable * variable )
private

Definition at line 8580 of file bytecode-generator.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ GetCachedLoadICSlot()

FeedbackSlot v8::internal::interpreter::BytecodeGenerator::GetCachedLoadICSlot ( const Expression * expr,
const AstRawString * name )
private

Definition at line 8610 of file bytecode-generator.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ GetCachedLoadSuperICSlot()

FeedbackSlot v8::internal::interpreter::BytecodeGenerator::GetCachedLoadSuperICSlot ( const AstRawString * name)
private

Definition at line 8633 of file bytecode-generator.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ GetCachedStoreGlobalICSlot()

FeedbackSlot v8::internal::interpreter::BytecodeGenerator::GetCachedStoreGlobalICSlot ( LanguageMode language_mode,
Variable * variable )
private

Definition at line 8595 of file bytecode-generator.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ GetCachedStoreICSlot()

FeedbackSlot v8::internal::interpreter::BytecodeGenerator::GetCachedStoreICSlot ( const Expression * expr,
const AstRawString * name )
private

Definition at line 8650 of file bytecode-generator.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ GetDestructuringDefaultValue()

Expression * v8::internal::interpreter::BytecodeGenerator::GetDestructuringDefaultValue ( Expression ** target)
private

Definition at line 5146 of file bytecode-generator.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ GetDummyCompareICSlot()

FeedbackSlot v8::internal::interpreter::BytecodeGenerator::GetDummyCompareICSlot ( )
private

Definition at line 8686 of file bytecode-generator.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ GetPotentialVariableInAccumulator()

Variable * v8::internal::interpreter::BytecodeGenerator::GetPotentialVariableInAccumulator ( )
private

Definition at line 4438 of file bytecode-generator.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ GetRegisterForLocalVariable()

Register v8::internal::interpreter::BytecodeGenerator::GetRegisterForLocalVariable ( Variable * variable)
private

Definition at line 8536 of file bytecode-generator.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ GetTypeHintForLocalVariable()

BytecodeGenerator::TypeHint v8::internal::interpreter::BytecodeGenerator::GetTypeHintForLocalVariable ( Variable * variable)
private

Definition at line 8541 of file bytecode-generator.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ incoming_new_target()

Register v8::internal::interpreter::BytecodeGenerator::incoming_new_target ( ) const
inlineprivate

Definition at line 8559 of file bytecode-generator.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ info()

UnoptimizedCompilationInfo * v8::internal::interpreter::BytecodeGenerator::info ( ) const
inlineprivate

Definition at line 533 of file bytecode-generator.h.

Here is the caller graph for this function:

◆ IsLocalVariableWithInternalizedStringHint()

bool v8::internal::interpreter::BytecodeGenerator::IsLocalVariableWithInternalizedStringHint ( Expression * expr)
private

Definition at line 7389 of file bytecode-generator.cc.

Here is the call graph for this function:

◆ IsSameOrSubTypeHint()

static bool v8::internal::interpreter::BytecodeGenerator::IsSameOrSubTypeHint ( TypeHint hint1,
TypeHint hint2 )
inlinestatic

Definition at line 56 of file bytecode-generator.h.

Here is the caller graph for this function:

◆ IsStringTypeHint()

static bool v8::internal::interpreter::BytecodeGenerator::IsStringTypeHint ( TypeHint hint)
inlinestatic

Definition at line 60 of file bytecode-generator.h.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ IsVariableInRegister()

bool v8::internal::interpreter::BytecodeGenerator::IsVariableInRegister ( Variable * var,
Register reg )
private

Definition at line 4423 of file bytecode-generator.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ language_mode()

LanguageMode v8::internal::interpreter::BytecodeGenerator::language_mode ( ) const
inlineprivate

Definition at line 8555 of file bytecode-generator.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ PrepareAssignmentLhs()

BytecodeGenerator::AssignmentLhsData v8::internal::interpreter::BytecodeGenerator::PrepareAssignmentLhs ( Expression * lhs,
AccumulatorPreservingMode accumulator_preserving_mode = AccumulatorPreservingMode::kNone )
private

Definition at line 4970 of file bytecode-generator.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ register_allocator()

BytecodeRegisterAllocator * v8::internal::interpreter::BytecodeGenerator::register_allocator ( )
inlineprivate

Definition at line 553 of file bytecode-generator.h.

Here is the call graph for this function:

◆ RememberHoleCheckInCurrentBlock()

void v8::internal::interpreter::BytecodeGenerator::RememberHoleCheckInCurrentBlock ( Variable * variable)
private

Definition at line 4622 of file bytecode-generator.cc.

Here is the caller graph for this function:

◆ set_catch_prediction()

void v8::internal::interpreter::BytecodeGenerator::set_catch_prediction ( HandlerTable::CatchPrediction value)
inlineprivate

Definition at line 573 of file bytecode-generator.h.

Here is the caller graph for this function:

◆ set_current_disposables_stack()

void v8::internal::interpreter::BytecodeGenerator::set_current_disposables_stack ( Register disposables_stack)
inlineprivate

Definition at line 593 of file bytecode-generator.h.

◆ set_current_for_in_scope()

void v8::internal::interpreter::BytecodeGenerator::set_current_for_in_scope ( ForInScope * for_in_scope)
inlineprivate

Definition at line 585 of file bytecode-generator.h.

◆ set_current_loop_scope()

void v8::internal::interpreter::BytecodeGenerator::set_current_loop_scope ( LoopScope * loop_scope)
inlineprivate

Definition at line 578 of file bytecode-generator.h.

◆ set_current_scope()

void v8::internal::interpreter::BytecodeGenerator::set_current_scope ( Scope * scope)
inlineprivate

Definition at line 539 of file bytecode-generator.h.

◆ set_execution_context()

void v8::internal::interpreter::BytecodeGenerator::set_execution_context ( ContextScope * context)
inlineprivate

Definition at line 546 of file bytecode-generator.h.

◆ set_execution_control()

void v8::internal::interpreter::BytecodeGenerator::set_execution_control ( ControlScope * scope)
inlineprivate

Definition at line 542 of file bytecode-generator.h.

◆ set_execution_result()

void v8::internal::interpreter::BytecodeGenerator::set_execution_result ( ExpressionResultScope * execution_result)
inlineprivate

Definition at line 549 of file bytecode-generator.h.

Here is the call graph for this function:

◆ SetVariableInRegister()

void v8::internal::interpreter::BytecodeGenerator::SetVariableInRegister ( Variable * var,
Register reg )
private

Definition at line 4431 of file bytecode-generator.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ StoreKeyedToSuperRuntimeId()

Runtime::FunctionId v8::internal::interpreter::BytecodeGenerator::StoreKeyedToSuperRuntimeId ( )
inlineprivate

◆ StoreToSuperRuntimeId()

Runtime::FunctionId v8::internal::interpreter::BytecodeGenerator::StoreToSuperRuntimeId ( )
inlineprivate

◆ ToBooleanModeFromTypeHint()

static constexpr ToBooleanMode v8::internal::interpreter::BytecodeGenerator::ToBooleanModeFromTypeHint ( TypeHint type_hint)
inlinestaticconstexprprivate

Definition at line 522 of file bytecode-generator.h.

Here is the caller graph for this function:

◆ top_level_builder()

TopLevelDeclarationsBuilder * v8::internal::interpreter::BytecodeGenerator::top_level_builder ( )
inlineprivate

Definition at line 557 of file bytecode-generator.h.

Here is the caller graph for this function:

◆ VariableNeedsHoleCheckInCurrentBlock()

bool v8::internal::interpreter::BytecodeGenerator::VariableNeedsHoleCheckInCurrentBlock ( Variable * variable,
HoleCheckMode hole_check_mode )
private

Definition at line 4656 of file bytecode-generator.cc.

Here is the caller graph for this function:

◆ VariableNeedsHoleCheckInCurrentBlockForAssignment()

bool v8::internal::interpreter::BytecodeGenerator::VariableNeedsHoleCheckInCurrentBlockForAssignment ( Variable * variable,
Token::Value op,
HoleCheckMode hole_check_mode )
private

Definition at line 4662 of file bytecode-generator.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ VisitAndPushIntoRegisterList()

void v8::internal::interpreter::BytecodeGenerator::VisitAndPushIntoRegisterList ( Expression * expr,
RegisterList * reg_list )
private

Definition at line 8422 of file bytecode-generator.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ VisitArguments()

void v8::internal::interpreter::BytecodeGenerator::VisitArguments ( const ZonePtrList< Expression > * args,
RegisterList * arg_regs )
private

Definition at line 6465 of file bytecode-generator.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ VisitArgumentsObject()

void v8::internal::interpreter::BytecodeGenerator::VisitArgumentsObject ( Variable * variable)
private

Definition at line 8240 of file bytecode-generator.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ VisitArithmeticExpression()

void v8::internal::interpreter::BytecodeGenerator::VisitArithmeticExpression ( BinaryOperation * binop)
private

Definition at line 7512 of file bytecode-generator.cc.

Here is the call graph for this function:

◆ VisitBlockDeclarationsAndStatements()

void v8::internal::interpreter::BytecodeGenerator::VisitBlockDeclarationsAndStatements ( Block * stmt)
private

Definition at line 2036 of file bytecode-generator.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ VisitBlockMaybeDispose()

void v8::internal::interpreter::BytecodeGenerator::VisitBlockMaybeDispose ( Block * stmt)
private

Definition at line 2025 of file bytecode-generator.cc.

Here is the call graph for this function:

◆ VisitCallSuper()

void v8::internal::interpreter::BytecodeGenerator::VisitCallSuper ( Call * call)
private

Definition at line 6697 of file bytecode-generator.cc.

Here is the call graph for this function:

◆ VisitClassLiteral()

void v8::internal::interpreter::BytecodeGenerator::VisitClassLiteral ( ClassLiteral * expr,
Register name )
private

Definition at line 3577 of file bytecode-generator.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ VisitCommaExpression()

void v8::internal::interpreter::BytecodeGenerator::VisitCommaExpression ( BinaryOperation * binop)
private

Definition at line 7824 of file bytecode-generator.cc.

Here is the call graph for this function:

◆ VisitCondition()

void v8::internal::interpreter::BytecodeGenerator::VisitCondition ( Expression * expr)
private

◆ VisitDeclarations()

void v8::internal::interpreter::BytecodeGenerator::VisitDeclarations ( Declaration::List * declarations)

Definition at line 2229 of file bytecode-generator.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ VisitDelete()

void v8::internal::interpreter::BytecodeGenerator::VisitDelete ( UnaryOperation * expr)
private

Definition at line 7037 of file bytecode-generator.cc.

Here is the call graph for this function:

◆ VisitForAccumulatorValue()

BytecodeGenerator::TypeHint v8::internal::interpreter::BytecodeGenerator::VisitForAccumulatorValue ( Expression * expr)
private

Definition at line 8375 of file bytecode-generator.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ VisitForAccumulatorValueOrTheHole()

void v8::internal::interpreter::BytecodeGenerator::VisitForAccumulatorValueOrTheHole ( Expression * expr)
private

Definition at line 8388 of file bytecode-generator.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ VisitForEffect()

void v8::internal::interpreter::BytecodeGenerator::VisitForEffect ( Expression * expr)
private

Definition at line 8397 of file bytecode-generator.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ VisitForInAssignment()

void v8::internal::interpreter::BytecodeGenerator::VisitForInAssignment ( Expression * expr)
private

◆ VisitForNullishTest()

void v8::internal::interpreter::BytecodeGenerator::VisitForNullishTest ( Expression * expr,
BytecodeLabels * then_labels,
BytecodeLabels * test_next_labels,
BytecodeLabels * else_labels )
private

Definition at line 8484 of file bytecode-generator.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ VisitForRegisterValue() [1/2]

Register v8::internal::interpreter::BytecodeGenerator::VisitForRegisterValue ( Expression * expr)
private

Definition at line 8404 of file bytecode-generator.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ VisitForRegisterValue() [2/2]

void v8::internal::interpreter::BytecodeGenerator::VisitForRegisterValue ( Expression * expr,
Register destination )
private

Definition at line 8413 of file bytecode-generator.cc.

Here is the call graph for this function:

◆ VisitForTest()

void v8::internal::interpreter::BytecodeGenerator::VisitForTest ( Expression * expr,
BytecodeLabels * then_labels,
BytecodeLabels * else_labels,
TestFallthrough fallthrough )
private

Definition at line 8456 of file bytecode-generator.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ VisitForTypeOfValue()

void v8::internal::interpreter::BytecodeGenerator::VisitForTypeOfValue ( Expression * expr)
private

Definition at line 6966 of file bytecode-generator.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ VisitGlobalDeclarations()

void v8::internal::interpreter::BytecodeGenerator::VisitGlobalDeclarations ( Declaration::List * declarations)

Definition at line 2205 of file bytecode-generator.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ VisitInHoleCheckElisionScope()

template<typename T >
void v8::internal::interpreter::BytecodeGenerator::VisitInHoleCheckElisionScope ( T * node)
private

Definition at line 8524 of file bytecode-generator.cc.

Here is the call graph for this function:

◆ VisitInHoleCheckElisionScopeForAccumulatorValue()

BytecodeGenerator::TypeHint v8::internal::interpreter::BytecodeGenerator::VisitInHoleCheckElisionScopeForAccumulatorValue ( Expression * expr)
private

Definition at line 8530 of file bytecode-generator.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ VisitInSameTestExecutionScope()

void v8::internal::interpreter::BytecodeGenerator::VisitInSameTestExecutionScope ( Expression * expr)
private

Definition at line 8501 of file bytecode-generator.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ VisitInScope()

void v8::internal::interpreter::BytecodeGenerator::VisitInScope ( Statement * stmt,
Scope * scope )
private

Definition at line 8516 of file bytecode-generator.cc.

Here is the call graph for this function:

◆ VisitIterationBody()

void v8::internal::interpreter::BytecodeGenerator::VisitIterationBody ( IterationStatement * stmt,
LoopBuilder * loop_builder )
private

Definition at line 2903 of file bytecode-generator.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ VisitIterationBodyInHoleCheckElisionScope()

void v8::internal::interpreter::BytecodeGenerator::VisitIterationBodyInHoleCheckElisionScope ( IterationStatement * stmt,
LoopBuilder * loop_builder )
private

Definition at line 2911 of file bytecode-generator.cc.

Here is the call graph for this function:

◆ VisitKeyedSuperPropertyLoad()

void v8::internal::interpreter::BytecodeGenerator::VisitKeyedSuperPropertyLoad ( Property * property,
Register opt_receiver_out )
private

Definition at line 6416 of file bytecode-generator.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ VisitLiteralAccessor()

void v8::internal::interpreter::BytecodeGenerator::VisitLiteralAccessor ( LiteralProperty * property,
Register value_out )
private

Definition at line 8231 of file bytecode-generator.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ VisitLogicalAndExpression()

void v8::internal::interpreter::BytecodeGenerator::VisitLogicalAndExpression ( BinaryOperation * binop)
private

Definition at line 8025 of file bytecode-generator.cc.

Here is the call graph for this function:

◆ VisitLogicalAndSubExpression()

bool v8::internal::interpreter::BytecodeGenerator::VisitLogicalAndSubExpression ( Expression * expr,
BytecodeLabels * end_labels,
int coverage_slot )
private

Definition at line 7923 of file bytecode-generator.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ VisitLogicalOrExpression()

void v8::internal::interpreter::BytecodeGenerator::VisitLogicalOrExpression ( BinaryOperation * binop)
private

Definition at line 7962 of file bytecode-generator.cc.

Here is the call graph for this function:

◆ VisitLogicalOrSubExpression()

bool v8::internal::interpreter::BytecodeGenerator::VisitLogicalOrSubExpression ( Expression * expr,
BytecodeLabels * end_labels,
int coverage_slot )
private

Definition at line 7905 of file bytecode-generator.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ VisitLogicalTest()

void v8::internal::interpreter::BytecodeGenerator::VisitLogicalTest ( Token::Value token,
Expression * left,
Expression * right,
int right_coverage_slot )
private

Definition at line 7863 of file bytecode-generator.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ VisitLogicalTestSubExpression()

void v8::internal::interpreter::BytecodeGenerator::VisitLogicalTestSubExpression ( Token::Value token,
Expression * expr,
BytecodeLabels * then_labels,
BytecodeLabels * else_labels,
int coverage_slot )
private

Definition at line 7843 of file bytecode-generator.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ VisitModuleDeclarations()

void v8::internal::interpreter::BytecodeGenerator::VisitModuleDeclarations ( Declaration::List * declarations)

Definition at line 2182 of file bytecode-generator.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ VisitModuleNamespaceImports()

void v8::internal::interpreter::BytecodeGenerator::VisitModuleNamespaceImports ( )
private

Definition at line 2146 of file bytecode-generator.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ VisitNamedSuperPropertyLoad()

void v8::internal::interpreter::BytecodeGenerator::VisitNamedSuperPropertyLoad ( Property * property,
Register opt_receiver_out )
private

Definition at line 6379 of file bytecode-generator.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ VisitNaryArithmeticExpression()

void v8::internal::interpreter::BytecodeGenerator::VisitNaryArithmeticExpression ( NaryOperation * expr)
private

Definition at line 7539 of file bytecode-generator.cc.

Here is the call graph for this function:

◆ VisitNaryCommaExpression()

void v8::internal::interpreter::BytecodeGenerator::VisitNaryCommaExpression ( NaryOperation * expr)
private

Definition at line 7830 of file bytecode-generator.cc.

Here is the call graph for this function:

◆ VisitNaryLogicalAndExpression()

void v8::internal::interpreter::BytecodeGenerator::VisitNaryLogicalAndExpression ( NaryOperation * expr)
private

Definition at line 8053 of file bytecode-generator.cc.

Here is the call graph for this function:

◆ VisitNaryLogicalOrExpression()

void v8::internal::interpreter::BytecodeGenerator::VisitNaryLogicalOrExpression ( NaryOperation * expr)
private

Definition at line 7990 of file bytecode-generator.cc.

Here is the call graph for this function:

◆ VisitNaryLogicalTest()

void v8::internal::interpreter::BytecodeGenerator::VisitNaryLogicalTest ( Token::Value token,
NaryOperation * expr,
const NaryCodeCoverageSlots * coverage_slots )
private

Definition at line 7880 of file bytecode-generator.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ VisitNaryNullishExpression()

void v8::internal::interpreter::BytecodeGenerator::VisitNaryNullishExpression ( NaryOperation * expr)
private

Definition at line 8116 of file bytecode-generator.cc.

Here is the call graph for this function:

◆ VisitNewTargetVariable()

void v8::internal::interpreter::BytecodeGenerator::VisitNewTargetVariable ( Variable * variable)
private

Definition at line 8269 of file bytecode-generator.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ VisitNot()

void v8::internal::interpreter::BytecodeGenerator::VisitNot ( UnaryOperation * expr)
private

Definition at line 6984 of file bytecode-generator.cc.

Here is the call graph for this function:

◆ VisitNullishExpression()

void v8::internal::interpreter::BytecodeGenerator::VisitNullishExpression ( BinaryOperation * binop)
private

Definition at line 8087 of file bytecode-generator.cc.

Here is the call graph for this function:

◆ VisitNullishSubExpression()

bool v8::internal::interpreter::BytecodeGenerator::VisitNullishSubExpression ( Expression * expr,
BytecodeLabels * end_labels,
int coverage_slot )
private

Definition at line 7941 of file bytecode-generator.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ VisitPropertyLoad()

void v8::internal::interpreter::BytecodeGenerator::VisitPropertyLoad ( Register obj,
Property * expr )
private

Definition at line 6137 of file bytecode-generator.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ VisitPropertyLoadForRegister()

void v8::internal::interpreter::BytecodeGenerator::VisitPropertyLoadForRegister ( Register obj,
Property * expr,
Register destination )
private

Definition at line 6371 of file bytecode-generator.cc.

Here is the call graph for this function:

◆ VisitRestArgumentsArray()

void v8::internal::interpreter::BytecodeGenerator::VisitRestArgumentsArray ( Variable * rest)
private

Definition at line 8251 of file bytecode-generator.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ VisitStatements()

void v8::internal::interpreter::BytecodeGenerator::VisitStatements ( const ZonePtrList< Statement > * statments,
int start = 0 )

Definition at line 2236 of file bytecode-generator.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ VisitThisFunctionVariable()

void v8::internal::interpreter::BytecodeGenerator::VisitThisFunctionVariable ( Variable * variable)
private

Definition at line 8261 of file bytecode-generator.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ VisitTypeOf()

void v8::internal::interpreter::BytecodeGenerator::VisitTypeOf ( UnaryOperation * expr)
private

Definition at line 6978 of file bytecode-generator.cc.

Here is the call graph for this function:

◆ VisitVoid()

void v8::internal::interpreter::BytecodeGenerator::VisitVoid ( UnaryOperation * expr)
private

Definition at line 6961 of file bytecode-generator.cc.

Here is the call graph for this function:

◆ zone()

Zone * v8::internal::interpreter::BytecodeGenerator::zone ( ) const
inlineprivate

Definition at line 531 of file bytecode-generator.h.

Here is the caller graph for this function:

Member Data Documentation

◆ array_literals_

ZoneVector<std::pair<ArrayLiteralBoilerplateBuilder*, size_t> > v8::internal::interpreter::BytecodeGenerator::array_literals_
private

Definition at line 619 of file bytecode-generator.h.

◆ ast_string_constants_

const AstStringConstants* v8::internal::interpreter::BytecodeGenerator::ast_string_constants_
private

Definition at line 601 of file bytecode-generator.h.

◆ block_coverage_builder_

BlockCoverageBuilder* v8::internal::interpreter::BytecodeGenerator::block_coverage_builder_
private

Definition at line 612 of file bytecode-generator.h.

◆ builder_

BytecodeArrayBuilder v8::internal::interpreter::BytecodeGenerator::builder_
private

Definition at line 599 of file bytecode-generator.h.

◆ catch_prediction_

HandlerTable::CatchPrediction v8::internal::interpreter::BytecodeGenerator::catch_prediction_
private

Definition at line 650 of file bytecode-generator.h.

◆ class_literals_

ZoneVector<std::pair<ClassLiteral*, size_t> > v8::internal::interpreter::BytecodeGenerator::class_literals_
private

Definition at line 620 of file bytecode-generator.h.

◆ closure_scope_

DeclarationScope* v8::internal::interpreter::BytecodeGenerator::closure_scope_
private

Definition at line 602 of file bytecode-generator.h.

◆ current_disposables_stack_

Register v8::internal::interpreter::BytecodeGenerator::current_disposables_stack_
private

Definition at line 630 of file bytecode-generator.h.

◆ current_for_in_scope_

ForInScope* v8::internal::interpreter::BytecodeGenerator::current_for_in_scope_
private

Definition at line 648 of file bytecode-generator.h.

◆ current_loop_scope_

LoopScope* v8::internal::interpreter::BytecodeGenerator::current_loop_scope_
private

Definition at line 647 of file bytecode-generator.h.

◆ current_scope_

Scope* v8::internal::interpreter::BytecodeGenerator::current_scope_
private

Definition at line 603 of file bytecode-generator.h.

◆ dummy_feedback_slot_

SharedFeedbackSlot v8::internal::interpreter::BytecodeGenerator::dummy_feedback_slot_
private

Definition at line 636 of file bytecode-generator.h.

◆ eager_inner_literals_

std::vector<FunctionLiteral*>* v8::internal::interpreter::BytecodeGenerator::eager_inner_literals_
private

Definition at line 606 of file bytecode-generator.h.

◆ eval_calls_

ZoneVector<std::pair<Call*, Scope*> > v8::internal::interpreter::BytecodeGenerator::eval_calls_
private

Definition at line 623 of file bytecode-generator.h.

◆ execution_context_

ContextScope* v8::internal::interpreter::BytecodeGenerator::execution_context_
private

Definition at line 626 of file bytecode-generator.h.

◆ execution_control_

ControlScope* v8::internal::interpreter::BytecodeGenerator::execution_control_
private

Definition at line 625 of file bytecode-generator.h.

◆ execution_result_

ExpressionResultScope* v8::internal::interpreter::BytecodeGenerator::execution_result_
private

Definition at line 627 of file bytecode-generator.h.

◆ feedback_slot_cache_

FeedbackSlotCache* v8::internal::interpreter::BytecodeGenerator::feedback_slot_cache_
private

Definition at line 609 of file bytecode-generator.h.

◆ function_literals_

ZoneVector<std::pair<FunctionLiteral*, size_t> > v8::internal::interpreter::BytecodeGenerator::function_literals_
private

Definition at line 613 of file bytecode-generator.h.

◆ generator_jump_table_

BytecodeJumpTable* v8::internal::interpreter::BytecodeGenerator::generator_jump_table_
private

Definition at line 638 of file bytecode-generator.h.

◆ hole_check_bitmap_

Variable::HoleCheckBitmap v8::internal::interpreter::BytecodeGenerator::hole_check_bitmap_
private

Definition at line 645 of file bytecode-generator.h.

◆ incoming_new_target_or_generator_

Register v8::internal::interpreter::BytecodeGenerator::incoming_new_target_or_generator_
private

Definition at line 629 of file bytecode-generator.h.

◆ info_

UnoptimizedCompilationInfo* v8::internal::interpreter::BytecodeGenerator::info_
private

Definition at line 600 of file bytecode-generator.h.

◆ local_isolate_

LocalIsolate* v8::internal::interpreter::BytecodeGenerator::local_isolate_
private

Definition at line 597 of file bytecode-generator.h.

◆ loop_depth_

int v8::internal::interpreter::BytecodeGenerator::loop_depth_
private

Definition at line 641 of file bytecode-generator.h.

◆ native_function_literals_

ZoneVector<std::pair<NativeFunctionLiteral*, size_t> > v8::internal::interpreter::BytecodeGenerator::native_function_literals_
private

Definition at line 615 of file bytecode-generator.h.

◆ object_literals_

ZoneVector<std::pair<ObjectLiteralBoilerplateBuilder*, size_t> > v8::internal::interpreter::BytecodeGenerator::object_literals_
private

Definition at line 617 of file bytecode-generator.h.

◆ optional_chaining_null_labels_

BytecodeLabels* v8::internal::interpreter::BytecodeGenerator::optional_chaining_null_labels_
private

Definition at line 632 of file bytecode-generator.h.

◆ script_

Handle<Script> v8::internal::interpreter::BytecodeGenerator::script_
private

Definition at line 607 of file bytecode-generator.h.

◆ suspend_count_

int v8::internal::interpreter::BytecodeGenerator::suspend_count_
private

Definition at line 639 of file bytecode-generator.h.

◆ template_objects_

ZoneVector<std::pair<GetTemplateObject*, size_t> > v8::internal::interpreter::BytecodeGenerator::template_objects_
private

Definition at line 621 of file bytecode-generator.h.

◆ top_level_builder_

TopLevelDeclarationsBuilder* v8::internal::interpreter::BytecodeGenerator::top_level_builder_
private

Definition at line 611 of file bytecode-generator.h.

◆ vars_in_hole_check_bitmap_

ZoneVector<Variable*> v8::internal::interpreter::BytecodeGenerator::vars_in_hole_check_bitmap_
private

Definition at line 622 of file bytecode-generator.h.

◆ zone_

Zone* v8::internal::interpreter::BytecodeGenerator::zone_
private

Definition at line 598 of file bytecode-generator.h.


The documentation for this class was generated from the following files: