1 // D import file generated from importC 2 module wasm3.binding.binding; 3 4 5 extern (C) 6 @nogc @system nothrow: 7 8 alias M3Result = const(char)*; 9 alias IM3Environment = M3Environment*; 10 alias IM3Runtime = M3Runtime*; 11 alias IM3Module = M3Module*; 12 alias IM3Function = M3Function*; 13 alias IM3Global = M3Global*; 14 15 struct M3ErrorInfo 16 { 17 const(char)* result = void; 18 M3Runtime* runtime = void; 19 M3Module* mod = void; 20 M3Function* func = void; 21 const(char)* file = void; 22 uint line = void; 23 const(char)* message = void; 24 } 25 26 struct M3BacktraceFrame 27 { 28 uint moduleOffset = void; 29 M3Function* func = void; 30 M3BacktraceFrame* next = void; 31 } 32 33 alias IM3BacktraceFrame = M3BacktraceFrame*; 34 struct M3BacktraceInfo 35 { 36 M3BacktraceFrame* frames = void; 37 M3BacktraceFrame* lastFrame = void; 38 } 39 40 alias IM3BacktraceInfo = M3BacktraceInfo*; 41 enum M3ValueType 42 { 43 c_m3Type_none = 0, 44 c_m3Type_i32 = 1, 45 c_m3Type_i64 = 2, 46 c_m3Type_f32 = 3, 47 c_m3Type_f64 = 4, 48 c_m3Type_unknown, 49 } 50 51 alias c_m3Type_none = M3ValueType.c_m3Type_none; 52 alias c_m3Type_i32 = M3ValueType.c_m3Type_i32; 53 alias c_m3Type_i64 = M3ValueType.c_m3Type_i64; 54 alias c_m3Type_f32 = M3ValueType.c_m3Type_f32; 55 alias c_m3Type_f64 = M3ValueType.c_m3Type_f64; 56 alias c_m3Type_unknown = M3ValueType.c_m3Type_unknown; 57 struct M3TaggedValue 58 { 59 M3ValueType type = void; 60 M3ValueUnion value = {0}; 61 } 62 63 union M3ValueUnion 64 { 65 uint i32; 66 ulong i64; 67 float f32; 68 double f64; 69 } 70 71 alias IM3TaggedValue = M3TaggedValue*; 72 struct M3ImportInfo 73 { 74 const(char)* moduleUtf8 = void; 75 const(char)* fieldUtf8 = void; 76 } 77 78 alias IM3ImportInfo = M3ImportInfo*; 79 struct M3ImportContext 80 { 81 void* userdata = void; 82 M3Function* func = void; 83 } 84 85 alias IM3ImportContext = M3ImportContext*; 86 extern __gshared const(char*) m3Err_none; 87 extern __gshared const(char*) m3Err_mallocFailed; 88 extern __gshared const(char*) m3Err_incompatibleWasmVersion; 89 extern __gshared const(char*) m3Err_wasmMalformed; 90 extern __gshared const(char*) m3Err_misorderedWasmSection; 91 extern __gshared const(char*) m3Err_wasmUnderrun; 92 extern __gshared const(char*) m3Err_wasmOverrun; 93 extern __gshared const(char*) m3Err_wasmMissingInitExpr; 94 extern __gshared const(char*) m3Err_lebOverflow; 95 extern __gshared const(char*) m3Err_missingUTF8; 96 extern __gshared const(char*) m3Err_wasmSectionUnderrun; 97 extern __gshared const(char*) m3Err_wasmSectionOverrun; 98 extern __gshared const(char*) m3Err_invalidTypeId; 99 extern __gshared const(char*) m3Err_tooManyMemorySections; 100 extern __gshared const(char*) m3Err_tooManyArgsRets; 101 extern __gshared const(char*) m3Err_moduleNotLinked; 102 extern __gshared const(char*) m3Err_moduleAlreadyLinked; 103 extern __gshared const(char*) m3Err_functionLookupFailed; 104 extern __gshared const(char*) m3Err_functionImportMissing; 105 extern __gshared const(char*) m3Err_malformedFunctionSignature; 106 extern __gshared const(char*) m3Err_noCompiler; 107 extern __gshared const(char*) m3Err_unknownOpcode; 108 extern __gshared const(char*) m3Err_restrictedOpcode; 109 extern __gshared const(char*) m3Err_functionStackOverflow; 110 extern __gshared const(char*) m3Err_functionStackUnderrun; 111 extern __gshared const(char*) m3Err_mallocFailedCodePage; 112 extern __gshared const(char*) m3Err_settingImmutableGlobal; 113 extern __gshared const(char*) m3Err_typeMismatch; 114 extern __gshared const(char*) m3Err_typeCountMismatch; 115 extern __gshared const(char*) m3Err_missingCompiledCode; 116 extern __gshared const(char*) m3Err_wasmMemoryOverflow; 117 extern __gshared const(char*) m3Err_globalMemoryNotAllocated; 118 extern __gshared const(char*) m3Err_globaIndexOutOfBounds; 119 extern __gshared const(char*) m3Err_argumentCountMismatch; 120 extern __gshared const(char*) m3Err_argumentTypeMismatch; 121 extern __gshared const(char*) m3Err_globalLookupFailed; 122 extern __gshared const(char*) m3Err_globalTypeMismatch; 123 extern __gshared const(char*) m3Err_globalNotMutable; 124 extern __gshared const(char*) m3Err_trapOutOfBoundsMemoryAccess; 125 extern __gshared const(char*) m3Err_trapDivisionByZero; 126 extern __gshared const(char*) m3Err_trapIntegerOverflow; 127 extern __gshared const(char*) m3Err_trapIntegerConversion; 128 extern __gshared const(char*) m3Err_trapIndirectCallTypeMismatch; 129 extern __gshared const(char*) m3Err_trapTableIndexOutOfRange; 130 extern __gshared const(char*) m3Err_trapTableElementIsNull; 131 extern __gshared const(char*) m3Err_trapExit; 132 extern __gshared const(char*) m3Err_trapAbort; 133 extern __gshared const(char*) m3Err_trapUnreachable; 134 extern __gshared const(char*) m3Err_trapStackOverflow; 135 M3Environment* m3_NewEnvironment(); 136 void m3_FreeEnvironment(M3Environment* i_environment); 137 alias M3SectionHandler = const(char)* function(M3Module* i_module, const(char)* name, const(ubyte)* start, const( 138 ubyte)* end); 139 void m3_SetCustomSectionHandler(M3Environment* i_environment, const(char)* function( 140 M3Module* i_module, const(char)* name, const(ubyte)* start, const(ubyte)* end) i_handler); 141 M3Runtime* m3_NewRuntime(M3Environment* io_environment, uint i_stackSizeInBytes, void* i_userdata); 142 void m3_FreeRuntime(M3Runtime* i_runtime); 143 ubyte* m3_GetMemory(M3Runtime* i_runtime, uint* o_memorySizeInBytes, uint i_memoryIndex); 144 uint m3_GetMemorySize(M3Runtime* i_runtime); 145 void* m3_GetUserData(M3Runtime* i_runtime); 146 const(char)* m3_ParseModule(M3Environment* i_environment, M3Module** o_module, const(ubyte)* i_wasmBytes, uint i_numWasmBytes); 147 void m3_FreeModule(M3Module* i_module); 148 const(char)* m3_LoadModule(M3Runtime* io_runtime, M3Module* io_module); 149 const(char)* m3_CompileModule(M3Module* io_module); 150 const(char)* m3_RunStart(M3Module* i_module); 151 alias M3RawCall = const(void)* function(M3Runtime* runtime, M3ImportContext* _ctx, uint* _sp, void* _mem); 152 const(char)* m3_LinkRawFunction(M3Module* io_module, const(char)* i_moduleName, const(char)* i_functionName, const(char)* i_signature, const( 153 void)* function(M3Runtime* runtime, M3ImportContext* _ctx, uint* _sp, void* _mem) i_function); 154 const(char)* m3_LinkRawFunctionEx(M3Module* io_module, const(char)* i_moduleName, const(char)* i_functionName, const(char)* i_signature, const( 155 void)* function(M3Runtime* runtime, M3ImportContext* _ctx, uint* _sp, void* _mem) i_function, const( 156 void)* i_userdata); 157 const(char)* m3_GetModuleName(M3Module* i_module); 158 void m3_SetModuleName(M3Module* i_module, const(char)* name); 159 M3Runtime* m3_GetModuleRuntime(M3Module* i_module); 160 M3Global* m3_FindGlobal(M3Module* io_module, const(char)* i_globalName); 161 const(char)* m3_GetGlobal(M3Global* i_global, M3TaggedValue* o_value); 162 const(char)* m3_SetGlobal(M3Global* i_global, M3TaggedValue* i_value); 163 M3ValueType m3_GetGlobalType(M3Global* i_global); 164 const(char)* m3_Yield(); 165 const(char)* m3_FindFunction(M3Function** o_function, M3Runtime* i_runtime, const(char)* i_functionName); 166 const(char)* m3_GetTableFunction(M3Function** o_function, M3Module* i_module, uint i_index); 167 uint m3_GetArgCount(M3Function* i_function); 168 uint m3_GetRetCount(M3Function* i_function); 169 M3ValueType m3_GetArgType(M3Function* i_function, uint i_index); 170 M3ValueType m3_GetRetType(M3Function* i_function, uint i_index); 171 const(char)* m3_CallV(M3Function* i_function, ...); 172 const(char)* m3_CallVL(M3Function* i_function, __builtin_va_list i_args); 173 const(char)* m3_Call(M3Function* i_function, uint i_argc, const(void)*[0] i_argptrs); 174 const(char)* m3_CallArgv(M3Function* i_function, uint i_argc, const(char)** i_argv); 175 const(char)* m3_GetResultsV(M3Function* i_function, ...); 176 const(char)* m3_GetResultsVL(M3Function* i_function, __builtin_va_list o_rets); 177 const(char)* m3_GetResults(M3Function* i_function, uint i_retc, const(void)*[0] o_retptrs); 178 void m3_GetErrorInfo(M3Runtime* i_runtime, M3ErrorInfo* o_info); 179 void m3_ResetErrorInfo(M3Runtime* i_runtime); 180 const(char)* m3_GetFunctionName(M3Function* i_function); 181 M3Module* m3_GetFunctionModule(M3Function* i_function); 182 void m3_PrintRuntimeInfo(M3Runtime* i_runtime); 183 void m3_PrintM3Info(); 184 void m3_PrintProfilerInfo(); 185 M3BacktraceInfo* m3_GetBacktrace(M3Runtime* i_runtime); 186 187 alias m3ret_t = const(void)*; 188 alias voidptr_t = const(void)*; 189 alias cstr_t = const(char)*; 190 alias ccstr_t = const(char*); 191 alias bytes_t = const(ubyte)*; 192 alias cbytes_t = const(ubyte*); 193 alias m3opcode_t = ushort; 194 alias m3reg_t = int; 195 alias m3slot_t = uint; 196 alias m3stack_t = uint*; 197 alias cvptr_t = const(void*); 198 alias code_t = void*; 199 alias pc_t = void**; 200 struct M3MemoryHeader 201 { 202 M3Runtime* runtime = void; 203 void* maxStack = void; 204 uint length = void; 205 } 206 207 struct M3CodeMappingPage; 208 struct M3CodePageHeader 209 { 210 M3CodePage* next = void; 211 uint lineIndex = void; 212 uint numLines = void; 213 uint sequence = void; 214 uint usageCount = void; 215 } 216 217 static extern __gshared const(char*)[0] c_waTypes; 218 static extern __gshared const(char*)[0] c_waCompactTypes; 219 const(char)* m3Error(const(char)* i_result, M3Runtime* i_runtime, M3Module* i_module, M3Function* i_function, const( 220 char)* i_file, uint i_lineNum, const(char)* i_errorMessage, ...); 221 void m3_Abort(const(char)* message); 222 void* m3_Malloc_Impl(uint i_size); 223 void* m3_Realloc_Impl(void* i_ptr, uint i_newSize, uint i_oldSize); 224 void m3_Free_Impl(void* i_ptr); 225 void* m3_CopyMem(const(void)* i_from, uint i_size); 226 const(char)* NormalizeType(ubyte* o_type, byte i_convolutedWasmType); 227 bool IsIntType(ubyte i_wasmType); 228 bool IsFpType(ubyte i_wasmType); 229 bool Is64BitType(ubyte i_m3Type); 230 uint SizeOfType(ubyte i_m3Type); 231 const(char)* Read_u64(uint* o_value, const(ubyte)** io_bytes, const(ubyte*) i_end); 232 const(char)* Read_u32(uint* o_value, const(ubyte)** io_bytes, const(ubyte*) i_end); 233 const(char)* Read_f64(double* o_value, const(ubyte)** io_bytes, const(ubyte*) i_end); 234 const(char)* Read_f32(float* o_value, const(ubyte)** io_bytes, const(ubyte*) i_end); 235 const(char)* Read_u8(ubyte* o_value, const(ubyte)** io_bytes, const(ubyte*) i_end); 236 const(char)* Read_opcode(ushort* o_value, const(ubyte)** io_bytes, const(ubyte*) i_end); 237 const(char)* ReadLebUnsigned(uint* o_value, uint i_maxNumBits, const(ubyte)** io_bytes, const( 238 ubyte*) i_end); 239 const(char)* ReadLebSigned(int* o_value, uint i_maxNumBits, const(ubyte)** io_bytes, const(ubyte*) i_end); 240 const(char)* ReadLEB_u32(uint* o_value, const(ubyte)** io_bytes, const(ubyte*) i_end); 241 const(char)* ReadLEB_u7(ubyte* o_value, const(ubyte)** io_bytes, const(ubyte*) i_end); 242 const(char)* ReadLEB_i7(byte* o_value, const(ubyte)** io_bytes, const(ubyte*) i_end); 243 const(char)* ReadLEB_i32(int* o_value, const(ubyte)** io_bytes, const(ubyte*) i_end); 244 const(char)* ReadLEB_i64(int* o_value, const(ubyte)** io_bytes, const(ubyte*) i_end); 245 const(char)* Read_utf8(const(char)** o_utf8, const(ubyte)** io_bytes, const(ubyte*) i_end); 246 const(char)* SPrintValue(void* i_value, ubyte i_type); 247 uint SPrintArg(char* o_string, uint i_stringBufferSize, const(void)* i_sp, ubyte i_type); 248 void ReportError(M3Runtime* io_runtime, M3Module* i_module, M3Function* i_function, const(char*) i_errorMessage, const( 249 char*) i_file, uint i_lineNum); 250 const(char)* m3_LinkLibC(M3Module* io_module); 251 const(char)* m3_LinkSpecTest(M3Module* io_module); 252 struct m3_wasi_context_t 253 { 254 int exit_code = void; 255 uint argc = void; 256 const(char*)* argv = void; 257 } 258 259 const(char)* m3_LinkWASI(M3Module* io_module); 260 m3_wasi_context_t* m3_GetWasiContext(); 261 struct M3CodePage 262 { 263 M3CodePageHeader info = void; 264 void*[1] code = void; 265 } 266 267 alias IM3CodePage = M3CodePage*; 268 M3CodePage* NewCodePage(M3Runtime* i_runtime, uint i_minNumLines); 269 void FreeCodePages(M3CodePage** io_list); 270 uint NumFreeLines(M3CodePage* i_page); 271 void** GetPageStartPC(M3CodePage* i_page); 272 void** GetPagePC(M3CodePage* i_page); 273 void EmitWord_impl(M3CodePage* i_page, void* i_word); 274 void EmitWord32(M3CodePage* i_page, uint i_word); 275 void EmitWord64(M3CodePage* i_page, uint i_word); 276 void PushCodePage(M3CodePage** io_list, M3CodePage* i_codePage); 277 M3CodePage* PopCodePage(M3CodePage** io_list); 278 M3CodePage* GetEndCodePage(M3CodePage* i_list); 279 uint CountCodePages(M3CodePage* i_list); 280 alias IM3Operation = const(void)* function(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 281 static const(void)* RunCode(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 282 struct M3FuncType 283 { 284 M3FuncType* next = void; 285 ushort numRets = void; 286 ushort numArgs = void; 287 ubyte[0] types = void; 288 } 289 290 alias IM3FuncType = M3FuncType*; 291 const(char)* AllocFuncType(M3FuncType** o_functionType, uint i_numTypes); 292 bool AreFuncTypesEqual(M3FuncType* i_typeA, M3FuncType* i_typeB); 293 ushort GetFuncTypeNumParams(M3FuncType* i_funcType); 294 ubyte GetFuncTypeParamType(M3FuncType* i_funcType, ushort i_index); 295 ushort GetFuncTypeNumResults(M3FuncType* i_funcType); 296 ubyte GetFuncTypeResultType(M3FuncType* i_funcType, ushort i_index); 297 struct M3Function 298 { 299 M3Module* mod = void; 300 301 const(ubyte)* wasm = void; 302 const(ubyte)* wasmEnd = void; 303 const(char)*[3] names = void; 304 const(char)* export_name = void; 305 ushort numNames = void; 306 M3FuncType* funcType = void; 307 void** compiled = void; 308 ushort maxStackSlots = void; 309 ushort numRetSlots = void; 310 ushort numRetAndArgSlots = void; 311 ushort numLocals = void; 312 ushort numLocalBytes = void; 313 bool ownsWasmCode = void; 314 ushort numConstantBytes = void; 315 void* constants = void; 316 } 317 318 void Function_Release(M3Function* i_function); 319 void Function_FreeCompiledCode(M3Function* i_function); 320 const(char)* GetFunctionImportModuleName(M3Function* i_function); 321 const(char)** GetFunctionNames(M3Function* i_function, ushort* o_numNames); 322 ushort GetFunctionNumArgs(M3Function* i_function); 323 ubyte GetFunctionArgType(M3Function* i_function, uint i_index); 324 ushort GetFunctionNumReturns(M3Function* i_function); 325 ubyte GetFunctionReturnType(M3Function* i_function, ushort i_index); 326 uint GetFunctionNumArgsAndLocals(M3Function* i_function); 327 const(char)* SPrintFunctionArgList(M3Function* i_function, uint* i_sp); 328 enum 329 { 330 c_waOp_block = 2, 331 c_waOp_loop = 3, 332 c_waOp_if = 4, 333 c_waOp_else = 5, 334 c_waOp_end = 11, 335 c_waOp_branch = 12, 336 c_waOp_branchTable = 14, 337 c_waOp_branchIf = 13, 338 c_waOp_call = 16, 339 c_waOp_getLocal = 32, 340 c_waOp_setLocal = 33, 341 c_waOp_teeLocal = 34, 342 c_waOp_getGlobal = 35, 343 c_waOp_store_f32 = 56, 344 c_waOp_store_f64 = 57, 345 c_waOp_i32_const = 65, 346 c_waOp_i64_const = 66, 347 c_waOp_f32_const = 67, 348 c_waOp_f64_const = 68, 349 c_waOp_extended = 252, 350 c_waOp_memoryCopy = 64522, 351 c_waOp_memoryFill = 64523, 352 } 353 struct M3CompilationScope 354 { 355 M3CompilationScope* outer = void; 356 void** pc = void; 357 void** patches = void; 358 int depth = void; 359 ushort exitStackIndex = void; 360 ushort blockStackIndex = void; 361 M3FuncType* type = void; 362 ushort opcode = void; 363 bool isPolymorphic = void; 364 } 365 366 alias IM3CompilationScope = M3CompilationScope*; 367 struct M3Compilation 368 { 369 M3Runtime* runtime = void; 370 M3Module* mod = void; 371 const(ubyte)* wasm = void; 372 const(ubyte)* wasmEnd = void; 373 const(ubyte)* lastOpcodeStart = void; 374 M3CompilationScope block = void; 375 M3Function* func = void; 376 M3CodePage* page = void; 377 ushort stackFirstDynamicIndex = void; 378 ushort stackIndex = void; 379 ushort slotFirstConstIndex = void; 380 ushort slotMaxConstIndex = void; 381 ushort slotFirstLocalIndex = void; 382 ushort slotFirstDynamicIndex = void; 383 ushort maxStackSlots = void; 384 uint[120] constants = void; 385 ushort[2000] wasmStack = void; 386 ubyte[2000] typeStack = void; 387 ubyte[2000 * 2] m3Slots = void; 388 ushort slotMaxAllocatedIndexPlusOne = void; 389 ushort[2] regStackIndexPlusOne = void; 390 ushort previousOpcode = void; 391 } 392 393 alias IM3Compilation = M3Compilation*; 394 alias M3Compiler = const(char)* function(M3Compilation*, ushort); 395 struct M3OpInfo 396 { 397 byte stackOffset = void; 398 ubyte type = void; 399 const(void)* function(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0)[4] operations = void; 400 const(char)* function(M3Compilation*, ushort) compiler = void; 401 } 402 403 alias IM3OpInfo = const M3OpInfo*; 404 const(M3OpInfo)* GetOpInfo(ushort opcode); 405 static ubyte GetSingleRetType(M3FuncType* ftype); 406 static extern __gshared const(ushort) c_m3RegisterUnallocated; 407 static extern __gshared const(ushort) c_slotUnused; 408 static bool IsRegisterAllocated(M3Compilation* o, uint i_register); 409 static bool IsStackPolymorphic(M3Compilation* o); 410 static bool IsRegisterSlotAlias(ushort i_slot); 411 static bool IsFpRegisterSlotAlias(ushort i_slot); 412 static bool IsIntRegisterSlotAlias(ushort i_slot); 413 ushort GetMaxUsedSlotPlusOne(M3Compilation* o); 414 const(char)* CompileBlock(M3Compilation* io, M3FuncType* i_blockType, ushort i_blockOpcode); 415 const(char)* CompileBlockStatements(M3Compilation* io); 416 const(char)* CompileFunction(M3Function* io_function); 417 const(char)* CompileRawFunction(M3Module* io_module, M3Function* io_function, const(void)* i_function, const( 418 void)* i_userdata); 419 struct M3MemoryInfo 420 { 421 uint initPages = void; 422 uint maxPages = void; 423 } 424 425 struct M3Memory 426 { 427 M3MemoryHeader* mallocated = void; 428 uint numPages = void; 429 uint maxPages = void; 430 } 431 432 alias IM3Memory = M3Memory*; 433 struct M3DataSegment 434 { 435 const(ubyte)* initExpr = void; 436 const(ubyte)* data = void; 437 uint initExprSize = void; 438 uint memoryRegion = void; 439 uint size = void; 440 } 441 442 struct M3Global 443 { 444 445 union 446 { 447 int i32Value; 448 int i64Value; 449 double f64Value; 450 float f32Value; 451 } 452 453 const(char)* name = void; 454 const(ubyte)* initExpr = void; 455 uint initExprSize = void; 456 ubyte type = void; 457 bool imported = void; 458 bool isMutable = void; 459 } 460 461 struct M3Module 462 { 463 M3Runtime* runtime = void; 464 M3Environment* environment = void; 465 const(ubyte)* wasmStart = void; 466 const(ubyte)* wasmEnd = void; 467 const(char)* name = void; 468 uint numFuncTypes = void; 469 M3FuncType** funcTypes = void; 470 uint numFuncImports = void; 471 uint numFunctions = void; 472 uint allFunctions = void; 473 M3Function* functions = void; 474 int startFunc = void; 475 uint numDataSegments = void; 476 M3DataSegment* dataSegments = void; 477 uint numGlobals = void; 478 M3Global* globals = void; 479 uint numElementSegments = void; 480 const(ubyte)* elementSection = void; 481 const(ubyte)* elementSectionEnd = void; 482 M3Function** table0 = void; 483 uint table0Size = void; 484 const(char)* table0ExportName = void; 485 M3MemoryInfo memoryInfo = void; 486 M3ImportInfo memoryImport = void; 487 bool memoryImported = void; 488 const(char)* memoryExportName = void; 489 M3Module* next = void; 490 } 491 492 const(char)* Module_AddGlobal(M3Module* io_module, M3Global** o_global, ubyte i_type, bool i_mutable, bool i_isImported); 493 const(char)* Module_PreallocFunctions(M3Module* io_module, uint i_totalFunctions); 494 const(char)* Module_AddFunction(M3Module* io_module, uint i_typeIndex, M3ImportInfo* i_importInfo); 495 M3Function* Module_GetFunction(M3Module* i_module, uint i_functionIndex); 496 void Module_GenerateNames(M3Module* i_module); 497 void FreeImportInfo(M3ImportInfo* i_info); 498 struct M3Environment 499 { 500 M3FuncType* funcTypes = void; 501 M3FuncType*[c_m3Type_unknown] retFuncTypes = void; 502 M3CodePage* pagesReleased = void; 503 const(char)* function(M3Module* i_module, const(char)* name, const(ubyte)* start, const(ubyte)* end) customSectionHandler = void; 504 } 505 506 void Environment_Release(M3Environment* i_environment); 507 void Environment_AddFuncType(M3Environment* i_environment, M3FuncType** io_funcType); 508 struct M3Runtime 509 { 510 M3Compilation compilation = void; 511 M3Environment* environment = void; 512 M3CodePage* pagesOpen = void; 513 M3CodePage* pagesFull = void; 514 uint numCodePages = void; 515 uint numActiveCodePages = void; 516 M3Module* modules = void; 517 void* stack = void; 518 void* originStack = void; 519 uint stackSize = void; 520 uint numStackSlots = void; 521 M3Function* lastCalled = void; 522 void* userdata = void; 523 M3Memory memory = void; 524 uint memoryLimit = void; 525 M3ErrorInfo error = void; 526 char[256] error_message = void; 527 uint newCodePageSequence = void; 528 } 529 530 void InitRuntime(M3Runtime* io_runtime, uint i_stackSizeInBytes); 531 void Runtime_Release(M3Runtime* io_runtime); 532 const(char)* ResizeMemory(M3Runtime* io_runtime, uint i_numPages); 533 alias ModuleVisitor = void* function(M3Module* i_module, void* i_info); 534 void* ForEachModule(M3Runtime* i_runtime, void* function(M3Module* i_module, void* i_info) i_visitor, void* i_info); 535 void* v_FindFunction(M3Module* i_module, const(char)* i_name); 536 M3CodePage* AcquireCodePage(M3Runtime* io_runtime); 537 M3CodePage* AcquireCodePageWithCapacity(M3Runtime* io_runtime, uint i_lineCount); 538 void ReleaseCodePage(M3Runtime* io_runtime, M3CodePage* i_codePage); 539 void ProfileHit(const(char)* i_operationName); 540 541 static uint rotl32(uint n, uint c); 542 static uint rotr32(uint n, uint c); 543 static uint rotl64(uint n, uint c); 544 static uint rotr64(uint n, uint c); 545 546 static float min_f32(float a, float b); 547 static float max_f32(float a, float b); 548 static double min_f64(double a, double b); 549 static double max_f64(double a, double b); 550 static const(void)* Call(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 551 static const(void)* op_i32_Equal_rs(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 552 static const(void)* op_i32_Equal_ss(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 553 static const(void)* op_i64_Equal_rs(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 554 static const(void)* op_i64_Equal_ss(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 555 static const(void)* op_i32_NotEqual_rs(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 556 static const(void)* op_i32_NotEqual_ss(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 557 static const(void)* op_i64_NotEqual_rs(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 558 static const(void)* op_i64_NotEqual_ss(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 559 static const(void)* op_i32_LessThan_sr(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 560 static const(void)* op_i32_LessThan_rs(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 561 static const(void)* op_i32_LessThan_ss(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 562 static const(void)* op_i64_LessThan_sr(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 563 static const(void)* op_i64_LessThan_rs(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 564 static const(void)* op_i64_LessThan_ss(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 565 static const(void)* op_i32_GreaterThan_sr(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 566 static const(void)* op_i32_GreaterThan_rs(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 567 static const(void)* op_i32_GreaterThan_ss(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 568 static const(void)* op_i64_GreaterThan_sr(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 569 static const(void)* op_i64_GreaterThan_rs(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 570 static const(void)* op_i64_GreaterThan_ss(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 571 static const(void)* op_i32_LessThanOrEqual_sr(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 572 static const(void)* op_i32_LessThanOrEqual_rs(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 573 static const(void)* op_i32_LessThanOrEqual_ss(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 574 static const(void)* op_i64_LessThanOrEqual_sr(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 575 static const(void)* op_i64_LessThanOrEqual_rs(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 576 static const(void)* op_i64_LessThanOrEqual_ss(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 577 static const(void)* op_i32_GreaterThanOrEqual_sr(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 578 static const(void)* op_i32_GreaterThanOrEqual_rs(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 579 static const(void)* op_i32_GreaterThanOrEqual_ss(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 580 static const(void)* op_i64_GreaterThanOrEqual_sr(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 581 static const(void)* op_i64_GreaterThanOrEqual_rs(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 582 static const(void)* op_i64_GreaterThanOrEqual_ss(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 583 static const(void)* op_u32_LessThan_sr(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 584 static const(void)* op_u32_LessThan_rs(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 585 static const(void)* op_u32_LessThan_ss(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 586 static const(void)* op_u64_LessThan_sr(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 587 static const(void)* op_u64_LessThan_rs(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 588 static const(void)* op_u64_LessThan_ss(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 589 static const(void)* op_u32_GreaterThan_sr(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 590 static const(void)* op_u32_GreaterThan_rs(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 591 static const(void)* op_u32_GreaterThan_ss(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 592 static const(void)* op_u64_GreaterThan_sr(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 593 static const(void)* op_u64_GreaterThan_rs(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 594 static const(void)* op_u64_GreaterThan_ss(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 595 static const(void)* op_u32_LessThanOrEqual_sr(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 596 static const(void)* op_u32_LessThanOrEqual_rs(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 597 static const(void)* op_u32_LessThanOrEqual_ss(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 598 static const(void)* op_u64_LessThanOrEqual_sr(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 599 static const(void)* op_u64_LessThanOrEqual_rs(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 600 static const(void)* op_u64_LessThanOrEqual_ss(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 601 static const(void)* op_u32_GreaterThanOrEqual_sr(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 602 static const(void)* op_u32_GreaterThanOrEqual_rs(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 603 static const(void)* op_u32_GreaterThanOrEqual_ss(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 604 static const(void)* op_u64_GreaterThanOrEqual_sr(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 605 static const(void)* op_u64_GreaterThanOrEqual_rs(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 606 static const(void)* op_u64_GreaterThanOrEqual_ss(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 607 static const(void)* op_f32_Equal_rs(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 608 static const(void)* op_f32_Equal_ss(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 609 static const(void)* op_f64_Equal_rs(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 610 static const(void)* op_f64_Equal_ss(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 611 static const(void)* op_f32_NotEqual_rs(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 612 static const(void)* op_f32_NotEqual_ss(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 613 static const(void)* op_f64_NotEqual_rs(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 614 static const(void)* op_f64_NotEqual_ss(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 615 static const(void)* op_f32_LessThan_sr(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 616 static const(void)* op_f32_LessThan_rs(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 617 static const(void)* op_f32_LessThan_ss(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 618 static const(void)* op_f64_LessThan_sr(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 619 static const(void)* op_f64_LessThan_rs(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 620 static const(void)* op_f64_LessThan_ss(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 621 static const(void)* op_f32_GreaterThan_sr(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 622 static const(void)* op_f32_GreaterThan_rs(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 623 static const(void)* op_f32_GreaterThan_ss(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 624 static const(void)* op_f64_GreaterThan_sr(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 625 static const(void)* op_f64_GreaterThan_rs(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 626 static const(void)* op_f64_GreaterThan_ss(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 627 static const(void)* op_f32_LessThanOrEqual_sr(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 628 static const(void)* op_f32_LessThanOrEqual_rs(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 629 static const(void)* op_f32_LessThanOrEqual_ss(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 630 static const(void)* op_f64_LessThanOrEqual_sr(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 631 static const(void)* op_f64_LessThanOrEqual_rs(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 632 static const(void)* op_f64_LessThanOrEqual_ss(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 633 static const(void)* op_f32_GreaterThanOrEqual_sr(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 634 static const(void)* op_f32_GreaterThanOrEqual_rs(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 635 static const(void)* op_f32_GreaterThanOrEqual_ss(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 636 static const(void)* op_f64_GreaterThanOrEqual_sr(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 637 static const(void)* op_f64_GreaterThanOrEqual_rs(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 638 static const(void)* op_f64_GreaterThanOrEqual_ss(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 639 static const(void)* op_i32_Add_rs(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 640 static const(void)* op_i32_Add_ss(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 641 static const(void)* op_i64_Add_rs(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 642 static const(void)* op_i64_Add_ss(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 643 static const(void)* op_i32_Multiply_rs(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 644 static const(void)* op_i32_Multiply_ss(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 645 static const(void)* op_i64_Multiply_rs(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 646 static const(void)* op_i64_Multiply_ss(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 647 static const(void)* op_i32_Subtract_sr(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 648 static const(void)* op_i32_Subtract_rs(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 649 static const(void)* op_i32_Subtract_ss(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 650 static const(void)* op_i64_Subtract_sr(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 651 static const(void)* op_i64_Subtract_rs(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 652 static const(void)* op_i64_Subtract_ss(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 653 static const(void)* op_u32_ShiftLeft_sr(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 654 static const(void)* op_u32_ShiftLeft_rs(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 655 static const(void)* op_u32_ShiftLeft_ss(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 656 static const(void)* op_u64_ShiftLeft_sr(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 657 static const(void)* op_u64_ShiftLeft_rs(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 658 static const(void)* op_u64_ShiftLeft_ss(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 659 static const(void)* op_i32_ShiftRight_sr(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 660 static const(void)* op_i32_ShiftRight_rs(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 661 static const(void)* op_i32_ShiftRight_ss(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 662 static const(void)* op_i64_ShiftRight_sr(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 663 static const(void)* op_i64_ShiftRight_rs(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 664 static const(void)* op_i64_ShiftRight_ss(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 665 static const(void)* op_u32_ShiftRight_sr(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 666 static const(void)* op_u32_ShiftRight_rs(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 667 static const(void)* op_u32_ShiftRight_ss(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 668 static const(void)* op_u64_ShiftRight_sr(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 669 static const(void)* op_u64_ShiftRight_rs(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 670 static const(void)* op_u64_ShiftRight_ss(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 671 static const(void)* op_u32_And_rs(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 672 static const(void)* op_u32_And_ss(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 673 static const(void)* op_u32_Or_rs(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 674 static const(void)* op_u32_Or_ss(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 675 static const(void)* op_u32_Xor_rs(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 676 static const(void)* op_u32_Xor_ss(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 677 static const(void)* op_u64_And_rs(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 678 static const(void)* op_u64_And_ss(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 679 static const(void)* op_u64_Or_rs(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 680 static const(void)* op_u64_Or_ss(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 681 static const(void)* op_u64_Xor_rs(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 682 static const(void)* op_u64_Xor_ss(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 683 static const(void)* op_f32_Add_rs(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 684 static const(void)* op_f32_Add_ss(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 685 static const(void)* op_f64_Add_rs(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 686 static const(void)* op_f64_Add_ss(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 687 static const(void)* op_f32_Multiply_rs(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 688 static const(void)* op_f32_Multiply_ss(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 689 static const(void)* op_f64_Multiply_rs(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 690 static const(void)* op_f64_Multiply_ss(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 691 static const(void)* op_f32_Subtract_sr(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 692 static const(void)* op_f32_Subtract_rs(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 693 static const(void)* op_f32_Subtract_ss(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 694 static const(void)* op_f64_Subtract_sr(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 695 static const(void)* op_f64_Subtract_rs(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 696 static const(void)* op_f64_Subtract_ss(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 697 static const(void)* op_f32_Divide_sr(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 698 static const(void)* op_f32_Divide_rs(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 699 static const(void)* op_f32_Divide_ss(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 700 static const(void)* op_f64_Divide_sr(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 701 static const(void)* op_f64_Divide_rs(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 702 static const(void)* op_f64_Divide_ss(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 703 static const(void)* op_u32_Rotl_sr(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 704 static const(void)* op_u32_Rotl_rs(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 705 static const(void)* op_u32_Rotl_ss(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 706 static const(void)* op_u32_Rotr_sr(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 707 static const(void)* op_u32_Rotr_rs(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 708 static const(void)* op_u32_Rotr_ss(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 709 static const(void)* op_u64_Rotl_sr(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 710 static const(void)* op_u64_Rotl_rs(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 711 static const(void)* op_u64_Rotl_ss(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 712 static const(void)* op_u64_Rotr_sr(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 713 static const(void)* op_u64_Rotr_rs(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 714 static const(void)* op_u64_Rotr_ss(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 715 static const(void)* op_u32_Divide_sr(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 716 static const(void)* op_u32_Divide_rs(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 717 static const(void)* op_u32_Divide_ss(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 718 static const(void)* op_i32_Divide_sr(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 719 static const(void)* op_i32_Divide_rs(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 720 static const(void)* op_i32_Divide_ss(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 721 static const(void)* op_u64_Divide_sr(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 722 static const(void)* op_u64_Divide_rs(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 723 static const(void)* op_u64_Divide_ss(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 724 static const(void)* op_i64_Divide_sr(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 725 static const(void)* op_i64_Divide_rs(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 726 static const(void)* op_i64_Divide_ss(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 727 static const(void)* op_u32_Remainder_sr(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 728 static const(void)* op_u32_Remainder_rs(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 729 static const(void)* op_u32_Remainder_ss(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 730 static const(void)* op_i32_Remainder_sr(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 731 static const(void)* op_i32_Remainder_rs(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 732 static const(void)* op_i32_Remainder_ss(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 733 static const(void)* op_u64_Remainder_sr(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 734 static const(void)* op_u64_Remainder_rs(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 735 static const(void)* op_u64_Remainder_ss(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 736 static const(void)* op_i64_Remainder_sr(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 737 static const(void)* op_i64_Remainder_rs(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 738 static const(void)* op_i64_Remainder_ss(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 739 static const(void)* op_f32_Min_sr(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 740 static const(void)* op_f32_Min_rs(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 741 static const(void)* op_f32_Min_ss(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 742 static const(void)* op_f32_Max_sr(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 743 static const(void)* op_f32_Max_rs(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 744 static const(void)* op_f32_Max_ss(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 745 static const(void)* op_f64_Min_sr(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 746 static const(void)* op_f64_Min_rs(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 747 static const(void)* op_f64_Min_ss(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 748 static const(void)* op_f64_Max_sr(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 749 static const(void)* op_f64_Max_rs(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 750 static const(void)* op_f64_Max_ss(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 751 static const(void)* op_f32_CopySign_sr(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 752 static const(void)* op_f32_CopySign_rs(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 753 static const(void)* op_f32_CopySign_ss(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 754 static const(void)* op_f64_CopySign_sr(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 755 static const(void)* op_f64_CopySign_rs(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 756 static const(void)* op_f64_CopySign_ss(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 757 static const(void)* op_f32_Abs_r(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 758 static const(void)* op_f32_Abs_s(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 759 static const(void)* op_f64_Abs_r(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 760 static const(void)* op_f64_Abs_s(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 761 static const(void)* op_f32_Ceil_r(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 762 static const(void)* op_f32_Ceil_s(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 763 static const(void)* op_f64_Ceil_r(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 764 static const(void)* op_f64_Ceil_s(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 765 static const(void)* op_f32_Floor_r(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 766 static const(void)* op_f32_Floor_s(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 767 static const(void)* op_f64_Floor_r(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 768 static const(void)* op_f64_Floor_s(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 769 static const(void)* op_f32_Trunc_r(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 770 static const(void)* op_f32_Trunc_s(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 771 static const(void)* op_f64_Trunc_r(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 772 static const(void)* op_f64_Trunc_s(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 773 static const(void)* op_f32_Sqrt_r(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 774 static const(void)* op_f32_Sqrt_s(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 775 static const(void)* op_f64_Sqrt_r(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 776 static const(void)* op_f64_Sqrt_s(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 777 static const(void)* op_f32_Nearest_r(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 778 static const(void)* op_f32_Nearest_s(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 779 static const(void)* op_f64_Nearest_r(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 780 static const(void)* op_f64_Nearest_s(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 781 static const(void)* op_f32_Negate_r(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 782 static const(void)* op_f32_Negate_s(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 783 static const(void)* op_f64_Negate_r(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 784 static const(void)* op_f64_Negate_s(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 785 static const(void)* op_i32_EqualToZero_r(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 786 static const(void)* op_i32_EqualToZero_s(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 787 static const(void)* op_i64_EqualToZero_r(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 788 static const(void)* op_i64_EqualToZero_s(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 789 static const(void)* op_i32_Wrap_i64_r(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 790 static const(void)* op_i32_Wrap_i64_s(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 791 static const(void)* op_i32_Extend8_s_r(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 792 static const(void)* op_i32_Extend8_s_s(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 793 static const(void)* op_i32_Extend16_s_r(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 794 static const(void)* op_i32_Extend16_s_s(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 795 static const(void)* op_i64_Extend8_s_r(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 796 static const(void)* op_i64_Extend8_s_s(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 797 static const(void)* op_i64_Extend16_s_r(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 798 static const(void)* op_i64_Extend16_s_s(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 799 static const(void)* op_i64_Extend32_s_r(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 800 static const(void)* op_i64_Extend32_s_s(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 801 static const(void)* op_i32_Trunc_f32_r_r(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 802 static const(void)* op_i32_Trunc_f32_r_s(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 803 static const(void)* op_i32_Trunc_f32_s_r(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 804 static const(void)* op_i32_Trunc_f32_s_s(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 805 static const(void)* op_u32_Trunc_f32_r_r(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 806 static const(void)* op_u32_Trunc_f32_r_s(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 807 static const(void)* op_u32_Trunc_f32_s_r(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 808 static const(void)* op_u32_Trunc_f32_s_s(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 809 static const(void)* op_i32_Trunc_f64_r_r(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 810 static const(void)* op_i32_Trunc_f64_r_s(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 811 static const(void)* op_i32_Trunc_f64_s_r(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 812 static const(void)* op_i32_Trunc_f64_s_s(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 813 static const(void)* op_u32_Trunc_f64_r_r(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 814 static const(void)* op_u32_Trunc_f64_r_s(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 815 static const(void)* op_u32_Trunc_f64_s_r(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 816 static const(void)* op_u32_Trunc_f64_s_s(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 817 static const(void)* op_i64_Trunc_f32_r_r(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 818 static const(void)* op_i64_Trunc_f32_r_s(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 819 static const(void)* op_i64_Trunc_f32_s_r(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 820 static const(void)* op_i64_Trunc_f32_s_s(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 821 static const(void)* op_u64_Trunc_f32_r_r(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 822 static const(void)* op_u64_Trunc_f32_r_s(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 823 static const(void)* op_u64_Trunc_f32_s_r(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 824 static const(void)* op_u64_Trunc_f32_s_s(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 825 static const(void)* op_i64_Trunc_f64_r_r(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 826 static const(void)* op_i64_Trunc_f64_r_s(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 827 static const(void)* op_i64_Trunc_f64_s_r(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 828 static const(void)* op_i64_Trunc_f64_s_s(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 829 static const(void)* op_u64_Trunc_f64_r_r(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 830 static const(void)* op_u64_Trunc_f64_r_s(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 831 static const(void)* op_u64_Trunc_f64_s_r(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 832 static const(void)* op_u64_Trunc_f64_s_s(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 833 static const(void)* op_i32_TruncSat_f32_r_r(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 834 static const(void)* op_i32_TruncSat_f32_r_s(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 835 static const(void)* op_i32_TruncSat_f32_s_r(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 836 static const(void)* op_i32_TruncSat_f32_s_s(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 837 static const(void)* op_u32_TruncSat_f32_r_r(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 838 static const(void)* op_u32_TruncSat_f32_r_s(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 839 static const(void)* op_u32_TruncSat_f32_s_r(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 840 static const(void)* op_u32_TruncSat_f32_s_s(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 841 static const(void)* op_i32_TruncSat_f64_r_r(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 842 static const(void)* op_i32_TruncSat_f64_r_s(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 843 static const(void)* op_i32_TruncSat_f64_s_r(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 844 static const(void)* op_i32_TruncSat_f64_s_s(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 845 static const(void)* op_u32_TruncSat_f64_r_r(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 846 static const(void)* op_u32_TruncSat_f64_r_s(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 847 static const(void)* op_u32_TruncSat_f64_s_r(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 848 static const(void)* op_u32_TruncSat_f64_s_s(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 849 static const(void)* op_i64_TruncSat_f32_r_r(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 850 static const(void)* op_i64_TruncSat_f32_r_s(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 851 static const(void)* op_i64_TruncSat_f32_s_r(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 852 static const(void)* op_i64_TruncSat_f32_s_s(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 853 static const(void)* op_u64_TruncSat_f32_r_r(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 854 static const(void)* op_u64_TruncSat_f32_r_s(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 855 static const(void)* op_u64_TruncSat_f32_s_r(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 856 static const(void)* op_u64_TruncSat_f32_s_s(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 857 static const(void)* op_i64_TruncSat_f64_r_r(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 858 static const(void)* op_i64_TruncSat_f64_r_s(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 859 static const(void)* op_i64_TruncSat_f64_s_r(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 860 static const(void)* op_i64_TruncSat_f64_s_s(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 861 static const(void)* op_u64_TruncSat_f64_r_r(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 862 static const(void)* op_u64_TruncSat_f64_r_s(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 863 static const(void)* op_u64_TruncSat_f64_s_r(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 864 static const(void)* op_u64_TruncSat_f64_s_s(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 865 static const(void)* op_i64_Extend_i32_r(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 866 static const(void)* op_i64_Extend_i32_s(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 867 static const(void)* op_i64_Extend_u32_r(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 868 static const(void)* op_i64_Extend_u32_s(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 869 static const(void)* op_f32_Demote_f64_r(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 870 static const(void)* op_f32_Demote_f64_s(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 871 static const(void)* op_f64_Promote_f32_r(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 872 static const(void)* op_f64_Promote_f32_s(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 873 static const(void)* op_f64_Convert_i32_r_r(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 874 static const(void)* op_f64_Convert_i32_s_r(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 875 static const(void)* op_f64_Convert_i32_r_s(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 876 static const(void)* op_f64_Convert_i32_s_s(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 877 static const(void)* op_f64_Convert_u32_r_r(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 878 static const(void)* op_f64_Convert_u32_s_r(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 879 static const(void)* op_f64_Convert_u32_r_s(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 880 static const(void)* op_f64_Convert_u32_s_s(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 881 static const(void)* op_f64_Convert_i64_r_r(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 882 static const(void)* op_f64_Convert_i64_s_r(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 883 static const(void)* op_f64_Convert_i64_r_s(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 884 static const(void)* op_f64_Convert_i64_s_s(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 885 static const(void)* op_f64_Convert_u64_r_r(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 886 static const(void)* op_f64_Convert_u64_s_r(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 887 static const(void)* op_f64_Convert_u64_r_s(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 888 static const(void)* op_f64_Convert_u64_s_s(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 889 static const(void)* op_f32_Convert_i32_r_r(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 890 static const(void)* op_f32_Convert_i32_s_r(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 891 static const(void)* op_f32_Convert_i32_r_s(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 892 static const(void)* op_f32_Convert_i32_s_s(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 893 static const(void)* op_f32_Convert_u32_r_r(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 894 static const(void)* op_f32_Convert_u32_s_r(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 895 static const(void)* op_f32_Convert_u32_r_s(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 896 static const(void)* op_f32_Convert_u32_s_s(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 897 static const(void)* op_f32_Convert_i64_r_r(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 898 static const(void)* op_f32_Convert_i64_s_r(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 899 static const(void)* op_f32_Convert_i64_r_s(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 900 static const(void)* op_f32_Convert_i64_s_s(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 901 static const(void)* op_f32_Convert_u64_r_r(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 902 static const(void)* op_f32_Convert_u64_s_r(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 903 static const(void)* op_f32_Convert_u64_r_s(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 904 static const(void)* op_f32_Convert_u64_s_s(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 905 static const(void)* op_i32_Reinterpret_f32_r_r(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 906 static const(void)* op_i32_Reinterpret_f32_r_s(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 907 static const(void)* op_i32_Reinterpret_f32_s_r(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 908 static const(void)* op_i32_Reinterpret_f32_s_s(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 909 static const(void)* op_i64_Reinterpret_f64_r_r(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 910 static const(void)* op_i64_Reinterpret_f64_r_s(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 911 static const(void)* op_i64_Reinterpret_f64_s_r(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 912 static const(void)* op_i64_Reinterpret_f64_s_s(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 913 static const(void)* op_f32_Reinterpret_i32_r_r(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 914 static const(void)* op_f32_Reinterpret_i32_r_s(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 915 static const(void)* op_f32_Reinterpret_i32_s_r(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 916 static const(void)* op_f32_Reinterpret_i32_s_s(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 917 static const(void)* op_f64_Reinterpret_i64_r_r(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 918 static const(void)* op_f64_Reinterpret_i64_r_s(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 919 static const(void)* op_f64_Reinterpret_i64_s_r(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 920 static const(void)* op_f64_Reinterpret_i64_s_s(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 921 static const(void)* op_GetGlobal_s32(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 922 static const(void)* op_GetGlobal_s64(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 923 static const(void)* op_SetGlobal_i32(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 924 static const(void)* op_SetGlobal_i64(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 925 static const(void)* op_Call(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 926 static const(void)* op_CallIndirect(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 927 static const(void)* op_CallRawFunction(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 928 static const(void)* op_MemSize(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 929 static const(void)* op_MemGrow(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 930 static const(void)* op_MemCopy(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 931 static const(void)* op_MemFill(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 932 static const(void)* op_Compile(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 933 static const(void)* op_Entry(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 934 static const(void)* op_Loop(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 935 static const(void)* op_Branch(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 936 static const(void)* op_If_r(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 937 static const(void)* op_If_s(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 938 static const(void)* op_BranchTable(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 939 static const(void)* op_SetRegister_i32(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 940 static const(void)* op_SetSlot_i32(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 941 static const(void)* op_PreserveSetSlot_i32(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 942 static const(void)* op_SetRegister_i64(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 943 static const(void)* op_SetSlot_i64(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 944 static const(void)* op_PreserveSetSlot_i64(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 945 static const(void)* op_SetRegister_f32(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 946 static const(void)* op_SetSlot_f32(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 947 static const(void)* op_PreserveSetSlot_f32(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 948 static const(void)* op_SetRegister_f64(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 949 static const(void)* op_SetSlot_f64(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 950 static const(void)* op_PreserveSetSlot_f64(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 951 static const(void)* op_CopySlot_32(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 952 static const(void)* op_PreserveCopySlot_32(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 953 static const(void)* op_CopySlot_64(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 954 static const(void)* op_PreserveCopySlot_64(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 955 static const(void)* op_Select_i32_rss(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 956 static const(void)* op_Select_i32_srs(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 957 static const(void)* op_Select_i32_ssr(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 958 static const(void)* op_Select_i32_sss(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 959 static const(void)* op_Select_i64_rss(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 960 static const(void)* op_Select_i64_srs(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 961 static const(void)* op_Select_i64_ssr(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 962 static const(void)* op_Select_i64_sss(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 963 static const(void)* op_Select_f32_rss(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 964 static const(void)* op_Select_f32_rrs(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 965 static const(void)* op_Select_f32_rsr(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 966 static const(void)* op_Select_f32_sss(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 967 static const(void)* op_Select_f32_srs(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 968 static const(void)* op_Select_f32_ssr(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 969 static const(void)* op_Select_f64_rss(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 970 static const(void)* op_Select_f64_rrs(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 971 static const(void)* op_Select_f64_rsr(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 972 static const(void)* op_Select_f64_sss(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 973 static const(void)* op_Select_f64_srs(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 974 static const(void)* op_Select_f64_ssr(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 975 static const(void)* op_Return(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 976 static const(void)* op_BranchIf_r(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 977 static const(void)* op_BranchIf_s(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 978 static const(void)* op_BranchIfPrologue_r(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 979 static const(void)* op_BranchIfPrologue_s(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 980 static const(void)* op_ContinueLoop(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 981 static const(void)* op_ContinueLoopIf(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 982 static const(void)* op_Const32(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 983 static const(void)* op_Const64(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 984 static const(void)* op_Unsupported(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 985 static const(void)* op_Unreachable(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 986 static const(void)* op_End(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 987 static const(void)* op_SetGlobal_s32(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 988 static const(void)* op_SetGlobal_s64(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 989 static const(void)* op_SetGlobal_f32(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 990 static const(void)* op_SetGlobal_f64(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 991 static const(void)* op_f32_Load_f32_r(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 992 static const(void)* op_f32_Load_f32_s(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 993 static const(void)* op_f64_Load_f64_r(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 994 static const(void)* op_f64_Load_f64_s(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 995 static const(void)* op_i32_Load_i8_r(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 996 static const(void)* op_i32_Load_i8_s(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 997 static const(void)* op_i32_Load_u8_r(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 998 static const(void)* op_i32_Load_u8_s(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 999 static const(void)* op_i32_Load_i16_r(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 1000 static const(void)* op_i32_Load_i16_s(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 1001 static const(void)* op_i32_Load_u16_r(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 1002 static const(void)* op_i32_Load_u16_s(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 1003 static const(void)* op_i32_Load_i32_r(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 1004 static const(void)* op_i32_Load_i32_s(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 1005 static const(void)* op_i64_Load_i8_r(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 1006 static const(void)* op_i64_Load_i8_s(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 1007 static const(void)* op_i64_Load_u8_r(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 1008 static const(void)* op_i64_Load_u8_s(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 1009 static const(void)* op_i64_Load_i16_r(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 1010 static const(void)* op_i64_Load_i16_s(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 1011 static const(void)* op_i64_Load_u16_r(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 1012 static const(void)* op_i64_Load_u16_s(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 1013 static const(void)* op_i64_Load_i32_r(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 1014 static const(void)* op_i64_Load_i32_s(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 1015 static const(void)* op_i64_Load_u32_r(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 1016 static const(void)* op_i64_Load_u32_s(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 1017 static const(void)* op_i64_Load_i64_r(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 1018 static const(void)* op_i64_Load_i64_s(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 1019 static const(void)* op_f32_Store_f32_rs(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 1020 static const(void)* op_f32_Store_f32_sr(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 1021 static const(void)* op_f32_Store_f32_ss(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 1022 static const(void)* op_f32_Store_f32_rr(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 1023 static const(void)* op_f64_Store_f64_rs(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 1024 static const(void)* op_f64_Store_f64_sr(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 1025 static const(void)* op_f64_Store_f64_ss(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 1026 static const(void)* op_f64_Store_f64_rr(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 1027 static const(void)* op_i32_Store_u8_rs(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 1028 static const(void)* op_i32_Store_u8_sr(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 1029 static const(void)* op_i32_Store_u8_ss(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 1030 static const(void)* op_i32_Store_i16_rs(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 1031 static const(void)* op_i32_Store_i16_sr(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 1032 static const(void)* op_i32_Store_i16_ss(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 1033 static const(void)* op_i32_Store_i32_rs(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 1034 static const(void)* op_i32_Store_i32_sr(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 1035 static const(void)* op_i32_Store_i32_ss(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 1036 static const(void)* op_i64_Store_u8_rs(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 1037 static const(void)* op_i64_Store_u8_sr(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 1038 static const(void)* op_i64_Store_u8_ss(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 1039 static const(void)* op_i64_Store_i16_rs(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 1040 static const(void)* op_i64_Store_i16_sr(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 1041 static const(void)* op_i64_Store_i16_ss(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 1042 static const(void)* op_i64_Store_i32_rs(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 1043 static const(void)* op_i64_Store_i32_sr(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 1044 static const(void)* op_i64_Store_i32_ss(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 1045 static const(void)* op_i64_Store_i64_rs(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 1046 static const(void)* op_i64_Store_i64_sr(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 1047 static const(void)* op_i64_Store_i64_ss(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0); 1048 1049 auto m3ApiOffsetToPtr(__MP198)(__MP198 offset) 1050 { 1051 return cast(void*)(cast(ubyte*) _mem + cast(uint) offset); 1052 } 1053 1054 auto m3ApiPtrToOffset(__MP199)(__MP199 ptr) 1055 { 1056 return cast(uint)(cast(ubyte*) ptr - cast(ubyte*) _mem); 1057 } 1058 1059 auto m3ApiIsNullPtr(__MP207)(__MP207 addr) 1060 { 1061 return cast(void*) addr <= _mem; 1062 } 1063 1064 auto m3ApiReadMem8(__MP215)(__MP215 ptr) 1065 { 1066 return *cast(ubyte*) ptr; 1067 } 1068 1069 auto m3ApiReadMem16(__MP216)(__MP216 ptr) 1070 { 1071 return *cast(ushort*) ptr; 1072 } 1073 1074 auto m3ApiReadMem32(__MP217)(__MP217 ptr) 1075 { 1076 return *cast(uint*) ptr; 1077 } 1078 1079 auto m3ApiReadMem64(__MP218)(__MP218 ptr) 1080 { 1081 return *cast(uint*) ptr; 1082 } 1083 1084 enum int M3_HAS_TAIL_CALL = 1; 1085 auto M3_MIN(__MP237, __MP238)(__MP237 A, __MP238 B) 1086 { 1087 return A < B ? A : B; 1088 } 1089 1090 auto M3_MAX(__MP239, __MP240)(__MP239 A, __MP240 B) 1091 { 1092 return A > B ? A : B; 1093 } 1094 1095 auto M3_INIT(__MP241)(__MP241 field) 1096 { 1097 return memset(&field, 0, field.sizeof); 1098 } 1099 1100 auto M3_COUNT_OF(__MP242)(__MP242 x) 1101 { 1102 return x.sizeof / 0[x].sizeof / cast(uint) !(x.sizeof % 0[x].sizeof); 1103 } 1104 1105 enum int d_m3MaxFunctionStackHeight = 2000; 1106 enum int d_m3MaxLinearMemoryPages = 65_536; 1107 auto d_m3MaxFunctionSlots()() 1108 { 1109 return d_m3MaxFunctionStackHeight * 2; 1110 } 1111 1112 enum int d_m3MaxConstantTableSize = 120; 1113 enum int d_m3MaxDuplicateFunctionImpl = 3; 1114 enum int d_m3CascadedOpcodes = 1; 1115 enum int d_m3VerboseErrorMessages = 1; 1116 enum int d_m3FixedHeapAlign = 16; 1117 enum int d_m3Use32BitSlots = 1; 1118 enum int d_m3ProfilerSlotMask = 65_535; 1119 enum int d_m3RecordBacktraces = 0; 1120 enum int d_m3EnableExceptionBreakpoint = 0; 1121 enum int d_m3EnableOpProfiling = 0; 1122 enum int d_m3EnableOpTracing = 0; 1123 enum int d_m3EnableWasiTracing = 0; 1124 enum int d_m3EnableStrace = 0; 1125 enum int d_m3LogParse = 0; 1126 enum int d_m3LogModule = 0; 1127 enum int d_m3LogCompile = 0; 1128 enum int d_m3LogWasmStack = 0; 1129 enum int d_m3LogEmit = 0; 1130 enum int d_m3LogCodePages = 0; 1131 enum int d_m3LogRuntime = 0; 1132 enum int d_m3LogNativeStack = 0; 1133 enum int d_m3LogHeapOps = 0; 1134 enum int d_m3LogTimestamps = 0; 1135 enum int d_m3HasFloat = 1; 1136 enum int d_m3SkipStackCheck = 0; 1137 enum int d_m3SkipMemoryBoundsCheck = 0; 1138 enum int d_m3EnableCodePageRefCounting = 0; 1139 auto d_m3ImplementFloat()() 1140 { 1141 return d_m3HasFloat || d_m3NoFloatDynamic; 1142 } 1143 1144 enum int d_m3MemPageSize = 65_536; 1145 enum int d_m3Reg0SlotAlias = 60_000; 1146 auto d_m3Fp0SlotAlias()() 1147 { 1148 return d_m3Reg0SlotAlias + 2; 1149 } 1150 1151 enum int d_m3MaxSaneTypesCount = 100_0000; 1152 enum int d_m3MaxSaneFunctionsCount = 1000_000; 1153 enum int d_m3MaxSaneImportsCount = 100_000; 1154 enum int d_m3MaxSaneExportsCount = 100_000; 1155 enum int d_m3MaxSaneGlobalsCount = 1000_000; 1156 enum int d_m3MaxSaneElementSegments = 1000_0000; 1157 enum int d_m3MaxSaneDataSegments = 100_000; 1158 enum int d_m3MaxSaneTableSize = 1000_0000; 1159 enum int d_m3MaxSaneUtf8Length = 10_000; 1160 enum int d_m3MaxSaneFunctionArgRetCount = 1000; 1161 enum int d_externalKind_function = 0; 1162 enum int d_externalKind_table = 1; 1163 enum int d_externalKind_memory = 2; 1164 enum int d_externalKind_global = 3; 1165 1166 auto m3_Malloc(__MP244, __MP245)(__MP244 NAME, __MP245 SIZE) 1167 { 1168 return m3_Malloc_Impl(SIZE); 1169 } 1170 1171 auto m3_Realloc(__MP246, __MP247, __MP248, __MP249)(__MP246 NAME, __MP247 PTR, __MP248 NEW, __MP249 OLD) 1172 { 1173 return m3_Realloc_Impl(PTR, NEW, OLD); 1174 } 1175 1176 auto EmitWord(__MP258, __MP259)(__MP258 page, __MP259 val) 1177 { 1178 return EmitWord_impl(page, cast(void*) val); 1179 } 1180 1181 auto m3MemData(__MP260)(__MP260 mem) 1182 { 1183 return cast(ubyte*)(cast(M3MemoryHeader*) mem + 1); 1184 } 1185 1186 auto jumpOpImpl(__MP264)(__MP264 PC) 1187 { 1188 return (cast(const(void)* function(void** _pc, uint* _sp, M3MemoryHeader* _mem, int _r0, double _fp0))*PC)(PC + 1, d_m3OpArgs); 1189 } 1190 1191 void* memset(return scope void* s, int c, size_t n) pure;