V8 Project
|
#include <linkage.h>
Public Member Functions | |
Linkage (CompilationInfo *info) | |
Linkage (CompilationInfo *info, CallDescriptor *incoming) | |
CallDescriptor * | GetIncomingDescriptor () |
CallDescriptor * | GetJSCallDescriptor (int parameter_count) |
CallDescriptor * | GetRuntimeCallDescriptor (Runtime::FunctionId function, int parameter_count, Operator::Properties properties) |
CallDescriptor * | GetStubCallDescriptor (CallInterfaceDescriptor descriptor, int stack_parameter_count=0, CallDescriptor::Flags flags=CallDescriptor::kNoFlags) |
LinkageLocation | GetParameterLocation (int index) |
MachineType | GetParameterType (int index) |
LinkageLocation | GetReturnLocation () |
MachineType | GetReturnType () |
FrameOffset | GetFrameOffset (int spill_slot, Frame *frame, int extra=0) |
CompilationInfo * | info () const |
![]() | |
INLINE (void *operator new(size_t size, Zone *zone)) | |
void | operator delete (void *, size_t) |
void | operator delete (void *pointer, Zone *zone) |
Static Public Member Functions | |
static CallDescriptor * | GetJSCallDescriptor (int parameter_count, Zone *zone) |
static CallDescriptor * | GetRuntimeCallDescriptor (Runtime::FunctionId function, int parameter_count, Operator::Properties properties, Zone *zone) |
static CallDescriptor * | GetStubCallDescriptor (CallInterfaceDescriptor descriptor, int stack_parameter_count, CallDescriptor::Flags flags, Zone *zone) |
static CallDescriptor * | GetSimplifiedCDescriptor (Zone *zone, MachineSignature *sig) |
static bool | NeedsFrameState (Runtime::FunctionId function) |
Private Attributes | |
CompilationInfo * | info_ |
CallDescriptor * | incoming_ |
|
explicit |
Definition at line 42 of file linkage.cc.
References v8::internal::CompilationInfo::closure(), v8::internal::CompilationInfo::code_stub(), v8::internal::SharedFunctionInfo::formal_parameter_count(), v8::internal::CompilationInfo::function(), GetJSCallDescriptor(), GetStubCallDescriptor(), incoming_, info(), and NULL.
|
inlineexplicit |
FrameOffset v8::internal::compiler::Linkage::GetFrameOffset | ( | int | spill_slot, |
Frame * | frame, | ||
int | extra = 0 |
||
) |
Definition at line 63 of file linkage.cc.
References DCHECK, v8::internal::compiler::FrameOffset::FromFramePointer(), v8::internal::compiler::FrameOffset::FromStackPointer(), v8::internal::compiler::Frame::GetRegisterSaveAreaSize(), v8::internal::compiler::Frame::GetSpillSlotCount(), incoming_, v8::internal::kFPOnStackSize, v8::internal::kPCOnStackSize, and v8::internal::kPointerSize.
Referenced by v8::internal::compiler::IA32OperandConverter::ToOperand(), and v8::internal::compiler::X64OperandConverter::ToRegisterOrOperand().
|
inline |
CallDescriptor * v8::internal::compiler::Linkage::GetJSCallDescriptor | ( | int | parameter_count | ) |
Definition at line 90 of file linkage.cc.
References info_, and v8::internal::CompilationInfo::zone().
Referenced by v8::internal::compiler::RawMachineAssembler::CallJS0(), and Linkage().
|
static |
Definition at line 38 of file linkage-arm.cc.
References v8::internal::compiler::LinkageHelper< LinkageTraits >::GetJSCallDescriptor().
|
inline |
|
inline |
|
inline |
|
inline |
CallDescriptor * v8::internal::compiler::Linkage::GetRuntimeCallDescriptor | ( | Runtime::FunctionId | function, |
int | parameter_count, | ||
Operator::Properties | properties | ||
) |
Definition at line 95 of file linkage.cc.
References info_, and v8::internal::CompilationInfo::zone().
Referenced by v8::internal::compiler::RawMachineAssembler::CallRuntime1(), v8::internal::compiler::JSGenericLowering::ReplaceWithRuntimeCall(), and v8::internal::compiler::SimplifiedLowering::StringComparison().
|
static |
Definition at line 43 of file linkage-arm.cc.
References v8::internal::compiler::LinkageHelper< LinkageTraits >::GetRuntimeCallDescriptor().
|
static |
Definition at line 59 of file linkage-arm.cc.
References v8::internal::compiler::LinkageHelper< LinkageTraits >::GetSimplifiedCDescriptor().
|
static |
Definition at line 51 of file linkage-arm.cc.
References v8::internal::anonymous_namespace{flags.cc}::flags, and v8::internal::compiler::LinkageHelper< LinkageTraits >::GetStubCallDescriptor().
CallDescriptor * v8::internal::compiler::Linkage::GetStubCallDescriptor | ( | CallInterfaceDescriptor | descriptor, |
int | stack_parameter_count = 0 , |
||
CallDescriptor::Flags | flags = CallDescriptor::kNoFlags |
||
) |
Definition at line 103 of file linkage.cc.
References v8::internal::anonymous_namespace{flags.cc}::flags, info_, and v8::internal::CompilationInfo::zone().
Referenced by v8::internal::compiler::RawMachineAssembler::CallFunctionStub0(), v8::internal::compiler::SimplifiedLowering::DoStringAdd(), Linkage(), v8::internal::compiler::JSGenericLowering::ReplaceWithBuiltinCall(), v8::internal::compiler::JSGenericLowering::ReplaceWithCompareIC(), and v8::internal::compiler::JSGenericLowering::ReplaceWithStubCall().
|
inline |
|
static |
Definition at line 112 of file linkage.cc.
Referenced by v8::internal::compiler::LinkageHelper< LinkageTraits >::GetRuntimeCallDescriptor(), and v8::internal::compiler::OperatorProperties::HasFrameStateInput().
|
private |
Definition at line 225 of file linkage.h.
Referenced by GetFrameOffset(), GetIncomingDescriptor(), GetParameterLocation(), GetParameterType(), GetReturnLocation(), GetReturnType(), and Linkage().
|
private |
Definition at line 224 of file linkage.h.
Referenced by GetJSCallDescriptor(), GetRuntimeCallDescriptor(), GetStubCallDescriptor(), and info().