Public メソッド | Static Public メソッド | Private メソッド | Private 変数 | Static Private 変数 | フレンド

クラス v8::internal::CodeGenerator

#include <codegen-arm.h>

すべてのメンバ一覧

Public メソッド

MacroAssemblermasm ()
CodeGenState * state ()
void set_state (CodeGenState *state)
void AddDeferred (DeferredCode *code)
MacroAssemblermasm ()
VirtualFrame * frame () const
CodeGenState * state ()
void set_state (CodeGenState *state)
void AddDeferred (DeferredCode *code)

Static Public メソッド

static Handle< CodeMakeCode (FunctionLiteral *fun, Handle< Script > script, bool is_eval)
static void SetFunctionInfo (Handle< JSFunction > fun, int length, int function_token_position, int start_position, int end_position, bool is_expression, bool is_toplevel, Handle< Script > script)
static Handle< CodeMakeCode (FunctionLiteral *fun, Handle< Script > script, bool is_eval)
static void SetFunctionInfo (Handle< JSFunction > fun, int length, int function_token_position, int start_position, int end_position, bool is_expression, bool is_toplevel, Handle< Script > script)

Private メソッド

 CodeGenerator (int buffer_size, Handle< Script > script, bool is_eval)
virtual ~CodeGenerator ()
Scopescope () const
void ProcessDeferred ()
bool is_eval ()
bool has_cc () const
TypeofState typeof_state () const
Labeltrue_target () const
Labelfalse_target () const
void GenCode (FunctionLiteral *fun)
void LoadReference (Reference *ref)
void UnloadReference (Reference *ref)
MemOperand ParameterOperand (int index) const
MemOperand FunctionOperand () const
MemOperand ContextOperand (Register context, int index) const
MemOperand SlotOperand (Slot *slot, Register tmp)
MemOperand GlobalObject () const
void LoadCondition (Expression *x, TypeofState typeof_state, Label *true_target, Label *false_target, bool force_cc)
void Load (Expression *x, TypeofState typeof_state=NOT_INSIDE_TYPEOF)
void LoadGlobal ()
void LoadGlobalReceiver (Register scratch)
void LoadFromSlot (Slot *slot, TypeofState typeof_state)
void LoadTypeofExpression (Expression *x)
void ToBoolean (Label *true_target, Label *false_target)
void GenericBinaryOperation (Token::Value op)
void Comparison (Condition cc, bool strict=false)
void SmiOperation (Token::Value op, Handle< Object > value, bool reversed)
void CallWithArguments (ZoneList< Expression * > *arguments, int position)
void Branch (bool if_true, Label *L)
void CheckStack ()
void CleanStack (int num_bytes)
bool CheckForInlineRuntimeCall (CallRuntime *node)
Handle< JSFunctionBuildBoilerplate (FunctionLiteral *node)
void ProcessDeclarations (ZoneList< Declaration * > *declarations)
Handle< CodeComputeCallInitialize (int argc)
void DeclareGlobals (Handle< FixedArray > pairs)
void InstantiateBoilerplate (Handle< JSFunction > boilerplate)
void GenerateIsSmi (ZoneList< Expression * > *args)
void GenerateIsNonNegativeSmi (ZoneList< Expression * > *args)
void GenerateIsArray (ZoneList< Expression * > *args)
void GenerateArgumentsLength (ZoneList< Expression * > *args)
void GenerateArgumentsAccess (ZoneList< Expression * > *args)
void GenerateValueOf (ZoneList< Expression * > *args)
void GenerateSetValueOf (ZoneList< Expression * > *args)
void GenerateFastCharCodeAt (ZoneList< Expression * > *args)
void GenerateObjectEquals (ZoneList< Expression * > *args)
int FastCaseSwitchMaxOverheadFactor ()
int FastCaseSwitchMinCaseCount ()
void GenerateFastCaseSwitchJumpTable (SwitchStatement *node, int min_index, int range, Label *fail_label, Vector< Label * > case_targets, Vector< Label > case_labels)
void GenerateFastCaseSwitchCases (SwitchStatement *node, Vector< Label > case_labels)
void GenerateFastCaseSwitchStatement (SwitchStatement *node, int min_index, int range, int default_index)
bool TryGenerateFastCaseSwitchStatement (SwitchStatement *node)
void RecordStatementPosition (Node *node)
void EnterJSFrame ()
void ExitJSFrame ()
 DISALLOW_COPY_AND_ASSIGN (CodeGenerator)
 CodeGenerator (int buffer_size, Handle< Script > script, bool is_eval)
