module wasm.defines

Code Map

module wasm.defines;


enum Ident;
enum Version;

enum Section
{
	Custom,
	Type,
	Import,
	Function,
	Table,
	Memory,
	Global,
	Export,
	Start,
	Element,
	Code,
	Data,
}

enum ExternalKind
{
	Function,
	Table,
	Memory,
	Global,
}

enum Type
{
	I32,
	I64,
	F32,
	F64,
	AnyFunc,
	Func,
	Void,
}

enum Opcode
{
	Unreachable,
	Nop,
	Block,
	Loop,
	If,
	Else,
	End,
	Br,
	BrIf,
	BrTable,
	Return,
	Call,
	CallIndirect,
	Drop,
	Select,
	GetLocal,
	SetLocal,
	TeeLocal,
	GetGlobal,
	SetGlobal,
	I32Load,
	I64Load,
	F32Load,
	F64Load,
	I32Load8S,
	I32Load8U,
	I32Load16S,
	I32Load16U,
	I64Load8S,
	I64Load8U,
	I64Load16S,
	I64Load16U,
	I64Load32S,
	I64Load32U,
	I32Store,
	I64Store,
	F32Store,
	F64Store,
	I32Store8,
	I32Store16,
	I64Store8,
	I64Store16,
	I64Store32,
	CurrentMemory,
	GrowMemory,
	I32Const,
	I64Const,
	F32Const,
	F64Const,
	I32Eqz,
	I32Eq,
	I32Ne,
	I32LtS,
	I32LtU,
	I32GtS,
	I32GtU,
	I32LeS,
	I32LeU,
	I32GeS,
	I32GeU,
	I64Eqz,
	I64Eq,
	I64Ne,
	I64LtS,
	I64LtU,
	I64GtS,
	I64GtU,
	I64LeS,
	I64LeU,
	I64GeS,
	I64GeU,
	F32Eq,
	F32Ne,
	F32Lt,
	F32Gt,
	F32Le,
	F32Ge,
	F64Eq,
	F64Ne,
	F64Lt,
	F64Gt,
	F64Le,
	F64Ge,
	I32Clz,
	I32Ctz,
	I32Popcnt,
	I32Add,
	I32Sub,
	I32Mul,
	I32DivS,
	I32DivU,
	I32RemS,
	I32RemU,
	I32And,
	I32Or,
	I32Xor,
	I32Shl,
	I32ShrS,
	I32ShrU,
	I32Rotl,
	I32Rotr,
	I64Clz,
	I64Ctz,
	I64Popcnt,
	I64Add,
	I64Sub,
	I64Mul,
	I64DivS,
	I64DivU,
	I64RemS,
	I64RemU,
	I64And,
	I64Or,
	I64Xor,
	I64Shl,
	I64ShrS,
	I64ShrU,
	I64Rotl,
	I64Rotr,
	F32Abs,
	F32Neg,
	F32Ceil,
	F32Floor,
	F32Trunc,
	F32Nearest,
	F32Sqrt,
	F32Add,
	F32Sub,
	F32Mul,
	F32Div,
	F32Min,
	F32Max,
	F32Copysign,
	F64Abs,
	F64Neg,
	F64Ceil,
	F64Floor,
	F64Trunc,
	F64Nearest,
	F64Sqrt,
	F64Add,
	F64Sub,
	F64Mul,
	F64Div,
	F64Min,
	F64Max,
	F64Copysign,
	I32WrapI64,
	I32TruncSF32,
	I32TruncUF32,
	I32TruncSF64,
	I32TruncUF64,
	I64ExtendSI32,
	I64ExtendUI32,
	I64TruncSF32,
	I64TruncUF32,
	I64TruncSF64,
	I64TruncUF64,
	F32ConvertSI32,
	F32ConvertUI32,
	F32ConvertSI64,
	F32ConvertUI64,
	F32DemoteF64,
	F64ConvertSI32,
	F64ConvertUI32,
	F64ConvertSI64,
	F64ConvertUI64,
	F64PromoteF32,
	I32ReinterpretF32,
	I64ReinterpretF64,
	F32ReinterpretI32,
	F64ReinterpretI64,
}

enum RelocType
{
	FuncIndexLEB,
	TableIndexSLEB,
	TableIndexI32,
	MemoryAddressLEB,
	MemoryAddressSLEB,
	MemoryAddressI32,
	TypeIndexLEB,
	GlobalIndexLEB,
}

fn sectionToString(s: Section) string { }
fn externalKindToString(ek: ExternalKind) string { }
fn typeToString(t: Type) string { }
fn opToString(op: Opcode) string { }
fn relocToString(reloc: RelocType) string { }