Wire Sysio Wire Sysion 1.0.0
|
Typedefs | |
typedef Import< Uptr > | FunctionImport |
typedef Import< TableType > | TableImport |
typedef Import< MemoryType > | MemoryImport |
typedef Import< GlobalType > | GlobalImport |
Enumerations | |
enum | { maxMemoryPages = (Uptr)65536 } |
enum | { numBytesPerPage = (Uptr)65536 } |
enum | { numBytesPerPageLog2 = (Uptr)16 } |
enum | { requireSharedFlagForAtomicOperators = false } |
enum class | Opcode : U16 { VISIT_OPCODE , maxSingleByteOpcode = 0xcf } |
enum class | ValueType : U8 { any = 0 , i32 = 1 , i64 = 2 , f32 = 3 , f64 = 4 , num , max = num-1 } |
enum class | ResultType : U8 { none = 0 , i32 = (U8)ValueType::i32 , i64 = (U8)ValueType::i64 , f32 = (U8)ValueType::f32 , f64 = (U8)ValueType::f64 , num , max = num-1 } |
enum class | TableElementType : U8 { anyfunc = 0x70 } |
enum class | ObjectKind : U8 { function = 0 , table = 1 , memory = 2 , global = 3 , module = 4 , max = 4 , invalid = 0xff } |
Functions | |
bool | findUserSection (const Module &module, const char *userSectionName, Uptr &outUserSectionIndex) |
IR_API void | getDisassemblyNames (const Module &module, DisassemblyNames &outNames) |
IR_API void | setDisassemblyNames (Module &module, const DisassemblyNames &names) |
PACKED_STRUCT (template< typename Imm > struct OpcodeAndImm { Opcode opcode;Imm imm;}) | |
IR_API const char * | getOpcodeName (Opcode opcode) |
std::string | asString (I32 value) |
std::string | asString (I64 value) |
std::string | asString (F32 value) |
std::string | asString (F64 value) |
U8 | getTypeBitWidth (ValueType type) |
const char * | asString (ValueType type) |
Uptr | getArity (ResultType returnType) |
const char * | asString (ResultType type) |
ValueType | asValueType (ResultType type) |
ResultType | asResultType (ValueType type) |
std::string | asString (const std::vector< ValueType > &typeTuple) |
std::string | asString (const FunctionType *functionType) |
std::string | asString (const GlobalType &globalType) |
std::string | asString (const ObjectType &objectType) |
IR_API void | validateDefinitions (const IR::Module &module) |
template<typename Key , typename Value , typename CreateValueThunk > | |
Value | findExistingOrCreateNew (std::map< Key, Value > &map, Key &&key, CreateValueThunk createValueThunk) |
void | validate (ValueType valueType) |
void | validate (ResultType returnType) |
void | validate (ObjectKind kind) |
void | validate (SizeConstraints size, Uptr maxMax) |
void | validate (TableElementType type) |
void | validate (TableType type) |
void | validate (MemoryType type) |
void | validate (GlobalType type) |
void | validateImportKind (ObjectType importType, ObjectKind expectedKind) |
template<typename Type > | |
void | validateType (Type expectedType, Type actualType, const char *context) |
void | validateOperandType (ValueType expectedType, ValueType actualType, const char *context) |
ValueType | validateGlobalIndex (const Module &module, Uptr globalIndex, bool mustBeMutable, bool mustBeImmutable, bool mustBeImport, const char *context) |
const FunctionType * | validateFunctionIndex (const Module &module, Uptr functionIndex) |
void | validateInitializer (const Module &module, const InitializerExpression &expression, ValueType expectedType, const char *context) |
template<typename Stream > | |
void | serialize (Stream &stream, ValueType &type) |
template<typename Stream > | |
void | serialize (Stream &stream, SizeConstraints &sizeConstraints, bool hasMax) |
template<typename Stream > | |
void | serialize (Stream &stream, TableElementType &elementType) |
template<typename Stream > | |
void | serialize (Stream &stream, TableType &tableType) |
template<typename Stream > | |
void | serialize (Stream &stream, MemoryType &memoryType) |
template<typename Stream > | |
void | serialize (Stream &stream, GlobalType &globalType) |
template<typename Stream > | |
void | serialize (Stream &stream, ObjectKind &kind) |
template<typename Stream > | |
void | serialize (Stream &stream, Export &e) |
template<typename Stream > | |
void | serialize (Stream &stream, InitializerExpression &initializer) |
template<typename Stream > | |
void | serialize (Stream &stream, TableDef &tableDef) |
template<typename Stream > | |
void | serialize (Stream &stream, MemoryDef &memoryDef) |
template<typename Stream > | |
void | serialize (Stream &stream, GlobalDef &globalDef) |
template<typename Stream > | |
void | serialize (Stream &stream, DataSegment &dataSegment) |
template<typename Stream > | |
void | serialize (Stream &stream, TableSegment &tableSegment) |
typedef Import<Uptr> IR::FunctionImport |
typedef Import<GlobalType> IR::GlobalImport |
typedef Import<MemoryType> IR::MemoryImport |
typedef Import<TableType> IR::TableImport |
|
strong |
|
strong |
Enumerator | |
---|---|
VISIT_OPCODE | |
maxSingleByteOpcode |
Definition at line 575 of file Operators.h.
|
strong |
|
strong |
|
strong |
|
inline |
Definition at line 186 of file Types.h.
|
inline |
|
inline |
|
inline |
Definition at line 358 of file Types.h.
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
Definition at line 163 of file Types.h.
|
inline |
Definition at line 116 of file Types.h.
|
inline |
Definition at line 180 of file Types.h.
Value IR::findExistingOrCreateNew | ( | std::map< Key, Value > & | map, |
Key && | key, | ||
CreateValueThunk | createValueThunk ) |
|
inline |
|
inline |
void IR::getDisassemblyNames | ( | const Module & | module, |
DisassemblyNames & | outNames ) |
Definition at line 11 of file DisassemblyNames.cpp.
const char * IR::getOpcodeName | ( | Opcode | opcode | ) |
Definition at line 5 of file Operators.cpp.
Definition at line 101 of file Types.h.
void IR::serialize | ( | Stream & | stream, |
DataSegment & | dataSegment ) |
Definition at line 162 of file WASMSerialization.cpp.
Definition at line 118 of file WASMSerialization.cpp.
Definition at line 155 of file WASMSerialization.cpp.
void IR::serialize | ( | Stream & | stream, |
GlobalType & | globalType ) |
Definition at line 103 of file WASMSerialization.cpp.
void IR::serialize | ( | Stream & | stream, |
InitializerExpression & | initializer ) |
Definition at line 127 of file WASMSerialization.cpp.
Definition at line 149 of file WASMSerialization.cpp.
void IR::serialize | ( | Stream & | stream, |
MemoryType & | memoryType ) |
Definition at line 88 of file WASMSerialization.cpp.
void IR::serialize | ( | Stream & | stream, |
ObjectKind & | kind ) |
void IR::serialize | ( | Stream & | stream, |
SizeConstraints & | sizeConstraints, | ||
bool | hasMax ) |
Definition at line 57 of file WASMSerialization.cpp.
Definition at line 143 of file WASMSerialization.cpp.
void IR::serialize | ( | Stream & | stream, |
TableElementType & | elementType ) |
void IR::serialize | ( | Stream & | stream, |
TableSegment & | tableSegment ) |
Definition at line 170 of file WASMSerialization.cpp.
Definition at line 71 of file WASMSerialization.cpp.
Definition at line 26 of file WASMSerialization.cpp.
void IR::setDisassemblyNames | ( | Module & | module, |
const DisassemblyNames & | names ) |
Definition at line 131 of file DisassemblyNames.cpp.
void IR::validate | ( | GlobalType | type | ) |
Definition at line 77 of file Validate.cpp.
void IR::validate | ( | MemoryType | type | ) |
Definition at line 68 of file Validate.cpp.
void IR::validate | ( | ObjectKind | kind | ) |
Definition at line 38 of file Validate.cpp.
void IR::validate | ( | ResultType | returnType | ) |
Definition at line 30 of file Validate.cpp.
void IR::validate | ( | SizeConstraints | size, |
Uptr | maxMax ) |
Definition at line 46 of file Validate.cpp.
void IR::validate | ( | TableElementType | type | ) |
Definition at line 53 of file Validate.cpp.
void IR::validate | ( | TableType | type | ) |
Definition at line 58 of file Validate.cpp.
void IR::validate | ( | ValueType | valueType | ) |
Definition at line 22 of file Validate.cpp.
void IR::validateDefinitions | ( | const IR::Module & | module | ) |
Definition at line 556 of file Validate.cpp.
const FunctionType * IR::validateFunctionIndex | ( | const Module & | module, |
Uptr | functionIndex ) |
Definition at line 119 of file Validate.cpp.
ValueType IR::validateGlobalIndex | ( | const Module & | module, |
Uptr | globalIndex, | ||
bool | mustBeMutable, | ||
bool | mustBeImmutable, | ||
bool | mustBeImport, | ||
const char * | context ) |
Definition at line 109 of file Validate.cpp.
void IR::validateImportKind | ( | ObjectType | importType, |
ObjectKind | expectedKind ) |
Definition at line 82 of file Validate.cpp.
void IR::validateInitializer | ( | const Module & | module, |
const InitializerExpression & | expression, | ||
ValueType | expectedType, | ||
const char * | context ) |
Definition at line 125 of file Validate.cpp.
Definition at line 100 of file Validate.cpp.
void IR::validateType | ( | Type | expectedType, |
Type | actualType, | ||
const char * | context ) |
Definition at line 91 of file Validate.cpp.