#include <linkage.h>
|
enum | Kind { kCallCodeObject
, kCallJSFunction
, kCallAddress
, kCallBuiltinPointer
} |
|
enum | Flag {
kNoFlags = 0u
, kNeedsFrameState = 1u << 0
, kHasExceptionHandler = 1u << 1
, kCanUseRoots = 1u << 2
,
kInitializeRootRegister = 1u << 3
, kNoAllocate = 1u << 4
, kFixedTargetRegister = 1u << 5
, kCallerSavedRegisters = 1u << 6
,
kCallerSavedFPRegisters = 1u << 7
, kIsTailCallForTierUp = 1u << 8
, kNoFunctionDescriptor = 1u << 9
} |
|
using | Flags = base::Flags<Flag> |
|
|
| CallDescriptor (Kind kind, CodeEntrypointTag tag, MachineType target_type, LinkageLocation target_loc, LocationSignature *location_sig, size_t param_slot_count, Operator::Properties properties, RegList callee_saved_registers, DoubleRegList callee_saved_fp_registers, Flags flags, const char *debug_name="", StackArgumentOrder stack_order=StackArgumentOrder::kDefault, const RegList allocatable_registers={}, size_t return_slot_count=0, uint64_t signature_hash=kInvalidWasmSignatureHash) |
|
| CallDescriptor (const CallDescriptor &)=delete |
|
CallDescriptor & | operator= (const CallDescriptor &)=delete |
|
Kind | kind () const |
|
CodeEntrypointTag | tag () const |
|
uint64_t | signature_hash () const |
|
uint32_t | shifted_tag () const |
|
bool | IsCodeObjectCall () const |
|
bool | IsCFunctionCall () const |
|
bool | IsJSFunctionCall () const |
|
bool | IsBuiltinPointerCall () const |
|
bool | RequiresFrameAsIncoming () const |
|
bool | RequiresEntrypointTagForCall () const |
|
size_t | ReturnCount () const |
|
size_t | ParameterCount () const |
|
size_t | GPParameterCount () const |
|
size_t | FPParameterCount () const |
|
size_t | ParameterSlotCount () const |
|
size_t | ReturnSlotCount () const |
|
size_t | JSParameterCount () const |
|
int | GetStackIndexFromSlot (int slot_index) const |
|
size_t | InputCount () const |
|
size_t | FrameStateCount () const |
|
Flags | flags () const |
|
bool | NeedsFrameState () const |
|
bool | InitializeRootRegister () const |
|
bool | NeedsCallerSavedRegisters () const |
|
bool | NeedsCallerSavedFPRegisters () const |
|
bool | IsTailCallForTierUp () const |
|
bool | NoFunctionDescriptor () const |
|
LinkageLocation | GetReturnLocation (size_t index) const |
|
LinkageLocation | GetInputLocation (size_t index) const |
|
MachineSignature * | GetMachineSignature (Zone *zone) const |
|
MachineType | GetReturnType (size_t index) const |
|
MachineType | GetInputType (size_t index) const |
|
MachineType | GetParameterType (size_t index) const |
|
StackArgumentOrder | GetStackArgumentOrder () const |
|
Operator::Properties | properties () const |
|
RegList | CalleeSavedRegisters () const |
|
DoubleRegList | CalleeSavedFPRegisters () const |
|
const char * | debug_name () const |
|
int | GetStackParameterDelta (const CallDescriptor *tail_caller) const |
|
int | GetOffsetToFirstUnusedStackSlot () const |
|
int | GetOffsetToReturns () const |
|
uint32_t | GetTaggedParameterSlots () const |
|
bool | CanTailCall (const CallDescriptor *callee) const |
|
int | CalculateFixedFrameSize (CodeKind code_kind) const |
|
RegList | AllocatableRegisters () const |
|
bool | HasRestrictedAllocatableRegisters () const |
|
EncodedCSignature | ToEncodedCSignature () const |
|
Definition at line 43 of file linkage.h.
◆ Flags
◆ Flag
Enumerator |
---|
kNoFlags | |
kNeedsFrameState | |
kHasExceptionHandler | |
kCanUseRoots | |
kInitializeRootRegister | |
kNoAllocate | |
kFixedTargetRegister | |
kCallerSavedRegisters | |
kCallerSavedFPRegisters | |
kIsTailCallForTierUp | |
kNoFunctionDescriptor | |
Definition at line 64 of file linkage.h.
◆ Kind
Enumerator |
---|
kCallCodeObject | |
kCallJSFunction | |
kCallAddress | |
kCallBuiltinPointer | |
Definition at line 47 of file linkage.h.
◆ CallDescriptor() [1/2]
v8::internal::compiler::CallDescriptor::CallDescriptor |
( |
Kind | kind, |
|
|
CodeEntrypointTag | tag, |
|
|
MachineType | target_type, |
|
|
LinkageLocation | target_loc, |
|
|
LocationSignature * | location_sig, |
|
|
size_t | param_slot_count, |
|
|
Operator::Properties | properties, |
|
|
RegList | callee_saved_registers, |
|
|
DoubleRegList | callee_saved_fp_registers, |
|
|
Flags | flags, |
|
|
const char * | debug_name = "", |
|
|
StackArgumentOrder | stack_order = StackArgumentOrder::kDefault, |
|
|
const RegList | allocatable_registers = {}, |
|
|
size_t | return_slot_count = 0, |
|
|
uint64_t | signature_hash = kInvalidWasmSignatureHash ) |
|
inline |
◆ CallDescriptor() [2/2]
v8::internal::compiler::CallDescriptor::CallDescriptor |
( |
const CallDescriptor & | | ) |
|
|
delete |
◆ AllocatableRegisters()
RegList v8::internal::compiler::CallDescriptor::AllocatableRegisters |
( |
| ) |
const |
|
inline |
◆ CalculateFixedFrameSize()
int v8::internal::compiler::CallDescriptor::CalculateFixedFrameSize |
( |
CodeKind | code_kind | ) |
const |
◆ CalleeSavedFPRegisters()
DoubleRegList v8::internal::compiler::CallDescriptor::CalleeSavedFPRegisters |
( |
| ) |
const |
|
inline |
◆ CalleeSavedRegisters()
RegList v8::internal::compiler::CallDescriptor::CalleeSavedRegisters |
( |
| ) |
const |
|
inline |
◆ CanTailCall()
bool v8::internal::compiler::CallDescriptor::CanTailCall |
( |
const CallDescriptor * | callee | ) |
const |
◆ ComputeParamCounts()
void v8::internal::compiler::CallDescriptor::ComputeParamCounts |
( |
| ) |
const |
|
private |
◆ debug_name()
const char * v8::internal::compiler::CallDescriptor::debug_name |
( |
| ) |
const |
|
inline |
◆ flags()
Flags v8::internal::compiler::CallDescriptor::flags |
( |
| ) |
const |
|
inline |
◆ FPParameterCount()
size_t v8::internal::compiler::CallDescriptor::FPParameterCount |
( |
| ) |
const |
|
inline |
◆ FrameStateCount()
size_t v8::internal::compiler::CallDescriptor::FrameStateCount |
( |
| ) |
const |
|
inline |
◆ GetInputLocation()
◆ GetInputType()
MachineType v8::internal::compiler::CallDescriptor::GetInputType |
( |
size_t | index | ) |
const |
|
inline |
◆ GetMachineSignature()
◆ GetOffsetToFirstUnusedStackSlot()
int v8::internal::compiler::CallDescriptor::GetOffsetToFirstUnusedStackSlot |
( |
| ) |
const |
◆ GetOffsetToReturns()
int v8::internal::compiler::CallDescriptor::GetOffsetToReturns |
( |
| ) |
const |
◆ GetParameterType()
MachineType v8::internal::compiler::CallDescriptor::GetParameterType |
( |
size_t | index | ) |
const |
|
inline |
◆ GetReturnLocation()
◆ GetReturnType()
MachineType v8::internal::compiler::CallDescriptor::GetReturnType |
( |
size_t | index | ) |
const |
|
inline |
◆ GetStackArgumentOrder()
StackArgumentOrder v8::internal::compiler::CallDescriptor::GetStackArgumentOrder |
( |
| ) |
const |
|
inline |
◆ GetStackIndexFromSlot()
int v8::internal::compiler::CallDescriptor::GetStackIndexFromSlot |
( |
int | slot_index | ) |
const |
|
inline |
◆ GetStackParameterDelta()
int v8::internal::compiler::CallDescriptor::GetStackParameterDelta |
( |
const CallDescriptor * | tail_caller | ) |
const |
◆ GetTaggedParameterSlots()
uint32_t v8::internal::compiler::CallDescriptor::GetTaggedParameterSlots |
( |
| ) |
const |
◆ GPParameterCount()
size_t v8::internal::compiler::CallDescriptor::GPParameterCount |
( |
| ) |
const |
|
inline |
◆ HasRestrictedAllocatableRegisters()
bool v8::internal::compiler::CallDescriptor::HasRestrictedAllocatableRegisters |
( |
| ) |
const |
|
inline |
◆ InitializeRootRegister()
bool v8::internal::compiler::CallDescriptor::InitializeRootRegister |
( |
| ) |
const |
|
inline |
◆ InputCount()
size_t v8::internal::compiler::CallDescriptor::InputCount |
( |
| ) |
const |
|
inline |
◆ IsBuiltinPointerCall()
bool v8::internal::compiler::CallDescriptor::IsBuiltinPointerCall |
( |
| ) |
const |
|
inline |
◆ IsCFunctionCall()
bool v8::internal::compiler::CallDescriptor::IsCFunctionCall |
( |
| ) |
const |
|
inline |
◆ IsCodeObjectCall()
bool v8::internal::compiler::CallDescriptor::IsCodeObjectCall |
( |
| ) |
const |
|
inline |
◆ IsJSFunctionCall()
bool v8::internal::compiler::CallDescriptor::IsJSFunctionCall |
( |
| ) |
const |
|
inline |
◆ IsTailCallForTierUp()
bool v8::internal::compiler::CallDescriptor::IsTailCallForTierUp |
( |
| ) |
const |
|
inline |
◆ JSParameterCount()
size_t v8::internal::compiler::CallDescriptor::JSParameterCount |
( |
| ) |
const |
|
inline |
◆ kind()
Kind v8::internal::compiler::CallDescriptor::kind |
( |
| ) |
const |
|
inline |
◆ NeedsCallerSavedFPRegisters()
bool v8::internal::compiler::CallDescriptor::NeedsCallerSavedFPRegisters |
( |
| ) |
const |
|
inline |
◆ NeedsCallerSavedRegisters()
bool v8::internal::compiler::CallDescriptor::NeedsCallerSavedRegisters |
( |
| ) |
const |
|
inline |
◆ NeedsFrameState()
bool v8::internal::compiler::CallDescriptor::NeedsFrameState |
( |
| ) |
const |
|
inline |
◆ NoFunctionDescriptor()
bool v8::internal::compiler::CallDescriptor::NoFunctionDescriptor |
( |
| ) |
const |
|
inline |
◆ operator=()
◆ ParameterCount()
size_t v8::internal::compiler::CallDescriptor::ParameterCount |
( |
| ) |
const |
|
inline |
◆ ParameterSlotCount()
size_t v8::internal::compiler::CallDescriptor::ParameterSlotCount |
( |
| ) |
const |
|
inline |
◆ properties()
◆ RequiresEntrypointTagForCall()
bool v8::internal::compiler::CallDescriptor::RequiresEntrypointTagForCall |
( |
| ) |
const |
|
inline |
◆ RequiresFrameAsIncoming()
bool v8::internal::compiler::CallDescriptor::RequiresFrameAsIncoming |
( |
| ) |
const |
|
inline |
◆ ReturnCount()
size_t v8::internal::compiler::CallDescriptor::ReturnCount |
( |
| ) |
const |
|
inline |
◆ ReturnSlotCount()
size_t v8::internal::compiler::CallDescriptor::ReturnSlotCount |
( |
| ) |
const |
|
inline |
◆ shifted_tag()
uint32_t v8::internal::compiler::CallDescriptor::shifted_tag |
( |
| ) |
const |
|
inline |
◆ signature_hash()
uint64_t v8::internal::compiler::CallDescriptor::signature_hash |
( |
| ) |
const |
◆ tag()
◆ ToEncodedCSignature()
EncodedCSignature v8::internal::compiler::CallDescriptor::ToEncodedCSignature |
( |
| ) |
const |
◆ Linkage
◆ allocatable_registers_
const RegList v8::internal::compiler::CallDescriptor::allocatable_registers_ |
|
private |
◆ callee_saved_fp_registers_
const DoubleRegList v8::internal::compiler::CallDescriptor::callee_saved_fp_registers_ |
|
private |
◆ callee_saved_registers_
const RegList v8::internal::compiler::CallDescriptor::callee_saved_registers_ |
|
private |
◆ debug_name_
const char* const v8::internal::compiler::CallDescriptor::debug_name_ |
|
private |
◆ flags_
const Flags v8::internal::compiler::CallDescriptor::flags_ |
|
private |
◆ fp_param_count_
std::optional<size_t> v8::internal::compiler::CallDescriptor::fp_param_count_ |
|
mutableprivate |
◆ gp_param_count_
std::optional<size_t> v8::internal::compiler::CallDescriptor::gp_param_count_ |
|
mutableprivate |
◆ kFlagsBitsEncodedInInstructionCode
int v8::internal::compiler::CallDescriptor::kFlagsBitsEncodedInInstructionCode = 10 |
|
staticconstexpr |
◆ kind_
const Kind v8::internal::compiler::CallDescriptor::kind_ |
|
private |
◆ location_sig_
◆ param_slot_count_
const size_t v8::internal::compiler::CallDescriptor::param_slot_count_ |
|
private |
◆ properties_
◆ return_slot_count_
const size_t v8::internal::compiler::CallDescriptor::return_slot_count_ |
|
private |
◆ signature_hash_
uint64_t v8::internal::compiler::CallDescriptor::signature_hash_ |
|
private |
◆ stack_order_
◆ tag_
◆ target_loc_
◆ target_type_
const MachineType v8::internal::compiler::CallDescriptor::target_type_ |
|
private |
The documentation for this class was generated from the following files: