v8
V8 is Google’s open source high-performance JavaScript and WebAssembly engine, written in C++.
Loading...
Searching...
No Matches
v8::internal::maglev::MaglevAssembler::TemporaryRegisterScope Class Reference

#include <maglev-assembler-arm-inl.h>

Inheritance diagram for v8::internal::maglev::MaglevAssembler::TemporaryRegisterScope:
Collaboration diagram for v8::internal::maglev::MaglevAssembler::TemporaryRegisterScope:

Classes

struct  SavedData
 

Public Member Functions

 TemporaryRegisterScope (MaglevAssembler *masm)
 
 TemporaryRegisterScope (MaglevAssembler *masm, const SavedData &saved_data)
 
Register AcquireScratch ()
 
DoubleRegister AcquireScratchDouble ()
 
void IncludeScratch (Register reg)
 
SavedData CopyForDefer ()
 
void ResetToDefaultImpl ()
 
 TemporaryRegisterScope (MaglevAssembler *masm)
 
 TemporaryRegisterScope (MaglevAssembler *masm, const SavedData &saved_data)
 
Register AcquireScratch ()
 
DoubleRegister AcquireScratchDouble ()
 
void IncludeScratch (Register reg)
 
SavedData CopyForDefer ()
 
void ResetToDefaultImpl ()
 
 TemporaryRegisterScope (MaglevAssembler *masm)
 
 TemporaryRegisterScope (MaglevAssembler *masm, const SavedData &saved_data)
 
Register AcquireScratch ()
 
DoubleRegister AcquireScratchDouble ()
 
void IncludeScratch (Register reg)
 
SavedData CopyForDefer ()
 
void ResetToDefaultImpl ()
 
 TemporaryRegisterScope (MaglevAssembler *masm)
 
 TemporaryRegisterScope (MaglevAssembler *masm, const SavedData &saved_data)
 
Register AcquireScratch ()
 
DoubleRegister AcquireScratchDouble ()
 
void IncludeScratch (Register reg)
 
SavedData CopyForDefer ()
 
void ResetToDefaultImpl ()
 
 TemporaryRegisterScope (MaglevAssembler *masm)
 
 TemporaryRegisterScope (MaglevAssembler *masm, const SavedData &saved_data)
 
Register AcquireScratch ()
 
DoubleRegister AcquireScratchDouble ()
 
void IncludeScratch (Register reg)
 
SavedData CopyForDefer ()
 
void ResetToDefaultImpl ()
 
- Public Member Functions inherited from v8::internal::maglev::MaglevAssembler::TemporaryRegisterScopeBase< TemporaryRegisterScope >
 TemporaryRegisterScopeBase (MaglevAssembler *masm)
 
 TemporaryRegisterScopeBase (MaglevAssembler *masm, const SavedData &saved_data)
 
 ~TemporaryRegisterScopeBase ()
 
void ResetToDefault ()
 
Register Acquire ()
 
void Include (const RegList list)
 
DoubleRegister AcquireDouble ()
 
void IncludeDouble (const DoubleRegList list)
 
RegList Available ()
 
void SetAvailable (RegList list)
 
DoubleRegList AvailableDouble ()
 
void SetAvailableDouble (DoubleRegList list)
 

Private Types

using Base = TemporaryRegisterScopeBase<TemporaryRegisterScope>
 

Private Attributes

UseScratchRegisterScope scratch_scope_
 
bool has_scratch_register_
 
bool has_double_scratch_register_
 

Additional Inherited Members

- Protected Member Functions inherited from v8::internal::maglev::MaglevAssembler::TemporaryRegisterScopeBase< TemporaryRegisterScope >
SavedData CopyForDeferBase ()
 
- Protected Attributes inherited from v8::internal::maglev::MaglevAssembler::TemporaryRegisterScopeBase< TemporaryRegisterScope >
MaglevAssemblermasm_
 
TemporaryRegisterScopeprev_scope_
 
RegList available_
 
DoubleRegList available_double_
 

Detailed Description

Definition at line 60 of file maglev-assembler-x64-inl.h.

Member Typedef Documentation

◆ Base

Constructor & Destructor Documentation

◆ TemporaryRegisterScope() [1/10]

v8::internal::maglev::MaglevAssembler::TemporaryRegisterScope::TemporaryRegisterScope ( MaglevAssembler * masm)
inlineexplicit

Definition at line 52 of file maglev-assembler-arm-inl.h.

Here is the call graph for this function:

◆ TemporaryRegisterScope() [2/10]

v8::internal::maglev::MaglevAssembler::TemporaryRegisterScope::TemporaryRegisterScope ( MaglevAssembler * masm,
const SavedData & saved_data )
inlineexplicit

Definition at line 59 of file maglev-assembler-arm-inl.h.

Here is the call graph for this function:

◆ TemporaryRegisterScope() [3/10]

