improve rtrace and move it to lib

This commit is contained in:
dcode 2019-05-23 16:41:26 +02:00
parent fbba76ef2c
commit a49ab7a706
35 changed files with 3435 additions and 3307 deletions

26
lib/rtrace/README.md Normal file
View File

@ -0,0 +1,26 @@
# ![AS](https://avatars1.githubusercontent.com/u/28916798?s=48) rtrace
A tiny utility that records allocations, retains, releases and frees performed by the runtime and emits an error if something is off. Also checks for leaks.
Instructions
------------
Compile your module that uses the full or half runtime with `-use ASC_RTRACE=1` and include an instance of this module as the import named `rtrace`.
```js
var rtr = rtrace(e => {
// handle error
});
WebAssembly.instantiate(..., { rtrace: rtr, ... });
...
if (rtr.active) {
let leakCount = rtr.leakCount;
if (leakCount) {
// handle error
}
}
```
Note that references retained in globals which are not cleared before execution concludes appear as leaks, including their inner members. A TypedArray would leak itself and its backing ArrayBuffer in this case for example. This is perfectly normal and clearing all globals avoids this.

62
lib/rtrace/index.js Normal file
View File

@ -0,0 +1,62 @@
function rtrace(onerror) {
var blocks = new Map();
var rtrace = {
allocCount: 0,
freeCount: 0,
incrementCount: 0,
decrementCount: 0,
onalloc: function(block) {
++rtrace.allocCount;
if (blocks.has(block)) {
onerror(Error("duplicate alloc: " + block));
} else {
blocks.set(block, 0);
}
},
onfree: function(block) {
++rtrace.freeCount;
if (!blocks.has(block)) {
onerror(Error("invalid free: " + block));
} else {
blocks.delete(block);
}
},
onincrement: function(block) {
++rtrace.incrementCount;
if (!blocks.has(block)) {
onerror(Error("invalid increment: " + block));
} else {
let rc = blocks.get(block) + 1;
blocks.set(block, rc);
}
},
ondecrement: function(block) {
++rtrace.decrementCount;
if (!blocks.has(block)) {
onerror(Error("invalid decrement: " + block));
} else {
let rc = blocks.get(block) - 1;
if (rc < 0) {
onerror(Error("invalid decrement: " + block));
} else {
blocks.set(block, rc);
}
}
},
get active() {
return Boolean(rtrace.allocCount + rtrace.freeCount + rtrace.incrementCount + rtrace.decrementCount);
},
get leakCount() {
return blocks.size;
}
};
return rtrace;
}
module.exports = rtrace;

6
lib/rtrace/package.json Normal file
View File

@ -0,0 +1,6 @@
{
"name": "@assemblyscript/rtrace",
"version": "0.1.0",
"license": "Apache-2.0",
"main": "index.js"
}

View File

@ -1,6 +1,7 @@
import { DEBUG, BLOCK_OVERHEAD } from "rt/common"; import { DEBUG, BLOCK_OVERHEAD } from "rt/common";
import { Block, freeBlock, ROOT } from "rt/tlsf"; import { Block, freeBlock, ROOT } from "rt/tlsf";
import { TypeinfoFlags } from "shared/typeinfo"; import { TypeinfoFlags } from "shared/typeinfo";
import { onincrement, ondecrement } from "./rtrace";
/////////////////////////// A Pure Reference Counting Garbage Collector /////////////////////////// /////////////////////////// A Pure Reference Counting Garbage Collector ///////////////////////////
// see: https://researcher.watson.ibm.com/researcher/files/us-bacon/Bacon03Pure.pdf // see: https://researcher.watson.ibm.com/researcher/files/us-bacon/Bacon03Pure.pdf
@ -102,7 +103,7 @@ function increment(s: Block): void {
var info = s.gcInfo; var info = s.gcInfo;
assert((info & ~REFCOUNT_MASK) == ((info + 1) & ~REFCOUNT_MASK)); // overflow assert((info & ~REFCOUNT_MASK) == ((info + 1) & ~REFCOUNT_MASK)); // overflow
s.gcInfo = info + 1; s.gcInfo = info + 1;
if (isDefined(ASC_RTRACE)) onIncrement(s); if (isDefined(ASC_RTRACE)) onincrement(s);
if (DEBUG) assert(!(s.mmInfo & 1)); // used if (DEBUG) assert(!(s.mmInfo & 1)); // used
} }
@ -110,7 +111,7 @@ function increment(s: Block): void {
function decrement(s: Block): void { function decrement(s: Block): void {
var info = s.gcInfo; var info = s.gcInfo;
var rc = info & REFCOUNT_MASK; var rc = info & REFCOUNT_MASK;
if (isDefined(ASC_RTRACE)) onDecrement(s); if (isDefined(ASC_RTRACE)) ondecrement(s);
if (DEBUG) assert(!(s.mmInfo & 1)); // used if (DEBUG) assert(!(s.mmInfo & 1)); // used
if (rc == 1) { if (rc == 1) {
__visit_members(changetype<usize>(s) + BLOCK_OVERHEAD, VISIT_DECREMENT); __visit_members(changetype<usize>(s) + BLOCK_OVERHEAD, VISIT_DECREMENT);
@ -272,11 +273,3 @@ export function __skippedRelease(oldRef: usize, newRef: usize): usize {
if (oldRef > HEAP_BASE) decrement(changetype<Block>(oldRef - BLOCK_OVERHEAD)); if (oldRef > HEAP_BASE) decrement(changetype<Block>(oldRef - BLOCK_OVERHEAD));
return newRef; return newRef;
} }
// @ts-ignore: decorator
@external("rtrace", "retain")
declare function onIncrement(s: Block): void;
// @ts-ignore: decorator
@external("rtrace", "release")
declare function onDecrement(s: Block): void;

View File

@ -0,0 +1,6 @@
import { BLOCK } from "./common";
export declare function onalloc(s: BLOCK): void;
export declare function onincrement(s: BLOCK): void;
export declare function ondecrement(s: BLOCK): void;
export declare function onfree(s: BLOCK): void;

View File

@ -1,4 +1,5 @@
import { AL_BITS, AL_MASK, DEBUG, BLOCK, BLOCK_OVERHEAD, BLOCK_MAXSIZE } from "rt/common"; import { AL_BITS, AL_MASK, DEBUG, BLOCK, BLOCK_OVERHEAD, BLOCK_MAXSIZE } from "rt/common";
import { onfree, onalloc } from "./rtrace";
/////////////////////// The TLSF (Two-Level Segregate Fit) memory allocator /////////////////////// /////////////////////// The TLSF (Two-Level Segregate Fit) memory allocator ///////////////////////
// see: http://www.gii.upv.es/tlsf/ // see: http://www.gii.upv.es/tlsf/
@ -481,6 +482,7 @@ export function allocateBlock(root: Root, size: usize): Block {
block.rtSize = size; block.rtSize = size;
removeBlock(root, <Block>block); removeBlock(root, <Block>block);
prepareBlock(root, <Block>block, payloadSize); prepareBlock(root, <Block>block, payloadSize);
if (isDefined(ASC_RTRACE)) onalloc(<Block>block);
return <Block>block; return <Block>block;
} }
@ -520,7 +522,6 @@ export function reallocateBlock(root: Root, block: Block, size: usize): Block {
memory.copy(changetype<usize>(newBlock) + BLOCK_OVERHEAD, changetype<usize>(block) + BLOCK_OVERHEAD, size); memory.copy(changetype<usize>(newBlock) + BLOCK_OVERHEAD, changetype<usize>(block) + BLOCK_OVERHEAD, size);
block.mmInfo = blockInfo | FREE; block.mmInfo = blockInfo | FREE;
insertBlock(root, block); insertBlock(root, block);
if (isDefined(ASC_RTRACE)) onFree(block);
return newBlock; return newBlock;
} }
@ -530,7 +531,7 @@ export function freeBlock(root: Root, block: Block): void {
assert(!(blockInfo & FREE)); // must be used (user might call through to this) assert(!(blockInfo & FREE)); // must be used (user might call through to this)
block.mmInfo = blockInfo | FREE; block.mmInfo = blockInfo | FREE;
insertBlock(root, block); insertBlock(root, block);
if (isDefined(ASC_RTRACE)) onFree(block); if (isDefined(ASC_RTRACE)) onfree(block);
} }
// @ts-ignore: decorator // @ts-ignore: decorator
@ -561,7 +562,3 @@ export function __free(ref: usize): void {
assert(ref != 0 && !(ref & AL_MASK)); // must exist and be aligned assert(ref != 0 && !(ref & AL_MASK)); // must exist and be aligned
freeBlock(ROOT, changetype<Block>(ref - BLOCK_OVERHEAD)); freeBlock(ROOT, changetype<Block>(ref - BLOCK_OVERHEAD));
} }
// @ts-ignore: decorator
@external("rtrace", "free")
declare function onFree(s: Block): void;

View File

@ -7,6 +7,7 @@ const colorsUtil = require("../cli/util/colors");
const optionsUtil = require("../cli/util/options"); const optionsUtil = require("../cli/util/options");
const diff = require("./util/diff"); const diff = require("./util/diff");
const asc = require("../cli/asc.js"); const asc = require("../cli/asc.js");
const rtrace = require("../lib/rtrace");
const config = { const config = {
"create": { "create": {
@ -290,15 +291,15 @@ function testInstantiate(basename, binaryBuffer, name) {
return String.fromCharCode.apply(String, U16.subarray(ptr16, ptr16 + len16)); return String.fromCharCode.apply(String, U16.subarray(ptr16, ptr16 + len16));
} }
let rtrace = new Map(); let rtr = rtrace(e => {
let rtraceEnabled = false; console.log(" ERROR: " + e);
let rtraceRetains = 0; failed = true;
let rtraceReleases = 0; failedMessages.set(basename, e.message);
let rtraceFrees = 0; });
let rtraceUsesAfterFree = 0;
let runTime = asc.measure(() => { let runTime = asc.measure(() => {
exports = new WebAssembly.Instance(new WebAssembly.Module(binaryBuffer), { exports = new WebAssembly.Instance(new WebAssembly.Module(binaryBuffer), {
rtrace: rtr,
env: { env: {
memory, memory,
abort: function(msg, file, line, column) { abort: function(msg, file, line, column) {
@ -310,11 +311,15 @@ function testInstantiate(basename, binaryBuffer, name) {
externalFunction: function() { }, externalFunction: function() { },
externalConstant: 1 externalConstant: 1
}, },
// bindings
Math,
Date,
// tests/math
math: { math: {
mod: function(a, b) { return a % b; } mod: function(a, b) { return a % b; }
}, },
Math,
Date,
// tests/declare // tests/declare
declare: { declare: {
@ -333,57 +338,30 @@ function testInstantiate(basename, binaryBuffer, name) {
foo: { foo: {
baz: function() {}, baz: function() {},
"var": 3 "var": 3
},
// runtime tracing
rtrace: {
retain: function(s) {
++rtraceRetains;
let rc = rtrace.get(s) | 0;
rtrace.set(s, ++rc);
// console.log(" retain(" + s + ", RC=" + rc + ")");
rtraceEnabled = true;
},
release: function(s) {
++rtraceReleases;
let rc = rtrace.get(s) | 0;
if (--rc <= 0) {
rtrace.delete(s);
if (rc < 0) {
++rtraceUsesAfterFree;
console.log(" USEAFTERFREE(" + s + ", RC=" + rc + ")");
}
} else rtrace.set(s, rc);
// console.log(" release(" + s + ", RC=" + rc + ")");
rtraceEnabled = true;
},
free: function(s) {
++rtraceFrees;
let rc = rtrace.get(s) | 0;
// if (rc != 0) console.log(" free(" + s + ", RC=" + rc + ")");
rtrace.delete(s);
rtraceEnabled = true;
}
} }
}).exports; }).exports;
if (exports.main) { if (exports.main) {
console.log(colorsUtil.white(" [main]")); console.log(colorsUtil.white(" [main]"));
var code = exports.main(); let code = exports.main();
console.log(colorsUtil.white(" [exit " + code + "]\n")); console.log(colorsUtil.white(" [exit " + code + "]\n"));
} }
}); });
if (rtraceEnabled) { let leakCount = rtr.leakCount;
if (rtrace.size || rtraceUsesAfterFree) { if (leakCount) {
let msg = "memory leak detected: " + rtrace.size + " leaking, " + rtraceUsesAfterFree + " uses after free"; let msg = "memory leak detected: " + leakCount + " leaking";
console.log("- " + colorsUtil.red("rtrace " + name + " ERROR: ") + msg); console.log("- " + colorsUtil.red("rtrace " + name + " ERROR: ") + msg);
failed = true; failed = true;
failedMessages.set(basename, msg); failedMessages.set(basename, msg);
}
} }
if (!failed) { if (!failed) {
console.log("- " + colorsUtil.green("instantiate " + name + " OK") + " (" + asc.formatTime(runTime) + ")"); console.log("- " + colorsUtil.green("instantiate " + name + " OK") + " (" + asc.formatTime(runTime) + ")");
if (rtraceEnabled) { if (rtr.active) {
console.log("\n " + rtraceRetains + " retains\n " + rtraceReleases + " releases\n " + rtraceFrees + " explicit frees"); console.log(" " +
rtr.allocCount + " allocs, " +
rtr.freeCount + " frees, " +
rtr.incrementCount + " increments, " +
rtr.decrementCount + " decrements"
);
} }
console.log("\n " + Object.keys(exports).map(key => { console.log("\n " + Object.keys(exports).map(key => {
return "[" + (typeof exports[key]).substring(0, 3) + "] " + key + " = " + exports[key] return "[" + (typeof exports[key]).substring(0, 3) + "] " + key + " = " + exports[key]

View File

@ -7,8 +7,9 @@
(type $FUNCSIG$v (func)) (type $FUNCSIG$v (func))
(type $FUNCSIG$viii (func (param i32 i32 i32))) (type $FUNCSIG$viii (func (param i32 i32 i32)))
(import "env" "abort" (func $~lib/builtins/abort (param i32 i32 i32 i32))) (import "env" "abort" (func $~lib/builtins/abort (param i32 i32 i32 i32)))
(import "rtrace" "release" (func $~lib/rt/pure/onDecrement (param i32))) (import "rtrace" "ondecrement" (func $~lib/rt/rtrace/ondecrement (param i32)))
(import "rtrace" "free" (func $~lib/rt/tlsf/onFree (param i32))) (import "rtrace" "onfree" (func $~lib/rt/rtrace/onfree (param i32)))
(import "rtrace" "onalloc" (func $~lib/rt/rtrace/onalloc (param i32)))
(memory $0 1) (memory $0 1)
(data (i32.const 12) "\01\00\00\00\01") (data (i32.const 12) "\01\00\00\00\01")
(data (i32.const 24) "\1e\00\00\00\01\00\00\00\01\00\00\00\1e\00\00\00~\00l\00i\00b\00/\00r\00t\00/\00p\00u\00r\00e\00.\00t\00s") (data (i32.const 24) "\1e\00\00\00\01\00\00\00\01\00\00\00\1e\00\00\00~\00l\00i\00b\00/\00r\00t\00/\00p\00u\00r\00e\00.\00t\00s")
@ -25,7 +26,7 @@
(global $~lib/rt/pure/ROOTS (mut i32) (i32.const 0)) (global $~lib/rt/pure/ROOTS (mut i32) (i32.const 0))
(export "memory" (memory $0)) (export "memory" (memory $0))
(start $start) (start $start)
(func $~lib/rt/tlsf/removeBlock (; 3 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/rt/tlsf/removeBlock (; 4 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
@ -39,7 +40,7 @@
if if
i32.const 0 i32.const 0
i32.const 88 i32.const 88
i32.const 275 i32.const 276
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -61,7 +62,7 @@
if if
i32.const 0 i32.const 0
i32.const 88 i32.const 88
i32.const 277 i32.const 278
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -106,7 +107,7 @@
if if
i32.const 0 i32.const 0
i32.const 88 i32.const 88
i32.const 290 i32.const 291
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -191,7 +192,7 @@
end end
end end
) )
(func $~lib/rt/tlsf/insertBlock (; 4 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/rt/tlsf/insertBlock (; 5 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
@ -203,7 +204,7 @@
if if
i32.const 0 i32.const 0
i32.const 88 i32.const 88
i32.const 203 i32.const 204
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -217,7 +218,7 @@
if if
i32.const 0 i32.const 0
i32.const 88 i32.const 88
i32.const 205 i32.const 206
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -290,7 +291,7 @@
if if
i32.const 0 i32.const 0
i32.const 88 i32.const 88
i32.const 226 i32.const 227
i32.const 15 i32.const 15
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -347,7 +348,7 @@
if if
i32.const 0 i32.const 0
i32.const 88 i32.const 88
i32.const 241 i32.const 242
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -362,7 +363,7 @@
if if
i32.const 0 i32.const 0
i32.const 88 i32.const 88
i32.const 242 i32.const 243
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -412,7 +413,7 @@
if if
i32.const 0 i32.const 0
i32.const 88 i32.const 88
i32.const 258 i32.const 259
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -476,7 +477,7 @@
i32.or i32.or
i32.store offset=4 i32.store offset=4
) )
(func $~lib/rt/tlsf/freeBlock (; 5 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/rt/tlsf/freeBlock (; 6 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
(local $2 i32) (local $2 i32)
local.get $1 local.get $1
i32.load i32.load
@ -486,7 +487,7 @@
if if
i32.const 0 i32.const 0
i32.const 88 i32.const 88
i32.const 530 i32.const 531
i32.const 2 i32.const 2
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -500,9 +501,9 @@
local.get $1 local.get $1
call $~lib/rt/tlsf/insertBlock call $~lib/rt/tlsf/insertBlock
local.get $1 local.get $1
call $~lib/rt/tlsf/onFree call $~lib/rt/rtrace/onfree
) )
(func $~lib/rt/__typeinfo (; 6 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (func $~lib/rt/__typeinfo (; 7 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
local.get $0 local.get $0
i32.const 272 i32.const 272
i32.load i32.load
@ -522,7 +523,7 @@
i32.add i32.add
i32.load i32.load
) )
(func $~lib/rt/tlsf/addMemory (; 7 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) (func $~lib/rt/tlsf/addMemory (; 8 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
local.get $2 local.get $2
@ -544,7 +545,7 @@
if if
i32.const 0 i32.const 0
i32.const 88 i32.const 88
i32.const 384 i32.const 385
i32.const 4 i32.const 4
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -561,7 +562,7 @@
if if
i32.const 0 i32.const 0
i32.const 88 i32.const 88
i32.const 394 i32.const 395
i32.const 15 i32.const 15
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -589,7 +590,7 @@
if if
i32.const 0 i32.const 0
i32.const 88 i32.const 88
i32.const 406 i32.const 407
i32.const 4 i32.const 4
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -636,7 +637,7 @@
local.get $1 local.get $1
call $~lib/rt/tlsf/insertBlock call $~lib/rt/tlsf/insertBlock
) )
(func $~lib/rt/tlsf/initializeRoot (; 8 ;) (type $FUNCSIG$v) (func $~lib/rt/tlsf/initializeRoot (; 9 ;) (type $FUNCSIG$v)
(local $0 i32) (local $0 i32)
(local $1 i32) (local $1 i32)
i32.const 1 i32.const 1
@ -719,14 +720,14 @@
i32.const 304 i32.const 304
global.set $~lib/rt/tlsf/ROOT global.set $~lib/rt/tlsf/ROOT
) )
(func $~lib/rt/tlsf/prepareSize (; 9 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (func $~lib/rt/tlsf/prepareSize (; 10 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
local.get $0 local.get $0
i32.const 1073741808 i32.const 1073741808
i32.ge_u i32.ge_u
if if
i32.const 232 i32.const 232
i32.const 88 i32.const 88
i32.const 446 i32.const 447
i32.const 29 i32.const 29
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -743,7 +744,7 @@
i32.gt_u i32.gt_u
select select
) )
(func $~lib/rt/tlsf/searchBlock (; 10 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (func $~lib/rt/tlsf/searchBlock (; 11 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
(local $2 i32) (local $2 i32)
local.get $1 local.get $1
i32.const 256 i32.const 256
@ -801,7 +802,7 @@
if if
i32.const 0 i32.const 0
i32.const 88 i32.const 88
i32.const 336 i32.const 337
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -853,7 +854,7 @@
if if
i32.const 0 i32.const 0
i32.const 88 i32.const 88
i32.const 349 i32.const 350
i32.const 17 i32.const 17
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -874,7 +875,7 @@
end end
end end
) )
(func $~lib/rt/tlsf/growMemory (; 11 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/rt/tlsf/growMemory (; 12 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
(local $2 i32) (local $2 i32)
memory.size memory.size
local.tee $2 local.tee $2
@ -911,7 +912,7 @@
i32.shl i32.shl
call $~lib/rt/tlsf/addMemory call $~lib/rt/tlsf/addMemory
) )
(func $~lib/rt/tlsf/prepareBlock (; 12 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) (func $~lib/rt/tlsf/prepareBlock (; 13 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
local.get $1 local.get $1
@ -923,7 +924,7 @@
if if
i32.const 0 i32.const 0
i32.const 88 i32.const 88
i32.const 363 i32.const 364
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -987,7 +988,7 @@
i32.store i32.store
end end
) )
(func $~lib/rt/tlsf/allocateBlock (; 13 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (func $~lib/rt/tlsf/allocateBlock (; 14 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
local.get $0 local.get $0
@ -1009,7 +1010,7 @@
if if
i32.const 0 i32.const 0
i32.const 88 i32.const 88
i32.const 476 i32.const 477
i32.const 15 i32.const 15
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1024,7 +1025,7 @@
if if
i32.const 0 i32.const 0
i32.const 88 i32.const 88
i32.const 478 i32.const 479
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1043,8 +1044,10 @@
local.get $3 local.get $3
call $~lib/rt/tlsf/prepareBlock call $~lib/rt/tlsf/prepareBlock
local.get $2 local.get $2
call $~lib/rt/rtrace/onalloc
local.get $2
) )
(func $~lib/rt/tlsf/__alloc (; 14 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (func $~lib/rt/tlsf/__alloc (; 15 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
(local $1 i32) (local $1 i32)
global.get $~lib/rt/tlsf/ROOT global.get $~lib/rt/tlsf/ROOT
local.tee $1 local.tee $1
@ -1064,7 +1067,7 @@
i32.const 16 i32.const 16
i32.add i32.add
) )
(func $~lib/memory/memory.copy (; 15 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) (func $~lib/memory/memory.copy (; 16 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
block $~lib/util/memory/memmove|inlined.0 block $~lib/util/memory/memmove|inlined.0
@ -1237,7 +1240,7 @@
end end
end end
) )
(func $~lib/rt/pure/growRoots (; 16 ;) (type $FUNCSIG$v) (func $~lib/rt/pure/growRoots (; 17 ;) (type $FUNCSIG$v)
(local $0 i32) (local $0 i32)
(local $1 i32) (local $1 i32)
(local $2 i32) (local $2 i32)
@ -1272,7 +1275,7 @@
i32.add i32.add
global.set $~lib/rt/pure/END global.set $~lib/rt/pure/END
) )
(func $~lib/rt/pure/appendRoot (; 17 ;) (type $FUNCSIG$vi) (param $0 i32) (func $~lib/rt/pure/appendRoot (; 18 ;) (type $FUNCSIG$vi) (param $0 i32)
(local $1 i32) (local $1 i32)
global.get $~lib/rt/pure/CUR global.get $~lib/rt/pure/CUR
local.tee $1 local.tee $1
@ -1291,7 +1294,7 @@
i32.add i32.add
global.set $~lib/rt/pure/CUR global.set $~lib/rt/pure/CUR
) )
(func $~lib/rt/pure/decrement (; 18 ;) (type $FUNCSIG$vi) (param $0 i32) (func $~lib/rt/pure/decrement (; 19 ;) (type $FUNCSIG$vi) (param $0 i32)
(local $1 i32) (local $1 i32)
(local $2 i32) (local $2 i32)
local.get $0 local.get $0
@ -1301,7 +1304,7 @@
i32.and i32.and
local.set $1 local.set $1
local.get $0 local.get $0
call $~lib/rt/pure/onDecrement call $~lib/rt/rtrace/ondecrement
local.get $0 local.get $0
i32.load i32.load
i32.const 1 i32.const 1
@ -1309,7 +1312,7 @@
if if
i32.const 0 i32.const 0
i32.const 40 i32.const 40
i32.const 114 i32.const 115
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1342,7 +1345,7 @@
if if
i32.const 0 i32.const 0
i32.const 40 i32.const 40
i32.const 123 i32.const 124
i32.const 15 i32.const 15
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1381,7 +1384,7 @@
end end
end end
) )
(func $~lib/rt/pure/__retainRelease (; 19 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (func $~lib/rt/pure/__retainRelease (; 20 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
local.get $0 local.get $0
if if
local.get $0 local.get $0
@ -1396,7 +1399,7 @@
end end
i32.const 0 i32.const 0
) )
(func $start (; 20 ;) (type $FUNCSIG$v) (func $start (; 21 ;) (type $FUNCSIG$v)
i32.const 24 i32.const 24
global.set $rc/global-init/a global.set $rc/global-init/a
i32.const 24 i32.const 24
@ -1408,7 +1411,7 @@
call $~lib/rt/pure/__retainRelease call $~lib/rt/pure/__retainRelease
global.set $rc/global-init/b global.set $rc/global-init/b
) )
(func $~lib/rt/pure/markGray (; 21 ;) (type $FUNCSIG$vi) (param $0 i32) (func $~lib/rt/pure/markGray (; 22 ;) (type $FUNCSIG$vi) (param $0 i32)
(local $1 i32) (local $1 i32)
local.get $0 local.get $0
i32.load offset=4 i32.load offset=4
@ -1432,7 +1435,7 @@
call $~lib/rt/__visit_members call $~lib/rt/__visit_members
end end
) )
(func $~lib/rt/pure/scanBlack (; 22 ;) (type $FUNCSIG$vi) (param $0 i32) (func $~lib/rt/pure/scanBlack (; 23 ;) (type $FUNCSIG$vi) (param $0 i32)
local.get $0 local.get $0
local.get $0 local.get $0
i32.load offset=4 i32.load offset=4
@ -1445,7 +1448,7 @@
i32.const 4 i32.const 4
call $~lib/rt/__visit_members call $~lib/rt/__visit_members
) )
(func $~lib/rt/pure/scan (; 23 ;) (type $FUNCSIG$vi) (param $0 i32) (func $~lib/rt/pure/scan (; 24 ;) (type $FUNCSIG$vi) (param $0 i32)
(local $1 i32) (local $1 i32)
local.get $0 local.get $0
i32.load offset=4 i32.load offset=4
@ -1479,7 +1482,7 @@
end end
end end
) )
(func $~lib/rt/pure/collectWhite (; 24 ;) (type $FUNCSIG$vi) (param $0 i32) (func $~lib/rt/pure/collectWhite (; 25 ;) (type $FUNCSIG$vi) (param $0 i32)
(local $1 i32) (local $1 i32)
local.get $0 local.get $0
i32.load offset=4 i32.load offset=4
@ -1507,7 +1510,7 @@
local.get $0 local.get $0
call $~lib/rt/tlsf/freeBlock call $~lib/rt/tlsf/freeBlock
) )
(func $~lib/rt/pure/__visit (; 25 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/rt/pure/__visit (; 26 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
local.get $0 local.get $0
i32.const 300 i32.const 300
i32.lt_u i32.lt_u
@ -1553,7 +1556,7 @@
if if
i32.const 0 i32.const 0
i32.const 40 i32.const 40
i32.const 74 i32.const 75
i32.const 17 i32.const 17
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1586,7 +1589,7 @@
if if
i32.const 0 i32.const 0
i32.const 40 i32.const 40
i32.const 85 i32.const 86
i32.const 6 i32.const 6
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1611,13 +1614,13 @@
end end
i32.const 0 i32.const 0
i32.const 40 i32.const 40
i32.const 96 i32.const 97
i32.const 24 i32.const 24
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
end end
) )
(func $~lib/rt/__visit_members (; 26 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/rt/__visit_members (; 27 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
block $switch$1$default block $switch$1$default
block $switch$1$case$4 block $switch$1$case$4
block $switch$1$case$2 block $switch$1$case$2
@ -1641,7 +1644,7 @@
end end
unreachable unreachable
) )
(func $null (; 27 ;) (type $FUNCSIG$v) (func $null (; 28 ;) (type $FUNCSIG$v)
nop nop
) )
) )

View File

@ -9,9 +9,10 @@
(type $FUNCSIG$iiii (func (param i32 i32 i32) (result i32))) (type $FUNCSIG$iiii (func (param i32 i32 i32) (result i32)))
(type $FUNCSIG$viii (func (param i32 i32 i32))) (type $FUNCSIG$viii (func (param i32 i32 i32)))
(import "env" "abort" (func $~lib/builtins/abort (param i32 i32 i32 i32))) (import "env" "abort" (func $~lib/builtins/abort (param i32 i32 i32 i32)))
(import "rtrace" "retain" (func $~lib/rt/pure/onIncrement (param i32))) (import "rtrace" "onincrement" (func $~lib/rt/rtrace/onincrement (param i32)))
(import "rtrace" "release" (func $~lib/rt/pure/onDecrement (param i32))) (import "rtrace" "ondecrement" (func $~lib/rt/rtrace/ondecrement (param i32)))
(import "rtrace" "free" (func $~lib/rt/tlsf/onFree (param i32))) (import "rtrace" "onfree" (func $~lib/rt/rtrace/onfree (param i32)))
(import "rtrace" "onalloc" (func $~lib/rt/rtrace/onalloc (param i32)))
(memory $0 1) (memory $0 1)
(data (i32.const 8) "\00\00\00\00\01\00\00\00\01\00\00\00\00\00\00\00") (data (i32.const 8) "\00\00\00\00\01\00\00\00\01\00\00\00\00\00\00\00")
(data (i32.const 24) "\1e\00\00\00\01\00\00\00\01\00\00\00\1e\00\00\00~\00l\00i\00b\00/\00r\00t\00/\00p\00u\00r\00e\00.\00t\00s\00") (data (i32.const 24) "\1e\00\00\00\01\00\00\00\01\00\00\00\1e\00\00\00~\00l\00i\00b\00/\00r\00t\00/\00p\00u\00r\00e\00.\00t\00s\00")
@ -32,7 +33,7 @@
(global $~lib/heap/HEAP_BASE i32 (i32.const 300)) (global $~lib/heap/HEAP_BASE i32 (i32.const 300))
(export "memory" (memory $0)) (export "memory" (memory $0))
(start $start) (start $start)
(func $~lib/rt/pure/increment (; 4 ;) (type $FUNCSIG$vi) (param $0 i32) (func $~lib/rt/pure/increment (; 5 ;) (type $FUNCSIG$vi) (param $0 i32)
(local $1 i32) (local $1 i32)
local.get $0 local.get $0
i32.load offset=4 i32.load offset=4
@ -54,7 +55,7 @@
if if
i32.const 0 i32.const 0
i32.const 40 i32.const 40
i32.const 103 i32.const 104
i32.const 2 i32.const 2
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -65,7 +66,7 @@
i32.add i32.add
i32.store offset=4 i32.store offset=4
local.get $0 local.get $0
call $~lib/rt/pure/onIncrement call $~lib/rt/rtrace/onincrement
local.get $0 local.get $0
i32.load i32.load
i32.const 1 i32.const 1
@ -75,13 +76,13 @@
if if
i32.const 0 i32.const 0
i32.const 40 i32.const 40
i32.const 106 i32.const 107
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
end end
) )
(func $~lib/rt/pure/__retain (; 5 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (func $~lib/rt/pure/__retain (; 6 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
local.get $0 local.get $0
global.get $~lib/heap/HEAP_BASE global.get $~lib/heap/HEAP_BASE
i32.gt_u i32.gt_u
@ -93,11 +94,11 @@
end end
local.get $0 local.get $0
) )
(func $rc/global-init/getRef (; 6 ;) (type $FUNCSIG$i) (result i32) (func $rc/global-init/getRef (; 7 ;) (type $FUNCSIG$i) (result i32)
i32.const 24 i32.const 24
call $~lib/rt/pure/__retain call $~lib/rt/pure/__retain
) )
(func $~lib/rt/tlsf/removeBlock (; 7 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/rt/tlsf/removeBlock (; 8 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
@ -118,7 +119,7 @@
if if
i32.const 0 i32.const 0
i32.const 88 i32.const 88
i32.const 275 i32.const 276
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -143,7 +144,7 @@
if if
i32.const 0 i32.const 0
i32.const 88 i32.const 88
i32.const 277 i32.const 278
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -195,7 +196,7 @@
if if
i32.const 0 i32.const 0
i32.const 88 i32.const 88
i32.const 290 i32.const 291
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -315,7 +316,7 @@
end end
end end
) )
(func $~lib/rt/tlsf/insertBlock (; 8 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/rt/tlsf/insertBlock (; 9 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
@ -333,7 +334,7 @@
if if
i32.const 0 i32.const 0
i32.const 88 i32.const 88
i32.const 203 i32.const 204
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -348,7 +349,7 @@
if if
i32.const 0 i32.const 0
i32.const 88 i32.const 88
i32.const 205 i32.const 206
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -447,7 +448,7 @@
if if
i32.const 0 i32.const 0
i32.const 88 i32.const 88
i32.const 226 i32.const 227
i32.const 15 i32.const 15
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -510,7 +511,7 @@
if if
i32.const 0 i32.const 0
i32.const 88 i32.const 88
i32.const 241 i32.const 242
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -526,7 +527,7 @@
if if
i32.const 0 i32.const 0
i32.const 88 i32.const 88
i32.const 242 i32.const 243
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -583,7 +584,7 @@
if if
i32.const 0 i32.const 0
i32.const 88 i32.const 88
i32.const 258 i32.const 259
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -679,7 +680,7 @@
i32.store offset=4 i32.store offset=4
end end
) )
(func $~lib/rt/tlsf/freeBlock (; 9 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/rt/tlsf/freeBlock (; 10 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
(local $2 i32) (local $2 i32)
local.get $1 local.get $1
i32.load i32.load
@ -692,7 +693,7 @@
if if
i32.const 0 i32.const 0
i32.const 88 i32.const 88
i32.const 530 i32.const 531
i32.const 2 i32.const 2
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -706,9 +707,9 @@
local.get $1 local.get $1
call $~lib/rt/tlsf/insertBlock call $~lib/rt/tlsf/insertBlock
local.get $1 local.get $1
call $~lib/rt/tlsf/onFree call $~lib/rt/rtrace/onfree
) )
(func $~lib/rt/__typeinfo (; 10 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (func $~lib/rt/__typeinfo (; 11 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
(local $1 i32) (local $1 i32)
global.get $~lib/rt/RTTI_BASE global.get $~lib/rt/RTTI_BASE
local.set $1 local.set $1
@ -733,7 +734,7 @@
i32.add i32.add
i32.load i32.load
) )
(func $~lib/rt/tlsf/addMemory (; 11 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (func $~lib/rt/tlsf/addMemory (; 12 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
(local $5 i32) (local $5 i32)
@ -764,7 +765,7 @@
if if
i32.const 0 i32.const 0
i32.const 88 i32.const 88
i32.const 384 i32.const 385
i32.const 4 i32.const 4
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -789,7 +790,7 @@
if if
i32.const 0 i32.const 0
i32.const 88 i32.const 88
i32.const 394 i32.const 395
i32.const 15 i32.const 15
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -820,7 +821,7 @@
if if
i32.const 0 i32.const 0
i32.const 88 i32.const 88
i32.const 406 i32.const 407
i32.const 4 i32.const 4
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -885,7 +886,7 @@
call $~lib/rt/tlsf/insertBlock call $~lib/rt/tlsf/insertBlock
i32.const 1 i32.const 1
) )
(func $~lib/rt/tlsf/initializeRoot (; 12 ;) (type $FUNCSIG$v) (func $~lib/rt/tlsf/initializeRoot (; 13 ;) (type $FUNCSIG$v)
(local $0 i32) (local $0 i32)
(local $1 i32) (local $1 i32)
(local $2 i32) (local $2 i32)
@ -1038,7 +1039,7 @@
local.get $3 local.get $3
global.set $~lib/rt/tlsf/ROOT global.set $~lib/rt/tlsf/ROOT
) )
(func $~lib/rt/tlsf/prepareSize (; 13 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (func $~lib/rt/tlsf/prepareSize (; 14 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
(local $1 i32) (local $1 i32)
(local $2 i32) (local $2 i32)
local.get $0 local.get $0
@ -1047,7 +1048,7 @@
if if
i32.const 232 i32.const 232
i32.const 88 i32.const 88
i32.const 446 i32.const 447
i32.const 29 i32.const 29
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1067,7 +1068,7 @@
i32.gt_u i32.gt_u
select select
) )
(func $~lib/rt/tlsf/searchBlock (; 14 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (func $~lib/rt/tlsf/searchBlock (; 15 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
@ -1141,7 +1142,7 @@
if if
i32.const 0 i32.const 0
i32.const 88 i32.const 88
i32.const 336 i32.const 337
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1208,7 +1209,7 @@
if if
i32.const 0 i32.const 0
i32.const 88 i32.const 88
i32.const 349 i32.const 350
i32.const 17 i32.const 17
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1258,7 +1259,7 @@
end end
local.get $7 local.get $7
) )
(func $~lib/rt/tlsf/growMemory (; 15 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/rt/tlsf/growMemory (; 16 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
@ -1311,7 +1312,7 @@
call $~lib/rt/tlsf/addMemory call $~lib/rt/tlsf/addMemory
drop drop
) )
(func $~lib/rt/tlsf/prepareBlock (; 16 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) (func $~lib/rt/tlsf/prepareBlock (; 17 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
(local $5 i32) (local $5 i32)
@ -1326,7 +1327,7 @@
if if
i32.const 0 i32.const 0
i32.const 88 i32.const 88
i32.const 363 i32.const 364
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1410,7 +1411,7 @@
i32.store i32.store
end end
) )
(func $~lib/rt/tlsf/allocateBlock (; 17 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (func $~lib/rt/tlsf/allocateBlock (; 18 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
local.get $1 local.get $1
@ -1435,7 +1436,7 @@
if if
i32.const 0 i32.const 0
i32.const 88 i32.const 88
i32.const 476 i32.const 477
i32.const 15 i32.const 15
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1453,7 +1454,7 @@
if if
i32.const 0 i32.const 0
i32.const 88 i32.const 88
i32.const 478 i32.const 479
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1472,8 +1473,10 @@
local.get $2 local.get $2
call $~lib/rt/tlsf/prepareBlock call $~lib/rt/tlsf/prepareBlock
local.get $3 local.get $3
call $~lib/rt/rtrace/onalloc
local.get $3
) )
(func $~lib/rt/tlsf/__alloc (; 18 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (func $~lib/rt/tlsf/__alloc (; 19 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
global.get $~lib/rt/tlsf/ROOT global.get $~lib/rt/tlsf/ROOT
@ -1496,7 +1499,7 @@
i32.const 16 i32.const 16
i32.add i32.add
) )
(func $~lib/memory/memory.copy (; 19 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) (func $~lib/memory/memory.copy (; 20 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
(local $5 i32) (local $5 i32)
@ -1702,7 +1705,7 @@
end end
end end
) )
(func $~lib/rt/pure/growRoots (; 20 ;) (type $FUNCSIG$v) (func $~lib/rt/pure/growRoots (; 21 ;) (type $FUNCSIG$v)
(local $0 i32) (local $0 i32)
(local $1 i32) (local $1 i32)
(local $2 i32) (local $2 i32)
@ -1747,7 +1750,7 @@
i32.add i32.add
global.set $~lib/rt/pure/END global.set $~lib/rt/pure/END
) )
(func $~lib/rt/pure/appendRoot (; 21 ;) (type $FUNCSIG$vi) (param $0 i32) (func $~lib/rt/pure/appendRoot (; 22 ;) (type $FUNCSIG$vi) (param $0 i32)
(local $1 i32) (local $1 i32)
global.get $~lib/rt/pure/CUR global.get $~lib/rt/pure/CUR
local.set $1 local.set $1
@ -1767,7 +1770,7 @@
i32.add i32.add
global.set $~lib/rt/pure/CUR global.set $~lib/rt/pure/CUR
) )
(func $~lib/rt/pure/decrement (; 22 ;) (type $FUNCSIG$vi) (param $0 i32) (func $~lib/rt/pure/decrement (; 23 ;) (type $FUNCSIG$vi) (param $0 i32)
(local $1 i32) (local $1 i32)
(local $2 i32) (local $2 i32)
local.get $0 local.get $0
@ -1778,7 +1781,7 @@
i32.and i32.and
local.set $2 local.set $2
local.get $0 local.get $0
call $~lib/rt/pure/onDecrement call $~lib/rt/rtrace/ondecrement
local.get $0 local.get $0
i32.load i32.load
i32.const 1 i32.const 1
@ -1788,7 +1791,7 @@
if if
i32.const 0 i32.const 0
i32.const 40 i32.const 40
i32.const 114 i32.const 115
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1827,7 +1830,7 @@
if if
i32.const 0 i32.const 0
i32.const 40 i32.const 40
i32.const 123 i32.const 124
i32.const 15 i32.const 15
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1871,7 +1874,7 @@
end end
end end
) )
(func $~lib/rt/pure/__retainRelease (; 23 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (func $~lib/rt/pure/__retainRelease (; 24 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
(local $2 i32) (local $2 i32)
local.get $1 local.get $1
local.get $0 local.get $0
@ -1900,7 +1903,7 @@
end end
local.get $1 local.get $1
) )
(func $start:rc/global-init (; 24 ;) (type $FUNCSIG$v) (func $start:rc/global-init (; 25 ;) (type $FUNCSIG$v)
call $rc/global-init/getRef call $rc/global-init/getRef
global.set $rc/global-init/a global.set $rc/global-init/a
call $rc/global-init/getRef call $rc/global-init/getRef
@ -1914,10 +1917,10 @@
call $~lib/rt/pure/__retainRelease call $~lib/rt/pure/__retainRelease
global.set $rc/global-init/b global.set $rc/global-init/b
) )
(func $start (; 25 ;) (type $FUNCSIG$v) (func $start (; 26 ;) (type $FUNCSIG$v)
call $start:rc/global-init call $start:rc/global-init
) )
(func $~lib/rt/pure/markGray (; 26 ;) (type $FUNCSIG$vi) (param $0 i32) (func $~lib/rt/pure/markGray (; 27 ;) (type $FUNCSIG$vi) (param $0 i32)
(local $1 i32) (local $1 i32)
local.get $0 local.get $0
i32.load offset=4 i32.load offset=4
@ -1944,7 +1947,7 @@
call $~lib/rt/__visit_members call $~lib/rt/__visit_members
end end
) )
(func $~lib/rt/pure/scanBlack (; 27 ;) (type $FUNCSIG$vi) (param $0 i32) (func $~lib/rt/pure/scanBlack (; 28 ;) (type $FUNCSIG$vi) (param $0 i32)
local.get $0 local.get $0
local.get $0 local.get $0
i32.load offset=4 i32.load offset=4
@ -1961,7 +1964,7 @@
i32.const 4 i32.const 4
call $~lib/rt/__visit_members call $~lib/rt/__visit_members
) )
(func $~lib/rt/pure/scan (; 28 ;) (type $FUNCSIG$vi) (param $0 i32) (func $~lib/rt/pure/scan (; 29 ;) (type $FUNCSIG$vi) (param $0 i32)
(local $1 i32) (local $1 i32)
local.get $0 local.get $0
i32.load offset=4 i32.load offset=4
@ -1998,7 +2001,7 @@
end end
end end
) )
(func $~lib/rt/pure/collectWhite (; 29 ;) (type $FUNCSIG$vi) (param $0 i32) (func $~lib/rt/pure/collectWhite (; 30 ;) (type $FUNCSIG$vi) (param $0 i32)
(local $1 i32) (local $1 i32)
local.get $0 local.get $0
i32.load offset=4 i32.load offset=4
@ -2027,7 +2030,7 @@
local.get $0 local.get $0
call $~lib/rt/tlsf/freeBlock call $~lib/rt/tlsf/freeBlock
) )
(func $~lib/rt/pure/__visit (; 30 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/rt/pure/__visit (; 31 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
local.get $0 local.get $0
@ -2090,7 +2093,7 @@
if if
i32.const 0 i32.const 0
i32.const 40 i32.const 40
i32.const 74 i32.const 75
i32.const 17 i32.const 17
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -2137,7 +2140,7 @@
if if
i32.const 0 i32.const 0
i32.const 40 i32.const 40
i32.const 85 i32.const 86
i32.const 6 i32.const 6
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -2174,14 +2177,14 @@
if if
i32.const 0 i32.const 0
i32.const 40 i32.const 40
i32.const 96 i32.const 97
i32.const 24 i32.const 24
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
end end
end end
) )
(func $~lib/rt/__visit_members (; 31 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/rt/__visit_members (; 32 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
(local $2 i32) (local $2 i32)
block block
end end
@ -2238,6 +2241,6 @@
unreachable unreachable
end end
) )
(func $null (; 32 ;) (type $FUNCSIG$v) (func $null (; 33 ;) (type $FUNCSIG$v)
) )
) )

View File

@ -7,9 +7,10 @@
(type $FUNCSIG$iii (func (param i32 i32) (result i32))) (type $FUNCSIG$iii (func (param i32 i32) (result i32)))
(type $FUNCSIG$viii (func (param i32 i32 i32))) (type $FUNCSIG$viii (func (param i32 i32 i32)))
(import "env" "abort" (func $~lib/builtins/abort (param i32 i32 i32 i32))) (import "env" "abort" (func $~lib/builtins/abort (param i32 i32 i32 i32)))
(import "rtrace" "retain" (func $~lib/rt/pure/onIncrement (param i32))) (import "rtrace" "onincrement" (func $~lib/rt/rtrace/onincrement (param i32)))
(import "rtrace" "release" (func $~lib/rt/pure/onDecrement (param i32))) (import "rtrace" "ondecrement" (func $~lib/rt/rtrace/ondecrement (param i32)))
(import "rtrace" "free" (func $~lib/rt/tlsf/onFree (param i32))) (import "rtrace" "onfree" (func $~lib/rt/rtrace/onfree (param i32)))
(import "rtrace" "onalloc" (func $~lib/rt/rtrace/onalloc (param i32)))
(memory $0 1) (memory $0 1)
(data (i32.const 12) "\01\00\00\00\01") (data (i32.const 12) "\01\00\00\00\01")
(data (i32.const 24) "\1e\00\00\00\01\00\00\00\01\00\00\00\1e\00\00\00~\00l\00i\00b\00/\00r\00t\00/\00p\00u\00r\00e\00.\00t\00s") (data (i32.const 24) "\1e\00\00\00\01\00\00\00\01\00\00\00\1e\00\00\00~\00l\00i\00b\00/\00r\00t\00/\00p\00u\00r\00e\00.\00t\00s")
@ -24,7 +25,7 @@
(global $~lib/rt/pure/ROOTS (mut i32) (i32.const 0)) (global $~lib/rt/pure/ROOTS (mut i32) (i32.const 0))
(export "memory" (memory $0)) (export "memory" (memory $0))
(start $start) (start $start)
(func $~lib/rt/pure/increment (; 4 ;) (type $FUNCSIG$vi) (param $0 i32) (func $~lib/rt/pure/increment (; 5 ;) (type $FUNCSIG$vi) (param $0 i32)
(local $1 i32) (local $1 i32)
local.get $0 local.get $0
i32.load offset=4 i32.load offset=4
@ -40,7 +41,7 @@
if if
i32.const 0 i32.const 0
i32.const 40 i32.const 40
i32.const 103 i32.const 104
i32.const 2 i32.const 2
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -51,7 +52,7 @@
i32.add i32.add
i32.store offset=4 i32.store offset=4
local.get $0 local.get $0
call $~lib/rt/pure/onIncrement call $~lib/rt/rtrace/onincrement
local.get $0 local.get $0
i32.load i32.load
i32.const 1 i32.const 1
@ -59,13 +60,13 @@
if if
i32.const 0 i32.const 0
i32.const 40 i32.const 40
i32.const 106 i32.const 107
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
end end
) )
(func $~lib/rt/pure/__retain (; 5 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (func $~lib/rt/pure/__retain (; 6 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
local.get $0 local.get $0
i32.const 308 i32.const 308
i32.gt_u i32.gt_u
@ -77,7 +78,7 @@
end end
local.get $0 local.get $0
) )
(func $~lib/rt/tlsf/removeBlock (; 6 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/rt/tlsf/removeBlock (; 7 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
@ -91,7 +92,7 @@
if if
i32.const 0 i32.const 0
i32.const 88 i32.const 88
i32.const 275 i32.const 276
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -113,7 +114,7 @@
if if
i32.const 0 i32.const 0
i32.const 88 i32.const 88
i32.const 277 i32.const 278
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -158,7 +159,7 @@
if if
i32.const 0 i32.const 0
i32.const 88 i32.const 88
i32.const 290 i32.const 291
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -243,7 +244,7 @@
end end
end end
) )
(func $~lib/rt/tlsf/insertBlock (; 7 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/rt/tlsf/insertBlock (; 8 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
@ -255,7 +256,7 @@
if if
i32.const 0 i32.const 0
i32.const 88 i32.const 88
i32.const 203 i32.const 204
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -269,7 +270,7 @@
if if
i32.const 0 i32.const 0
i32.const 88 i32.const 88
i32.const 205 i32.const 206
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -342,7 +343,7 @@
if if
i32.const 0 i32.const 0
i32.const 88 i32.const 88
i32.const 226 i32.const 227
i32.const 15 i32.const 15
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -399,7 +400,7 @@
if if
i32.const 0 i32.const 0
i32.const 88 i32.const 88
i32.const 241 i32.const 242
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -414,7 +415,7 @@
if if
i32.const 0 i32.const 0
i32.const 88 i32.const 88
i32.const 242 i32.const 243
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -464,7 +465,7 @@
if if
i32.const 0 i32.const 0
i32.const 88 i32.const 88
i32.const 258 i32.const 259
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -528,7 +529,7 @@
i32.or i32.or
i32.store offset=4 i32.store offset=4
) )
(func $~lib/rt/tlsf/freeBlock (; 8 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/rt/tlsf/freeBlock (; 9 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
(local $2 i32) (local $2 i32)
local.get $1 local.get $1
i32.load i32.load
@ -538,7 +539,7 @@
if if
i32.const 0 i32.const 0
i32.const 88 i32.const 88
i32.const 530 i32.const 531
i32.const 2 i32.const 2
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -552,9 +553,9 @@
local.get $1 local.get $1
call $~lib/rt/tlsf/insertBlock call $~lib/rt/tlsf/insertBlock
local.get $1 local.get $1
call $~lib/rt/tlsf/onFree call $~lib/rt/rtrace/onfree
) )
(func $~lib/rt/__typeinfo (; 9 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (func $~lib/rt/__typeinfo (; 10 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
local.get $0 local.get $0
i32.const 272 i32.const 272
i32.load i32.load
@ -574,7 +575,7 @@
i32.add i32.add
i32.load i32.load
) )
(func $~lib/rt/tlsf/addMemory (; 10 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) (func $~lib/rt/tlsf/addMemory (; 11 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
local.get $2 local.get $2
@ -596,7 +597,7 @@
if if
i32.const 0 i32.const 0
i32.const 88 i32.const 88
i32.const 384 i32.const 385
i32.const 4 i32.const 4
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -613,7 +614,7 @@
if if
i32.const 0 i32.const 0
i32.const 88 i32.const 88
i32.const 394 i32.const 395
i32.const 15 i32.const 15
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -641,7 +642,7 @@
if if
i32.const 0 i32.const 0
i32.const 88 i32.const 88
i32.const 406 i32.const 407
i32.const 4 i32.const 4
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -688,7 +689,7 @@
local.get $1 local.get $1
call $~lib/rt/tlsf/insertBlock call $~lib/rt/tlsf/insertBlock
) )
(func $~lib/rt/tlsf/initializeRoot (; 11 ;) (type $FUNCSIG$v) (func $~lib/rt/tlsf/initializeRoot (; 12 ;) (type $FUNCSIG$v)
(local $0 i32) (local $0 i32)
(local $1 i32) (local $1 i32)
i32.const 1 i32.const 1
@ -771,14 +772,14 @@
i32.const 320 i32.const 320
global.set $~lib/rt/tlsf/ROOT global.set $~lib/rt/tlsf/ROOT
) )
(func $~lib/rt/tlsf/prepareSize (; 12 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (func $~lib/rt/tlsf/prepareSize (; 13 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
local.get $0 local.get $0
i32.const 1073741808 i32.const 1073741808
i32.ge_u i32.ge_u
if if
i32.const 232 i32.const 232
i32.const 88 i32.const 88
i32.const 446 i32.const 447
i32.const 29 i32.const 29
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -795,7 +796,7 @@
i32.gt_u i32.gt_u
select select
) )
(func $~lib/rt/tlsf/searchBlock (; 13 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (func $~lib/rt/tlsf/searchBlock (; 14 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
(local $2 i32) (local $2 i32)
local.get $1 local.get $1
i32.const 256 i32.const 256
@ -853,7 +854,7 @@
if if
i32.const 0 i32.const 0
i32.const 88 i32.const 88
i32.const 336 i32.const 337
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -905,7 +906,7 @@
if if
i32.const 0 i32.const 0
i32.const 88 i32.const 88
i32.const 349 i32.const 350
i32.const 17 i32.const 17
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -926,7 +927,7 @@
end end
end end
) )
(func $~lib/rt/tlsf/growMemory (; 14 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/rt/tlsf/growMemory (; 15 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
(local $2 i32) (local $2 i32)
memory.size memory.size
local.tee $2 local.tee $2
@ -963,7 +964,7 @@
i32.shl i32.shl
call $~lib/rt/tlsf/addMemory call $~lib/rt/tlsf/addMemory
) )
(func $~lib/rt/tlsf/prepareBlock (; 15 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) (func $~lib/rt/tlsf/prepareBlock (; 16 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
local.get $1 local.get $1
@ -975,7 +976,7 @@
if if
i32.const 0 i32.const 0
i32.const 88 i32.const 88
i32.const 363 i32.const 364
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1039,7 +1040,7 @@
i32.store i32.store
end end
) )
(func $~lib/rt/tlsf/allocateBlock (; 16 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (func $~lib/rt/tlsf/allocateBlock (; 17 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
local.get $0 local.get $0
@ -1061,7 +1062,7 @@
if if
i32.const 0 i32.const 0
i32.const 88 i32.const 88
i32.const 476 i32.const 477
i32.const 15 i32.const 15
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1076,7 +1077,7 @@
if if
i32.const 0 i32.const 0
i32.const 88 i32.const 88
i32.const 478 i32.const 479
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1095,8 +1096,10 @@
local.get $3 local.get $3
call $~lib/rt/tlsf/prepareBlock call $~lib/rt/tlsf/prepareBlock
local.get $2 local.get $2
call $~lib/rt/rtrace/onalloc
local.get $2
) )
(func $~lib/rt/tlsf/__alloc (; 17 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (func $~lib/rt/tlsf/__alloc (; 18 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
(local $2 i32) (local $2 i32)
global.get $~lib/rt/tlsf/ROOT global.get $~lib/rt/tlsf/ROOT
local.tee $2 local.tee $2
@ -1115,7 +1118,7 @@
i32.const 16 i32.const 16
i32.add i32.add
) )
(func $~lib/memory/memory.copy (; 18 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) (func $~lib/memory/memory.copy (; 19 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
block $~lib/util/memory/memmove|inlined.0 block $~lib/util/memory/memmove|inlined.0
@ -1288,7 +1291,7 @@
end end
end end
) )
(func $~lib/rt/pure/growRoots (; 19 ;) (type $FUNCSIG$v) (func $~lib/rt/pure/growRoots (; 20 ;) (type $FUNCSIG$v)
(local $0 i32) (local $0 i32)
(local $1 i32) (local $1 i32)
(local $2 i32) (local $2 i32)
@ -1324,7 +1327,7 @@
i32.add i32.add
global.set $~lib/rt/pure/END global.set $~lib/rt/pure/END
) )
(func $~lib/rt/pure/appendRoot (; 20 ;) (type $FUNCSIG$vi) (param $0 i32) (func $~lib/rt/pure/appendRoot (; 21 ;) (type $FUNCSIG$vi) (param $0 i32)
(local $1 i32) (local $1 i32)
global.get $~lib/rt/pure/CUR global.get $~lib/rt/pure/CUR
local.tee $1 local.tee $1
@ -1343,7 +1346,7 @@
i32.add i32.add
global.set $~lib/rt/pure/CUR global.set $~lib/rt/pure/CUR
) )
(func $~lib/rt/pure/decrement (; 21 ;) (type $FUNCSIG$vi) (param $0 i32) (func $~lib/rt/pure/decrement (; 22 ;) (type $FUNCSIG$vi) (param $0 i32)
(local $1 i32) (local $1 i32)
(local $2 i32) (local $2 i32)
local.get $0 local.get $0
@ -1353,7 +1356,7 @@
i32.and i32.and
local.set $1 local.set $1
local.get $0 local.get $0
call $~lib/rt/pure/onDecrement call $~lib/rt/rtrace/ondecrement
local.get $0 local.get $0
i32.load i32.load
i32.const 1 i32.const 1
@ -1361,7 +1364,7 @@
if if
i32.const 0 i32.const 0
i32.const 40 i32.const 40
i32.const 114 i32.const 115
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1394,7 +1397,7 @@
if if
i32.const 0 i32.const 0
i32.const 40 i32.const 40
i32.const 123 i32.const 124
i32.const 15 i32.const 15
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1433,7 +1436,7 @@
end end
end end
) )
(func $~lib/rt/pure/__release (; 22 ;) (type $FUNCSIG$vi) (param $0 i32) (func $~lib/rt/pure/__release (; 23 ;) (type $FUNCSIG$vi) (param $0 i32)
local.get $0 local.get $0
i32.const 308 i32.const 308
i32.gt_u i32.gt_u
@ -1444,7 +1447,7 @@
call $~lib/rt/pure/decrement call $~lib/rt/pure/decrement
end end
) )
(func $start (; 23 ;) (type $FUNCSIG$v) (func $start (; 24 ;) (type $FUNCSIG$v)
i32.const 24 i32.const 24
call $~lib/rt/pure/__retain call $~lib/rt/pure/__retain
call $~lib/rt/pure/__release call $~lib/rt/pure/__release
@ -1457,7 +1460,7 @@
call $~lib/rt/pure/__retain call $~lib/rt/pure/__retain
call $~lib/rt/pure/__release call $~lib/rt/pure/__release
) )
(func $~lib/rt/pure/markGray (; 24 ;) (type $FUNCSIG$vi) (param $0 i32) (func $~lib/rt/pure/markGray (; 25 ;) (type $FUNCSIG$vi) (param $0 i32)
(local $1 i32) (local $1 i32)
local.get $0 local.get $0
i32.load offset=4 i32.load offset=4
@ -1481,7 +1484,7 @@
call $~lib/rt/__visit_members call $~lib/rt/__visit_members
end end
) )
(func $~lib/rt/pure/scanBlack (; 25 ;) (type $FUNCSIG$vi) (param $0 i32) (func $~lib/rt/pure/scanBlack (; 26 ;) (type $FUNCSIG$vi) (param $0 i32)
local.get $0 local.get $0
local.get $0 local.get $0
i32.load offset=4 i32.load offset=4
@ -1494,7 +1497,7 @@
i32.const 4 i32.const 4
call $~lib/rt/__visit_members call $~lib/rt/__visit_members
) )
(func $~lib/rt/pure/scan (; 26 ;) (type $FUNCSIG$vi) (param $0 i32) (func $~lib/rt/pure/scan (; 27 ;) (type $FUNCSIG$vi) (param $0 i32)
(local $1 i32) (local $1 i32)
local.get $0 local.get $0
i32.load offset=4 i32.load offset=4
@ -1528,7 +1531,7 @@
end end
end end
) )
(func $~lib/rt/pure/collectWhite (; 27 ;) (type $FUNCSIG$vi) (param $0 i32) (func $~lib/rt/pure/collectWhite (; 28 ;) (type $FUNCSIG$vi) (param $0 i32)
(local $1 i32) (local $1 i32)
local.get $0 local.get $0
i32.load offset=4 i32.load offset=4
@ -1556,7 +1559,7 @@
local.get $0 local.get $0
call $~lib/rt/tlsf/freeBlock call $~lib/rt/tlsf/freeBlock
) )
(func $~lib/rt/pure/__visit (; 28 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/rt/pure/__visit (; 29 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
local.get $0 local.get $0
i32.const 308 i32.const 308
i32.lt_u i32.lt_u
@ -1602,7 +1605,7 @@
if if
i32.const 0 i32.const 0
i32.const 40 i32.const 40
i32.const 74 i32.const 75
i32.const 17 i32.const 17
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1635,7 +1638,7 @@
if if
i32.const 0 i32.const 0
i32.const 40 i32.const 40
i32.const 85 i32.const 86
i32.const 6 i32.const 6
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1660,13 +1663,13 @@
end end
i32.const 0 i32.const 0
i32.const 40 i32.const 40
i32.const 96 i32.const 97
i32.const 24 i32.const 24
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
end end
) )
(func $~lib/rt/__visit_members (; 29 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/rt/__visit_members (; 30 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
block $switch$1$default block $switch$1$default
block $switch$1$case$4 block $switch$1$case$4
block $switch$1$case$2 block $switch$1$case$2
@ -1690,7 +1693,7 @@
end end
unreachable unreachable
) )
(func $null (; 30 ;) (type $FUNCSIG$v) (func $null (; 31 ;) (type $FUNCSIG$v)
nop nop
) )
) )

View File

@ -9,9 +9,10 @@
(type $FUNCSIG$viii (func (param i32 i32 i32))) (type $FUNCSIG$viii (func (param i32 i32 i32)))
(type $FUNCSIG$i (func (result i32))) (type $FUNCSIG$i (func (result i32)))
(import "env" "abort" (func $~lib/builtins/abort (param i32 i32 i32 i32))) (import "env" "abort" (func $~lib/builtins/abort (param i32 i32 i32 i32)))
(import "rtrace" "retain" (func $~lib/rt/pure/onIncrement (param i32))) (import "rtrace" "onincrement" (func $~lib/rt/rtrace/onincrement (param i32)))
(import "rtrace" "release" (func $~lib/rt/pure/onDecrement (param i32))) (import "rtrace" "ondecrement" (func $~lib/rt/rtrace/ondecrement (param i32)))
(import "rtrace" "free" (func $~lib/rt/tlsf/onFree (param i32))) (import "rtrace" "onfree" (func $~lib/rt/rtrace/onfree (param i32)))
(import "rtrace" "onalloc" (func $~lib/rt/rtrace/onalloc (param i32)))
(memory $0 1) (memory $0 1)
(data (i32.const 8) "\00\00\00\00\01\00\00\00\01\00\00\00\00\00\00\00") (data (i32.const 8) "\00\00\00\00\01\00\00\00\01\00\00\00\00\00\00\00")
(data (i32.const 24) "\1e\00\00\00\01\00\00\00\01\00\00\00\1e\00\00\00~\00l\00i\00b\00/\00r\00t\00/\00p\00u\00r\00e\00.\00t\00s\00") (data (i32.const 24) "\1e\00\00\00\01\00\00\00\01\00\00\00\1e\00\00\00~\00l\00i\00b\00/\00r\00t\00/\00p\00u\00r\00e\00.\00t\00s\00")
@ -30,7 +31,7 @@
(global $~lib/heap/HEAP_BASE i32 (i32.const 308)) (global $~lib/heap/HEAP_BASE i32 (i32.const 308))
(export "memory" (memory $0)) (export "memory" (memory $0))
(start $start) (start $start)
(func $~lib/rt/pure/increment (; 4 ;) (type $FUNCSIG$vi) (param $0 i32) (func $~lib/rt/pure/increment (; 5 ;) (type $FUNCSIG$vi) (param $0 i32)
(local $1 i32) (local $1 i32)
local.get $0 local.get $0
i32.load offset=4 i32.load offset=4
@ -52,7 +53,7 @@
if if
i32.const 0 i32.const 0
i32.const 40 i32.const 40
i32.const 103 i32.const 104
i32.const 2 i32.const 2
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -63,7 +64,7 @@
i32.add i32.add
i32.store offset=4 i32.store offset=4
local.get $0 local.get $0
call $~lib/rt/pure/onIncrement call $~lib/rt/rtrace/onincrement
local.get $0 local.get $0
i32.load i32.load
i32.const 1 i32.const 1
@ -73,13 +74,13 @@
if if
i32.const 0 i32.const 0
i32.const 40 i32.const 40
i32.const 106 i32.const 107
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
end end
) )
(func $~lib/rt/pure/__retain (; 5 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (func $~lib/rt/pure/__retain (; 6 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
local.get $0 local.get $0
global.get $~lib/heap/HEAP_BASE global.get $~lib/heap/HEAP_BASE
i32.gt_u i32.gt_u
@ -91,7 +92,7 @@
end end
local.get $0 local.get $0
) )
(func $~lib/rt/tlsf/removeBlock (; 6 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/rt/tlsf/removeBlock (; 7 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
@ -112,7 +113,7 @@
if if
i32.const 0 i32.const 0
i32.const 88 i32.const 88
i32.const 275 i32.const 276
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -137,7 +138,7 @@
if if
i32.const 0 i32.const 0
i32.const 88 i32.const 88
i32.const 277 i32.const 278
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -189,7 +190,7 @@
if if
i32.const 0 i32.const 0
i32.const 88 i32.const 88
i32.const 290 i32.const 291
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -309,7 +310,7 @@
end end
end end
) )
(func $~lib/rt/tlsf/insertBlock (; 7 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/rt/tlsf/insertBlock (; 8 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
@ -327,7 +328,7 @@
if if
i32.const 0 i32.const 0
i32.const 88 i32.const 88
i32.const 203 i32.const 204
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -342,7 +343,7 @@
if if
i32.const 0 i32.const 0
i32.const 88 i32.const 88
i32.const 205 i32.const 206
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -441,7 +442,7 @@
if if
i32.const 0 i32.const 0
i32.const 88 i32.const 88
i32.const 226 i32.const 227
i32.const 15 i32.const 15
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -504,7 +505,7 @@
if if
i32.const 0 i32.const 0
i32.const 88 i32.const 88
i32.const 241 i32.const 242
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -520,7 +521,7 @@
if if
i32.const 0 i32.const 0
i32.const 88 i32.const 88
i32.const 242 i32.const 243
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -577,7 +578,7 @@
if if
i32.const 0 i32.const 0
i32.const 88 i32.const 88
i32.const 258 i32.const 259
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -673,7 +674,7 @@
i32.store offset=4 i32.store offset=4
end end
) )
(func $~lib/rt/tlsf/freeBlock (; 8 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/rt/tlsf/freeBlock (; 9 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
(local $2 i32) (local $2 i32)
local.get $1 local.get $1
i32.load i32.load
@ -686,7 +687,7 @@
if if
i32.const 0 i32.const 0
i32.const 88 i32.const 88
i32.const 530 i32.const 531
i32.const 2 i32.const 2
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -700,9 +701,9 @@
local.get $1 local.get $1
call $~lib/rt/tlsf/insertBlock call $~lib/rt/tlsf/insertBlock
local.get $1 local.get $1
call $~lib/rt/tlsf/onFree call $~lib/rt/rtrace/onfree
) )
(func $~lib/rt/__typeinfo (; 9 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (func $~lib/rt/__typeinfo (; 10 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
(local $1 i32) (local $1 i32)
global.get $~lib/rt/RTTI_BASE global.get $~lib/rt/RTTI_BASE
local.set $1 local.set $1
@ -727,7 +728,7 @@
i32.add i32.add
i32.load i32.load
) )
(func $~lib/rt/tlsf/addMemory (; 10 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (func $~lib/rt/tlsf/addMemory (; 11 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
(local $5 i32) (local $5 i32)
@ -758,7 +759,7 @@
if if
i32.const 0 i32.const 0
i32.const 88 i32.const 88
i32.const 384 i32.const 385
i32.const 4 i32.const 4
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -783,7 +784,7 @@
if if
i32.const 0 i32.const 0
i32.const 88 i32.const 88
i32.const 394 i32.const 395
i32.const 15 i32.const 15
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -814,7 +815,7 @@
if if
i32.const 0 i32.const 0
i32.const 88 i32.const 88
i32.const 406 i32.const 407
i32.const 4 i32.const 4
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -879,7 +880,7 @@
call $~lib/rt/tlsf/insertBlock call $~lib/rt/tlsf/insertBlock
i32.const 1 i32.const 1
) )
(func $~lib/rt/tlsf/initializeRoot (; 11 ;) (type $FUNCSIG$v) (func $~lib/rt/tlsf/initializeRoot (; 12 ;) (type $FUNCSIG$v)
(local $0 i32) (local $0 i32)
(local $1 i32) (local $1 i32)
(local $2 i32) (local $2 i32)
@ -1032,7 +1033,7 @@
local.get $3 local.get $3
global.set $~lib/rt/tlsf/ROOT global.set $~lib/rt/tlsf/ROOT
) )
(func $~lib/rt/tlsf/prepareSize (; 12 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (func $~lib/rt/tlsf/prepareSize (; 13 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
(local $1 i32) (local $1 i32)
(local $2 i32) (local $2 i32)
local.get $0 local.get $0
@ -1041,7 +1042,7 @@
if if
i32.const 232 i32.const 232
i32.const 88 i32.const 88
i32.const 446 i32.const 447
i32.const 29 i32.const 29
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1061,7 +1062,7 @@
i32.gt_u i32.gt_u
select select
) )
(func $~lib/rt/tlsf/searchBlock (; 13 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (func $~lib/rt/tlsf/searchBlock (; 14 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
@ -1135,7 +1136,7 @@
if if
i32.const 0 i32.const 0
i32.const 88 i32.const 88
i32.const 336 i32.const 337
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1202,7 +1203,7 @@
if if
i32.const 0 i32.const 0
i32.const 88 i32.const 88
i32.const 349 i32.const 350
i32.const 17 i32.const 17
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1252,7 +1253,7 @@
end end
local.get $7 local.get $7
) )
(func $~lib/rt/tlsf/growMemory (; 14 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/rt/tlsf/growMemory (; 15 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
@ -1305,7 +1306,7 @@
call $~lib/rt/tlsf/addMemory call $~lib/rt/tlsf/addMemory
drop drop
) )
(func $~lib/rt/tlsf/prepareBlock (; 15 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) (func $~lib/rt/tlsf/prepareBlock (; 16 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
(local $5 i32) (local $5 i32)
@ -1320,7 +1321,7 @@
if if
i32.const 0 i32.const 0
i32.const 88 i32.const 88
i32.const 363 i32.const 364
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1404,7 +1405,7 @@
i32.store i32.store
end end
) )
(func $~lib/rt/tlsf/allocateBlock (; 16 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (func $~lib/rt/tlsf/allocateBlock (; 17 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
local.get $1 local.get $1
@ -1429,7 +1430,7 @@
if if
i32.const 0 i32.const 0
i32.const 88 i32.const 88
i32.const 476 i32.const 477
i32.const 15 i32.const 15
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1447,7 +1448,7 @@
if if
i32.const 0 i32.const 0
i32.const 88 i32.const 88
i32.const 478 i32.const 479
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1466,8 +1467,10 @@
local.get $2 local.get $2
call $~lib/rt/tlsf/prepareBlock call $~lib/rt/tlsf/prepareBlock
local.get $3 local.get $3
call $~lib/rt/rtrace/onalloc
local.get $3
) )
(func $~lib/rt/tlsf/__alloc (; 17 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (func $~lib/rt/tlsf/__alloc (; 18 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
global.get $~lib/rt/tlsf/ROOT global.get $~lib/rt/tlsf/ROOT
@ -1490,7 +1493,7 @@
i32.const 16 i32.const 16
i32.add i32.add
) )
(func $~lib/memory/memory.copy (; 18 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) (func $~lib/memory/memory.copy (; 19 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
(local $5 i32) (local $5 i32)
@ -1696,7 +1699,7 @@
end end
end end
) )
(func $~lib/rt/pure/growRoots (; 19 ;) (type $FUNCSIG$v) (func $~lib/rt/pure/growRoots (; 20 ;) (type $FUNCSIG$v)
(local $0 i32) (local $0 i32)
(local $1 i32) (local $1 i32)
(local $2 i32) (local $2 i32)
@ -1741,7 +1744,7 @@
i32.add i32.add
global.set $~lib/rt/pure/END global.set $~lib/rt/pure/END
) )
(func $~lib/rt/pure/appendRoot (; 20 ;) (type $FUNCSIG$vi) (param $0 i32) (func $~lib/rt/pure/appendRoot (; 21 ;) (type $FUNCSIG$vi) (param $0 i32)
(local $1 i32) (local $1 i32)
global.get $~lib/rt/pure/CUR global.get $~lib/rt/pure/CUR
local.set $1 local.set $1
@ -1761,7 +1764,7 @@
i32.add i32.add
global.set $~lib/rt/pure/CUR global.set $~lib/rt/pure/CUR
) )
(func $~lib/rt/pure/decrement (; 21 ;) (type $FUNCSIG$vi) (param $0 i32) (func $~lib/rt/pure/decrement (; 22 ;) (type $FUNCSIG$vi) (param $0 i32)
(local $1 i32) (local $1 i32)
(local $2 i32) (local $2 i32)
local.get $0 local.get $0
@ -1772,7 +1775,7 @@
i32.and i32.and
local.set $2 local.set $2
local.get $0 local.get $0
call $~lib/rt/pure/onDecrement call $~lib/rt/rtrace/ondecrement
local.get $0 local.get $0
i32.load i32.load
i32.const 1 i32.const 1
@ -1782,7 +1785,7 @@
if if
i32.const 0 i32.const 0
i32.const 40 i32.const 40
i32.const 114 i32.const 115
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1821,7 +1824,7 @@
if if
i32.const 0 i32.const 0
i32.const 40 i32.const 40
i32.const 123 i32.const 124
i32.const 15 i32.const 15
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1865,7 +1868,7 @@
end end
end end
) )
(func $~lib/rt/pure/__release (; 22 ;) (type $FUNCSIG$vi) (param $0 i32) (func $~lib/rt/pure/__release (; 23 ;) (type $FUNCSIG$vi) (param $0 i32)
local.get $0 local.get $0
global.get $~lib/heap/HEAP_BASE global.get $~lib/heap/HEAP_BASE
i32.gt_u i32.gt_u
@ -1876,11 +1879,11 @@
call $~lib/rt/pure/decrement call $~lib/rt/pure/decrement
end end
) )
(func $rc/local-init/getRef (; 23 ;) (type $FUNCSIG$i) (result i32) (func $rc/local-init/getRef (; 24 ;) (type $FUNCSIG$i) (result i32)
i32.const 24 i32.const 24
call $~lib/rt/pure/__retain call $~lib/rt/pure/__retain
) )
(func $rc/local-init/Ref#constructor (; 24 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (func $rc/local-init/Ref#constructor (; 25 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
local.get $0 local.get $0
i32.eqz i32.eqz
if if
@ -1892,7 +1895,7 @@
end end
local.get $0 local.get $0
) )
(func $start:rc/local-init (; 25 ;) (type $FUNCSIG$v) (func $start:rc/local-init (; 26 ;) (type $FUNCSIG$v)
(local $0 i32) (local $0 i32)
block block
i32.const 24 i32.const 24
@ -1915,10 +1918,10 @@
call $~lib/rt/pure/__release call $~lib/rt/pure/__release
end end
) )
(func $start (; 26 ;) (type $FUNCSIG$v) (func $start (; 27 ;) (type $FUNCSIG$v)
call $start:rc/local-init call $start:rc/local-init
) )
(func $~lib/rt/pure/markGray (; 27 ;) (type $FUNCSIG$vi) (param $0 i32) (func $~lib/rt/pure/markGray (; 28 ;) (type $FUNCSIG$vi) (param $0 i32)
(local $1 i32) (local $1 i32)
local.get $0 local.get $0
i32.load offset=4 i32.load offset=4
@ -1945,7 +1948,7 @@
call $~lib/rt/__visit_members call $~lib/rt/__visit_members
end end
) )
(func $~lib/rt/pure/scanBlack (; 28 ;) (type $FUNCSIG$vi) (param $0 i32) (func $~lib/rt/pure/scanBlack (; 29 ;) (type $FUNCSIG$vi) (param $0 i32)
local.get $0 local.get $0
local.get $0 local.get $0
i32.load offset=4 i32.load offset=4
@ -1962,7 +1965,7 @@
i32.const 4 i32.const 4
call $~lib/rt/__visit_members call $~lib/rt/__visit_members
) )
(func $~lib/rt/pure/scan (; 29 ;) (type $FUNCSIG$vi) (param $0 i32) (func $~lib/rt/pure/scan (; 30 ;) (type $FUNCSIG$vi) (param $0 i32)
(local $1 i32) (local $1 i32)
local.get $0 local.get $0
i32.load offset=4 i32.load offset=4
@ -1999,7 +2002,7 @@
end end
end end
) )
(func $~lib/rt/pure/collectWhite (; 30 ;) (type $FUNCSIG$vi) (param $0 i32) (func $~lib/rt/pure/collectWhite (; 31 ;) (type $FUNCSIG$vi) (param $0 i32)
(local $1 i32) (local $1 i32)
local.get $0 local.get $0
i32.load offset=4 i32.load offset=4
@ -2028,7 +2031,7 @@
local.get $0 local.get $0
call $~lib/rt/tlsf/freeBlock call $~lib/rt/tlsf/freeBlock
) )
(func $~lib/rt/pure/__visit (; 31 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/rt/pure/__visit (; 32 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
local.get $0 local.get $0
@ -2091,7 +2094,7 @@
if if
i32.const 0 i32.const 0
i32.const 40 i32.const 40
i32.const 74 i32.const 75
i32.const 17 i32.const 17
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -2138,7 +2141,7 @@
if if
i32.const 0 i32.const 0
i32.const 40 i32.const 40
i32.const 85 i32.const 86
i32.const 6 i32.const 6
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -2175,14 +2178,14 @@
if if
i32.const 0 i32.const 0
i32.const 40 i32.const 40
i32.const 96 i32.const 97
i32.const 24 i32.const 24
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
end end
end end
) )
(func $~lib/rt/__visit_members (; 32 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/rt/__visit_members (; 33 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
(local $2 i32) (local $2 i32)
block block
end end
@ -2239,6 +2242,6 @@
unreachable unreachable
end end
) )
(func $null (; 33 ;) (type $FUNCSIG$v) (func $null (; 34 ;) (type $FUNCSIG$v)
) )
) )

View File

@ -8,9 +8,10 @@
(type $FUNCSIG$vi (func (param i32))) (type $FUNCSIG$vi (func (param i32)))
(type $FUNCSIG$i (func (result i32))) (type $FUNCSIG$i (func (result i32)))
(import "env" "abort" (func $~lib/builtins/abort (param i32 i32 i32 i32))) (import "env" "abort" (func $~lib/builtins/abort (param i32 i32 i32 i32)))
(import "rtrace" "retain" (func $~lib/rt/pure/onIncrement (param i32))) (import "rtrace" "onalloc" (func $~lib/rt/rtrace/onalloc (param i32)))
(import "rtrace" "release" (func $~lib/rt/pure/onDecrement (param i32))) (import "rtrace" "onincrement" (func $~lib/rt/rtrace/onincrement (param i32)))
(import "rtrace" "free" (func $~lib/rt/tlsf/onFree (param i32))) (import "rtrace" "ondecrement" (func $~lib/rt/rtrace/ondecrement (param i32)))
(import "rtrace" "onfree" (func $~lib/rt/rtrace/onfree (param i32)))
(memory $0 1) (memory $0 1)
(data (i32.const 8) "\1e\00\00\00\01\00\00\00\01\00\00\00\1e\00\00\00~\00l\00i\00b\00/\00r\00t\00/\00t\00l\00s\00f\00.\00t\00s") (data (i32.const 8) "\1e\00\00\00\01\00\00\00\01\00\00\00\1e\00\00\00~\00l\00i\00b\00/\00r\00t\00/\00t\00l\00s\00f\00.\00t\00s")
(data (i32.const 56) "(\00\00\00\01\00\00\00\01\00\00\00(\00\00\00a\00l\00l\00o\00c\00a\00t\00i\00o\00n\00 \00t\00o\00o\00 \00l\00a\00r\00g\00e") (data (i32.const 56) "(\00\00\00\01\00\00\00\01\00\00\00(\00\00\00a\00l\00l\00o\00c\00a\00t\00i\00o\00n\00 \00t\00o\00o\00 \00l\00a\00r\00g\00e")
@ -25,7 +26,7 @@
(global $~lib/rt/pure/ROOTS (mut i32) (i32.const 0)) (global $~lib/rt/pure/ROOTS (mut i32) (i32.const 0))
(export "memory" (memory $0)) (export "memory" (memory $0))
(start $start) (start $start)
(func $~lib/rt/tlsf/removeBlock (; 4 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/rt/tlsf/removeBlock (; 5 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
@ -39,7 +40,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 275 i32.const 276
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -61,7 +62,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 277 i32.const 278
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -106,7 +107,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 290 i32.const 291
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -191,7 +192,7 @@
end end
end end
) )
(func $~lib/rt/tlsf/insertBlock (; 5 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/rt/tlsf/insertBlock (; 6 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
@ -203,7 +204,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 203 i32.const 204
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -217,7 +218,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 205 i32.const 206
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -290,7 +291,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 226 i32.const 227
i32.const 15 i32.const 15
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -347,7 +348,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 241 i32.const 242
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -362,7 +363,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 242 i32.const 243
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -412,7 +413,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 258 i32.const 259
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -476,7 +477,7 @@
i32.or i32.or
i32.store offset=4 i32.store offset=4
) )
(func $~lib/rt/tlsf/addMemory (; 6 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) (func $~lib/rt/tlsf/addMemory (; 7 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
local.get $2 local.get $2
@ -498,7 +499,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 384 i32.const 385
i32.const 4 i32.const 4
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -515,7 +516,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 394 i32.const 395
i32.const 15 i32.const 15
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -543,7 +544,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 406 i32.const 407
i32.const 4 i32.const 4
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -590,7 +591,7 @@
local.get $1 local.get $1
call $~lib/rt/tlsf/insertBlock call $~lib/rt/tlsf/insertBlock
) )
(func $~lib/rt/tlsf/initializeRoot (; 7 ;) (type $FUNCSIG$v) (func $~lib/rt/tlsf/initializeRoot (; 8 ;) (type $FUNCSIG$v)
(local $0 i32) (local $0 i32)
(local $1 i32) (local $1 i32)
i32.const 1 i32.const 1
@ -673,14 +674,14 @@
i32.const 304 i32.const 304
global.set $~lib/rt/tlsf/ROOT global.set $~lib/rt/tlsf/ROOT
) )
(func $~lib/rt/tlsf/prepareSize (; 8 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (func $~lib/rt/tlsf/prepareSize (; 9 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
local.get $0 local.get $0
i32.const 1073741808 i32.const 1073741808
i32.ge_u i32.ge_u
if if
i32.const 72 i32.const 72
i32.const 24 i32.const 24
i32.const 446 i32.const 447
i32.const 29 i32.const 29
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -697,7 +698,7 @@
i32.gt_u i32.gt_u
select select
) )
(func $~lib/rt/tlsf/searchBlock (; 9 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (func $~lib/rt/tlsf/searchBlock (; 10 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
(local $2 i32) (local $2 i32)
local.get $1 local.get $1
i32.const 256 i32.const 256
@ -755,7 +756,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 336 i32.const 337
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -807,7 +808,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 349 i32.const 350
i32.const 17 i32.const 17
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -828,7 +829,7 @@
end end
end end
) )
(func $~lib/rt/tlsf/growMemory (; 10 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/rt/tlsf/growMemory (; 11 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
(local $2 i32) (local $2 i32)
memory.size memory.size
local.tee $2 local.tee $2
@ -865,7 +866,7 @@
i32.shl i32.shl
call $~lib/rt/tlsf/addMemory call $~lib/rt/tlsf/addMemory
) )
(func $~lib/rt/tlsf/prepareBlock (; 11 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) (func $~lib/rt/tlsf/prepareBlock (; 12 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
local.get $1 local.get $1
@ -877,7 +878,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 363 i32.const 364
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -941,7 +942,7 @@
i32.store i32.store
end end
) )
(func $~lib/rt/tlsf/allocateBlock (; 12 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (func $~lib/rt/tlsf/allocateBlock (; 13 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
local.get $0 local.get $0
@ -963,7 +964,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 476 i32.const 477
i32.const 15 i32.const 15
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -978,7 +979,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 478 i32.const 479
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -997,8 +998,10 @@
local.get $3 local.get $3
call $~lib/rt/tlsf/prepareBlock call $~lib/rt/tlsf/prepareBlock
local.get $2 local.get $2
call $~lib/rt/rtrace/onalloc
local.get $2
) )
(func $~lib/rt/tlsf/__alloc (; 13 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (func $~lib/rt/tlsf/__alloc (; 14 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
(local $2 i32) (local $2 i32)
global.get $~lib/rt/tlsf/ROOT global.get $~lib/rt/tlsf/ROOT
local.tee $2 local.tee $2
@ -1017,7 +1020,7 @@
i32.const 16 i32.const 16
i32.add i32.add
) )
(func $~lib/rt/pure/increment (; 14 ;) (type $FUNCSIG$vi) (param $0 i32) (func $~lib/rt/pure/increment (; 15 ;) (type $FUNCSIG$vi) (param $0 i32)
(local $1 i32) (local $1 i32)
local.get $0 local.get $0
i32.load offset=4 i32.load offset=4
@ -1033,7 +1036,7 @@
if if
i32.const 0 i32.const 0
i32.const 128 i32.const 128
i32.const 103 i32.const 104
i32.const 2 i32.const 2
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1044,7 +1047,7 @@
i32.add i32.add
i32.store offset=4 i32.store offset=4
local.get $0 local.get $0
call $~lib/rt/pure/onIncrement call $~lib/rt/rtrace/onincrement
local.get $0 local.get $0
i32.load i32.load
i32.const 1 i32.const 1
@ -1052,13 +1055,13 @@
if if
i32.const 0 i32.const 0
i32.const 128 i32.const 128
i32.const 106 i32.const 107
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
end end
) )
(func $~lib/rt/pure/__retain (; 15 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (func $~lib/rt/pure/__retain (; 16 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
local.get $0 local.get $0
i32.const 292 i32.const 292
i32.gt_u i32.gt_u
@ -1070,13 +1073,13 @@
end end
local.get $0 local.get $0
) )
(func $rc/logical-and-mismatch/Ref#constructor (; 16 ;) (type $FUNCSIG$i) (result i32) (func $rc/logical-and-mismatch/Ref#constructor (; 17 ;) (type $FUNCSIG$i) (result i32)
i32.const 0 i32.const 0
i32.const 3 i32.const 3
call $~lib/rt/tlsf/__alloc call $~lib/rt/tlsf/__alloc
call $~lib/rt/pure/__retain call $~lib/rt/pure/__retain
) )
(func $~lib/rt/tlsf/freeBlock (; 17 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/rt/tlsf/freeBlock (; 18 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
(local $2 i32) (local $2 i32)
local.get $1 local.get $1
i32.load i32.load
@ -1086,7 +1089,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 530 i32.const 531
i32.const 2 i32.const 2
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1100,9 +1103,9 @@
local.get $1 local.get $1
call $~lib/rt/tlsf/insertBlock call $~lib/rt/tlsf/insertBlock
local.get $1 local.get $1
call $~lib/rt/tlsf/onFree call $~lib/rt/rtrace/onfree
) )
(func $~lib/rt/__typeinfo (; 18 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (func $~lib/rt/__typeinfo (; 19 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
local.get $0 local.get $0
i32.const 256 i32.const 256
i32.load i32.load
@ -1122,7 +1125,7 @@
i32.add i32.add
i32.load i32.load
) )
(func $~lib/memory/memory.copy (; 19 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) (func $~lib/memory/memory.copy (; 20 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
block $~lib/util/memory/memmove|inlined.0 block $~lib/util/memory/memmove|inlined.0
@ -1295,7 +1298,7 @@
end end
end end
) )
(func $~lib/rt/pure/growRoots (; 20 ;) (type $FUNCSIG$v) (func $~lib/rt/pure/growRoots (; 21 ;) (type $FUNCSIG$v)
(local $0 i32) (local $0 i32)
(local $1 i32) (local $1 i32)
(local $2 i32) (local $2 i32)
@ -1331,7 +1334,7 @@
i32.add i32.add
global.set $~lib/rt/pure/END global.set $~lib/rt/pure/END
) )
(func $~lib/rt/pure/appendRoot (; 21 ;) (type $FUNCSIG$vi) (param $0 i32) (func $~lib/rt/pure/appendRoot (; 22 ;) (type $FUNCSIG$vi) (param $0 i32)
(local $1 i32) (local $1 i32)
global.get $~lib/rt/pure/CUR global.get $~lib/rt/pure/CUR
local.tee $1 local.tee $1
@ -1350,7 +1353,7 @@
i32.add i32.add
global.set $~lib/rt/pure/CUR global.set $~lib/rt/pure/CUR
) )
(func $~lib/rt/pure/decrement (; 22 ;) (type $FUNCSIG$vi) (param $0 i32) (func $~lib/rt/pure/decrement (; 23 ;) (type $FUNCSIG$vi) (param $0 i32)
(local $1 i32) (local $1 i32)
(local $2 i32) (local $2 i32)
local.get $0 local.get $0
@ -1360,7 +1363,7 @@
i32.and i32.and
local.set $1 local.set $1
local.get $0 local.get $0
call $~lib/rt/pure/onDecrement call $~lib/rt/rtrace/ondecrement
local.get $0 local.get $0
i32.load i32.load
i32.const 1 i32.const 1
@ -1368,7 +1371,7 @@
if if
i32.const 0 i32.const 0
i32.const 128 i32.const 128
i32.const 114 i32.const 115
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1401,7 +1404,7 @@
if if
i32.const 0 i32.const 0
i32.const 128 i32.const 128
i32.const 123 i32.const 124
i32.const 15 i32.const 15
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1440,7 +1443,7 @@
end end
end end
) )
(func $~lib/rt/pure/__release (; 23 ;) (type $FUNCSIG$vi) (param $0 i32) (func $~lib/rt/pure/__release (; 24 ;) (type $FUNCSIG$vi) (param $0 i32)
local.get $0 local.get $0
i32.const 292 i32.const 292
i32.gt_u i32.gt_u
@ -1451,7 +1454,7 @@
call $~lib/rt/pure/decrement call $~lib/rt/pure/decrement
end end
) )
(func $start:rc/logical-and-mismatch (; 24 ;) (type $FUNCSIG$v) (func $start:rc/logical-and-mismatch (; 25 ;) (type $FUNCSIG$v)
(local $0 i32) (local $0 i32)
call $rc/logical-and-mismatch/Ref#constructor call $rc/logical-and-mismatch/Ref#constructor
global.set $rc/logical-and-mismatch/gloRef global.set $rc/logical-and-mismatch/gloRef
@ -1497,10 +1500,10 @@
global.get $rc/logical-and-mismatch/gloRef global.get $rc/logical-and-mismatch/gloRef
call $~lib/rt/pure/__release call $~lib/rt/pure/__release
) )
(func $start (; 25 ;) (type $FUNCSIG$v) (func $start (; 26 ;) (type $FUNCSIG$v)
call $start:rc/logical-and-mismatch call $start:rc/logical-and-mismatch
) )
(func $~lib/rt/pure/markGray (; 26 ;) (type $FUNCSIG$vi) (param $0 i32) (func $~lib/rt/pure/markGray (; 27 ;) (type $FUNCSIG$vi) (param $0 i32)
(local $1 i32) (local $1 i32)
local.get $0 local.get $0
i32.load offset=4 i32.load offset=4
@ -1524,7 +1527,7 @@
call $~lib/rt/__visit_members call $~lib/rt/__visit_members
end end
) )
(func $~lib/rt/pure/scanBlack (; 27 ;) (type $FUNCSIG$vi) (param $0 i32) (func $~lib/rt/pure/scanBlack (; 28 ;) (type $FUNCSIG$vi) (param $0 i32)
local.get $0 local.get $0
local.get $0 local.get $0
i32.load offset=4 i32.load offset=4
@ -1537,7 +1540,7 @@
i32.const 4 i32.const 4
call $~lib/rt/__visit_members call $~lib/rt/__visit_members
) )
(func $~lib/rt/pure/scan (; 28 ;) (type $FUNCSIG$vi) (param $0 i32) (func $~lib/rt/pure/scan (; 29 ;) (type $FUNCSIG$vi) (param $0 i32)
(local $1 i32) (local $1 i32)
local.get $0 local.get $0
i32.load offset=4 i32.load offset=4
@ -1571,7 +1574,7 @@
end end
end end
) )
(func $~lib/rt/pure/collectWhite (; 29 ;) (type $FUNCSIG$vi) (param $0 i32) (func $~lib/rt/pure/collectWhite (; 30 ;) (type $FUNCSIG$vi) (param $0 i32)
(local $1 i32) (local $1 i32)
local.get $0 local.get $0
i32.load offset=4 i32.load offset=4
@ -1599,7 +1602,7 @@
local.get $0 local.get $0
call $~lib/rt/tlsf/freeBlock call $~lib/rt/tlsf/freeBlock
) )
(func $~lib/rt/pure/__visit (; 30 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/rt/pure/__visit (; 31 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
local.get $0 local.get $0
i32.const 292 i32.const 292
i32.lt_u i32.lt_u
@ -1645,7 +1648,7 @@
if if
i32.const 0 i32.const 0
i32.const 128 i32.const 128
i32.const 74 i32.const 75
i32.const 17 i32.const 17
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1678,7 +1681,7 @@
if if
i32.const 0 i32.const 0
i32.const 128 i32.const 128
i32.const 85 i32.const 86
i32.const 6 i32.const 6
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1703,13 +1706,13 @@
end end
i32.const 0 i32.const 0
i32.const 128 i32.const 128
i32.const 96 i32.const 97
i32.const 24 i32.const 24
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
end end
) )
(func $~lib/rt/__visit_members (; 31 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/rt/__visit_members (; 32 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
block $switch$1$default block $switch$1$default
block $switch$1$case$4 block $switch$1$case$4
block $switch$1$case$2 block $switch$1$case$2
@ -1733,7 +1736,7 @@
end end
unreachable unreachable
) )
(func $null (; 32 ;) (type $FUNCSIG$v) (func $null (; 33 ;) (type $FUNCSIG$v)
nop nop
) )
) )

View File

@ -9,9 +9,10 @@
(type $FUNCSIG$vi (func (param i32))) (type $FUNCSIG$vi (func (param i32)))
(type $FUNCSIG$i (func (result i32))) (type $FUNCSIG$i (func (result i32)))
(import "env" "abort" (func $~lib/builtins/abort (param i32 i32 i32 i32))) (import "env" "abort" (func $~lib/builtins/abort (param i32 i32 i32 i32)))
(import "rtrace" "retain" (func $~lib/rt/pure/onIncrement (param i32))) (import "rtrace" "onalloc" (func $~lib/rt/rtrace/onalloc (param i32)))
(import "rtrace" "release" (func $~lib/rt/pure/onDecrement (param i32))) (import "rtrace" "onincrement" (func $~lib/rt/rtrace/onincrement (param i32)))
(import "rtrace" "free" (func $~lib/rt/tlsf/onFree (param i32))) (import "rtrace" "ondecrement" (func $~lib/rt/rtrace/ondecrement (param i32)))
(import "rtrace" "onfree" (func $~lib/rt/rtrace/onfree (param i32)))
(memory $0 1) (memory $0 1)
(data (i32.const 8) "\1e\00\00\00\01\00\00\00\01\00\00\00\1e\00\00\00~\00l\00i\00b\00/\00r\00t\00/\00t\00l\00s\00f\00.\00t\00s\00") (data (i32.const 8) "\1e\00\00\00\01\00\00\00\01\00\00\00\1e\00\00\00~\00l\00i\00b\00/\00r\00t\00/\00t\00l\00s\00f\00.\00t\00s\00")
(data (i32.const 56) "(\00\00\00\01\00\00\00\01\00\00\00(\00\00\00a\00l\00l\00o\00c\00a\00t\00i\00o\00n\00 \00t\00o\00o\00 \00l\00a\00r\00g\00e\00") (data (i32.const 56) "(\00\00\00\01\00\00\00\01\00\00\00(\00\00\00a\00l\00l\00o\00c\00a\00t\00i\00o\00n\00 \00t\00o\00o\00 \00l\00a\00r\00g\00e\00")
@ -30,7 +31,7 @@
(global $~lib/heap/HEAP_BASE i32 (i32.const 292)) (global $~lib/heap/HEAP_BASE i32 (i32.const 292))
(export "memory" (memory $0)) (export "memory" (memory $0))
(start $start) (start $start)
(func $~lib/rt/tlsf/removeBlock (; 4 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/rt/tlsf/removeBlock (; 5 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
@ -51,7 +52,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 275 i32.const 276
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -76,7 +77,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 277 i32.const 278
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -128,7 +129,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 290 i32.const 291
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -248,7 +249,7 @@
end end
end end
) )
(func $~lib/rt/tlsf/insertBlock (; 5 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/rt/tlsf/insertBlock (; 6 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
@ -266,7 +267,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 203 i32.const 204
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -281,7 +282,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 205 i32.const 206
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -380,7 +381,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 226 i32.const 227
i32.const 15 i32.const 15
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -443,7 +444,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 241 i32.const 242
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -459,7 +460,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 242 i32.const 243
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -516,7 +517,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 258 i32.const 259
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -612,7 +613,7 @@
i32.store offset=4 i32.store offset=4
end end
) )
(func $~lib/rt/tlsf/addMemory (; 6 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (func $~lib/rt/tlsf/addMemory (; 7 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
(local $5 i32) (local $5 i32)
@ -643,7 +644,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 384 i32.const 385
i32.const 4 i32.const 4
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -668,7 +669,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 394 i32.const 395
i32.const 15 i32.const 15
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -699,7 +700,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 406 i32.const 407
i32.const 4 i32.const 4
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -764,7 +765,7 @@
call $~lib/rt/tlsf/insertBlock call $~lib/rt/tlsf/insertBlock
i32.const 1 i32.const 1
) )
(func $~lib/rt/tlsf/initializeRoot (; 7 ;) (type $FUNCSIG$v) (func $~lib/rt/tlsf/initializeRoot (; 8 ;) (type $FUNCSIG$v)
(local $0 i32) (local $0 i32)
(local $1 i32) (local $1 i32)
(local $2 i32) (local $2 i32)
@ -917,7 +918,7 @@
local.get $3 local.get $3
global.set $~lib/rt/tlsf/ROOT global.set $~lib/rt/tlsf/ROOT
) )
(func $~lib/rt/tlsf/prepareSize (; 8 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (func $~lib/rt/tlsf/prepareSize (; 9 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
(local $1 i32) (local $1 i32)
(local $2 i32) (local $2 i32)
local.get $0 local.get $0
@ -926,7 +927,7 @@
if if
i32.const 72 i32.const 72
i32.const 24 i32.const 24
i32.const 446 i32.const 447
i32.const 29 i32.const 29
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -946,7 +947,7 @@
i32.gt_u i32.gt_u
select select
) )
(func $~lib/rt/tlsf/searchBlock (; 9 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (func $~lib/rt/tlsf/searchBlock (; 10 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
@ -1020,7 +1021,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 336 i32.const 337
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1087,7 +1088,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 349 i32.const 350
i32.const 17 i32.const 17
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1137,7 +1138,7 @@
end end
local.get $7 local.get $7
) )
(func $~lib/rt/tlsf/growMemory (; 10 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/rt/tlsf/growMemory (; 11 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
@ -1190,7 +1191,7 @@
call $~lib/rt/tlsf/addMemory call $~lib/rt/tlsf/addMemory
drop drop
) )
(func $~lib/rt/tlsf/prepareBlock (; 11 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) (func $~lib/rt/tlsf/prepareBlock (; 12 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
(local $5 i32) (local $5 i32)
@ -1205,7 +1206,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 363 i32.const 364
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1289,7 +1290,7 @@
i32.store i32.store
end end
) )
(func $~lib/rt/tlsf/allocateBlock (; 12 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (func $~lib/rt/tlsf/allocateBlock (; 13 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
local.get $1 local.get $1
@ -1314,7 +1315,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 476 i32.const 477
i32.const 15 i32.const 15
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1332,7 +1333,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 478 i32.const 479
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1351,8 +1352,10 @@
local.get $2 local.get $2
call $~lib/rt/tlsf/prepareBlock call $~lib/rt/tlsf/prepareBlock
local.get $3 local.get $3
call $~lib/rt/rtrace/onalloc
local.get $3
) )
(func $~lib/rt/tlsf/__alloc (; 13 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (func $~lib/rt/tlsf/__alloc (; 14 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
global.get $~lib/rt/tlsf/ROOT global.get $~lib/rt/tlsf/ROOT
@ -1375,7 +1378,7 @@
i32.const 16 i32.const 16
i32.add i32.add
) )
(func $~lib/rt/pure/increment (; 14 ;) (type $FUNCSIG$vi) (param $0 i32) (func $~lib/rt/pure/increment (; 15 ;) (type $FUNCSIG$vi) (param $0 i32)
(local $1 i32) (local $1 i32)
local.get $0 local.get $0
i32.load offset=4 i32.load offset=4
@ -1397,7 +1400,7 @@
if if
i32.const 0 i32.const 0
i32.const 128 i32.const 128
i32.const 103 i32.const 104
i32.const 2 i32.const 2
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1408,7 +1411,7 @@
i32.add i32.add
i32.store offset=4 i32.store offset=4
local.get $0 local.get $0
call $~lib/rt/pure/onIncrement call $~lib/rt/rtrace/onincrement
local.get $0 local.get $0
i32.load i32.load
i32.const 1 i32.const 1
@ -1418,13 +1421,13 @@
if if
i32.const 0 i32.const 0
i32.const 128 i32.const 128
i32.const 106 i32.const 107
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
end end
) )
(func $~lib/rt/pure/__retain (; 15 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (func $~lib/rt/pure/__retain (; 16 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
local.get $0 local.get $0
global.get $~lib/heap/HEAP_BASE global.get $~lib/heap/HEAP_BASE
i32.gt_u i32.gt_u
@ -1436,7 +1439,7 @@
end end
local.get $0 local.get $0
) )
(func $rc/logical-and-mismatch/Ref#constructor (; 16 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (func $rc/logical-and-mismatch/Ref#constructor (; 17 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
local.get $0 local.get $0
i32.eqz i32.eqz
if if
@ -1448,11 +1451,11 @@
end end
local.get $0 local.get $0
) )
(func $rc/logical-and-mismatch/getRef (; 17 ;) (type $FUNCSIG$i) (result i32) (func $rc/logical-and-mismatch/getRef (; 18 ;) (type $FUNCSIG$i) (result i32)
i32.const 0 i32.const 0
call $rc/logical-and-mismatch/Ref#constructor call $rc/logical-and-mismatch/Ref#constructor
) )
(func $~lib/rt/tlsf/freeBlock (; 18 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/rt/tlsf/freeBlock (; 19 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
(local $2 i32) (local $2 i32)
local.get $1 local.get $1
i32.load i32.load
@ -1465,7 +1468,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 530 i32.const 531
i32.const 2 i32.const 2
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1479,9 +1482,9 @@
local.get $1 local.get $1
call $~lib/rt/tlsf/insertBlock call $~lib/rt/tlsf/insertBlock
local.get $1 local.get $1
call $~lib/rt/tlsf/onFree call $~lib/rt/rtrace/onfree
) )
(func $~lib/rt/__typeinfo (; 19 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (func $~lib/rt/__typeinfo (; 20 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
(local $1 i32) (local $1 i32)
global.get $~lib/rt/RTTI_BASE global.get $~lib/rt/RTTI_BASE
local.set $1 local.set $1
@ -1506,7 +1509,7 @@
i32.add i32.add
i32.load i32.load
) )
(func $~lib/memory/memory.copy (; 20 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) (func $~lib/memory/memory.copy (; 21 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
(local $5 i32) (local $5 i32)
@ -1712,7 +1715,7 @@
end end
end end
) )
(func $~lib/rt/pure/growRoots (; 21 ;) (type $FUNCSIG$v) (func $~lib/rt/pure/growRoots (; 22 ;) (type $FUNCSIG$v)
(local $0 i32) (local $0 i32)
(local $1 i32) (local $1 i32)
(local $2 i32) (local $2 i32)
@ -1757,7 +1760,7 @@
i32.add i32.add
global.set $~lib/rt/pure/END global.set $~lib/rt/pure/END
) )
(func $~lib/rt/pure/appendRoot (; 22 ;) (type $FUNCSIG$vi) (param $0 i32) (func $~lib/rt/pure/appendRoot (; 23 ;) (type $FUNCSIG$vi) (param $0 i32)
(local $1 i32) (local $1 i32)
global.get $~lib/rt/pure/CUR global.get $~lib/rt/pure/CUR
local.set $1 local.set $1
@ -1777,7 +1780,7 @@
i32.add i32.add
global.set $~lib/rt/pure/CUR global.set $~lib/rt/pure/CUR
) )
(func $~lib/rt/pure/decrement (; 23 ;) (type $FUNCSIG$vi) (param $0 i32) (func $~lib/rt/pure/decrement (; 24 ;) (type $FUNCSIG$vi) (param $0 i32)
(local $1 i32) (local $1 i32)
(local $2 i32) (local $2 i32)
local.get $0 local.get $0
@ -1788,7 +1791,7 @@
i32.and i32.and
local.set $2 local.set $2
local.get $0 local.get $0
call $~lib/rt/pure/onDecrement call $~lib/rt/rtrace/ondecrement
local.get $0 local.get $0
i32.load i32.load
i32.const 1 i32.const 1
@ -1798,7 +1801,7 @@
if if
i32.const 0 i32.const 0
i32.const 128 i32.const 128
i32.const 114 i32.const 115
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1837,7 +1840,7 @@
if if
i32.const 0 i32.const 0
i32.const 128 i32.const 128
i32.const 123 i32.const 124
i32.const 15 i32.const 15
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1881,7 +1884,7 @@
end end
end end
) )
(func $~lib/rt/pure/__release (; 24 ;) (type $FUNCSIG$vi) (param $0 i32) (func $~lib/rt/pure/__release (; 25 ;) (type $FUNCSIG$vi) (param $0 i32)
local.get $0 local.get $0
global.get $~lib/heap/HEAP_BASE global.get $~lib/heap/HEAP_BASE
i32.gt_u i32.gt_u
@ -1892,7 +1895,7 @@
call $~lib/rt/pure/decrement call $~lib/rt/pure/decrement
end end
) )
(func $start:rc/logical-and-mismatch (; 25 ;) (type $FUNCSIG$v) (func $start:rc/logical-and-mismatch (; 26 ;) (type $FUNCSIG$v)
(local $0 i32) (local $0 i32)
i32.const 0 i32.const 0
call $rc/logical-and-mismatch/Ref#constructor call $rc/logical-and-mismatch/Ref#constructor
@ -1955,10 +1958,10 @@
global.get $rc/logical-and-mismatch/gloRef global.get $rc/logical-and-mismatch/gloRef
call $~lib/rt/pure/__release call $~lib/rt/pure/__release
) )
(func $start (; 26 ;) (type $FUNCSIG$v) (func $start (; 27 ;) (type $FUNCSIG$v)
call $start:rc/logical-and-mismatch call $start:rc/logical-and-mismatch
) )
(func $~lib/rt/pure/markGray (; 27 ;) (type $FUNCSIG$vi) (param $0 i32) (func $~lib/rt/pure/markGray (; 28 ;) (type $FUNCSIG$vi) (param $0 i32)
(local $1 i32) (local $1 i32)
local.get $0 local.get $0
i32.load offset=4 i32.load offset=4
@ -1985,7 +1988,7 @@
call $~lib/rt/__visit_members call $~lib/rt/__visit_members
end end
) )
(func $~lib/rt/pure/scanBlack (; 28 ;) (type $FUNCSIG$vi) (param $0 i32) (func $~lib/rt/pure/scanBlack (; 29 ;) (type $FUNCSIG$vi) (param $0 i32)
local.get $0 local.get $0
local.get $0 local.get $0
i32.load offset=4 i32.load offset=4
@ -2002,7 +2005,7 @@
i32.const 4 i32.const 4
call $~lib/rt/__visit_members call $~lib/rt/__visit_members
) )
(func $~lib/rt/pure/scan (; 29 ;) (type $FUNCSIG$vi) (param $0 i32) (func $~lib/rt/pure/scan (; 30 ;) (type $FUNCSIG$vi) (param $0 i32)
(local $1 i32) (local $1 i32)
local.get $0 local.get $0
i32.load offset=4 i32.load offset=4
@ -2039,7 +2042,7 @@
end end
end end
) )
(func $~lib/rt/pure/collectWhite (; 30 ;) (type $FUNCSIG$vi) (param $0 i32) (func $~lib/rt/pure/collectWhite (; 31 ;) (type $FUNCSIG$vi) (param $0 i32)
(local $1 i32) (local $1 i32)
local.get $0 local.get $0
i32.load offset=4 i32.load offset=4
@ -2068,7 +2071,7 @@
local.get $0 local.get $0
call $~lib/rt/tlsf/freeBlock call $~lib/rt/tlsf/freeBlock
) )
(func $~lib/rt/pure/__visit (; 31 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/rt/pure/__visit (; 32 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
local.get $0 local.get $0
@ -2131,7 +2134,7 @@
if if
i32.const 0 i32.const 0
i32.const 128 i32.const 128
i32.const 74 i32.const 75
i32.const 17 i32.const 17
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -2178,7 +2181,7 @@
if if
i32.const 0 i32.const 0
i32.const 128 i32.const 128
i32.const 85 i32.const 86
i32.const 6 i32.const 6
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -2215,14 +2218,14 @@
if if
i32.const 0 i32.const 0
i32.const 128 i32.const 128
i32.const 96 i32.const 97
i32.const 24 i32.const 24
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
end end
end end
) )
(func $~lib/rt/__visit_members (; 32 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/rt/__visit_members (; 33 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
(local $2 i32) (local $2 i32)
block block
end end
@ -2279,6 +2282,6 @@
unreachable unreachable
end end
) )
(func $null (; 33 ;) (type $FUNCSIG$v) (func $null (; 34 ;) (type $FUNCSIG$v)
) )
) )

View File

@ -8,9 +8,10 @@
(type $FUNCSIG$vi (func (param i32))) (type $FUNCSIG$vi (func (param i32)))
(type $FUNCSIG$i (func (result i32))) (type $FUNCSIG$i (func (result i32)))
(import "env" "abort" (func $~lib/builtins/abort (param i32 i32 i32 i32))) (import "env" "abort" (func $~lib/builtins/abort (param i32 i32 i32 i32)))
(import "rtrace" "retain" (func $~lib/rt/pure/onIncrement (param i32))) (import "rtrace" "onalloc" (func $~lib/rt/rtrace/onalloc (param i32)))
(import "rtrace" "release" (func $~lib/rt/pure/onDecrement (param i32))) (import "rtrace" "onincrement" (func $~lib/rt/rtrace/onincrement (param i32)))
(import "rtrace" "free" (func $~lib/rt/tlsf/onFree (param i32))) (import "rtrace" "ondecrement" (func $~lib/rt/rtrace/ondecrement (param i32)))
(import "rtrace" "onfree" (func $~lib/rt/rtrace/onfree (param i32)))
(memory $0 1) (memory $0 1)
(data (i32.const 8) "\1e\00\00\00\01\00\00\00\01\00\00\00\1e\00\00\00~\00l\00i\00b\00/\00r\00t\00/\00t\00l\00s\00f\00.\00t\00s") (data (i32.const 8) "\1e\00\00\00\01\00\00\00\01\00\00\00\1e\00\00\00~\00l\00i\00b\00/\00r\00t\00/\00t\00l\00s\00f\00.\00t\00s")
(data (i32.const 56) "(\00\00\00\01\00\00\00\01\00\00\00(\00\00\00a\00l\00l\00o\00c\00a\00t\00i\00o\00n\00 \00t\00o\00o\00 \00l\00a\00r\00g\00e") (data (i32.const 56) "(\00\00\00\01\00\00\00\01\00\00\00(\00\00\00a\00l\00l\00o\00c\00a\00t\00i\00o\00n\00 \00t\00o\00o\00 \00l\00a\00r\00g\00e")
@ -25,7 +26,7 @@
(global $~lib/rt/pure/ROOTS (mut i32) (i32.const 0)) (global $~lib/rt/pure/ROOTS (mut i32) (i32.const 0))
(export "memory" (memory $0)) (export "memory" (memory $0))
(start $start) (start $start)
(func $~lib/rt/tlsf/removeBlock (; 4 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/rt/tlsf/removeBlock (; 5 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
@ -39,7 +40,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 275 i32.const 276
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -61,7 +62,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 277 i32.const 278
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -106,7 +107,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 290 i32.const 291
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -191,7 +192,7 @@
end end
end end
) )
(func $~lib/rt/tlsf/insertBlock (; 5 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/rt/tlsf/insertBlock (; 6 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
@ -203,7 +204,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 203 i32.const 204
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -217,7 +218,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 205 i32.const 206
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -290,7 +291,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 226 i32.const 227
i32.const 15 i32.const 15
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -347,7 +348,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 241 i32.const 242
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -362,7 +363,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 242 i32.const 243
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -412,7 +413,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 258 i32.const 259
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -476,7 +477,7 @@
i32.or i32.or
i32.store offset=4 i32.store offset=4
) )
(func $~lib/rt/tlsf/addMemory (; 6 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) (func $~lib/rt/tlsf/addMemory (; 7 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
local.get $2 local.get $2
@ -498,7 +499,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 384 i32.const 385
i32.const 4 i32.const 4
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -515,7 +516,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 394 i32.const 395
i32.const 15 i32.const 15
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -543,7 +544,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 406 i32.const 407
i32.const 4 i32.const 4
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -590,7 +591,7 @@
local.get $1 local.get $1
call $~lib/rt/tlsf/insertBlock call $~lib/rt/tlsf/insertBlock
) )
(func $~lib/rt/tlsf/initializeRoot (; 7 ;) (type $FUNCSIG$v) (func $~lib/rt/tlsf/initializeRoot (; 8 ;) (type $FUNCSIG$v)
(local $0 i32) (local $0 i32)
(local $1 i32) (local $1 i32)
i32.const 1 i32.const 1
@ -673,14 +674,14 @@
i32.const 304 i32.const 304
global.set $~lib/rt/tlsf/ROOT global.set $~lib/rt/tlsf/ROOT
) )
(func $~lib/rt/tlsf/prepareSize (; 8 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (func $~lib/rt/tlsf/prepareSize (; 9 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
local.get $0 local.get $0
i32.const 1073741808 i32.const 1073741808
i32.ge_u i32.ge_u
if if
i32.const 72 i32.const 72
i32.const 24 i32.const 24
i32.const 446 i32.const 447
i32.const 29 i32.const 29
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -697,7 +698,7 @@
i32.gt_u i32.gt_u
select select
) )
(func $~lib/rt/tlsf/searchBlock (; 9 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (func $~lib/rt/tlsf/searchBlock (; 10 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
(local $2 i32) (local $2 i32)
local.get $1 local.get $1
i32.const 256 i32.const 256
@ -755,7 +756,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 336 i32.const 337
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -807,7 +808,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 349 i32.const 350
i32.const 17 i32.const 17
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -828,7 +829,7 @@
end end
end end
) )
(func $~lib/rt/tlsf/growMemory (; 10 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/rt/tlsf/growMemory (; 11 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
(local $2 i32) (local $2 i32)
memory.size memory.size
local.tee $2 local.tee $2
@ -865,7 +866,7 @@
i32.shl i32.shl
call $~lib/rt/tlsf/addMemory call $~lib/rt/tlsf/addMemory
) )
(func $~lib/rt/tlsf/prepareBlock (; 11 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) (func $~lib/rt/tlsf/prepareBlock (; 12 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
local.get $1 local.get $1
@ -877,7 +878,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 363 i32.const 364
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -941,7 +942,7 @@
i32.store i32.store
end end
) )
(func $~lib/rt/tlsf/allocateBlock (; 12 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (func $~lib/rt/tlsf/allocateBlock (; 13 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
local.get $0 local.get $0
@ -963,7 +964,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 476 i32.const 477
i32.const 15 i32.const 15
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -978,7 +979,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 478 i32.const 479
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -997,8 +998,10 @@
local.get $3 local.get $3
call $~lib/rt/tlsf/prepareBlock call $~lib/rt/tlsf/prepareBlock
local.get $2 local.get $2
call $~lib/rt/rtrace/onalloc
local.get $2
) )
(func $~lib/rt/tlsf/__alloc (; 13 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (func $~lib/rt/tlsf/__alloc (; 14 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
(local $2 i32) (local $2 i32)
global.get $~lib/rt/tlsf/ROOT global.get $~lib/rt/tlsf/ROOT
local.tee $2 local.tee $2
@ -1017,7 +1020,7 @@
i32.const 16 i32.const 16
i32.add i32.add
) )
(func $~lib/rt/pure/increment (; 14 ;) (type $FUNCSIG$vi) (param $0 i32) (func $~lib/rt/pure/increment (; 15 ;) (type $FUNCSIG$vi) (param $0 i32)
(local $1 i32) (local $1 i32)
local.get $0 local.get $0
i32.load offset=4 i32.load offset=4
@ -1033,7 +1036,7 @@
if if
i32.const 0 i32.const 0
i32.const 128 i32.const 128
i32.const 103 i32.const 104
i32.const 2 i32.const 2
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1044,7 +1047,7 @@
i32.add i32.add
i32.store offset=4 i32.store offset=4
local.get $0 local.get $0
call $~lib/rt/pure/onIncrement call $~lib/rt/rtrace/onincrement
local.get $0 local.get $0
i32.load i32.load
i32.const 1 i32.const 1
@ -1052,13 +1055,13 @@
if if
i32.const 0 i32.const 0
i32.const 128 i32.const 128
i32.const 106 i32.const 107
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
end end
) )
(func $~lib/rt/pure/__retain (; 15 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (func $~lib/rt/pure/__retain (; 16 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
local.get $0 local.get $0
i32.const 292 i32.const 292
i32.gt_u i32.gt_u
@ -1070,13 +1073,13 @@
end end
local.get $0 local.get $0
) )
(func $rc/logical-or-mismatch/Ref#constructor (; 16 ;) (type $FUNCSIG$i) (result i32) (func $rc/logical-or-mismatch/Ref#constructor (; 17 ;) (type $FUNCSIG$i) (result i32)
i32.const 0 i32.const 0
i32.const 3 i32.const 3
call $~lib/rt/tlsf/__alloc call $~lib/rt/tlsf/__alloc
call $~lib/rt/pure/__retain call $~lib/rt/pure/__retain
) )
(func $~lib/rt/tlsf/freeBlock (; 17 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/rt/tlsf/freeBlock (; 18 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
(local $2 i32) (local $2 i32)
local.get $1 local.get $1
i32.load i32.load
@ -1086,7 +1089,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 530 i32.const 531
i32.const 2 i32.const 2
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1100,9 +1103,9 @@
local.get $1 local.get $1
call $~lib/rt/tlsf/insertBlock call $~lib/rt/tlsf/insertBlock
local.get $1 local.get $1
call $~lib/rt/tlsf/onFree call $~lib/rt/rtrace/onfree
) )
(func $~lib/rt/__typeinfo (; 18 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (func $~lib/rt/__typeinfo (; 19 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
local.get $0 local.get $0
i32.const 256 i32.const 256
i32.load i32.load
@ -1122,7 +1125,7 @@
i32.add i32.add
i32.load i32.load
) )
(func $~lib/memory/memory.copy (; 19 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) (func $~lib/memory/memory.copy (; 20 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
block $~lib/util/memory/memmove|inlined.0 block $~lib/util/memory/memmove|inlined.0
@ -1295,7 +1298,7 @@
end end
end end
) )
(func $~lib/rt/pure/growRoots (; 20 ;) (type $FUNCSIG$v) (func $~lib/rt/pure/growRoots (; 21 ;) (type $FUNCSIG$v)
(local $0 i32) (local $0 i32)
(local $1 i32) (local $1 i32)
(local $2 i32) (local $2 i32)
@ -1331,7 +1334,7 @@
i32.add i32.add
global.set $~lib/rt/pure/END global.set $~lib/rt/pure/END
) )
(func $~lib/rt/pure/appendRoot (; 21 ;) (type $FUNCSIG$vi) (param $0 i32) (func $~lib/rt/pure/appendRoot (; 22 ;) (type $FUNCSIG$vi) (param $0 i32)
(local $1 i32) (local $1 i32)
global.get $~lib/rt/pure/CUR global.get $~lib/rt/pure/CUR
local.tee $1 local.tee $1
@ -1350,7 +1353,7 @@
i32.add i32.add
global.set $~lib/rt/pure/CUR global.set $~lib/rt/pure/CUR
) )
(func $~lib/rt/pure/decrement (; 22 ;) (type $FUNCSIG$vi) (param $0 i32) (func $~lib/rt/pure/decrement (; 23 ;) (type $FUNCSIG$vi) (param $0 i32)
(local $1 i32) (local $1 i32)
(local $2 i32) (local $2 i32)
local.get $0 local.get $0
@ -1360,7 +1363,7 @@
i32.and i32.and
local.set $1 local.set $1
local.get $0 local.get $0
call $~lib/rt/pure/onDecrement call $~lib/rt/rtrace/ondecrement
local.get $0 local.get $0
i32.load i32.load
i32.const 1 i32.const 1
@ -1368,7 +1371,7 @@
if if
i32.const 0 i32.const 0
i32.const 128 i32.const 128
i32.const 114 i32.const 115
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1401,7 +1404,7 @@
if if
i32.const 0 i32.const 0
i32.const 128 i32.const 128
i32.const 123 i32.const 124
i32.const 15 i32.const 15
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1440,7 +1443,7 @@
end end
end end
) )
(func $~lib/rt/pure/__release (; 23 ;) (type $FUNCSIG$vi) (param $0 i32) (func $~lib/rt/pure/__release (; 24 ;) (type $FUNCSIG$vi) (param $0 i32)
local.get $0 local.get $0
i32.const 292 i32.const 292
i32.gt_u i32.gt_u
@ -1451,7 +1454,7 @@
call $~lib/rt/pure/decrement call $~lib/rt/pure/decrement
end end
) )
(func $start:rc/logical-or-mismatch (; 24 ;) (type $FUNCSIG$v) (func $start:rc/logical-or-mismatch (; 25 ;) (type $FUNCSIG$v)
(local $0 i32) (local $0 i32)
call $rc/logical-or-mismatch/Ref#constructor call $rc/logical-or-mismatch/Ref#constructor
global.set $rc/logical-or-mismatch/gloRef global.set $rc/logical-or-mismatch/gloRef
@ -1497,10 +1500,10 @@
global.get $rc/logical-or-mismatch/gloRef global.get $rc/logical-or-mismatch/gloRef
call $~lib/rt/pure/__release call $~lib/rt/pure/__release
) )
(func $start (; 25 ;) (type $FUNCSIG$v) (func $start (; 26 ;) (type $FUNCSIG$v)
call $start:rc/logical-or-mismatch call $start:rc/logical-or-mismatch
) )
(func $~lib/rt/pure/markGray (; 26 ;) (type $FUNCSIG$vi) (param $0 i32) (func $~lib/rt/pure/markGray (; 27 ;) (type $FUNCSIG$vi) (param $0 i32)
(local $1 i32) (local $1 i32)
local.get $0 local.get $0
i32.load offset=4 i32.load offset=4
@ -1524,7 +1527,7 @@
call $~lib/rt/__visit_members call $~lib/rt/__visit_members
end end
) )
(func $~lib/rt/pure/scanBlack (; 27 ;) (type $FUNCSIG$vi) (param $0 i32) (func $~lib/rt/pure/scanBlack (; 28 ;) (type $FUNCSIG$vi) (param $0 i32)
local.get $0 local.get $0
local.get $0 local.get $0
i32.load offset=4 i32.load offset=4
@ -1537,7 +1540,7 @@
i32.const 4 i32.const 4
call $~lib/rt/__visit_members call $~lib/rt/__visit_members
) )
(func $~lib/rt/pure/scan (; 28 ;) (type $FUNCSIG$vi) (param $0 i32) (func $~lib/rt/pure/scan (; 29 ;) (type $FUNCSIG$vi) (param $0 i32)
(local $1 i32) (local $1 i32)
local.get $0 local.get $0
i32.load offset=4 i32.load offset=4
@ -1571,7 +1574,7 @@
end end
end end
) )
(func $~lib/rt/pure/collectWhite (; 29 ;) (type $FUNCSIG$vi) (param $0 i32) (func $~lib/rt/pure/collectWhite (; 30 ;) (type $FUNCSIG$vi) (param $0 i32)
(local $1 i32) (local $1 i32)
local.get $0 local.get $0
i32.load offset=4 i32.load offset=4
@ -1599,7 +1602,7 @@
local.get $0 local.get $0
call $~lib/rt/tlsf/freeBlock call $~lib/rt/tlsf/freeBlock
) )
(func $~lib/rt/pure/__visit (; 30 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/rt/pure/__visit (; 31 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
local.get $0 local.get $0
i32.const 292 i32.const 292
i32.lt_u i32.lt_u
@ -1645,7 +1648,7 @@
if if
i32.const 0 i32.const 0
i32.const 128 i32.const 128
i32.const 74 i32.const 75
i32.const 17 i32.const 17
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1678,7 +1681,7 @@
if if
i32.const 0 i32.const 0
i32.const 128 i32.const 128
i32.const 85 i32.const 86
i32.const 6 i32.const 6
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1703,13 +1706,13 @@
end end
i32.const 0 i32.const 0
i32.const 128 i32.const 128
i32.const 96 i32.const 97
i32.const 24 i32.const 24
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
end end
) )
(func $~lib/rt/__visit_members (; 31 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/rt/__visit_members (; 32 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
block $switch$1$default block $switch$1$default
block $switch$1$case$4 block $switch$1$case$4
block $switch$1$case$2 block $switch$1$case$2
@ -1733,7 +1736,7 @@
end end
unreachable unreachable
) )
(func $null (; 32 ;) (type $FUNCSIG$v) (func $null (; 33 ;) (type $FUNCSIG$v)
nop nop
) )
) )

View File

@ -9,9 +9,10 @@
(type $FUNCSIG$vi (func (param i32))) (type $FUNCSIG$vi (func (param i32)))
(type $FUNCSIG$i (func (result i32))) (type $FUNCSIG$i (func (result i32)))
(import "env" "abort" (func $~lib/builtins/abort (param i32 i32 i32 i32))) (import "env" "abort" (func $~lib/builtins/abort (param i32 i32 i32 i32)))
(import "rtrace" "retain" (func $~lib/rt/pure/onIncrement (param i32))) (import "rtrace" "onalloc" (func $~lib/rt/rtrace/onalloc (param i32)))
(import "rtrace" "release" (func $~lib/rt/pure/onDecrement (param i32))) (import "rtrace" "onincrement" (func $~lib/rt/rtrace/onincrement (param i32)))
(import "rtrace" "free" (func $~lib/rt/tlsf/onFree (param i32))) (import "rtrace" "ondecrement" (func $~lib/rt/rtrace/ondecrement (param i32)))
(import "rtrace" "onfree" (func $~lib/rt/rtrace/onfree (param i32)))
(memory $0 1) (memory $0 1)
(data (i32.const 8) "\1e\00\00\00\01\00\00\00\01\00\00\00\1e\00\00\00~\00l\00i\00b\00/\00r\00t\00/\00t\00l\00s\00f\00.\00t\00s\00") (data (i32.const 8) "\1e\00\00\00\01\00\00\00\01\00\00\00\1e\00\00\00~\00l\00i\00b\00/\00r\00t\00/\00t\00l\00s\00f\00.\00t\00s\00")
(data (i32.const 56) "(\00\00\00\01\00\00\00\01\00\00\00(\00\00\00a\00l\00l\00o\00c\00a\00t\00i\00o\00n\00 \00t\00o\00o\00 \00l\00a\00r\00g\00e\00") (data (i32.const 56) "(\00\00\00\01\00\00\00\01\00\00\00(\00\00\00a\00l\00l\00o\00c\00a\00t\00i\00o\00n\00 \00t\00o\00o\00 \00l\00a\00r\00g\00e\00")
@ -30,7 +31,7 @@
(global $~lib/heap/HEAP_BASE i32 (i32.const 292)) (global $~lib/heap/HEAP_BASE i32 (i32.const 292))
(export "memory" (memory $0)) (export "memory" (memory $0))
(start $start) (start $start)
(func $~lib/rt/tlsf/removeBlock (; 4 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/rt/tlsf/removeBlock (; 5 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
@ -51,7 +52,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 275 i32.const 276
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -76,7 +77,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 277 i32.const 278
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -128,7 +129,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 290 i32.const 291
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -248,7 +249,7 @@
end end
end end
) )
(func $~lib/rt/tlsf/insertBlock (; 5 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/rt/tlsf/insertBlock (; 6 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
@ -266,7 +267,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 203 i32.const 204
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -281,7 +282,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 205 i32.const 206
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -380,7 +381,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 226 i32.const 227
i32.const 15 i32.const 15
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -443,7 +444,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 241 i32.const 242
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -459,7 +460,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 242 i32.const 243
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -516,7 +517,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 258 i32.const 259
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -612,7 +613,7 @@
i32.store offset=4 i32.store offset=4
end end
) )
(func $~lib/rt/tlsf/addMemory (; 6 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (func $~lib/rt/tlsf/addMemory (; 7 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
(local $5 i32) (local $5 i32)
@ -643,7 +644,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 384 i32.const 385
i32.const 4 i32.const 4
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -668,7 +669,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 394 i32.const 395
i32.const 15 i32.const 15
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -699,7 +700,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 406 i32.const 407
i32.const 4 i32.const 4
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -764,7 +765,7 @@
call $~lib/rt/tlsf/insertBlock call $~lib/rt/tlsf/insertBlock
i32.const 1 i32.const 1
) )
(func $~lib/rt/tlsf/initializeRoot (; 7 ;) (type $FUNCSIG$v) (func $~lib/rt/tlsf/initializeRoot (; 8 ;) (type $FUNCSIG$v)
(local $0 i32) (local $0 i32)
(local $1 i32) (local $1 i32)
(local $2 i32) (local $2 i32)
@ -917,7 +918,7 @@
local.get $3 local.get $3
global.set $~lib/rt/tlsf/ROOT global.set $~lib/rt/tlsf/ROOT
) )
(func $~lib/rt/tlsf/prepareSize (; 8 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (func $~lib/rt/tlsf/prepareSize (; 9 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
(local $1 i32) (local $1 i32)
(local $2 i32) (local $2 i32)
local.get $0 local.get $0
@ -926,7 +927,7 @@
if if
i32.const 72 i32.const 72
i32.const 24 i32.const 24
i32.const 446 i32.const 447
i32.const 29 i32.const 29
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -946,7 +947,7 @@
i32.gt_u i32.gt_u
select select
) )
(func $~lib/rt/tlsf/searchBlock (; 9 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (func $~lib/rt/tlsf/searchBlock (; 10 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
@ -1020,7 +1021,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 336 i32.const 337
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1087,7 +1088,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 349 i32.const 350
i32.const 17 i32.const 17
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1137,7 +1138,7 @@
end end
local.get $7 local.get $7
) )
(func $~lib/rt/tlsf/growMemory (; 10 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/rt/tlsf/growMemory (; 11 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
@ -1190,7 +1191,7 @@
call $~lib/rt/tlsf/addMemory call $~lib/rt/tlsf/addMemory
drop drop
) )
(func $~lib/rt/tlsf/prepareBlock (; 11 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) (func $~lib/rt/tlsf/prepareBlock (; 12 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
(local $5 i32) (local $5 i32)
@ -1205,7 +1206,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 363 i32.const 364
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1289,7 +1290,7 @@
i32.store i32.store
end end
) )
(func $~lib/rt/tlsf/allocateBlock (; 12 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (func $~lib/rt/tlsf/allocateBlock (; 13 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
local.get $1 local.get $1
@ -1314,7 +1315,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 476 i32.const 477
i32.const 15 i32.const 15
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1332,7 +1333,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 478 i32.const 479
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1351,8 +1352,10 @@
local.get $2 local.get $2
call $~lib/rt/tlsf/prepareBlock call $~lib/rt/tlsf/prepareBlock
local.get $3 local.get $3
call $~lib/rt/rtrace/onalloc
local.get $3
) )
(func $~lib/rt/tlsf/__alloc (; 13 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (func $~lib/rt/tlsf/__alloc (; 14 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
global.get $~lib/rt/tlsf/ROOT global.get $~lib/rt/tlsf/ROOT
@ -1375,7 +1378,7 @@
i32.const 16 i32.const 16
i32.add i32.add
) )
(func $~lib/rt/pure/increment (; 14 ;) (type $FUNCSIG$vi) (param $0 i32) (func $~lib/rt/pure/increment (; 15 ;) (type $FUNCSIG$vi) (param $0 i32)
(local $1 i32) (local $1 i32)
local.get $0 local.get $0
i32.load offset=4 i32.load offset=4
@ -1397,7 +1400,7 @@
if if
i32.const 0 i32.const 0
i32.const 128 i32.const 128
i32.const 103 i32.const 104
i32.const 2 i32.const 2
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1408,7 +1411,7 @@
i32.add i32.add
i32.store offset=4 i32.store offset=4
local.get $0 local.get $0
call $~lib/rt/pure/onIncrement call $~lib/rt/rtrace/onincrement
local.get $0 local.get $0
i32.load i32.load
i32.const 1 i32.const 1
@ -1418,13 +1421,13 @@
if if
i32.const 0 i32.const 0
i32.const 128 i32.const 128
i32.const 106 i32.const 107
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
end end
) )
(func $~lib/rt/pure/__retain (; 15 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (func $~lib/rt/pure/__retain (; 16 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
local.get $0 local.get $0
global.get $~lib/heap/HEAP_BASE global.get $~lib/heap/HEAP_BASE
i32.gt_u i32.gt_u
@ -1436,7 +1439,7 @@
end end
local.get $0 local.get $0
) )
(func $rc/logical-or-mismatch/Ref#constructor (; 16 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (func $rc/logical-or-mismatch/Ref#constructor (; 17 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
local.get $0 local.get $0
i32.eqz i32.eqz
if if
@ -1448,11 +1451,11 @@
end end
local.get $0 local.get $0
) )
(func $rc/logical-or-mismatch/getRef (; 17 ;) (type $FUNCSIG$i) (result i32) (func $rc/logical-or-mismatch/getRef (; 18 ;) (type $FUNCSIG$i) (result i32)
i32.const 0 i32.const 0
call $rc/logical-or-mismatch/Ref#constructor call $rc/logical-or-mismatch/Ref#constructor
) )
(func $~lib/rt/tlsf/freeBlock (; 18 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/rt/tlsf/freeBlock (; 19 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
(local $2 i32) (local $2 i32)
local.get $1 local.get $1
i32.load i32.load
@ -1465,7 +1468,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 530 i32.const 531
i32.const 2 i32.const 2
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1479,9 +1482,9 @@
local.get $1 local.get $1
call $~lib/rt/tlsf/insertBlock call $~lib/rt/tlsf/insertBlock
local.get $1 local.get $1
call $~lib/rt/tlsf/onFree call $~lib/rt/rtrace/onfree
) )
(func $~lib/rt/__typeinfo (; 19 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (func $~lib/rt/__typeinfo (; 20 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
(local $1 i32) (local $1 i32)
global.get $~lib/rt/RTTI_BASE global.get $~lib/rt/RTTI_BASE
local.set $1 local.set $1
@ -1506,7 +1509,7 @@
i32.add i32.add
i32.load i32.load
) )
(func $~lib/memory/memory.copy (; 20 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) (func $~lib/memory/memory.copy (; 21 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
(local $5 i32) (local $5 i32)
@ -1712,7 +1715,7 @@
end end
end end
) )
(func $~lib/rt/pure/growRoots (; 21 ;) (type $FUNCSIG$v) (func $~lib/rt/pure/growRoots (; 22 ;) (type $FUNCSIG$v)
(local $0 i32) (local $0 i32)
(local $1 i32) (local $1 i32)
(local $2 i32) (local $2 i32)
@ -1757,7 +1760,7 @@
i32.add i32.add
global.set $~lib/rt/pure/END global.set $~lib/rt/pure/END
) )
(func $~lib/rt/pure/appendRoot (; 22 ;) (type $FUNCSIG$vi) (param $0 i32) (func $~lib/rt/pure/appendRoot (; 23 ;) (type $FUNCSIG$vi) (param $0 i32)
(local $1 i32) (local $1 i32)
global.get $~lib/rt/pure/CUR global.get $~lib/rt/pure/CUR
local.set $1 local.set $1
@ -1777,7 +1780,7 @@
i32.add i32.add
global.set $~lib/rt/pure/CUR global.set $~lib/rt/pure/CUR
) )
(func $~lib/rt/pure/decrement (; 23 ;) (type $FUNCSIG$vi) (param $0 i32) (func $~lib/rt/pure/decrement (; 24 ;) (type $FUNCSIG$vi) (param $0 i32)
(local $1 i32) (local $1 i32)
(local $2 i32) (local $2 i32)
local.get $0 local.get $0
@ -1788,7 +1791,7 @@
i32.and i32.and
local.set $2 local.set $2
local.get $0 local.get $0
call $~lib/rt/pure/onDecrement call $~lib/rt/rtrace/ondecrement
local.get $0 local.get $0
i32.load i32.load
i32.const 1 i32.const 1
@ -1798,7 +1801,7 @@
if if
i32.const 0 i32.const 0
i32.const 128 i32.const 128
i32.const 114 i32.const 115
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1837,7 +1840,7 @@
if if
i32.const 0 i32.const 0
i32.const 128 i32.const 128
i32.const 123 i32.const 124
i32.const 15 i32.const 15
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1881,7 +1884,7 @@
end end
end end
) )
(func $~lib/rt/pure/__release (; 24 ;) (type $FUNCSIG$vi) (param $0 i32) (func $~lib/rt/pure/__release (; 25 ;) (type $FUNCSIG$vi) (param $0 i32)
local.get $0 local.get $0
global.get $~lib/heap/HEAP_BASE global.get $~lib/heap/HEAP_BASE
i32.gt_u i32.gt_u
@ -1892,7 +1895,7 @@
call $~lib/rt/pure/decrement call $~lib/rt/pure/decrement
end end
) )
(func $start:rc/logical-or-mismatch (; 25 ;) (type $FUNCSIG$v) (func $start:rc/logical-or-mismatch (; 26 ;) (type $FUNCSIG$v)
(local $0 i32) (local $0 i32)
i32.const 0 i32.const 0
call $rc/logical-or-mismatch/Ref#constructor call $rc/logical-or-mismatch/Ref#constructor
@ -1955,10 +1958,10 @@
global.get $rc/logical-or-mismatch/gloRef global.get $rc/logical-or-mismatch/gloRef
call $~lib/rt/pure/__release call $~lib/rt/pure/__release
) )
(func $start (; 26 ;) (type $FUNCSIG$v) (func $start (; 27 ;) (type $FUNCSIG$v)
call $start:rc/logical-or-mismatch call $start:rc/logical-or-mismatch
) )
(func $~lib/rt/pure/markGray (; 27 ;) (type $FUNCSIG$vi) (param $0 i32) (func $~lib/rt/pure/markGray (; 28 ;) (type $FUNCSIG$vi) (param $0 i32)
(local $1 i32) (local $1 i32)
local.get $0 local.get $0
i32.load offset=4 i32.load offset=4
@ -1985,7 +1988,7 @@
call $~lib/rt/__visit_members call $~lib/rt/__visit_members
end end
) )
(func $~lib/rt/pure/scanBlack (; 28 ;) (type $FUNCSIG$vi) (param $0 i32) (func $~lib/rt/pure/scanBlack (; 29 ;) (type $FUNCSIG$vi) (param $0 i32)
local.get $0 local.get $0
local.get $0 local.get $0
i32.load offset=4 i32.load offset=4
@ -2002,7 +2005,7 @@
i32.const 4 i32.const 4
call $~lib/rt/__visit_members call $~lib/rt/__visit_members
) )
(func $~lib/rt/pure/scan (; 29 ;) (type $FUNCSIG$vi) (param $0 i32) (func $~lib/rt/pure/scan (; 30 ;) (type $FUNCSIG$vi) (param $0 i32)
(local $1 i32) (local $1 i32)
local.get $0 local.get $0
i32.load offset=4 i32.load offset=4
@ -2039,7 +2042,7 @@
end end
end end
) )
(func $~lib/rt/pure/collectWhite (; 30 ;) (type $FUNCSIG$vi) (param $0 i32) (func $~lib/rt/pure/collectWhite (; 31 ;) (type $FUNCSIG$vi) (param $0 i32)
(local $1 i32) (local $1 i32)
local.get $0 local.get $0
i32.load offset=4 i32.load offset=4
@ -2068,7 +2071,7 @@
local.get $0 local.get $0
call $~lib/rt/tlsf/freeBlock call $~lib/rt/tlsf/freeBlock
) )
(func $~lib/rt/pure/__visit (; 31 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/rt/pure/__visit (; 32 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
local.get $0 local.get $0
@ -2131,7 +2134,7 @@
if if
i32.const 0 i32.const 0
i32.const 128 i32.const 128
i32.const 74 i32.const 75
i32.const 17 i32.const 17
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -2178,7 +2181,7 @@
if if
i32.const 0 i32.const 0
i32.const 128 i32.const 128
i32.const 85 i32.const 86
i32.const 6 i32.const 6
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -2215,14 +2218,14 @@
if if
i32.const 0 i32.const 0
i32.const 128 i32.const 128
i32.const 96 i32.const 97
i32.const 24 i32.const 24
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
end end
end end
) )
(func $~lib/rt/__visit_members (; 32 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/rt/__visit_members (; 33 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
(local $2 i32) (local $2 i32)
block block
end end
@ -2279,6 +2282,6 @@
unreachable unreachable
end end
) )
(func $null (; 33 ;) (type $FUNCSIG$v) (func $null (; 34 ;) (type $FUNCSIG$v)
) )
) )

View File

@ -43,7 +43,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 275 i32.const 276
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -65,7 +65,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 277 i32.const 278
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -110,7 +110,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 290 i32.const 291
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -207,7 +207,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 203 i32.const 204
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -221,7 +221,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 205 i32.const 206
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -294,7 +294,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 226 i32.const 227
i32.const 15 i32.const 15
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -351,7 +351,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 241 i32.const 242
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -366,7 +366,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 242 i32.const 243
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -416,7 +416,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 258 i32.const 259
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -502,7 +502,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 384 i32.const 385
i32.const 4 i32.const 4
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -519,7 +519,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 394 i32.const 395
i32.const 15 i32.const 15
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -547,7 +547,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 406 i32.const 407
i32.const 4 i32.const 4
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -684,7 +684,7 @@
if if
i32.const 72 i32.const 72
i32.const 24 i32.const 24
i32.const 446 i32.const 447
i32.const 29 i32.const 29
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -759,7 +759,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 336 i32.const 337
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -811,7 +811,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 349 i32.const 350
i32.const 17 i32.const 17
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -881,7 +881,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 363 i32.const 364
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -967,7 +967,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 476 i32.const 477
i32.const 15 i32.const 15
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -982,7 +982,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 478 i32.const 479
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1210,7 +1210,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 491 i32.const 493
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1314,7 +1314,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 552 i32.const 553
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1330,7 +1330,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 553 i32.const 554
i32.const 2 i32.const 2
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1354,7 +1354,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 530 i32.const 531
i32.const 2 i32.const 2
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1374,7 +1374,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 560 i32.const 561
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1390,7 +1390,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 561 i32.const 562
i32.const 2 i32.const 2
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1417,7 +1417,7 @@
if if
i32.const 0 i32.const 0
i32.const 128 i32.const 128
i32.const 103 i32.const 104
i32.const 2 i32.const 2
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1434,7 +1434,7 @@
if if
i32.const 0 i32.const 0
i32.const 128 i32.const 128
i32.const 106 i32.const 107
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1543,7 +1543,7 @@
if if
i32.const 0 i32.const 0
i32.const 128 i32.const 128
i32.const 114 i32.const 115
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1576,7 +1576,7 @@
if if
i32.const 0 i32.const 0
i32.const 128 i32.const 128
i32.const 123 i32.const 124
i32.const 15 i32.const 15
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1932,7 +1932,7 @@
if if
i32.const 0 i32.const 0
i32.const 128 i32.const 128
i32.const 74 i32.const 75
i32.const 17 i32.const 17
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1965,7 +1965,7 @@
if if
i32.const 0 i32.const 0
i32.const 128 i32.const 128
i32.const 85 i32.const 86
i32.const 6 i32.const 6
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1990,7 +1990,7 @@
end end
i32.const 0 i32.const 0
i32.const 128 i32.const 128
i32.const 96 i32.const 97
i32.const 24 i32.const 24
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable

View File

@ -55,7 +55,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 275 i32.const 276
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -80,7 +80,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 277 i32.const 278
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -132,7 +132,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 290 i32.const 291
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -270,7 +270,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 203 i32.const 204
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -285,7 +285,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 205 i32.const 206
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -384,7 +384,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 226 i32.const 227
i32.const 15 i32.const 15
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -447,7 +447,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 241 i32.const 242
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -463,7 +463,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 242 i32.const 243
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -520,7 +520,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 258 i32.const 259
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -647,7 +647,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 384 i32.const 385
i32.const 4 i32.const 4
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -672,7 +672,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 394 i32.const 395
i32.const 15 i32.const 15
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -703,7 +703,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 406 i32.const 407
i32.const 4 i32.const 4
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -930,7 +930,7 @@
if if
i32.const 72 i32.const 72
i32.const 24 i32.const 24
i32.const 446 i32.const 447
i32.const 29 i32.const 29
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1024,7 +1024,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 336 i32.const 337
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1091,7 +1091,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 349 i32.const 350
i32.const 17 i32.const 17
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1209,7 +1209,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 363 i32.const 364
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1318,7 +1318,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 476 i32.const 477
i32.const 15 i32.const 15
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1336,7 +1336,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 478 i32.const 479
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1606,7 +1606,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 491 i32.const 493
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1724,7 +1724,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 552 i32.const 553
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1744,7 +1744,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 553 i32.const 554
i32.const 2 i32.const 2
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1771,7 +1771,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 530 i32.const 531
i32.const 2 i32.const 2
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1791,7 +1791,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 560 i32.const 561
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1811,7 +1811,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 561 i32.const 562
i32.const 2 i32.const 2
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1844,7 +1844,7 @@
if if
i32.const 0 i32.const 0
i32.const 128 i32.const 128
i32.const 103 i32.const 104
i32.const 2 i32.const 2
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1863,7 +1863,7 @@
if if
i32.const 0 i32.const 0
i32.const 128 i32.const 128
i32.const 106 i32.const 107
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1990,7 +1990,7 @@
if if
i32.const 0 i32.const 0
i32.const 128 i32.const 128
i32.const 114 i32.const 115
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -2029,7 +2029,7 @@
if if
i32.const 0 i32.const 0
i32.const 128 i32.const 128
i32.const 123 i32.const 124
i32.const 15 i32.const 15
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -2468,7 +2468,7 @@
if if
i32.const 0 i32.const 0
i32.const 128 i32.const 128
i32.const 74 i32.const 75
i32.const 17 i32.const 17
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -2515,7 +2515,7 @@
if if
i32.const 0 i32.const 0
i32.const 128 i32.const 128
i32.const 85 i32.const 86
i32.const 6 i32.const 6
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -2552,7 +2552,7 @@
if if
i32.const 0 i32.const 0
i32.const 128 i32.const 128
i32.const 96 i32.const 97
i32.const 24 i32.const 24
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable

View File

@ -8,9 +8,10 @@
(type $FUNCSIG$vi (func (param i32))) (type $FUNCSIG$vi (func (param i32)))
(type $FUNCSIG$i (func (result i32))) (type $FUNCSIG$i (func (result i32)))
(import "env" "abort" (func $~lib/builtins/abort (param i32 i32 i32 i32))) (import "env" "abort" (func $~lib/builtins/abort (param i32 i32 i32 i32)))
(import "rtrace" "retain" (func $~lib/rt/pure/onIncrement (param i32))) (import "rtrace" "onalloc" (func $~lib/rt/rtrace/onalloc (param i32)))
(import "rtrace" "release" (func $~lib/rt/pure/onDecrement (param i32))) (import "rtrace" "onincrement" (func $~lib/rt/rtrace/onincrement (param i32)))
(import "rtrace" "free" (func $~lib/rt/tlsf/onFree (param i32))) (import "rtrace" "ondecrement" (func $~lib/rt/rtrace/ondecrement (param i32)))
(import "rtrace" "onfree" (func $~lib/rt/rtrace/onfree (param i32)))
(memory $0 1) (memory $0 1)
(data (i32.const 8) "\1e\00\00\00\01\00\00\00\01\00\00\00\1e\00\00\00~\00l\00i\00b\00/\00r\00t\00/\00t\00l\00s\00f\00.\00t\00s") (data (i32.const 8) "\1e\00\00\00\01\00\00\00\01\00\00\00\1e\00\00\00~\00l\00i\00b\00/\00r\00t\00/\00t\00l\00s\00f\00.\00t\00s")
(data (i32.const 56) "(\00\00\00\01\00\00\00\01\00\00\00(\00\00\00a\00l\00l\00o\00c\00a\00t\00i\00o\00n\00 \00t\00o\00o\00 \00l\00a\00r\00g\00e") (data (i32.const 56) "(\00\00\00\01\00\00\00\01\00\00\00(\00\00\00a\00l\00l\00o\00c\00a\00t\00i\00o\00n\00 \00t\00o\00o\00 \00l\00a\00r\00g\00e")
@ -27,7 +28,7 @@
(export "test1" (func $rc/ternary-mismatch/test1)) (export "test1" (func $rc/ternary-mismatch/test1))
(export "test2" (func $rc/ternary-mismatch/test2)) (export "test2" (func $rc/ternary-mismatch/test2))
(start $start) (start $start)
(func $~lib/rt/tlsf/removeBlock (; 4 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/rt/tlsf/removeBlock (; 5 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
@ -41,7 +42,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 275 i32.const 276
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -63,7 +64,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 277 i32.const 278
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -108,7 +109,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 290 i32.const 291
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -193,7 +194,7 @@
end end
end end
) )
(func $~lib/rt/tlsf/insertBlock (; 5 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/rt/tlsf/insertBlock (; 6 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
@ -205,7 +206,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 203 i32.const 204
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -219,7 +220,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 205 i32.const 206
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -292,7 +293,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 226 i32.const 227
i32.const 15 i32.const 15
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -349,7 +350,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 241 i32.const 242
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -364,7 +365,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 242 i32.const 243
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -414,7 +415,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 258 i32.const 259
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -478,7 +479,7 @@
i32.or i32.or
i32.store offset=4 i32.store offset=4
) )
(func $~lib/rt/tlsf/addMemory (; 6 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) (func $~lib/rt/tlsf/addMemory (; 7 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
local.get $2 local.get $2
@ -500,7 +501,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 384 i32.const 385
i32.const 4 i32.const 4
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -517,7 +518,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 394 i32.const 395
i32.const 15 i32.const 15
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -545,7 +546,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 406 i32.const 407
i32.const 4 i32.const 4
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -592,7 +593,7 @@
local.get $1 local.get $1
call $~lib/rt/tlsf/insertBlock call $~lib/rt/tlsf/insertBlock
) )
(func $~lib/rt/tlsf/initializeRoot (; 7 ;) (type $FUNCSIG$v) (func $~lib/rt/tlsf/initializeRoot (; 8 ;) (type $FUNCSIG$v)
(local $0 i32) (local $0 i32)
(local $1 i32) (local $1 i32)
i32.const 1 i32.const 1
@ -675,14 +676,14 @@
i32.const 304 i32.const 304
global.set $~lib/rt/tlsf/ROOT global.set $~lib/rt/tlsf/ROOT
) )
(func $~lib/rt/tlsf/prepareSize (; 8 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (func $~lib/rt/tlsf/prepareSize (; 9 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
local.get $0 local.get $0
i32.const 1073741808 i32.const 1073741808
i32.ge_u i32.ge_u
if if
i32.const 72 i32.const 72
i32.const 24 i32.const 24
i32.const 446 i32.const 447
i32.const 29 i32.const 29
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -699,7 +700,7 @@
i32.gt_u i32.gt_u
select select
) )
(func $~lib/rt/tlsf/searchBlock (; 9 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (func $~lib/rt/tlsf/searchBlock (; 10 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
(local $2 i32) (local $2 i32)
local.get $1 local.get $1
i32.const 256 i32.const 256
@ -757,7 +758,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 336 i32.const 337
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -809,7 +810,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 349 i32.const 350
i32.const 17 i32.const 17
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -830,7 +831,7 @@
end end
end end
) )
(func $~lib/rt/tlsf/growMemory (; 10 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/rt/tlsf/growMemory (; 11 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
(local $2 i32) (local $2 i32)
memory.size memory.size
local.tee $2 local.tee $2
@ -867,7 +868,7 @@
i32.shl i32.shl
call $~lib/rt/tlsf/addMemory call $~lib/rt/tlsf/addMemory
) )
(func $~lib/rt/tlsf/prepareBlock (; 11 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) (func $~lib/rt/tlsf/prepareBlock (; 12 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
local.get $1 local.get $1
@ -879,7 +880,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 363 i32.const 364
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -943,7 +944,7 @@
i32.store i32.store
end end
) )
(func $~lib/rt/tlsf/allocateBlock (; 12 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (func $~lib/rt/tlsf/allocateBlock (; 13 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
local.get $0 local.get $0
@ -965,7 +966,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 476 i32.const 477
i32.const 15 i32.const 15
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -980,7 +981,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 478 i32.const 479
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -999,8 +1000,10 @@
local.get $3 local.get $3
call $~lib/rt/tlsf/prepareBlock call $~lib/rt/tlsf/prepareBlock
local.get $2 local.get $2
call $~lib/rt/rtrace/onalloc
local.get $2
) )
(func $~lib/rt/tlsf/__alloc (; 13 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (func $~lib/rt/tlsf/__alloc (; 14 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
(local $2 i32) (local $2 i32)
global.get $~lib/rt/tlsf/ROOT global.get $~lib/rt/tlsf/ROOT
local.tee $2 local.tee $2
@ -1019,7 +1022,7 @@
i32.const 16 i32.const 16
i32.add i32.add
) )
(func $~lib/rt/pure/increment (; 14 ;) (type $FUNCSIG$vi) (param $0 i32) (func $~lib/rt/pure/increment (; 15 ;) (type $FUNCSIG$vi) (param $0 i32)
(local $1 i32) (local $1 i32)
local.get $0 local.get $0
i32.load offset=4 i32.load offset=4
@ -1035,7 +1038,7 @@
if if
i32.const 0 i32.const 0
i32.const 128 i32.const 128
i32.const 103 i32.const 104
i32.const 2 i32.const 2
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1046,7 +1049,7 @@
i32.add i32.add
i32.store offset=4 i32.store offset=4
local.get $0 local.get $0
call $~lib/rt/pure/onIncrement call $~lib/rt/rtrace/onincrement
local.get $0 local.get $0
i32.load i32.load
i32.const 1 i32.const 1
@ -1054,13 +1057,13 @@
if if
i32.const 0 i32.const 0
i32.const 128 i32.const 128
i32.const 106 i32.const 107
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
end end
) )
(func $~lib/rt/pure/__retain (; 15 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (func $~lib/rt/pure/__retain (; 16 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
local.get $0 local.get $0
i32.const 292 i32.const 292
i32.gt_u i32.gt_u
@ -1072,13 +1075,13 @@
end end
local.get $0 local.get $0
) )
(func $rc/ternary-mismatch/Ref#constructor (; 16 ;) (type $FUNCSIG$i) (result i32) (func $rc/ternary-mismatch/Ref#constructor (; 17 ;) (type $FUNCSIG$i) (result i32)
i32.const 0 i32.const 0
i32.const 3 i32.const 3
call $~lib/rt/tlsf/__alloc call $~lib/rt/tlsf/__alloc
call $~lib/rt/pure/__retain call $~lib/rt/pure/__retain
) )
(func $rc/ternary-mismatch/test1 (; 17 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (func $rc/ternary-mismatch/test1 (; 18 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
local.get $0 local.get $0
if (result i32) if (result i32)
call $rc/ternary-mismatch/Ref#constructor call $rc/ternary-mismatch/Ref#constructor
@ -1087,7 +1090,7 @@
call $~lib/rt/pure/__retain call $~lib/rt/pure/__retain
end end
) )
(func $~lib/rt/tlsf/freeBlock (; 18 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/rt/tlsf/freeBlock (; 19 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
(local $2 i32) (local $2 i32)
local.get $1 local.get $1
i32.load i32.load
@ -1097,7 +1100,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 530 i32.const 531
i32.const 2 i32.const 2
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1111,9 +1114,9 @@
local.get $1 local.get $1
call $~lib/rt/tlsf/insertBlock call $~lib/rt/tlsf/insertBlock
local.get $1 local.get $1
call $~lib/rt/tlsf/onFree call $~lib/rt/rtrace/onfree
) )
(func $~lib/rt/__typeinfo (; 19 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (func $~lib/rt/__typeinfo (; 20 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
local.get $0 local.get $0
i32.const 256 i32.const 256
i32.load i32.load
@ -1133,7 +1136,7 @@
i32.add i32.add
i32.load i32.load
) )
(func $~lib/memory/memory.copy (; 20 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) (func $~lib/memory/memory.copy (; 21 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
block $~lib/util/memory/memmove|inlined.0 block $~lib/util/memory/memmove|inlined.0
@ -1306,7 +1309,7 @@
end end
end end
) )
(func $~lib/rt/pure/growRoots (; 21 ;) (type $FUNCSIG$v) (func $~lib/rt/pure/growRoots (; 22 ;) (type $FUNCSIG$v)
(local $0 i32) (local $0 i32)
(local $1 i32) (local $1 i32)
(local $2 i32) (local $2 i32)
@ -1342,7 +1345,7 @@
i32.add i32.add
global.set $~lib/rt/pure/END global.set $~lib/rt/pure/END
) )
(func $~lib/rt/pure/appendRoot (; 22 ;) (type $FUNCSIG$vi) (param $0 i32) (func $~lib/rt/pure/appendRoot (; 23 ;) (type $FUNCSIG$vi) (param $0 i32)
(local $1 i32) (local $1 i32)
global.get $~lib/rt/pure/CUR global.get $~lib/rt/pure/CUR
local.tee $1 local.tee $1
@ -1361,7 +1364,7 @@
i32.add i32.add
global.set $~lib/rt/pure/CUR global.set $~lib/rt/pure/CUR
) )
(func $~lib/rt/pure/decrement (; 23 ;) (type $FUNCSIG$vi) (param $0 i32) (func $~lib/rt/pure/decrement (; 24 ;) (type $FUNCSIG$vi) (param $0 i32)
(local $1 i32) (local $1 i32)
(local $2 i32) (local $2 i32)
local.get $0 local.get $0
@ -1371,7 +1374,7 @@
i32.and i32.and
local.set $1 local.set $1
local.get $0 local.get $0
call $~lib/rt/pure/onDecrement call $~lib/rt/rtrace/ondecrement
local.get $0 local.get $0
i32.load i32.load
i32.const 1 i32.const 1
@ -1379,7 +1382,7 @@
if if
i32.const 0 i32.const 0
i32.const 128 i32.const 128
i32.const 114 i32.const 115
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1412,7 +1415,7 @@
if if
i32.const 0 i32.const 0
i32.const 128 i32.const 128
i32.const 123 i32.const 124
i32.const 15 i32.const 15
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1451,7 +1454,7 @@
end end
end end
) )
(func $~lib/rt/pure/__release (; 24 ;) (type $FUNCSIG$vi) (param $0 i32) (func $~lib/rt/pure/__release (; 25 ;) (type $FUNCSIG$vi) (param $0 i32)
local.get $0 local.get $0
i32.const 292 i32.const 292
i32.gt_u i32.gt_u
@ -1462,7 +1465,7 @@
call $~lib/rt/pure/decrement call $~lib/rt/pure/decrement
end end
) )
(func $rc/ternary-mismatch/test2 (; 25 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (func $rc/ternary-mismatch/test2 (; 26 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
local.get $0 local.get $0
if (result i32) if (result i32)
global.get $rc/ternary-mismatch/gloRef global.get $rc/ternary-mismatch/gloRef
@ -1471,7 +1474,7 @@
call $rc/ternary-mismatch/Ref#constructor call $rc/ternary-mismatch/Ref#constructor
end end
) )
(func $start:rc/ternary-mismatch (; 26 ;) (type $FUNCSIG$v) (func $start:rc/ternary-mismatch (; 27 ;) (type $FUNCSIG$v)
call $rc/ternary-mismatch/Ref#constructor call $rc/ternary-mismatch/Ref#constructor
global.set $rc/ternary-mismatch/gloRef global.set $rc/ternary-mismatch/gloRef
i32.const 1 i32.const 1
@ -1489,10 +1492,10 @@
global.get $rc/ternary-mismatch/gloRef global.get $rc/ternary-mismatch/gloRef
call $~lib/rt/pure/__release call $~lib/rt/pure/__release
) )
(func $start (; 27 ;) (type $FUNCSIG$v) (func $start (; 28 ;) (type $FUNCSIG$v)
call $start:rc/ternary-mismatch call $start:rc/ternary-mismatch
) )
(func $~lib/rt/pure/markGray (; 28 ;) (type $FUNCSIG$vi) (param $0 i32) (func $~lib/rt/pure/markGray (; 29 ;) (type $FUNCSIG$vi) (param $0 i32)
(local $1 i32) (local $1 i32)
local.get $0 local.get $0
i32.load offset=4 i32.load offset=4
@ -1516,7 +1519,7 @@
call $~lib/rt/__visit_members call $~lib/rt/__visit_members
end end
) )
(func $~lib/rt/pure/scanBlack (; 29 ;) (type $FUNCSIG$vi) (param $0 i32) (func $~lib/rt/pure/scanBlack (; 30 ;) (type $FUNCSIG$vi) (param $0 i32)
local.get $0 local.get $0
local.get $0 local.get $0
i32.load offset=4 i32.load offset=4
@ -1529,7 +1532,7 @@
i32.const 4 i32.const 4
call $~lib/rt/__visit_members call $~lib/rt/__visit_members
) )
(func $~lib/rt/pure/scan (; 30 ;) (type $FUNCSIG$vi) (param $0 i32) (func $~lib/rt/pure/scan (; 31 ;) (type $FUNCSIG$vi) (param $0 i32)
(local $1 i32) (local $1 i32)
local.get $0 local.get $0
i32.load offset=4 i32.load offset=4
@ -1563,7 +1566,7 @@
end end
end end
) )
(func $~lib/rt/pure/collectWhite (; 31 ;) (type $FUNCSIG$vi) (param $0 i32) (func $~lib/rt/pure/collectWhite (; 32 ;) (type $FUNCSIG$vi) (param $0 i32)
(local $1 i32) (local $1 i32)
local.get $0 local.get $0
i32.load offset=4 i32.load offset=4
@ -1591,7 +1594,7 @@
local.get $0 local.get $0
call $~lib/rt/tlsf/freeBlock call $~lib/rt/tlsf/freeBlock
) )
(func $~lib/rt/pure/__visit (; 32 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/rt/pure/__visit (; 33 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
local.get $0 local.get $0
i32.const 292 i32.const 292
i32.lt_u i32.lt_u
@ -1637,7 +1640,7 @@
if if
i32.const 0 i32.const 0
i32.const 128 i32.const 128
i32.const 74 i32.const 75
i32.const 17 i32.const 17
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1670,7 +1673,7 @@
if if
i32.const 0 i32.const 0
i32.const 128 i32.const 128
i32.const 85 i32.const 86
i32.const 6 i32.const 6
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1695,13 +1698,13 @@
end end
i32.const 0 i32.const 0
i32.const 128 i32.const 128
i32.const 96 i32.const 97
i32.const 24 i32.const 24
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
end end
) )
(func $~lib/rt/__visit_members (; 33 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/rt/__visit_members (; 34 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
block $switch$1$default block $switch$1$default
block $switch$1$case$4 block $switch$1$case$4
block $switch$1$case$2 block $switch$1$case$2
@ -1725,7 +1728,7 @@
end end
unreachable unreachable
) )
(func $null (; 34 ;) (type $FUNCSIG$v) (func $null (; 35 ;) (type $FUNCSIG$v)
nop nop
) )
) )

View File

@ -9,9 +9,10 @@
(type $FUNCSIG$vi (func (param i32))) (type $FUNCSIG$vi (func (param i32)))
(type $FUNCSIG$i (func (result i32))) (type $FUNCSIG$i (func (result i32)))
(import "env" "abort" (func $~lib/builtins/abort (param i32 i32 i32 i32))) (import "env" "abort" (func $~lib/builtins/abort (param i32 i32 i32 i32)))
(import "rtrace" "retain" (func $~lib/rt/pure/onIncrement (param i32))) (import "rtrace" "onalloc" (func $~lib/rt/rtrace/onalloc (param i32)))
(import "rtrace" "release" (func $~lib/rt/pure/onDecrement (param i32))) (import "rtrace" "onincrement" (func $~lib/rt/rtrace/onincrement (param i32)))
(import "rtrace" "free" (func $~lib/rt/tlsf/onFree (param i32))) (import "rtrace" "ondecrement" (func $~lib/rt/rtrace/ondecrement (param i32)))
(import "rtrace" "onfree" (func $~lib/rt/rtrace/onfree (param i32)))
(memory $0 1) (memory $0 1)
(data (i32.const 8) "\1e\00\00\00\01\00\00\00\01\00\00\00\1e\00\00\00~\00l\00i\00b\00/\00r\00t\00/\00t\00l\00s\00f\00.\00t\00s\00") (data (i32.const 8) "\1e\00\00\00\01\00\00\00\01\00\00\00\1e\00\00\00~\00l\00i\00b\00/\00r\00t\00/\00t\00l\00s\00f\00.\00t\00s\00")
(data (i32.const 56) "(\00\00\00\01\00\00\00\01\00\00\00(\00\00\00a\00l\00l\00o\00c\00a\00t\00i\00o\00n\00 \00t\00o\00o\00 \00l\00a\00r\00g\00e\00") (data (i32.const 56) "(\00\00\00\01\00\00\00\01\00\00\00(\00\00\00a\00l\00l\00o\00c\00a\00t\00i\00o\00n\00 \00t\00o\00o\00 \00l\00a\00r\00g\00e\00")
@ -32,7 +33,7 @@
(export "test1" (func $rc/ternary-mismatch/test1)) (export "test1" (func $rc/ternary-mismatch/test1))
(export "test2" (func $rc/ternary-mismatch/test2)) (export "test2" (func $rc/ternary-mismatch/test2))
(start $start) (start $start)
(func $~lib/rt/tlsf/removeBlock (; 4 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/rt/tlsf/removeBlock (; 5 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
@ -53,7 +54,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 275 i32.const 276
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -78,7 +79,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 277 i32.const 278
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -130,7 +131,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 290 i32.const 291
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -250,7 +251,7 @@
end end
end end
) )
(func $~lib/rt/tlsf/insertBlock (; 5 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/rt/tlsf/insertBlock (; 6 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
@ -268,7 +269,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 203 i32.const 204
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -283,7 +284,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 205 i32.const 206
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -382,7 +383,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 226 i32.const 227
i32.const 15 i32.const 15
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -445,7 +446,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 241 i32.const 242
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -461,7 +462,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 242 i32.const 243
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -518,7 +519,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 258 i32.const 259
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -614,7 +615,7 @@
i32.store offset=4 i32.store offset=4
end end
) )
(func $~lib/rt/tlsf/addMemory (; 6 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (func $~lib/rt/tlsf/addMemory (; 7 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
(local $5 i32) (local $5 i32)
@ -645,7 +646,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 384 i32.const 385
i32.const 4 i32.const 4
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -670,7 +671,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 394 i32.const 395
i32.const 15 i32.const 15
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -701,7 +702,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 406 i32.const 407
i32.const 4 i32.const 4
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -766,7 +767,7 @@
call $~lib/rt/tlsf/insertBlock call $~lib/rt/tlsf/insertBlock
i32.const 1 i32.const 1
) )
(func $~lib/rt/tlsf/initializeRoot (; 7 ;) (type $FUNCSIG$v) (func $~lib/rt/tlsf/initializeRoot (; 8 ;) (type $FUNCSIG$v)
(local $0 i32) (local $0 i32)
(local $1 i32) (local $1 i32)
(local $2 i32) (local $2 i32)
@ -919,7 +920,7 @@
local.get $3 local.get $3
global.set $~lib/rt/tlsf/ROOT global.set $~lib/rt/tlsf/ROOT
) )
(func $~lib/rt/tlsf/prepareSize (; 8 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (func $~lib/rt/tlsf/prepareSize (; 9 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
(local $1 i32) (local $1 i32)
(local $2 i32) (local $2 i32)
local.get $0 local.get $0
@ -928,7 +929,7 @@
if if
i32.const 72 i32.const 72
i32.const 24 i32.const 24
i32.const 446 i32.const 447
i32.const 29 i32.const 29
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -948,7 +949,7 @@
i32.gt_u i32.gt_u
select select
) )
(func $~lib/rt/tlsf/searchBlock (; 9 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (func $~lib/rt/tlsf/searchBlock (; 10 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
@ -1022,7 +1023,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 336 i32.const 337
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1089,7 +1090,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 349 i32.const 350
i32.const 17 i32.const 17
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1139,7 +1140,7 @@
end end
local.get $7 local.get $7
) )
(func $~lib/rt/tlsf/growMemory (; 10 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/rt/tlsf/growMemory (; 11 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
@ -1192,7 +1193,7 @@
call $~lib/rt/tlsf/addMemory call $~lib/rt/tlsf/addMemory
drop drop
) )
(func $~lib/rt/tlsf/prepareBlock (; 11 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) (func $~lib/rt/tlsf/prepareBlock (; 12 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
(local $5 i32) (local $5 i32)
@ -1207,7 +1208,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 363 i32.const 364
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1291,7 +1292,7 @@
i32.store i32.store
end end
) )
(func $~lib/rt/tlsf/allocateBlock (; 12 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (func $~lib/rt/tlsf/allocateBlock (; 13 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
local.get $1 local.get $1
@ -1316,7 +1317,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 476 i32.const 477
i32.const 15 i32.const 15
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1334,7 +1335,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 478 i32.const 479
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1353,8 +1354,10 @@
local.get $2 local.get $2
call $~lib/rt/tlsf/prepareBlock call $~lib/rt/tlsf/prepareBlock
local.get $3 local.get $3
call $~lib/rt/rtrace/onalloc
local.get $3
) )
(func $~lib/rt/tlsf/__alloc (; 13 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (func $~lib/rt/tlsf/__alloc (; 14 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
global.get $~lib/rt/tlsf/ROOT global.get $~lib/rt/tlsf/ROOT
@ -1377,7 +1380,7 @@
i32.const 16 i32.const 16
i32.add i32.add
) )
(func $~lib/rt/pure/increment (; 14 ;) (type $FUNCSIG$vi) (param $0 i32) (func $~lib/rt/pure/increment (; 15 ;) (type $FUNCSIG$vi) (param $0 i32)
(local $1 i32) (local $1 i32)
local.get $0 local.get $0
i32.load offset=4 i32.load offset=4
@ -1399,7 +1402,7 @@
if if
i32.const 0 i32.const 0
i32.const 128 i32.const 128
i32.const 103 i32.const 104
i32.const 2 i32.const 2
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1410,7 +1413,7 @@
i32.add i32.add
i32.store offset=4 i32.store offset=4
local.get $0 local.get $0
call $~lib/rt/pure/onIncrement call $~lib/rt/rtrace/onincrement
local.get $0 local.get $0
i32.load i32.load
i32.const 1 i32.const 1
@ -1420,13 +1423,13 @@
if if
i32.const 0 i32.const 0
i32.const 128 i32.const 128
i32.const 106 i32.const 107
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
end end
) )
(func $~lib/rt/pure/__retain (; 15 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (func $~lib/rt/pure/__retain (; 16 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
local.get $0 local.get $0
global.get $~lib/heap/HEAP_BASE global.get $~lib/heap/HEAP_BASE
i32.gt_u i32.gt_u
@ -1438,7 +1441,7 @@
end end
local.get $0 local.get $0
) )
(func $rc/ternary-mismatch/Ref#constructor (; 16 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (func $rc/ternary-mismatch/Ref#constructor (; 17 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
local.get $0 local.get $0
i32.eqz i32.eqz
if if
@ -1450,11 +1453,11 @@
end end
local.get $0 local.get $0
) )
(func $rc/ternary-mismatch/getRef (; 17 ;) (type $FUNCSIG$i) (result i32) (func $rc/ternary-mismatch/getRef (; 18 ;) (type $FUNCSIG$i) (result i32)
i32.const 0 i32.const 0
call $rc/ternary-mismatch/Ref#constructor call $rc/ternary-mismatch/Ref#constructor
) )
(func $rc/ternary-mismatch/test1 (; 18 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (func $rc/ternary-mismatch/test1 (; 19 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
local.get $0 local.get $0
if (result i32) if (result i32)
call $rc/ternary-mismatch/getRef call $rc/ternary-mismatch/getRef
@ -1463,7 +1466,7 @@
call $~lib/rt/pure/__retain call $~lib/rt/pure/__retain
end end
) )
(func $~lib/rt/tlsf/freeBlock (; 19 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/rt/tlsf/freeBlock (; 20 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
(local $2 i32) (local $2 i32)
local.get $1 local.get $1
i32.load i32.load
@ -1476,7 +1479,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 530 i32.const 531
i32.const 2 i32.const 2
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1490,9 +1493,9 @@
local.get $1 local.get $1
call $~lib/rt/tlsf/insertBlock call $~lib/rt/tlsf/insertBlock
local.get $1 local.get $1
call $~lib/rt/tlsf/onFree call $~lib/rt/rtrace/onfree
) )
(func $~lib/rt/__typeinfo (; 20 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (func $~lib/rt/__typeinfo (; 21 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
(local $1 i32) (local $1 i32)
global.get $~lib/rt/RTTI_BASE global.get $~lib/rt/RTTI_BASE
local.set $1 local.set $1
@ -1517,7 +1520,7 @@
i32.add i32.add
i32.load i32.load
) )
(func $~lib/memory/memory.copy (; 21 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) (func $~lib/memory/memory.copy (; 22 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
(local $5 i32) (local $5 i32)
@ -1723,7 +1726,7 @@
end end
end end
) )
(func $~lib/rt/pure/growRoots (; 22 ;) (type $FUNCSIG$v) (func $~lib/rt/pure/growRoots (; 23 ;) (type $FUNCSIG$v)
(local $0 i32) (local $0 i32)
(local $1 i32) (local $1 i32)
(local $2 i32) (local $2 i32)
@ -1768,7 +1771,7 @@
i32.add i32.add
global.set $~lib/rt/pure/END global.set $~lib/rt/pure/END
) )
(func $~lib/rt/pure/appendRoot (; 23 ;) (type $FUNCSIG$vi) (param $0 i32) (func $~lib/rt/pure/appendRoot (; 24 ;) (type $FUNCSIG$vi) (param $0 i32)
(local $1 i32) (local $1 i32)
global.get $~lib/rt/pure/CUR global.get $~lib/rt/pure/CUR
local.set $1 local.set $1
@ -1788,7 +1791,7 @@
i32.add i32.add
global.set $~lib/rt/pure/CUR global.set $~lib/rt/pure/CUR
) )
(func $~lib/rt/pure/decrement (; 24 ;) (type $FUNCSIG$vi) (param $0 i32) (func $~lib/rt/pure/decrement (; 25 ;) (type $FUNCSIG$vi) (param $0 i32)
(local $1 i32) (local $1 i32)
(local $2 i32) (local $2 i32)
local.get $0 local.get $0
@ -1799,7 +1802,7 @@
i32.and i32.and
local.set $2 local.set $2
local.get $0 local.get $0
call $~lib/rt/pure/onDecrement call $~lib/rt/rtrace/ondecrement
local.get $0 local.get $0
i32.load i32.load
i32.const 1 i32.const 1
@ -1809,7 +1812,7 @@
if if
i32.const 0 i32.const 0
i32.const 128 i32.const 128
i32.const 114 i32.const 115
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1848,7 +1851,7 @@
if if
i32.const 0 i32.const 0
i32.const 128 i32.const 128
i32.const 123 i32.const 124
i32.const 15 i32.const 15
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1892,7 +1895,7 @@
end end
end end
) )
(func $~lib/rt/pure/__release (; 25 ;) (type $FUNCSIG$vi) (param $0 i32) (func $~lib/rt/pure/__release (; 26 ;) (type $FUNCSIG$vi) (param $0 i32)
local.get $0 local.get $0
global.get $~lib/heap/HEAP_BASE global.get $~lib/heap/HEAP_BASE
i32.gt_u i32.gt_u
@ -1903,7 +1906,7 @@
call $~lib/rt/pure/decrement call $~lib/rt/pure/decrement
end end
) )
(func $rc/ternary-mismatch/test2 (; 26 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (func $rc/ternary-mismatch/test2 (; 27 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
local.get $0 local.get $0
if (result i32) if (result i32)
global.get $rc/ternary-mismatch/gloRef global.get $rc/ternary-mismatch/gloRef
@ -1912,7 +1915,7 @@
call $rc/ternary-mismatch/getRef call $rc/ternary-mismatch/getRef
end end
) )
(func $start:rc/ternary-mismatch (; 27 ;) (type $FUNCSIG$v) (func $start:rc/ternary-mismatch (; 28 ;) (type $FUNCSIG$v)
i32.const 0 i32.const 0
call $rc/ternary-mismatch/Ref#constructor call $rc/ternary-mismatch/Ref#constructor
global.set $rc/ternary-mismatch/gloRef global.set $rc/ternary-mismatch/gloRef
@ -1931,10 +1934,10 @@
global.get $rc/ternary-mismatch/gloRef global.get $rc/ternary-mismatch/gloRef
call $~lib/rt/pure/__release call $~lib/rt/pure/__release
) )
(func $start (; 28 ;) (type $FUNCSIG$v) (func $start (; 29 ;) (type $FUNCSIG$v)
call $start:rc/ternary-mismatch call $start:rc/ternary-mismatch
) )
(func $~lib/rt/pure/markGray (; 29 ;) (type $FUNCSIG$vi) (param $0 i32) (func $~lib/rt/pure/markGray (; 30 ;) (type $FUNCSIG$vi) (param $0 i32)
(local $1 i32) (local $1 i32)
local.get $0 local.get $0
i32.load offset=4 i32.load offset=4
@ -1961,7 +1964,7 @@
call $~lib/rt/__visit_members call $~lib/rt/__visit_members
end end
) )
(func $~lib/rt/pure/scanBlack (; 30 ;) (type $FUNCSIG$vi) (param $0 i32) (func $~lib/rt/pure/scanBlack (; 31 ;) (type $FUNCSIG$vi) (param $0 i32)
local.get $0 local.get $0
local.get $0 local.get $0
i32.load offset=4 i32.load offset=4
@ -1978,7 +1981,7 @@
i32.const 4 i32.const 4
call $~lib/rt/__visit_members call $~lib/rt/__visit_members
) )
(func $~lib/rt/pure/scan (; 31 ;) (type $FUNCSIG$vi) (param $0 i32) (func $~lib/rt/pure/scan (; 32 ;) (type $FUNCSIG$vi) (param $0 i32)
(local $1 i32) (local $1 i32)
local.get $0 local.get $0
i32.load offset=4 i32.load offset=4
@ -2015,7 +2018,7 @@
end end
end end
) )
(func $~lib/rt/pure/collectWhite (; 32 ;) (type $FUNCSIG$vi) (param $0 i32) (func $~lib/rt/pure/collectWhite (; 33 ;) (type $FUNCSIG$vi) (param $0 i32)
(local $1 i32) (local $1 i32)
local.get $0 local.get $0
i32.load offset=4 i32.load offset=4
@ -2044,7 +2047,7 @@
local.get $0 local.get $0
call $~lib/rt/tlsf/freeBlock call $~lib/rt/tlsf/freeBlock
) )
(func $~lib/rt/pure/__visit (; 33 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/rt/pure/__visit (; 34 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
local.get $0 local.get $0
@ -2107,7 +2110,7 @@
if if
i32.const 0 i32.const 0
i32.const 128 i32.const 128
i32.const 74 i32.const 75
i32.const 17 i32.const 17
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -2154,7 +2157,7 @@
if if
i32.const 0 i32.const 0
i32.const 128 i32.const 128
i32.const 85 i32.const 86
i32.const 6 i32.const 6
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -2191,14 +2194,14 @@
if if
i32.const 0 i32.const 0
i32.const 128 i32.const 128
i32.const 96 i32.const 97
i32.const 24 i32.const 24
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
end end
end end
) )
(func $~lib/rt/__visit_members (; 34 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/rt/__visit_members (; 35 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
(local $2 i32) (local $2 i32)
block block
end end
@ -2255,6 +2258,6 @@
unreachable unreachable
end end
) )
(func $null (; 35 ;) (type $FUNCSIG$v) (func $null (; 36 ;) (type $FUNCSIG$v)
) )
) )

View File

@ -8,9 +8,10 @@
(type $FUNCSIG$viii (func (param i32 i32 i32))) (type $FUNCSIG$viii (func (param i32 i32 i32)))
(type $FUNCSIG$vi (func (param i32))) (type $FUNCSIG$vi (func (param i32)))
(import "env" "abort" (func $~lib/builtins/abort (param i32 i32 i32 i32))) (import "env" "abort" (func $~lib/builtins/abort (param i32 i32 i32 i32)))
(import "rtrace" "retain" (func $~lib/rt/pure/onIncrement (param i32))) (import "rtrace" "onalloc" (func $~lib/rt/rtrace/onalloc (param i32)))
(import "rtrace" "release" (func $~lib/rt/pure/onDecrement (param i32))) (import "rtrace" "onincrement" (func $~lib/rt/rtrace/onincrement (param i32)))
(import "rtrace" "free" (func $~lib/rt/tlsf/onFree (param i32))) (import "rtrace" "ondecrement" (func $~lib/rt/rtrace/ondecrement (param i32)))
(import "rtrace" "onfree" (func $~lib/rt/rtrace/onfree (param i32)))
(memory $0 1) (memory $0 1)
(data (i32.const 8) "\1c\00\00\00\01\00\00\00\01\00\00\00\1c\00\00\00I\00n\00v\00a\00l\00i\00d\00 \00l\00e\00n\00g\00t\00h") (data (i32.const 8) "\1c\00\00\00\01\00\00\00\01\00\00\00\1c\00\00\00I\00n\00v\00a\00l\00i\00d\00 \00l\00e\00n\00g\00t\00h")
(data (i32.const 56) "&\00\00\00\01\00\00\00\01\00\00\00&\00\00\00~\00l\00i\00b\00/\00a\00r\00r\00a\00y\00b\00u\00f\00f\00e\00r\00.\00t\00s") (data (i32.const 56) "&\00\00\00\01\00\00\00\01\00\00\00&\00\00\00~\00l\00i\00b\00/\00a\00r\00r\00a\00y\00b\00u\00f\00f\00e\00r\00.\00t\00s")
@ -35,7 +36,7 @@
(global $~lib/started (mut i32) (i32.const 0)) (global $~lib/started (mut i32) (i32.const 0))
(export "memory" (memory $0)) (export "memory" (memory $0))
(export "main" (func $retain-release-sanity/main)) (export "main" (func $retain-release-sanity/main))
(func $~lib/rt/tlsf/removeBlock (; 4 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/rt/tlsf/removeBlock (; 5 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
@ -49,7 +50,7 @@
if if
i32.const 0 i32.const 0
i32.const 128 i32.const 128
i32.const 275 i32.const 276
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -71,7 +72,7 @@
if if
i32.const 0 i32.const 0
i32.const 128 i32.const 128
i32.const 277 i32.const 278
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -116,7 +117,7 @@
if if
i32.const 0 i32.const 0
i32.const 128 i32.const 128
i32.const 290 i32.const 291
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -201,7 +202,7 @@
end end
end end
) )
(func $~lib/rt/tlsf/insertBlock (; 5 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/rt/tlsf/insertBlock (; 6 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
@ -213,7 +214,7 @@
if if
i32.const 0 i32.const 0
i32.const 128 i32.const 128
i32.const 203 i32.const 204
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -227,7 +228,7 @@
if if
i32.const 0 i32.const 0
i32.const 128 i32.const 128
i32.const 205 i32.const 206
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -300,7 +301,7 @@
if if
i32.const 0 i32.const 0
i32.const 128 i32.const 128
i32.const 226 i32.const 227
i32.const 15 i32.const 15
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -357,7 +358,7 @@
if if
i32.const 0 i32.const 0
i32.const 128 i32.const 128
i32.const 241 i32.const 242
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -372,7 +373,7 @@
if if
i32.const 0 i32.const 0
i32.const 128 i32.const 128
i32.const 242 i32.const 243
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -422,7 +423,7 @@
if if
i32.const 0 i32.const 0
i32.const 128 i32.const 128
i32.const 258 i32.const 259
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -486,7 +487,7 @@
i32.or i32.or
i32.store offset=4 i32.store offset=4
) )
(func $~lib/rt/tlsf/addMemory (; 6 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) (func $~lib/rt/tlsf/addMemory (; 7 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
local.get $2 local.get $2
@ -508,7 +509,7 @@
if if
i32.const 0 i32.const 0
i32.const 128 i32.const 128
i32.const 384 i32.const 385
i32.const 4 i32.const 4
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -525,7 +526,7 @@
if if
i32.const 0 i32.const 0
i32.const 128 i32.const 128
i32.const 394 i32.const 395
i32.const 15 i32.const 15
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -553,7 +554,7 @@
if if
i32.const 0 i32.const 0
i32.const 128 i32.const 128
i32.const 406 i32.const 407
i32.const 4 i32.const 4
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -600,7 +601,7 @@
local.get $1 local.get $1
call $~lib/rt/tlsf/insertBlock call $~lib/rt/tlsf/insertBlock
) )
(func $~lib/rt/tlsf/initializeRoot (; 7 ;) (type $FUNCSIG$v) (func $~lib/rt/tlsf/initializeRoot (; 8 ;) (type $FUNCSIG$v)
(local $0 i32) (local $0 i32)
(local $1 i32) (local $1 i32)
i32.const 1 i32.const 1
@ -683,14 +684,14 @@
i32.const 736 i32.const 736
global.set $~lib/rt/tlsf/ROOT global.set $~lib/rt/tlsf/ROOT
) )
(func $~lib/rt/tlsf/prepareSize (; 8 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (func $~lib/rt/tlsf/prepareSize (; 9 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
local.get $0 local.get $0
i32.const 1073741808 i32.const 1073741808
i32.ge_u i32.ge_u
if if
i32.const 176 i32.const 176
i32.const 128 i32.const 128
i32.const 446 i32.const 447
i32.const 29 i32.const 29
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -707,7 +708,7 @@
i32.gt_u i32.gt_u
select select
) )
(func $~lib/rt/tlsf/searchBlock (; 9 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (func $~lib/rt/tlsf/searchBlock (; 10 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
(local $2 i32) (local $2 i32)
local.get $1 local.get $1
i32.const 256 i32.const 256
@ -765,7 +766,7 @@
if if
i32.const 0 i32.const 0
i32.const 128 i32.const 128
i32.const 336 i32.const 337
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -817,7 +818,7 @@
if if
i32.const 0 i32.const 0
i32.const 128 i32.const 128
i32.const 349 i32.const 350
i32.const 17 i32.const 17
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -838,7 +839,7 @@
end end
end end
) )
(func $~lib/rt/tlsf/growMemory (; 10 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/rt/tlsf/growMemory (; 11 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
(local $2 i32) (local $2 i32)
memory.size memory.size
local.tee $2 local.tee $2
@ -875,7 +876,7 @@
i32.shl i32.shl
call $~lib/rt/tlsf/addMemory call $~lib/rt/tlsf/addMemory
) )
(func $~lib/rt/tlsf/prepareBlock (; 11 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) (func $~lib/rt/tlsf/prepareBlock (; 12 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
local.get $1 local.get $1
@ -887,7 +888,7 @@
if if
i32.const 0 i32.const 0
i32.const 128 i32.const 128
i32.const 363 i32.const 364
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -951,7 +952,7 @@
i32.store i32.store
end end
) )
(func $~lib/rt/tlsf/allocateBlock (; 12 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (func $~lib/rt/tlsf/allocateBlock (; 13 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
local.get $0 local.get $0
@ -973,7 +974,7 @@
if if
i32.const 0 i32.const 0
i32.const 128 i32.const 128
i32.const 476 i32.const 477
i32.const 15 i32.const 15
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -988,7 +989,7 @@
if if
i32.const 0 i32.const 0
i32.const 128 i32.const 128
i32.const 478 i32.const 479
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1007,8 +1008,10 @@
local.get $3 local.get $3
call $~lib/rt/tlsf/prepareBlock call $~lib/rt/tlsf/prepareBlock
local.get $2 local.get $2
call $~lib/rt/rtrace/onalloc
local.get $2
) )
(func $~lib/rt/tlsf/__alloc (; 13 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (func $~lib/rt/tlsf/__alloc (; 14 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
(local $2 i32) (local $2 i32)
global.get $~lib/rt/tlsf/ROOT global.get $~lib/rt/tlsf/ROOT
local.tee $2 local.tee $2
@ -1027,7 +1030,7 @@
i32.const 16 i32.const 16
i32.add i32.add
) )
(func $~lib/rt/pure/increment (; 14 ;) (type $FUNCSIG$vi) (param $0 i32) (func $~lib/rt/pure/increment (; 15 ;) (type $FUNCSIG$vi) (param $0 i32)
(local $1 i32) (local $1 i32)
local.get $0 local.get $0
i32.load offset=4 i32.load offset=4
@ -1043,7 +1046,7 @@
if if
i32.const 0 i32.const 0
i32.const 232 i32.const 232
i32.const 103 i32.const 104
i32.const 2 i32.const 2
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1054,7 +1057,7 @@
i32.add i32.add
i32.store offset=4 i32.store offset=4
local.get $0 local.get $0
call $~lib/rt/pure/onIncrement call $~lib/rt/rtrace/onincrement
local.get $0 local.get $0
i32.load i32.load
i32.const 1 i32.const 1
@ -1062,13 +1065,13 @@
if if
i32.const 0 i32.const 0
i32.const 232 i32.const 232
i32.const 106 i32.const 107
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
end end
) )
(func $~lib/rt/pure/__retain (; 15 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (func $~lib/rt/pure/__retain (; 16 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
local.get $0 local.get $0
i32.const 724 i32.const 724
i32.gt_u i32.gt_u
@ -1080,7 +1083,7 @@
end end
local.get $0 local.get $0
) )
(func $~lib/rt/tlsf/freeBlock (; 16 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/rt/tlsf/freeBlock (; 17 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
(local $2 i32) (local $2 i32)
local.get $1 local.get $1
i32.load i32.load
@ -1090,7 +1093,7 @@
if if
i32.const 0 i32.const 0
i32.const 128 i32.const 128
i32.const 530 i32.const 531
i32.const 2 i32.const 2
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1104,9 +1107,9 @@
local.get $1 local.get $1
call $~lib/rt/tlsf/insertBlock call $~lib/rt/tlsf/insertBlock
local.get $1 local.get $1
call $~lib/rt/tlsf/onFree call $~lib/rt/rtrace/onfree
) )
(func $~lib/rt/__typeinfo (; 17 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (func $~lib/rt/__typeinfo (; 18 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
local.get $0 local.get $0
i32.const 680 i32.const 680
i32.load i32.load
@ -1126,7 +1129,7 @@
i32.add i32.add
i32.load i32.load
) )
(func $~lib/memory/memory.copy (; 18 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) (func $~lib/memory/memory.copy (; 19 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
block $~lib/util/memory/memmove|inlined.0 block $~lib/util/memory/memmove|inlined.0
@ -1299,7 +1302,7 @@
end end
end end
) )
(func $~lib/rt/pure/growRoots (; 19 ;) (type $FUNCSIG$v) (func $~lib/rt/pure/growRoots (; 20 ;) (type $FUNCSIG$v)
(local $0 i32) (local $0 i32)
(local $1 i32) (local $1 i32)
(local $2 i32) (local $2 i32)
@ -1335,7 +1338,7 @@
i32.add i32.add
global.set $~lib/rt/pure/END global.set $~lib/rt/pure/END
) )
(func $~lib/rt/pure/appendRoot (; 20 ;) (type $FUNCSIG$vi) (param $0 i32) (func $~lib/rt/pure/appendRoot (; 21 ;) (type $FUNCSIG$vi) (param $0 i32)
(local $1 i32) (local $1 i32)
global.get $~lib/rt/pure/CUR global.get $~lib/rt/pure/CUR
local.tee $1 local.tee $1
@ -1354,7 +1357,7 @@
i32.add i32.add
global.set $~lib/rt/pure/CUR global.set $~lib/rt/pure/CUR
) )
(func $~lib/rt/pure/decrement (; 21 ;) (type $FUNCSIG$vi) (param $0 i32) (func $~lib/rt/pure/decrement (; 22 ;) (type $FUNCSIG$vi) (param $0 i32)
(local $1 i32) (local $1 i32)
(local $2 i32) (local $2 i32)
local.get $0 local.get $0
@ -1364,7 +1367,7 @@
i32.and i32.and
local.set $1 local.set $1
local.get $0 local.get $0
call $~lib/rt/pure/onDecrement call $~lib/rt/rtrace/ondecrement
local.get $0 local.get $0
i32.load i32.load
i32.const 1 i32.const 1
@ -1372,7 +1375,7 @@
if if
i32.const 0 i32.const 0
i32.const 232 i32.const 232
i32.const 114 i32.const 115
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1405,7 +1408,7 @@
if if
i32.const 0 i32.const 0
i32.const 232 i32.const 232
i32.const 123 i32.const 124
i32.const 15 i32.const 15
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1444,7 +1447,7 @@
end end
end end
) )
(func $~lib/rt/pure/__retainRelease (; 22 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (func $~lib/rt/pure/__retainRelease (; 23 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
local.get $0 local.get $0
local.get $1 local.get $1
i32.ne i32.ne
@ -1470,7 +1473,7 @@
end end
local.get $1 local.get $1
) )
(func $~lib/arraybuffer/ArrayBufferView#constructor (; 23 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (func $~lib/arraybuffer/ArrayBufferView#constructor (; 24 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
(local $2 i32) (local $2 i32)
local.get $1 local.get $1
i32.const 268435452 i32.const 268435452
@ -1522,7 +1525,7 @@
i32.store offset=8 i32.store offset=8
local.get $0 local.get $0
) )
(func $~lib/rt/tlsf/reallocateBlock (; 24 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (func $~lib/rt/tlsf/reallocateBlock (; 25 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
(local $5 i32) (local $5 i32)
@ -1538,7 +1541,7 @@
if if
i32.const 0 i32.const 0
i32.const 128 i32.const 128
i32.const 491 i32.const 493
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1634,17 +1637,15 @@
local.get $0 local.get $0
local.get $1 local.get $1
call $~lib/rt/tlsf/insertBlock call $~lib/rt/tlsf/insertBlock
local.get $1
call $~lib/rt/tlsf/onFree
local.get $3 local.get $3
) )
(func $~lib/rt/tlsf/__realloc (; 25 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (func $~lib/rt/tlsf/__realloc (; 26 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
global.get $~lib/rt/tlsf/ROOT global.get $~lib/rt/tlsf/ROOT
i32.eqz i32.eqz
if if
i32.const 0 i32.const 0
i32.const 128 i32.const 128
i32.const 552 i32.const 553
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1660,7 +1661,7 @@
if if
i32.const 0 i32.const 0
i32.const 128 i32.const 128
i32.const 553 i32.const 554
i32.const 2 i32.const 2
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1674,7 +1675,7 @@
i32.const 16 i32.const 16
i32.add i32.add
) )
(func $~lib/memory/memory.fill (; 26 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/memory/memory.fill (; 27 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
(local $2 i32) (local $2 i32)
block $~lib/util/memory/memset|inlined.0 block $~lib/util/memory/memset|inlined.0
local.get $1 local.get $1
@ -1885,7 +1886,7 @@
end end
end end
) )
(func $~lib/array/ensureSize (; 27 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/array/ensureSize (; 28 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
@ -1940,7 +1941,7 @@
i32.store offset=8 i32.store offset=8
end end
) )
(func $~lib/array/Array<i32>#push (; 28 ;) (type $FUNCSIG$vi) (param $0 i32) (func $~lib/array/Array<i32>#push (; 29 ;) (type $FUNCSIG$vi) (param $0 i32)
(local $1 i32) (local $1 i32)
(local $2 i32) (local $2 i32)
local.get $0 local.get $0
@ -1963,7 +1964,7 @@
local.get $2 local.get $2
i32.store offset=12 i32.store offset=12
) )
(func $~lib/array/Array<i32>#pop (; 29 ;) (type $FUNCSIG$vi) (param $0 i32) (func $~lib/array/Array<i32>#pop (; 30 ;) (type $FUNCSIG$vi) (param $0 i32)
(local $1 i32) (local $1 i32)
local.get $0 local.get $0
i32.load offset=12 i32.load offset=12
@ -1993,7 +1994,7 @@
local.get $1 local.get $1
i32.store offset=12 i32.store offset=12
) )
(func $~lib/rt/pure/__release (; 30 ;) (type $FUNCSIG$vi) (param $0 i32) (func $~lib/rt/pure/__release (; 31 ;) (type $FUNCSIG$vi) (param $0 i32)
local.get $0 local.get $0
i32.const 724 i32.const 724
i32.gt_u i32.gt_u
@ -2004,7 +2005,7 @@
call $~lib/rt/pure/decrement call $~lib/rt/pure/decrement
end end
) )
(func $~lib/array/Array<~lib/string/String>#push (; 31 ;) (type $FUNCSIG$vi) (param $0 i32) (func $~lib/array/Array<~lib/string/String>#push (; 32 ;) (type $FUNCSIG$vi) (param $0 i32)
(local $1 i32) (local $1 i32)
(local $2 i32) (local $2 i32)
i32.const 584 i32.const 584
@ -2036,7 +2037,7 @@
i32.const 584 i32.const 584
call $~lib/rt/pure/__release call $~lib/rt/pure/__release
) )
(func $~lib/string/String#concat (; 32 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (func $~lib/string/String#concat (; 33 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
@ -2101,7 +2102,7 @@
call $~lib/rt/pure/__release call $~lib/rt/pure/__release
local.get $2 local.get $2
) )
(func $~lib/string/String.__concat (; 33 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (func $~lib/string/String.__concat (; 34 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
(local $2 i32) (local $2 i32)
local.get $0 local.get $0
call $~lib/rt/pure/__retain call $~lib/rt/pure/__retain
@ -2122,7 +2123,7 @@
call $~lib/rt/pure/__release call $~lib/rt/pure/__release
local.get $2 local.get $2
) )
(func $~lib/rt/pure/markGray (; 34 ;) (type $FUNCSIG$vi) (param $0 i32) (func $~lib/rt/pure/markGray (; 35 ;) (type $FUNCSIG$vi) (param $0 i32)
(local $1 i32) (local $1 i32)
local.get $0 local.get $0
i32.load offset=4 i32.load offset=4
@ -2146,7 +2147,7 @@
call $~lib/rt/__visit_members call $~lib/rt/__visit_members
end end
) )
(func $~lib/rt/pure/scanBlack (; 35 ;) (type $FUNCSIG$vi) (param $0 i32) (func $~lib/rt/pure/scanBlack (; 36 ;) (type $FUNCSIG$vi) (param $0 i32)
local.get $0 local.get $0
local.get $0 local.get $0
i32.load offset=4 i32.load offset=4
@ -2159,7 +2160,7 @@
i32.const 4 i32.const 4
call $~lib/rt/__visit_members call $~lib/rt/__visit_members
) )
(func $~lib/rt/pure/scan (; 36 ;) (type $FUNCSIG$vi) (param $0 i32) (func $~lib/rt/pure/scan (; 37 ;) (type $FUNCSIG$vi) (param $0 i32)
(local $1 i32) (local $1 i32)
local.get $0 local.get $0
i32.load offset=4 i32.load offset=4
@ -2193,7 +2194,7 @@
end end
end end
) )
(func $~lib/rt/pure/collectWhite (; 37 ;) (type $FUNCSIG$vi) (param $0 i32) (func $~lib/rt/pure/collectWhite (; 38 ;) (type $FUNCSIG$vi) (param $0 i32)
(local $1 i32) (local $1 i32)
local.get $0 local.get $0
i32.load offset=4 i32.load offset=4
@ -2221,7 +2222,7 @@
local.get $0 local.get $0
call $~lib/rt/tlsf/freeBlock call $~lib/rt/tlsf/freeBlock
) )
(func $~lib/rt/pure/__collect (; 38 ;) (type $FUNCSIG$v) (func $~lib/rt/pure/__collect (; 39 ;) (type $FUNCSIG$v)
(local $0 i32) (local $0 i32)
(local $1 i32) (local $1 i32)
(local $2 i32) (local $2 i32)
@ -2345,7 +2346,7 @@
local.get $5 local.get $5
global.set $~lib/rt/pure/CUR global.set $~lib/rt/pure/CUR
) )
(func $start:retain-release-sanity (; 39 ;) (type $FUNCSIG$v) (func $start:retain-release-sanity (; 40 ;) (type $FUNCSIG$v)
(local $0 i32) (local $0 i32)
(local $1 i32) (local $1 i32)
(local $2 i32) (local $2 i32)
@ -2433,7 +2434,7 @@
call $~lib/rt/pure/__release call $~lib/rt/pure/__release
call $~lib/rt/pure/__collect call $~lib/rt/pure/__collect
) )
(func $retain-release-sanity/main (; 40 ;) (type $FUNCSIG$v) (func $retain-release-sanity/main (; 41 ;) (type $FUNCSIG$v)
global.get $~lib/started global.get $~lib/started
i32.eqz i32.eqz
if if
@ -2442,7 +2443,7 @@
global.set $~lib/started global.set $~lib/started
end end
) )
(func $~lib/rt/pure/__visit (; 41 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/rt/pure/__visit (; 42 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
local.get $0 local.get $0
i32.const 724 i32.const 724
i32.lt_u i32.lt_u
@ -2488,7 +2489,7 @@
if if
i32.const 0 i32.const 0
i32.const 232 i32.const 232
i32.const 74 i32.const 75
i32.const 17 i32.const 17
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -2521,7 +2522,7 @@
if if
i32.const 0 i32.const 0
i32.const 232 i32.const 232
i32.const 85 i32.const 86
i32.const 6 i32.const 6
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -2546,13 +2547,13 @@
end end
i32.const 0 i32.const 0
i32.const 232 i32.const 232
i32.const 96 i32.const 97
i32.const 24 i32.const 24
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
end end
) )
(func $~lib/array/Array<~lib/string/String>#__visit_impl (; 42 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/array/Array<~lib/string/String>#__visit_impl (; 43 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
local.get $0 local.get $0
@ -2583,7 +2584,7 @@
end end
end end
) )
(func $~lib/rt/__visit_members (; 43 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/rt/__visit_members (; 44 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
block $block$4$break block $block$4$break
block $switch$1$default block $switch$1$default
block $switch$1$case$6 block $switch$1$case$6
@ -2612,7 +2613,7 @@
call $~lib/rt/pure/__visit call $~lib/rt/pure/__visit
end end
) )
(func $null (; 44 ;) (type $FUNCSIG$v) (func $null (; 45 ;) (type $FUNCSIG$v)
nop nop
) )
) )

View File

@ -8,9 +8,10 @@
(type $FUNCSIG$viii (func (param i32 i32 i32))) (type $FUNCSIG$viii (func (param i32 i32 i32)))
(type $FUNCSIG$vi (func (param i32))) (type $FUNCSIG$vi (func (param i32)))
(import "env" "abort" (func $~lib/builtins/abort (param i32 i32 i32 i32))) (import "env" "abort" (func $~lib/builtins/abort (param i32 i32 i32 i32)))
(import "rtrace" "retain" (func $~lib/rt/pure/onIncrement (param i32))) (import "rtrace" "onalloc" (func $~lib/rt/rtrace/onalloc (param i32)))
(import "rtrace" "release" (func $~lib/rt/pure/onDecrement (param i32))) (import "rtrace" "onincrement" (func $~lib/rt/rtrace/onincrement (param i32)))
(import "rtrace" "free" (func $~lib/rt/tlsf/onFree (param i32))) (import "rtrace" "ondecrement" (func $~lib/rt/rtrace/ondecrement (param i32)))
(import "rtrace" "onfree" (func $~lib/rt/rtrace/onfree (param i32)))
(memory $0 1) (memory $0 1)
(data (i32.const 8) "\1c\00\00\00\01\00\00\00\01\00\00\00\1c\00\00\00I\00n\00v\00a\00l\00i\00d\00 \00l\00e\00n\00g\00t\00h\00") (data (i32.const 8) "\1c\00\00\00\01\00\00\00\01\00\00\00\1c\00\00\00I\00n\00v\00a\00l\00i\00d\00 \00l\00e\00n\00g\00t\00h\00")
(data (i32.const 56) "&\00\00\00\01\00\00\00\01\00\00\00&\00\00\00~\00l\00i\00b\00/\00a\00r\00r\00a\00y\00b\00u\00f\00f\00e\00r\00.\00t\00s\00") (data (i32.const 56) "&\00\00\00\01\00\00\00\01\00\00\00&\00\00\00~\00l\00i\00b\00/\00a\00r\00r\00a\00y\00b\00u\00f\00f\00e\00r\00.\00t\00s\00")
@ -39,7 +40,7 @@
(global $~lib/heap/HEAP_BASE i32 (i32.const 724)) (global $~lib/heap/HEAP_BASE i32 (i32.const 724))
(export "memory" (memory $0)) (export "memory" (memory $0))
(export "main" (func $retain-release-sanity/main)) (export "main" (func $retain-release-sanity/main))
(func $~lib/rt/tlsf/removeBlock (; 4 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/rt/tlsf/removeBlock (; 5 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
@ -60,7 +61,7 @@
if if
i32.const 0 i32.const 0
i32.const 128 i32.const 128
i32.const 275 i32.const 276
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -85,7 +86,7 @@
if if
i32.const 0 i32.const 0
i32.const 128 i32.const 128
i32.const 277 i32.const 278
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -137,7 +138,7 @@
if if
i32.const 0 i32.const 0
i32.const 128 i32.const 128
i32.const 290 i32.const 291
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -257,7 +258,7 @@
end end
end end
) )
(func $~lib/rt/tlsf/insertBlock (; 5 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/rt/tlsf/insertBlock (; 6 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
@ -275,7 +276,7 @@
if if
i32.const 0 i32.const 0
i32.const 128 i32.const 128
i32.const 203 i32.const 204
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -290,7 +291,7 @@
if if
i32.const 0 i32.const 0
i32.const 128 i32.const 128
i32.const 205 i32.const 206
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -389,7 +390,7 @@
if if
i32.const 0 i32.const 0
i32.const 128 i32.const 128
i32.const 226 i32.const 227
i32.const 15 i32.const 15
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -452,7 +453,7 @@
if if
i32.const 0 i32.const 0
i32.const 128 i32.const 128
i32.const 241 i32.const 242
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -468,7 +469,7 @@
if if
i32.const 0 i32.const 0
i32.const 128 i32.const 128
i32.const 242 i32.const 243
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -525,7 +526,7 @@
if if
i32.const 0 i32.const 0
i32.const 128 i32.const 128
i32.const 258 i32.const 259
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -621,7 +622,7 @@
i32.store offset=4 i32.store offset=4
end end
) )
(func $~lib/rt/tlsf/addMemory (; 6 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (func $~lib/rt/tlsf/addMemory (; 7 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
(local $5 i32) (local $5 i32)
@ -652,7 +653,7 @@
if if
i32.const 0 i32.const 0
i32.const 128 i32.const 128
i32.const 384 i32.const 385
i32.const 4 i32.const 4
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -677,7 +678,7 @@
if if
i32.const 0 i32.const 0
i32.const 128 i32.const 128
i32.const 394 i32.const 395
i32.const 15 i32.const 15
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -708,7 +709,7 @@
if if
i32.const 0 i32.const 0
i32.const 128 i32.const 128
i32.const 406 i32.const 407
i32.const 4 i32.const 4
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -773,7 +774,7 @@
call $~lib/rt/tlsf/insertBlock call $~lib/rt/tlsf/insertBlock
i32.const 1 i32.const 1
) )
(func $~lib/rt/tlsf/initializeRoot (; 7 ;) (type $FUNCSIG$v) (func $~lib/rt/tlsf/initializeRoot (; 8 ;) (type $FUNCSIG$v)
(local $0 i32) (local $0 i32)
(local $1 i32) (local $1 i32)
(local $2 i32) (local $2 i32)
@ -926,7 +927,7 @@
local.get $3 local.get $3
global.set $~lib/rt/tlsf/ROOT global.set $~lib/rt/tlsf/ROOT
) )
(func $~lib/rt/tlsf/prepareSize (; 8 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (func $~lib/rt/tlsf/prepareSize (; 9 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
(local $1 i32) (local $1 i32)
(local $2 i32) (local $2 i32)
local.get $0 local.get $0
@ -935,7 +936,7 @@
if if
i32.const 176 i32.const 176
i32.const 128 i32.const 128
i32.const 446 i32.const 447
i32.const 29 i32.const 29
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -955,7 +956,7 @@
i32.gt_u i32.gt_u
select select
) )
(func $~lib/rt/tlsf/searchBlock (; 9 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (func $~lib/rt/tlsf/searchBlock (; 10 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
@ -1029,7 +1030,7 @@
if if
i32.const 0 i32.const 0
i32.const 128 i32.const 128
i32.const 336 i32.const 337
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1096,7 +1097,7 @@
if if
i32.const 0 i32.const 0
i32.const 128 i32.const 128
i32.const 349 i32.const 350
i32.const 17 i32.const 17
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1146,7 +1147,7 @@
end end
local.get $7 local.get $7
) )
(func $~lib/rt/tlsf/growMemory (; 10 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/rt/tlsf/growMemory (; 11 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
@ -1199,7 +1200,7 @@
call $~lib/rt/tlsf/addMemory call $~lib/rt/tlsf/addMemory
drop drop
) )
(func $~lib/rt/tlsf/prepareBlock (; 11 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) (func $~lib/rt/tlsf/prepareBlock (; 12 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
(local $5 i32) (local $5 i32)
@ -1214,7 +1215,7 @@
if if
i32.const 0 i32.const 0
i32.const 128 i32.const 128
i32.const 363 i32.const 364
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1298,7 +1299,7 @@
i32.store i32.store
end end
) )
(func $~lib/rt/tlsf/allocateBlock (; 12 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (func $~lib/rt/tlsf/allocateBlock (; 13 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
local.get $1 local.get $1
@ -1323,7 +1324,7 @@
if if
i32.const 0 i32.const 0
i32.const 128 i32.const 128
i32.const 476 i32.const 477
i32.const 15 i32.const 15
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1341,7 +1342,7 @@
if if
i32.const 0 i32.const 0
i32.const 128 i32.const 128
i32.const 478 i32.const 479
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1360,8 +1361,10 @@
local.get $2 local.get $2
call $~lib/rt/tlsf/prepareBlock call $~lib/rt/tlsf/prepareBlock
local.get $3 local.get $3
call $~lib/rt/rtrace/onalloc
local.get $3
) )
(func $~lib/rt/tlsf/__alloc (; 13 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (func $~lib/rt/tlsf/__alloc (; 14 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
global.get $~lib/rt/tlsf/ROOT global.get $~lib/rt/tlsf/ROOT
@ -1384,7 +1387,7 @@
i32.const 16 i32.const 16
i32.add i32.add
) )
(func $~lib/rt/pure/increment (; 14 ;) (type $FUNCSIG$vi) (param $0 i32) (func $~lib/rt/pure/increment (; 15 ;) (type $FUNCSIG$vi) (param $0 i32)
(local $1 i32) (local $1 i32)
local.get $0 local.get $0
i32.load offset=4 i32.load offset=4
@ -1406,7 +1409,7 @@
if if
i32.const 0 i32.const 0
i32.const 232 i32.const 232
i32.const 103 i32.const 104
i32.const 2 i32.const 2
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1417,7 +1420,7 @@
i32.add i32.add
i32.store offset=4 i32.store offset=4
local.get $0 local.get $0
call $~lib/rt/pure/onIncrement call $~lib/rt/rtrace/onincrement
local.get $0 local.get $0
i32.load i32.load
i32.const 1 i32.const 1
@ -1427,13 +1430,13 @@
if if
i32.const 0 i32.const 0
i32.const 232 i32.const 232
i32.const 106 i32.const 107
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
end end
) )
(func $~lib/rt/pure/__retain (; 15 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (func $~lib/rt/pure/__retain (; 16 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
local.get $0 local.get $0
global.get $~lib/heap/HEAP_BASE global.get $~lib/heap/HEAP_BASE
i32.gt_u i32.gt_u
@ -1445,7 +1448,7 @@
end end
local.get $0 local.get $0
) )
(func $~lib/rt/tlsf/freeBlock (; 16 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/rt/tlsf/freeBlock (; 17 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
(local $2 i32) (local $2 i32)
local.get $1 local.get $1
i32.load i32.load
@ -1458,7 +1461,7 @@
if if
i32.const 0 i32.const 0
i32.const 128 i32.const 128
i32.const 530 i32.const 531
i32.const 2 i32.const 2
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1472,9 +1475,9 @@
local.get $1 local.get $1
call $~lib/rt/tlsf/insertBlock call $~lib/rt/tlsf/insertBlock
local.get $1 local.get $1
call $~lib/rt/tlsf/onFree call $~lib/rt/rtrace/onfree
) )
(func $~lib/rt/__typeinfo (; 17 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (func $~lib/rt/__typeinfo (; 18 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
(local $1 i32) (local $1 i32)
global.get $~lib/rt/RTTI_BASE global.get $~lib/rt/RTTI_BASE
local.set $1 local.set $1
@ -1499,7 +1502,7 @@
i32.add i32.add
i32.load i32.load
) )
(func $~lib/memory/memory.copy (; 18 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) (func $~lib/memory/memory.copy (; 19 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
(local $5 i32) (local $5 i32)
@ -1705,7 +1708,7 @@
end end
end end
) )
(func $~lib/rt/pure/growRoots (; 19 ;) (type $FUNCSIG$v) (func $~lib/rt/pure/growRoots (; 20 ;) (type $FUNCSIG$v)
(local $0 i32) (local $0 i32)
(local $1 i32) (local $1 i32)
(local $2 i32) (local $2 i32)
@ -1750,7 +1753,7 @@
i32.add i32.add
global.set $~lib/rt/pure/END global.set $~lib/rt/pure/END
) )
(func $~lib/rt/pure/appendRoot (; 20 ;) (type $FUNCSIG$vi) (param $0 i32) (func $~lib/rt/pure/appendRoot (; 21 ;) (type $FUNCSIG$vi) (param $0 i32)
(local $1 i32) (local $1 i32)
global.get $~lib/rt/pure/CUR global.get $~lib/rt/pure/CUR
local.set $1 local.set $1
@ -1770,7 +1773,7 @@
i32.add i32.add
global.set $~lib/rt/pure/CUR global.set $~lib/rt/pure/CUR
) )
(func $~lib/rt/pure/decrement (; 21 ;) (type $FUNCSIG$vi) (param $0 i32) (func $~lib/rt/pure/decrement (; 22 ;) (type $FUNCSIG$vi) (param $0 i32)
(local $1 i32) (local $1 i32)
(local $2 i32) (local $2 i32)
local.get $0 local.get $0
@ -1781,7 +1784,7 @@
i32.and i32.and
local.set $2 local.set $2
local.get $0 local.get $0
call $~lib/rt/pure/onDecrement call $~lib/rt/rtrace/ondecrement
local.get $0 local.get $0
i32.load i32.load
i32.const 1 i32.const 1
@ -1791,7 +1794,7 @@
if if
i32.const 0 i32.const 0
i32.const 232 i32.const 232
i32.const 114 i32.const 115
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1830,7 +1833,7 @@
if if
i32.const 0 i32.const 0
i32.const 232 i32.const 232
i32.const 123 i32.const 124
i32.const 15 i32.const 15
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1874,7 +1877,7 @@
end end
end end
) )
(func $~lib/rt/pure/__retainRelease (; 22 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (func $~lib/rt/pure/__retainRelease (; 23 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
(local $2 i32) (local $2 i32)
local.get $1 local.get $1
local.get $0 local.get $0
@ -1903,7 +1906,7 @@
end end
local.get $1 local.get $1
) )
(func $~lib/arraybuffer/ArrayBufferView#constructor (; 23 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (func $~lib/arraybuffer/ArrayBufferView#constructor (; 24 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
local.get $1 local.get $1
@ -1961,7 +1964,7 @@
i32.store offset=8 i32.store offset=8
local.get $0 local.get $0
) )
(func $~lib/array/Array<i32>#constructor (; 24 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (func $~lib/array/Array<i32>#constructor (; 25 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
(local $2 i32) (local $2 i32)
local.get $0 local.get $0
if (result i32) if (result i32)
@ -1985,7 +1988,7 @@
i32.store offset=12 i32.store offset=12
local.get $0 local.get $0
) )
(func $~lib/rt/tlsf/reallocateBlock (; 25 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (func $~lib/rt/tlsf/reallocateBlock (; 26 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
(local $5 i32) (local $5 i32)
@ -2006,7 +2009,7 @@
if if
i32.const 0 i32.const 0
i32.const 128 i32.const 128
i32.const 491 i32.const 493
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -2116,17 +2119,15 @@
local.get $0 local.get $0
local.get $1 local.get $1
call $~lib/rt/tlsf/insertBlock call $~lib/rt/tlsf/insertBlock
local.get $1
call $~lib/rt/tlsf/onFree
local.get $8 local.get $8
) )
(func $~lib/rt/tlsf/__realloc (; 26 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (func $~lib/rt/tlsf/__realloc (; 27 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
global.get $~lib/rt/tlsf/ROOT global.get $~lib/rt/tlsf/ROOT
i32.eqz i32.eqz
if if
i32.const 0 i32.const 0
i32.const 128 i32.const 128
i32.const 552 i32.const 553
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -2146,7 +2147,7 @@
if if
i32.const 0 i32.const 0
i32.const 128 i32.const 128
i32.const 553 i32.const 554
i32.const 2 i32.const 2
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -2160,7 +2161,7 @@
i32.const 16 i32.const 16
i32.add i32.add
) )
(func $~lib/memory/memory.fill (; 27 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) (func $~lib/memory/memory.fill (; 28 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
(local $5 i32) (local $5 i32)
@ -2423,7 +2424,7 @@
end end
end end
) )
(func $~lib/array/ensureSize (; 28 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) (func $~lib/array/ensureSize (; 29 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
(local $5 i32) (local $5 i32)
@ -2486,7 +2487,7 @@
i32.store offset=8 i32.store offset=8
end end
) )
(func $~lib/array/Array<i32>#push (; 29 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (func $~lib/array/Array<i32>#push (; 30 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
local.get $0 local.get $0
@ -2513,7 +2514,7 @@
i32.store offset=12 i32.store offset=12
local.get $3 local.get $3
) )
(func $~lib/array/Array<i32>#pop (; 30 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (func $~lib/array/Array<i32>#pop (; 31 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
(local $1 i32) (local $1 i32)
(local $2 i32) (local $2 i32)
local.get $0 local.get $0
@ -2546,7 +2547,7 @@
i32.store offset=12 i32.store offset=12
local.get $2 local.get $2
) )
(func $~lib/rt/pure/__release (; 31 ;) (type $FUNCSIG$vi) (param $0 i32) (func $~lib/rt/pure/__release (; 32 ;) (type $FUNCSIG$vi) (param $0 i32)
local.get $0 local.get $0
global.get $~lib/heap/HEAP_BASE global.get $~lib/heap/HEAP_BASE
i32.gt_u i32.gt_u
@ -2557,7 +2558,7 @@
call $~lib/rt/pure/decrement call $~lib/rt/pure/decrement
end end
) )
(func $~lib/array/Array<~lib/string/String>#constructor (; 32 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (func $~lib/array/Array<~lib/string/String>#constructor (; 33 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
(local $2 i32) (local $2 i32)
local.get $0 local.get $0
if (result i32) if (result i32)
@ -2596,7 +2597,7 @@
i32.store offset=12 i32.store offset=12
local.get $0 local.get $0
) )
(func $~lib/array/Array<~lib/string/String>#push (; 33 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (func $~lib/array/Array<~lib/string/String>#push (; 34 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
@ -2636,7 +2637,7 @@
call $~lib/rt/pure/__release call $~lib/rt/pure/__release
local.get $4 local.get $4
) )
(func $~lib/string/String#get:length (; 34 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (func $~lib/string/String#get:length (; 35 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
local.get $0 local.get $0
i32.const 16 i32.const 16
i32.sub i32.sub
@ -2644,7 +2645,7 @@
i32.const 1 i32.const 1
i32.shr_u i32.shr_u
) )
(func $~lib/string/String#concat (; 35 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (func $~lib/string/String#concat (; 36 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
@ -2709,7 +2710,7 @@
call $~lib/rt/pure/__release call $~lib/rt/pure/__release
local.get $5 local.get $5
) )
(func $~lib/string/String.__concat (; 36 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (func $~lib/string/String.__concat (; 37 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
(local $2 i32) (local $2 i32)
local.get $0 local.get $0
call $~lib/rt/pure/__retain call $~lib/rt/pure/__retain
@ -2732,7 +2733,7 @@
call $~lib/rt/pure/__release call $~lib/rt/pure/__release
local.get $2 local.get $2
) )
(func $~lib/rt/pure/markGray (; 37 ;) (type $FUNCSIG$vi) (param $0 i32) (func $~lib/rt/pure/markGray (; 38 ;) (type $FUNCSIG$vi) (param $0 i32)
(local $1 i32) (local $1 i32)
local.get $0 local.get $0
i32.load offset=4 i32.load offset=4
@ -2759,7 +2760,7 @@
call $~lib/rt/__visit_members call $~lib/rt/__visit_members
end end
) )
(func $~lib/rt/pure/scanBlack (; 38 ;) (type $FUNCSIG$vi) (param $0 i32) (func $~lib/rt/pure/scanBlack (; 39 ;) (type $FUNCSIG$vi) (param $0 i32)
local.get $0 local.get $0
local.get $0 local.get $0
i32.load offset=4 i32.load offset=4
@ -2776,7 +2777,7 @@
i32.const 4 i32.const 4
call $~lib/rt/__visit_members call $~lib/rt/__visit_members
) )
(func $~lib/rt/pure/scan (; 39 ;) (type $FUNCSIG$vi) (param $0 i32) (func $~lib/rt/pure/scan (; 40 ;) (type $FUNCSIG$vi) (param $0 i32)
(local $1 i32) (local $1 i32)
local.get $0 local.get $0
i32.load offset=4 i32.load offset=4
@ -2813,7 +2814,7 @@
end end
end end
) )
(func $~lib/rt/pure/collectWhite (; 40 ;) (type $FUNCSIG$vi) (param $0 i32) (func $~lib/rt/pure/collectWhite (; 41 ;) (type $FUNCSIG$vi) (param $0 i32)
(local $1 i32) (local $1 i32)
local.get $0 local.get $0
i32.load offset=4 i32.load offset=4
@ -2842,7 +2843,7 @@
local.get $0 local.get $0
call $~lib/rt/tlsf/freeBlock call $~lib/rt/tlsf/freeBlock
) )
(func $~lib/rt/pure/__collect (; 41 ;) (type $FUNCSIG$v) (func $~lib/rt/pure/__collect (; 42 ;) (type $FUNCSIG$v)
(local $0 i32) (local $0 i32)
(local $1 i32) (local $1 i32)
(local $2 i32) (local $2 i32)
@ -2990,7 +2991,7 @@
local.get $0 local.get $0
global.set $~lib/rt/pure/CUR global.set $~lib/rt/pure/CUR
) )
(func $start:retain-release-sanity (; 42 ;) (type $FUNCSIG$v) (func $start:retain-release-sanity (; 43 ;) (type $FUNCSIG$v)
(local $0 i32) (local $0 i32)
(local $1 i32) (local $1 i32)
(local $2 i32) (local $2 i32)
@ -3086,7 +3087,7 @@
end end
call $~lib/rt/pure/__collect call $~lib/rt/pure/__collect
) )
(func $retain-release-sanity/main (; 43 ;) (type $FUNCSIG$v) (func $retain-release-sanity/main (; 44 ;) (type $FUNCSIG$v)
global.get $~lib/started global.get $~lib/started
i32.eqz i32.eqz
if if
@ -3095,13 +3096,13 @@
global.set $~lib/started global.set $~lib/started
end end
) )
(func $start (; 44 ;) (type $FUNCSIG$v) (func $start (; 45 ;) (type $FUNCSIG$v)
call $start:retain-release-sanity call $start:retain-release-sanity
) )
(func $~lib/array/Array<i32>#__visit_impl (; 45 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/array/Array<i32>#__visit_impl (; 46 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
nop nop
) )
(func $~lib/rt/pure/__visit (; 46 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/rt/pure/__visit (; 47 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
local.get $0 local.get $0
@ -3164,7 +3165,7 @@
if if
i32.const 0 i32.const 0
i32.const 232 i32.const 232
i32.const 74 i32.const 75
i32.const 17 i32.const 17
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -3211,7 +3212,7 @@
if if
i32.const 0 i32.const 0
i32.const 232 i32.const 232
i32.const 85 i32.const 86
i32.const 6 i32.const 6
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -3248,14 +3249,14 @@
if if
i32.const 0 i32.const 0
i32.const 232 i32.const 232
i32.const 96 i32.const 97
i32.const 24 i32.const 24
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
end end
end end
) )
(func $~lib/array/Array<~lib/string/String>#__visit_impl (; 47 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/array/Array<~lib/string/String>#__visit_impl (; 48 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
@ -3291,7 +3292,7 @@
end end
end end
) )
(func $~lib/rt/__visit_members (; 48 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/rt/__visit_members (; 49 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
(local $2 i32) (local $2 i32)
block $block$4$break block $block$4$break
block block
@ -3387,6 +3388,6 @@
end end
unreachable unreachable
) )
(func $null (; 49 ;) (type $FUNCSIG$v) (func $null (; 50 ;) (type $FUNCSIG$v)
) )
) )

View File

@ -42,7 +42,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 275 i32.const 276
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -64,7 +64,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 277 i32.const 278
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -109,7 +109,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 290 i32.const 291
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -206,7 +206,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 203 i32.const 204
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -220,7 +220,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 205 i32.const 206
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -293,7 +293,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 226 i32.const 227
i32.const 15 i32.const 15
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -350,7 +350,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 241 i32.const 242
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -365,7 +365,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 242 i32.const 243
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -415,7 +415,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 258 i32.const 259
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -501,7 +501,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 384 i32.const 385
i32.const 4 i32.const 4
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -518,7 +518,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 394 i32.const 395
i32.const 15 i32.const 15
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -546,7 +546,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 406 i32.const 407
i32.const 4 i32.const 4
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -683,7 +683,7 @@
if if
i32.const 72 i32.const 72
i32.const 24 i32.const 24
i32.const 446 i32.const 447
i32.const 29 i32.const 29
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -758,7 +758,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 336 i32.const 337
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -810,7 +810,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 349 i32.const 350
i32.const 17 i32.const 17
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -880,7 +880,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 363 i32.const 364
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -966,7 +966,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 476 i32.const 477
i32.const 15 i32.const 15
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -981,7 +981,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 478 i32.const 479
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1209,7 +1209,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 491 i32.const 493
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1313,7 +1313,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 552 i32.const 553
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1329,7 +1329,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 553 i32.const 554
i32.const 2 i32.const 2
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1353,7 +1353,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 530 i32.const 531
i32.const 2 i32.const 2
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1373,7 +1373,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 560 i32.const 561
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1389,7 +1389,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 561 i32.const 562
i32.const 2 i32.const 2
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1416,7 +1416,7 @@
if if
i32.const 0 i32.const 0
i32.const 128 i32.const 128
i32.const 103 i32.const 104
i32.const 2 i32.const 2
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1433,7 +1433,7 @@
if if
i32.const 0 i32.const 0
i32.const 128 i32.const 128
i32.const 106 i32.const 107
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1542,7 +1542,7 @@
if if
i32.const 0 i32.const 0
i32.const 128 i32.const 128
i32.const 114 i32.const 115
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1575,7 +1575,7 @@
if if
i32.const 0 i32.const 0
i32.const 128 i32.const 128
i32.const 123 i32.const 124
i32.const 15 i32.const 15
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1924,7 +1924,7 @@
if if
i32.const 0 i32.const 0
i32.const 128 i32.const 128
i32.const 74 i32.const 75
i32.const 17 i32.const 17
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1957,7 +1957,7 @@
if if
i32.const 0 i32.const 0
i32.const 128 i32.const 128
i32.const 85 i32.const 86
i32.const 6 i32.const 6
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1982,7 +1982,7 @@
end end
i32.const 0 i32.const 0
i32.const 128 i32.const 128
i32.const 96 i32.const 97
i32.const 24 i32.const 24
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable

View File

@ -53,7 +53,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 275 i32.const 276
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -78,7 +78,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 277 i32.const 278
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -130,7 +130,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 290 i32.const 291
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -268,7 +268,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 203 i32.const 204
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -283,7 +283,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 205 i32.const 206
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -382,7 +382,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 226 i32.const 227
i32.const 15 i32.const 15
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -445,7 +445,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 241 i32.const 242
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -461,7 +461,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 242 i32.const 243
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -518,7 +518,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 258 i32.const 259
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -645,7 +645,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 384 i32.const 385
i32.const 4 i32.const 4
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -670,7 +670,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 394 i32.const 395
i32.const 15 i32.const 15
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -701,7 +701,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 406 i32.const 407
i32.const 4 i32.const 4
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -928,7 +928,7 @@
if if
i32.const 72 i32.const 72
i32.const 24 i32.const 24
i32.const 446 i32.const 447
i32.const 29 i32.const 29
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1022,7 +1022,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 336 i32.const 337
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1089,7 +1089,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 349 i32.const 350
i32.const 17 i32.const 17
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1207,7 +1207,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 363 i32.const 364
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1316,7 +1316,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 476 i32.const 477
i32.const 15 i32.const 15
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1334,7 +1334,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 478 i32.const 479
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1604,7 +1604,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 491 i32.const 493
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1722,7 +1722,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 552 i32.const 553
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1742,7 +1742,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 553 i32.const 554
i32.const 2 i32.const 2
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1769,7 +1769,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 530 i32.const 531
i32.const 2 i32.const 2
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1789,7 +1789,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 560 i32.const 561
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1809,7 +1809,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 561 i32.const 562
i32.const 2 i32.const 2
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1842,7 +1842,7 @@
if if
i32.const 0 i32.const 0
i32.const 128 i32.const 128
i32.const 103 i32.const 104
i32.const 2 i32.const 2
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1861,7 +1861,7 @@
if if
i32.const 0 i32.const 0
i32.const 128 i32.const 128
i32.const 106 i32.const 107
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1988,7 +1988,7 @@
if if
i32.const 0 i32.const 0
i32.const 128 i32.const 128
i32.const 114 i32.const 115
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -2027,7 +2027,7 @@
if if
i32.const 0 i32.const 0
i32.const 128 i32.const 128
i32.const 123 i32.const 124
i32.const 15 i32.const 15
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -2440,7 +2440,7 @@
if if
i32.const 0 i32.const 0
i32.const 128 i32.const 128
i32.const 74 i32.const 75
i32.const 17 i32.const 17
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -2487,7 +2487,7 @@
if if
i32.const 0 i32.const 0
i32.const 128 i32.const 128
i32.const 85 i32.const 86
i32.const 6 i32.const 6
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -2524,7 +2524,7 @@
if if
i32.const 0 i32.const 0
i32.const 128 i32.const 128
i32.const 96 i32.const 97
i32.const 24 i32.const 24
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable

View File

@ -8,9 +8,10 @@
(type $FUNCSIG$vi (func (param i32))) (type $FUNCSIG$vi (func (param i32)))
(type $FUNCSIG$i (func (result i32))) (type $FUNCSIG$i (func (result i32)))
(import "env" "abort" (func $~lib/builtins/abort (param i32 i32 i32 i32))) (import "env" "abort" (func $~lib/builtins/abort (param i32 i32 i32 i32)))
(import "rtrace" "retain" (func $~lib/rt/pure/onIncrement (param i32))) (import "rtrace" "onalloc" (func $~lib/rt/rtrace/onalloc (param i32)))
(import "rtrace" "release" (func $~lib/rt/pure/onDecrement (param i32))) (import "rtrace" "onincrement" (func $~lib/rt/rtrace/onincrement (param i32)))
(import "rtrace" "free" (func $~lib/rt/tlsf/onFree (param i32))) (import "rtrace" "ondecrement" (func $~lib/rt/rtrace/ondecrement (param i32)))
(import "rtrace" "onfree" (func $~lib/rt/rtrace/onfree (param i32)))
(memory $0 1) (memory $0 1)
(data (i32.const 8) "\03\00\00\00\01\00\00\00\00\00\00\00\03\00\00\00\00\01\02") (data (i32.const 8) "\03\00\00\00\01\00\00\00\00\00\00\00\03\00\00\00\00\01\02")
(data (i32.const 32) "\10\00\00\00\01\00\00\00\03\00\00\00\10\00\00\00\18\00\00\00\18\00\00\00\03\00\00\00\03") (data (i32.const 32) "\10\00\00\00\01\00\00\00\03\00\00\00\10\00\00\00\18\00\00\00\18\00\00\00\03\00\00\00\03")
@ -38,7 +39,7 @@
(global $~lib/rt/pure/ROOTS (mut i32) (i32.const 0)) (global $~lib/rt/pure/ROOTS (mut i32) (i32.const 0))
(export "memory" (memory $0)) (export "memory" (memory $0))
(start $start) (start $start)
(func $~lib/array/Array<i8>#__get (; 4 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (func $~lib/array/Array<i8>#__get (; 5 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
local.get $1 local.get $1
local.get $0 local.get $0
i32.load offset=8 i32.load offset=8
@ -57,7 +58,7 @@
i32.add i32.add
i32.load8_s i32.load8_s
) )
(func $~lib/array/Array<i32>#__get (; 5 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (func $~lib/array/Array<i32>#__get (; 6 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
local.get $1 local.get $1
local.get $0 local.get $0
i32.load offset=8 i32.load offset=8
@ -80,7 +81,7 @@
i32.add i32.add
i32.load i32.load
) )
(func $~lib/rt/tlsf/removeBlock (; 6 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/rt/tlsf/removeBlock (; 7 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
@ -94,7 +95,7 @@
if if
i32.const 0 i32.const 0
i32.const 352 i32.const 352
i32.const 275 i32.const 276
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -116,7 +117,7 @@
if if
i32.const 0 i32.const 0
i32.const 352 i32.const 352
i32.const 277 i32.const 278
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -161,7 +162,7 @@
if if
i32.const 0 i32.const 0
i32.const 352 i32.const 352
i32.const 290 i32.const 291
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -246,7 +247,7 @@
end end
end end
) )
(func $~lib/rt/tlsf/insertBlock (; 7 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/rt/tlsf/insertBlock (; 8 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
@ -258,7 +259,7 @@
if if
i32.const 0 i32.const 0
i32.const 352 i32.const 352
i32.const 203 i32.const 204
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -272,7 +273,7 @@
if if
i32.const 0 i32.const 0
i32.const 352 i32.const 352
i32.const 205 i32.const 206
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -345,7 +346,7 @@
if if
i32.const 0 i32.const 0
i32.const 352 i32.const 352
i32.const 226 i32.const 227
i32.const 15 i32.const 15
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -402,7 +403,7 @@
if if
i32.const 0 i32.const 0
i32.const 352 i32.const 352
i32.const 241 i32.const 242
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -417,7 +418,7 @@
if if
i32.const 0 i32.const 0
i32.const 352 i32.const 352
i32.const 242 i32.const 243
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -467,7 +468,7 @@
if if
i32.const 0 i32.const 0
i32.const 352 i32.const 352
i32.const 258 i32.const 259
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -531,7 +532,7 @@
i32.or i32.or
i32.store offset=4 i32.store offset=4
) )
(func $~lib/rt/tlsf/addMemory (; 8 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) (func $~lib/rt/tlsf/addMemory (; 9 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
local.get $2 local.get $2
@ -553,7 +554,7 @@
if if
i32.const 0 i32.const 0
i32.const 352 i32.const 352
i32.const 384 i32.const 385
i32.const 4 i32.const 4
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -570,7 +571,7 @@
if if
i32.const 0 i32.const 0
i32.const 352 i32.const 352
i32.const 394 i32.const 395
i32.const 15 i32.const 15
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -598,7 +599,7 @@
if if
i32.const 0 i32.const 0
i32.const 352 i32.const 352
i32.const 406 i32.const 407
i32.const 4 i32.const 4
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -645,7 +646,7 @@
local.get $1 local.get $1
call $~lib/rt/tlsf/insertBlock call $~lib/rt/tlsf/insertBlock
) )
(func $~lib/rt/tlsf/initializeRoot (; 9 ;) (type $FUNCSIG$v) (func $~lib/rt/tlsf/initializeRoot (; 10 ;) (type $FUNCSIG$v)
(local $0 i32) (local $0 i32)
(local $1 i32) (local $1 i32)
i32.const 1 i32.const 1
@ -728,14 +729,14 @@
i32.const 608 i32.const 608
global.set $~lib/rt/tlsf/ROOT global.set $~lib/rt/tlsf/ROOT
) )
(func $~lib/rt/tlsf/prepareSize (; 10 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (func $~lib/rt/tlsf/prepareSize (; 11 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
local.get $0 local.get $0
i32.const 1073741808 i32.const 1073741808
i32.ge_u i32.ge_u
if if
i32.const 400 i32.const 400
i32.const 352 i32.const 352
i32.const 446 i32.const 447
i32.const 29 i32.const 29
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -752,7 +753,7 @@
i32.gt_u i32.gt_u
select select
) )
(func $~lib/rt/tlsf/searchBlock (; 11 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (func $~lib/rt/tlsf/searchBlock (; 12 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
(local $2 i32) (local $2 i32)
local.get $1 local.get $1
i32.const 256 i32.const 256
@ -810,7 +811,7 @@
if if
i32.const 0 i32.const 0
i32.const 352 i32.const 352
i32.const 336 i32.const 337
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -862,7 +863,7 @@
if if
i32.const 0 i32.const 0
i32.const 352 i32.const 352
i32.const 349 i32.const 350
i32.const 17 i32.const 17
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -883,7 +884,7 @@
end end
end end
) )
(func $~lib/rt/tlsf/growMemory (; 12 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/rt/tlsf/growMemory (; 13 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
(local $2 i32) (local $2 i32)
memory.size memory.size
local.tee $2 local.tee $2
@ -920,7 +921,7 @@
i32.shl i32.shl
call $~lib/rt/tlsf/addMemory call $~lib/rt/tlsf/addMemory
) )
(func $~lib/rt/tlsf/prepareBlock (; 13 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) (func $~lib/rt/tlsf/prepareBlock (; 14 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
local.get $1 local.get $1
@ -932,7 +933,7 @@
if if
i32.const 0 i32.const 0
i32.const 352 i32.const 352
i32.const 363 i32.const 364
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -996,7 +997,7 @@
i32.store i32.store
end end
) )
(func $~lib/rt/tlsf/allocateBlock (; 14 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (func $~lib/rt/tlsf/allocateBlock (; 15 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
local.get $0 local.get $0
@ -1018,7 +1019,7 @@
if if
i32.const 0 i32.const 0
i32.const 352 i32.const 352
i32.const 476 i32.const 477
i32.const 15 i32.const 15
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1033,7 +1034,7 @@
if if
i32.const 0 i32.const 0
i32.const 352 i32.const 352
i32.const 478 i32.const 479
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1052,8 +1053,10 @@
local.get $3 local.get $3
call $~lib/rt/tlsf/prepareBlock call $~lib/rt/tlsf/prepareBlock
local.get $2 local.get $2
call $~lib/rt/rtrace/onalloc
local.get $2
) )
(func $~lib/rt/tlsf/__alloc (; 15 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (func $~lib/rt/tlsf/__alloc (; 16 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
(local $2 i32) (local $2 i32)
global.get $~lib/rt/tlsf/ROOT global.get $~lib/rt/tlsf/ROOT
local.tee $2 local.tee $2
@ -1072,7 +1075,7 @@
i32.const 16 i32.const 16
i32.add i32.add
) )
(func $~lib/rt/pure/increment (; 16 ;) (type $FUNCSIG$vi) (param $0 i32) (func $~lib/rt/pure/increment (; 17 ;) (type $FUNCSIG$vi) (param $0 i32)
(local $1 i32) (local $1 i32)
local.get $0 local.get $0
i32.load offset=4 i32.load offset=4
@ -1088,7 +1091,7 @@
if if
i32.const 0 i32.const 0
i32.const 456 i32.const 456
i32.const 103 i32.const 104
i32.const 2 i32.const 2
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1099,7 +1102,7 @@
i32.add i32.add
i32.store offset=4 i32.store offset=4
local.get $0 local.get $0
call $~lib/rt/pure/onIncrement call $~lib/rt/rtrace/onincrement
local.get $0 local.get $0
i32.load i32.load
i32.const 1 i32.const 1
@ -1107,13 +1110,13 @@
if if
i32.const 0 i32.const 0
i32.const 456 i32.const 456
i32.const 106 i32.const 107
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
end end
) )
(func $~lib/rt/pure/__retain (; 17 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (func $~lib/rt/pure/__retain (; 18 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
local.get $0 local.get $0
i32.const 604 i32.const 604
i32.gt_u i32.gt_u
@ -1125,7 +1128,7 @@
end end
local.get $0 local.get $0
) )
(func $~lib/memory/memory.copy (; 18 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) (func $~lib/memory/memory.copy (; 19 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
block $~lib/util/memory/memmove|inlined.0 block $~lib/util/memory/memmove|inlined.0
@ -1298,7 +1301,7 @@
end end
end end
) )
(func $~lib/rt/__allocArray (; 19 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (func $~lib/rt/__allocArray (; 20 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
(local $2 i32) (local $2 i32)
i32.const 16 i32.const 16
local.get $1 local.get $1
@ -1324,19 +1327,19 @@
i32.store offset=12 i32.store offset=12
local.get $1 local.get $1
) )
(func $std/array-literal/Ref#constructor (; 20 ;) (type $FUNCSIG$i) (result i32) (func $std/array-literal/Ref#constructor (; 21 ;) (type $FUNCSIG$i) (result i32)
i32.const 0 i32.const 0
i32.const 5 i32.const 5
call $~lib/rt/tlsf/__alloc call $~lib/rt/tlsf/__alloc
call $~lib/rt/pure/__retain call $~lib/rt/pure/__retain
) )
(func $std/array-literal/RefWithCtor#constructor (; 21 ;) (type $FUNCSIG$i) (result i32) (func $std/array-literal/RefWithCtor#constructor (; 22 ;) (type $FUNCSIG$i) (result i32)
i32.const 0 i32.const 0
i32.const 7 i32.const 7
call $~lib/rt/tlsf/__alloc call $~lib/rt/tlsf/__alloc
call $~lib/rt/pure/__retain call $~lib/rt/pure/__retain
) )
(func $~lib/rt/tlsf/freeBlock (; 22 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/rt/tlsf/freeBlock (; 23 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
(local $2 i32) (local $2 i32)
local.get $1 local.get $1
i32.load i32.load
@ -1346,7 +1349,7 @@
if if
i32.const 0 i32.const 0
i32.const 352 i32.const 352
i32.const 530 i32.const 531
i32.const 2 i32.const 2
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1360,9 +1363,9 @@
local.get $1 local.get $1
call $~lib/rt/tlsf/insertBlock call $~lib/rt/tlsf/insertBlock
local.get $1 local.get $1
call $~lib/rt/tlsf/onFree call $~lib/rt/rtrace/onfree
) )
(func $~lib/rt/__typeinfo (; 23 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (func $~lib/rt/__typeinfo (; 24 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
local.get $0 local.get $0
i32.const 528 i32.const 528
i32.load i32.load
@ -1382,7 +1385,7 @@
i32.add i32.add
i32.load i32.load
) )
(func $~lib/rt/pure/growRoots (; 24 ;) (type $FUNCSIG$v) (func $~lib/rt/pure/growRoots (; 25 ;) (type $FUNCSIG$v)
(local $0 i32) (local $0 i32)
(local $1 i32) (local $1 i32)
(local $2 i32) (local $2 i32)
@ -1418,7 +1421,7 @@
i32.add i32.add
global.set $~lib/rt/pure/END global.set $~lib/rt/pure/END
) )
(func $~lib/rt/pure/appendRoot (; 25 ;) (type $FUNCSIG$vi) (param $0 i32) (func $~lib/rt/pure/appendRoot (; 26 ;) (type $FUNCSIG$vi) (param $0 i32)
(local $1 i32) (local $1 i32)
global.get $~lib/rt/pure/CUR global.get $~lib/rt/pure/CUR
local.tee $1 local.tee $1
@ -1437,7 +1440,7 @@
i32.add i32.add
global.set $~lib/rt/pure/CUR global.set $~lib/rt/pure/CUR
) )
(func $~lib/rt/pure/decrement (; 26 ;) (type $FUNCSIG$vi) (param $0 i32) (func $~lib/rt/pure/decrement (; 27 ;) (type $FUNCSIG$vi) (param $0 i32)
(local $1 i32) (local $1 i32)
(local $2 i32) (local $2 i32)
local.get $0 local.get $0
@ -1447,7 +1450,7 @@
i32.and i32.and
local.set $1 local.set $1
local.get $0 local.get $0
call $~lib/rt/pure/onDecrement call $~lib/rt/rtrace/ondecrement
local.get $0 local.get $0
i32.load i32.load
i32.const 1 i32.const 1
@ -1455,7 +1458,7 @@
if if
i32.const 0 i32.const 0
i32.const 456 i32.const 456
i32.const 114 i32.const 115
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1488,7 +1491,7 @@
if if
i32.const 0 i32.const 0
i32.const 456 i32.const 456
i32.const 123 i32.const 124
i32.const 15 i32.const 15
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1527,7 +1530,7 @@
end end
end end
) )
(func $~lib/rt/pure/__release (; 27 ;) (type $FUNCSIG$vi) (param $0 i32) (func $~lib/rt/pure/__release (; 28 ;) (type $FUNCSIG$vi) (param $0 i32)
local.get $0 local.get $0
i32.const 604 i32.const 604
i32.gt_u i32.gt_u
@ -1538,7 +1541,7 @@
call $~lib/rt/pure/decrement call $~lib/rt/pure/decrement
end end
) )
(func $start:std/array-literal (; 28 ;) (type $FUNCSIG$v) (func $start:std/array-literal (; 29 ;) (type $FUNCSIG$v)
(local $0 i32) (local $0 i32)
(local $1 i32) (local $1 i32)
(local $2 i32) (local $2 i32)
@ -1901,10 +1904,10 @@
local.get $0 local.get $0
call $~lib/rt/pure/__release call $~lib/rt/pure/__release
) )
(func $start (; 29 ;) (type $FUNCSIG$v) (func $start (; 30 ;) (type $FUNCSIG$v)
call $start:std/array-literal call $start:std/array-literal
) )
(func $~lib/rt/pure/markGray (; 30 ;) (type $FUNCSIG$vi) (param $0 i32) (func $~lib/rt/pure/markGray (; 31 ;) (type $FUNCSIG$vi) (param $0 i32)
(local $1 i32) (local $1 i32)
local.get $0 local.get $0
i32.load offset=4 i32.load offset=4
@ -1928,7 +1931,7 @@
call $~lib/rt/__visit_members call $~lib/rt/__visit_members
end end
) )
(func $~lib/rt/pure/scanBlack (; 31 ;) (type $FUNCSIG$vi) (param $0 i32) (func $~lib/rt/pure/scanBlack (; 32 ;) (type $FUNCSIG$vi) (param $0 i32)
local.get $0 local.get $0
local.get $0 local.get $0
i32.load offset=4 i32.load offset=4
@ -1941,7 +1944,7 @@
i32.const 4 i32.const 4
call $~lib/rt/__visit_members call $~lib/rt/__visit_members
) )
(func $~lib/rt/pure/scan (; 32 ;) (type $FUNCSIG$vi) (param $0 i32) (func $~lib/rt/pure/scan (; 33 ;) (type $FUNCSIG$vi) (param $0 i32)
(local $1 i32) (local $1 i32)
local.get $0 local.get $0
i32.load offset=4 i32.load offset=4
@ -1975,7 +1978,7 @@
end end
end end
) )
(func $~lib/rt/pure/collectWhite (; 33 ;) (type $FUNCSIG$vi) (param $0 i32) (func $~lib/rt/pure/collectWhite (; 34 ;) (type $FUNCSIG$vi) (param $0 i32)
(local $1 i32) (local $1 i32)
local.get $0 local.get $0
i32.load offset=4 i32.load offset=4
@ -2003,7 +2006,7 @@
local.get $0 local.get $0
call $~lib/rt/tlsf/freeBlock call $~lib/rt/tlsf/freeBlock
) )
(func $~lib/rt/pure/__visit (; 34 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/rt/pure/__visit (; 35 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
local.get $0 local.get $0
i32.const 604 i32.const 604
i32.lt_u i32.lt_u
@ -2049,7 +2052,7 @@
if if
i32.const 0 i32.const 0
i32.const 456 i32.const 456
i32.const 74 i32.const 75
i32.const 17 i32.const 17
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -2082,7 +2085,7 @@
if if
i32.const 0 i32.const 0
i32.const 456 i32.const 456
i32.const 85 i32.const 86
i32.const 6 i32.const 6
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -2107,13 +2110,13 @@
end end
i32.const 0 i32.const 0
i32.const 456 i32.const 456
i32.const 96 i32.const 97
i32.const 24 i32.const 24
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
end end
) )
(func $~lib/array/Array<std/array-literal/Ref>#__visit_impl (; 35 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/array/Array<std/array-literal/Ref>#__visit_impl (; 36 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
local.get $0 local.get $0
@ -2144,7 +2147,7 @@
end end
end end
) )
(func $~lib/rt/__visit_members (; 36 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/rt/__visit_members (; 37 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
block $block$4$break block $block$4$break
block $switch$1$default block $switch$1$default
block $switch$1$case$10 block $switch$1$case$10
@ -2179,7 +2182,7 @@
call $~lib/rt/pure/__visit call $~lib/rt/pure/__visit
end end
) )
(func $null (; 37 ;) (type $FUNCSIG$v) (func $null (; 38 ;) (type $FUNCSIG$v)
nop nop
) )
) )

View File

@ -9,9 +9,10 @@
(type $FUNCSIG$viii (func (param i32 i32 i32))) (type $FUNCSIG$viii (func (param i32 i32 i32)))
(type $FUNCSIG$vi (func (param i32))) (type $FUNCSIG$vi (func (param i32)))
(import "env" "abort" (func $~lib/builtins/abort (param i32 i32 i32 i32))) (import "env" "abort" (func $~lib/builtins/abort (param i32 i32 i32 i32)))
(import "rtrace" "retain" (func $~lib/rt/pure/onIncrement (param i32))) (import "rtrace" "onalloc" (func $~lib/rt/rtrace/onalloc (param i32)))
(import "rtrace" "release" (func $~lib/rt/pure/onDecrement (param i32))) (import "rtrace" "onincrement" (func $~lib/rt/rtrace/onincrement (param i32)))
(import "rtrace" "free" (func $~lib/rt/tlsf/onFree (param i32))) (import "rtrace" "ondecrement" (func $~lib/rt/rtrace/ondecrement (param i32)))
(import "rtrace" "onfree" (func $~lib/rt/rtrace/onfree (param i32)))
(memory $0 1) (memory $0 1)
(data (i32.const 8) "\03\00\00\00\01\00\00\00\00\00\00\00\03\00\00\00\00\01\02") (data (i32.const 8) "\03\00\00\00\01\00\00\00\00\00\00\00\03\00\00\00\00\01\02")
(data (i32.const 32) "\10\00\00\00\01\00\00\00\03\00\00\00\10\00\00\00\18\00\00\00\18\00\00\00\03\00\00\00\03\00\00\00") (data (i32.const 32) "\10\00\00\00\01\00\00\00\03\00\00\00\10\00\00\00\18\00\00\00\18\00\00\00\03\00\00\00\03\00\00\00")
@ -45,11 +46,11 @@
(global $~lib/heap/HEAP_BASE i32 (i32.const 604)) (global $~lib/heap/HEAP_BASE i32 (i32.const 604))
(export "memory" (memory $0)) (export "memory" (memory $0))
(start $start) (start $start)
(func $~lib/array/Array<i8>#get:length (; 4 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (func $~lib/array/Array<i8>#get:length (; 5 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
local.get $0 local.get $0
i32.load offset=12 i32.load offset=12
) )
(func $~lib/array/Array<i8>#__unchecked_get (; 5 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (func $~lib/array/Array<i8>#__unchecked_get (; 6 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
local.get $0 local.get $0
i32.load offset=4 i32.load offset=4
local.get $1 local.get $1
@ -58,7 +59,7 @@
i32.add i32.add
i32.load8_s i32.load8_s
) )
(func $~lib/array/Array<i8>#__get (; 6 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (func $~lib/array/Array<i8>#__get (; 7 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
local.get $1 local.get $1
local.get $0 local.get $0
i32.load offset=8 i32.load offset=8
@ -77,11 +78,11 @@
local.get $1 local.get $1
call $~lib/array/Array<i8>#__unchecked_get call $~lib/array/Array<i8>#__unchecked_get
) )
(func $~lib/array/Array<i32>#get:length (; 7 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (func $~lib/array/Array<i32>#get:length (; 8 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
local.get $0 local.get $0
i32.load offset=12 i32.load offset=12
) )
(func $~lib/array/Array<i32>#__unchecked_get (; 8 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (func $~lib/array/Array<i32>#__unchecked_get (; 9 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
local.get $0 local.get $0
i32.load offset=4 i32.load offset=4
local.get $1 local.get $1
@ -90,7 +91,7 @@
i32.add i32.add
i32.load i32.load
) )
(func $~lib/array/Array<i32>#__get (; 9 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (func $~lib/array/Array<i32>#__get (; 10 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
local.get $1 local.get $1
local.get $0 local.get $0
i32.load offset=8 i32.load offset=8
@ -109,7 +110,7 @@
local.get $1 local.get $1
call $~lib/array/Array<i32>#__unchecked_get call $~lib/array/Array<i32>#__unchecked_get
) )
(func $~lib/rt/tlsf/removeBlock (; 10 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/rt/tlsf/removeBlock (; 11 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
@ -130,7 +131,7 @@
if if
i32.const 0 i32.const 0
i32.const 352 i32.const 352
i32.const 275 i32.const 276
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -155,7 +156,7 @@
if if
i32.const 0 i32.const 0
i32.const 352 i32.const 352
i32.const 277 i32.const 278
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -207,7 +208,7 @@
if if
i32.const 0 i32.const 0
i32.const 352 i32.const 352
i32.const 290 i32.const 291
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -327,7 +328,7 @@
end end
end end
) )
(func $~lib/rt/tlsf/insertBlock (; 11 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/rt/tlsf/insertBlock (; 12 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
@ -345,7 +346,7 @@
if if
i32.const 0 i32.const 0
i32.const 352 i32.const 352
i32.const 203 i32.const 204
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -360,7 +361,7 @@
if if
i32.const 0 i32.const 0
i32.const 352 i32.const 352
i32.const 205 i32.const 206
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -459,7 +460,7 @@
if if
i32.const 0 i32.const 0
i32.const 352 i32.const 352
i32.const 226 i32.const 227
i32.const 15 i32.const 15
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -522,7 +523,7 @@
if if
i32.const 0 i32.const 0
i32.const 352 i32.const 352
i32.const 241 i32.const 242
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -538,7 +539,7 @@
if if
i32.const 0 i32.const 0
i32.const 352 i32.const 352
i32.const 242 i32.const 243
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -595,7 +596,7 @@
if if
i32.const 0 i32.const 0
i32.const 352 i32.const 352
i32.const 258 i32.const 259
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -691,7 +692,7 @@
i32.store offset=4 i32.store offset=4
end end
) )
(func $~lib/rt/tlsf/addMemory (; 12 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (func $~lib/rt/tlsf/addMemory (; 13 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
(local $5 i32) (local $5 i32)
@ -722,7 +723,7 @@
if if
i32.const 0 i32.const 0
i32.const 352 i32.const 352
i32.const 384 i32.const 385
i32.const 4 i32.const 4
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -747,7 +748,7 @@
if if
i32.const 0 i32.const 0
i32.const 352 i32.const 352
i32.const 394 i32.const 395
i32.const 15 i32.const 15
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -778,7 +779,7 @@
if if
i32.const 0 i32.const 0
i32.const 352 i32.const 352
i32.const 406 i32.const 407
i32.const 4 i32.const 4
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -843,7 +844,7 @@
call $~lib/rt/tlsf/insertBlock call $~lib/rt/tlsf/insertBlock
i32.const 1 i32.const 1
) )
(func $~lib/rt/tlsf/initializeRoot (; 13 ;) (type $FUNCSIG$v) (func $~lib/rt/tlsf/initializeRoot (; 14 ;) (type $FUNCSIG$v)
(local $0 i32) (local $0 i32)
(local $1 i32) (local $1 i32)
(local $2 i32) (local $2 i32)
@ -996,7 +997,7 @@
local.get $3 local.get $3
global.set $~lib/rt/tlsf/ROOT global.set $~lib/rt/tlsf/ROOT
) )
(func $~lib/rt/tlsf/prepareSize (; 14 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (func $~lib/rt/tlsf/prepareSize (; 15 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
(local $1 i32) (local $1 i32)
(local $2 i32) (local $2 i32)
local.get $0 local.get $0
@ -1005,7 +1006,7 @@
if if
i32.const 400 i32.const 400
i32.const 352 i32.const 352
i32.const 446 i32.const 447
i32.const 29 i32.const 29
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1025,7 +1026,7 @@
i32.gt_u i32.gt_u
select select
) )
(func $~lib/rt/tlsf/searchBlock (; 15 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (func $~lib/rt/tlsf/searchBlock (; 16 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
@ -1099,7 +1100,7 @@
if if
i32.const 0 i32.const 0
i32.const 352 i32.const 352
i32.const 336 i32.const 337
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1166,7 +1167,7 @@
if if
i32.const 0 i32.const 0
i32.const 352 i32.const 352
i32.const 349 i32.const 350
i32.const 17 i32.const 17
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1216,7 +1217,7 @@
end end
local.get $7 local.get $7
) )
(func $~lib/rt/tlsf/growMemory (; 16 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/rt/tlsf/growMemory (; 17 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
@ -1269,7 +1270,7 @@
call $~lib/rt/tlsf/addMemory call $~lib/rt/tlsf/addMemory
drop drop
) )
(func $~lib/rt/tlsf/prepareBlock (; 17 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) (func $~lib/rt/tlsf/prepareBlock (; 18 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
(local $5 i32) (local $5 i32)
@ -1284,7 +1285,7 @@
if if
i32.const 0 i32.const 0
i32.const 352 i32.const 352
i32.const 363 i32.const 364
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1368,7 +1369,7 @@
i32.store i32.store
end end
) )
(func $~lib/rt/tlsf/allocateBlock (; 18 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (func $~lib/rt/tlsf/allocateBlock (; 19 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
local.get $1 local.get $1
@ -1393,7 +1394,7 @@
if if
i32.const 0 i32.const 0
i32.const 352 i32.const 352
i32.const 476 i32.const 477
i32.const 15 i32.const 15
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1411,7 +1412,7 @@
if if
i32.const 0 i32.const 0
i32.const 352 i32.const 352
i32.const 478 i32.const 479
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1430,8 +1431,10 @@
local.get $2 local.get $2
call $~lib/rt/tlsf/prepareBlock call $~lib/rt/tlsf/prepareBlock
local.get $3 local.get $3
call $~lib/rt/rtrace/onalloc
local.get $3
) )
(func $~lib/rt/tlsf/__alloc (; 19 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (func $~lib/rt/tlsf/__alloc (; 20 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
global.get $~lib/rt/tlsf/ROOT global.get $~lib/rt/tlsf/ROOT
@ -1454,7 +1457,7 @@
i32.const 16 i32.const 16
i32.add i32.add
) )
(func $~lib/rt/pure/increment (; 20 ;) (type $FUNCSIG$vi) (param $0 i32) (func $~lib/rt/pure/increment (; 21 ;) (type $FUNCSIG$vi) (param $0 i32)
(local $1 i32) (local $1 i32)
local.get $0 local.get $0
i32.load offset=4 i32.load offset=4
@ -1476,7 +1479,7 @@
if if
i32.const 0 i32.const 0
i32.const 456 i32.const 456
i32.const 103 i32.const 104
i32.const 2 i32.const 2
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1487,7 +1490,7 @@
i32.add i32.add
i32.store offset=4 i32.store offset=4
local.get $0 local.get $0
call $~lib/rt/pure/onIncrement call $~lib/rt/rtrace/onincrement
local.get $0 local.get $0
i32.load i32.load
i32.const 1 i32.const 1
@ -1497,13 +1500,13 @@
if if
i32.const 0 i32.const 0
i32.const 456 i32.const 456
i32.const 106 i32.const 107
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
end end
) )
(func $~lib/rt/pure/__retain (; 21 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (func $~lib/rt/pure/__retain (; 22 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
local.get $0 local.get $0
global.get $~lib/heap/HEAP_BASE global.get $~lib/heap/HEAP_BASE
i32.gt_u i32.gt_u
@ -1515,7 +1518,7 @@
end end
local.get $0 local.get $0
) )
(func $~lib/memory/memory.copy (; 22 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) (func $~lib/memory/memory.copy (; 23 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
(local $5 i32) (local $5 i32)
@ -1721,7 +1724,7 @@
end end
end end
) )
(func $~lib/rt/__allocArray (; 23 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) (func $~lib/rt/__allocArray (; 24 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32)
(local $4 i32) (local $4 i32)
(local $5 i32) (local $5 i32)
(local $6 i32) (local $6 i32)
@ -1759,7 +1762,7 @@
end end
local.get $4 local.get $4
) )
(func $std/array-literal/Ref#constructor (; 24 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (func $std/array-literal/Ref#constructor (; 25 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
local.get $0 local.get $0
i32.eqz i32.eqz
if if
@ -1771,11 +1774,11 @@
end end
local.get $0 local.get $0
) )
(func $~lib/array/Array<std/array-literal/Ref>#get:length (; 25 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (func $~lib/array/Array<std/array-literal/Ref>#get:length (; 26 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
local.get $0 local.get $0
i32.load offset=12 i32.load offset=12
) )
(func $std/array-literal/RefWithCtor#constructor (; 26 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (func $std/array-literal/RefWithCtor#constructor (; 27 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
local.get $0 local.get $0
i32.eqz i32.eqz
if if
@ -1787,11 +1790,11 @@
end end
local.get $0 local.get $0
) )
(func $~lib/array/Array<std/array-literal/RefWithCtor>#get:length (; 27 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (func $~lib/array/Array<std/array-literal/RefWithCtor>#get:length (; 28 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
local.get $0 local.get $0
i32.load offset=12 i32.load offset=12
) )
(func $~lib/rt/tlsf/freeBlock (; 28 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/rt/tlsf/freeBlock (; 29 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
(local $2 i32) (local $2 i32)
local.get $1 local.get $1
i32.load i32.load
@ -1804,7 +1807,7 @@
if if
i32.const 0 i32.const 0
i32.const 352 i32.const 352
i32.const 530 i32.const 531
i32.const 2 i32.const 2
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1818,9 +1821,9 @@
local.get $1 local.get $1
call $~lib/rt/tlsf/insertBlock call $~lib/rt/tlsf/insertBlock
local.get $1 local.get $1
call $~lib/rt/tlsf/onFree call $~lib/rt/rtrace/onfree
) )
(func $~lib/rt/__typeinfo (; 29 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (func $~lib/rt/__typeinfo (; 30 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
(local $1 i32) (local $1 i32)
global.get $~lib/rt/RTTI_BASE global.get $~lib/rt/RTTI_BASE
local.set $1 local.set $1
@ -1845,7 +1848,7 @@
i32.add i32.add
i32.load i32.load
) )
(func $~lib/rt/pure/growRoots (; 30 ;) (type $FUNCSIG$v) (func $~lib/rt/pure/growRoots (; 31 ;) (type $FUNCSIG$v)
(local $0 i32) (local $0 i32)
(local $1 i32) (local $1 i32)
(local $2 i32) (local $2 i32)
@ -1890,7 +1893,7 @@
i32.add i32.add
global.set $~lib/rt/pure/END global.set $~lib/rt/pure/END
) )
(func $~lib/rt/pure/appendRoot (; 31 ;) (type $FUNCSIG$vi) (param $0 i32) (func $~lib/rt/pure/appendRoot (; 32 ;) (type $FUNCSIG$vi) (param $0 i32)
(local $1 i32) (local $1 i32)
global.get $~lib/rt/pure/CUR global.get $~lib/rt/pure/CUR
local.set $1 local.set $1
@ -1910,7 +1913,7 @@
i32.add i32.add
global.set $~lib/rt/pure/CUR global.set $~lib/rt/pure/CUR
) )
(func $~lib/rt/pure/decrement (; 32 ;) (type $FUNCSIG$vi) (param $0 i32) (func $~lib/rt/pure/decrement (; 33 ;) (type $FUNCSIG$vi) (param $0 i32)
(local $1 i32) (local $1 i32)
(local $2 i32) (local $2 i32)
local.get $0 local.get $0
@ -1921,7 +1924,7 @@
i32.and i32.and
local.set $2 local.set $2
local.get $0 local.get $0
call $~lib/rt/pure/onDecrement call $~lib/rt/rtrace/ondecrement
local.get $0 local.get $0
i32.load i32.load
i32.const 1 i32.const 1
@ -1931,7 +1934,7 @@
if if
i32.const 0 i32.const 0
i32.const 456 i32.const 456
i32.const 114 i32.const 115
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1970,7 +1973,7 @@
if if
i32.const 0 i32.const 0
i32.const 456 i32.const 456
i32.const 123 i32.const 124
i32.const 15 i32.const 15
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -2014,7 +2017,7 @@
end end
end end
) )
(func $~lib/rt/pure/__release (; 33 ;) (type $FUNCSIG$vi) (param $0 i32) (func $~lib/rt/pure/__release (; 34 ;) (type $FUNCSIG$vi) (param $0 i32)
local.get $0 local.get $0
global.get $~lib/heap/HEAP_BASE global.get $~lib/heap/HEAP_BASE
i32.gt_u i32.gt_u
@ -2025,7 +2028,7 @@
call $~lib/rt/pure/decrement call $~lib/rt/pure/decrement
end end
) )
(func $start:std/array-literal (; 34 ;) (type $FUNCSIG$v) (func $start:std/array-literal (; 35 ;) (type $FUNCSIG$v)
(local $0 i32) (local $0 i32)
(local $1 i32) (local $1 i32)
(local $2 i32) (local $2 i32)
@ -2452,16 +2455,16 @@
local.get $7 local.get $7
call $~lib/rt/pure/__release call $~lib/rt/pure/__release
) )
(func $start (; 35 ;) (type $FUNCSIG$v) (func $start (; 36 ;) (type $FUNCSIG$v)
call $start:std/array-literal call $start:std/array-literal
) )
(func $~lib/array/Array<i8>#__visit_impl (; 36 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/array/Array<i8>#__visit_impl (; 37 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
nop nop
) )
(func $~lib/array/Array<i32>#__visit_impl (; 37 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/array/Array<i32>#__visit_impl (; 38 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
nop nop
) )
(func $~lib/rt/pure/markGray (; 38 ;) (type $FUNCSIG$vi) (param $0 i32) (func $~lib/rt/pure/markGray (; 39 ;) (type $FUNCSIG$vi) (param $0 i32)
(local $1 i32) (local $1 i32)
local.get $0 local.get $0
i32.load offset=4 i32.load offset=4
@ -2488,7 +2491,7 @@
call $~lib/rt/__visit_members call $~lib/rt/__visit_members
end end
) )
(func $~lib/rt/pure/scanBlack (; 39 ;) (type $FUNCSIG$vi) (param $0 i32) (func $~lib/rt/pure/scanBlack (; 40 ;) (type $FUNCSIG$vi) (param $0 i32)
local.get $0 local.get $0
local.get $0 local.get $0
i32.load offset=4 i32.load offset=4
@ -2505,7 +2508,7 @@
i32.const 4 i32.const 4
call $~lib/rt/__visit_members call $~lib/rt/__visit_members
) )
(func $~lib/rt/pure/scan (; 40 ;) (type $FUNCSIG$vi) (param $0 i32) (func $~lib/rt/pure/scan (; 41 ;) (type $FUNCSIG$vi) (param $0 i32)
(local $1 i32) (local $1 i32)
local.get $0 local.get $0
i32.load offset=4 i32.load offset=4
@ -2542,7 +2545,7 @@
end end
end end
) )
(func $~lib/rt/pure/collectWhite (; 41 ;) (type $FUNCSIG$vi) (param $0 i32) (func $~lib/rt/pure/collectWhite (; 42 ;) (type $FUNCSIG$vi) (param $0 i32)
(local $1 i32) (local $1 i32)
local.get $0 local.get $0
i32.load offset=4 i32.load offset=4
@ -2571,7 +2574,7 @@
local.get $0 local.get $0
call $~lib/rt/tlsf/freeBlock call $~lib/rt/tlsf/freeBlock
) )
(func $~lib/rt/pure/__visit (; 42 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/rt/pure/__visit (; 43 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
local.get $0 local.get $0
@ -2634,7 +2637,7 @@
if if
i32.const 0 i32.const 0
i32.const 456 i32.const 456
i32.const 74 i32.const 75
i32.const 17 i32.const 17
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -2681,7 +2684,7 @@
if if
i32.const 0 i32.const 0
i32.const 456 i32.const 456
i32.const 85 i32.const 86
i32.const 6 i32.const 6
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -2718,14 +2721,14 @@
if if
i32.const 0 i32.const 0
i32.const 456 i32.const 456
i32.const 96 i32.const 97
i32.const 24 i32.const 24
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
end end
end end
) )
(func $~lib/array/Array<std/array-literal/Ref>#__visit_impl (; 43 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/array/Array<std/array-literal/Ref>#__visit_impl (; 44 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
@ -2761,7 +2764,7 @@
end end
end end
) )
(func $~lib/array/Array<std/array-literal/RefWithCtor>#__visit_impl (; 44 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/array/Array<std/array-literal/RefWithCtor>#__visit_impl (; 45 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
@ -2797,7 +2800,7 @@
end end
end end
) )
(func $~lib/rt/__visit_members (; 45 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/rt/__visit_members (; 46 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
(local $2 i32) (local $2 i32)
block $block$4$break block $block$4$break
block block
@ -2929,6 +2932,6 @@
end end
unreachable unreachable
) )
(func $null (; 46 ;) (type $FUNCSIG$v) (func $null (; 47 ;) (type $FUNCSIG$v)
) )
) )

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -19,9 +19,10 @@
(type $FUNCSIG$vid (func (param i32 f64))) (type $FUNCSIG$vid (func (param i32 f64)))
(type $FUNCSIG$i (func (result i32))) (type $FUNCSIG$i (func (result i32)))
(import "env" "abort" (func $~lib/builtins/abort (param i32 i32 i32 i32))) (import "env" "abort" (func $~lib/builtins/abort (param i32 i32 i32 i32)))
(import "rtrace" "retain" (func $~lib/rt/pure/onIncrement (param i32))) (import "rtrace" "onalloc" (func $~lib/rt/rtrace/onalloc (param i32)))
(import "rtrace" "release" (func $~lib/rt/pure/onDecrement (param i32))) (import "rtrace" "onincrement" (func $~lib/rt/rtrace/onincrement (param i32)))
(import "rtrace" "free" (func $~lib/rt/tlsf/onFree (param i32))) (import "rtrace" "ondecrement" (func $~lib/rt/rtrace/ondecrement (param i32)))
(import "rtrace" "onfree" (func $~lib/rt/rtrace/onfree (param i32)))
(memory $0 1) (memory $0 1)
(data (i32.const 8) "\1e\00\00\00\01\00\00\00\01\00\00\00\1e\00\00\00~\00l\00i\00b\00/\00r\00t\00/\00t\00l\00s\00f\00.\00t\00s") (data (i32.const 8) "\1e\00\00\00\01\00\00\00\01\00\00\00\1e\00\00\00~\00l\00i\00b\00/\00r\00t\00/\00t\00l\00s\00f\00.\00t\00s")
(data (i32.const 56) "(\00\00\00\01\00\00\00\01\00\00\00(\00\00\00a\00l\00l\00o\00c\00a\00t\00i\00o\00n\00 \00t\00o\00o\00 \00l\00a\00r\00g\00e") (data (i32.const 56) "(\00\00\00\01\00\00\00\01\00\00\00(\00\00\00a\00l\00l\00o\00c\00a\00t\00i\00o\00n\00 \00t\00o\00o\00 \00l\00a\00r\00g\00e")
@ -38,7 +39,7 @@
(global $~lib/rt/pure/ROOTS (mut i32) (i32.const 0)) (global $~lib/rt/pure/ROOTS (mut i32) (i32.const 0))
(export "memory" (memory $0)) (export "memory" (memory $0))
(start $start) (start $start)
(func $~lib/rt/tlsf/removeBlock (; 4 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/rt/tlsf/removeBlock (; 5 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
@ -52,7 +53,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 275 i32.const 276
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -74,7 +75,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 277 i32.const 278
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -119,7 +120,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 290 i32.const 291
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -204,7 +205,7 @@
end end
end end
) )
(func $~lib/rt/tlsf/insertBlock (; 5 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/rt/tlsf/insertBlock (; 6 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
@ -216,7 +217,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 203 i32.const 204
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -230,7 +231,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 205 i32.const 206
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -303,7 +304,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 226 i32.const 227
i32.const 15 i32.const 15
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -360,7 +361,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 241 i32.const 242
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -375,7 +376,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 242 i32.const 243
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -425,7 +426,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 258 i32.const 259
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -489,7 +490,7 @@
i32.or i32.or
i32.store offset=4 i32.store offset=4
) )
(func $~lib/rt/tlsf/addMemory (; 6 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) (func $~lib/rt/tlsf/addMemory (; 7 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
local.get $2 local.get $2
@ -511,7 +512,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 384 i32.const 385
i32.const 4 i32.const 4
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -528,7 +529,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 394 i32.const 395
i32.const 15 i32.const 15
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -556,7 +557,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 406 i32.const 407
i32.const 4 i32.const 4
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -603,7 +604,7 @@
local.get $1 local.get $1
call $~lib/rt/tlsf/insertBlock call $~lib/rt/tlsf/insertBlock
) )
(func $~lib/rt/tlsf/initializeRoot (; 7 ;) (type $FUNCSIG$v) (func $~lib/rt/tlsf/initializeRoot (; 8 ;) (type $FUNCSIG$v)
(local $0 i32) (local $0 i32)
(local $1 i32) (local $1 i32)
i32.const 1 i32.const 1
@ -686,14 +687,14 @@
i32.const 512 i32.const 512
global.set $~lib/rt/tlsf/ROOT global.set $~lib/rt/tlsf/ROOT
) )
(func $~lib/rt/tlsf/prepareSize (; 8 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (func $~lib/rt/tlsf/prepareSize (; 9 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
local.get $0 local.get $0
i32.const 1073741808 i32.const 1073741808
i32.ge_u i32.ge_u
if if
i32.const 72 i32.const 72
i32.const 24 i32.const 24
i32.const 446 i32.const 447
i32.const 29 i32.const 29
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -710,7 +711,7 @@
i32.gt_u i32.gt_u
select select
) )
(func $~lib/rt/tlsf/searchBlock (; 9 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (func $~lib/rt/tlsf/searchBlock (; 10 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
(local $2 i32) (local $2 i32)
local.get $1 local.get $1
i32.const 256 i32.const 256
@ -768,7 +769,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 336 i32.const 337
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -820,7 +821,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 349 i32.const 350
i32.const 17 i32.const 17
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -841,7 +842,7 @@
end end
end end
) )
(func $~lib/rt/tlsf/growMemory (; 10 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/rt/tlsf/growMemory (; 11 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
(local $2 i32) (local $2 i32)
memory.size memory.size
local.tee $2 local.tee $2
@ -878,7 +879,7 @@
i32.shl i32.shl
call $~lib/rt/tlsf/addMemory call $~lib/rt/tlsf/addMemory
) )
(func $~lib/rt/tlsf/prepareBlock (; 11 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) (func $~lib/rt/tlsf/prepareBlock (; 12 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
local.get $1 local.get $1
@ -890,7 +891,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 363 i32.const 364
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -954,7 +955,7 @@
i32.store i32.store
end end
) )
(func $~lib/rt/tlsf/allocateBlock (; 12 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (func $~lib/rt/tlsf/allocateBlock (; 13 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
local.get $0 local.get $0
@ -976,7 +977,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 476 i32.const 477
i32.const 15 i32.const 15
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -991,7 +992,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 478 i32.const 479
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1010,8 +1011,10 @@
local.get $3 local.get $3
call $~lib/rt/tlsf/prepareBlock call $~lib/rt/tlsf/prepareBlock
local.get $2 local.get $2
call $~lib/rt/rtrace/onalloc
local.get $2
) )
(func $~lib/rt/tlsf/__alloc (; 13 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (func $~lib/rt/tlsf/__alloc (; 14 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
(local $2 i32) (local $2 i32)
global.get $~lib/rt/tlsf/ROOT global.get $~lib/rt/tlsf/ROOT
local.tee $2 local.tee $2
@ -1030,7 +1033,7 @@
i32.const 16 i32.const 16
i32.add i32.add
) )
(func $~lib/rt/pure/increment (; 14 ;) (type $FUNCSIG$vi) (param $0 i32) (func $~lib/rt/pure/increment (; 15 ;) (type $FUNCSIG$vi) (param $0 i32)
(local $1 i32) (local $1 i32)
local.get $0 local.get $0
i32.load offset=4 i32.load offset=4
@ -1046,7 +1049,7 @@
if if
i32.const 0 i32.const 0
i32.const 128 i32.const 128
i32.const 103 i32.const 104
i32.const 2 i32.const 2
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1057,7 +1060,7 @@
i32.add i32.add
i32.store offset=4 i32.store offset=4
local.get $0 local.get $0
call $~lib/rt/pure/onIncrement call $~lib/rt/rtrace/onincrement
local.get $0 local.get $0
i32.load i32.load
i32.const 1 i32.const 1
@ -1065,13 +1068,13 @@
if if
i32.const 0 i32.const 0
i32.const 128 i32.const 128
i32.const 106 i32.const 107
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
end end
) )
(func $~lib/rt/pure/__retain (; 15 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (func $~lib/rt/pure/__retain (; 16 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
local.get $0 local.get $0
i32.const 508 i32.const 508
i32.gt_u i32.gt_u
@ -1083,7 +1086,7 @@
end end
local.get $0 local.get $0
) )
(func $~lib/memory/memory.fill (; 16 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/memory/memory.fill (; 17 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
(local $2 i32) (local $2 i32)
block $~lib/util/memory/memset|inlined.0 block $~lib/util/memory/memset|inlined.0
local.get $1 local.get $1
@ -1294,7 +1297,7 @@
end end
end end
) )
(func $~lib/arraybuffer/ArrayBuffer#constructor (; 17 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (func $~lib/arraybuffer/ArrayBuffer#constructor (; 18 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
(local $1 i32) (local $1 i32)
local.get $0 local.get $0
i32.const 1073741808 i32.const 1073741808
@ -1316,7 +1319,7 @@
local.get $1 local.get $1
call $~lib/rt/pure/__retain call $~lib/rt/pure/__retain
) )
(func $~lib/rt/tlsf/freeBlock (; 18 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/rt/tlsf/freeBlock (; 19 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
(local $2 i32) (local $2 i32)
local.get $1 local.get $1
i32.load i32.load
@ -1326,7 +1329,7 @@
if if
i32.const 0 i32.const 0
i32.const 24 i32.const 24
i32.const 530 i32.const 531
i32.const 2 i32.const 2
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1340,9 +1343,9 @@
local.get $1 local.get $1
call $~lib/rt/tlsf/insertBlock call $~lib/rt/tlsf/insertBlock
local.get $1 local.get $1
call $~lib/rt/tlsf/onFree call $~lib/rt/rtrace/onfree
) )
(func $~lib/rt/__typeinfo (; 19 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (func $~lib/rt/__typeinfo (; 20 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
local.get $0 local.get $0
i32.const 400 i32.const 400
i32.load i32.load
@ -1362,7 +1365,7 @@
i32.add i32.add
i32.load i32.load
) )
(func $~lib/memory/memory.copy (; 20 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) (func $~lib/memory/memory.copy (; 21 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
block $~lib/util/memory/memmove|inlined.0 block $~lib/util/memory/memmove|inlined.0
@ -1535,7 +1538,7 @@
end end
end end
) )
(func $~lib/rt/pure/growRoots (; 21 ;) (type $FUNCSIG$v) (func $~lib/rt/pure/growRoots (; 22 ;) (type $FUNCSIG$v)
(local $0 i32) (local $0 i32)
(local $1 i32) (local $1 i32)
(local $2 i32) (local $2 i32)
@ -1571,7 +1574,7 @@
i32.add i32.add
global.set $~lib/rt/pure/END global.set $~lib/rt/pure/END
) )
(func $~lib/rt/pure/appendRoot (; 22 ;) (type $FUNCSIG$vi) (param $0 i32) (func $~lib/rt/pure/appendRoot (; 23 ;) (type $FUNCSIG$vi) (param $0 i32)
(local $1 i32) (local $1 i32)
global.get $~lib/rt/pure/CUR global.get $~lib/rt/pure/CUR
local.tee $1 local.tee $1
@ -1590,7 +1593,7 @@
i32.add i32.add
global.set $~lib/rt/pure/CUR global.set $~lib/rt/pure/CUR
) )
(func $~lib/rt/pure/decrement (; 23 ;) (type $FUNCSIG$vi) (param $0 i32) (func $~lib/rt/pure/decrement (; 24 ;) (type $FUNCSIG$vi) (param $0 i32)
(local $1 i32) (local $1 i32)
(local $2 i32) (local $2 i32)
local.get $0 local.get $0
@ -1600,7 +1603,7 @@
i32.and i32.and
local.set $1 local.set $1
local.get $0 local.get $0
call $~lib/rt/pure/onDecrement call $~lib/rt/rtrace/ondecrement
local.get $0 local.get $0
i32.load i32.load
i32.const 1 i32.const 1
@ -1608,7 +1611,7 @@
if if
i32.const 0 i32.const 0
i32.const 128 i32.const 128
i32.const 114 i32.const 115
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1641,7 +1644,7 @@
if if
i32.const 0 i32.const 0
i32.const 128 i32.const 128
i32.const 123 i32.const 124
i32.const 15 i32.const 15
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1680,7 +1683,7 @@
end end
end end
) )
(func $~lib/rt/pure/__skippedRelease (; 24 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (func $~lib/rt/pure/__skippedRelease (; 25 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
local.get $0 local.get $0
i32.const 508 i32.const 508
i32.gt_u i32.gt_u
@ -1692,7 +1695,7 @@
end end
local.get $1 local.get $1
) )
(func $~lib/set/Set<i8>#clear (; 25 ;) (type $FUNCSIG$vi) (param $0 i32) (func $~lib/set/Set<i8>#clear (; 26 ;) (type $FUNCSIG$vi) (param $0 i32)
local.get $0 local.get $0
local.get $0 local.get $0
i32.load i32.load
@ -1720,7 +1723,7 @@
i32.const 0 i32.const 0
i32.store offset=20 i32.store offset=20
) )
(func $~lib/set/Set<i8>#constructor (; 26 ;) (type $FUNCSIG$i) (result i32) (func $~lib/set/Set<i8>#constructor (; 27 ;) (type $FUNCSIG$i) (result i32)
(local $0 i32) (local $0 i32)
i32.const 24 i32.const 24
i32.const 3 i32.const 3
@ -1748,7 +1751,7 @@
call $~lib/set/Set<i8>#clear call $~lib/set/Set<i8>#clear
local.get $0 local.get $0
) )
(func $~lib/set/Set<i8>#find (; 27 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (func $~lib/set/Set<i8>#find (; 28 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32)
local.get $0 local.get $0
i32.load i32.load
local.get $0 local.get $0
@ -1791,7 +1794,7 @@
end end
i32.const 0 i32.const 0
) )
(func $~lib/set/Set<i8>#has (; 28 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (func $~lib/set/Set<i8>#has (; 29 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
local.get $0 local.get $0
local.get $1 local.get $1
local.get $1 local.get $1
@ -1807,7 +1810,7 @@
i32.const 0 i32.const 0
i32.ne i32.ne
) )
(func $~lib/rt/pure/__retainRelease (; 29 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (func $~lib/rt/pure/__retainRelease (; 30 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
local.get $0 local.get $0
local.get $1 local.get $1
i32.ne i32.ne
@ -1833,7 +1836,7 @@
end end
local.get $1 local.get $1
) )
(func $~lib/rt/pure/__release (; 30 ;) (type $FUNCSIG$vi) (param $0 i32) (func $~lib/rt/pure/__release (; 31 ;) (type $FUNCSIG$vi) (param $0 i32)
local.get $0 local.get $0
i32.const 508 i32.const 508
i32.gt_u i32.gt_u
@ -1844,7 +1847,7 @@
call $~lib/rt/pure/decrement call $~lib/rt/pure/decrement
end end
) )
(func $~lib/set/Set<i8>#rehash (; 31 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/set/Set<i8>#rehash (; 32 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
@ -1954,7 +1957,7 @@
local.get $5 local.get $5
call $~lib/rt/pure/__release call $~lib/rt/pure/__release
) )
(func $~lib/set/Set<i8>#add (; 32 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/set/Set<i8>#add (; 33 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
@ -2046,7 +2049,7 @@
i32.store i32.store
end end
) )
(func $~lib/set/Set<i8>#delete (; 33 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/set/Set<i8>#delete (; 34 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
(local $2 i32) (local $2 i32)
local.get $0 local.get $0
local.get $1 local.get $1
@ -2112,7 +2115,7 @@
call $~lib/set/Set<i8>#rehash call $~lib/set/Set<i8>#rehash
end end
) )
(func $std/set/testNumeric<i8> (; 34 ;) (type $FUNCSIG$v) (func $std/set/testNumeric<i8> (; 35 ;) (type $FUNCSIG$v)
(local $0 i32) (local $0 i32)
(local $1 i32) (local $1 i32)
call $~lib/set/Set<i8>#constructor call $~lib/set/Set<i8>#constructor
@ -2359,7 +2362,7 @@
local.get $1 local.get $1
call $~lib/rt/pure/__release call $~lib/rt/pure/__release
) )
(func $~lib/set/Set<u8>#constructor (; 35 ;) (type $FUNCSIG$i) (result i32) (func $~lib/set/Set<u8>#constructor (; 36 ;) (type $FUNCSIG$i) (result i32)
(local $0 i32) (local $0 i32)
i32.const 24 i32.const 24
i32.const 4 i32.const 4
@ -2387,7 +2390,7 @@
call $~lib/set/Set<i8>#clear call $~lib/set/Set<i8>#clear
local.get $0 local.get $0
) )
(func $~lib/set/Set<u8>#has (; 36 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (func $~lib/set/Set<u8>#has (; 37 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
local.get $0 local.get $0
local.get $1 local.get $1
local.get $1 local.get $1
@ -2401,7 +2404,7 @@
i32.const 0 i32.const 0
i32.ne i32.ne
) )
(func $~lib/set/Set<u8>#rehash (; 37 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/set/Set<u8>#rehash (; 38 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
@ -2511,7 +2514,7 @@
local.get $5 local.get $5
call $~lib/rt/pure/__release call $~lib/rt/pure/__release
) )
(func $~lib/set/Set<u8>#add (; 38 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/set/Set<u8>#add (; 39 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
@ -2601,7 +2604,7 @@
i32.store i32.store
end end
) )
(func $~lib/set/Set<u8>#delete (; 39 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/set/Set<u8>#delete (; 40 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
(local $2 i32) (local $2 i32)
local.get $0 local.get $0
local.get $1 local.get $1
@ -2665,7 +2668,7 @@
call $~lib/set/Set<u8>#rehash call $~lib/set/Set<u8>#rehash
end end
) )
(func $std/set/testNumeric<u8> (; 40 ;) (type $FUNCSIG$v) (func $std/set/testNumeric<u8> (; 41 ;) (type $FUNCSIG$v)
(local $0 i32) (local $0 i32)
(local $1 i32) (local $1 i32)
call $~lib/set/Set<u8>#constructor call $~lib/set/Set<u8>#constructor
@ -2912,7 +2915,7 @@
local.get $1 local.get $1
call $~lib/rt/pure/__release call $~lib/rt/pure/__release
) )
(func $~lib/set/Set<i16>#constructor (; 41 ;) (type $FUNCSIG$i) (result i32) (func $~lib/set/Set<i16>#constructor (; 42 ;) (type $FUNCSIG$i) (result i32)
(local $0 i32) (local $0 i32)
i32.const 24 i32.const 24
i32.const 5 i32.const 5
@ -2940,7 +2943,7 @@
call $~lib/set/Set<i8>#clear call $~lib/set/Set<i8>#clear
local.get $0 local.get $0
) )
(func $~lib/set/Set<i16>#find (; 42 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (func $~lib/set/Set<i16>#find (; 43 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32)
local.get $0 local.get $0
i32.load i32.load
local.get $0 local.get $0
@ -2983,7 +2986,7 @@
end end
i32.const 0 i32.const 0
) )
(func $~lib/set/Set<i16>#has (; 43 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (func $~lib/set/Set<i16>#has (; 44 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
local.get $0 local.get $0
local.get $1 local.get $1
local.get $1 local.get $1
@ -3008,7 +3011,7 @@
i32.const 0 i32.const 0
i32.ne i32.ne
) )
(func $~lib/set/Set<i16>#rehash (; 44 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/set/Set<i16>#rehash (; 45 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
@ -3127,7 +3130,7 @@
local.get $5 local.get $5
call $~lib/rt/pure/__release call $~lib/rt/pure/__release
) )
(func $~lib/set/Set<i16>#add (; 45 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/set/Set<i16>#add (; 46 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
@ -3228,7 +3231,7 @@
i32.store i32.store
end end
) )
(func $~lib/set/Set<i16>#delete (; 46 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/set/Set<i16>#delete (; 47 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
(local $2 i32) (local $2 i32)
local.get $0 local.get $0
local.get $1 local.get $1
@ -3303,7 +3306,7 @@
call $~lib/set/Set<i16>#rehash call $~lib/set/Set<i16>#rehash
end end
) )
(func $std/set/testNumeric<i16> (; 47 ;) (type $FUNCSIG$v) (func $std/set/testNumeric<i16> (; 48 ;) (type $FUNCSIG$v)
(local $0 i32) (local $0 i32)
(local $1 i32) (local $1 i32)
call $~lib/set/Set<i16>#constructor call $~lib/set/Set<i16>#constructor
@ -3550,7 +3553,7 @@
local.get $1 local.get $1
call $~lib/rt/pure/__release call $~lib/rt/pure/__release
) )
(func $~lib/set/Set<u16>#constructor (; 48 ;) (type $FUNCSIG$i) (result i32) (func $~lib/set/Set<u16>#constructor (; 49 ;) (type $FUNCSIG$i) (result i32)
(local $0 i32) (local $0 i32)
i32.const 24 i32.const 24
i32.const 6 i32.const 6
@ -3578,7 +3581,7 @@
call $~lib/set/Set<i8>#clear call $~lib/set/Set<i8>#clear
local.get $0 local.get $0
) )
(func $~lib/set/Set<u16>#has (; 49 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (func $~lib/set/Set<u16>#has (; 50 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
local.get $0 local.get $0
local.get $1 local.get $1
local.get $1 local.get $1
@ -3601,7 +3604,7 @@
i32.const 0 i32.const 0
i32.ne i32.ne
) )
(func $~lib/set/Set<u16>#rehash (; 50 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/set/Set<u16>#rehash (; 51 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
@ -3720,7 +3723,7 @@
local.get $5 local.get $5
call $~lib/rt/pure/__release call $~lib/rt/pure/__release
) )
(func $~lib/set/Set<u16>#add (; 51 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/set/Set<u16>#add (; 52 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
@ -3819,7 +3822,7 @@
i32.store i32.store
end end
) )
(func $~lib/set/Set<u16>#delete (; 52 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/set/Set<u16>#delete (; 53 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
(local $2 i32) (local $2 i32)
local.get $0 local.get $0
local.get $1 local.get $1
@ -3892,7 +3895,7 @@
call $~lib/set/Set<u16>#rehash call $~lib/set/Set<u16>#rehash
end end
) )
(func $std/set/testNumeric<u16> (; 53 ;) (type $FUNCSIG$v) (func $std/set/testNumeric<u16> (; 54 ;) (type $FUNCSIG$v)
(local $0 i32) (local $0 i32)
(local $1 i32) (local $1 i32)
call $~lib/set/Set<u16>#constructor call $~lib/set/Set<u16>#constructor
@ -4139,7 +4142,7 @@
local.get $1 local.get $1
call $~lib/rt/pure/__release call $~lib/rt/pure/__release
) )
(func $~lib/set/Set<i32>#constructor (; 54 ;) (type $FUNCSIG$i) (result i32) (func $~lib/set/Set<i32>#constructor (; 55 ;) (type $FUNCSIG$i) (result i32)
(local $0 i32) (local $0 i32)
i32.const 24 i32.const 24
i32.const 7 i32.const 7
@ -4167,7 +4170,7 @@
call $~lib/set/Set<i8>#clear call $~lib/set/Set<i8>#clear
local.get $0 local.get $0
) )
(func $~lib/util/hash/hash32 (; 55 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (func $~lib/util/hash/hash32 (; 56 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
local.get $0 local.get $0
i32.const 255 i32.const 255
i32.and i32.and
@ -4198,7 +4201,7 @@
i32.const 16777619 i32.const 16777619
i32.mul i32.mul
) )
(func $~lib/set/Set<i32>#find (; 56 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (func $~lib/set/Set<i32>#find (; 57 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32)
local.get $0 local.get $0
i32.load i32.load
local.get $0 local.get $0
@ -4239,7 +4242,7 @@
end end
i32.const 0 i32.const 0
) )
(func $~lib/set/Set<i32>#has (; 57 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (func $~lib/set/Set<i32>#has (; 58 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
local.get $0 local.get $0
local.get $1 local.get $1
local.get $1 local.get $1
@ -4248,7 +4251,7 @@
i32.const 0 i32.const 0
i32.ne i32.ne
) )
(func $~lib/set/Set<i32>#rehash (; 58 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/set/Set<i32>#rehash (; 59 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
@ -4355,7 +4358,7 @@
local.get $5 local.get $5
call $~lib/rt/pure/__release call $~lib/rt/pure/__release
) )
(func $~lib/set/Set<i32>#add (; 59 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/set/Set<i32>#add (; 60 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
@ -4438,7 +4441,7 @@
i32.store i32.store
end end
) )
(func $~lib/set/Set<i32>#delete (; 60 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/set/Set<i32>#delete (; 61 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
(local $2 i32) (local $2 i32)
local.get $0 local.get $0
local.get $1 local.get $1
@ -4497,7 +4500,7 @@
call $~lib/set/Set<i32>#rehash call $~lib/set/Set<i32>#rehash
end end
) )
(func $std/set/testNumeric<i32> (; 61 ;) (type $FUNCSIG$v) (func $std/set/testNumeric<i32> (; 62 ;) (type $FUNCSIG$v)
(local $0 i32) (local $0 i32)
(local $1 i32) (local $1 i32)
call $~lib/set/Set<i32>#constructor call $~lib/set/Set<i32>#constructor
@ -4744,7 +4747,7 @@
local.get $1 local.get $1
call $~lib/rt/pure/__release call $~lib/rt/pure/__release
) )
(func $~lib/set/Set<u32>#constructor (; 62 ;) (type $FUNCSIG$i) (result i32) (func $~lib/set/Set<u32>#constructor (; 63 ;) (type $FUNCSIG$i) (result i32)
(local $0 i32) (local $0 i32)
i32.const 24 i32.const 24
i32.const 8 i32.const 8
@ -4772,7 +4775,7 @@
call $~lib/set/Set<i8>#clear call $~lib/set/Set<i8>#clear
local.get $0 local.get $0
) )
(func $std/set/testNumeric<u32> (; 63 ;) (type $FUNCSIG$v) (func $std/set/testNumeric<u32> (; 64 ;) (type $FUNCSIG$v)
(local $0 i32) (local $0 i32)
(local $1 i32) (local $1 i32)
call $~lib/set/Set<u32>#constructor call $~lib/set/Set<u32>#constructor
@ -5019,7 +5022,7 @@
local.get $1 local.get $1
call $~lib/rt/pure/__release call $~lib/rt/pure/__release
) )
(func $~lib/set/Set<i64>#clear (; 64 ;) (type $FUNCSIG$vi) (param $0 i32) (func $~lib/set/Set<i64>#clear (; 65 ;) (type $FUNCSIG$vi) (param $0 i32)
local.get $0 local.get $0
local.get $0 local.get $0
i32.load i32.load
@ -5047,7 +5050,7 @@
i32.const 0 i32.const 0
i32.store offset=20 i32.store offset=20
) )
(func $~lib/set/Set<i64>#constructor (; 65 ;) (type $FUNCSIG$i) (result i32) (func $~lib/set/Set<i64>#constructor (; 66 ;) (type $FUNCSIG$i) (result i32)
(local $0 i32) (local $0 i32)
i32.const 24 i32.const 24
i32.const 9 i32.const 9
@ -5075,7 +5078,7 @@
call $~lib/set/Set<i64>#clear call $~lib/set/Set<i64>#clear
local.get $0 local.get $0
) )
(func $~lib/util/hash/hash64 (; 66 ;) (type $FUNCSIG$ij) (param $0 i64) (result i32) (func $~lib/util/hash/hash64 (; 67 ;) (type $FUNCSIG$ij) (param $0 i64) (result i32)
(local $1 i32) (local $1 i32)
local.get $0 local.get $0
i32.wrap_i64 i32.wrap_i64
@ -5141,7 +5144,7 @@
i32.const 16777619 i32.const 16777619
i32.mul i32.mul
) )
(func $~lib/set/Set<i64>#find (; 67 ;) (type $FUNCSIG$iiji) (param $0 i32) (param $1 i64) (param $2 i32) (result i32) (func $~lib/set/Set<i64>#find (; 68 ;) (type $FUNCSIG$iiji) (param $0 i32) (param $1 i64) (param $2 i32) (result i32)
local.get $0 local.get $0
i32.load i32.load
local.get $0 local.get $0
@ -5182,7 +5185,7 @@
end end
i32.const 0 i32.const 0
) )
(func $~lib/set/Set<i64>#has (; 68 ;) (type $FUNCSIG$iij) (param $0 i32) (param $1 i64) (result i32) (func $~lib/set/Set<i64>#has (; 69 ;) (type $FUNCSIG$iij) (param $0 i32) (param $1 i64) (result i32)
local.get $0 local.get $0
local.get $1 local.get $1
local.get $1 local.get $1
@ -5191,7 +5194,7 @@
i32.const 0 i32.const 0
i32.ne i32.ne
) )
(func $~lib/set/Set<i64>#rehash (; 69 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/set/Set<i64>#rehash (; 70 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
@ -5298,7 +5301,7 @@
local.get $5 local.get $5
call $~lib/rt/pure/__release call $~lib/rt/pure/__release
) )
(func $~lib/set/Set<i64>#add (; 70 ;) (type $FUNCSIG$vij) (param $0 i32) (param $1 i64) (func $~lib/set/Set<i64>#add (; 71 ;) (type $FUNCSIG$vij) (param $0 i32) (param $1 i64)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
@ -5381,7 +5384,7 @@
i32.store i32.store
end end
) )
(func $~lib/set/Set<i64>#delete (; 71 ;) (type $FUNCSIG$vij) (param $0 i32) (param $1 i64) (func $~lib/set/Set<i64>#delete (; 72 ;) (type $FUNCSIG$vij) (param $0 i32) (param $1 i64)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
local.get $0 local.get $0
@ -5441,7 +5444,7 @@
call $~lib/set/Set<i64>#rehash call $~lib/set/Set<i64>#rehash
end end
) )
(func $std/set/testNumeric<i64> (; 72 ;) (type $FUNCSIG$v) (func $std/set/testNumeric<i64> (; 73 ;) (type $FUNCSIG$v)
(local $0 i64) (local $0 i64)
(local $1 i32) (local $1 i32)
call $~lib/set/Set<i64>#constructor call $~lib/set/Set<i64>#constructor
@ -5688,7 +5691,7 @@
local.get $1 local.get $1
call $~lib/rt/pure/__release call $~lib/rt/pure/__release
) )
(func $~lib/set/Set<u64>#constructor (; 73 ;) (type $FUNCSIG$i) (result i32) (func $~lib/set/Set<u64>#constructor (; 74 ;) (type $FUNCSIG$i) (result i32)
(local $0 i32) (local $0 i32)
i32.const 24 i32.const 24
i32.const 10 i32.const 10
@ -5716,7 +5719,7 @@
call $~lib/set/Set<i64>#clear call $~lib/set/Set<i64>#clear
local.get $0 local.get $0
) )
(func $std/set/testNumeric<u64> (; 74 ;) (type $FUNCSIG$v) (func $std/set/testNumeric<u64> (; 75 ;) (type $FUNCSIG$v)
(local $0 i64) (local $0 i64)
(local $1 i32) (local $1 i32)
call $~lib/set/Set<u64>#constructor call $~lib/set/Set<u64>#constructor
@ -5963,7 +5966,7 @@
local.get $1 local.get $1
call $~lib/rt/pure/__release call $~lib/rt/pure/__release
) )
(func $~lib/set/Set<f32>#constructor (; 75 ;) (type $FUNCSIG$i) (result i32) (func $~lib/set/Set<f32>#constructor (; 76 ;) (type $FUNCSIG$i) (result i32)
(local $0 i32) (local $0 i32)
i32.const 24 i32.const 24
i32.const 11 i32.const 11
@ -5991,7 +5994,7 @@
call $~lib/set/Set<i8>#clear call $~lib/set/Set<i8>#clear
local.get $0 local.get $0
) )
(func $~lib/set/Set<f32>#find (; 76 ;) (type $FUNCSIG$iifi) (param $0 i32) (param $1 f32) (param $2 i32) (result i32) (func $~lib/set/Set<f32>#find (; 77 ;) (type $FUNCSIG$iifi) (param $0 i32) (param $1 f32) (param $2 i32) (result i32)
local.get $0 local.get $0
i32.load i32.load
local.get $0 local.get $0
@ -6032,7 +6035,7 @@
end end
i32.const 0 i32.const 0
) )
(func $~lib/set/Set<f32>#has (; 77 ;) (type $FUNCSIG$iif) (param $0 i32) (param $1 f32) (result i32) (func $~lib/set/Set<f32>#has (; 78 ;) (type $FUNCSIG$iif) (param $0 i32) (param $1 f32) (result i32)
local.get $0 local.get $0
local.get $1 local.get $1
local.get $1 local.get $1
@ -6042,7 +6045,7 @@
i32.const 0 i32.const 0
i32.ne i32.ne
) )
(func $~lib/set/Set<f32>#rehash (; 78 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/set/Set<f32>#rehash (; 79 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
@ -6150,7 +6153,7 @@
local.get $5 local.get $5
call $~lib/rt/pure/__release call $~lib/rt/pure/__release
) )
(func $~lib/set/Set<f32>#add (; 79 ;) (type $FUNCSIG$vif) (param $0 i32) (param $1 f32) (func $~lib/set/Set<f32>#add (; 80 ;) (type $FUNCSIG$vif) (param $0 i32) (param $1 f32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
@ -6234,7 +6237,7 @@
i32.store i32.store
end end
) )
(func $~lib/set/Set<f32>#delete (; 80 ;) (type $FUNCSIG$vif) (param $0 i32) (param $1 f32) (func $~lib/set/Set<f32>#delete (; 81 ;) (type $FUNCSIG$vif) (param $0 i32) (param $1 f32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
local.get $0 local.get $0
@ -6295,7 +6298,7 @@
call $~lib/set/Set<f32>#rehash call $~lib/set/Set<f32>#rehash
end end
) )
(func $std/set/testNumeric<f32> (; 81 ;) (type $FUNCSIG$v) (func $std/set/testNumeric<f32> (; 82 ;) (type $FUNCSIG$v)
(local $0 f32) (local $0 f32)
(local $1 i32) (local $1 i32)
call $~lib/set/Set<f32>#constructor call $~lib/set/Set<f32>#constructor
@ -6542,7 +6545,7 @@
local.get $1 local.get $1
call $~lib/rt/pure/__release call $~lib/rt/pure/__release
) )
(func $~lib/set/Set<f64>#constructor (; 82 ;) (type $FUNCSIG$i) (result i32) (func $~lib/set/Set<f64>#constructor (; 83 ;) (type $FUNCSIG$i) (result i32)
(local $0 i32) (local $0 i32)
i32.const 24 i32.const 24
i32.const 12 i32.const 12
@ -6570,7 +6573,7 @@
call $~lib/set/Set<i64>#clear call $~lib/set/Set<i64>#clear
local.get $0 local.get $0
) )
(func $~lib/set/Set<f64>#find (; 83 ;) (type $FUNCSIG$iidi) (param $0 i32) (param $1 f64) (param $2 i32) (result i32) (func $~lib/set/Set<f64>#find (; 84 ;) (type $FUNCSIG$iidi) (param $0 i32) (param $1 f64) (param $2 i32) (result i32)
local.get $0 local.get $0
i32.load i32.load
local.get $0 local.get $0
@ -6611,7 +6614,7 @@
end end
i32.const 0 i32.const 0
) )
(func $~lib/set/Set<f64>#has (; 84 ;) (type $FUNCSIG$iid) (param $0 i32) (param $1 f64) (result i32) (func $~lib/set/Set<f64>#has (; 85 ;) (type $FUNCSIG$iid) (param $0 i32) (param $1 f64) (result i32)
local.get $0 local.get $0
local.get $1 local.get $1
local.get $1 local.get $1
@ -6621,7 +6624,7 @@
i32.const 0 i32.const 0
i32.ne i32.ne
) )
(func $~lib/set/Set<f64>#rehash (; 85 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/set/Set<f64>#rehash (; 86 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
@ -6729,7 +6732,7 @@
local.get $5 local.get $5
call $~lib/rt/pure/__release call $~lib/rt/pure/__release
) )
(func $~lib/set/Set<f64>#add (; 86 ;) (type $FUNCSIG$vid) (param $0 i32) (param $1 f64) (func $~lib/set/Set<f64>#add (; 87 ;) (type $FUNCSIG$vid) (param $0 i32) (param $1 f64)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
@ -6813,7 +6816,7 @@
i32.store i32.store
end end
) )
(func $~lib/set/Set<f64>#delete (; 87 ;) (type $FUNCSIG$vid) (param $0 i32) (param $1 f64) (func $~lib/set/Set<f64>#delete (; 88 ;) (type $FUNCSIG$vid) (param $0 i32) (param $1 f64)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
local.get $0 local.get $0
@ -6874,7 +6877,7 @@
call $~lib/set/Set<f64>#rehash call $~lib/set/Set<f64>#rehash
end end
) )
(func $std/set/testNumeric<f64> (; 88 ;) (type $FUNCSIG$v) (func $std/set/testNumeric<f64> (; 89 ;) (type $FUNCSIG$v)
(local $0 f64) (local $0 f64)
(local $1 i32) (local $1 i32)
call $~lib/set/Set<f64>#constructor call $~lib/set/Set<f64>#constructor
@ -7121,7 +7124,7 @@
local.get $1 local.get $1
call $~lib/rt/pure/__release call $~lib/rt/pure/__release
) )
(func $start (; 89 ;) (type $FUNCSIG$v) (func $start (; 90 ;) (type $FUNCSIG$v)
call $std/set/testNumeric<i8> call $std/set/testNumeric<i8>
call $std/set/testNumeric<u8> call $std/set/testNumeric<u8>
call $std/set/testNumeric<i16> call $std/set/testNumeric<i16>
@ -7133,7 +7136,7 @@
call $std/set/testNumeric<f32> call $std/set/testNumeric<f32>
call $std/set/testNumeric<f64> call $std/set/testNumeric<f64>
) )
(func $~lib/rt/pure/markGray (; 90 ;) (type $FUNCSIG$vi) (param $0 i32) (func $~lib/rt/pure/markGray (; 91 ;) (type $FUNCSIG$vi) (param $0 i32)
(local $1 i32) (local $1 i32)
local.get $0 local.get $0
i32.load offset=4 i32.load offset=4
@ -7157,7 +7160,7 @@
call $~lib/rt/__visit_members call $~lib/rt/__visit_members
end end
) )
(func $~lib/rt/pure/scanBlack (; 91 ;) (type $FUNCSIG$vi) (param $0 i32) (func $~lib/rt/pure/scanBlack (; 92 ;) (type $FUNCSIG$vi) (param $0 i32)
local.get $0 local.get $0
local.get $0 local.get $0
i32.load offset=4 i32.load offset=4
@ -7170,7 +7173,7 @@
i32.const 4 i32.const 4
call $~lib/rt/__visit_members call $~lib/rt/__visit_members
) )
(func $~lib/rt/pure/scan (; 92 ;) (type $FUNCSIG$vi) (param $0 i32) (func $~lib/rt/pure/scan (; 93 ;) (type $FUNCSIG$vi) (param $0 i32)
(local $1 i32) (local $1 i32)
local.get $0 local.get $0
i32.load offset=4 i32.load offset=4
@ -7204,7 +7207,7 @@
end end
end end
) )
(func $~lib/rt/pure/collectWhite (; 93 ;) (type $FUNCSIG$vi) (param $0 i32) (func $~lib/rt/pure/collectWhite (; 94 ;) (type $FUNCSIG$vi) (param $0 i32)
(local $1 i32) (local $1 i32)
local.get $0 local.get $0
i32.load offset=4 i32.load offset=4
@ -7232,7 +7235,7 @@
local.get $0 local.get $0
call $~lib/rt/tlsf/freeBlock call $~lib/rt/tlsf/freeBlock
) )
(func $~lib/rt/pure/__visit (; 94 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/rt/pure/__visit (; 95 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
local.get $0 local.get $0
i32.const 508 i32.const 508
i32.lt_u i32.lt_u
@ -7278,7 +7281,7 @@
if if
i32.const 0 i32.const 0
i32.const 128 i32.const 128
i32.const 74 i32.const 75
i32.const 17 i32.const 17
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -7311,7 +7314,7 @@
if if
i32.const 0 i32.const 0
i32.const 128 i32.const 128
i32.const 85 i32.const 86
i32.const 6 i32.const 6
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -7336,13 +7339,13 @@
end end
i32.const 0 i32.const 0
i32.const 128 i32.const 128
i32.const 96 i32.const 97
i32.const 24 i32.const 24
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
end end
) )
(func $~lib/rt/__visit_members (; 95 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/rt/__visit_members (; 96 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
block $folding-inner0 block $folding-inner0
block $switch$1$default block $switch$1$default
block $switch$1$case$4 block $switch$1$case$4
@ -7376,7 +7379,7 @@
local.get $1 local.get $1
call $~lib/rt/pure/__visit call $~lib/rt/pure/__visit
) )
(func $null (; 96 ;) (type $FUNCSIG$v) (func $null (; 97 ;) (type $FUNCSIG$v)
nop nop
) )
) )

File diff suppressed because it is too large Load Diff

View File

@ -16,9 +16,10 @@
(type $FUNCSIG$i (func (result i32))) (type $FUNCSIG$i (func (result i32)))
(type $FUNCSIG$iiiii (func (param i32 i32 i32 i32) (result i32))) (type $FUNCSIG$iiiii (func (param i32 i32 i32 i32) (result i32)))
(import "env" "abort" (func $~lib/builtins/abort (param i32 i32 i32 i32))) (import "env" "abort" (func $~lib/builtins/abort (param i32 i32 i32 i32)))
(import "rtrace" "retain" (func $~lib/rt/pure/onIncrement (param i32))) (import "rtrace" "onincrement" (func $~lib/rt/rtrace/onincrement (param i32)))
(import "rtrace" "release" (func $~lib/rt/pure/onDecrement (param i32))) (import "rtrace" "ondecrement" (func $~lib/rt/rtrace/ondecrement (param i32)))
(import "rtrace" "free" (func $~lib/rt/tlsf/onFree (param i32))) (import "rtrace" "onfree" (func $~lib/rt/rtrace/onfree (param i32)))
(import "rtrace" "onalloc" (func $~lib/rt/rtrace/onalloc (param i32)))
(memory $0 1) (memory $0 1)
(data (i32.const 8) " \00\00\00\01\00\00\00\01\00\00\00 \00\00\00h\00i\00,\00 \00I\00\'\00m\00 \00a\00 \00s\00t\00r\00i\00n\00g") (data (i32.const 8) " \00\00\00\01\00\00\00\01\00\00\00 \00\00\00h\00i\00,\00 \00I\00\'\00m\00 \00a\00 \00s\00t\00r\00i\00n\00g")
(data (i32.const 56) "\1a\00\00\00\01\00\00\00\01\00\00\00\1a\00\00\00s\00t\00d\00/\00s\00t\00r\00i\00n\00g\00.\00t\00s") (data (i32.const 56) "\1a\00\00\00\01\00\00\00\01\00\00\00\1a\00\00\00s\00t\00d\00/\00s\00t\00r\00i\00n\00g\00.\00t\00s")
@ -192,7 +193,7 @@
(export "memory" (memory $0)) (export "memory" (memory $0))
(export "getString" (func $std/string/getString)) (export "getString" (func $std/string/getString))
(start $start) (start $start)
(func $~lib/rt/pure/increment (; 4 ;) (type $FUNCSIG$vi) (param $0 i32) (func $~lib/rt/pure/increment (; 5 ;) (type $FUNCSIG$vi) (param $0 i32)
(local $1 i32) (local $1 i32)
local.get $0 local.get $0
i32.load offset=4 i32.load offset=4
@ -208,7 +209,7 @@
if if
i32.const 0 i32.const 0
i32.const 136 i32.const 136
i32.const 103 i32.const 104
i32.const 2 i32.const 2
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -219,7 +220,7 @@
i32.add i32.add
i32.store offset=4 i32.store offset=4
local.get $0 local.get $0
call $~lib/rt/pure/onIncrement call $~lib/rt/rtrace/onincrement
local.get $0 local.get $0
i32.load i32.load
i32.const 1 i32.const 1
@ -227,13 +228,13 @@
if if
i32.const 0 i32.const 0
i32.const 136 i32.const 136
i32.const 106 i32.const 107
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
end end
) )
(func $~lib/rt/pure/__retain (; 5 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (func $~lib/rt/pure/__retain (; 6 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
local.get $0 local.get $0
i32.const 7012 i32.const 7012
i32.gt_u i32.gt_u
@ -245,7 +246,7 @@
end end
local.get $0 local.get $0
) )
(func $~lib/rt/tlsf/removeBlock (; 6 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/rt/tlsf/removeBlock (; 7 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
@ -259,7 +260,7 @@
if if
i32.const 0 i32.const 0
i32.const 184 i32.const 184
i32.const 275 i32.const 276
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -281,7 +282,7 @@
if if
i32.const 0 i32.const 0
i32.const 184 i32.const 184
i32.const 277 i32.const 278
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -326,7 +327,7 @@
if if
i32.const 0 i32.const 0
i32.const 184 i32.const 184
i32.const 290 i32.const 291
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -411,7 +412,7 @@
end end
end end
) )
(func $~lib/rt/tlsf/insertBlock (; 7 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/rt/tlsf/insertBlock (; 8 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
@ -423,7 +424,7 @@
if if
i32.const 0 i32.const 0
i32.const 184 i32.const 184
i32.const 203 i32.const 204
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -437,7 +438,7 @@
if if
i32.const 0 i32.const 0
i32.const 184 i32.const 184
i32.const 205 i32.const 206
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -510,7 +511,7 @@
if if
i32.const 0 i32.const 0
i32.const 184 i32.const 184
i32.const 226 i32.const 227
i32.const 15 i32.const 15
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -567,7 +568,7 @@
if if
i32.const 0 i32.const 0
i32.const 184 i32.const 184
i32.const 241 i32.const 242
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -582,7 +583,7 @@
if if
i32.const 0 i32.const 0
i32.const 184 i32.const 184
i32.const 242 i32.const 243
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -632,7 +633,7 @@
if if
i32.const 0 i32.const 0
i32.const 184 i32.const 184
i32.const 258 i32.const 259
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -696,7 +697,7 @@
i32.or i32.or
i32.store offset=4 i32.store offset=4
) )
(func $~lib/rt/tlsf/freeBlock (; 8 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/rt/tlsf/freeBlock (; 9 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
(local $2 i32) (local $2 i32)
local.get $1 local.get $1
i32.load i32.load
@ -706,7 +707,7 @@
if if
i32.const 0 i32.const 0
i32.const 184 i32.const 184
i32.const 530 i32.const 531
i32.const 2 i32.const 2
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -720,9 +721,9 @@
local.get $1 local.get $1
call $~lib/rt/tlsf/insertBlock call $~lib/rt/tlsf/insertBlock
local.get $1 local.get $1
call $~lib/rt/tlsf/onFree call $~lib/rt/rtrace/onfree
) )
(func $~lib/rt/__typeinfo (; 9 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (func $~lib/rt/__typeinfo (; 10 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
local.get $0 local.get $0
i32.const 6944 i32.const 6944
i32.load i32.load
@ -742,7 +743,7 @@
i32.add i32.add
i32.load i32.load
) )
(func $~lib/rt/tlsf/addMemory (; 10 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) (func $~lib/rt/tlsf/addMemory (; 11 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
local.get $2 local.get $2
@ -764,7 +765,7 @@
if if
i32.const 0 i32.const 0
i32.const 184 i32.const 184
i32.const 384 i32.const 385
i32.const 4 i32.const 4
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -781,7 +782,7 @@
if if
i32.const 0 i32.const 0
i32.const 184 i32.const 184
i32.const 394 i32.const 395
i32.const 15 i32.const 15
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -809,7 +810,7 @@
if if
i32.const 0 i32.const 0
i32.const 184 i32.const 184
i32.const 406 i32.const 407
i32.const 4 i32.const 4
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -856,7 +857,7 @@
local.get $1 local.get $1
call $~lib/rt/tlsf/insertBlock call $~lib/rt/tlsf/insertBlock
) )
(func $~lib/rt/tlsf/initializeRoot (; 11 ;) (type $FUNCSIG$v) (func $~lib/rt/tlsf/initializeRoot (; 12 ;) (type $FUNCSIG$v)
(local $0 i32) (local $0 i32)
(local $1 i32) (local $1 i32)
i32.const 1 i32.const 1
@ -939,14 +940,14 @@
i32.const 7024 i32.const 7024
global.set $~lib/rt/tlsf/ROOT global.set $~lib/rt/tlsf/ROOT
) )
(func $~lib/rt/tlsf/prepareSize (; 12 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (func $~lib/rt/tlsf/prepareSize (; 13 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
local.get $0 local.get $0
i32.const 1073741808 i32.const 1073741808
i32.ge_u i32.ge_u
if if
i32.const 328 i32.const 328
i32.const 184 i32.const 184
i32.const 446 i32.const 447
i32.const 29 i32.const 29
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -963,7 +964,7 @@
i32.gt_u i32.gt_u
select select
) )
(func $~lib/rt/tlsf/searchBlock (; 13 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (func $~lib/rt/tlsf/searchBlock (; 14 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
(local $2 i32) (local $2 i32)
local.get $1 local.get $1
i32.const 256 i32.const 256
@ -1021,7 +1022,7 @@
if if
i32.const 0 i32.const 0
i32.const 184 i32.const 184
i32.const 336 i32.const 337
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1073,7 +1074,7 @@
if if
i32.const 0 i32.const 0
i32.const 184 i32.const 184
i32.const 349 i32.const 350
i32.const 17 i32.const 17
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1094,7 +1095,7 @@
end end
end end
) )
(func $~lib/rt/tlsf/growMemory (; 14 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/rt/tlsf/growMemory (; 15 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
(local $2 i32) (local $2 i32)
memory.size memory.size
local.tee $2 local.tee $2
@ -1131,7 +1132,7 @@
i32.shl i32.shl
call $~lib/rt/tlsf/addMemory call $~lib/rt/tlsf/addMemory
) )
(func $~lib/rt/tlsf/prepareBlock (; 15 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) (func $~lib/rt/tlsf/prepareBlock (; 16 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
local.get $1 local.get $1
@ -1143,7 +1144,7 @@
if if
i32.const 0 i32.const 0
i32.const 184 i32.const 184
i32.const 363 i32.const 364
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1207,7 +1208,7 @@
i32.store i32.store
end end
) )
(func $~lib/rt/tlsf/allocateBlock (; 16 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (func $~lib/rt/tlsf/allocateBlock (; 17 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
local.get $0 local.get $0
@ -1229,7 +1230,7 @@
if if
i32.const 0 i32.const 0
i32.const 184 i32.const 184
i32.const 476 i32.const 477
i32.const 15 i32.const 15
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1244,7 +1245,7 @@
if if
i32.const 0 i32.const 0
i32.const 184 i32.const 184
i32.const 478 i32.const 479
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1263,8 +1264,10 @@
local.get $3 local.get $3
call $~lib/rt/tlsf/prepareBlock call $~lib/rt/tlsf/prepareBlock
local.get $2 local.get $2
call $~lib/rt/rtrace/onalloc
local.get $2
) )
(func $~lib/rt/tlsf/__alloc (; 17 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (func $~lib/rt/tlsf/__alloc (; 18 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
(local $2 i32) (local $2 i32)
global.get $~lib/rt/tlsf/ROOT global.get $~lib/rt/tlsf/ROOT
local.tee $2 local.tee $2
@ -1283,7 +1286,7 @@
i32.const 16 i32.const 16
i32.add i32.add
) )
(func $~lib/memory/memory.copy (; 18 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) (func $~lib/memory/memory.copy (; 19 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
block $~lib/util/memory/memmove|inlined.0 block $~lib/util/memory/memmove|inlined.0
@ -1456,7 +1459,7 @@
end end
end end
) )
(func $~lib/rt/pure/growRoots (; 19 ;) (type $FUNCSIG$v) (func $~lib/rt/pure/growRoots (; 20 ;) (type $FUNCSIG$v)
(local $0 i32) (local $0 i32)
(local $1 i32) (local $1 i32)
(local $2 i32) (local $2 i32)
@ -1492,7 +1495,7 @@
i32.add i32.add
global.set $~lib/rt/pure/END global.set $~lib/rt/pure/END
) )
(func $~lib/rt/pure/appendRoot (; 20 ;) (type $FUNCSIG$vi) (param $0 i32) (func $~lib/rt/pure/appendRoot (; 21 ;) (type $FUNCSIG$vi) (param $0 i32)
(local $1 i32) (local $1 i32)
global.get $~lib/rt/pure/CUR global.get $~lib/rt/pure/CUR
local.tee $1 local.tee $1
@ -1511,7 +1514,7 @@
i32.add i32.add
global.set $~lib/rt/pure/CUR global.set $~lib/rt/pure/CUR
) )
(func $~lib/rt/pure/decrement (; 21 ;) (type $FUNCSIG$vi) (param $0 i32) (func $~lib/rt/pure/decrement (; 22 ;) (type $FUNCSIG$vi) (param $0 i32)
(local $1 i32) (local $1 i32)
(local $2 i32) (local $2 i32)
local.get $0 local.get $0
@ -1521,7 +1524,7 @@
i32.and i32.and
local.set $1 local.set $1
local.get $0 local.get $0
call $~lib/rt/pure/onDecrement call $~lib/rt/rtrace/ondecrement
local.get $0 local.get $0
i32.load i32.load
i32.const 1 i32.const 1
@ -1529,7 +1532,7 @@
if if
i32.const 0 i32.const 0
i32.const 136 i32.const 136
i32.const 114 i32.const 115
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1562,7 +1565,7 @@
if if
i32.const 0 i32.const 0
i32.const 136 i32.const 136
i32.const 123 i32.const 124
i32.const 15 i32.const 15
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1601,7 +1604,7 @@
end end
end end
) )
(func $~lib/rt/pure/__release (; 22 ;) (type $FUNCSIG$vi) (param $0 i32) (func $~lib/rt/pure/__release (; 23 ;) (type $FUNCSIG$vi) (param $0 i32)
local.get $0 local.get $0
i32.const 7012 i32.const 7012
i32.gt_u i32.gt_u
@ -1612,7 +1615,7 @@
call $~lib/rt/pure/decrement call $~lib/rt/pure/decrement
end end
) )
(func $~lib/string/String.__not (; 23 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (func $~lib/string/String.__not (; 24 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
(local $1 i32) (local $1 i32)
local.get $0 local.get $0
call $~lib/rt/pure/__retain call $~lib/rt/pure/__retain
@ -1634,7 +1637,7 @@
call $~lib/rt/pure/__release call $~lib/rt/pure/__release
local.get $1 local.get $1
) )
(func $~lib/string/String.fromCharCode (; 24 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (func $~lib/string/String.fromCharCode (; 25 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
(local $1 i32) (local $1 i32)
i32.const 2 i32.const 2
i32.const 1 i32.const 1
@ -1645,7 +1648,7 @@
local.get $1 local.get $1
call $~lib/rt/pure/__retain call $~lib/rt/pure/__retain
) )
(func $~lib/util/string/compareImpl (; 25 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) (func $~lib/util/string/compareImpl (; 26 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32)
(local $4 i32) (local $4 i32)
(local $5 i32) (local $5 i32)
local.get $0 local.get $0
@ -1697,7 +1700,7 @@
call $~lib/rt/pure/__release call $~lib/rt/pure/__release
local.get $5 local.get $5
) )
(func $~lib/string/String.__eq (; 26 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (func $~lib/string/String.__eq (; 27 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
(local $2 i32) (local $2 i32)
local.get $0 local.get $0
call $~lib/rt/pure/__retain call $~lib/rt/pure/__retain
@ -1758,7 +1761,7 @@
call $~lib/rt/pure/__release call $~lib/rt/pure/__release
i32.const 0 i32.const 0
) )
(func $~lib/string/String.fromCodePoint (; 27 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (func $~lib/string/String.fromCodePoint (; 28 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
(local $1 i32) (local $1 i32)
(local $2 i32) (local $2 i32)
local.get $0 local.get $0
@ -1813,7 +1816,7 @@
local.get $2 local.get $2
call $~lib/rt/pure/__retain call $~lib/rt/pure/__retain
) )
(func $~lib/rt/pure/__retainRelease (; 28 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (func $~lib/rt/pure/__retainRelease (; 29 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
local.get $0 local.get $0
local.get $1 local.get $1
i32.ne i32.ne
@ -1839,7 +1842,7 @@
end end
local.get $1 local.get $1
) )
(func $~lib/string/String#startsWith (; 29 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (func $~lib/string/String#startsWith (; 30 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
(local $1 i32) (local $1 i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
@ -1896,7 +1899,7 @@
call $~lib/rt/pure/__release call $~lib/rt/pure/__release
local.get $0 local.get $0
) )
(func $~lib/string/String#endsWith (; 30 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (func $~lib/string/String#endsWith (; 31 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
(local $1 i32) (local $1 i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
@ -1953,7 +1956,7 @@
call $~lib/rt/pure/__release call $~lib/rt/pure/__release
local.get $0 local.get $0
) )
(func $~lib/string/String#indexOf (; 31 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (func $~lib/string/String#indexOf (; 32 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
(local $5 i32) (local $5 i32)
@ -2054,7 +2057,7 @@
call $~lib/rt/pure/__release call $~lib/rt/pure/__release
i32.const -1 i32.const -1
) )
(func $~lib/memory/memory.repeat (; 32 ;) (type $FUNCSIG$viiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (func $~lib/memory/memory.repeat (; 33 ;) (type $FUNCSIG$viiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
(local $4 i32) (local $4 i32)
local.get $2 local.get $2
local.get $3 local.get $3
@ -2079,7 +2082,7 @@
end end
end end
) )
(func $~lib/string/String#padStart (; 33 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (func $~lib/string/String#padStart (; 34 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
(local $5 i32) (local $5 i32)
@ -2186,7 +2189,7 @@
call $~lib/rt/pure/__release call $~lib/rt/pure/__release
local.get $0 local.get $0
) )
(func $~lib/string/String#padEnd (; 34 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (func $~lib/string/String#padEnd (; 35 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
(local $5 i32) (local $5 i32)
@ -2294,7 +2297,7 @@
call $~lib/rt/pure/__release call $~lib/rt/pure/__release
local.get $0 local.get $0
) )
(func $~lib/string/String#lastIndexOf (; 35 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (func $~lib/string/String#lastIndexOf (; 36 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
local.get $1 local.get $1
@ -2392,7 +2395,7 @@
call $~lib/rt/pure/__release call $~lib/rt/pure/__release
i32.const -1 i32.const -1
) )
(func $~lib/util/string/parse<f64> (; 36 ;) (type $FUNCSIG$di) (param $0 i32) (result f64) (func $~lib/util/string/parse<f64> (; 37 ;) (type $FUNCSIG$di) (param $0 i32) (result f64)
(local $1 i32) (local $1 i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
@ -2626,7 +2629,7 @@
call $~lib/rt/pure/__release call $~lib/rt/pure/__release
f64.const nan:0x8000000000000 f64.const nan:0x8000000000000
) )
(func $~lib/string/parseInt (; 37 ;) (type $FUNCSIG$di) (param $0 i32) (result f64) (func $~lib/string/parseInt (; 38 ;) (type $FUNCSIG$di) (param $0 i32) (result f64)
(local $1 f64) (local $1 f64)
local.get $0 local.get $0
call $~lib/rt/pure/__retain call $~lib/rt/pure/__retain
@ -2638,7 +2641,7 @@
call $~lib/rt/pure/__release call $~lib/rt/pure/__release
local.get $1 local.get $1
) )
(func $~lib/string/parseFloat (; 38 ;) (type $FUNCSIG$di) (param $0 i32) (result f64) (func $~lib/string/parseFloat (; 39 ;) (type $FUNCSIG$di) (param $0 i32) (result f64)
(local $1 i32) (local $1 i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
@ -2810,7 +2813,7 @@
call $~lib/rt/pure/__release call $~lib/rt/pure/__release
f64.const nan:0x8000000000000 f64.const nan:0x8000000000000
) )
(func $~lib/string/String#concat (; 39 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (func $~lib/string/String#concat (; 40 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
@ -2875,7 +2878,7 @@
call $~lib/rt/pure/__release call $~lib/rt/pure/__release
local.get $2 local.get $2
) )
(func $~lib/string/String.__concat (; 40 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (func $~lib/string/String.__concat (; 41 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
(local $2 i32) (local $2 i32)
local.get $0 local.get $0
call $~lib/rt/pure/__retain call $~lib/rt/pure/__retain
@ -2896,7 +2899,7 @@
call $~lib/rt/pure/__release call $~lib/rt/pure/__release
local.get $2 local.get $2
) )
(func $~lib/string/String.__ne (; 41 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (func $~lib/string/String.__ne (; 42 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
(local $2 i32) (local $2 i32)
local.get $0 local.get $0
call $~lib/rt/pure/__retain call $~lib/rt/pure/__retain
@ -2915,7 +2918,7 @@
call $~lib/rt/pure/__release call $~lib/rt/pure/__release
local.get $2 local.get $2
) )
(func $~lib/string/String.__gt (; 42 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (func $~lib/string/String.__gt (; 43 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
local.get $0 local.get $0
@ -2989,7 +2992,7 @@
call $~lib/rt/pure/__release call $~lib/rt/pure/__release
i32.const 0 i32.const 0
) )
(func $~lib/string/String.__lt (; 43 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (func $~lib/string/String.__lt (; 44 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
local.get $0 local.get $0
@ -3063,7 +3066,7 @@
call $~lib/rt/pure/__release call $~lib/rt/pure/__release
i32.const 0 i32.const 0
) )
(func $~lib/string/String.__gte (; 44 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (func $~lib/string/String.__gte (; 45 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
(local $2 i32) (local $2 i32)
local.get $0 local.get $0
call $~lib/rt/pure/__retain call $~lib/rt/pure/__retain
@ -3082,7 +3085,7 @@
call $~lib/rt/pure/__release call $~lib/rt/pure/__release
local.get $2 local.get $2
) )
(func $~lib/string/String.__lte (; 45 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (func $~lib/string/String.__lte (; 46 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
(local $1 i32) (local $1 i32)
i32.const 120 i32.const 120
call $~lib/rt/pure/__retain call $~lib/rt/pure/__retain
@ -3101,7 +3104,7 @@
call $~lib/rt/pure/__release call $~lib/rt/pure/__release
local.get $1 local.get $1
) )
(func $~lib/string/String#repeat (; 46 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (func $~lib/string/String#repeat (; 47 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
local.get $0 local.get $0
@ -3178,7 +3181,7 @@
local.get $3 local.get $3
call $~lib/rt/pure/__retain call $~lib/rt/pure/__retain
) )
(func $~lib/string/String#slice (; 47 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (func $~lib/string/String#slice (; 48 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32)
(local $3 i32) (local $3 i32)
local.get $0 local.get $0
i32.const 16 i32.const 16
@ -3257,7 +3260,7 @@
local.get $3 local.get $3
call $~lib/rt/pure/__retain call $~lib/rt/pure/__retain
) )
(func $~lib/rt/__allocArray (; 48 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (func $~lib/rt/__allocArray (; 49 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
(local $1 i32) (local $1 i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
@ -3285,7 +3288,7 @@
i32.store offset=12 i32.store offset=12
local.get $1 local.get $1
) )
(func $~lib/rt/tlsf/reallocateBlock (; 49 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (func $~lib/rt/tlsf/reallocateBlock (; 50 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
(local $5 i32) (local $5 i32)
@ -3301,7 +3304,7 @@
if if
i32.const 0 i32.const 0
i32.const 184 i32.const 184
i32.const 491 i32.const 493
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -3397,17 +3400,15 @@
local.get $0 local.get $0
local.get $1 local.get $1
call $~lib/rt/tlsf/insertBlock call $~lib/rt/tlsf/insertBlock
local.get $1
call $~lib/rt/tlsf/onFree
local.get $3 local.get $3
) )
(func $~lib/rt/tlsf/__realloc (; 50 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (func $~lib/rt/tlsf/__realloc (; 51 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
global.get $~lib/rt/tlsf/ROOT global.get $~lib/rt/tlsf/ROOT
i32.eqz i32.eqz
if if
i32.const 0 i32.const 0
i32.const 184 i32.const 184
i32.const 552 i32.const 553
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -3423,7 +3424,7 @@
if if
i32.const 0 i32.const 0
i32.const 184 i32.const 184
i32.const 553 i32.const 554
i32.const 2 i32.const 2
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -3437,7 +3438,7 @@
i32.const 16 i32.const 16
i32.add i32.add
) )
(func $~lib/memory/memory.fill (; 51 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/memory/memory.fill (; 52 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
(local $2 i32) (local $2 i32)
block $~lib/util/memory/memset|inlined.0 block $~lib/util/memory/memset|inlined.0
local.get $1 local.get $1
@ -3648,7 +3649,7 @@
end end
end end
) )
(func $~lib/array/ensureSize (; 52 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/array/ensureSize (; 53 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
@ -3703,7 +3704,7 @@
i32.store offset=8 i32.store offset=8
end end
) )
(func $~lib/array/Array<~lib/string/String>#push (; 53 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/array/Array<~lib/string/String>#push (; 54 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
local.get $1 local.get $1
@ -3735,7 +3736,7 @@
local.get $1 local.get $1
call $~lib/rt/pure/__release call $~lib/rt/pure/__release
) )
(func $~lib/string/String#split (; 54 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (func $~lib/string/String#split (; 55 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
@ -3965,7 +3966,7 @@
call $~lib/rt/pure/__release call $~lib/rt/pure/__release
local.get $2 local.get $2
) )
(func $~lib/rt/pure/__skippedRelease (; 55 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (func $~lib/rt/pure/__skippedRelease (; 56 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
local.get $0 local.get $0
i32.const 7012 i32.const 7012
i32.gt_u i32.gt_u
@ -3977,7 +3978,7 @@
end end
local.get $1 local.get $1
) )
(func $~lib/array/Array<~lib/string/String>#__get (; 56 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (func $~lib/array/Array<~lib/string/String>#__get (; 57 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
local.get $1 local.get $1
local.get $0 local.get $0
i32.load offset=12 i32.load offset=12
@ -4013,7 +4014,7 @@
i32.load i32.load
call $~lib/rt/pure/__retain call $~lib/rt/pure/__retain
) )
(func $~lib/util/number/decimalCount32 (; 57 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (func $~lib/util/number/decimalCount32 (; 58 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
local.get $0 local.get $0
i32.const 100000 i32.const 100000
i32.lt_u i32.lt_u
@ -4067,7 +4068,7 @@
end end
end end
) )
(func $~lib/util/number/utoa32_lut (; 58 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) (func $~lib/util/number/utoa32_lut (; 59 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
i32.const 2820 i32.const 2820
@ -4177,7 +4178,7 @@
i32.store16 i32.store16
end end
) )
(func $~lib/util/number/itoa32 (; 59 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (func $~lib/util/number/itoa32 (; 60 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
(local $1 i32) (local $1 i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
@ -4220,7 +4221,7 @@
local.get $2 local.get $2
call $~lib/rt/pure/__retain call $~lib/rt/pure/__retain
) )
(func $~lib/util/number/utoa32 (; 60 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (func $~lib/util/number/utoa32 (; 61 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
(local $1 i32) (local $1 i32)
(local $2 i32) (local $2 i32)
local.get $0 local.get $0
@ -4244,7 +4245,7 @@
local.get $2 local.get $2
call $~lib/rt/pure/__retain call $~lib/rt/pure/__retain
) )
(func $~lib/util/number/decimalCount64 (; 61 ;) (type $FUNCSIG$ij) (param $0 i64) (result i32) (func $~lib/util/number/decimalCount64 (; 62 ;) (type $FUNCSIG$ij) (param $0 i64) (result i32)
local.get $0 local.get $0
i64.const 1000000000000000 i64.const 1000000000000000
i64.lt_u i64.lt_u
@ -4298,7 +4299,7 @@
end end
end end
) )
(func $~lib/util/number/utoa64_lut (; 62 ;) (type $FUNCSIG$viji) (param $0 i32) (param $1 i64) (param $2 i32) (func $~lib/util/number/utoa64_lut (; 63 ;) (type $FUNCSIG$viji) (param $0 i32) (param $1 i64) (param $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
(local $5 i32) (local $5 i32)
@ -4395,7 +4396,7 @@
local.get $2 local.get $2
call $~lib/util/number/utoa32_lut call $~lib/util/number/utoa32_lut
) )
(func $~lib/util/number/utoa64 (; 63 ;) (type $FUNCSIG$ij) (param $0 i64) (result i32) (func $~lib/util/number/utoa64 (; 64 ;) (type $FUNCSIG$ij) (param $0 i64) (result i32)
(local $1 i32) (local $1 i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
@ -4439,7 +4440,7 @@
local.get $2 local.get $2
call $~lib/rt/pure/__retain call $~lib/rt/pure/__retain
) )
(func $~lib/util/number/itoa64 (; 64 ;) (type $FUNCSIG$ij) (param $0 i64) (result i32) (func $~lib/util/number/itoa64 (; 65 ;) (type $FUNCSIG$ij) (param $0 i64) (result i32)
(local $1 i32) (local $1 i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
@ -4506,7 +4507,7 @@
local.get $3 local.get $3
call $~lib/rt/pure/__retain call $~lib/rt/pure/__retain
) )
(func $~lib/util/number/genDigits (; 65 ;) (type $FUNCSIG$iijijiji) (param $0 i32) (param $1 i64) (param $2 i32) (param $3 i64) (param $4 i32) (param $5 i64) (param $6 i32) (result i32) (func $~lib/util/number/genDigits (; 66 ;) (type $FUNCSIG$iijijiji) (param $0 i32) (param $1 i64) (param $2 i32) (param $3 i64) (param $4 i32) (param $5 i64) (param $6 i32) (result i32)
(local $7 i32) (local $7 i32)
(local $8 i32) (local $8 i32)
(local $9 i64) (local $9 i64)
@ -4911,7 +4912,7 @@
local.get $6 local.get $6
end end
) )
(func $~lib/util/number/prettify (; 66 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (func $~lib/util/number/prettify (; 67 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32)
(local $3 i32) (local $3 i32)
local.get $2 local.get $2
i32.eqz i32.eqz
@ -5162,7 +5163,7 @@
end end
end end
) )
(func $~lib/util/number/dtoa_core (; 67 ;) (type $FUNCSIG$iid) (param $0 i32) (param $1 f64) (result i32) (func $~lib/util/number/dtoa_core (; 68 ;) (type $FUNCSIG$iid) (param $0 i32) (param $1 f64) (result i32)
(local $2 i64) (local $2 i64)
(local $3 i32) (local $3 i32)
(local $4 i64) (local $4 i64)
@ -5450,7 +5451,7 @@
local.get $10 local.get $10
i32.add i32.add
) )
(func $~lib/string/String#substring (; 68 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (func $~lib/string/String#substring (; 69 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
local.get $0 local.get $0
@ -5545,13 +5546,13 @@
local.get $1 local.get $1
call $~lib/rt/pure/__retain call $~lib/rt/pure/__retain
) )
(func $~lib/rt/tlsf/__free (; 69 ;) (type $FUNCSIG$vi) (param $0 i32) (func $~lib/rt/tlsf/__free (; 70 ;) (type $FUNCSIG$vi) (param $0 i32)
global.get $~lib/rt/tlsf/ROOT global.get $~lib/rt/tlsf/ROOT
i32.eqz i32.eqz
if if
i32.const 0 i32.const 0
i32.const 184 i32.const 184
i32.const 560 i32.const 561
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -5567,7 +5568,7 @@
if if
i32.const 0 i32.const 0
i32.const 184 i32.const 184
i32.const 561 i32.const 562
i32.const 2 i32.const 2
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -5578,7 +5579,7 @@
i32.sub i32.sub
call $~lib/rt/tlsf/freeBlock call $~lib/rt/tlsf/freeBlock
) )
(func $~lib/util/number/dtoa (; 70 ;) (type $FUNCSIG$id) (param $0 f64) (result i32) (func $~lib/util/number/dtoa (; 71 ;) (type $FUNCSIG$id) (param $0 f64) (result i32)
(local $1 i32) (local $1 i32)
(local $2 i32) (local $2 i32)
local.get $0 local.get $0
@ -5634,7 +5635,7 @@
call $~lib/rt/tlsf/__free call $~lib/rt/tlsf/__free
local.get $2 local.get $2
) )
(func $start:std/string (; 71 ;) (type $FUNCSIG$v) (func $start:std/string (; 72 ;) (type $FUNCSIG$v)
(local $0 i32) (local $0 i32)
(local $1 i32) (local $1 i32)
(local $2 i32) (local $2 i32)
@ -9063,14 +9064,14 @@
local.get $128 local.get $128
call $~lib/rt/pure/__release call $~lib/rt/pure/__release
) )
(func $std/string/getString (; 72 ;) (type $FUNCSIG$i) (result i32) (func $std/string/getString (; 73 ;) (type $FUNCSIG$i) (result i32)
global.get $std/string/str global.get $std/string/str
call $~lib/rt/pure/__retain call $~lib/rt/pure/__retain
) )
(func $start (; 73 ;) (type $FUNCSIG$v) (func $start (; 74 ;) (type $FUNCSIG$v)
call $start:std/string call $start:std/string
) )
(func $~lib/rt/pure/markGray (; 74 ;) (type $FUNCSIG$vi) (param $0 i32) (func $~lib/rt/pure/markGray (; 75 ;) (type $FUNCSIG$vi) (param $0 i32)
(local $1 i32) (local $1 i32)
local.get $0 local.get $0
i32.load offset=4 i32.load offset=4
@ -9094,7 +9095,7 @@
call $~lib/rt/__visit_members call $~lib/rt/__visit_members
end end
) )
(func $~lib/rt/pure/scanBlack (; 75 ;) (type $FUNCSIG$vi) (param $0 i32) (func $~lib/rt/pure/scanBlack (; 76 ;) (type $FUNCSIG$vi) (param $0 i32)
local.get $0 local.get $0
local.get $0 local.get $0
i32.load offset=4 i32.load offset=4
@ -9107,7 +9108,7 @@
i32.const 4 i32.const 4
call $~lib/rt/__visit_members call $~lib/rt/__visit_members
) )
(func $~lib/rt/pure/scan (; 76 ;) (type $FUNCSIG$vi) (param $0 i32) (func $~lib/rt/pure/scan (; 77 ;) (type $FUNCSIG$vi) (param $0 i32)
(local $1 i32) (local $1 i32)
local.get $0 local.get $0
i32.load offset=4 i32.load offset=4
@ -9141,7 +9142,7 @@
end end
end end
) )
(func $~lib/rt/pure/collectWhite (; 77 ;) (type $FUNCSIG$vi) (param $0 i32) (func $~lib/rt/pure/collectWhite (; 78 ;) (type $FUNCSIG$vi) (param $0 i32)
(local $1 i32) (local $1 i32)
local.get $0 local.get $0
i32.load offset=4 i32.load offset=4
@ -9169,7 +9170,7 @@
local.get $0 local.get $0
call $~lib/rt/tlsf/freeBlock call $~lib/rt/tlsf/freeBlock
) )
(func $~lib/rt/pure/__visit (; 78 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/rt/pure/__visit (; 79 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
local.get $0 local.get $0
i32.const 7012 i32.const 7012
i32.lt_u i32.lt_u
@ -9215,7 +9216,7 @@
if if
i32.const 0 i32.const 0
i32.const 136 i32.const 136
i32.const 74 i32.const 75
i32.const 17 i32.const 17
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -9248,7 +9249,7 @@
if if
i32.const 0 i32.const 0
i32.const 136 i32.const 136
i32.const 85 i32.const 86
i32.const 6 i32.const 6
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -9273,13 +9274,13 @@
end end
i32.const 0 i32.const 0
i32.const 136 i32.const 136
i32.const 96 i32.const 97
i32.const 24 i32.const 24
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
end end
) )
(func $~lib/array/Array<~lib/string/String>#__visit_impl (; 79 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/array/Array<~lib/string/String>#__visit_impl (; 80 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
local.get $0 local.get $0
@ -9310,7 +9311,7 @@
end end
end end
) )
(func $~lib/rt/__visit_members (; 80 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/rt/__visit_members (; 81 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
block $block$4$break block $block$4$break
block $switch$1$default block $switch$1$default
block $switch$1$case$5 block $switch$1$case$5
@ -9339,7 +9340,7 @@
call $~lib/rt/pure/__visit call $~lib/rt/pure/__visit
end end
) )
(func $null (; 81 ;) (type $FUNCSIG$v) (func $null (; 82 ;) (type $FUNCSIG$v)
nop nop
) )
) )

View File

@ -19,9 +19,10 @@
(type $FUNCSIG$iijijiji (func (param i32 i64 i32 i64 i32 i64 i32) (result i32))) (type $FUNCSIG$iijijiji (func (param i32 i64 i32 i64 i32 i64 i32) (result i32)))
(type $FUNCSIG$i (func (result i32))) (type $FUNCSIG$i (func (result i32)))
(import "env" "abort" (func $~lib/builtins/abort (param i32 i32 i32 i32))) (import "env" "abort" (func $~lib/builtins/abort (param i32 i32 i32 i32)))
(import "rtrace" "retain" (func $~lib/rt/pure/onIncrement (param i32))) (import "rtrace" "onincrement" (func $~lib/rt/rtrace/onincrement (param i32)))
(import "rtrace" "release" (func $~lib/rt/pure/onDecrement (param i32))) (import "rtrace" "ondecrement" (func $~lib/rt/rtrace/ondecrement (param i32)))
(import "rtrace" "free" (func $~lib/rt/tlsf/onFree (param i32))) (import "rtrace" "onfree" (func $~lib/rt/rtrace/onfree (param i32)))
(import "rtrace" "onalloc" (func $~lib/rt/rtrace/onalloc (param i32)))
(memory $0 1) (memory $0 1)
(data (i32.const 8) " \00\00\00\01\00\00\00\01\00\00\00 \00\00\00h\00i\00,\00 \00I\00\'\00m\00 \00a\00 \00s\00t\00r\00i\00n\00g\00") (data (i32.const 8) " \00\00\00\01\00\00\00\01\00\00\00 \00\00\00h\00i\00,\00 \00I\00\'\00m\00 \00a\00 \00s\00t\00r\00i\00n\00g\00")
(data (i32.const 56) "\1a\00\00\00\01\00\00\00\01\00\00\00\1a\00\00\00s\00t\00d\00/\00s\00t\00r\00i\00n\00g\00.\00t\00s\00") (data (i32.const 56) "\1a\00\00\00\01\00\00\00\01\00\00\00\1a\00\00\00s\00t\00d\00/\00s\00t\00r\00i\00n\00g\00.\00t\00s\00")
@ -208,7 +209,7 @@
(export "memory" (memory $0)) (export "memory" (memory $0))
(export "getString" (func $std/string/getString)) (export "getString" (func $std/string/getString))
(start $start) (start $start)
(func $~lib/string/String#get:length (; 4 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (func $~lib/string/String#get:length (; 5 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
local.get $0 local.get $0
i32.const 16 i32.const 16
i32.sub i32.sub
@ -216,7 +217,7 @@
i32.const 1 i32.const 1
i32.shr_u i32.shr_u
) )
(func $~lib/string/String#charCodeAt (; 5 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (func $~lib/string/String#charCodeAt (; 6 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
local.get $1 local.get $1
local.get $0 local.get $0
call $~lib/string/String#get:length call $~lib/string/String#get:length
@ -232,7 +233,7 @@
i32.add i32.add
i32.load16_u i32.load16_u
) )
(func $~lib/rt/pure/increment (; 6 ;) (type $FUNCSIG$vi) (param $0 i32) (func $~lib/rt/pure/increment (; 7 ;) (type $FUNCSIG$vi) (param $0 i32)
(local $1 i32) (local $1 i32)
local.get $0 local.get $0
i32.load offset=4 i32.load offset=4
@ -254,7 +255,7 @@
if if
i32.const 0 i32.const 0
i32.const 136 i32.const 136
i32.const 103 i32.const 104
i32.const 2 i32.const 2
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -265,7 +266,7 @@
i32.add i32.add
i32.store offset=4 i32.store offset=4
local.get $0 local.get $0
call $~lib/rt/pure/onIncrement call $~lib/rt/rtrace/onincrement
local.get $0 local.get $0
i32.load i32.load
i32.const 1 i32.const 1
@ -275,13 +276,13 @@
if if
i32.const 0 i32.const 0
i32.const 136 i32.const 136
i32.const 106 i32.const 107
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
end end
) )
(func $~lib/rt/pure/__retain (; 7 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (func $~lib/rt/pure/__retain (; 8 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
local.get $0 local.get $0
global.get $~lib/heap/HEAP_BASE global.get $~lib/heap/HEAP_BASE
i32.gt_u i32.gt_u
@ -293,7 +294,7 @@
end end
local.get $0 local.get $0
) )
(func $~lib/rt/tlsf/removeBlock (; 8 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/rt/tlsf/removeBlock (; 9 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
@ -314,7 +315,7 @@
if if
i32.const 0 i32.const 0
i32.const 184 i32.const 184
i32.const 275 i32.const 276
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -339,7 +340,7 @@
if if
i32.const 0 i32.const 0
i32.const 184 i32.const 184
i32.const 277 i32.const 278
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -391,7 +392,7 @@
if if
i32.const 0 i32.const 0
i32.const 184 i32.const 184
i32.const 290 i32.const 291
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -511,7 +512,7 @@
end end
end end
) )
(func $~lib/rt/tlsf/insertBlock (; 9 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/rt/tlsf/insertBlock (; 10 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
@ -529,7 +530,7 @@
if if
i32.const 0 i32.const 0
i32.const 184 i32.const 184
i32.const 203 i32.const 204
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -544,7 +545,7 @@
if if
i32.const 0 i32.const 0
i32.const 184 i32.const 184
i32.const 205 i32.const 206
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -643,7 +644,7 @@
if if
i32.const 0 i32.const 0
i32.const 184 i32.const 184
i32.const 226 i32.const 227
i32.const 15 i32.const 15
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -706,7 +707,7 @@
if if
i32.const 0 i32.const 0
i32.const 184 i32.const 184
i32.const 241 i32.const 242
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -722,7 +723,7 @@
if if
i32.const 0 i32.const 0
i32.const 184 i32.const 184
i32.const 242 i32.const 243
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -779,7 +780,7 @@
if if
i32.const 0 i32.const 0
i32.const 184 i32.const 184
i32.const 258 i32.const 259
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -875,7 +876,7 @@
i32.store offset=4 i32.store offset=4
end end
) )
(func $~lib/rt/tlsf/freeBlock (; 10 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/rt/tlsf/freeBlock (; 11 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
(local $2 i32) (local $2 i32)
local.get $1 local.get $1
i32.load i32.load
@ -888,7 +889,7 @@
if if
i32.const 0 i32.const 0
i32.const 184 i32.const 184
i32.const 530 i32.const 531
i32.const 2 i32.const 2
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -902,9 +903,9 @@
local.get $1 local.get $1
call $~lib/rt/tlsf/insertBlock call $~lib/rt/tlsf/insertBlock
local.get $1 local.get $1
call $~lib/rt/tlsf/onFree call $~lib/rt/rtrace/onfree
) )
(func $~lib/rt/__typeinfo (; 11 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (func $~lib/rt/__typeinfo (; 12 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
(local $1 i32) (local $1 i32)
global.get $~lib/rt/RTTI_BASE global.get $~lib/rt/RTTI_BASE
local.set $1 local.set $1
@ -929,7 +930,7 @@
i32.add i32.add
i32.load i32.load
) )
(func $~lib/rt/tlsf/addMemory (; 12 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (func $~lib/rt/tlsf/addMemory (; 13 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
(local $5 i32) (local $5 i32)
@ -960,7 +961,7 @@
if if
i32.const 0 i32.const 0
i32.const 184 i32.const 184
i32.const 384 i32.const 385
i32.const 4 i32.const 4
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -985,7 +986,7 @@
if if
i32.const 0 i32.const 0
i32.const 184 i32.const 184
i32.const 394 i32.const 395
i32.const 15 i32.const 15
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1016,7 +1017,7 @@
if if
i32.const 0 i32.const 0
i32.const 184 i32.const 184
i32.const 406 i32.const 407
i32.const 4 i32.const 4
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1081,7 +1082,7 @@
call $~lib/rt/tlsf/insertBlock call $~lib/rt/tlsf/insertBlock
i32.const 1 i32.const 1
) )
(func $~lib/rt/tlsf/initializeRoot (; 13 ;) (type $FUNCSIG$v) (func $~lib/rt/tlsf/initializeRoot (; 14 ;) (type $FUNCSIG$v)
(local $0 i32) (local $0 i32)
(local $1 i32) (local $1 i32)
(local $2 i32) (local $2 i32)
@ -1234,7 +1235,7 @@
local.get $3 local.get $3
global.set $~lib/rt/tlsf/ROOT global.set $~lib/rt/tlsf/ROOT
) )
(func $~lib/rt/tlsf/prepareSize (; 14 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (func $~lib/rt/tlsf/prepareSize (; 15 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
(local $1 i32) (local $1 i32)
(local $2 i32) (local $2 i32)
local.get $0 local.get $0
@ -1243,7 +1244,7 @@
if if
i32.const 328 i32.const 328
i32.const 184 i32.const 184
i32.const 446 i32.const 447
i32.const 29 i32.const 29
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1263,7 +1264,7 @@
i32.gt_u i32.gt_u
select select
) )
(func $~lib/rt/tlsf/searchBlock (; 15 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (func $~lib/rt/tlsf/searchBlock (; 16 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
@ -1337,7 +1338,7 @@
if if
i32.const 0 i32.const 0
i32.const 184 i32.const 184
i32.const 336 i32.const 337
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1404,7 +1405,7 @@
if if
i32.const 0 i32.const 0
i32.const 184 i32.const 184
i32.const 349 i32.const 350
i32.const 17 i32.const 17
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1454,7 +1455,7 @@
end end
local.get $7 local.get $7
) )
(func $~lib/rt/tlsf/growMemory (; 16 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/rt/tlsf/growMemory (; 17 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
@ -1507,7 +1508,7 @@
call $~lib/rt/tlsf/addMemory call $~lib/rt/tlsf/addMemory
drop drop
) )
(func $~lib/rt/tlsf/prepareBlock (; 17 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) (func $~lib/rt/tlsf/prepareBlock (; 18 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
(local $5 i32) (local $5 i32)
@ -1522,7 +1523,7 @@
if if
i32.const 0 i32.const 0
i32.const 184 i32.const 184
i32.const 363 i32.const 364
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1606,7 +1607,7 @@
i32.store i32.store
end end
) )
(func $~lib/rt/tlsf/allocateBlock (; 18 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (func $~lib/rt/tlsf/allocateBlock (; 19 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
local.get $1 local.get $1
@ -1631,7 +1632,7 @@
if if
i32.const 0 i32.const 0
i32.const 184 i32.const 184
i32.const 476 i32.const 477
i32.const 15 i32.const 15
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1649,7 +1650,7 @@
if if
i32.const 0 i32.const 0
i32.const 184 i32.const 184
i32.const 478 i32.const 479
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -1668,8 +1669,10 @@
local.get $2 local.get $2
call $~lib/rt/tlsf/prepareBlock call $~lib/rt/tlsf/prepareBlock
local.get $3 local.get $3
call $~lib/rt/rtrace/onalloc
local.get $3
) )
(func $~lib/rt/tlsf/__alloc (; 19 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (func $~lib/rt/tlsf/__alloc (; 20 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
global.get $~lib/rt/tlsf/ROOT global.get $~lib/rt/tlsf/ROOT
@ -1692,7 +1695,7 @@
i32.const 16 i32.const 16
i32.add i32.add
) )
(func $~lib/memory/memory.copy (; 20 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) (func $~lib/memory/memory.copy (; 21 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
(local $5 i32) (local $5 i32)
@ -1898,7 +1901,7 @@
end end
end end
) )
(func $~lib/rt/pure/growRoots (; 21 ;) (type $FUNCSIG$v) (func $~lib/rt/pure/growRoots (; 22 ;) (type $FUNCSIG$v)
(local $0 i32) (local $0 i32)
(local $1 i32) (local $1 i32)
(local $2 i32) (local $2 i32)
@ -1943,7 +1946,7 @@
i32.add i32.add
global.set $~lib/rt/pure/END global.set $~lib/rt/pure/END
) )
(func $~lib/rt/pure/appendRoot (; 22 ;) (type $FUNCSIG$vi) (param $0 i32) (func $~lib/rt/pure/appendRoot (; 23 ;) (type $FUNCSIG$vi) (param $0 i32)
(local $1 i32) (local $1 i32)
global.get $~lib/rt/pure/CUR global.get $~lib/rt/pure/CUR
local.set $1 local.set $1
@ -1963,7 +1966,7 @@
i32.add i32.add
global.set $~lib/rt/pure/CUR global.set $~lib/rt/pure/CUR
) )
(func $~lib/rt/pure/decrement (; 23 ;) (type $FUNCSIG$vi) (param $0 i32) (func $~lib/rt/pure/decrement (; 24 ;) (type $FUNCSIG$vi) (param $0 i32)
(local $1 i32) (local $1 i32)
(local $2 i32) (local $2 i32)
local.get $0 local.get $0
@ -1974,7 +1977,7 @@
i32.and i32.and
local.set $2 local.set $2
local.get $0 local.get $0
call $~lib/rt/pure/onDecrement call $~lib/rt/rtrace/ondecrement
local.get $0 local.get $0
i32.load i32.load
i32.const 1 i32.const 1
@ -1984,7 +1987,7 @@
if if
i32.const 0 i32.const 0
i32.const 136 i32.const 136
i32.const 114 i32.const 115
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -2023,7 +2026,7 @@
if if
i32.const 0 i32.const 0
i32.const 136 i32.const 136
i32.const 123 i32.const 124
i32.const 15 i32.const 15
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -2067,7 +2070,7 @@
end end
end end
) )
(func $~lib/rt/pure/__release (; 24 ;) (type $FUNCSIG$vi) (param $0 i32) (func $~lib/rt/pure/__release (; 25 ;) (type $FUNCSIG$vi) (param $0 i32)
local.get $0 local.get $0
global.get $~lib/heap/HEAP_BASE global.get $~lib/heap/HEAP_BASE
i32.gt_u i32.gt_u
@ -2078,7 +2081,7 @@
call $~lib/rt/pure/decrement call $~lib/rt/pure/decrement
end end
) )
(func $~lib/string/String.__not (; 25 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (func $~lib/string/String.__not (; 26 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
(local $1 i32) (local $1 i32)
local.get $0 local.get $0
call $~lib/rt/pure/__retain call $~lib/rt/pure/__retain
@ -2098,7 +2101,7 @@
call $~lib/rt/pure/__release call $~lib/rt/pure/__release
local.get $1 local.get $1
) )
(func $~lib/string/String.fromCharCode (; 26 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (func $~lib/string/String.fromCharCode (; 27 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
(local $1 i32) (local $1 i32)
i32.const 2 i32.const 2
i32.const 1 i32.const 1
@ -2110,7 +2113,7 @@
local.get $1 local.get $1
call $~lib/rt/pure/__retain call $~lib/rt/pure/__retain
) )
(func $~lib/util/string/compareImpl (; 27 ;) (type $FUNCSIG$iiiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (param $4 i32) (result i32) (func $~lib/util/string/compareImpl (; 28 ;) (type $FUNCSIG$iiiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (param $4 i32) (result i32)
(local $5 i32) (local $5 i32)
(local $6 i32) (local $6 i32)
(local $7 i32) (local $7 i32)
@ -2174,7 +2177,7 @@
call $~lib/rt/pure/__release call $~lib/rt/pure/__release
local.get $8 local.get $8
) )
(func $~lib/string/String.__eq (; 28 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (func $~lib/string/String.__eq (; 29 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
local.get $0 local.get $0
@ -2247,7 +2250,7 @@
call $~lib/rt/pure/__release call $~lib/rt/pure/__release
local.get $2 local.get $2
) )
(func $~lib/string/String.fromCodePoint (; 29 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (func $~lib/string/String.fromCodePoint (; 30 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
(local $1 i32) (local $1 i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
@ -2310,7 +2313,7 @@
local.get $2 local.get $2
call $~lib/rt/pure/__retain call $~lib/rt/pure/__retain
) )
(func $~lib/rt/pure/__retainRelease (; 30 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (func $~lib/rt/pure/__retainRelease (; 31 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
(local $2 i32) (local $2 i32)
local.get $1 local.get $1
local.get $0 local.get $0
@ -2339,7 +2342,7 @@
end end
local.get $1 local.get $1
) )
(func $~lib/string/String#startsWith (; 31 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (func $~lib/string/String#startsWith (; 32 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
(local $5 i32) (local $5 i32)
@ -2419,7 +2422,7 @@
call $~lib/rt/pure/__release call $~lib/rt/pure/__release
local.get $5 local.get $5
) )
(func $~lib/string/String#endsWith (; 32 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (func $~lib/string/String#endsWith (; 33 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
(local $5 i32) (local $5 i32)
@ -2498,7 +2501,7 @@
call $~lib/rt/pure/__release call $~lib/rt/pure/__release
local.get $3 local.get $3
) )
(func $~lib/string/String#indexOf (; 33 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (func $~lib/string/String#indexOf (; 34 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
(local $5 i32) (local $5 i32)
@ -2613,7 +2616,7 @@
call $~lib/rt/pure/__release call $~lib/rt/pure/__release
local.get $4 local.get $4
) )
(func $~lib/memory/memory.repeat (; 34 ;) (type $FUNCSIG$viiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (func $~lib/memory/memory.repeat (; 35 ;) (type $FUNCSIG$viiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
(local $4 i32) (local $4 i32)
(local $5 i32) (local $5 i32)
i32.const 0 i32.const 0
@ -2643,7 +2646,7 @@
end end
end end
) )
(func $~lib/string/String#padStart (; 35 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (func $~lib/string/String#padStart (; 36 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
(local $5 i32) (local $5 i32)
@ -2755,7 +2758,7 @@
call $~lib/rt/pure/__release call $~lib/rt/pure/__release
local.get $10 local.get $10
) )
(func $~lib/string/String#padEnd (; 36 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (func $~lib/string/String#padEnd (; 37 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
(local $5 i32) (local $5 i32)
@ -2871,7 +2874,7 @@
call $~lib/rt/pure/__release call $~lib/rt/pure/__release
local.get $10 local.get $10
) )
(func $~lib/string/String#lastIndexOf (; 37 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (func $~lib/string/String#lastIndexOf (; 38 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
(local $5 i32) (local $5 i32)
@ -2984,7 +2987,7 @@
call $~lib/rt/pure/__release call $~lib/rt/pure/__release
local.get $5 local.get $5
) )
(func $~lib/util/string/parse<f64> (; 38 ;) (type $FUNCSIG$dii) (param $0 i32) (param $1 i32) (result f64) (func $~lib/util/string/parse<f64> (; 39 ;) (type $FUNCSIG$dii) (param $0 i32) (param $1 i32) (result f64)
(local $2 i32) (local $2 i32)
(local $3 f64) (local $3 f64)
(local $4 i32) (local $4 i32)
@ -3302,7 +3305,7 @@
call $~lib/rt/pure/__release call $~lib/rt/pure/__release
local.get $3 local.get $3
) )
(func $~lib/string/parseInt (; 39 ;) (type $FUNCSIG$dii) (param $0 i32) (param $1 i32) (result f64) (func $~lib/string/parseInt (; 40 ;) (type $FUNCSIG$dii) (param $0 i32) (param $1 i32) (result f64)
(local $2 f64) (local $2 f64)
local.get $0 local.get $0
call $~lib/rt/pure/__retain call $~lib/rt/pure/__retain
@ -3315,7 +3318,7 @@
call $~lib/rt/pure/__release call $~lib/rt/pure/__release
local.get $2 local.get $2
) )
(func $~lib/string/parseFloat (; 40 ;) (type $FUNCSIG$di) (param $0 i32) (result f64) (func $~lib/string/parseFloat (; 41 ;) (type $FUNCSIG$di) (param $0 i32) (result f64)
(local $1 i32) (local $1 i32)
(local $2 f64) (local $2 f64)
(local $3 i32) (local $3 i32)
@ -3526,7 +3529,7 @@
call $~lib/rt/pure/__release call $~lib/rt/pure/__release
local.get $2 local.get $2
) )
(func $~lib/string/String#concat (; 41 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (func $~lib/string/String#concat (; 42 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
@ -3591,7 +3594,7 @@
call $~lib/rt/pure/__release call $~lib/rt/pure/__release
local.get $5 local.get $5
) )
(func $~lib/string/String.__concat (; 42 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (func $~lib/string/String.__concat (; 43 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
(local $2 i32) (local $2 i32)
local.get $0 local.get $0
call $~lib/rt/pure/__retain call $~lib/rt/pure/__retain
@ -3614,7 +3617,7 @@
call $~lib/rt/pure/__release call $~lib/rt/pure/__release
local.get $2 local.get $2
) )
(func $~lib/string/String.__ne (; 43 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (func $~lib/string/String.__ne (; 44 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
(local $2 i32) (local $2 i32)
local.get $0 local.get $0
call $~lib/rt/pure/__retain call $~lib/rt/pure/__retain
@ -3633,7 +3636,7 @@
call $~lib/rt/pure/__release call $~lib/rt/pure/__release
local.get $2 local.get $2
) )
(func $~lib/string/String.__gt (; 44 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (func $~lib/string/String.__gt (; 45 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
@ -3723,7 +3726,7 @@
call $~lib/rt/pure/__release call $~lib/rt/pure/__release
local.get $2 local.get $2
) )
(func $~lib/string/String.__lt (; 45 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (func $~lib/string/String.__lt (; 46 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
@ -3813,7 +3816,7 @@
call $~lib/rt/pure/__release call $~lib/rt/pure/__release
local.get $2 local.get $2
) )
(func $~lib/string/String.__gte (; 46 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (func $~lib/string/String.__gte (; 47 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
(local $2 i32) (local $2 i32)
local.get $0 local.get $0
call $~lib/rt/pure/__retain call $~lib/rt/pure/__retain
@ -3832,7 +3835,7 @@
call $~lib/rt/pure/__release call $~lib/rt/pure/__release
local.get $2 local.get $2
) )
(func $~lib/string/String.__lte (; 47 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (func $~lib/string/String.__lte (; 48 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
(local $2 i32) (local $2 i32)
local.get $0 local.get $0
call $~lib/rt/pure/__retain call $~lib/rt/pure/__retain
@ -3851,7 +3854,7 @@
call $~lib/rt/pure/__release call $~lib/rt/pure/__release
local.get $2 local.get $2
) )
(func $~lib/string/String#repeat (; 48 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (func $~lib/string/String#repeat (; 49 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
local.get $0 local.get $0
@ -3931,7 +3934,7 @@
local.get $3 local.get $3
call $~lib/rt/pure/__retain call $~lib/rt/pure/__retain
) )
(func $~lib/string/String#slice (; 49 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (func $~lib/string/String#slice (; 50 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
(local $5 i32) (local $5 i32)
@ -4022,7 +4025,7 @@
local.get $8 local.get $8
call $~lib/rt/pure/__retain call $~lib/rt/pure/__retain
) )
(func $~lib/rt/__allocArray (; 50 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) (func $~lib/rt/__allocArray (; 51 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32)
(local $4 i32) (local $4 i32)
(local $5 i32) (local $5 i32)
(local $6 i32) (local $6 i32)
@ -4060,7 +4063,7 @@
end end
local.get $4 local.get $4
) )
(func $~lib/rt/tlsf/reallocateBlock (; 51 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (func $~lib/rt/tlsf/reallocateBlock (; 52 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
(local $5 i32) (local $5 i32)
@ -4081,7 +4084,7 @@
if if
i32.const 0 i32.const 0
i32.const 184 i32.const 184
i32.const 491 i32.const 493
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -4191,17 +4194,15 @@
local.get $0 local.get $0
local.get $1 local.get $1
call $~lib/rt/tlsf/insertBlock call $~lib/rt/tlsf/insertBlock
local.get $1
call $~lib/rt/tlsf/onFree
local.get $8 local.get $8
) )
(func $~lib/rt/tlsf/__realloc (; 52 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (func $~lib/rt/tlsf/__realloc (; 53 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
global.get $~lib/rt/tlsf/ROOT global.get $~lib/rt/tlsf/ROOT
i32.eqz i32.eqz
if if
i32.const 0 i32.const 0
i32.const 184 i32.const 184
i32.const 552 i32.const 553
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -4221,7 +4222,7 @@
if if
i32.const 0 i32.const 0
i32.const 184 i32.const 184
i32.const 553 i32.const 554
i32.const 2 i32.const 2
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -4235,7 +4236,7 @@
i32.const 16 i32.const 16
i32.add i32.add
) )
(func $~lib/memory/memory.fill (; 53 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) (func $~lib/memory/memory.fill (; 54 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
(local $5 i32) (local $5 i32)
@ -4498,7 +4499,7 @@
end end
end end
) )
(func $~lib/array/ensureSize (; 54 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) (func $~lib/array/ensureSize (; 55 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
(local $5 i32) (local $5 i32)
@ -4561,7 +4562,7 @@
i32.store offset=8 i32.store offset=8
end end
) )
(func $~lib/array/Array<~lib/string/String>#push (; 55 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (func $~lib/array/Array<~lib/string/String>#push (; 56 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
@ -4601,7 +4602,7 @@
call $~lib/rt/pure/__release call $~lib/rt/pure/__release
local.get $4 local.get $4
) )
(func $~lib/string/String#split (; 56 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (func $~lib/string/String#split (; 57 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
(local $5 i32) (local $5 i32)
@ -4922,7 +4923,7 @@
call $~lib/rt/pure/__release call $~lib/rt/pure/__release
local.get $3 local.get $3
) )
(func $~lib/rt/pure/__skippedRelease (; 57 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (func $~lib/rt/pure/__skippedRelease (; 58 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
local.get $0 local.get $0
global.get $~lib/heap/HEAP_BASE global.get $~lib/heap/HEAP_BASE
i32.gt_u i32.gt_u
@ -4934,11 +4935,11 @@
end end
local.get $1 local.get $1
) )
(func $~lib/array/Array<~lib/string/String>#get:length (; 58 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (func $~lib/array/Array<~lib/string/String>#get:length (; 59 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
local.get $0 local.get $0
i32.load offset=12 i32.load offset=12
) )
(func $~lib/array/Array<~lib/string/String>#__unchecked_get (; 59 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (func $~lib/array/Array<~lib/string/String>#__unchecked_get (; 60 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
local.get $0 local.get $0
i32.load offset=4 i32.load offset=4
local.get $1 local.get $1
@ -4948,7 +4949,7 @@
i32.load i32.load
call $~lib/rt/pure/__retain call $~lib/rt/pure/__retain
) )
(func $~lib/array/Array<~lib/string/String>#__get (; 60 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (func $~lib/array/Array<~lib/string/String>#__get (; 61 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
local.get $1 local.get $1
local.get $0 local.get $0
i32.load offset=12 i32.load offset=12
@ -4979,7 +4980,7 @@
local.get $1 local.get $1
call $~lib/array/Array<~lib/string/String>#__unchecked_get call $~lib/array/Array<~lib/string/String>#__unchecked_get
) )
(func $~lib/util/number/decimalCount32 (; 61 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (func $~lib/util/number/decimalCount32 (; 62 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
(local $1 i32) (local $1 i32)
local.get $0 local.get $0
i32.const 100000 i32.const 100000
@ -5048,7 +5049,7 @@
unreachable unreachable
unreachable unreachable
) )
(func $~lib/util/number/utoa32_lut (; 62 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) (func $~lib/util/number/utoa32_lut (; 63 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
(local $5 i32) (local $5 i32)
@ -5189,7 +5190,7 @@
i32.store16 i32.store16
end end
) )
(func $~lib/util/number/itoa32 (; 63 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (func $~lib/util/number/itoa32 (; 64 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
(local $1 i32) (local $1 i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
@ -5246,7 +5247,7 @@
local.get $3 local.get $3
call $~lib/rt/pure/__retain call $~lib/rt/pure/__retain
) )
(func $~lib/util/number/utoa32 (; 64 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (func $~lib/util/number/utoa32 (; 65 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
(local $1 i32) (local $1 i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
@ -5283,7 +5284,7 @@
local.get $2 local.get $2
call $~lib/rt/pure/__retain call $~lib/rt/pure/__retain
) )
(func $~lib/util/number/decimalCount64 (; 65 ;) (type $FUNCSIG$ij) (param $0 i64) (result i32) (func $~lib/util/number/decimalCount64 (; 66 ;) (type $FUNCSIG$ij) (param $0 i64) (result i32)
(local $1 i32) (local $1 i32)
local.get $0 local.get $0
i64.const 1000000000000000 i64.const 1000000000000000
@ -5352,7 +5353,7 @@
unreachable unreachable
unreachable unreachable
) )
(func $~lib/util/number/utoa64_lut (; 66 ;) (type $FUNCSIG$viji) (param $0 i32) (param $1 i64) (param $2 i32) (func $~lib/util/number/utoa64_lut (; 67 ;) (type $FUNCSIG$viji) (param $0 i32) (param $1 i64) (param $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i64) (local $4 i64)
(local $5 i32) (local $5 i32)
@ -5478,7 +5479,7 @@
local.get $2 local.get $2
call $~lib/util/number/utoa32_lut call $~lib/util/number/utoa32_lut
) )
(func $~lib/util/number/utoa64 (; 67 ;) (type $FUNCSIG$ij) (param $0 i64) (result i32) (func $~lib/util/number/utoa64 (; 68 ;) (type $FUNCSIG$ij) (param $0 i64) (result i32)
(local $1 i32) (local $1 i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
@ -5547,7 +5548,7 @@
local.get $1 local.get $1
call $~lib/rt/pure/__retain call $~lib/rt/pure/__retain
) )
(func $~lib/util/number/itoa64 (; 68 ;) (type $FUNCSIG$ij) (param $0 i64) (result i32) (func $~lib/util/number/itoa64 (; 69 ;) (type $FUNCSIG$ij) (param $0 i64) (result i32)
(local $1 i32) (local $1 i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
@ -5638,19 +5639,19 @@
local.get $2 local.get $2
call $~lib/rt/pure/__retain call $~lib/rt/pure/__retain
) )
(func $~lib/builtins/isFinite<f64> (; 69 ;) (type $FUNCSIG$id) (param $0 f64) (result i32) (func $~lib/builtins/isFinite<f64> (; 70 ;) (type $FUNCSIG$id) (param $0 f64) (result i32)
local.get $0 local.get $0
local.get $0 local.get $0
f64.sub f64.sub
f64.const 0 f64.const 0
f64.eq f64.eq
) )
(func $~lib/builtins/isNaN<f64> (; 70 ;) (type $FUNCSIG$id) (param $0 f64) (result i32) (func $~lib/builtins/isNaN<f64> (; 71 ;) (type $FUNCSIG$id) (param $0 f64) (result i32)
local.get $0 local.get $0
local.get $0 local.get $0
f64.ne f64.ne
) )
(func $~lib/array/Array<u64>#__unchecked_get (; 71 ;) (type $FUNCSIG$jii) (param $0 i32) (param $1 i32) (result i64) (func $~lib/array/Array<u64>#__unchecked_get (; 72 ;) (type $FUNCSIG$jii) (param $0 i32) (param $1 i32) (result i64)
local.get $0 local.get $0
i32.load offset=4 i32.load offset=4
local.get $1 local.get $1
@ -5659,7 +5660,7 @@
i32.add i32.add
i64.load i64.load
) )
(func $~lib/array/Array<i16>#__unchecked_get (; 72 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (func $~lib/array/Array<i16>#__unchecked_get (; 73 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
local.get $0 local.get $0
i32.load offset=4 i32.load offset=4
local.get $1 local.get $1
@ -5668,7 +5669,7 @@
i32.add i32.add
i32.load16_s i32.load16_s
) )
(func $~lib/util/number/genDigits (; 73 ;) (type $FUNCSIG$iijijiji) (param $0 i32) (param $1 i64) (param $2 i32) (param $3 i64) (param $4 i32) (param $5 i64) (param $6 i32) (result i32) (func $~lib/util/number/genDigits (; 74 ;) (type $FUNCSIG$iijijiji) (param $0 i32) (param $1 i64) (param $2 i32) (param $3 i64) (param $4 i32) (param $5 i64) (param $6 i32) (result i32)
(local $7 i32) (local $7 i32)
(local $8 i64) (local $8 i64)
(local $9 i64) (local $9 i64)
@ -6224,7 +6225,7 @@
end end
local.get $15 local.get $15
) )
(func $~lib/util/number/prettify (; 74 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (func $~lib/util/number/prettify (; 75 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
(local $5 i32) (local $5 i32)
@ -6554,7 +6555,7 @@
unreachable unreachable
unreachable unreachable
) )
(func $~lib/util/number/dtoa_core (; 75 ;) (type $FUNCSIG$iid) (param $0 i32) (param $1 f64) (result i32) (func $~lib/util/number/dtoa_core (; 76 ;) (type $FUNCSIG$iid) (param $0 i32) (param $1 f64) (result i32)
(local $2 i32) (local $2 i32)
(local $3 f64) (local $3 f64)
(local $4 i32) (local $4 i32)
@ -6992,7 +6993,7 @@
local.get $2 local.get $2
i32.add i32.add
) )
(func $~lib/string/String#substring (; 76 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (func $~lib/string/String#substring (; 77 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
(local $5 i32) (local $5 i32)
@ -7111,13 +7112,13 @@
local.get $10 local.get $10
call $~lib/rt/pure/__retain call $~lib/rt/pure/__retain
) )
(func $~lib/rt/tlsf/__free (; 77 ;) (type $FUNCSIG$vi) (param $0 i32) (func $~lib/rt/tlsf/__free (; 78 ;) (type $FUNCSIG$vi) (param $0 i32)
global.get $~lib/rt/tlsf/ROOT global.get $~lib/rt/tlsf/ROOT
i32.eqz i32.eqz
if if
i32.const 0 i32.const 0
i32.const 184 i32.const 184
i32.const 560 i32.const 561
i32.const 13 i32.const 13
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -7137,7 +7138,7 @@
if if
i32.const 0 i32.const 0
i32.const 184 i32.const 184
i32.const 561 i32.const 562
i32.const 2 i32.const 2
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -7148,7 +7149,7 @@
i32.sub i32.sub
call $~lib/rt/tlsf/freeBlock call $~lib/rt/tlsf/freeBlock
) )
(func $~lib/util/number/dtoa (; 78 ;) (type $FUNCSIG$id) (param $0 f64) (result i32) (func $~lib/util/number/dtoa (; 79 ;) (type $FUNCSIG$id) (param $0 f64) (result i32)
(local $1 i32) (local $1 i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
@ -7207,7 +7208,7 @@
call $~lib/rt/tlsf/__free call $~lib/rt/tlsf/__free
local.get $3 local.get $3
) )
(func $start:std/string (; 79 ;) (type $FUNCSIG$v) (func $start:std/string (; 80 ;) (type $FUNCSIG$v)
(local $0 i32) (local $0 i32)
(local $1 i32) (local $1 i32)
(local $2 i32) (local $2 i32)
@ -10741,14 +10742,14 @@
local.get $128 local.get $128
call $~lib/rt/pure/__release call $~lib/rt/pure/__release
) )
(func $std/string/getString (; 80 ;) (type $FUNCSIG$i) (result i32) (func $std/string/getString (; 81 ;) (type $FUNCSIG$i) (result i32)
global.get $std/string/str global.get $std/string/str
call $~lib/rt/pure/__retain call $~lib/rt/pure/__retain
) )
(func $start (; 81 ;) (type $FUNCSIG$v) (func $start (; 82 ;) (type $FUNCSIG$v)
call $start:std/string call $start:std/string
) )
(func $~lib/rt/pure/markGray (; 82 ;) (type $FUNCSIG$vi) (param $0 i32) (func $~lib/rt/pure/markGray (; 83 ;) (type $FUNCSIG$vi) (param $0 i32)
(local $1 i32) (local $1 i32)
local.get $0 local.get $0
i32.load offset=4 i32.load offset=4
@ -10775,7 +10776,7 @@
call $~lib/rt/__visit_members call $~lib/rt/__visit_members
end end
) )
(func $~lib/rt/pure/scanBlack (; 83 ;) (type $FUNCSIG$vi) (param $0 i32) (func $~lib/rt/pure/scanBlack (; 84 ;) (type $FUNCSIG$vi) (param $0 i32)
local.get $0 local.get $0
local.get $0 local.get $0
i32.load offset=4 i32.load offset=4
@ -10792,7 +10793,7 @@
i32.const 4 i32.const 4
call $~lib/rt/__visit_members call $~lib/rt/__visit_members
) )
(func $~lib/rt/pure/scan (; 84 ;) (type $FUNCSIG$vi) (param $0 i32) (func $~lib/rt/pure/scan (; 85 ;) (type $FUNCSIG$vi) (param $0 i32)
(local $1 i32) (local $1 i32)
local.get $0 local.get $0
i32.load offset=4 i32.load offset=4
@ -10829,7 +10830,7 @@
end end
end end
) )
(func $~lib/rt/pure/collectWhite (; 85 ;) (type $FUNCSIG$vi) (param $0 i32) (func $~lib/rt/pure/collectWhite (; 86 ;) (type $FUNCSIG$vi) (param $0 i32)
(local $1 i32) (local $1 i32)
local.get $0 local.get $0
i32.load offset=4 i32.load offset=4
@ -10858,7 +10859,7 @@
local.get $0 local.get $0
call $~lib/rt/tlsf/freeBlock call $~lib/rt/tlsf/freeBlock
) )
(func $~lib/rt/pure/__visit (; 86 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/rt/pure/__visit (; 87 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
local.get $0 local.get $0
@ -10921,7 +10922,7 @@
if if
i32.const 0 i32.const 0
i32.const 136 i32.const 136
i32.const 74 i32.const 75
i32.const 17 i32.const 17
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -10968,7 +10969,7 @@
if if
i32.const 0 i32.const 0
i32.const 136 i32.const 136
i32.const 85 i32.const 86
i32.const 6 i32.const 6
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
@ -11005,14 +11006,14 @@
if if
i32.const 0 i32.const 0
i32.const 136 i32.const 136
i32.const 96 i32.const 97
i32.const 24 i32.const 24
call $~lib/builtins/abort call $~lib/builtins/abort
unreachable unreachable
end end
end end
) )
(func $~lib/array/Array<~lib/string/String>#__visit_impl (; 87 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/array/Array<~lib/string/String>#__visit_impl (; 88 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
(local $2 i32) (local $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
@ -11048,19 +11049,19 @@
end end
end end
) )
(func $~lib/array/Array<i32>#__visit_impl (; 88 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/array/Array<i32>#__visit_impl (; 89 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
nop nop
) )
(func $~lib/array/Array<u32>#__visit_impl (; 89 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/array/Array<u32>#__visit_impl (; 90 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
nop nop
) )
(func $~lib/array/Array<u64>#__visit_impl (; 90 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/array/Array<u64>#__visit_impl (; 91 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
nop nop
) )
(func $~lib/array/Array<i16>#__visit_impl (; 91 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/array/Array<i16>#__visit_impl (; 92 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
nop nop
) )
(func $~lib/rt/__visit_members (; 92 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) (func $~lib/rt/__visit_members (; 93 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
(local $2 i32) (local $2 i32)
block $block$4$break block $block$4$break
block block
@ -11210,6 +11211,6 @@
end end
unreachable unreachable
) )
(func $null (; 93 ;) (type $FUNCSIG$v) (func $null (; 94 ;) (type $FUNCSIG$v)
) )
) )

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff