![]() |
v8
V8 is Google’s open source high-performance JavaScript and WebAssembly engine, written in C++.
|
#include <assembler.h>
Classes | |
struct | BlockData |
Public Types | |
using | values_t = std::tuple<V<Ts>...> |
using | const_or_values_t = std::tuple<maybe_const_or_v_t<Ts>...> |
using | recorded_values_t = std::tuple<base::SmallVector<V<Ts>, 2>...> |
Public Member Functions | |
Block * | block () |
bool | has_incoming_jump () const |
template<typename A > | |
void | Goto (A &assembler, const values_t &values) |
template<typename A > | |
void | GotoIf (A &assembler, OpIndex condition, BranchHint hint, const values_t &values) |
template<typename A > | |
void | GotoIfNot (A &assembler, OpIndex condition, BranchHint hint, const values_t &values) |
template<typename A > | |
base::prepend_tuple_type< bool, values_t > | Bind (A &assembler) |
Static Public Attributes | |
static constexpr bool | is_loop = loop |
Protected Member Functions | |
LabelBase (const LabelBase &)=delete | |
LabelBase & | operator= (const LabelBase &)=delete |
LabelBase (Block *block) | |
LabelBase (LabelBase &&other) V8_NOEXCEPT | |
template<typename A > | |
values_t | MaterializePhis (A &assembler) |
Static Protected Member Functions | |
static void | RecordValues (Block *source, BlockData &data, const values_t &values) |
template<size_t... indices> | |
static void | RecordValuesImpl (BlockData &data, Block *source, const values_t &values, std::index_sequence< indices... >) |
template<typename A , size_t... indices> | |
static values_t | MaterializePhisImpl (A &assembler, BlockData &data, std::index_sequence< indices... >) |
Protected Attributes | |
BlockData | data_ |
bool | has_incoming_jump_ = false |
Static Protected Attributes | |
static constexpr size_t | size = sizeof...(Ts) |
Definition at line 386 of file assembler.h.
using v8::internal::compiler::turboshaft::LabelBase< loop, Ts >::const_or_values_t = std::tuple<maybe_const_or_v_t<Ts>...> |
Definition at line 396 of file assembler.h.
using v8::internal::compiler::turboshaft::LabelBase< loop, Ts >::recorded_values_t = std::tuple<base::SmallVector<V<Ts>, 2>...> |
Definition at line 397 of file assembler.h.
using v8::internal::compiler::turboshaft::LabelBase< loop, Ts >::values_t = std::tuple<V<Ts>...> |
Definition at line 395 of file assembler.h.
|
protecteddelete |
|
inlineexplicitprotected |
Definition at line 458 of file assembler.h.
|
inlineprotected |
Definition at line 462 of file assembler.h.
|
inline |
|
inline |
Definition at line 399 of file assembler.h.
|
inline |
|
inline |
|
inline |
|
inline |
|
inlineprotected |
Definition at line 499 of file assembler.h.
|
inlinestaticprotected |
Definition at line 505 of file assembler.h.
|
protecteddelete |
|
inlinestaticprotected |
Definition at line 466 of file assembler.h.
|
inlinestaticprotected |
Definition at line 478 of file assembler.h.
|
protected |
Definition at line 525 of file assembler.h.
|
protected |
Definition at line 526 of file assembler.h.
|
staticconstexpr |
Definition at line 394 of file assembler.h.
|
staticconstexprprotected |
Definition at line 388 of file assembler.h.