virtual ~CodeGenerator ()
Scopescope () const
void ProcessDeferred ()
bool is_eval ()
bool has_cc () const
TypeofState typeof_state () const
Labeltrue_target () const
Labelfalse_target () const
int loop_nesting () const
void IncrementLoopNesting ()
void DecrementLoopNesting ()
void GenCode (FunctionLiteral *fun)
void LoadReference (Reference *ref)
void UnloadReference (Reference *ref)
Operand ContextOperand (Register context, int index) const
Operand SlotOperand (Slot *slot, Register tmp)
Operand GlobalObject () const
void LoadCondition (Expression *x, TypeofState typeof_state, Label *true_target, Label *false_target, bool force_cc)
void Load (Expression *x, TypeofState typeof_state=NOT_INSIDE_TYPEOF)
void LoadGlobal ()
void LoadGlobalReceiver (Register scratch)
void LoadFromSlot (Slot *slot, TypeofState typeof_state)
void LoadTypeofExpression (Expression *x)
void ToBoolean (Label *true_target, Label *false_target)
void GenericBinaryOperation (Token::Value op, StaticType *type, const OverwriteMode overwrite_mode=NO_OVERWRITE)
void Comparison (Condition cc, bool strict=false)
bool IsInlineSmi (Literal *literal)
void SmiComparison (Condition cc, Handle< Object > value, bool strict=false)
void SmiOperation (Token::Value op, StaticType *type, Handle< Object > value, bool reversed, OverwriteMode overwrite_mode)
void CallWithArguments (ZoneList< Expression * > *arguments, int position)
void Branch (bool if_true, Label *L)
void CheckStack ()
void CleanStack (int num_bytes)
bool CheckForInlineRuntimeCall (CallRuntime *node)
Handle< JSFunctionBuildBoilerplate (FunctionLiteral *node)
void ProcessDeclarations (ZoneList< Declaration * > *declarations)
Handle< CodeComputeCallInitialize (int argc)
void DeclareGlobals (Handle< FixedArray > pairs)
void InstantiateBoilerplate (Handle< JSFunction > boilerplate)
void GenerateIsSmi (ZoneList< Expression * > *args)
void GenerateIsNonNegativeSmi (ZoneList< Expression * > *args)
void GenerateIsArray (ZoneList< Expression * > *args)
void GenerateArgumentsLength (ZoneList< Expression * > *args)
void GenerateArgumentsAccess (ZoneList< Expression * > *args)
void GenerateValueOf (ZoneList< Expression * > *args)
void GenerateSetValueOf (ZoneList< Expression * > *args)
void GenerateFastCharCodeAt (ZoneList< Expression * > *args)
void GenerateObjectEquals (ZoneList< Expression * > *args)
int FastCaseSwitchMaxOverheadFactor ()
int FastCaseSwitchMinCaseCount ()
void GenerateFastCaseSwitchJumpTable (SwitchStatement *node, int min_index, int range, Label *fail_label, Vector< Label * > case_targets, Vector< Label > case_labels)
void GenerateFastCaseSwitchCases (SwitchStatement *node, Vector< Label > case_labels)
void GenerateFastCaseSwitchStatement (SwitchStatement *node, int min_index, int range, int default_index)
bool TryGenerateFastCaseSwitchStatement (SwitchStatement *node)
void RecordStatementPosition (Node *node)
 DISALLOW_COPY_AND_ASSIGN (CodeGenerator)

Private 変数

