構成 | Public メソッド | Private メソッド | Private 変数

クラス v8::internal::MacroAssembler

#include <macro-assembler-arm.h>

v8::internal::Assembler, と v8::internal::Assemblerを継承しています。

すべてのメンバ一覧

構成

struct  Unresolved

Public メソッド

 MacroAssembler (void *buffer, int size)
void Jump (Register target, Condition cond=al)
void Jump (byte *target, RelocInfo::Mode rmode, Condition cond=al)
void Jump (Handle< Code > code, RelocInfo::Mode rmode, Condition cond=al)
void Call (Register target, Condition cond=al)
void Call (byte *target, RelocInfo::Mode rmode, Condition cond=al)
void Call (Handle< Code > code, RelocInfo::Mode rmode, Condition cond=al)
void Ret ()
void RecordWrite (Register object, Register offset, Register scratch)
void EnterInternalFrame ()
void LeaveInternalFrame ()
void EnterConstructFrame ()
void LeaveConstructFrame ()
void EnterExitFrame (StackFrame::Type type)
void LeaveExitFrame (StackFrame::Type type)
void InvokeCode (Register code, const ParameterCount &expected, const ParameterCount &actual, InvokeFlag flag)
void InvokeCode (Handle< Code > code, const ParameterCount &expected, const ParameterCount &actual, RelocInfo::Mode rmode, InvokeFlag flag)
void InvokeFunction (Register function, const ParameterCount &actual, InvokeFlag flag)
void SaveRegistersToMemory (RegList regs)
void RestoreRegistersFromMemory (RegList regs)
void CopyRegistersFromMemoryToStack (Register base, RegList regs)
void CopyRegistersFromStackToMemory (Register base, Register scratch, RegList regs)
void PushTryHandler (CodeLocation try_location, HandlerType type)
Register CheckMaps (JSObject *object, Register object_reg, JSObject *holder, Register holder_reg, Register scratch, Label *miss)
void CheckAccessGlobalProxy (Register holder_reg, Register scratch, Label *miss)
void IllegalOperation (int num_arguments)
void CallStub (CodeStub *stub)
void CallJSExitStub (CodeStub *stub)
void StubReturn (int argc)
void CallRuntime (Runtime::Function *f, int num_arguments)
void CallRuntime (Runtime::FunctionId fid, int num_arguments)
void TailCallRuntime (const ExternalReference &ext, int num_arguments)
void JumpToBuiltin (const ExternalReference &builtin)
void InvokeBuiltin (Builtins::JavaScript id, InvokeJSFlags flags)
void GetBuiltinEntry (Register target, Builtins::JavaScript id)
List< Unresolved > * unresolved ()
void Assert (Condition cc, const char *msg)
void Check (Condition cc, const char *msg)
void Abort (const char *msg)
void set_generating_stub (bool value)
bool generating_stub ()
void set_allow_stub_calls (bool value)
bool allow_stub_calls ()
 MacroAssembler (void *buffer, int size)
void RecordWrite (Register object, int offset, Register value, Register scratch)
void SaveRegistersToMemory (RegList regs)
void RestoreRegistersFromMemory (RegList regs)
void PushRegistersFromMemory (RegList regs)
void PopRegistersToMemory (RegList regs)
void CopyRegistersFromStackToMemory (Register base, Register scratch, RegList regs)
void EnterInternalFrame ()
void LeaveInternalFrame ()
void EnterConstructFrame ()
void LeaveConstructFrame ()
void EnterExitFrame (StackFrame::Type type)
void LeaveExitFrame (StackFrame::Type type)
void InvokeCode (const Operand &code, const ParameterCount &expected, const ParameterCount &actual, InvokeFlag flag)
void InvokeCode (Handle< Code > code, const ParameterCount &expected, const ParameterCount &actual, RelocInfo::Mode rmode, InvokeFlag flag)
void InvokeFunction (Register function, const ParameterCount &actual, InvokeFlag flag)
void InvokeBuiltin (Builtins::JavaScript id, InvokeFlag flag)
void GetBuiltinEntry (Register target, Builtins::JavaScript id)
void Set (Register dst, const Immediate &x)
void Set (const Operand &dst, const Immediate &x)
void FCmp ()
void PushTryHandler (CodeLocation try_location, HandlerType type)
Register CheckMaps (JSObject *object, Register object_reg, JSObject *holder, Register holder_reg, Register scratch, Label *miss)
void CheckAccessGlobalProxy (Register holder_reg, Register scratch, Label *miss)
void NegativeZeroTest (Register result, Register op, Label *then_label)
void NegativeZeroTest (Register result, Register op1, Register op2, Register scratch, Label *then_label)
void TryGetFunctionPrototype (Register function, Register result, Register scratch, Label *miss)
void IllegalOperation (int num_arguments)
void CallStub (CodeStub *stub)
void StubReturn (int argc)
void CallRuntime (Runtime::Function *f, int num_arguments)
void CallRuntime (Runtime::FunctionId id, int num_arguments)
void TailCallRuntime (const ExternalReference &ext, int num_arguments)
void JumpToBuiltin (const ExternalReference &ext)
void Ret ()
List< Unresolved > * unresolved ()
void SetCounter (StatsCounter *counter, int value)
void IncrementCounter (StatsCounter *counter, int value)
void DecrementCounter (StatsCounter *counter, int value)
void Assert (Condition cc, const char *msg)
void Check (Condition cc, const char *msg)
void Abort (const char *msg)
void set_generating_stub (bool value)
bool generating_stub ()
void set_allow_stub_calls (bool value)
bool allow_stub_calls ()