v8::internal::maglev::MaglevAssembler::TemporaryRegisterScope::TemporaryRegisterScope ( MaglevAssembler * masm)
inlineexplicit

Definition at line 53 of file maglev-assembler-arm64-inl.h.

◆ TemporaryRegisterScope() [4/10]

v8::internal::maglev::MaglevAssembler::TemporaryRegisterScope::TemporaryRegisterScope ( MaglevAssembler * masm,
const SavedData & saved_data )
inlineexplicit

Definition at line 55 of file maglev-assembler-arm64-inl.h.

Here is the call graph for this function:

◆ TemporaryRegisterScope() [5/10]

v8::internal::maglev::MaglevAssembler::TemporaryRegisterScope::TemporaryRegisterScope ( MaglevAssembler * masm)
inlineexplicit

Definition at line 75 of file maglev-assembler-riscv-inl.h.

Here is the call graph for this function:

◆ TemporaryRegisterScope() [6/10]

v8::internal::maglev::MaglevAssembler::TemporaryRegisterScope::TemporaryRegisterScope ( MaglevAssembler * masm,
const SavedData & saved_data )
inlineexplicit

Definition at line 82 of file maglev-assembler-riscv-inl.h.

Here is the call graph for this function:

◆ TemporaryRegisterScope() [7/10]

v8::internal::maglev::MaglevAssembler::TemporaryRegisterScope::TemporaryRegisterScope ( MaglevAssembler * masm)
inlineexplicit

Definition at line 53 of file maglev-assembler-s390-inl.h.

◆ TemporaryRegisterScope() [8/10]

v8::internal::maglev::MaglevAssembler::TemporaryRegisterScope::TemporaryRegisterScope ( MaglevAssembler * masm,
const SavedData & saved_data )
inlineexplicit

Definition at line 60 of file maglev-assembler-s390-inl.h.

Here is the call graph for this function:

◆ TemporaryRegisterScope() [9/10]

v8::internal::maglev::MaglevAssembler::TemporaryRegisterScope::TemporaryRegisterScope ( MaglevAssembler * masm)
inlineexplicit

Definition at line 70 of file maglev-assembler-x64-inl.h.

◆ TemporaryRegisterScope() [10/10]

v8::internal::maglev::MaglevAssembler::TemporaryRegisterScope::TemporaryRegisterScope ( MaglevAssembler * masm,
const SavedData & saved_data )
inlineexplicit

Definition at line 76 of file maglev-assembler-x64-inl.h.

Member Function Documentation

◆ AcquireScratch() [1/5]

Register v8::internal::maglev::MaglevAssembler::TemporaryRegisterScope::AcquireScratch ( )
inline

Definition at line 66 of file maglev-assembler-arm-inl.h.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ AcquireScratch() [2/5]

Register v8::internal::maglev::MaglevAssembler::TemporaryRegisterScope::AcquireScratch ( )
inline

Definition at line 62 of file maglev-assembler-arm64-inl.h.

Here is the call graph for this function:

◆ AcquireScratch() [3/5]

Register v8::internal::maglev::MaglevAssembler::TemporaryRegisterScope::AcquireScratch ( )
inline

Definition at line 89 of file maglev-assembler-riscv-inl.h.

Here is the call graph for this function:

◆ AcquireScratch() [4/5]

Register v8::internal::maglev::MaglevAssembler::TemporaryRegisterScope::AcquireScratch ( )
inline

Definition at line 67 of file maglev-assembler-s390-inl.h.

Here is the call graph for this function:

◆ AcquireScratch() [5/5]

Register v8::internal::maglev::MaglevAssembler::TemporaryRegisterScope::AcquireScratch ( )
inline

Definition at line 82 of file maglev-assembler-x64-inl.h.

◆ AcquireScratchDouble() [1/5]

DoubleRegister v8::internal::maglev::MaglevAssembler::TemporaryRegisterScope::AcquireScratchDouble ( )
inline

Definition at line 71 of file maglev-assembler-arm-inl.h.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ AcquireScratchDouble() [2/5]

DoubleRegister v8::internal::maglev::MaglevAssembler::TemporaryRegisterScope::AcquireScratchDouble ( )
inline

Definition at line 67 of file maglev-assembler-arm64-inl.h.

Here is the call graph for this function:

◆ AcquireScratchDouble() [3/5]

DoubleRegister v8::internal::maglev::MaglevAssembler::TemporaryRegisterScope::AcquireScratchDouble ( )
inline

Definition at line 94 of file maglev-assembler-riscv-inl.h.

Here is the call graph for this function:

◆ AcquireScratchDouble() [4/5]

DoubleRegister v8::internal::maglev::MaglevAssembler::TemporaryRegisterScope::AcquireScratchDouble ( )
inline

Definition at line 72 of file maglev-assembler-s390-inl.h.

Here is the call graph for this function:

◆ AcquireScratchDouble() [5/5]

DoubleRegister v8::internal::maglev::MaglevAssembler::TemporaryRegisterScope::AcquireScratchDouble ( )
inline

Definition at line 87 of file maglev-assembler-x64-inl.h.

◆ CopyForDefer() [1/5]

SavedData v8::internal::maglev::MaglevAssembler::TemporaryRegisterScope::CopyForDefer ( )
inline

Definition at line 78 of file maglev-assembler-arm-inl.h.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ CopyForDefer() [2/5]

SavedData v8::internal::maglev::MaglevAssembler::TemporaryRegisterScope::CopyForDefer ( )
inline

Definition at line 74 of file maglev-assembler-arm64-inl.h.

Here is the call graph for this function:

◆ CopyForDefer() [3/5]

SavedData v8::internal::maglev::MaglevAssembler::TemporaryRegisterScope::CopyForDefer ( )
inline

Definition at line 101 of file maglev-assembler-riscv-inl.h.

Here is the call graph for this function:

◆ CopyForDefer() [4/5]

SavedData v8::internal::maglev::MaglevAssembler::TemporaryRegisterScope::CopyForDefer ( )
inline

Definition at line 79 of file maglev-assembler-s390-inl.h.

Here is the call graph for this function:

◆ CopyForDefer() [5/5]

SavedData v8::internal::maglev::MaglevAssembler::TemporaryRegisterScope::CopyForDefer ( )
inline

Definition at line 97 of file maglev-assembler-x64-inl.h.

Here is the call graph for this function:

◆ IncludeScratch() [1/5]

void v8::internal::maglev::MaglevAssembler::TemporaryRegisterScope::IncludeScratch ( Register reg)
inline

Definition at line 76 of file maglev-assembler-arm-inl.h.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ IncludeScratch() [2/5]

void v8::internal::maglev::MaglevAssembler::TemporaryRegisterScope::IncludeScratch ( Register reg)
inline

Definition at line 72 of file maglev-assembler-arm64-inl.h.

Here is the call graph for this function:

◆ IncludeScratch() [3/5]

void v8::internal::maglev::MaglevAssembler::TemporaryRegisterScope::IncludeScratch ( Register reg)
inline

Definition at line 99 of file maglev-assembler-riscv-inl.h.

Here is the call graph for this function:

◆ IncludeScratch() [4/5]

void v8::internal::maglev::MaglevAssembler::TemporaryRegisterScope::IncludeScratch ( Register reg)
inline

Definition at line 77 of file maglev-assembler-s390-inl.h.

Here is the call graph for this function:

◆ IncludeScratch() [5/5]

void v8::internal::maglev::MaglevAssembler::TemporaryRegisterScope::IncludeScratch ( Register reg)
inline

Definition at line 92 of file maglev-assembler-x64-inl.h.

◆ ResetToDefaultImpl() [1/5]

void v8::internal::maglev::MaglevAssembler::TemporaryRegisterScope::ResetToDefaultImpl ( )
inline

Definition at line 86 of file maglev-assembler-arm-inl.h.

Here is the call graph for this function:

◆ ResetToDefaultImpl() [2/5]

void v8::internal::maglev::MaglevAssembler::TemporaryRegisterScope::ResetToDefaultImpl ( )
inline

Definition at line 82 of file maglev-assembler-arm64-inl.h.

Here is the call graph for this function:

◆ ResetToDefaultImpl() [3/5]

void v8::internal::maglev::MaglevAssembler::TemporaryRegisterScope::ResetToDefaultImpl ( )
inline

Definition at line 109 of file maglev-assembler-riscv-inl.h.

Here is the call graph for this function:

◆ ResetToDefaultImpl() [4/5]

void v8::internal::maglev::MaglevAssembler::TemporaryRegisterScope::ResetToDefaultImpl ( )
inline

Definition at line 87 of file maglev-assembler-s390-inl.h.

Here is the call graph for this function:

◆ ResetToDefaultImpl() [5/5]

void v8::internal::maglev::MaglevAssembler::TemporaryRegisterScope::ResetToDefaultImpl ( )
inline

Definition at line 105 of file maglev-assembler-x64-inl.h.

Member Data Documentation

◆ has_double_scratch_register_

bool v8::internal::maglev::MaglevAssembler::TemporaryRegisterScope::has_double_scratch_register_
private

Definition at line 112 of file maglev-assembler-x64-inl.h.

◆ has_scratch_register_

bool v8::internal::maglev::MaglevAssembler::TemporaryRegisterScope::has_scratch_register_
private

Definition at line 111 of file maglev-assembler-x64-inl.h.

◆ scratch_scope_

UseScratchRegisterScope v8::internal::maglev::MaglevAssembler::TemporaryRegisterScope::scratch_scope_
private

Definition at line 93 of file maglev-assembler-arm-inl.h.


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