bool is_eval_
Handle< Scriptscript_
List< DeferredCode * > deferred_
MacroAssemblermasm_
Scopescope_
Condition cc_reg_
CodeGenState * state_
bool is_inside_try_
int break_stack_height_
Label function_return_
VirtualFrame * frame_
int loop_nesting_

Static Private 変数

static const int kFastSwitchMaxOverheadFactor = 10
static const int kFastSwitchMinCaseCount = 5
static const int kMaxSmiInlinedBits = 16

フレンド

class Reference
class Property
class VariableProxy
class Slot
class VirtualFrame

説明

codegen-arm.h139 行で定義されています。


コンストラクタとデストラクタ

v8::internal::CodeGenerator::CodeGenerator ( int  buffer_size,
Handle< Script script,
bool  is_eval 
) [private]

codegen-arm.cc75 行で定義されています。

virtual v8::internal::CodeGenerator::~CodeGenerator (  )  [inline, private, virtual]

codegen-arm.h167 行で定義されています。

参照先 masm_.

v8::internal::CodeGenerator::CodeGenerator ( int  buffer_size,
Handle< Script script,
bool  is_eval 
) [private]
virtual v8::internal::CodeGenerator::~CodeGenerator (  )  [inline, private, virtual]

codegen-ia32.h226 行で定義されています。

参照先 masm_.


関数

void v8::internal::CodeGenerator::AddDeferred ( DeferredCode code  )  [inline]

codegen-arm.h162 行で定義されています。

参照先 v8::internal::List< T, P >::Add(), と deferred_.

参照元 v8::internal::DeferredCode::DeferredCode().

void v8::internal::CodeGenerator::AddDeferred ( DeferredCode code  )  [inline]

codegen-ia32.h221 行で定義されています。

参照先 v8::internal::List< T, P >::Add(), と deferred_.

void v8::internal::CodeGenerator::Branch ( bool  if_true,
Label L 
) [private]

codegen-arm.cc987 行で定義されています。

参照先 __, ASSERT, v8::internal::cc, cc_reg_, has_cc(), と v8::internal::NegateCondition().

void v8::internal::CodeGenerator::Branch ( bool  if_true,
Label L 
) [private]
Handle< JSFunction > v8::internal::CodeGenerator::BuildBoilerplate ( FunctionLiteral node  )  [private]

codegen.cc189 行で定義されています。

Handle<JSFunction> v8::internal::CodeGenerator::BuildBoilerplate ( FunctionLiteral node  )  [private]
void v8::internal::CodeGenerator::CallWithArguments ( ZoneList< Expression * > *  arguments,
int  position 
) [private]
void v8::internal::CodeGenerator::CallWithArguments ( ZoneList< Expression * > *  arguments,
int  position 
) [private]
bool v8::internal::CodeGenerator::CheckForInlineRuntimeCall ( CallRuntime node  )  [private]

codegen.cc302 行で定義されています。

bool v8::internal::CodeGenerator::CheckForInlineRuntimeCall ( CallRuntime node  )  [private]
void v8::internal::CodeGenerator::CheckStack (  )  [private]

codegen-arm.cc995 行で定義されています。

参照先 __, と masm_.

参照元 GenCode().

void v8::internal::CodeGenerator::CheckStack (  )  [private]
void v8::internal::CodeGenerator::CleanStack ( int  num_bytes  )  [private]

codegen-arm.cc1169 行で定義されています。

参照先 __, ASSERT, と v8::internal::sp.

void v8::internal::CodeGenerator::CleanStack ( int  num_bytes  )  [private]
void v8::internal::CodeGenerator::Comparison ( Condition  cc,
bool  strict = false 
) [private]
void v8::internal::CodeGenerator::Comparison ( Condition  cc,
bool  strict = false 
) [private]
Handle< Code > v8::internal::CodeGenerator::ComputeCallInitialize ( int  argc  )  [private]

codegen.cc236 行で定義されています。

Handle<Code> v8::internal::CodeGenerator::ComputeCallInitialize ( int  argc  )  [private]
MemOperand v8::internal::CodeGenerator::ContextOperand ( Register  context,
int  index 
) const [inline, private]

codegen-arm.h210 行で定義されています。

