V8 Project
v8::internal::FullCodeGenerator::AccumulatorValueContext Class Reference
+ Inheritance diagram for v8::internal::FullCodeGenerator::AccumulatorValueContext:
+ Collaboration diagram for v8::internal::FullCodeGenerator::AccumulatorValueContext:

Public Member Functions

 AccumulatorValueContext (FullCodeGenerator *codegen)
 
virtual void Plug (bool flag) const
 
virtual void Plug (Register reg) const
 
virtual void Plug (Label *materialize_true, Label *materialize_false) const
 
virtual void Plug (Variable *var) const
 
virtual void Plug (Handle< Object > lit) const
 
virtual void Plug (Heap::RootListIndex) const
 
virtual void PlugTOS () const
 
virtual void DropAndPlug (int count, Register reg) const
 
virtual void PrepareTest (Label *materialize_true, Label *materialize_false, Label **if_true, Label **if_false, Label **fall_through) const
 
virtual bool IsAccumulatorValue () const
 

Detailed Description

Definition at line 723 of file full-codegen.h.

Constructor & Destructor Documentation

◆ AccumulatorValueContext()

v8::internal::FullCodeGenerator::AccumulatorValueContext::AccumulatorValueContext ( FullCodeGenerator codegen)
inlineexplicit

Definition at line 725 of file full-codegen.h.

726  : ExpressionContext(codegen) { }

Member Function Documentation

◆ DropAndPlug()

virtual void v8::internal::FullCodeGenerator::AccumulatorValueContext::DropAndPlug ( int  count,
Register  reg 
) const
virtual

◆ IsAccumulatorValue()

virtual bool v8::internal::FullCodeGenerator::AccumulatorValueContext::IsAccumulatorValue ( ) const
inlinevirtual

Definition at line 741 of file full-codegen.h.

741 { return true; }

◆ Plug() [1/6]

virtual void v8::internal::FullCodeGenerator::AccumulatorValueContext::Plug ( bool  flag) const
virtual

◆ Plug() [2/6]

virtual void v8::internal::FullCodeGenerator::AccumulatorValueContext::Plug ( Handle< Object lit) const
virtual

◆ Plug() [3/6]

virtual void v8::internal::FullCodeGenerator::AccumulatorValueContext::Plug ( Heap::RootListIndex  ) const
virtual

◆ Plug() [4/6]

virtual void v8::internal::FullCodeGenerator::AccumulatorValueContext::Plug ( Label *  materialize_true,
Label *  materialize_false 
) const
virtual

◆ Plug() [5/6]

void v8::internal::FullCodeGenerator::AccumulatorValueContext::Plug ( Register  reg) const
virtual

Definition at line 492 of file full-codegen.cc.

492  {
493  __ Move(result_register(), reg);
494 }
static Register result_register()
#define __

References __, and v8::internal::FullCodeGenerator::result_register().

+ Here is the call graph for this function:

◆ Plug() [6/6]

virtual void v8::internal::FullCodeGenerator::AccumulatorValueContext::Plug ( Variable var) const
virtual

◆ PlugTOS()

void v8::internal::FullCodeGenerator::AccumulatorValueContext::PlugTOS ( ) const
virtual

Definition at line 515 of file full-codegen.cc.

515  {
516  __ Pop(result_register());
517 }

References __, and v8::internal::FullCodeGenerator::result_register().

+ Here is the call graph for this function:

◆ PrepareTest()

void v8::internal::FullCodeGenerator::AccumulatorValueContext::PrepareTest ( Label *  materialize_true,
Label *  materialize_false,
Label **  if_true,
Label **  if_false,
Label **  fall_through 
) const
virtual

Definition at line 544 of file full-codegen.cc.

549  {
550  *if_true = *fall_through = materialize_true;
551  *if_false = materialize_false;
552 }

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