Private メソッド

void Jump (intptr_t target, RelocInfo::Mode rmode, Condition cond=al)
void Call (intptr_t target, RelocInfo::Mode rmode, Condition cond=al)
void InvokePrologue (const ParameterCount &expected, const ParameterCount &actual, Handle< Code > code_constant, Register code_reg, Label *done, InvokeFlag flag)
Handle< CodeResolveBuiltin (Builtins::JavaScript id, bool *resolved)
void EnterFrame (StackFrame::Type type)
void LeaveFrame (StackFrame::Type type)
void InvokePrologue (const ParameterCount &expected, const ParameterCount &actual, Handle< Code > code_constant, const Operand &code_operand, Label *done, InvokeFlag flag)
Handle< CodeResolveBuiltin (Builtins::JavaScript id, bool *resolved)
void EnterFrame (StackFrame::Type type)
void LeaveFrame (StackFrame::Type type)

Private 変数

List< Unresolvedunresolved_
bool generating_stub_
bool allow_stub_calls_

説明

macro-assembler-arm.h71 行で定義されています。


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

v8::internal::MacroAssembler::MacroAssembler ( void *  buffer,
int  size 
)

macro-assembler-arm.cc42 行で定義されています。

v8::internal::MacroAssembler::MacroAssembler ( void *  buffer,
int  size 
)

関数

void v8::internal::MacroAssembler::Abort ( const char *  msg  ) 
void v8::internal::MacroAssembler::Abort ( const char *  msg  ) 
bool v8::internal::MacroAssembler::allow_stub_calls (  )  [inline]

macro-assembler-arm.h250 行で定義されています。

参照先 allow_stub_calls_.

参照元 CallStub(), と InvokeBuiltin().

bool v8::internal::MacroAssembler::allow_stub_calls (  )  [inline]

macro-assembler-ia32.h264 行で定義されています。

参照先 allow_stub_calls_.

void v8::internal::MacroAssembler::Assert ( Condition  cc,
const char *  msg 
)
void v8::internal::MacroAssembler::Assert ( Condition  cc,
const char *  msg 
)

macro-assembler-arm.cc845 行で定義されています。

参照先 Check().

void v8::internal::MacroAssembler::Call ( Handle< Code code,
RelocInfo::Mode  rmode,
Condition  cond = al 
)

macro-assembler-arm.cc162 行で定義されています。

参照先 ASSERT, Call(), と v8::internal::Handle< T >::location().

void v8::internal::MacroAssembler::Call ( intptr_t  target,
RelocInfo::Mode  rmode,
Condition  cond = al 
) [private]
void v8::internal::MacroAssembler::Call ( Register  target,
Condition  cond = al 
)
void v8::internal::MacroAssembler::Call ( byte target,
RelocInfo::Mode  rmode,
Condition  cond = al 
)

macro-assembler-arm.cc155 行で定義されています。

参照先 ASSERT, と Call().