参照先 v8::internal::Context::SlotOffset().

参照元 GlobalObject(), LoadGlobalReceiver(), と SlotOperand().

Operand v8::internal::CodeGenerator::ContextOperand ( Register  context,
int  index 
) const [inline, private]

codegen-ia32.h260 行で定義されています。

参照先 v8::internal::Context::SlotOffset().

void v8::internal::CodeGenerator::DeclareGlobals ( Handle< FixedArray pairs  )  [private]

codegen-arm.cc1013 行で定義されています。

参照先 __, v8::internal::cp, v8::internal::Smi::FromInt(), is_eval(), と v8::internal::r0.

void v8::internal::CodeGenerator::DeclareGlobals ( Handle< FixedArray pairs  )  [private]
void v8::internal::CodeGenerator::DecrementLoopNesting (  )  [inline, private]

codegen-ia32.h244 行で定義されています。

参照先 loop_nesting_.

v8::internal::CodeGenerator::DISALLOW_COPY_AND_ASSIGN ( CodeGenerator   )  [private]
v8::internal::CodeGenerator::DISALLOW_COPY_AND_ASSIGN ( CodeGenerator   )  [private]
void v8::internal::CodeGenerator::EnterJSFrame (  )  [private]
void v8::internal::CodeGenerator::ExitJSFrame (  )  [private]
Label* v8::internal::CodeGenerator::false_target (  )  const [inline, private]

codegen-ia32.h239 行で定義されています。

参照先 state_.

Label* v8::internal::CodeGenerator::false_target (  )  const [inline, private]

codegen-arm.h180 行で定義されています。

参照先 state_.

int v8::internal::CodeGenerator::FastCaseSwitchMaxOverheadFactor (  )  [private]

codegen-arm.cc1230 行で定義されています。

参照先 kFastSwitchMaxOverheadFactor.

int v8::internal::CodeGenerator::FastCaseSwitchMaxOverheadFactor (  )  [private]
int v8::internal::CodeGenerator::FastCaseSwitchMinCaseCount (  )  [private]

codegen-arm.cc1234 行で定義されています。

参照先 kFastSwitchMinCaseCount.

int v8::internal::CodeGenerator::FastCaseSwitchMinCaseCount (  )  [private]
VirtualFrame* v8::internal::CodeGenerator::frame (  )  const [inline]

codegen-ia32.h216 行で定義されています。

参照先 frame_.

MemOperand v8::internal::CodeGenerator::FunctionOperand (  )  const [inline, private]

codegen-arm.h206 行で定義されています。

参照先 v8::internal::fp, と v8::internal::JavaScriptFrameConstants::kFunctionOffset.

参照元 GenCode().

void v8::internal::CodeGenerator::GenCode ( FunctionLiteral fun  )  [private]
void v8::internal::CodeGenerator::GenCode ( FunctionLiteral fun  )  [private]

codegen-arm.cc96 行で定義されています。

参照先 __, v8::internal::Scope::arguments(), v8::internal::Scope::arguments_shadow(), ASSERT, v8::internal::Register::bit(), v8::internal::FunctionLiteral::body(), cc_reg_, CheckStack(), cmp(), v8::internal::cp, v8::internal::CStrVector(), v8::internal::db_w, v8::internal::Scope::declarations(), EnterJSFrame(), v8::internal::eq, ExitJSFrame(), v8::internal::fp, v8::internal::Smi::FromInt(), function_return_, FunctionOperand(), has_cc(), v8::internal::Scope::HasIllegalRedeclaration(), v8::internal::Slot::index(), v8::internal::ip, v8::internal::Scope::is_global_scope(), v8::internal::Bootstrapper::IsActive(), v8::internal::StandardFrameConstants::kContextOffset, v8::internal::kDebug, v8::internal::Array::kHeaderSize, v8::internal::kPointerSize, v8::internal::lr, masm_, v8::internal::FunctionLiteral::name(), v8::internal::ArgumentsAccessStub::NEW_OBJECT, v8::internal::NOT_CONST_INIT, v8::internal::NULL, v8::internal::Scope::num_heap_slots(), v8::internal::Scope::num_parameters(), v8::internal::Scope::num_stack_slots(), v8::internal::Scope::parameter(), ParameterOperand(), v8::internal::pc, ProcessDeclarations(), v8::internal::r0, v8::internal::r1, v8::internal::r2, v8::internal::r3, Reference, v8::internal::FunctionLiteral::scope(), scope(), scope_, v8::internal::Variable::slot(), SlotOperand(), v8::internal::sp, state(), state_, v8::internal::Slot::type(), と v8::internal::Scope::VisitIllegalRedeclaration().

