Flutter Engine
The Flutter Engine
|
#include <simulator_arm.h>
Public Member Functions | |
Simulator () | |
~Simulator () | |
void | set_register (Register reg, int32_t value) |
DART_FORCE_INLINE int32_t | get_register (Register reg) const |
int32_t | get_sp () const |
int32_t | get_lr () const |
void | set_pc (int32_t value) |
DART_FORCE_INLINE int32_t | get_pc () const |
void | set_sregister (SRegister reg, float value) |
float | get_sregister (SRegister reg) const |
void | set_dregister (DRegister reg, double value) |
double | get_dregister (DRegister reg) const |
void | set_qregister (QRegister reg, const simd_value_t &value) |
void | get_qregister (QRegister reg, simd_value_t *value) const |
void | set_sregister_bits (SRegister reg, int32_t value) |
int32_t | get_sregister_bits (SRegister reg) const |
void | set_dregister_bits (DRegister reg, int64_t value) |
int64_t | get_dregister_bits (DRegister reg) const |
uword | stack_base () const |
uword | overflow_stack_limit () const |
uword | stack_limit () const |
uint64_t | get_icount () const |
int64_t | Call (int32_t entry, int32_t parameter0, int32_t parameter1, int32_t parameter2, int32_t parameter3, bool fp_return=false, bool fp_args=false) |
void | JumpToFrame (uword pc, uword sp, uword fp, Thread *thread) |
Simulator () | |
~Simulator () | |
void | set_register (Instr *instr, Register reg, int64_t value, R31Type r31t=R31IsSP) |
int64_t | get_register (Register reg, R31Type r31t=R31IsSP) const |
void | set_wregister (Register reg, int32_t value, R31Type r31t=R31IsSP) |
int32_t | get_wregister (Register reg, R31Type r31t=R31IsSP) const |
int32_t | get_vregisters (VRegister reg, int idx) const |
void | set_vregisters (VRegister reg, int idx, int32_t value) |
int64_t | get_vregisterd (VRegister reg, int idx) const |
void | set_vregisterd (VRegister reg, int idx, int64_t value) |
void | get_vregister (VRegister reg, simd_value_t *value) const |
void | set_vregister (VRegister reg, const simd_value_t &value) |
int64_t | get_sp () const |
int64_t | get_lr () const |
uint64_t | get_pc () const |
uint64_t | get_last_pc () const |
void | set_pc (uint64_t pc) |
uword | stack_base () const |
uword | overflow_stack_limit () const |
uword | stack_limit () const |
uint64_t | get_icount () const |
int64_t | Call (int64_t entry, int64_t parameter0, int64_t parameter1, int64_t parameter2, int64_t parameter3, bool fp_return=false, bool fp_args=false) |
void | JumpToFrame (uword pc, uword sp, uword fp, Thread *thread) |
Simulator () | |
~Simulator () | |
intx_t | CallX (intx_t function, intx_t arg0=0, intx_t arg1=0, intx_t arg2=0, intx_t arg3=0) |
intx_t | CallI (intx_t function, double arg0, double arg1=0.0) |
intx_t | CallI (intx_t function, float arg0, float arg1=0.0f) |
double | CallD (intx_t function, intx_t arg0, intx_t arg1=0) |
double | CallD (intx_t function, double arg0, double arg1=0.0, double arg2=0.0) |
double | CallD (intx_t function, intx_t arg0, double arg1) |
double | CallD (intx_t function, float arg0) |
float | CallF (intx_t function, intx_t arg0, intx_t arg1=0) |
float | CallF (intx_t function, float arg0, float arg1=0.0f, float arg2=0.0f) |
float | CallF (intx_t function, intx_t arg0, float arg1) |
float | CallF (intx_t function, double arg0) |
int64_t | Call (intx_t entry, intx_t parameter0, intx_t parameter1, intx_t parameter2, intx_t parameter3, bool fp_return=false, bool fp_args=false) |
void | JumpToFrame (uword pc, uword sp, uword fp, Thread *thread) |
uintx_t | get_register (Register rs) const |
uintx_t | get_pc () const |
uintx_t | get_sp () const |
uintx_t | get_fp () const |
uintx_t | get_lr () const |
void | PrintRegisters () |
void | PrintStack () |
uword | stack_base () const |
uword | overflow_stack_limit () const |
uword | stack_limit () const |
uint64_t | get_icount () const |
Simulator () | |
~Simulator () | |
int64_t | Call (int64_t entry, int64_t parameter0, int64_t parameter1, int64_t parameter2, int64_t parameter3, bool fp_return=false, bool fp_args=false) |
void | JumpToFrame (uword pc, uword sp, uword fp, Thread *thread) |
uint64_t | get_register (Register rs) const |
uint64_t | get_pc () const |
uint64_t | get_sp () const |
uint64_t | get_fp () const |
uint64_t | get_lr () const |
uword | stack_base () const |
uword | overflow_stack_limit () const |
uword | stack_limit () const |
uint64_t | get_icount () const |
Static Public Member Functions | |
static Simulator * | Current () |
static void | Init () |
static uword | RedirectExternalReference (uword function, CallKind call_kind, int argument_count) |
static uword | FunctionForRedirect (uword redirect) |
static Simulator * | Current () |
static void | Init () |
static uword | RedirectExternalReference (uword function, CallKind call_kind, int argument_count) |
static uword | FunctionForRedirect (uword redirect) |
static Simulator * | Current () |
static uword | RedirectExternalReference (uword function, CallKind call_kind, int argument_count) |
static uword | FunctionForRedirect (uword redirect) |
static void | Init () |
static Simulator * | Current () |
static uword | RedirectExternalReference (uword function, CallKind call_kind, int argument_count) |
static uword | FunctionForRedirect (uword redirect) |
static void | Init () |
Static Public Attributes | |
static constexpr uword | kSimulatorStackUnderflowSize = 64 |
Friends | |
class | SimulatorDebugger |
class | SimulatorSetjmpBuffer |
Definition at line 41 of file simulator_arm.h.
Definition at line 112 of file simulator_arm.h.
Definition at line 103 of file simulator_arm64.h.
Definition at line 149 of file simulator_riscv.h.
Definition at line 37 of file simulator_x64.h.
dart::Simulator::Simulator | ( | ) |
dart::Simulator::~Simulator | ( | ) |
dart::Simulator::Simulator | ( | ) |
dart::Simulator::~Simulator | ( | ) |
dart::Simulator::Simulator | ( | ) |
dart::Simulator::~Simulator | ( | ) |
dart::Simulator::Simulator | ( | ) |
dart::Simulator::~Simulator | ( | ) |
int64_t dart::Simulator::Call | ( | int32_t | entry, |
int32_t | parameter0, | ||
int32_t | parameter1, | ||
int32_t | parameter2, | ||
int32_t | parameter3, | ||
bool | fp_return = false , |
||
bool | fp_args = false |
||
) |
int64_t dart::Simulator::Call | ( | int64_t | entry, |
int64_t | parameter0, | ||
int64_t | parameter1, | ||
int64_t | parameter2, | ||
int64_t | parameter3, | ||
bool | fp_return = false , |
||
bool | fp_args = false |
||
) |
int64_t dart::Simulator::Call | ( | int64_t | entry, |
int64_t | parameter0, | ||
int64_t | parameter1, | ||
int64_t | parameter2, | ||
int64_t | parameter3, | ||
bool | fp_return = false , |
||
bool | fp_args = false |
||
) |
int64_t dart::Simulator::Call | ( | intx_t | entry, |
intx_t | parameter0, | ||
intx_t | parameter1, | ||
intx_t | parameter2, | ||
intx_t | parameter3, | ||
bool | fp_return = false , |
||
bool | fp_args = false |
||
) |
|
inline |
|
inline |
Definition at line 92 of file simulator_riscv.h.
|
inline |
Definition at line 84 of file simulator_riscv.h.
|
inline |
Definition at line 64 of file simulator_riscv.h.
|
inline |
Definition at line 128 of file simulator_riscv.h.
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
static |
|
static |
|
static |
|
static |
double dart::Simulator::get_dregister | ( | DRegister | reg | ) | const |
int64_t dart::Simulator::get_dregister_bits | ( | DRegister | reg | ) | const |
|
inline |
Definition at line 166 of file simulator_riscv.h.
|
inline |
Definition at line 54 of file simulator_x64.h.
|
inline |
Definition at line 92 of file simulator_arm.h.
|
inline |
Definition at line 85 of file simulator_arm64.h.
|
inline |
Definition at line 179 of file simulator_riscv.h.
|
inline |
Definition at line 65 of file simulator_x64.h.
uint64_t dart::Simulator::get_last_pc | ( | ) | const |
|
inline |
Definition at line 62 of file simulator_arm.h.
|
inline |
Definition at line 71 of file simulator_arm64.h.
|
inline |
Definition at line 167 of file simulator_riscv.h.
|
inline |
Definition at line 55 of file simulator_x64.h.
|
inline |
Definition at line 66 of file simulator_arm.h.
uint64_t dart::Simulator::get_pc | ( | ) | const |
|
inline |
Definition at line 164 of file simulator_riscv.h.
|
inline |
Definition at line 52 of file simulator_x64.h.
void dart::Simulator::get_qregister | ( | QRegister | reg, |
simd_value_t * | value | ||
) | const |
|
inline |
Definition at line 56 of file simulator_arm.h.
|
inline |
Definition at line 163 of file simulator_riscv.h.
|
inline |
Definition at line 51 of file simulator_x64.h.
|
inline |
Definition at line 61 of file simulator_arm.h.
|
inline |
Definition at line 70 of file simulator_arm64.h.
|
inline |
Definition at line 165 of file simulator_riscv.h.
|
inline |
Definition at line 53 of file simulator_x64.h.
float dart::Simulator::get_sregister | ( | SRegister | reg | ) | const |
int32_t dart::Simulator::get_sregister_bits | ( | SRegister | reg | ) | const |
void dart::Simulator::get_vregister | ( | VRegister | reg, |
simd_value_t * | value | ||
) | const |
|
static |
|
static |
|
static |
|
static |
|
inline |
Definition at line 87 of file simulator_arm.h.
|
inline |
Definition at line 80 of file simulator_arm64.h.
|
inline |
Definition at line 174 of file simulator_riscv.h.
|
inline |
Definition at line 60 of file simulator_x64.h.
void dart::Simulator::PrintRegisters | ( | ) |
void dart::Simulator::PrintStack | ( | ) |
|
static |
|
static |
|
static |
|
static |
void dart::Simulator::set_dregister | ( | DRegister | reg, |
double | value | ||
) |
void dart::Simulator::set_dregister_bits | ( | DRegister | reg, |
int64_t | value | ||
) |
void dart::Simulator::set_pc | ( | int32_t | value | ) |
void dart::Simulator::set_pc | ( | uint64_t | pc | ) |
void dart::Simulator::set_qregister | ( | QRegister | reg, |
const simd_value_t & | value | ||
) |
void dart::Simulator::set_register | ( | Instr * | instr, |
Register | reg, | ||
int64_t | value, | ||
R31Type | r31t = R31IsSP |
||
) |
void dart::Simulator::set_register | ( | Register | reg, |
int32_t | value | ||
) |
void dart::Simulator::set_sregister | ( | SRegister | reg, |
float | value | ||
) |
void dart::Simulator::set_sregister_bits | ( | SRegister | reg, |
int32_t | value | ||
) |
void dart::Simulator::set_vregister | ( | VRegister | reg, |
const simd_value_t & | value | ||
) |
|
inline |
Definition at line 85 of file simulator_arm.h.
|
inline |
Definition at line 78 of file simulator_arm64.h.
|
inline |
Definition at line 172 of file simulator_riscv.h.
|
inline |
Definition at line 58 of file simulator_x64.h.
|
inline |
Definition at line 89 of file simulator_arm.h.
|
inline |
Definition at line 82 of file simulator_arm64.h.
|
inline |
Definition at line 176 of file simulator_riscv.h.
|
inline |
Definition at line 62 of file simulator_x64.h.
|
friend |
Definition at line 256 of file simulator_arm.h.
|
friend |
Definition at line 257 of file simulator_arm.h.
int64_t dart::Simulator::dregisters_[kNumberOfDRegisters] |
Definition at line 146 of file simulator_arm.h.
|
staticconstexpr |
Definition at line 43 of file simulator_arm.h.
simd_value_t dart::Simulator::qregisters_[kNumberOfQRegisters] |
Definition at line 147 of file simulator_arm.h.
int32_t dart::Simulator::sregisters_[kNumberOfSRegisters] |
Definition at line 145 of file simulator_arm.h.