void v8::internal::MacroAssembler::CallJSExitStub ( CodeStub *  stub  ) 
void v8::internal::MacroAssembler::CallRuntime ( Runtime::FunctionId  fid,
int  num_arguments 
)

macro-assembler-arm.cc764 行で定義されています。

参照先 CallRuntime(), と v8::internal::Runtime::FunctionForId().

void v8::internal::MacroAssembler::CallRuntime ( Runtime::Function f,
int  num_arguments 
)
void v8::internal::MacroAssembler::CallRuntime ( Runtime::FunctionId  id,
int  num_arguments 
)
void v8::internal::MacroAssembler::CallRuntime ( Runtime::Function f,
int  num_arguments 
)
void v8::internal::MacroAssembler::CallStub ( CodeStub *  stub  ) 
void v8::internal::MacroAssembler::CallStub ( CodeStub *  stub  ) 

macro-assembler-arm.cc724 行で定義されています。

参照先 allow_stub_calls(), ASSERT, と Call().

参照元 CallRuntime(), と RecordWrite().

void v8::internal::MacroAssembler::Check ( Condition  cc,
const char *  msg 
)
void v8::internal::MacroAssembler::Check ( Condition  cc,
const char *  msg 
)
void v8::internal::MacroAssembler::CheckAccessGlobalProxy ( Register  holder_reg,
Register  scratch,
Label miss 
)
void v8::internal::MacroAssembler::CheckAccessGlobalProxy ( Register  holder_reg,
Register  scratch,
Label miss 
)
Register v8::internal::MacroAssembler::CheckMaps ( JSObject object,
Register  object_reg,
JSObject holder,
Register  holder_reg,
Register  scratch,
Label miss 
)
Register v8::internal::MacroAssembler::CheckMaps ( JSObject object,
Register  object_reg,
JSObject holder,
Register  holder_reg,
Register  scratch,
Label miss 
)
void v8::internal::MacroAssembler::CopyRegistersFromMemoryToStack ( Register  base,
RegList  regs 
)
void v8::internal::MacroAssembler::CopyRegistersFromStackToMemory ( Register  base,
Register  scratch,
RegList  regs 
)
void v8::internal::MacroAssembler::CopyRegistersFromStackToMemory ( Register  base,
Register  scratch,
RegList  regs 
)
void v8::internal::MacroAssembler::DecrementCounter ( StatsCounter counter,
int  value 
)
void v8::internal::MacroAssembler::EnterConstructFrame (  )  [inline]

macro-assembler-arm.h105 行で定義されています。

参照先 EnterFrame().

void v8::internal::MacroAssembler::EnterConstructFrame (  )  [inline]

macro-assembler-ia32.h92 行で定義されています。

参照先 EnterFrame().

void v8::internal::MacroAssembler::EnterExitFrame ( StackFrame::Type  type  ) 
void v8::internal::MacroAssembler::EnterExitFrame ( StackFrame::Type  type  ) 
void v8::internal::MacroAssembler::EnterFrame ( StackFrame::Type  type  )  [private]
void v8::internal::MacroAssembler::EnterFrame ( StackFrame::Type  type  )  [private]
void v8::internal::MacroAssembler::EnterInternalFrame (  )  [inline]

macro-assembler-arm.h102 行で定義されています。

参照先 EnterFrame().

void v8::internal::MacroAssembler::EnterInternalFrame (  )  [inline]

macro-assembler-ia32.h89 行で定義されています。

参照先 EnterFrame().

void v8::internal::MacroAssembler::FCmp (  ) 
bool v8::internal::MacroAssembler::generating_stub (  )  [inline]

macro-assembler-arm.h248 行で定義されています。

参照先 generating_stub_.

参照元 RecordWrite(), と StubReturn().

bool v8::internal::MacroAssembler::generating_stub (  )  [inline]

macro-assembler-ia32.h262 行で定義されています。

参照先 generating_stub_.