参照元 MakeCode().

void v8::internal::CodeGenerator::GenerateArgumentsAccess ( ZoneList< Expression * > *  args  )  [private]
void v8::internal::CodeGenerator::GenerateArgumentsAccess ( ZoneList< Expression * > *  args  )  [private]
void v8::internal::CodeGenerator::GenerateArgumentsLength ( ZoneList< Expression * > *  args  )  [private]
void v8::internal::CodeGenerator::GenerateArgumentsLength ( ZoneList< Expression * > *  args  )  [private]
void v8::internal::CodeGenerator::GenerateFastCaseSwitchCases ( SwitchStatement node,
Vector< Label case_labels 
) [private]

codegen.cc387 行で定義されています。

参照元 GenerateFastCaseSwitchJumpTable().

void v8::internal::CodeGenerator::GenerateFastCaseSwitchCases ( SwitchStatement node,
Vector< Label case_labels 
) [private]
void v8::internal::CodeGenerator::GenerateFastCaseSwitchJumpTable ( SwitchStatement node,
int  min_index,
int  range,
Label fail_label,
Vector< Label * >  case_targets,
Vector< Label case_labels 
) [private]
void v8::internal::CodeGenerator::GenerateFastCaseSwitchJumpTable ( SwitchStatement node,
int  min_index,
int  range,
Label fail_label,
Vector< Label * >  case_targets,
Vector< Label case_labels 
) [private]
void v8::internal::CodeGenerator::GenerateFastCaseSwitchStatement ( SwitchStatement node,
int  min_index,
int  range,
int  default_index 
) [private]
void v8::internal::CodeGenerator::GenerateFastCaseSwitchStatement ( SwitchStatement node,
int  min_index,
int  range,
int  default_index 
) [private]

codegen.cc344 行で定義されています。

void v8::internal::CodeGenerator::GenerateFastCharCodeAt ( ZoneList< Expression * > *  args  )  [private]

codegen-arm.cc2449 行で定義されています。

参照先 __, ASSERT, と v8::internal::r0.

void v8::internal::CodeGenerator::GenerateFastCharCodeAt ( ZoneList< Expression * > *  args  )  [private]
void v8::internal::CodeGenerator::GenerateIsArray ( ZoneList< Expression * > *  args  )  [private]
void v8::internal::CodeGenerator::GenerateIsArray ( ZoneList< Expression * > *  args  )  [private]
void v8::internal::CodeGenerator::GenerateIsNonNegativeSmi ( ZoneList< Expression * > *  args  )  [private]
void v8::internal::CodeGenerator::GenerateIsNonNegativeSmi ( ZoneList< Expression * > *  args  )  [private]
void v8::internal::CodeGenerator::GenerateIsSmi ( ZoneList< Expression * > *  args  )  [private]
void v8::internal::CodeGenerator::GenerateIsSmi ( ZoneList< Expression * > *  args  )  [private]
void v8::internal::CodeGenerator::GenerateObjectEquals ( ZoneList< Expression * > *  args  )  [private]
void v8::internal::CodeGenerator::GenerateObjectEquals ( ZoneList< Expression * > *  args  )  [private]
void v8::internal::CodeGenerator::GenerateSetValueOf ( ZoneList< Expression * > *  args  )  [private]
void v8::internal::CodeGenerator::GenerateSetValueOf ( ZoneList< Expression * > *  args  )  [private]
void v8::internal::CodeGenerator::GenerateValueOf ( ZoneList< Expression * > *  args  )  [private]
void v8::internal::CodeGenerator::GenerateValueOf ( ZoneList< Expression * > *  args  )  [private]
void v8::internal::CodeGenerator::GenericBinaryOperation ( Token::Value  op  )  [private]
void v8::internal::CodeGenerator::GenericBinaryOperation ( Token::Value  op,
StaticType *  type,
const OverwriteMode  overwrite_mode = NO_OVERWRITE 
) [private]
Operand v8::internal::CodeGenerator::GlobalObject (  )  const [inline, private]

codegen-ia32.h268 行で定義されています。

参照先 ContextOperand(), v8::internal::esi, と v8::internal::Context::GLOBAL_INDEX.

MemOperand v8::internal::CodeGenerator::GlobalObject (  )  const [inline, private]

codegen-arm.h217 行で定義されています。

参照先 ContextOperand(), v8::internal::cp, と v8::internal::Context::GLOBAL_INDEX.

参照元 LoadGlobal().

bool v8::internal::CodeGenerator::has_cc (  )  const [inline, private]

codegen-ia32.h236 行で定義されています。

参照先 cc_reg_.

bool v8::internal::CodeGenerator::has_cc (  )  const [inline, private]

codegen-arm.h177 行で定義されています。

参照先 cc_reg_.

参照元 Branch(), GenCode(), Load(), と LoadCondition().

void v8::internal::CodeGenerator::IncrementLoopNesting (  )  [inline, private]

codegen-ia32.h243 行で定義されています。

参照先 loop_nesting_.

void v8::internal::CodeGenerator::InstantiateBoilerplate ( Handle< JSFunction boilerplate  )  [private]

codegen-arm.cc1848 行で定義されています。

参照先 __, ASSERT, v8::internal::cp, と v8::internal::r0.

void v8::internal::CodeGenerator::InstantiateBoilerplate ( Handle< JSFunction boilerplate  )  [private]
bool v8::internal::CodeGenerator::is_eval (  )  [inline, private]

codegen-ia32.h233 行で定義されています。

参照先 is_eval_.

bool v8::internal::CodeGenerator::is_eval (  )  [inline, private]

codegen-arm.h174 行で定義されています。

参照先 is_eval_.

参照元 DeclareGlobals().

bool v8::internal::CodeGenerator::IsInlineSmi ( Literal literal  )  [private]
void v8::internal::CodeGenerator::Load ( Expression x,
TypeofState  typeof_state = NOT_INSIDE_TYPEOF 
) [private]
void v8::internal::CodeGenerator::Load ( Expression x,
TypeofState  typeof_state = NOT_INSIDE_TYPEOF 
) [private]
void v8::internal::CodeGenerator::LoadCondition ( Expression x,
TypeofState  typeof_state,
Label true_target,
Label false_target,
bool  force_cc 
) [private]
void v8::internal::CodeGenerator::LoadCondition ( Expression x,
TypeofState  typeof_state,
Label true_target,
Label false_target,
bool  force_cc 
) [private]

codegen-arm.cc339 行で定義されています。

参照先 ASSERT, has_cc(), と ToBoolean().

参照元 Load().

void v8::internal::CodeGenerator::LoadFromSlot ( Slot slot,
TypeofState  typeof_state 
) [private]
void v8::internal::CodeGenerator::LoadFromSlot ( Slot slot,
TypeofState  typeof_state 
) [private]
void v8::internal::CodeGenerator::LoadGlobal (  )  [private]
void v8::internal::CodeGenerator::LoadGlobal (  )  [private]

codegen-arm.cc406 行で定義されています。

参照先 __, GlobalObject(), と v8::internal::r0.

参照元 LoadReference().

void v8::internal::CodeGenerator::LoadGlobalReceiver ( Register  scratch  )  [private]
void v8::internal::CodeGenerator::LoadGlobalReceiver ( Register  scratch  )  [private]
void v8::internal::CodeGenerator::LoadReference ( Reference *  ref  )  [private]
void v8::internal::CodeGenerator::LoadReference ( Reference *  ref  )  [private]
void v8::internal::CodeGenerator::LoadTypeofExpression ( Expression x  )  [private]
void v8::internal::CodeGenerator::LoadTypeofExpression ( Expression x  )  [private]
int v8::internal::CodeGenerator::loop_nesting (  )  const [inline, private]