void v8::internal::MacroAssembler::GetBuiltinEntry ( Register  target,
Builtins::JavaScript  id 
)
void v8::internal::MacroAssembler::GetBuiltinEntry ( Register  target,
Builtins::JavaScript  id 
)
void v8::internal::MacroAssembler::IllegalOperation ( int  num_arguments  ) 
void v8::internal::MacroAssembler::IllegalOperation ( int  num_arguments  ) 
void v8::internal::MacroAssembler::IncrementCounter ( StatsCounter counter,
int  value 
)
void v8::internal::MacroAssembler::InvokeBuiltin ( Builtins::JavaScript  id,
InvokeJSFlags  flags 
)
void v8::internal::MacroAssembler::InvokeBuiltin ( Builtins::JavaScript  id,
InvokeFlag  flag 
)
void v8::internal::MacroAssembler::InvokeCode ( Register  code,
const ParameterCount &  expected,
const ParameterCount &  actual,
InvokeFlag  flag 
)
void v8::internal::MacroAssembler::InvokeCode ( Handle< Code code,
const ParameterCount &  expected,
const ParameterCount &  actual,
RelocInfo::Mode  rmode,
InvokeFlag  flag 
)
void v8::internal::MacroAssembler::InvokeCode ( const Operand &  code,
const ParameterCount &  expected,
const ParameterCount &  actual,
InvokeFlag  flag 
)
void v8::internal::MacroAssembler::InvokeCode ( Handle< Code code,
const ParameterCount &  expected,
const ParameterCount &  actual,
RelocInfo::Mode  rmode,
InvokeFlag  flag 
)
void v8::internal::MacroAssembler::InvokeFunction ( Register  function,
const ParameterCount &  actual,
InvokeFlag  flag 
)
void v8::internal::MacroAssembler::InvokeFunction ( Register  function,
const ParameterCount &  actual,
InvokeFlag  flag 
)
void v8::internal::MacroAssembler::InvokePrologue ( const ParameterCount &  expected,
const ParameterCount &  actual,
Handle< Code code_constant,
const Operand &  code_operand,
Label done,
InvokeFlag  flag 
) [private]
void v8::internal::MacroAssembler::InvokePrologue ( const ParameterCount &  expected,
const ParameterCount &  actual,
Handle< Code code_constant,
Register  code_reg,
Label done,
InvokeFlag  flag 
) [private]
void v8::internal::MacroAssembler::Jump ( intptr_t  target,
RelocInfo::Mode  rmode,
Condition  cond = al 
) [private]
void v8::internal::MacroAssembler::Jump ( byte target,
RelocInfo::Mode  rmode,
Condition  cond = al 
)

macro-assembler-arm.cc98 行で定義されています。

参照先 ASSERT, と Jump().

void v8::internal::MacroAssembler::Jump ( Register  target,
Condition  cond = al 
)
void v8::internal::MacroAssembler::Jump ( Handle< Code code,
RelocInfo::Mode  rmode,
Condition  cond = al 
)

macro-assembler-arm.cc105 行で定義されています。

参照先 ASSERT, Jump(), と v8::internal::Handle< T >::location().

void v8::internal::MacroAssembler::JumpToBuiltin ( const ExternalReference &  builtin  ) 

macro-assembler-arm.cc780 行で定義されています。

参照先 ASSERT, Jump(), v8::internal::Assembler::mov(), と v8::internal::r1.

参照元 TailCallRuntime().

void v8::internal::MacroAssembler::JumpToBuiltin ( const ExternalReference &  ext  ) 
void v8::internal::MacroAssembler::LeaveConstructFrame (  )  [inline]

macro-assembler-arm.h106 行で定義されています。

参照先 LeaveFrame().

void v8::internal::MacroAssembler::LeaveConstructFrame (  )  [inline]

macro-assembler-ia32.h93 行で定義されています。

参照先 LeaveFrame().

void v8::internal::MacroAssembler::LeaveExitFrame ( StackFrame::Type  type  ) 
void v8::internal::MacroAssembler::LeaveExitFrame ( StackFrame::Type  type  ) 
void v8::internal::MacroAssembler::LeaveFrame ( StackFrame::Type  type  )  [private]
void v8::internal::MacroAssembler::LeaveFrame ( StackFrame::Type  type  )  [private]
void v8::internal::MacroAssembler::LeaveInternalFrame (  )  [inline]

macro-assembler-ia32.h90 行で定義されています。

参照先 LeaveFrame().

void v8::internal::MacroAssembler::LeaveInternalFrame (  )  [inline]

macro-assembler-arm.h103 行で定義されています。

参照先 LeaveFrame().