codegen-ia32.h242 行で定義されています。

参照先 loop_nesting_.

参照元 GenericBinaryOperation().

static Handle<Code> v8::internal::CodeGenerator::MakeCode ( FunctionLiteral fun,
Handle< Script script,
bool  is_eval 
) [static]
Handle< Code > v8::internal::CodeGenerator::MakeCode ( FunctionLiteral fun,
Handle< Script script,
bool  is_eval 
) [static]
MacroAssembler* v8::internal::CodeGenerator::masm (  )  [inline]

codegen-arm.h157 行で定義されています。

参照先 masm_.

参照元 v8::internal::DeferredCode::DeferredCode(), と MakeCode().

MacroAssembler* v8::internal::CodeGenerator::masm (  )  [inline]

codegen-ia32.h214 行で定義されています。

参照先 masm_.

MemOperand v8::internal::CodeGenerator::ParameterOperand ( int  index  )  const [inline, private]
void v8::internal::CodeGenerator::ProcessDeclarations ( ZoneList< Declaration * > *  declarations  )  [private]
void v8::internal::CodeGenerator::ProcessDeclarations ( ZoneList< Declaration * > *  declarations  )  [private]

codegen.cc241 行で定義されています。

参照元 GenCode().

void v8::internal::CodeGenerator::ProcessDeferred (  )  [private]
void v8::internal::CodeGenerator::ProcessDeferred (  )  [private]

codegen.cc48 行で定義されています。

参照元 MakeCode().

void v8::internal::CodeGenerator::RecordStatementPosition ( Node node  )  [private]
void v8::internal::CodeGenerator::RecordStatementPosition ( Node node  )  [private]

codegen-arm.cc3083 行で定義されています。

参照先 __, と v8::internal::Node::statement_pos().

Scope* v8::internal::CodeGenerator::scope (  )  const [inline, private]

codegen-ia32.h229 行で定義されています。

参照先 scope_.

Scope* v8::internal::CodeGenerator::scope (  )  const [inline, private]

codegen-arm.h170 行で定義されています。

参照先 scope_.

参照元 GenCode(), ParameterOperand(), と SlotOperand().

void v8::internal::CodeGenerator::set_state ( CodeGenState *  state  )  [inline]

codegen-arm.h160 行で定義されています。

参照先 state_.

void v8::internal::CodeGenerator::set_state ( CodeGenState *  state  )  [inline]

codegen-ia32.h219 行で定義されています。

参照先 state_.

static void v8::internal::CodeGenerator::SetFunctionInfo ( Handle< JSFunction fun,
int  length,
int  function_token_position,
int  start_position,
int  end_position,
bool  is_expression,
bool  is_toplevel,
Handle< Script script 
) [static]
void v8::internal::CodeGenerator::SetFunctionInfo ( Handle< JSFunction fun,
int  length,
int  function_token_position,
int  start_position,
int  end_position,
bool  is_expression,
bool  is_toplevel,
Handle< Script script 
) [static]

codegen.cc165 行で定義されています。

参照元 v8::internal::MakeFunction().

Operand v8::internal::CodeGenerator::SlotOperand ( Slot slot,
Register  tmp 
) [private]
Operand v8::internal::CodeGenerator::SlotOperand ( Slot slot,
Register  tmp 
) [private]
void v8::internal::CodeGenerator::SmiComparison ( Condition  cc,
Handle< Object value,
bool  strict = false 
) [private]
void v8::internal::CodeGenerator::SmiOperation ( Token::Value  op,
StaticType *  type,
Handle< Object value,
bool  reversed,
OverwriteMode  overwrite_mode 
) [private]
void v8::internal::CodeGenerator::SmiOperation ( Token::Value  op,
Handle< Object value,
bool  reversed 
) [private]
CodeGenState* v8::internal::CodeGenerator::state (  )  [inline]