void v8::internal::MacroAssembler::NegativeZeroTest ( Register  result,
Register  op,
Label then_label 
)
void v8::internal::MacroAssembler::NegativeZeroTest ( Register  result,
Register  op1,
Register  op2,
Register  scratch,
Label then_label 
)
void v8::internal::MacroAssembler::PopRegistersToMemory ( RegList  regs  ) 
void v8::internal::MacroAssembler::PushRegistersFromMemory ( RegList  regs  ) 
void v8::internal::MacroAssembler::PushTryHandler ( CodeLocation  try_location,
HandlerType  type 
)
void v8::internal::MacroAssembler::PushTryHandler ( CodeLocation  try_location,
HandlerType  type 
)
void v8::internal::MacroAssembler::RecordWrite ( Register  object,
Register  offset,
Register  scratch 
)
void v8::internal::MacroAssembler::RecordWrite ( Register  object,
int  offset,
Register  value,
Register  scratch 
)
Handle<Code> v8::internal::MacroAssembler::ResolveBuiltin ( Builtins::JavaScript  id,
bool *  resolved 
) [private]
Handle< Code > v8::internal::MacroAssembler::ResolveBuiltin ( Builtins::JavaScript  id,
bool *  resolved 
) [private]
void v8::internal::MacroAssembler::RestoreRegistersFromMemory ( RegList  regs  ) 
void v8::internal::MacroAssembler::RestoreRegistersFromMemory ( RegList  regs  ) 
void v8::internal::MacroAssembler::Ret (  ) 
void v8::internal::MacroAssembler::Ret (  ) 
void v8::internal::MacroAssembler::SaveRegistersToMemory ( RegList  regs  ) 
void v8::internal::MacroAssembler::SaveRegistersToMemory ( RegList  regs  ) 
void v8::internal::MacroAssembler::Set ( Register  dst,
const Immediate &  x 
)

macro-assembler-ia32.cc292 行で定義されています。

参照先 v8::internal::Assembler::mov(), と v8::internal::Assembler::xor_().

void v8::internal::MacroAssembler::Set ( const Operand &  dst,
const Immediate &  x 
)

macro-assembler-ia32.cc301 行で定義されています。

参照先 v8::internal::Assembler::mov().

void v8::internal::MacroAssembler::set_allow_stub_calls ( bool  value  )  [inline]

macro-assembler-ia32.h263 行で定義されています。

参照先 allow_stub_calls_.

void v8::internal::MacroAssembler::set_allow_stub_calls ( bool  value  )  [inline]

macro-assembler-arm.h249 行で定義されています。

参照先 allow_stub_calls_.

void v8::internal::MacroAssembler::set_generating_stub ( bool  value  )  [inline]

macro-assembler-arm.h247 行で定義されています。

参照先 generating_stub_.

void v8::internal::MacroAssembler::set_generating_stub ( bool  value  )  [inline]

macro-assembler-ia32.h261 行で定義されています。

参照先 generating_stub_.

void v8::internal::MacroAssembler::SetCounter ( StatsCounter counter,
int  value 
)
void v8::internal::MacroAssembler::StubReturn ( int  argc  ) 
void v8::internal::MacroAssembler::StubReturn ( int  argc  ) 
void v8::internal::MacroAssembler::TailCallRuntime ( const ExternalReference &  ext,
int  num_arguments 
)
void v8::internal::MacroAssembler::TailCallRuntime ( const ExternalReference &  ext,
int  num_arguments 
)

macro-assembler-arm.cc769 行で定義されています。

参照先 JumpToBuiltin(), v8::internal::Assembler::mov(), と v8::internal::r0.

void v8::internal::MacroAssembler::TryGetFunctionPrototype ( Register  function,
Register  result,
Register  scratch,
Label miss 
)
List<Unresolved>* v8::internal::MacroAssembler::unresolved (  )  [inline]

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

参照先 unresolved_.

List<Unresolved>* v8::internal::MacroAssembler::unresolved (  )  [inline]

macro-assembler-arm.h230 行で定義されています。

参照先 unresolved_.

参照元 v8::internal::PendingFixups::Add().


変数

macro-assembler-arm.h255 行で定義されています。

参照元 allow_stub_calls(), と set_allow_stub_calls().

macro-assembler-arm.h254 行で定義されています。

参照元 generating_stub(), と set_generating_stub().

macro-assembler-arm.h253 行で定義されています。

参照元 GetBuiltinEntry(), InvokeBuiltin(), と unresolved().


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