codegen-arm.h159 行で定義されています。

参照先 state_.

参照元 GenCode().

CodeGenState* v8::internal::CodeGenerator::state (  )  [inline]

codegen-ia32.h218 行で定義されています。

参照先 state_.

void v8::internal::CodeGenerator::ToBoolean ( Label true_target,
Label false_target 
) [private]
void v8::internal::CodeGenerator::ToBoolean ( Label true_target,
Label false_target 
) [private]
Label* v8::internal::CodeGenerator::true_target (  )  const [inline, private]

codegen-ia32.h238 行で定義されています。

参照先 state_.

Label* v8::internal::CodeGenerator::true_target (  )  const [inline, private]

codegen-arm.h179 行で定義されています。

参照先 state_.

bool v8::internal::CodeGenerator::TryGenerateFastCaseSwitchStatement ( SwitchStatement node  )  [private]
bool v8::internal::CodeGenerator::TryGenerateFastCaseSwitchStatement ( SwitchStatement node  )  [private]

codegen.cc403 行で定義されています。

TypeofState v8::internal::CodeGenerator::typeof_state (  )  const [inline, private]

codegen-ia32.h237 行で定義されています。

参照先 state_.

TypeofState v8::internal::CodeGenerator::typeof_state (  )  const [inline, private]

codegen-arm.h178 行で定義されています。

参照先 state_.

void v8::internal::CodeGenerator::UnloadReference ( Reference *  ref  )  [private]
void v8::internal::CodeGenerator::UnloadReference ( Reference *  ref  )  [private]

codegen-arm.cc494 行で定義されています。

参照先 __, v8::internal::kPointerSize, masm_, v8::internal::r0, と v8::internal::sp.


フレンドと関連する関数

friend class Property [friend]

codegen-arm.h367 行で定義されています。

Reference [friend]

codegen-arm.h366 行で定義されています。

参照元 GenCode().

friend class Slot [friend]

codegen-arm.h369 行で定義されています。

friend class VariableProxy [friend]

codegen-arm.h368 行で定義されています。

friend class VirtualFrame [friend]

codegen-ia32.h427 行で定義されています。


変数

codegen-arm.h361 行で定義されています。

codegen-arm.h351 行で定義されています。

参照元 AddDeferred().

VirtualFrame* v8::internal::CodeGenerator::frame_ [private]

codegen-ia32.h417 行で定義されています。

参照元 frame(), GenericBinaryOperation(), SmiComparison(), と SmiOperation().

codegen-arm.h364 行で定義されています。

参照元 GenCode().

codegen-arm.h349 行で定義されています。

参照元 is_eval().

codegen-arm.h360 行で定義されています。

static const int v8::internal::CodeGenerator::kFastSwitchMaxOverheadFactor = 10 [static, private]

codegen-arm.h294 行で定義されています。

参照元 FastCaseSwitchMaxOverheadFactor().

static const int v8::internal::CodeGenerator::kFastSwitchMinCaseCount = 5 [static, private]

codegen-arm.h298 行で定義されています。

参照元 FastCaseSwitchMinCaseCount().

const int v8::internal::CodeGenerator::kMaxSmiInlinedBits = 16 [static, private]

codegen-ia32.h302 行で定義されています。

参照元 IsInlineSmi(), SmiComparison(), と SmiOperation().

codegen-ia32.h422 行で定義されています。

参照元 DecrementLoopNesting(), IncrementLoopNesting(), と loop_nesting().

codegen-arm.h357 行で定義されています。

参照元 GenCode(), GenerateArgumentsAccess(), GenerateArgumentsLength(), と scope().

codegen-arm.h350 行で定義されています。

CodeGenState * v8::internal::CodeGenerator::state_ [private]

codegen-arm.h359 行で定義されています。

参照元 false_target(), GenCode(), set_state(), state(), true_target(), と typeof_state().


このクラスの説明は次のファイルから生成されました:
 全て クラス ネームスペース ファイル 関数 変数 型定義 列挙型 列挙型の値 フレンド マクロ定義