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 { Block, freeBlock, ROOT } from "rt/tlsf";
import { TypeinfoFlags } from "shared/typeinfo";
import { onincrement, ondecrement } from "./rtrace";
/////////////////////////// A Pure Reference Counting Garbage Collector ///////////////////////////
// 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;
assert((info & ~REFCOUNT_MASK) == ((info + 1) & ~REFCOUNT_MASK)); // overflow
s.gcInfo = info + 1;
if (isDefined(ASC_RTRACE)) onIncrement(s);
if (isDefined(ASC_RTRACE)) onincrement(s);
if (DEBUG) assert(!(s.mmInfo & 1)); // used
}
@ -110,7 +111,7 @@ function increment(s: Block): void {
function decrement(s: Block): void {
var info = s.gcInfo;
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 (rc == 1) {
__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));
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 { onfree, onalloc } from "./rtrace";
/////////////////////// The TLSF (Two-Level Segregate Fit) memory allocator ///////////////////////
// see: http://www.gii.upv.es/tlsf/
@ -481,6 +482,7 @@ export function allocateBlock(root: Root, size: usize): Block {
block.rtSize = size;
removeBlock(root, <Block>block);
prepareBlock(root, <Block>block, payloadSize);
if (isDefined(ASC_RTRACE)) onalloc(<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);
block.mmInfo = blockInfo | FREE;
insertBlock(root, block);
if (isDefined(ASC_RTRACE)) onFree(block);
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)
block.mmInfo = blockInfo | FREE;
insertBlock(root, block);
if (isDefined(ASC_RTRACE)) onFree(block);
if (isDefined(ASC_RTRACE)) onfree(block);
}
// @ts-ignore: decorator
@ -561,7 +562,3 @@ export function __free(ref: usize): void {
assert(ref != 0 && !(ref & AL_MASK)); // must exist and be aligned
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 diff = require("./util/diff");
const asc = require("../cli/asc.js");
const rtrace = require("../lib/rtrace");
const config = {
"create": {
@ -290,15 +291,15 @@ function testInstantiate(basename, binaryBuffer, name) {
return String.fromCharCode.apply(String, U16.subarray(ptr16, ptr16 + len16));
}
let rtrace = new Map();
let rtraceEnabled = false;
let rtraceRetains = 0;
let rtraceReleases = 0;
let rtraceFrees = 0;
let rtraceUsesAfterFree = 0;
let rtr = rtrace(e => {
console.log(" ERROR: " + e);
failed = true;
failedMessages.set(basename, e.message);
});
let runTime = asc.measure(() => {
exports = new WebAssembly.Instance(new WebAssembly.Module(binaryBuffer), {
rtrace: rtr,
env: {
memory,
abort: function(msg, file, line, column) {
@ -310,11 +311,15 @@ function testInstantiate(basename, binaryBuffer, name) {
externalFunction: function() { },
externalConstant: 1
},
// bindings
Math,
Date,
// tests/math
math: {
mod: function(a, b) { return a % b; }
},
Math,
Date,
// tests/declare
declare: {
@ -333,57 +338,30 @@ function testInstantiate(basename, binaryBuffer, name) {
foo: {
baz: function() {},
"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;
if (exports.main) {
console.log(colorsUtil.white(" [main]"));
var code = exports.main();
let code = exports.main();
console.log(colorsUtil.white(" [exit " + code + "]\n"));
}
});
if (rtraceEnabled) {
if (rtrace.size || rtraceUsesAfterFree) {
let msg = "memory leak detected: " + rtrace.size + " leaking, " + rtraceUsesAfterFree + " uses after free";
console.log("- " + colorsUtil.red("rtrace " + name + " ERROR: ") + msg);
failed = true;
failedMessages.set(basename, msg);
}
let leakCount = rtr.leakCount;
if (leakCount) {
let msg = "memory leak detected: " + leakCount + " leaking";
console.log("- " + colorsUtil.red("rtrace " + name + " ERROR: ") + msg);
failed = true;
failedMessages.set(basename, msg);
}
if (!failed) {
console.log("- " + colorsUtil.green("instantiate " + name + " OK") + " (" + asc.formatTime(runTime) + ")");
if (rtraceEnabled) {
console.log("\n " + rtraceRetains + " retains\n " + rtraceReleases + " releases\n " + rtraceFrees + " explicit frees");
if (rtr.active) {
console.log(" " +
rtr.allocCount + " allocs, " +
rtr.freeCount + " frees, " +
rtr.incrementCount + " increments, " +
rtr.decrementCount + " decrements"
);
}
console.log("\n " + Object.keys(exports).map(key => {
return "[" + (typeof exports[key]).substring(0, 3) + "] " + key + " = " + exports[key]

View File

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

View File

@ -9,9 +9,10 @@
(type $FUNCSIG$iiii (func (param i32 i32 i32) (result i32)))
(type $FUNCSIG$viii (func (param 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" "release" (func $~lib/rt/pure/onDecrement (param i32)))
(import "rtrace" "free" (func $~lib/rt/tlsf/onFree (param i32)))
(import "rtrace" "onincrement" (func $~lib/rt/rtrace/onincrement (param i32)))
(import "rtrace" "ondecrement" (func $~lib/rt/rtrace/ondecrement (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)
(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")
@ -32,7 +33,7 @@
(global $~lib/heap/HEAP_BASE i32 (i32.const 300))
(export "memory" (memory $0))
(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.get $0
i32.load offset=4
@ -54,7 +55,7 @@
if
i32.const 0
i32.const 40
i32.const 103
i32.const 104
i32.const 2
call $~lib/builtins/abort
unreachable
@ -65,7 +66,7 @@
i32.add
i32.store offset=4
local.get $0
call $~lib/rt/pure/onIncrement
call $~lib/rt/rtrace/onincrement
local.get $0
i32.load
i32.const 1
@ -75,13 +76,13 @@
if
i32.const 0
i32.const 40
i32.const 106
i32.const 107
i32.const 13
call $~lib/builtins/abort
unreachable
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
global.get $~lib/heap/HEAP_BASE
i32.gt_u
@ -93,11 +94,11 @@
end
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
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 $3 i32)
(local $4 i32)
@ -118,7 +119,7 @@
if
i32.const 0
i32.const 88
i32.const 275
i32.const 276
i32.const 13
call $~lib/builtins/abort
unreachable
@ -143,7 +144,7 @@
if
i32.const 0
i32.const 88
i32.const 277
i32.const 278
i32.const 13
call $~lib/builtins/abort
unreachable
@ -195,7 +196,7 @@
if
i32.const 0
i32.const 88
i32.const 290
i32.const 291
i32.const 13
call $~lib/builtins/abort
unreachable
@ -315,7 +316,7 @@
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 $3 i32)
(local $4 i32)
@ -333,7 +334,7 @@
if
i32.const 0
i32.const 88
i32.const 203
i32.const 204
i32.const 13
call $~lib/builtins/abort
unreachable
@ -348,7 +349,7 @@
if
i32.const 0
i32.const 88
i32.const 205
i32.const 206
i32.const 13
call $~lib/builtins/abort
unreachable
@ -447,7 +448,7 @@
if
i32.const 0
i32.const 88
i32.const 226
i32.const 227
i32.const 15
call $~lib/builtins/abort
unreachable
@ -510,7 +511,7 @@
if
i32.const 0
i32.const 88
i32.const 241
i32.const 242
i32.const 13
call $~lib/builtins/abort
unreachable
@ -526,7 +527,7 @@
if
i32.const 0
i32.const 88
i32.const 242
i32.const 243
i32.const 13
call $~lib/builtins/abort
unreachable
@ -583,7 +584,7 @@
if
i32.const 0
i32.const 88
i32.const 258
i32.const 259
i32.const 13
call $~lib/builtins/abort
unreachable
@ -679,7 +680,7 @@
i32.store offset=4
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.get $1
i32.load
@ -692,7 +693,7 @@
if
i32.const 0
i32.const 88
i32.const 530
i32.const 531
i32.const 2
call $~lib/builtins/abort
unreachable
@ -706,9 +707,9 @@
local.get $1
call $~lib/rt/tlsf/insertBlock
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)
global.get $~lib/rt/RTTI_BASE
local.set $1
@ -733,7 +734,7 @@
i32.add
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 $4 i32)
(local $5 i32)
@ -764,7 +765,7 @@
if
i32.const 0
i32.const 88
i32.const 384
i32.const 385
i32.const 4
call $~lib/builtins/abort
unreachable
@ -789,7 +790,7 @@
if
i32.const 0
i32.const 88
i32.const 394
i32.const 395
i32.const 15
call $~lib/builtins/abort
unreachable
@ -820,7 +821,7 @@
if
i32.const 0
i32.const 88
i32.const 406
i32.const 407
i32.const 4
call $~lib/builtins/abort
unreachable
@ -885,7 +886,7 @@
call $~lib/rt/tlsf/insertBlock
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 $1 i32)
(local $2 i32)
@ -1038,7 +1039,7 @@
local.get $3
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 $2 i32)
local.get $0
@ -1047,7 +1048,7 @@
if
i32.const 232
i32.const 88
i32.const 446
i32.const 447
i32.const 29
call $~lib/builtins/abort
unreachable
@ -1067,7 +1068,7 @@
i32.gt_u
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 $3 i32)
(local $4 i32)
@ -1141,7 +1142,7 @@
if
i32.const 0
i32.const 88
i32.const 336
i32.const 337
i32.const 13
call $~lib/builtins/abort
unreachable
@ -1208,7 +1209,7 @@
if
i32.const 0
i32.const 88
i32.const 349
i32.const 350
i32.const 17
call $~lib/builtins/abort
unreachable
@ -1258,7 +1259,7 @@
end
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 $3 i32)
(local $4 i32)
@ -1311,7 +1312,7 @@
call $~lib/rt/tlsf/addMemory
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 $4 i32)
(local $5 i32)
@ -1326,7 +1327,7 @@
if
i32.const 0
i32.const 88
i32.const 363
i32.const 364
i32.const 13
call $~lib/builtins/abort
unreachable
@ -1410,7 +1411,7 @@
i32.store
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 $3 i32)
local.get $1
@ -1435,7 +1436,7 @@
if
i32.const 0
i32.const 88
i32.const 476
i32.const 477
i32.const 15
call $~lib/builtins/abort
unreachable
@ -1453,7 +1454,7 @@
if
i32.const 0
i32.const 88
i32.const 478
i32.const 479
i32.const 13
call $~lib/builtins/abort
unreachable
@ -1472,8 +1473,10 @@
local.get $2
call $~lib/rt/tlsf/prepareBlock
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 $3 i32)
global.get $~lib/rt/tlsf/ROOT
@ -1496,7 +1499,7 @@
i32.const 16
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 $4 i32)
(local $5 i32)
@ -1702,7 +1705,7 @@
end
end
)
(func $~lib/rt/pure/growRoots (; 20 ;) (type $FUNCSIG$v)
(func $~lib/rt/pure/growRoots (; 21 ;) (type $FUNCSIG$v)
(local $0 i32)
(local $1 i32)
(local $2 i32)
@ -1747,7 +1750,7 @@
i32.add
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)
global.get $~lib/rt/pure/CUR
local.set $1
@ -1767,7 +1770,7 @@
i32.add
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 $2 i32)
local.get $0
@ -1778,7 +1781,7 @@
i32.and
local.set $2
local.get $0
call $~lib/rt/pure/onDecrement
call $~lib/rt/rtrace/ondecrement
local.get $0
i32.load
i32.const 1
@ -1788,7 +1791,7 @@
if
i32.const 0
i32.const 40
i32.const 114
i32.const 115
i32.const 13
call $~lib/builtins/abort
unreachable
@ -1827,7 +1830,7 @@
if
i32.const 0
i32.const 40
i32.const 123
i32.const 124
i32.const 15
call $~lib/builtins/abort
unreachable
@ -1871,7 +1874,7 @@
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.get $1
local.get $0
@ -1900,7 +1903,7 @@
end
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
global.set $rc/global-init/a
call $rc/global-init/getRef
@ -1914,10 +1917,10 @@
call $~lib/rt/pure/__retainRelease
global.set $rc/global-init/b
)
(func $start (; 25 ;) (type $FUNCSIG$v)
(func $start (; 26 ;) (type $FUNCSIG$v)
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.get $0
i32.load offset=4
@ -1944,7 +1947,7 @@
call $~lib/rt/__visit_members
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
i32.load offset=4
@ -1961,7 +1964,7 @@
i32.const 4
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.get $0
i32.load offset=4
@ -1998,7 +2001,7 @@
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.get $0
i32.load offset=4
@ -2027,7 +2030,7 @@
local.get $0
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 $3 i32)
local.get $0
@ -2090,7 +2093,7 @@
if
i32.const 0
i32.const 40
i32.const 74
i32.const 75
i32.const 17
call $~lib/builtins/abort
unreachable
@ -2137,7 +2140,7 @@
if
i32.const 0
i32.const 40
i32.const 85
i32.const 86
i32.const 6
call $~lib/builtins/abort
unreachable
@ -2174,14 +2177,14 @@
if
i32.const 0
i32.const 40
i32.const 96
i32.const 97
i32.const 24
call $~lib/builtins/abort
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)
(local $2 i32)
block
end
@ -2238,6 +2241,6 @@
unreachable
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$viii (func (param 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" "release" (func $~lib/rt/pure/onDecrement (param i32)))
(import "rtrace" "free" (func $~lib/rt/tlsf/onFree (param i32)))
(import "rtrace" "onincrement" (func $~lib/rt/rtrace/onincrement (param i32)))
(import "rtrace" "ondecrement" (func $~lib/rt/rtrace/ondecrement (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)
(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")
@ -24,7 +25,7 @@
(global $~lib/rt/pure/ROOTS (mut i32) (i32.const 0))
(export "memory" (memory $0))
(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.get $0
i32.load offset=4
@ -40,7 +41,7 @@
if
i32.const 0
i32.const 40
i32.const 103
i32.const 104
i32.const 2
call $~lib/builtins/abort
unreachable
@ -51,7 +52,7 @@
i32.add
i32.store offset=4
local.get $0
call $~lib/rt/pure/onIncrement
call $~lib/rt/rtrace/onincrement
local.get $0
i32.load
i32.const 1
@ -59,13 +60,13 @@
if
i32.const 0
i32.const 40
i32.const 106
i32.const 107
i32.const 13
call $~lib/builtins/abort
unreachable
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
i32.const 308
i32.gt_u
@ -77,7 +78,7 @@
end
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 $3 i32)
(local $4 i32)
@ -91,7 +92,7 @@
if
i32.const 0
i32.const 88
i32.const 275
i32.const 276
i32.const 13
call $~lib/builtins/abort
unreachable
@ -113,7 +114,7 @@
if
i32.const 0
i32.const 88
i32.const 277
i32.const 278
i32.const 13
call $~lib/builtins/abort
unreachable
@ -158,7 +159,7 @@
if
i32.const 0
i32.const 88
i32.const 290
i32.const 291
i32.const 13
call $~lib/builtins/abort
unreachable
@ -243,7 +244,7 @@
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 $3 i32)
(local $4 i32)
@ -255,7 +256,7 @@
if
i32.const 0
i32.const 88
i32.const 203
i32.const 204
i32.const 13
call $~lib/builtins/abort
unreachable
@ -269,7 +270,7 @@
if
i32.const 0
i32.const 88
i32.const 205
i32.const 206
i32.const 13
call $~lib/builtins/abort
unreachable
@ -342,7 +343,7 @@
if
i32.const 0
i32.const 88
i32.const 226
i32.const 227
i32.const 15
call $~lib/builtins/abort
unreachable
@ -399,7 +400,7 @@
if
i32.const 0
i32.const 88
i32.const 241
i32.const 242
i32.const 13
call $~lib/builtins/abort
unreachable
@ -414,7 +415,7 @@
if
i32.const 0
i32.const 88
i32.const 242
i32.const 243
i32.const 13
call $~lib/builtins/abort
unreachable
@ -464,7 +465,7 @@
if
i32.const 0
i32.const 88
i32.const 258
i32.const 259
i32.const 13
call $~lib/builtins/abort
unreachable
@ -528,7 +529,7 @@
i32.or
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.get $1
i32.load
@ -538,7 +539,7 @@
if
i32.const 0
i32.const 88
i32.const 530
i32.const 531
i32.const 2
call $~lib/builtins/abort
unreachable
@ -552,9 +553,9 @@
local.get $1
call $~lib/rt/tlsf/insertBlock
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
i32.const 272
i32.load
@ -574,7 +575,7 @@
i32.add
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 $4 i32)
local.get $2
@ -596,7 +597,7 @@
if
i32.const 0
i32.const 88
i32.const 384
i32.const 385
i32.const 4
call $~lib/builtins/abort
unreachable
@ -613,7 +614,7 @@
if
i32.const 0
i32.const 88
i32.const 394
i32.const 395
i32.const 15
call $~lib/builtins/abort
unreachable
@ -641,7 +642,7 @@
if
i32.const 0
i32.const 88
i32.const 406
i32.const 407
i32.const 4
call $~lib/builtins/abort
unreachable
@ -688,7 +689,7 @@
local.get $1
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 $1 i32)
i32.const 1
@ -771,14 +772,14 @@
i32.const 320
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
i32.const 1073741808
i32.ge_u
if
i32.const 232
i32.const 88
i32.const 446
i32.const 447
i32.const 29
call $~lib/builtins/abort
unreachable
@ -795,7 +796,7 @@
i32.gt_u
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.get $1
i32.const 256
@ -853,7 +854,7 @@
if
i32.const 0
i32.const 88
i32.const 336
i32.const 337
i32.const 13
call $~lib/builtins/abort
unreachable
@ -905,7 +906,7 @@
if
i32.const 0
i32.const 88
i32.const 349
i32.const 350
i32.const 17
call $~lib/builtins/abort
unreachable
@ -926,7 +927,7 @@
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)
memory.size
local.tee $2
@ -963,7 +964,7 @@
i32.shl
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 $4 i32)
local.get $1
@ -975,7 +976,7 @@
if
i32.const 0
i32.const 88
i32.const 363
i32.const 364
i32.const 13
call $~lib/builtins/abort
unreachable
@ -1039,7 +1040,7 @@
i32.store
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 $3 i32)
local.get $0
@ -1061,7 +1062,7 @@
if
i32.const 0
i32.const 88
i32.const 476
i32.const 477
i32.const 15
call $~lib/builtins/abort
unreachable
@ -1076,7 +1077,7 @@
if
i32.const 0
i32.const 88
i32.const 478
i32.const 479
i32.const 13
call $~lib/builtins/abort
unreachable
@ -1095,8 +1096,10 @@
local.get $3
call $~lib/rt/tlsf/prepareBlock
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)
global.get $~lib/rt/tlsf/ROOT
local.tee $2
@ -1115,7 +1118,7 @@
i32.const 16
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 $4 i32)
block $~lib/util/memory/memmove|inlined.0
@ -1288,7 +1291,7 @@
end
end
)
(func $~lib/rt/pure/growRoots (; 19 ;) (type $FUNCSIG$v)
(func $~lib/rt/pure/growRoots (; 20 ;) (type $FUNCSIG$v)
(local $0 i32)
(local $1 i32)
(local $2 i32)
@ -1324,7 +1327,7 @@
i32.add
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)
global.get $~lib/rt/pure/CUR
local.tee $1
@ -1343,7 +1346,7 @@
i32.add
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 $2 i32)
local.get $0
@ -1353,7 +1356,7 @@
i32.and
local.set $1
local.get $0
call $~lib/rt/pure/onDecrement
call $~lib/rt/rtrace/ondecrement
local.get $0
i32.load
i32.const 1
@ -1361,7 +1364,7 @@
if
i32.const 0
i32.const 40
i32.const 114
i32.const 115
i32.const 13
call $~lib/builtins/abort
unreachable
@ -1394,7 +1397,7 @@
if
i32.const 0
i32.const 40
i32.const 123
i32.const 124
i32.const 15
call $~lib/builtins/abort
unreachable
@ -1433,7 +1436,7 @@
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
i32.const 308
i32.gt_u
@ -1444,7 +1447,7 @@
call $~lib/rt/pure/decrement
end
)
(func $start (; 23 ;) (type $FUNCSIG$v)
(func $start (; 24 ;) (type $FUNCSIG$v)
i32.const 24
call $~lib/rt/pure/__retain
call $~lib/rt/pure/__release
@ -1457,7 +1460,7 @@
call $~lib/rt/pure/__retain
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.get $0
i32.load offset=4
@ -1481,7 +1484,7 @@
call $~lib/rt/__visit_members
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
i32.load offset=4
@ -1494,7 +1497,7 @@
i32.const 4
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.get $0
i32.load offset=4
@ -1528,7 +1531,7 @@
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.get $0
i32.load offset=4
@ -1556,7 +1559,7 @@
local.get $0
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
i32.const 308
i32.lt_u
@ -1602,7 +1605,7 @@
if
i32.const 0
i32.const 40
i32.const 74
i32.const 75
i32.const 17
call $~lib/builtins/abort
unreachable
@ -1635,7 +1638,7 @@
if
i32.const 0
i32.const 40
i32.const 85
i32.const 86
i32.const 6
call $~lib/builtins/abort
unreachable
@ -1660,13 +1663,13 @@
end
i32.const 0
i32.const 40
i32.const 96
i32.const 97
i32.const 24
call $~lib/builtins/abort
unreachable
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$case$4
block $switch$1$case$2
@ -1690,7 +1693,7 @@
end
unreachable
)
(func $null (; 30 ;) (type $FUNCSIG$v)
(func $null (; 31 ;) (type $FUNCSIG$v)
nop
)
)

View File

@ -9,9 +9,10 @@
(type $FUNCSIG$viii (func (param i32 i32 i32)))
(type $FUNCSIG$i (func (result 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" "release" (func $~lib/rt/pure/onDecrement (param i32)))
(import "rtrace" "free" (func $~lib/rt/tlsf/onFree (param i32)))
(import "rtrace" "onincrement" (func $~lib/rt/rtrace/onincrement (param i32)))
(import "rtrace" "ondecrement" (func $~lib/rt/rtrace/ondecrement (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)
(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")
@ -30,7 +31,7 @@
(global $~lib/heap/HEAP_BASE i32 (i32.const 308))
(export "memory" (memory $0))
(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.get $0
i32.load offset=4
@ -52,7 +53,7 @@
if
i32.const 0
i32.const 40
i32.const 103
i32.const 104
i32.const 2
call $~lib/builtins/abort
unreachable
@ -63,7 +64,7 @@
i32.add
i32.store offset=4
local.get $0
call $~lib/rt/pure/onIncrement
call $~lib/rt/rtrace/onincrement
local.get $0
i32.load
i32.const 1
@ -73,13 +74,13 @@
if
i32.const 0
i32.const 40
i32.const 106
i32.const 107
i32.const 13
call $~lib/builtins/abort
unreachable
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
global.get $~lib/heap/HEAP_BASE
i32.gt_u
@ -91,7 +92,7 @@
end
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 $3 i32)
(local $4 i32)
@ -112,7 +113,7 @@
if
i32.const 0
i32.const 88
i32.const 275
i32.const 276
i32.const 13
call $~lib/builtins/abort
unreachable
@ -137,7 +138,7 @@
if
i32.const 0
i32.const 88
i32.const 277
i32.const 278
i32.const 13
call $~lib/builtins/abort
unreachable
@ -189,7 +190,7 @@
if
i32.const 0
i32.const 88
i32.const 290
i32.const 291
i32.const 13
call $~lib/builtins/abort
unreachable
@ -309,7 +310,7 @@
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 $3 i32)
(local $4 i32)
@ -327,7 +328,7 @@
if
i32.const 0
i32.const 88
i32.const 203
i32.const 204
i32.const 13
call $~lib/builtins/abort
unreachable
@ -342,7 +343,7 @@
if
i32.const 0
i32.const 88
i32.const 205
i32.const 206
i32.const 13
call $~lib/builtins/abort
unreachable
@ -441,7 +442,7 @@
if
i32.const 0
i32.const 88
i32.const 226
i32.const 227
i32.const 15
call $~lib/builtins/abort
unreachable
@ -504,7 +505,7 @@
if
i32.const 0
i32.const 88
i32.const 241
i32.const 242
i32.const 13
call $~lib/builtins/abort
unreachable
@ -520,7 +521,7 @@
if
i32.const 0
i32.const 88
i32.const 242
i32.const 243
i32.const 13
call $~lib/builtins/abort
unreachable
@ -577,7 +578,7 @@
if
i32.const 0
i32.const 88
i32.const 258
i32.const 259
i32.const 13
call $~lib/builtins/abort
unreachable
@ -673,7 +674,7 @@
i32.store offset=4
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.get $1
i32.load
@ -686,7 +687,7 @@
if
i32.const 0
i32.const 88
i32.const 530
i32.const 531
i32.const 2
call $~lib/builtins/abort
unreachable
@ -700,9 +701,9 @@
local.get $1
call $~lib/rt/tlsf/insertBlock
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)
global.get $~lib/rt/RTTI_BASE
local.set $1
@ -727,7 +728,7 @@
i32.add
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 $4 i32)
(local $5 i32)
@ -758,7 +759,7 @@
if
i32.const 0
i32.const 88
i32.const 384
i32.const 385
i32.const 4
call $~lib/builtins/abort
unreachable
@ -783,7 +784,7 @@
if
i32.const 0
i32.const 88
i32.const 394
i32.const 395
i32.const 15
call $~lib/builtins/abort
unreachable
@ -814,7 +815,7 @@
if
i32.const 0
i32.const 88
i32.const 406
i32.const 407
i32.const 4
call $~lib/builtins/abort
unreachable
@ -879,7 +880,7 @@
call $~lib/rt/tlsf/insertBlock
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 $1 i32)
(local $2 i32)
@ -1032,7 +1033,7 @@
local.get $3
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 $2 i32)
local.get $0
@ -1041,7 +1042,7 @@
if
i32.const 232
i32.const 88
i32.const 446
i32.const 447
i32.const 29
call $~lib/builtins/abort
unreachable
@ -1061,7 +1062,7 @@
i32.gt_u
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 $3 i32)
(local $4 i32)
@ -1135,7 +1136,7 @@
if
i32.const 0
i32.const 88
i32.const 336
i32.const 337
i32.const 13
call $~lib/builtins/abort
unreachable
@ -1202,7 +1203,7 @@
if
i32.const 0
i32.const 88
i32.const 349
i32.const 350
i32.const 17
call $~lib/builtins/abort
unreachable
@ -1252,7 +1253,7 @@
end
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 $3 i32)
(local $4 i32)
@ -1305,7 +1306,7 @@
call $~lib/rt/tlsf/addMemory
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 $4 i32)
(local $5 i32)
@ -1320,7 +1321,7 @@
if
i32.const 0
i32.const 88
i32.const 363
i32.const 364
i32.const 13
call $~lib/builtins/abort
unreachable
@ -1404,7 +1405,7 @@
i32.store
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 $3 i32)
local.get $1
@ -1429,7 +1430,7 @@
if
i32.const 0
i32.const 88
i32.const 476
i32.const 477
i32.const 15
call $~lib/builtins/abort
unreachable
@ -1447,7 +1448,7 @@
if
i32.const 0
i32.const 88
i32.const 478
i32.const 479
i32.const 13
call $~lib/builtins/abort
unreachable
@ -1466,8 +1467,10 @@
local.get $2
call $~lib/rt/tlsf/prepareBlock
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 $3 i32)
global.get $~lib/rt/tlsf/ROOT
@ -1490,7 +1493,7 @@
i32.const 16
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 $4 i32)
(local $5 i32)
@ -1696,7 +1699,7 @@
end
end
)
(func $~lib/rt/pure/growRoots (; 19 ;) (type $FUNCSIG$v)
(func $~lib/rt/pure/growRoots (; 20 ;) (type $FUNCSIG$v)
(local $0 i32)
(local $1 i32)
(local $2 i32)
@ -1741,7 +1744,7 @@
i32.add
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)
global.get $~lib/rt/pure/CUR
local.set $1
@ -1761,7 +1764,7 @@
i32.add
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 $2 i32)
local.get $0
@ -1772,7 +1775,7 @@
i32.and
local.set $2
local.get $0
call $~lib/rt/pure/onDecrement
call $~lib/rt/rtrace/ondecrement
local.get $0
i32.load
i32.const 1
@ -1782,7 +1785,7 @@
if
i32.const 0
i32.const 40
i32.const 114
i32.const 115
i32.const 13
call $~lib/builtins/abort
unreachable
@ -1821,7 +1824,7 @@
if
i32.const 0
i32.const 40
i32.const 123
i32.const 124
i32.const 15
call $~lib/builtins/abort
unreachable
@ -1865,7 +1868,7 @@
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
global.get $~lib/heap/HEAP_BASE
i32.gt_u
@ -1876,11 +1879,11 @@
call $~lib/rt/pure/decrement
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
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
i32.eqz
if
@ -1892,7 +1895,7 @@
end
local.get $0
)
(func $start:rc/local-init (; 25 ;) (type $FUNCSIG$v)
(func $start:rc/local-init (; 26 ;) (type $FUNCSIG$v)
(local $0 i32)
block
i32.const 24
@ -1915,10 +1918,10 @@
call $~lib/rt/pure/__release
end
)
(func $start (; 26 ;) (type $FUNCSIG$v)
(func $start (; 27 ;) (type $FUNCSIG$v)
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.get $0
i32.load offset=4
@ -1945,7 +1948,7 @@
call $~lib/rt/__visit_members
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
i32.load offset=4
@ -1962,7 +1965,7 @@
i32.const 4
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.get $0
i32.load offset=4
@ -1999,7 +2002,7 @@
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.get $0
i32.load offset=4
@ -2028,7 +2031,7 @@
local.get $0
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 $3 i32)
local.get $0
@ -2091,7 +2094,7 @@
if
i32.const 0
i32.const 40
i32.const 74
i32.const 75
i32.const 17
call $~lib/builtins/abort
unreachable
@ -2138,7 +2141,7 @@
if
i32.const 0
i32.const 40
i32.const 85
i32.const 86
i32.const 6
call $~lib/builtins/abort
unreachable
@ -2175,14 +2178,14 @@
if
i32.const 0
i32.const 40
i32.const 96
i32.const 97
i32.const 24
call $~lib/builtins/abort
unreachable
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)
block
end
@ -2239,6 +2242,6 @@
unreachable
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$i (func (result 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" "release" (func $~lib/rt/pure/onDecrement (param i32)))
(import "rtrace" "free" (func $~lib/rt/tlsf/onFree (param i32)))
(import "rtrace" "onalloc" (func $~lib/rt/rtrace/onalloc (param i32)))
(import "rtrace" "onincrement" (func $~lib/rt/rtrace/onincrement (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)
(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")
@ -25,7 +26,7 @@
(global $~lib/rt/pure/ROOTS (mut i32) (i32.const 0))
(export "memory" (memory $0))
(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 $3 i32)
(local $4 i32)
@ -39,7 +40,7 @@
if
i32.const 0
i32.const 24
i32.const 275
i32.const 276
i32.const 13
call $~lib/builtins/abort
unreachable
@ -61,7 +62,7 @@
if
i32.const 0
i32.const 24
i32.const 277
i32.const 278
i32.const 13
call $~lib/builtins/abort
unreachable
@ -106,7 +107,7 @@
if
i32.const 0
i32.const 24
i32.const 290
i32.const 291
i32.const 13
call $~lib/builtins/abort
unreachable
@ -191,7 +192,7 @@
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 $3 i32)
(local $4 i32)
@ -203,7 +204,7 @@
if
i32.const 0
i32.const 24
i32.const 203
i32.const 204
i32.const 13
call $~lib/builtins/abort
unreachable
@ -217,7 +218,7 @@
if
i32.const 0
i32.const 24
i32.const 205
i32.const 206
i32.const 13
call $~lib/builtins/abort
unreachable
@ -290,7 +291,7 @@
if
i32.const 0
i32.const 24
i32.const 226
i32.const 227
i32.const 15
call $~lib/builtins/abort
unreachable
@ -347,7 +348,7 @@
if
i32.const 0
i32.const 24
i32.const 241
i32.const 242
i32.const 13
call $~lib/builtins/abort
unreachable
@ -362,7 +363,7 @@
if
i32.const 0
i32.const 24
i32.const 242
i32.const 243
i32.const 13
call $~lib/builtins/abort
unreachable
@ -412,7 +413,7 @@
if
i32.const 0
i32.const 24
i32.const 258
i32.const 259
i32.const 13
call $~lib/builtins/abort
unreachable
@ -476,7 +477,7 @@
i32.or
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 $4 i32)
local.get $2
@ -498,7 +499,7 @@
if
i32.const 0
i32.const 24
i32.const 384
i32.const 385
i32.const 4
call $~lib/builtins/abort
unreachable
@ -515,7 +516,7 @@
if
i32.const 0
i32.const 24
i32.const 394
i32.const 395
i32.const 15
call $~lib/builtins/abort
unreachable
@ -543,7 +544,7 @@
if
i32.const 0
i32.const 24
i32.const 406
i32.const 407
i32.const 4
call $~lib/builtins/abort
unreachable
@ -590,7 +591,7 @@
local.get $1
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 $1 i32)
i32.const 1
@ -673,14 +674,14 @@
i32.const 304
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
i32.const 1073741808
i32.ge_u
if
i32.const 72
i32.const 24
i32.const 446
i32.const 447
i32.const 29
call $~lib/builtins/abort
unreachable
@ -697,7 +698,7 @@
i32.gt_u
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.get $1
i32.const 256
@ -755,7 +756,7 @@
if
i32.const 0
i32.const 24
i32.const 336
i32.const 337
i32.const 13
call $~lib/builtins/abort
unreachable
@ -807,7 +808,7 @@
if
i32.const 0
i32.const 24
i32.const 349
i32.const 350
i32.const 17
call $~lib/builtins/abort
unreachable
@ -828,7 +829,7 @@
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)
memory.size
local.tee $2
@ -865,7 +866,7 @@
i32.shl
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 $4 i32)
local.get $1
@ -877,7 +878,7 @@
if
i32.const 0
i32.const 24
i32.const 363
i32.const 364
i32.const 13
call $~lib/builtins/abort
unreachable
@ -941,7 +942,7 @@
i32.store
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 $3 i32)
local.get $0
@ -963,7 +964,7 @@
if
i32.const 0
i32.const 24
i32.const 476
i32.const 477
i32.const 15
call $~lib/builtins/abort
unreachable
@ -978,7 +979,7 @@
if
i32.const 0
i32.const 24
i32.const 478
i32.const 479
i32.const 13
call $~lib/builtins/abort
unreachable
@ -997,8 +998,10 @@
local.get $3
call $~lib/rt/tlsf/prepareBlock
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)
global.get $~lib/rt/tlsf/ROOT
local.tee $2
@ -1017,7 +1020,7 @@
i32.const 16
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.get $0
i32.load offset=4
@ -1033,7 +1036,7 @@
if
i32.const 0
i32.const 128
i32.const 103
i32.const 104
i32.const 2
call $~lib/builtins/abort
unreachable
@ -1044,7 +1047,7 @@
i32.add
i32.store offset=4
local.get $0
call $~lib/rt/pure/onIncrement
call $~lib/rt/rtrace/onincrement
local.get $0
i32.load
i32.const 1
@ -1052,13 +1055,13 @@
if
i32.const 0
i32.const 128
i32.const 106
i32.const 107
i32.const 13
call $~lib/builtins/abort
unreachable
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
i32.const 292
i32.gt_u
@ -1070,13 +1073,13 @@
end
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 3
call $~lib/rt/tlsf/__alloc
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.get $1
i32.load
@ -1086,7 +1089,7 @@
if
i32.const 0
i32.const 24
i32.const 530
i32.const 531
i32.const 2
call $~lib/builtins/abort
unreachable
@ -1100,9 +1103,9 @@
local.get $1
call $~lib/rt/tlsf/insertBlock
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
i32.const 256
i32.load
@ -1122,7 +1125,7 @@
i32.add
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 $4 i32)
block $~lib/util/memory/memmove|inlined.0
@ -1295,7 +1298,7 @@
end
end
)
(func $~lib/rt/pure/growRoots (; 20 ;) (type $FUNCSIG$v)
(func $~lib/rt/pure/growRoots (; 21 ;) (type $FUNCSIG$v)
(local $0 i32)
(local $1 i32)
(local $2 i32)
@ -1331,7 +1334,7 @@
i32.add
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)
global.get $~lib/rt/pure/CUR
local.tee $1
@ -1350,7 +1353,7 @@
i32.add
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 $2 i32)
local.get $0
@ -1360,7 +1363,7 @@
i32.and
local.set $1
local.get $0
call $~lib/rt/pure/onDecrement
call $~lib/rt/rtrace/ondecrement
local.get $0
i32.load
i32.const 1
@ -1368,7 +1371,7 @@
if
i32.const 0
i32.const 128
i32.const 114
i32.const 115
i32.const 13
call $~lib/builtins/abort
unreachable
@ -1401,7 +1404,7 @@
if
i32.const 0
i32.const 128
i32.const 123
i32.const 124
i32.const 15
call $~lib/builtins/abort
unreachable
@ -1440,7 +1443,7 @@
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
i32.const 292
i32.gt_u
@ -1451,7 +1454,7 @@
call $~lib/rt/pure/decrement
end
)
(func $start:rc/logical-and-mismatch (; 24 ;) (type $FUNCSIG$v)
(func $start:rc/logical-and-mismatch (; 25 ;) (type $FUNCSIG$v)
(local $0 i32)
call $rc/logical-and-mismatch/Ref#constructor
global.set $rc/logical-and-mismatch/gloRef
@ -1497,10 +1500,10 @@
global.get $rc/logical-and-mismatch/gloRef
call $~lib/rt/pure/__release
)
(func $start (; 25 ;) (type $FUNCSIG$v)
(func $start (; 26 ;) (type $FUNCSIG$v)
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.get $0
i32.load offset=4
@ -1524,7 +1527,7 @@
call $~lib/rt/__visit_members
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
i32.load offset=4
@ -1537,7 +1540,7 @@
i32.const 4
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.get $0
i32.load offset=4
@ -1571,7 +1574,7 @@
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.get $0
i32.load offset=4
@ -1599,7 +1602,7 @@
local.get $0
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
i32.const 292
i32.lt_u
@ -1645,7 +1648,7 @@
if
i32.const 0
i32.const 128
i32.const 74
i32.const 75
i32.const 17
call $~lib/builtins/abort
unreachable
@ -1678,7 +1681,7 @@
if
i32.const 0
i32.const 128
i32.const 85
i32.const 86
i32.const 6
call $~lib/builtins/abort
unreachable
@ -1703,13 +1706,13 @@
end
i32.const 0
i32.const 128
i32.const 96
i32.const 97
i32.const 24
call $~lib/builtins/abort
unreachable
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$case$4
block $switch$1$case$2
@ -1733,7 +1736,7 @@
end
unreachable
)
(func $null (; 32 ;) (type $FUNCSIG$v)
(func $null (; 33 ;) (type $FUNCSIG$v)
nop
)
)

View File

@ -9,9 +9,10 @@
(type $FUNCSIG$vi (func (param i32)))
(type $FUNCSIG$i (func (result 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" "release" (func $~lib/rt/pure/onDecrement (param i32)))
(import "rtrace" "free" (func $~lib/rt/tlsf/onFree (param i32)))
(import "rtrace" "onalloc" (func $~lib/rt/rtrace/onalloc (param i32)))
(import "rtrace" "onincrement" (func $~lib/rt/rtrace/onincrement (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)
(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")
@ -30,7 +31,7 @@
(global $~lib/heap/HEAP_BASE i32 (i32.const 292))
(export "memory" (memory $0))
(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 $3 i32)
(local $4 i32)
@ -51,7 +52,7 @@
if
i32.const 0
i32.const 24
i32.const 275
i32.const 276
i32.const 13
call $~lib/builtins/abort
unreachable
@ -76,7 +77,7 @@
if
i32.const 0
i32.const 24
i32.const 277
i32.const 278
i32.const 13
call $~lib/builtins/abort
unreachable
@ -128,7 +129,7 @@
if
i32.const 0
i32.const 24
i32.const 290
i32.const 291
i32.const 13
call $~lib/builtins/abort
unreachable
@ -248,7 +249,7 @@
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 $3 i32)
(local $4 i32)
@ -266,7 +267,7 @@
if
i32.const 0
i32.const 24
i32.const 203
i32.const 204
i32.const 13
call $~lib/builtins/abort
unreachable
@ -281,7 +282,7 @@
if
i32.const 0
i32.const 24
i32.const 205
i32.const 206
i32.const 13
call $~lib/builtins/abort
unreachable
@ -380,7 +381,7 @@
if
i32.const 0
i32.const 24
i32.const 226
i32.const 227
i32.const 15
call $~lib/builtins/abort
unreachable
@ -443,7 +444,7 @@
if
i32.const 0
i32.const 24
i32.const 241
i32.const 242
i32.const 13
call $~lib/builtins/abort
unreachable
@ -459,7 +460,7 @@
if
i32.const 0
i32.const 24
i32.const 242
i32.const 243
i32.const 13
call $~lib/builtins/abort
unreachable
@ -516,7 +517,7 @@
if
i32.const 0
i32.const 24
i32.const 258
i32.const 259
i32.const 13
call $~lib/builtins/abort
unreachable
@ -612,7 +613,7 @@
i32.store offset=4
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 $4 i32)
(local $5 i32)
@ -643,7 +644,7 @@
if
i32.const 0
i32.const 24
i32.const 384
i32.const 385
i32.const 4
call $~lib/builtins/abort
unreachable
@ -668,7 +669,7 @@
if
i32.const 0
i32.const 24
i32.const 394
i32.const 395
i32.const 15
call $~lib/builtins/abort
unreachable
@ -699,7 +700,7 @@
if
i32.const 0
i32.const 24
i32.const 406
i32.const 407
i32.const 4
call $~lib/builtins/abort
unreachable
@ -764,7 +765,7 @@
call $~lib/rt/tlsf/insertBlock
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 $1 i32)
(local $2 i32)
@ -917,7 +918,7 @@
local.get $3
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 $2 i32)
local.get $0
@ -926,7 +927,7 @@
if
i32.const 72
i32.const 24
i32.const 446
i32.const 447
i32.const 29
call $~lib/builtins/abort
unreachable
@ -946,7 +947,7 @@
i32.gt_u
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 $3 i32)
(local $4 i32)
@ -1020,7 +1021,7 @@
if
i32.const 0
i32.const 24
i32.const 336
i32.const 337
i32.const 13
call $~lib/builtins/abort
unreachable
@ -1087,7 +1088,7 @@
if
i32.const 0
i32.const 24
i32.const 349
i32.const 350
i32.const 17
call $~lib/builtins/abort
unreachable
@ -1137,7 +1138,7 @@
end
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 $3 i32)
(local $4 i32)
@ -1190,7 +1191,7 @@
call $~lib/rt/tlsf/addMemory
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 $4 i32)
(local $5 i32)
@ -1205,7 +1206,7 @@
if
i32.const 0
i32.const 24
i32.const 363
i32.const 364
i32.const 13
call $~lib/builtins/abort
unreachable
@ -1289,7 +1290,7 @@
i32.store
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 $3 i32)
local.get $1
@ -1314,7 +1315,7 @@
if
i32.const 0
i32.const 24
i32.const 476
i32.const 477
i32.const 15
call $~lib/builtins/abort
unreachable
@ -1332,7 +1333,7 @@
if
i32.const 0
i32.const 24
i32.const 478
i32.const 479
i32.const 13
call $~lib/builtins/abort
unreachable
@ -1351,8 +1352,10 @@
local.get $2
call $~lib/rt/tlsf/prepareBlock
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 $3 i32)
global.get $~lib/rt/tlsf/ROOT
@ -1375,7 +1378,7 @@
i32.const 16
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.get $0
i32.load offset=4
@ -1397,7 +1400,7 @@
if
i32.const 0
i32.const 128
i32.const 103
i32.const 104
i32.const 2
call $~lib/builtins/abort
unreachable
@ -1408,7 +1411,7 @@
i32.add
i32.store offset=4
local.get $0
call $~lib/rt/pure/onIncrement
call $~lib/rt/rtrace/onincrement
local.get $0
i32.load
i32.const 1
@ -1418,13 +1421,13 @@
if
i32.const 0
i32.const 128
i32.const 106
i32.const 107
i32.const 13
call $~lib/builtins/abort
unreachable
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
global.get $~lib/heap/HEAP_BASE
i32.gt_u
@ -1436,7 +1439,7 @@
end
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
i32.eqz
if
@ -1448,11 +1451,11 @@
end
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
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.get $1
i32.load
@ -1465,7 +1468,7 @@
if
i32.const 0
i32.const 24
i32.const 530
i32.const 531
i32.const 2
call $~lib/builtins/abort
unreachable
@ -1479,9 +1482,9 @@
local.get $1
call $~lib/rt/tlsf/insertBlock
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)
global.get $~lib/rt/RTTI_BASE
local.set $1
@ -1506,7 +1509,7 @@
i32.add
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 $4 i32)
(local $5 i32)
@ -1712,7 +1715,7 @@
end
end
)
(func $~lib/rt/pure/growRoots (; 21 ;) (type $FUNCSIG$v)
(func $~lib/rt/pure/growRoots (; 22 ;) (type $FUNCSIG$v)
(local $0 i32)
(local $1 i32)
(local $2 i32)
@ -1757,7 +1760,7 @@
i32.add
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)
global.get $~lib/rt/pure/CUR
local.set $1
@ -1777,7 +1780,7 @@
i32.add
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 $2 i32)
local.get $0
@ -1788,7 +1791,7 @@
i32.and
local.set $2
local.get $0
call $~lib/rt/pure/onDecrement
call $~lib/rt/rtrace/ondecrement
local.get $0
i32.load
i32.const 1
@ -1798,7 +1801,7 @@
if
i32.const 0
i32.const 128
i32.const 114
i32.const 115
i32.const 13
call $~lib/builtins/abort
unreachable
@ -1837,7 +1840,7 @@
if
i32.const 0
i32.const 128
i32.const 123
i32.const 124
i32.const 15
call $~lib/builtins/abort
unreachable
@ -1881,7 +1884,7 @@
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
global.get $~lib/heap/HEAP_BASE
i32.gt_u
@ -1892,7 +1895,7 @@
call $~lib/rt/pure/decrement
end
)
(func $start:rc/logical-and-mismatch (; 25 ;) (type $FUNCSIG$v)
(func $start:rc/logical-and-mismatch (; 26 ;) (type $FUNCSIG$v)
(local $0 i32)
i32.const 0
call $rc/logical-and-mismatch/Ref#constructor
@ -1955,10 +1958,10 @@
global.get $rc/logical-and-mismatch/gloRef
call $~lib/rt/pure/__release
)
(func $start (; 26 ;) (type $FUNCSIG$v)
(func $start (; 27 ;) (type $FUNCSIG$v)
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.get $0
i32.load offset=4
@ -1985,7 +1988,7 @@
call $~lib/rt/__visit_members
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
i32.load offset=4
@ -2002,7 +2005,7 @@
i32.const 4
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.get $0
i32.load offset=4
@ -2039,7 +2042,7 @@
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.get $0
i32.load offset=4
@ -2068,7 +2071,7 @@
local.get $0
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 $3 i32)
local.get $0
@ -2131,7 +2134,7 @@
if
i32.const 0
i32.const 128
i32.const 74
i32.const 75
i32.const 17
call $~lib/builtins/abort
unreachable
@ -2178,7 +2181,7 @@
if
i32.const 0
i32.const 128
i32.const 85
i32.const 86
i32.const 6
call $~lib/builtins/abort
unreachable
@ -2215,14 +2218,14 @@
if
i32.const 0
i32.const 128
i32.const 96
i32.const 97
i32.const 24
call $~lib/builtins/abort
unreachable
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)
block
end
@ -2279,6 +2282,6 @@
unreachable
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$i (func (result 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" "release" (func $~lib/rt/pure/onDecrement (param i32)))
(import "rtrace" "free" (func $~lib/rt/tlsf/onFree (param i32)))
(import "rtrace" "onalloc" (func $~lib/rt/rtrace/onalloc (param i32)))
(import "rtrace" "onincrement" (func $~lib/rt/rtrace/onincrement (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)
(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")
@ -25,7 +26,7 @@
(global $~lib/rt/pure/ROOTS (mut i32) (i32.const 0))
(export "memory" (memory $0))
(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 $3 i32)
(local $4 i32)
@ -39,7 +40,7 @@
if
i32.const 0
i32.const 24
i32.const 275
i32.const 276
i32.const 13
call $~lib/builtins/abort
unreachable
@ -61,7 +62,7 @@
if
i32.const 0
i32.const 24
i32.const 277
i32.const 278
i32.const 13
call $~lib/builtins/abort
unreachable
@ -106,7 +107,7 @@
if
i32.const 0
i32.const 24
i32.const 290
i32.const 291
i32.const 13
call $~lib/builtins/abort
unreachable
@ -191,7 +192,7 @@
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 $3 i32)
(local $4 i32)
@ -203,7 +204,7 @@
if
i32.const 0
i32.const 24
i32.const 203
i32.const 204
i32.const 13
call $~lib/builtins/abort
unreachable
@ -217,7 +218,7 @@
if
i32.const 0
i32.const 24
i32.const 205
i32.const 206
i32.const 13
call $~lib/builtins/abort
unreachable
@ -290,7 +291,7 @@
if
i32.const 0
i32.const 24
i32.const 226
i32.const 227
i32.const 15
call $~lib/builtins/abort
unreachable
@ -347,7 +348,7 @@
if
i32.const 0
i32.const 24
i32.const 241
i32.const 242
i32.const 13
call $~lib/builtins/abort
unreachable
@ -362,7 +363,7 @@
if
i32.const 0
i32.const 24
i32.const 242
i32.const 243
i32.const 13
call $~lib/builtins/abort
unreachable
@ -412,7 +413,7 @@
if
i32.const 0
i32.const 24
i32.const 258
i32.const 259
i32.const 13
call $~lib/builtins/abort
unreachable
@ -476,7 +477,7 @@
i32.or
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 $4 i32)
local.get $2
@ -498,7 +499,7 @@
if
i32.const 0
i32.const 24
i32.const 384
i32.const 385
i32.const 4
call $~lib/builtins/abort
unreachable
@ -515,7 +516,7 @@
if
i32.const 0
i32.const 24
i32.const 394
i32.const 395
i32.const 15
call $~lib/builtins/abort
unreachable
@ -543,7 +544,7 @@
if
i32.const 0
i32.const 24
i32.const 406
i32.const 407
i32.const 4
call $~lib/builtins/abort
unreachable
@ -590,7 +591,7 @@
local.get $1
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 $1 i32)
i32.const 1
@ -673,14 +674,14 @@
i32.const 304
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
i32.const 1073741808
i32.ge_u
if
i32.const 72
i32.const 24
i32.const 446
i32.const 447
i32.const 29
call $~lib/builtins/abort
unreachable
@ -697,7 +698,7 @@
i32.gt_u
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.get $1
i32.const 256
@ -755,7 +756,7 @@
if
i32.const 0
i32.const 24
i32.const 336
i32.const 337
i32.const 13
call $~lib/builtins/abort
unreachable
@ -807,7 +808,7 @@
if
i32.const 0
i32.const 24
i32.const 349
i32.const 350
i32.const 17
call $~lib/builtins/abort
unreachable
@ -828,7 +829,7 @@
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)
memory.size
local.tee $2
@ -865,7 +866,7 @@
i32.shl
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 $4 i32)
local.get $1
@ -877,7 +878,7 @@
if
i32.const 0
i32.const 24
i32.const 363
i32.const 364
i32.const 13
call $~lib/builtins/abort
unreachable
@ -941,7 +942,7 @@
i32.store
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 $3 i32)
local.get $0
@ -963,7 +964,7 @@
if
i32.const 0
i32.const 24
i32.const 476
i32.const 477
i32.const 15
call $~lib/builtins/abort
unreachable
@ -978,7 +979,7 @@
if
i32.const 0
i32.const 24
i32.const 478
i32.const 479
i32.const 13
call $~lib/builtins/abort
unreachable
@ -997,8 +998,10 @@
local.get $3
call $~lib/rt/tlsf/prepareBlock
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)
global.get $~lib/rt/tlsf/ROOT
local.tee $2
@ -1017,7 +1020,7 @@
i32.const 16
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.get $0
i32.load offset=4
@ -1033,7 +1036,7 @@
if
i32.const 0
i32.const 128
i32.const 103
i32.const 104
i32.const 2
call $~lib/builtins/abort
unreachable
@ -1044,7 +1047,7 @@
i32.add
i32.store offset=4
local.get $0
call $~lib/rt/pure/onIncrement
call $~lib/rt/rtrace/onincrement
local.get $0
i32.load
i32.const 1
@ -1052,13 +1055,13 @@
if
i32.const 0
i32.const 128
i32.const 106
i32.const 107
i32.const 13
call $~lib/builtins/abort
unreachable
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
i32.const 292
i32.gt_u
@ -1070,13 +1073,13 @@
end
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 3
call $~lib/rt/tlsf/__alloc
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.get $1
i32.load
@ -1086,7 +1089,7 @@
if
i32.const 0
i32.const 24
i32.const 530
i32.const 531
i32.const 2
call $~lib/builtins/abort
unreachable
@ -1100,9 +1103,9 @@
local.get $1
call $~lib/rt/tlsf/insertBlock
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
i32.const 256
i32.load
@ -1122,7 +1125,7 @@
i32.add
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 $4 i32)
block $~lib/util/memory/memmove|inlined.0
@ -1295,7 +1298,7 @@
end
end
)
(func $~lib/rt/pure/growRoots (; 20 ;) (type $FUNCSIG$v)
(func $~lib/rt/pure/growRoots (; 21 ;) (type $FUNCSIG$v)
(local $0 i32)
(local $1 i32)
(local $2 i32)
@ -1331,7 +1334,7 @@
i32.add
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)
global.get $~lib/rt/pure/CUR
local.tee $1
@ -1350,7 +1353,7 @@
i32.add
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 $2 i32)
local.get $0
@ -1360,7 +1363,7 @@
i32.and
local.set $1
local.get $0
call $~lib/rt/pure/onDecrement
call $~lib/rt/rtrace/ondecrement
local.get $0
i32.load
i32.const 1
@ -1368,7 +1371,7 @@
if
i32.const 0
i32.const 128
i32.const 114
i32.const 115
i32.const 13
call $~lib/builtins/abort
unreachable
@ -1401,7 +1404,7 @@
if
i32.const 0
i32.const 128
i32.const 123
i32.const 124
i32.const 15
call $~lib/builtins/abort
unreachable
@ -1440,7 +1443,7 @@
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
i32.const 292
i32.gt_u
@ -1451,7 +1454,7 @@
call $~lib/rt/pure/decrement
end
)
(func $start:rc/logical-or-mismatch (; 24 ;) (type $FUNCSIG$v)
(func $start:rc/logical-or-mismatch (; 25 ;) (type $FUNCSIG$v)
(local $0 i32)
call $rc/logical-or-mismatch/Ref#constructor
global.set $rc/logical-or-mismatch/gloRef
@ -1497,10 +1500,10 @@
global.get $rc/logical-or-mismatch/gloRef
call $~lib/rt/pure/__release
)
(func $start (; 25 ;) (type $FUNCSIG$v)
(func $start (; 26 ;) (type $FUNCSIG$v)
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.get $0
i32.load offset=4
@ -1524,7 +1527,7 @@
call $~lib/rt/__visit_members
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
i32.load offset=4
@ -1537,7 +1540,7 @@
i32.const 4
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.get $0
i32.load offset=4
@ -1571,7 +1574,7 @@
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.get $0
i32.load offset=4
@ -1599,7 +1602,7 @@
local.get $0
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
i32.const 292
i32.lt_u
@ -1645,7 +1648,7 @@
if
i32.const 0
i32.const 128
i32.const 74
i32.const 75
i32.const 17
call $~lib/builtins/abort
unreachable
@ -1678,7 +1681,7 @@
if
i32.const 0
i32.const 128
i32.const 85
i32.const 86
i32.const 6
call $~lib/builtins/abort
unreachable
@ -1703,13 +1706,13 @@
end
i32.const 0
i32.const 128
i32.const 96
i32.const 97
i32.const 24
call $~lib/builtins/abort
unreachable
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$case$4
block $switch$1$case$2
@ -1733,7 +1736,7 @@
end
unreachable
)
(func $null (; 32 ;) (type $FUNCSIG$v)
(func $null (; 33 ;) (type $FUNCSIG$v)
nop
)
)

View File

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

View File

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

View File

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

View File

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

View File

@ -9,9 +9,10 @@
(type $FUNCSIG$vi (func (param i32)))
(type $FUNCSIG$i (func (result 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" "release" (func $~lib/rt/pure/onDecrement (param i32)))
(import "rtrace" "free" (func $~lib/rt/tlsf/onFree (param i32)))
(import "rtrace" "onalloc" (func $~lib/rt/rtrace/onalloc (param i32)))
(import "rtrace" "onincrement" (func $~lib/rt/rtrace/onincrement (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)
(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")
@ -32,7 +33,7 @@
(export "test1" (func $rc/ternary-mismatch/test1))
(export "test2" (func $rc/ternary-mismatch/test2))
(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 $3 i32)
(local $4 i32)
@ -53,7 +54,7 @@
if
i32.const 0
i32.const 24
i32.const 275
i32.const 276
i32.const 13
call $~lib/builtins/abort
unreachable
@ -78,7 +79,7 @@
if
i32.const 0
i32.const 24
i32.const 277
i32.const 278
i32.const 13
call $~lib/builtins/abort
unreachable
@ -130,7 +131,7 @@
if
i32.const 0
i32.const 24
i32.const 290
i32.const 291
i32.const 13
call $~lib/builtins/abort
unreachable
@ -250,7 +251,7 @@
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 $3 i32)
(local $4 i32)
@ -268,7 +269,7 @@
if
i32.const 0
i32.const 24
i32.const 203
i32.const 204
i32.const 13
call $~lib/builtins/abort
unreachable
@ -283,7 +284,7 @@
if
i32.const 0
i32.const 24
i32.const 205
i32.const 206
i32.const 13
call $~lib/builtins/abort
unreachable
@ -382,7 +383,7 @@
if
i32.const 0
i32.const 24
i32.const 226
i32.const 227
i32.const 15
call $~lib/builtins/abort
unreachable
@ -445,7 +446,7 @@
if
i32.const 0
i32.const 24
i32.const 241
i32.const 242
i32.const 13
call $~lib/builtins/abort
unreachable
@ -461,7 +462,7 @@
if
i32.const 0
i32.const 24
i32.const 242
i32.const 243
i32.const 13
call $~lib/builtins/abort
unreachable
@ -518,7 +519,7 @@
if
i32.const 0
i32.const 24
i32.const 258
i32.const 259
i32.const 13
call $~lib/builtins/abort
unreachable
@ -614,7 +615,7 @@
i32.store offset=4
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 $4 i32)
(local $5 i32)
@ -645,7 +646,7 @@
if
i32.const 0
i32.const 24
i32.const 384
i32.const 385
i32.const 4
call $~lib/builtins/abort
unreachable
@ -670,7 +671,7 @@
if
i32.const 0
i32.const 24
i32.const 394
i32.const 395
i32.const 15
call $~lib/builtins/abort
unreachable
@ -701,7 +702,7 @@
if
i32.const 0
i32.const 24
i32.const 406
i32.const 407
i32.const 4
call $~lib/builtins/abort
unreachable
@ -766,7 +767,7 @@
call $~lib/rt/tlsf/insertBlock
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 $1 i32)
(local $2 i32)
@ -919,7 +920,7 @@
local.get $3
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 $2 i32)
local.get $0
@ -928,7 +929,7 @@
if
i32.const 72
i32.const 24
i32.const 446
i32.const 447
i32.const 29
call $~lib/builtins/abort
unreachable
@ -948,7 +949,7 @@
i32.gt_u
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 $3 i32)
(local $4 i32)
@ -1022,7 +1023,7 @@
if
i32.const 0
i32.const 24
i32.const 336
i32.const 337
i32.const 13
call $~lib/builtins/abort
unreachable
@ -1089,7 +1090,7 @@
if
i32.const 0
i32.const 24
i32.const 349
i32.const 350
i32.const 17
call $~lib/builtins/abort
unreachable
@ -1139,7 +1140,7 @@
end
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 $3 i32)
(local $4 i32)
@ -1192,7 +1193,7 @@
call $~lib/rt/tlsf/addMemory
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 $4 i32)
(local $5 i32)
@ -1207,7 +1208,7 @@
if
i32.const 0
i32.const 24
i32.const 363
i32.const 364
i32.const 13
call $~lib/builtins/abort
unreachable
@ -1291,7 +1292,7 @@
i32.store
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 $3 i32)
local.get $1
@ -1316,7 +1317,7 @@
if
i32.const 0
i32.const 24
i32.const 476
i32.const 477
i32.const 15
call $~lib/builtins/abort
unreachable
@ -1334,7 +1335,7 @@
if
i32.const 0
i32.const 24
i32.const 478
i32.const 479
i32.const 13
call $~lib/builtins/abort
unreachable
@ -1353,8 +1354,10 @@
local.get $2
call $~lib/rt/tlsf/prepareBlock
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 $3 i32)
global.get $~lib/rt/tlsf/ROOT
@ -1377,7 +1380,7 @@
i32.const 16
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.get $0
i32.load offset=4
@ -1399,7 +1402,7 @@
if
i32.const 0
i32.const 128
i32.const 103
i32.const 104
i32.const 2
call $~lib/builtins/abort
unreachable
@ -1410,7 +1413,7 @@
i32.add
i32.store offset=4
local.get $0
call $~lib/rt/pure/onIncrement
call $~lib/rt/rtrace/onincrement
local.get $0
i32.load
i32.const 1
@ -1420,13 +1423,13 @@
if
i32.const 0
i32.const 128
i32.const 106
i32.const 107
i32.const 13
call $~lib/builtins/abort
unreachable
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
global.get $~lib/heap/HEAP_BASE
i32.gt_u
@ -1438,7 +1441,7 @@
end
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
i32.eqz
if
@ -1450,11 +1453,11 @@
end
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
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
if (result i32)
call $rc/ternary-mismatch/getRef
@ -1463,7 +1466,7 @@
call $~lib/rt/pure/__retain
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.get $1
i32.load
@ -1476,7 +1479,7 @@
if
i32.const 0
i32.const 24
i32.const 530
i32.const 531
i32.const 2
call $~lib/builtins/abort
unreachable
@ -1490,9 +1493,9 @@
local.get $1
call $~lib/rt/tlsf/insertBlock
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)
global.get $~lib/rt/RTTI_BASE
local.set $1
@ -1517,7 +1520,7 @@
i32.add
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 $4 i32)
(local $5 i32)
@ -1723,7 +1726,7 @@
end
end
)
(func $~lib/rt/pure/growRoots (; 22 ;) (type $FUNCSIG$v)
(func $~lib/rt/pure/growRoots (; 23 ;) (type $FUNCSIG$v)
(local $0 i32)
(local $1 i32)
(local $2 i32)
@ -1768,7 +1771,7 @@
i32.add
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)
global.get $~lib/rt/pure/CUR
local.set $1
@ -1788,7 +1791,7 @@
i32.add
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 $2 i32)
local.get $0
@ -1799,7 +1802,7 @@
i32.and
local.set $2
local.get $0
call $~lib/rt/pure/onDecrement
call $~lib/rt/rtrace/ondecrement
local.get $0
i32.load
i32.const 1
@ -1809,7 +1812,7 @@
if
i32.const 0
i32.const 128
i32.const 114
i32.const 115
i32.const 13
call $~lib/builtins/abort
unreachable
@ -1848,7 +1851,7 @@
if
i32.const 0
i32.const 128
i32.const 123
i32.const 124
i32.const 15
call $~lib/builtins/abort
unreachable
@ -1892,7 +1895,7 @@
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
global.get $~lib/heap/HEAP_BASE
i32.gt_u
@ -1903,7 +1906,7 @@
call $~lib/rt/pure/decrement
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
if (result i32)
global.get $rc/ternary-mismatch/gloRef
@ -1912,7 +1915,7 @@
call $rc/ternary-mismatch/getRef
end
)
(func $start:rc/ternary-mismatch (; 27 ;) (type $FUNCSIG$v)
(func $start:rc/ternary-mismatch (; 28 ;) (type $FUNCSIG$v)
i32.const 0
call $rc/ternary-mismatch/Ref#constructor
global.set $rc/ternary-mismatch/gloRef
@ -1931,10 +1934,10 @@
global.get $rc/ternary-mismatch/gloRef
call $~lib/rt/pure/__release
)
(func $start (; 28 ;) (type $FUNCSIG$v)
(func $start (; 29 ;) (type $FUNCSIG$v)
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.get $0
i32.load offset=4
@ -1961,7 +1964,7 @@
call $~lib/rt/__visit_members
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
i32.load offset=4
@ -1978,7 +1981,7 @@
i32.const 4
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.get $0
i32.load offset=4
@ -2015,7 +2018,7 @@
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.get $0
i32.load offset=4
@ -2044,7 +2047,7 @@
local.get $0
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 $3 i32)
local.get $0
@ -2107,7 +2110,7 @@
if
i32.const 0
i32.const 128
i32.const 74
i32.const 75
i32.const 17
call $~lib/builtins/abort
unreachable
@ -2154,7 +2157,7 @@
if
i32.const 0
i32.const 128
i32.const 85
i32.const 86
i32.const 6
call $~lib/builtins/abort
unreachable
@ -2191,14 +2194,14 @@
if
i32.const 0
i32.const 128
i32.const 96
i32.const 97
i32.const 24
call $~lib/builtins/abort
unreachable
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)
block
end
@ -2255,6 +2258,6 @@
unreachable
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$vi (func (param 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" "release" (func $~lib/rt/pure/onDecrement (param i32)))
(import "rtrace" "free" (func $~lib/rt/tlsf/onFree (param i32)))
(import "rtrace" "onalloc" (func $~lib/rt/rtrace/onalloc (param i32)))
(import "rtrace" "onincrement" (func $~lib/rt/rtrace/onincrement (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)
(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")
@ -35,7 +36,7 @@
(global $~lib/started (mut i32) (i32.const 0))
(export "memory" (memory $0))
(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 $3 i32)
(local $4 i32)
@ -49,7 +50,7 @@
if
i32.const 0
i32.const 128
i32.const 275
i32.const 276
i32.const 13
call $~lib/builtins/abort
unreachable
@ -71,7 +72,7 @@
if
i32.const 0
i32.const 128
i32.const 277
i32.const 278
i32.const 13
call $~lib/builtins/abort
unreachable
@ -116,7 +117,7 @@
if
i32.const 0
i32.const 128
i32.const 290
i32.const 291
i32.const 13
call $~lib/builtins/abort
unreachable
@ -201,7 +202,7 @@
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 $3 i32)
(local $4 i32)
@ -213,7 +214,7 @@
if
i32.const 0
i32.const 128
i32.const 203
i32.const 204
i32.const 13
call $~lib/builtins/abort
unreachable
@ -227,7 +228,7 @@
if
i32.const 0
i32.const 128
i32.const 205
i32.const 206
i32.const 13
call $~lib/builtins/abort
unreachable
@ -300,7 +301,7 @@
if
i32.const 0
i32.const 128
i32.const 226
i32.const 227
i32.const 15
call $~lib/builtins/abort
unreachable
@ -357,7 +358,7 @@
if
i32.const 0
i32.const 128
i32.const 241
i32.const 242
i32.const 13
call $~lib/builtins/abort
unreachable
@ -372,7 +373,7 @@
if
i32.const 0
i32.const 128
i32.const 242
i32.const 243
i32.const 13
call $~lib/builtins/abort
unreachable
@ -422,7 +423,7 @@
if
i32.const 0
i32.const 128
i32.const 258
i32.const 259
i32.const 13
call $~lib/builtins/abort
unreachable
@ -486,7 +487,7 @@
i32.or
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 $4 i32)
local.get $2
@ -508,7 +509,7 @@
if
i32.const 0
i32.const 128
i32.const 384
i32.const 385
i32.const 4
call $~lib/builtins/abort
unreachable
@ -525,7 +526,7 @@
if
i32.const 0
i32.const 128
i32.const 394
i32.const 395
i32.const 15
call $~lib/builtins/abort
unreachable
@ -553,7 +554,7 @@
if
i32.const 0
i32.const 128
i32.const 406
i32.const 407
i32.const 4
call $~lib/builtins/abort
unreachable
@ -600,7 +601,7 @@
local.get $1
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 $1 i32)
i32.const 1
@ -683,14 +684,14 @@
i32.const 736
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
i32.const 1073741808
i32.ge_u
if
i32.const 176
i32.const 128
i32.const 446
i32.const 447
i32.const 29
call $~lib/builtins/abort
unreachable
@ -707,7 +708,7 @@
i32.gt_u
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.get $1
i32.const 256
@ -765,7 +766,7 @@
if
i32.const 0
i32.const 128
i32.const 336
i32.const 337
i32.const 13
call $~lib/builtins/abort
unreachable
@ -817,7 +818,7 @@
if
i32.const 0
i32.const 128
i32.const 349
i32.const 350
i32.const 17
call $~lib/builtins/abort
unreachable
@ -838,7 +839,7 @@
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)
memory.size
local.tee $2
@ -875,7 +876,7 @@
i32.shl
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 $4 i32)
local.get $1
@ -887,7 +888,7 @@
if
i32.const 0
i32.const 128
i32.const 363
i32.const 364
i32.const 13
call $~lib/builtins/abort
unreachable
@ -951,7 +952,7 @@
i32.store
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 $3 i32)
local.get $0
@ -973,7 +974,7 @@
if
i32.const 0
i32.const 128
i32.const 476
i32.const 477
i32.const 15
call $~lib/builtins/abort
unreachable
@ -988,7 +989,7 @@
if
i32.const 0
i32.const 128
i32.const 478
i32.const 479
i32.const 13
call $~lib/builtins/abort
unreachable
@ -1007,8 +1008,10 @@
local.get $3
call $~lib/rt/tlsf/prepareBlock
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)
global.get $~lib/rt/tlsf/ROOT
local.tee $2
@ -1027,7 +1030,7 @@
i32.const 16
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.get $0
i32.load offset=4
@ -1043,7 +1046,7 @@
if
i32.const 0
i32.const 232
i32.const 103
i32.const 104
i32.const 2
call $~lib/builtins/abort
unreachable
@ -1054,7 +1057,7 @@
i32.add
i32.store offset=4
local.get $0
call $~lib/rt/pure/onIncrement
call $~lib/rt/rtrace/onincrement
local.get $0
i32.load
i32.const 1
@ -1062,13 +1065,13 @@
if
i32.const 0
i32.const 232
i32.const 106
i32.const 107
i32.const 13
call $~lib/builtins/abort
unreachable
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
i32.const 724
i32.gt_u
@ -1080,7 +1083,7 @@
end
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.get $1
i32.load
@ -1090,7 +1093,7 @@
if
i32.const 0
i32.const 128
i32.const 530
i32.const 531
i32.const 2
call $~lib/builtins/abort
unreachable
@ -1104,9 +1107,9 @@
local.get $1
call $~lib/rt/tlsf/insertBlock
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
i32.const 680
i32.load
@ -1126,7 +1129,7 @@
i32.add
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 $4 i32)
block $~lib/util/memory/memmove|inlined.0
@ -1299,7 +1302,7 @@
end
end
)
(func $~lib/rt/pure/growRoots (; 19 ;) (type $FUNCSIG$v)
(func $~lib/rt/pure/growRoots (; 20 ;) (type $FUNCSIG$v)
(local $0 i32)
(local $1 i32)
(local $2 i32)
@ -1335,7 +1338,7 @@
i32.add
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)
global.get $~lib/rt/pure/CUR
local.tee $1
@ -1354,7 +1357,7 @@
i32.add
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 $2 i32)
local.get $0
@ -1364,7 +1367,7 @@
i32.and
local.set $1
local.get $0
call $~lib/rt/pure/onDecrement
call $~lib/rt/rtrace/ondecrement
local.get $0
i32.load
i32.const 1
@ -1372,7 +1375,7 @@
if
i32.const 0
i32.const 232
i32.const 114
i32.const 115
i32.const 13
call $~lib/builtins/abort
unreachable
@ -1405,7 +1408,7 @@
if
i32.const 0
i32.const 232
i32.const 123
i32.const 124
i32.const 15
call $~lib/builtins/abort
unreachable
@ -1444,7 +1447,7 @@
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 $1
i32.ne
@ -1470,7 +1473,7 @@
end
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.get $1
i32.const 268435452
@ -1522,7 +1525,7 @@
i32.store offset=8
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 $4 i32)
(local $5 i32)
@ -1538,7 +1541,7 @@
if
i32.const 0
i32.const 128
i32.const 491
i32.const 493
i32.const 13
call $~lib/builtins/abort
unreachable
@ -1634,17 +1637,15 @@
local.get $0
local.get $1
call $~lib/rt/tlsf/insertBlock
local.get $1
call $~lib/rt/tlsf/onFree
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
i32.eqz
if
i32.const 0
i32.const 128
i32.const 552
i32.const 553
i32.const 13
call $~lib/builtins/abort
unreachable
@ -1660,7 +1661,7 @@
if
i32.const 0
i32.const 128
i32.const 553
i32.const 554
i32.const 2
call $~lib/builtins/abort
unreachable
@ -1674,7 +1675,7 @@
i32.const 16
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)
block $~lib/util/memory/memset|inlined.0
local.get $1
@ -1885,7 +1886,7 @@
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 $3 i32)
(local $4 i32)
@ -1940,7 +1941,7 @@
i32.store offset=8
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 $2 i32)
local.get $0
@ -1963,7 +1964,7 @@
local.get $2
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.get $0
i32.load offset=12
@ -1993,7 +1994,7 @@
local.get $1
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
i32.const 724
i32.gt_u
@ -2004,7 +2005,7 @@
call $~lib/rt/pure/decrement
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 $2 i32)
i32.const 584
@ -2036,7 +2037,7 @@
i32.const 584
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 $3 i32)
(local $4 i32)
@ -2101,7 +2102,7 @@
call $~lib/rt/pure/__release
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.get $0
call $~lib/rt/pure/__retain
@ -2122,7 +2123,7 @@
call $~lib/rt/pure/__release
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.get $0
i32.load offset=4
@ -2146,7 +2147,7 @@
call $~lib/rt/__visit_members
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
i32.load offset=4
@ -2159,7 +2160,7 @@
i32.const 4
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.get $0
i32.load offset=4
@ -2193,7 +2194,7 @@
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.get $0
i32.load offset=4
@ -2221,7 +2222,7 @@
local.get $0
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 $1 i32)
(local $2 i32)
@ -2345,7 +2346,7 @@
local.get $5
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 $1 i32)
(local $2 i32)
@ -2433,7 +2434,7 @@
call $~lib/rt/pure/__release
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
i32.eqz
if
@ -2442,7 +2443,7 @@
global.set $~lib/started
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
i32.const 724
i32.lt_u
@ -2488,7 +2489,7 @@
if
i32.const 0
i32.const 232
i32.const 74
i32.const 75
i32.const 17
call $~lib/builtins/abort
unreachable
@ -2521,7 +2522,7 @@
if
i32.const 0
i32.const 232
i32.const 85
i32.const 86
i32.const 6
call $~lib/builtins/abort
unreachable
@ -2546,13 +2547,13 @@
end
i32.const 0
i32.const 232
i32.const 96
i32.const 97
i32.const 24
call $~lib/builtins/abort
unreachable
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 $3 i32)
local.get $0
@ -2583,7 +2584,7 @@
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 $switch$1$default
block $switch$1$case$6
@ -2612,7 +2613,7 @@
call $~lib/rt/pure/__visit
end
)
(func $null (; 44 ;) (type $FUNCSIG$v)
(func $null (; 45 ;) (type $FUNCSIG$v)
nop
)
)

View File

@ -8,9 +8,10 @@
(type $FUNCSIG$viii (func (param i32 i32 i32)))
(type $FUNCSIG$vi (func (param 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" "release" (func $~lib/rt/pure/onDecrement (param i32)))
(import "rtrace" "free" (func $~lib/rt/tlsf/onFree (param i32)))
(import "rtrace" "onalloc" (func $~lib/rt/rtrace/onalloc (param i32)))
(import "rtrace" "onincrement" (func $~lib/rt/rtrace/onincrement (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)
(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")
@ -39,7 +40,7 @@
(global $~lib/heap/HEAP_BASE i32 (i32.const 724))
(export "memory" (memory $0))
(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 $3 i32)
(local $4 i32)
@ -60,7 +61,7 @@
if
i32.const 0
i32.const 128
i32.const 275
i32.const 276
i32.const 13
call $~lib/builtins/abort
unreachable
@ -85,7 +86,7 @@
if
i32.const 0
i32.const 128
i32.const 277
i32.const 278
i32.const 13
call $~lib/builtins/abort
unreachable
@ -137,7 +138,7 @@
if
i32.const 0
i32.const 128
i32.const 290
i32.const 291
i32.const 13
call $~lib/builtins/abort
unreachable
@ -257,7 +258,7 @@
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 $3 i32)
(local $4 i32)
@ -275,7 +276,7 @@
if
i32.const 0
i32.const 128
i32.const 203
i32.const 204
i32.const 13
call $~lib/builtins/abort
unreachable
@ -290,7 +291,7 @@
if
i32.const 0
i32.const 128
i32.const 205
i32.const 206
i32.const 13
call $~lib/builtins/abort
unreachable
@ -389,7 +390,7 @@
if
i32.const 0
i32.const 128
i32.const 226
i32.const 227
i32.const 15
call $~lib/builtins/abort
unreachable
@ -452,7 +453,7 @@
if
i32.const 0
i32.const 128
i32.const 241
i32.const 242
i32.const 13
call $~lib/builtins/abort
unreachable
@ -468,7 +469,7 @@
if
i32.const 0
i32.const 128
i32.const 242
i32.const 243
i32.const 13
call $~lib/builtins/abort
unreachable
@ -525,7 +526,7 @@
if
i32.const 0
i32.const 128
i32.const 258
i32.const 259
i32.const 13
call $~lib/builtins/abort
unreachable
@ -621,7 +622,7 @@
i32.store offset=4
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 $4 i32)
(local $5 i32)
@ -652,7 +653,7 @@
if
i32.const 0
i32.const 128
i32.const 384
i32.const 385
i32.const 4
call $~lib/builtins/abort
unreachable
@ -677,7 +678,7 @@
if
i32.const 0
i32.const 128
i32.const 394
i32.const 395
i32.const 15
call $~lib/builtins/abort
unreachable
@ -708,7 +709,7 @@
if
i32.const 0
i32.const 128
i32.const 406
i32.const 407
i32.const 4
call $~lib/builtins/abort
unreachable
@ -773,7 +774,7 @@
call $~lib/rt/tlsf/insertBlock
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 $1 i32)
(local $2 i32)
@ -926,7 +927,7 @@
local.get $3
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 $2 i32)
local.get $0
@ -935,7 +936,7 @@
if
i32.const 176
i32.const 128
i32.const 446
i32.const 447
i32.const 29
call $~lib/builtins/abort
unreachable
@ -955,7 +956,7 @@
i32.gt_u
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 $3 i32)
(local $4 i32)
@ -1029,7 +1030,7 @@
if
i32.const 0
i32.const 128
i32.const 336
i32.const 337
i32.const 13
call $~lib/builtins/abort
unreachable
@ -1096,7 +1097,7 @@
if
i32.const 0
i32.const 128
i32.const 349
i32.const 350
i32.const 17
call $~lib/builtins/abort
unreachable
@ -1146,7 +1147,7 @@
end
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 $3 i32)
(local $4 i32)
@ -1199,7 +1200,7 @@
call $~lib/rt/tlsf/addMemory
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 $4 i32)
(local $5 i32)
@ -1214,7 +1215,7 @@
if
i32.const 0
i32.const 128
i32.const 363
i32.const 364
i32.const 13
call $~lib/builtins/abort
unreachable
@ -1298,7 +1299,7 @@
i32.store
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 $3 i32)
local.get $1
@ -1323,7 +1324,7 @@
if
i32.const 0
i32.const 128
i32.const 476
i32.const 477
i32.const 15
call $~lib/builtins/abort
unreachable
@ -1341,7 +1342,7 @@
if
i32.const 0
i32.const 128
i32.const 478
i32.const 479
i32.const 13
call $~lib/builtins/abort
unreachable
@ -1360,8 +1361,10 @@
local.get $2
call $~lib/rt/tlsf/prepareBlock
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 $3 i32)
global.get $~lib/rt/tlsf/ROOT
@ -1384,7 +1387,7 @@
i32.const 16
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.get $0
i32.load offset=4
@ -1406,7 +1409,7 @@
if
i32.const 0
i32.const 232
i32.const 103
i32.const 104
i32.const 2
call $~lib/builtins/abort
unreachable
@ -1417,7 +1420,7 @@
i32.add
i32.store offset=4
local.get $0
call $~lib/rt/pure/onIncrement
call $~lib/rt/rtrace/onincrement
local.get $0
i32.load
i32.const 1
@ -1427,13 +1430,13 @@
if
i32.const 0
i32.const 232
i32.const 106
i32.const 107
i32.const 13
call $~lib/builtins/abort
unreachable
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
global.get $~lib/heap/HEAP_BASE
i32.gt_u
@ -1445,7 +1448,7 @@
end
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.get $1
i32.load
@ -1458,7 +1461,7 @@
if
i32.const 0
i32.const 128
i32.const 530
i32.const 531
i32.const 2
call $~lib/builtins/abort
unreachable
@ -1472,9 +1475,9 @@
local.get $1
call $~lib/rt/tlsf/insertBlock
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)
global.get $~lib/rt/RTTI_BASE
local.set $1
@ -1499,7 +1502,7 @@
i32.add
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 $4 i32)
(local $5 i32)
@ -1705,7 +1708,7 @@
end
end
)
(func $~lib/rt/pure/growRoots (; 19 ;) (type $FUNCSIG$v)
(func $~lib/rt/pure/growRoots (; 20 ;) (type $FUNCSIG$v)
(local $0 i32)
(local $1 i32)
(local $2 i32)
@ -1750,7 +1753,7 @@
i32.add
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)
global.get $~lib/rt/pure/CUR
local.set $1
@ -1770,7 +1773,7 @@
i32.add
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 $2 i32)
local.get $0
@ -1781,7 +1784,7 @@
i32.and
local.set $2
local.get $0
call $~lib/rt/pure/onDecrement
call $~lib/rt/rtrace/ondecrement
local.get $0
i32.load
i32.const 1
@ -1791,7 +1794,7 @@
if
i32.const 0
i32.const 232
i32.const 114
i32.const 115
i32.const 13
call $~lib/builtins/abort
unreachable
@ -1830,7 +1833,7 @@
if
i32.const 0
i32.const 232
i32.const 123
i32.const 124
i32.const 15
call $~lib/builtins/abort
unreachable
@ -1874,7 +1877,7 @@
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.get $1
local.get $0
@ -1903,7 +1906,7 @@
end
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 $4 i32)
local.get $1
@ -1961,7 +1964,7 @@
i32.store offset=8
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.get $0
if (result i32)
@ -1985,7 +1988,7 @@
i32.store offset=12
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 $4 i32)
(local $5 i32)
@ -2006,7 +2009,7 @@
if
i32.const 0
i32.const 128
i32.const 491
i32.const 493
i32.const 13
call $~lib/builtins/abort
unreachable
@ -2116,17 +2119,15 @@
local.get $0
local.get $1
call $~lib/rt/tlsf/insertBlock
local.get $1
call $~lib/rt/tlsf/onFree
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
i32.eqz
if
i32.const 0
i32.const 128
i32.const 552
i32.const 553
i32.const 13
call $~lib/builtins/abort
unreachable
@ -2146,7 +2147,7 @@
if
i32.const 0
i32.const 128
i32.const 553
i32.const 554
i32.const 2
call $~lib/builtins/abort
unreachable
@ -2160,7 +2161,7 @@
i32.const 16
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 $4 i32)
(local $5 i32)
@ -2423,7 +2424,7 @@
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 $4 i32)
(local $5 i32)
@ -2486,7 +2487,7 @@
i32.store offset=8
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 $3 i32)
local.get $0
@ -2513,7 +2514,7 @@
i32.store offset=12
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 $2 i32)
local.get $0
@ -2546,7 +2547,7 @@
i32.store offset=12
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
global.get $~lib/heap/HEAP_BASE
i32.gt_u
@ -2557,7 +2558,7 @@
call $~lib/rt/pure/decrement
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.get $0
if (result i32)
@ -2596,7 +2597,7 @@
i32.store offset=12
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 $3 i32)
(local $4 i32)
@ -2636,7 +2637,7 @@
call $~lib/rt/pure/__release
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
i32.const 16
i32.sub
@ -2644,7 +2645,7 @@
i32.const 1
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 $3 i32)
(local $4 i32)
@ -2709,7 +2710,7 @@
call $~lib/rt/pure/__release
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.get $0
call $~lib/rt/pure/__retain
@ -2732,7 +2733,7 @@
call $~lib/rt/pure/__release
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.get $0
i32.load offset=4
@ -2759,7 +2760,7 @@
call $~lib/rt/__visit_members
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
i32.load offset=4
@ -2776,7 +2777,7 @@
i32.const 4
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.get $0
i32.load offset=4
@ -2813,7 +2814,7 @@
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.get $0
i32.load offset=4
@ -2842,7 +2843,7 @@
local.get $0
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 $1 i32)
(local $2 i32)
@ -2990,7 +2991,7 @@
local.get $0
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 $1 i32)
(local $2 i32)
@ -3086,7 +3087,7 @@
end
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
i32.eqz
if
@ -3095,13 +3096,13 @@
global.set $~lib/started
end
)
(func $start (; 44 ;) (type $FUNCSIG$v)
(func $start (; 45 ;) (type $FUNCSIG$v)
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
)
(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 $3 i32)
local.get $0
@ -3164,7 +3165,7 @@
if
i32.const 0
i32.const 232
i32.const 74
i32.const 75
i32.const 17
call $~lib/builtins/abort
unreachable
@ -3211,7 +3212,7 @@
if
i32.const 0
i32.const 232
i32.const 85
i32.const 86
i32.const 6
call $~lib/builtins/abort
unreachable
@ -3248,14 +3249,14 @@
if
i32.const 0
i32.const 232
i32.const 96
i32.const 97
i32.const 24
call $~lib/builtins/abort
unreachable
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 $3 i32)
(local $4 i32)
@ -3291,7 +3292,7 @@
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)
block $block$4$break
block
@ -3387,6 +3388,6 @@
end
unreachable
)
(func $null (; 49 ;) (type $FUNCSIG$v)
(func $null (; 50 ;) (type $FUNCSIG$v)
)
)

View File

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

View File

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

View File

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

View File

@ -9,9 +9,10 @@
(type $FUNCSIG$viii (func (param i32 i32 i32)))
(type $FUNCSIG$vi (func (param 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" "release" (func $~lib/rt/pure/onDecrement (param i32)))
(import "rtrace" "free" (func $~lib/rt/tlsf/onFree (param i32)))
(import "rtrace" "onalloc" (func $~lib/rt/rtrace/onalloc (param i32)))
(import "rtrace" "onincrement" (func $~lib/rt/rtrace/onincrement (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)
(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")
@ -45,11 +46,11 @@
(global $~lib/heap/HEAP_BASE i32 (i32.const 604))
(export "memory" (memory $0))
(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
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
i32.load offset=4
local.get $1
@ -58,7 +59,7 @@
i32.add
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 $0
i32.load offset=8
@ -77,11 +78,11 @@
local.get $1
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
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
i32.load offset=4
local.get $1
@ -90,7 +91,7 @@
i32.add
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 $0
i32.load offset=8
@ -109,7 +110,7 @@
local.get $1
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 $3 i32)
(local $4 i32)
@ -130,7 +131,7 @@
if
i32.const 0
i32.const 352
i32.const 275
i32.const 276
i32.const 13
call $~lib/builtins/abort
unreachable
@ -155,7 +156,7 @@
if
i32.const 0
i32.const 352
i32.const 277
i32.const 278
i32.const 13
call $~lib/builtins/abort
unreachable
@ -207,7 +208,7 @@
if
i32.const 0
i32.const 352
i32.const 290
i32.const 291
i32.const 13
call $~lib/builtins/abort
unreachable
@ -327,7 +328,7 @@
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 $3 i32)
(local $4 i32)
@ -345,7 +346,7 @@
if
i32.const 0
i32.const 352
i32.const 203
i32.const 204
i32.const 13
call $~lib/builtins/abort
unreachable
@ -360,7 +361,7 @@
if
i32.const 0
i32.const 352
i32.const 205
i32.const 206
i32.const 13
call $~lib/builtins/abort
unreachable
@ -459,7 +460,7 @@
if
i32.const 0
i32.const 352
i32.const 226
i32.const 227
i32.const 15
call $~lib/builtins/abort
unreachable
@ -522,7 +523,7 @@
if
i32.const 0
i32.const 352
i32.const 241
i32.const 242
i32.const 13
call $~lib/builtins/abort
unreachable
@ -538,7 +539,7 @@
if
i32.const 0
i32.const 352
i32.const 242
i32.const 243
i32.const 13
call $~lib/builtins/abort
unreachable
@ -595,7 +596,7 @@
if
i32.const 0
i32.const 352
i32.const 258
i32.const 259
i32.const 13
call $~lib/builtins/abort
unreachable
@ -691,7 +692,7 @@
i32.store offset=4
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 $4 i32)
(local $5 i32)
@ -722,7 +723,7 @@
if
i32.const 0
i32.const 352
i32.const 384
i32.const 385
i32.const 4
call $~lib/builtins/abort
unreachable
@ -747,7 +748,7 @@
if
i32.const 0
i32.const 352
i32.const 394
i32.const 395
i32.const 15
call $~lib/builtins/abort
unreachable
@ -778,7 +779,7 @@
if
i32.const 0
i32.const 352
i32.const 406
i32.const 407
i32.const 4
call $~lib/builtins/abort
unreachable
@ -843,7 +844,7 @@
call $~lib/rt/tlsf/insertBlock
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 $1 i32)
(local $2 i32)
@ -996,7 +997,7 @@
local.get $3
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 $2 i32)
local.get $0
@ -1005,7 +1006,7 @@
if
i32.const 400
i32.const 352
i32.const 446
i32.const 447
i32.const 29
call $~lib/builtins/abort
unreachable
@ -1025,7 +1026,7 @@
i32.gt_u
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 $3 i32)
(local $4 i32)
@ -1099,7 +1100,7 @@
if
i32.const 0
i32.const 352
i32.const 336
i32.const 337
i32.const 13
call $~lib/builtins/abort
unreachable
@ -1166,7 +1167,7 @@
if
i32.const 0
i32.const 352
i32.const 349
i32.const 350
i32.const 17
call $~lib/builtins/abort
unreachable
@ -1216,7 +1217,7 @@
end
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 $3 i32)
(local $4 i32)
@ -1269,7 +1270,7 @@
call $~lib/rt/tlsf/addMemory
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 $4 i32)
(local $5 i32)
@ -1284,7 +1285,7 @@
if
i32.const 0
i32.const 352
i32.const 363
i32.const 364
i32.const 13
call $~lib/builtins/abort
unreachable
@ -1368,7 +1369,7 @@
i32.store
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 $3 i32)
local.get $1
@ -1393,7 +1394,7 @@
if
i32.const 0
i32.const 352
i32.const 476
i32.const 477
i32.const 15
call $~lib/builtins/abort
unreachable
@ -1411,7 +1412,7 @@
if
i32.const 0
i32.const 352
i32.const 478
i32.const 479
i32.const 13
call $~lib/builtins/abort
unreachable
@ -1430,8 +1431,10 @@
local.get $2
call $~lib/rt/tlsf/prepareBlock
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 $3 i32)
global.get $~lib/rt/tlsf/ROOT
@ -1454,7 +1457,7 @@
i32.const 16
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.get $0
i32.load offset=4
@ -1476,7 +1479,7 @@
if
i32.const 0
i32.const 456
i32.const 103
i32.const 104
i32.const 2
call $~lib/builtins/abort
unreachable
@ -1487,7 +1490,7 @@
i32.add
i32.store offset=4
local.get $0
call $~lib/rt/pure/onIncrement
call $~lib/rt/rtrace/onincrement
local.get $0
i32.load
i32.const 1
@ -1497,13 +1500,13 @@
if
i32.const 0
i32.const 456
i32.const 106
i32.const 107
i32.const 13
call $~lib/builtins/abort
unreachable
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
global.get $~lib/heap/HEAP_BASE
i32.gt_u
@ -1515,7 +1518,7 @@
end
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 $4 i32)
(local $5 i32)
@ -1721,7 +1724,7 @@
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 $5 i32)
(local $6 i32)
@ -1759,7 +1762,7 @@
end
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
i32.eqz
if
@ -1771,11 +1774,11 @@
end
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
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
i32.eqz
if
@ -1787,11 +1790,11 @@
end
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
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.get $1
i32.load
@ -1804,7 +1807,7 @@
if
i32.const 0
i32.const 352
i32.const 530
i32.const 531
i32.const 2
call $~lib/builtins/abort
unreachable
@ -1818,9 +1821,9 @@
local.get $1
call $~lib/rt/tlsf/insertBlock
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)
global.get $~lib/rt/RTTI_BASE
local.set $1
@ -1845,7 +1848,7 @@
i32.add
i32.load
)
(func $~lib/rt/pure/growRoots (; 30 ;) (type $FUNCSIG$v)
(func $~lib/rt/pure/growRoots (; 31 ;) (type $FUNCSIG$v)
(local $0 i32)
(local $1 i32)
(local $2 i32)
@ -1890,7 +1893,7 @@
i32.add
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)
global.get $~lib/rt/pure/CUR
local.set $1
@ -1910,7 +1913,7 @@
i32.add
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 $2 i32)
local.get $0
@ -1921,7 +1924,7 @@
i32.and
local.set $2
local.get $0
call $~lib/rt/pure/onDecrement
call $~lib/rt/rtrace/ondecrement
local.get $0
i32.load
i32.const 1
@ -1931,7 +1934,7 @@
if
i32.const 0
i32.const 456
i32.const 114
i32.const 115
i32.const 13
call $~lib/builtins/abort
unreachable
@ -1970,7 +1973,7 @@
if
i32.const 0
i32.const 456
i32.const 123
i32.const 124
i32.const 15
call $~lib/builtins/abort
unreachable
@ -2014,7 +2017,7 @@
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
global.get $~lib/heap/HEAP_BASE
i32.gt_u
@ -2025,7 +2028,7 @@
call $~lib/rt/pure/decrement
end
)
(func $start:std/array-literal (; 34 ;) (type $FUNCSIG$v)
(func $start:std/array-literal (; 35 ;) (type $FUNCSIG$v)
(local $0 i32)
(local $1 i32)
(local $2 i32)
@ -2452,16 +2455,16 @@
local.get $7
call $~lib/rt/pure/__release
)
(func $start (; 35 ;) (type $FUNCSIG$v)
(func $start (; 36 ;) (type $FUNCSIG$v)
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
)
(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
)
(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.get $0
i32.load offset=4
@ -2488,7 +2491,7 @@
call $~lib/rt/__visit_members
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
i32.load offset=4
@ -2505,7 +2508,7 @@
i32.const 4
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.get $0
i32.load offset=4
@ -2542,7 +2545,7 @@
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.get $0
i32.load offset=4
@ -2571,7 +2574,7 @@
local.get $0
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 $3 i32)
local.get $0
@ -2634,7 +2637,7 @@
if
i32.const 0
i32.const 456
i32.const 74
i32.const 75
i32.const 17
call $~lib/builtins/abort
unreachable
@ -2681,7 +2684,7 @@
if
i32.const 0
i32.const 456
i32.const 85
i32.const 86
i32.const 6
call $~lib/builtins/abort
unreachable
@ -2718,14 +2721,14 @@
if
i32.const 0
i32.const 456
i32.const 96
i32.const 97
i32.const 24
call $~lib/builtins/abort
unreachable
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 $3 i32)
(local $4 i32)
@ -2761,7 +2764,7 @@
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 $3 i32)
(local $4 i32)
@ -2797,7 +2800,7 @@
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)
block $block$4$break
block
@ -2929,6 +2932,6 @@
end
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$i (func (result 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" "release" (func $~lib/rt/pure/onDecrement (param i32)))
(import "rtrace" "free" (func $~lib/rt/tlsf/onFree (param i32)))
(import "rtrace" "onalloc" (func $~lib/rt/rtrace/onalloc (param i32)))
(import "rtrace" "onincrement" (func $~lib/rt/rtrace/onincrement (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)
(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")
@ -38,7 +39,7 @@
(global $~lib/rt/pure/ROOTS (mut i32) (i32.const 0))
(export "memory" (memory $0))
(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 $3 i32)
(local $4 i32)
@ -52,7 +53,7 @@
if
i32.const 0
i32.const 24
i32.const 275
i32.const 276
i32.const 13
call $~lib/builtins/abort
unreachable
@ -74,7 +75,7 @@
if
i32.const 0
i32.const 24
i32.const 277
i32.const 278
i32.const 13
call $~lib/builtins/abort
unreachable
@ -119,7 +120,7 @@
if
i32.const 0
i32.const 24
i32.const 290
i32.const 291
i32.const 13
call $~lib/builtins/abort
unreachable
@ -204,7 +205,7 @@
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 $3 i32)
(local $4 i32)
@ -216,7 +217,7 @@
if
i32.const 0
i32.const 24
i32.const 203
i32.const 204
i32.const 13
call $~lib/builtins/abort
unreachable
@ -230,7 +231,7 @@
if
i32.const 0
i32.const 24
i32.const 205
i32.const 206
i32.const 13
call $~lib/builtins/abort
unreachable
@ -303,7 +304,7 @@
if
i32.const 0
i32.const 24
i32.const 226
i32.const 227
i32.const 15
call $~lib/builtins/abort
unreachable
@ -360,7 +361,7 @@
if
i32.const 0
i32.const 24
i32.const 241
i32.const 242
i32.const 13
call $~lib/builtins/abort
unreachable
@ -375,7 +376,7 @@
if
i32.const 0
i32.const 24
i32.const 242
i32.const 243
i32.const 13
call $~lib/builtins/abort
unreachable
@ -425,7 +426,7 @@
if
i32.const 0
i32.const 24
i32.const 258
i32.const 259
i32.const 13
call $~lib/builtins/abort
unreachable
@ -489,7 +490,7 @@
i32.or
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 $4 i32)
local.get $2
@ -511,7 +512,7 @@
if
i32.const 0
i32.const 24
i32.const 384
i32.const 385
i32.const 4
call $~lib/builtins/abort
unreachable
@ -528,7 +529,7 @@
if
i32.const 0
i32.const 24
i32.const 394
i32.const 395
i32.const 15
call $~lib/builtins/abort
unreachable
@ -556,7 +557,7 @@
if
i32.const 0
i32.const 24
i32.const 406
i32.const 407
i32.const 4
call $~lib/builtins/abort
unreachable
@ -603,7 +604,7 @@
local.get $1
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 $1 i32)
i32.const 1
@ -686,14 +687,14 @@
i32.const 512
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
i32.const 1073741808
i32.ge_u
if
i32.const 72
i32.const 24
i32.const 446
i32.const 447
i32.const 29
call $~lib/builtins/abort
unreachable
@ -710,7 +711,7 @@
i32.gt_u
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.get $1
i32.const 256
@ -768,7 +769,7 @@
if
i32.const 0
i32.const 24
i32.const 336
i32.const 337
i32.const 13
call $~lib/builtins/abort
unreachable
@ -820,7 +821,7 @@
if
i32.const 0
i32.const 24
i32.const 349
i32.const 350
i32.const 17
call $~lib/builtins/abort
unreachable
@ -841,7 +842,7 @@
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)
memory.size
local.tee $2
@ -878,7 +879,7 @@
i32.shl
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 $4 i32)
local.get $1
@ -890,7 +891,7 @@
if
i32.const 0
i32.const 24
i32.const 363
i32.const 364
i32.const 13
call $~lib/builtins/abort
unreachable
@ -954,7 +955,7 @@
i32.store
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 $3 i32)
local.get $0
@ -976,7 +977,7 @@
if
i32.const 0
i32.const 24
i32.const 476
i32.const 477
i32.const 15
call $~lib/builtins/abort
unreachable
@ -991,7 +992,7 @@
if
i32.const 0
i32.const 24
i32.const 478
i32.const 479
i32.const 13
call $~lib/builtins/abort
unreachable
@ -1010,8 +1011,10 @@
local.get $3
call $~lib/rt/tlsf/prepareBlock
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)
global.get $~lib/rt/tlsf/ROOT
local.tee $2
@ -1030,7 +1033,7 @@
i32.const 16
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.get $0
i32.load offset=4
@ -1046,7 +1049,7 @@
if
i32.const 0
i32.const 128
i32.const 103
i32.const 104
i32.const 2
call $~lib/builtins/abort
unreachable
@ -1057,7 +1060,7 @@
i32.add
i32.store offset=4
local.get $0
call $~lib/rt/pure/onIncrement
call $~lib/rt/rtrace/onincrement
local.get $0
i32.load
i32.const 1
@ -1065,13 +1068,13 @@
if
i32.const 0
i32.const 128
i32.const 106
i32.const 107
i32.const 13
call $~lib/builtins/abort
unreachable
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
i32.const 508
i32.gt_u
@ -1083,7 +1086,7 @@
end
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)
block $~lib/util/memory/memset|inlined.0
local.get $1
@ -1294,7 +1297,7 @@
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.get $0
i32.const 1073741808
@ -1316,7 +1319,7 @@
local.get $1
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.get $1
i32.load
@ -1326,7 +1329,7 @@
if
i32.const 0
i32.const 24
i32.const 530
i32.const 531
i32.const 2
call $~lib/builtins/abort
unreachable
@ -1340,9 +1343,9 @@
local.get $1
call $~lib/rt/tlsf/insertBlock
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
i32.const 400
i32.load
@ -1362,7 +1365,7 @@
i32.add
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 $4 i32)
block $~lib/util/memory/memmove|inlined.0
@ -1535,7 +1538,7 @@
end
end
)
(func $~lib/rt/pure/growRoots (; 21 ;) (type $FUNCSIG$v)
(func $~lib/rt/pure/growRoots (; 22 ;) (type $FUNCSIG$v)
(local $0 i32)
(local $1 i32)
(local $2 i32)
@ -1571,7 +1574,7 @@
i32.add
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)
global.get $~lib/rt/pure/CUR
local.tee $1
@ -1590,7 +1593,7 @@
i32.add
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 $2 i32)
local.get $0
@ -1600,7 +1603,7 @@
i32.and
local.set $1
local.get $0
call $~lib/rt/pure/onDecrement
call $~lib/rt/rtrace/ondecrement
local.get $0
i32.load
i32.const 1
@ -1608,7 +1611,7 @@
if
i32.const 0
i32.const 128
i32.const 114
i32.const 115
i32.const 13
call $~lib/builtins/abort
unreachable
@ -1641,7 +1644,7 @@
if
i32.const 0
i32.const 128
i32.const 123
i32.const 124
i32.const 15
call $~lib/builtins/abort
unreachable
@ -1680,7 +1683,7 @@
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
i32.const 508
i32.gt_u
@ -1692,7 +1695,7 @@
end
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
i32.load
@ -1720,7 +1723,7 @@
i32.const 0
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)
i32.const 24
i32.const 3
@ -1748,7 +1751,7 @@
call $~lib/set/Set<i8>#clear
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
i32.load
local.get $0
@ -1791,7 +1794,7 @@
end
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 $1
local.get $1
@ -1807,7 +1810,7 @@
i32.const 0
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 $1
i32.ne
@ -1833,7 +1836,7 @@
end
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
i32.const 508
i32.gt_u
@ -1844,7 +1847,7 @@
call $~lib/rt/pure/decrement
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 $3 i32)
(local $4 i32)
@ -1954,7 +1957,7 @@
local.get $5
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 $3 i32)
(local $4 i32)
@ -2046,7 +2049,7 @@
i32.store
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.get $0
local.get $1
@ -2112,7 +2115,7 @@
call $~lib/set/Set<i8>#rehash
end
)
(func $std/set/testNumeric<i8> (; 34 ;) (type $FUNCSIG$v)
(func $std/set/testNumeric<i8> (; 35 ;) (type $FUNCSIG$v)
(local $0 i32)
(local $1 i32)
call $~lib/set/Set<i8>#constructor
@ -2359,7 +2362,7 @@
local.get $1
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)
i32.const 24
i32.const 4
@ -2387,7 +2390,7 @@
call $~lib/set/Set<i8>#clear
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 $1
local.get $1
@ -2401,7 +2404,7 @@
i32.const 0
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 $3 i32)
(local $4 i32)
@ -2511,7 +2514,7 @@
local.get $5
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 $3 i32)
(local $4 i32)
@ -2601,7 +2604,7 @@
i32.store
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.get $0
local.get $1
@ -2665,7 +2668,7 @@
call $~lib/set/Set<u8>#rehash
end
)
(func $std/set/testNumeric<u8> (; 40 ;) (type $FUNCSIG$v)
(func $std/set/testNumeric<u8> (; 41 ;) (type $FUNCSIG$v)
(local $0 i32)
(local $1 i32)
call $~lib/set/Set<u8>#constructor
@ -2912,7 +2915,7 @@
local.get $1
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)
i32.const 24
i32.const 5
@ -2940,7 +2943,7 @@
call $~lib/set/Set<i8>#clear
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
i32.load
local.get $0
@ -2983,7 +2986,7 @@
end
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 $1
local.get $1
@ -3008,7 +3011,7 @@
i32.const 0
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 $3 i32)
(local $4 i32)
@ -3127,7 +3130,7 @@
local.get $5
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 $3 i32)
(local $4 i32)
@ -3228,7 +3231,7 @@
i32.store
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.get $0
local.get $1
@ -3303,7 +3306,7 @@
call $~lib/set/Set<i16>#rehash
end
)
(func $std/set/testNumeric<i16> (; 47 ;) (type $FUNCSIG$v)
(func $std/set/testNumeric<i16> (; 48 ;) (type $FUNCSIG$v)
(local $0 i32)
(local $1 i32)
call $~lib/set/Set<i16>#constructor
@ -3550,7 +3553,7 @@
local.get $1
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)
i32.const 24
i32.const 6
@ -3578,7 +3581,7 @@
call $~lib/set/Set<i8>#clear
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 $1
local.get $1
@ -3601,7 +3604,7 @@
i32.const 0
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 $3 i32)
(local $4 i32)
@ -3720,7 +3723,7 @@
local.get $5
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 $3 i32)
(local $4 i32)
@ -3819,7 +3822,7 @@
i32.store
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.get $0
local.get $1
@ -3892,7 +3895,7 @@
call $~lib/set/Set<u16>#rehash
end
)
(func $std/set/testNumeric<u16> (; 53 ;) (type $FUNCSIG$v)
(func $std/set/testNumeric<u16> (; 54 ;) (type $FUNCSIG$v)
(local $0 i32)
(local $1 i32)
call $~lib/set/Set<u16>#constructor
@ -4139,7 +4142,7 @@
local.get $1
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)
i32.const 24
i32.const 7
@ -4167,7 +4170,7 @@
call $~lib/set/Set<i8>#clear
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
i32.const 255
i32.and
@ -4198,7 +4201,7 @@
i32.const 16777619
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
i32.load
local.get $0
@ -4239,7 +4242,7 @@
end
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 $1
local.get $1
@ -4248,7 +4251,7 @@
i32.const 0
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 $3 i32)
(local $4 i32)
@ -4355,7 +4358,7 @@
local.get $5
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 $3 i32)
(local $4 i32)
@ -4438,7 +4441,7 @@
i32.store
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.get $0
local.get $1
@ -4497,7 +4500,7 @@
call $~lib/set/Set<i32>#rehash
end
)
(func $std/set/testNumeric<i32> (; 61 ;) (type $FUNCSIG$v)
(func $std/set/testNumeric<i32> (; 62 ;) (type $FUNCSIG$v)
(local $0 i32)
(local $1 i32)
call $~lib/set/Set<i32>#constructor
@ -4744,7 +4747,7 @@
local.get $1
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)
i32.const 24
i32.const 8
@ -4772,7 +4775,7 @@
call $~lib/set/Set<i8>#clear
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 $1 i32)
call $~lib/set/Set<u32>#constructor
@ -5019,7 +5022,7 @@
local.get $1
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
i32.load
@ -5047,7 +5050,7 @@
i32.const 0
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)
i32.const 24
i32.const 9
@ -5075,7 +5078,7 @@
call $~lib/set/Set<i64>#clear
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.get $0
i32.wrap_i64
@ -5141,7 +5144,7 @@
i32.const 16777619
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
i32.load
local.get $0
@ -5182,7 +5185,7 @@
end
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 $1
local.get $1
@ -5191,7 +5194,7 @@
i32.const 0
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 $3 i32)
(local $4 i32)
@ -5298,7 +5301,7 @@
local.get $5
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 $3 i32)
(local $4 i32)
@ -5381,7 +5384,7 @@
i32.store
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 $3 i32)
local.get $0
@ -5441,7 +5444,7 @@
call $~lib/set/Set<i64>#rehash
end
)
(func $std/set/testNumeric<i64> (; 72 ;) (type $FUNCSIG$v)
(func $std/set/testNumeric<i64> (; 73 ;) (type $FUNCSIG$v)
(local $0 i64)
(local $1 i32)
call $~lib/set/Set<i64>#constructor
@ -5688,7 +5691,7 @@
local.get $1
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)
i32.const 24
i32.const 10
@ -5716,7 +5719,7 @@
call $~lib/set/Set<i64>#clear
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 $1 i32)
call $~lib/set/Set<u64>#constructor
@ -5963,7 +5966,7 @@
local.get $1
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)
i32.const 24
i32.const 11
@ -5991,7 +5994,7 @@
call $~lib/set/Set<i8>#clear
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
i32.load
local.get $0
@ -6032,7 +6035,7 @@
end
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 $1
local.get $1
@ -6042,7 +6045,7 @@
i32.const 0
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 $3 i32)
(local $4 i32)
@ -6150,7 +6153,7 @@
local.get $5
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 $3 i32)
(local $4 i32)
@ -6234,7 +6237,7 @@
i32.store
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 $3 i32)
local.get $0
@ -6295,7 +6298,7 @@
call $~lib/set/Set<f32>#rehash
end
)
(func $std/set/testNumeric<f32> (; 81 ;) (type $FUNCSIG$v)
(func $std/set/testNumeric<f32> (; 82 ;) (type $FUNCSIG$v)
(local $0 f32)
(local $1 i32)
call $~lib/set/Set<f32>#constructor
@ -6542,7 +6545,7 @@
local.get $1
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)
i32.const 24
i32.const 12
@ -6570,7 +6573,7 @@
call $~lib/set/Set<i64>#clear
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
i32.load
local.get $0
@ -6611,7 +6614,7 @@
end
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 $1
local.get $1
@ -6621,7 +6624,7 @@
i32.const 0
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 $3 i32)
(local $4 i32)
@ -6729,7 +6732,7 @@
local.get $5
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 $3 i32)
(local $4 i32)
@ -6813,7 +6816,7 @@
i32.store
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 $3 i32)
local.get $0
@ -6874,7 +6877,7 @@
call $~lib/set/Set<f64>#rehash
end
)
(func $std/set/testNumeric<f64> (; 88 ;) (type $FUNCSIG$v)
(func $std/set/testNumeric<f64> (; 89 ;) (type $FUNCSIG$v)
(local $0 f64)
(local $1 i32)
call $~lib/set/Set<f64>#constructor
@ -7121,7 +7124,7 @@
local.get $1
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<u8>
call $std/set/testNumeric<i16>
@ -7133,7 +7136,7 @@
call $std/set/testNumeric<f32>
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.get $0
i32.load offset=4
@ -7157,7 +7160,7 @@
call $~lib/rt/__visit_members
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
i32.load offset=4
@ -7170,7 +7173,7 @@
i32.const 4
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.get $0
i32.load offset=4
@ -7204,7 +7207,7 @@
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.get $0
i32.load offset=4
@ -7232,7 +7235,7 @@
local.get $0
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
i32.const 508
i32.lt_u
@ -7278,7 +7281,7 @@
if
i32.const 0
i32.const 128
i32.const 74
i32.const 75
i32.const 17
call $~lib/builtins/abort
unreachable
@ -7311,7 +7314,7 @@
if
i32.const 0
i32.const 128
i32.const 85
i32.const 86
i32.const 6
call $~lib/builtins/abort
unreachable
@ -7336,13 +7339,13 @@
end
i32.const 0
i32.const 128
i32.const 96
i32.const 97
i32.const 24
call $~lib/builtins/abort
unreachable
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 $switch$1$default
block $switch$1$case$4
@ -7376,7 +7379,7 @@
local.get $1
call $~lib/rt/pure/__visit
)
(func $null (; 96 ;) (type $FUNCSIG$v)
(func $null (; 97 ;) (type $FUNCSIG$v)
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$iiiii (func (param i32 i32 i32 i32) (result 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" "release" (func $~lib/rt/pure/onDecrement (param i32)))
(import "rtrace" "free" (func $~lib/rt/tlsf/onFree (param i32)))
(import "rtrace" "onincrement" (func $~lib/rt/rtrace/onincrement (param i32)))
(import "rtrace" "ondecrement" (func $~lib/rt/rtrace/ondecrement (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)
(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")
@ -192,7 +193,7 @@
(export "memory" (memory $0))
(export "getString" (func $std/string/getString))
(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.get $0
i32.load offset=4
@ -208,7 +209,7 @@
if
i32.const 0
i32.const 136
i32.const 103
i32.const 104
i32.const 2
call $~lib/builtins/abort
unreachable
@ -219,7 +220,7 @@
i32.add
i32.store offset=4
local.get $0
call $~lib/rt/pure/onIncrement
call $~lib/rt/rtrace/onincrement
local.get $0
i32.load
i32.const 1
@ -227,13 +228,13 @@
if
i32.const 0
i32.const 136
i32.const 106
i32.const 107
i32.const 13
call $~lib/builtins/abort
unreachable
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
i32.const 7012
i32.gt_u
@ -245,7 +246,7 @@
end
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 $3 i32)
(local $4 i32)
@ -259,7 +260,7 @@
if
i32.const 0
i32.const 184
i32.const 275
i32.const 276
i32.const 13
call $~lib/builtins/abort
unreachable
@ -281,7 +282,7 @@
if
i32.const 0
i32.const 184
i32.const 277
i32.const 278
i32.const 13
call $~lib/builtins/abort
unreachable
@ -326,7 +327,7 @@
if
i32.const 0
i32.const 184
i32.const 290
i32.const 291
i32.const 13
call $~lib/builtins/abort
unreachable
@ -411,7 +412,7 @@
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 $3 i32)
(local $4 i32)
@ -423,7 +424,7 @@
if
i32.const 0
i32.const 184
i32.const 203
i32.const 204
i32.const 13
call $~lib/builtins/abort
unreachable
@ -437,7 +438,7 @@
if
i32.const 0
i32.const 184
i32.const 205
i32.const 206
i32.const 13
call $~lib/builtins/abort
unreachable
@ -510,7 +511,7 @@
if
i32.const 0
i32.const 184
i32.const 226
i32.const 227
i32.const 15
call $~lib/builtins/abort
unreachable
@ -567,7 +568,7 @@
if
i32.const 0
i32.const 184
i32.const 241
i32.const 242
i32.const 13
call $~lib/builtins/abort
unreachable
@ -582,7 +583,7 @@
if
i32.const 0
i32.const 184
i32.const 242
i32.const 243
i32.const 13
call $~lib/builtins/abort
unreachable
@ -632,7 +633,7 @@
if
i32.const 0
i32.const 184
i32.const 258
i32.const 259
i32.const 13
call $~lib/builtins/abort
unreachable
@ -696,7 +697,7 @@
i32.or
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.get $1
i32.load
@ -706,7 +707,7 @@
if
i32.const 0
i32.const 184
i32.const 530
i32.const 531
i32.const 2
call $~lib/builtins/abort
unreachable
@ -720,9 +721,9 @@
local.get $1
call $~lib/rt/tlsf/insertBlock
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
i32.const 6944
i32.load
@ -742,7 +743,7 @@
i32.add
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 $4 i32)
local.get $2
@ -764,7 +765,7 @@
if
i32.const 0
i32.const 184
i32.const 384
i32.const 385
i32.const 4
call $~lib/builtins/abort
unreachable
@ -781,7 +782,7 @@
if
i32.const 0
i32.const 184
i32.const 394
i32.const 395
i32.const 15
call $~lib/builtins/abort
unreachable
@ -809,7 +810,7 @@
if
i32.const 0
i32.const 184
i32.const 406
i32.const 407
i32.const 4
call $~lib/builtins/abort
unreachable
@ -856,7 +857,7 @@
local.get $1
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 $1 i32)
i32.const 1
@ -939,14 +940,14 @@
i32.const 7024
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
i32.const 1073741808
i32.ge_u
if
i32.const 328
i32.const 184
i32.const 446
i32.const 447
i32.const 29
call $~lib/builtins/abort
unreachable
@ -963,7 +964,7 @@
i32.gt_u
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.get $1
i32.const 256
@ -1021,7 +1022,7 @@
if
i32.const 0
i32.const 184
i32.const 336
i32.const 337
i32.const 13
call $~lib/builtins/abort
unreachable
@ -1073,7 +1074,7 @@
if
i32.const 0
i32.const 184
i32.const 349
i32.const 350
i32.const 17
call $~lib/builtins/abort
unreachable
@ -1094,7 +1095,7 @@
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)
memory.size
local.tee $2
@ -1131,7 +1132,7 @@
i32.shl
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 $4 i32)
local.get $1
@ -1143,7 +1144,7 @@
if
i32.const 0
i32.const 184
i32.const 363
i32.const 364
i32.const 13
call $~lib/builtins/abort
unreachable
@ -1207,7 +1208,7 @@
i32.store
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 $3 i32)
local.get $0
@ -1229,7 +1230,7 @@
if
i32.const 0
i32.const 184
i32.const 476
i32.const 477
i32.const 15
call $~lib/builtins/abort
unreachable
@ -1244,7 +1245,7 @@
if
i32.const 0
i32.const 184
i32.const 478
i32.const 479
i32.const 13
call $~lib/builtins/abort
unreachable
@ -1263,8 +1264,10 @@
local.get $3
call $~lib/rt/tlsf/prepareBlock
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)
global.get $~lib/rt/tlsf/ROOT
local.tee $2
@ -1283,7 +1286,7 @@
i32.const 16
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 $4 i32)
block $~lib/util/memory/memmove|inlined.0
@ -1456,7 +1459,7 @@
end
end
)
(func $~lib/rt/pure/growRoots (; 19 ;) (type $FUNCSIG$v)
(func $~lib/rt/pure/growRoots (; 20 ;) (type $FUNCSIG$v)
(local $0 i32)
(local $1 i32)
(local $2 i32)
@ -1492,7 +1495,7 @@
i32.add
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)
global.get $~lib/rt/pure/CUR
local.tee $1
@ -1511,7 +1514,7 @@
i32.add
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 $2 i32)
local.get $0
@ -1521,7 +1524,7 @@
i32.and
local.set $1
local.get $0
call $~lib/rt/pure/onDecrement
call $~lib/rt/rtrace/ondecrement
local.get $0
i32.load
i32.const 1
@ -1529,7 +1532,7 @@
if
i32.const 0
i32.const 136
i32.const 114
i32.const 115
i32.const 13
call $~lib/builtins/abort
unreachable
@ -1562,7 +1565,7 @@
if
i32.const 0
i32.const 136
i32.const 123
i32.const 124
i32.const 15
call $~lib/builtins/abort
unreachable
@ -1601,7 +1604,7 @@
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
i32.const 7012
i32.gt_u
@ -1612,7 +1615,7 @@
call $~lib/rt/pure/decrement
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.get $0
call $~lib/rt/pure/__retain
@ -1634,7 +1637,7 @@
call $~lib/rt/pure/__release
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)
i32.const 2
i32.const 1
@ -1645,7 +1648,7 @@
local.get $1
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 $5 i32)
local.get $0
@ -1697,7 +1700,7 @@
call $~lib/rt/pure/__release
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.get $0
call $~lib/rt/pure/__retain
@ -1758,7 +1761,7 @@
call $~lib/rt/pure/__release
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 $2 i32)
local.get $0
@ -1813,7 +1816,7 @@
local.get $2
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 $1
i32.ne
@ -1839,7 +1842,7 @@
end
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 $2 i32)
(local $3 i32)
@ -1896,7 +1899,7 @@
call $~lib/rt/pure/__release
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 $2 i32)
(local $3 i32)
@ -1953,7 +1956,7 @@
call $~lib/rt/pure/__release
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 $4 i32)
(local $5 i32)
@ -2054,7 +2057,7 @@
call $~lib/rt/pure/__release
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.get $2
local.get $3
@ -2079,7 +2082,7 @@
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 $4 i32)
(local $5 i32)
@ -2186,7 +2189,7 @@
call $~lib/rt/pure/__release
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 $4 i32)
(local $5 i32)
@ -2294,7 +2297,7 @@
call $~lib/rt/pure/__release
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 $4 i32)
local.get $1
@ -2392,7 +2395,7 @@
call $~lib/rt/pure/__release
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 $2 i32)
(local $3 i32)
@ -2626,7 +2629,7 @@
call $~lib/rt/pure/__release
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.get $0
call $~lib/rt/pure/__retain
@ -2638,7 +2641,7 @@
call $~lib/rt/pure/__release
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 $2 i32)
(local $3 i32)
@ -2810,7 +2813,7 @@
call $~lib/rt/pure/__release
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 $3 i32)
(local $4 i32)
@ -2875,7 +2878,7 @@
call $~lib/rt/pure/__release
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.get $0
call $~lib/rt/pure/__retain
@ -2896,7 +2899,7 @@
call $~lib/rt/pure/__release
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.get $0
call $~lib/rt/pure/__retain
@ -2915,7 +2918,7 @@
call $~lib/rt/pure/__release
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 $3 i32)
local.get $0
@ -2989,7 +2992,7 @@
call $~lib/rt/pure/__release
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 $3 i32)
local.get $0
@ -3063,7 +3066,7 @@
call $~lib/rt/pure/__release
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.get $0
call $~lib/rt/pure/__retain
@ -3082,7 +3085,7 @@
call $~lib/rt/pure/__release
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)
i32.const 120
call $~lib/rt/pure/__retain
@ -3101,7 +3104,7 @@
call $~lib/rt/pure/__release
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 $3 i32)
local.get $0
@ -3178,7 +3181,7 @@
local.get $3
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.get $0
i32.const 16
@ -3257,7 +3260,7 @@
local.get $3
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 $2 i32)
(local $3 i32)
@ -3285,7 +3288,7 @@
i32.store offset=12
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 $4 i32)
(local $5 i32)
@ -3301,7 +3304,7 @@
if
i32.const 0
i32.const 184
i32.const 491
i32.const 493
i32.const 13
call $~lib/builtins/abort
unreachable
@ -3397,17 +3400,15 @@
local.get $0
local.get $1
call $~lib/rt/tlsf/insertBlock
local.get $1
call $~lib/rt/tlsf/onFree
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
i32.eqz
if
i32.const 0
i32.const 184
i32.const 552
i32.const 553
i32.const 13
call $~lib/builtins/abort
unreachable
@ -3423,7 +3424,7 @@
if
i32.const 0
i32.const 184
i32.const 553
i32.const 554
i32.const 2
call $~lib/builtins/abort
unreachable
@ -3437,7 +3438,7 @@
i32.const 16
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)
block $~lib/util/memory/memset|inlined.0
local.get $1
@ -3648,7 +3649,7 @@
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 $3 i32)
(local $4 i32)
@ -3703,7 +3704,7 @@
i32.store offset=8
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 $3 i32)
local.get $1
@ -3735,7 +3736,7 @@
local.get $1
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 $3 i32)
(local $4 i32)
@ -3965,7 +3966,7 @@
call $~lib/rt/pure/__release
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
i32.const 7012
i32.gt_u
@ -3977,7 +3978,7 @@
end
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 $0
i32.load offset=12
@ -4013,7 +4014,7 @@
i32.load
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
i32.const 100000
i32.lt_u
@ -4067,7 +4068,7 @@
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 $4 i32)
i32.const 2820
@ -4177,7 +4178,7 @@
i32.store16
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 $2 i32)
(local $3 i32)
@ -4220,7 +4221,7 @@
local.get $2
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 $2 i32)
local.get $0
@ -4244,7 +4245,7 @@
local.get $2
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
i64.const 1000000000000000
i64.lt_u
@ -4298,7 +4299,7 @@
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 $4 i32)
(local $5 i32)
@ -4395,7 +4396,7 @@
local.get $2
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 $2 i32)
(local $3 i32)
@ -4439,7 +4440,7 @@
local.get $2
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 $2 i32)
(local $3 i32)
@ -4506,7 +4507,7 @@
local.get $3
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 $8 i32)
(local $9 i64)
@ -4911,7 +4912,7 @@
local.get $6
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.get $2
i32.eqz
@ -5162,7 +5163,7 @@
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 $3 i32)
(local $4 i64)
@ -5450,7 +5451,7 @@
local.get $10
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 $3 i32)
local.get $0
@ -5545,13 +5546,13 @@
local.get $1
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
i32.eqz
if
i32.const 0
i32.const 184
i32.const 560
i32.const 561
i32.const 13
call $~lib/builtins/abort
unreachable
@ -5567,7 +5568,7 @@
if
i32.const 0
i32.const 184
i32.const 561
i32.const 562
i32.const 2
call $~lib/builtins/abort
unreachable
@ -5578,7 +5579,7 @@
i32.sub
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 $2 i32)
local.get $0
@ -5634,7 +5635,7 @@
call $~lib/rt/tlsf/__free
local.get $2
)
(func $start:std/string (; 71 ;) (type $FUNCSIG$v)
(func $start:std/string (; 72 ;) (type $FUNCSIG$v)
(local $0 i32)
(local $1 i32)
(local $2 i32)
@ -9063,14 +9064,14 @@
local.get $128
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
call $~lib/rt/pure/__retain
)
(func $start (; 73 ;) (type $FUNCSIG$v)
(func $start (; 74 ;) (type $FUNCSIG$v)
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.get $0
i32.load offset=4
@ -9094,7 +9095,7 @@
call $~lib/rt/__visit_members
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
i32.load offset=4
@ -9107,7 +9108,7 @@
i32.const 4
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.get $0
i32.load offset=4
@ -9141,7 +9142,7 @@
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.get $0
i32.load offset=4
@ -9169,7 +9170,7 @@
local.get $0
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
i32.const 7012
i32.lt_u
@ -9215,7 +9216,7 @@
if
i32.const 0
i32.const 136
i32.const 74
i32.const 75
i32.const 17
call $~lib/builtins/abort
unreachable
@ -9248,7 +9249,7 @@
if
i32.const 0
i32.const 136
i32.const 85
i32.const 86
i32.const 6
call $~lib/builtins/abort
unreachable
@ -9273,13 +9274,13 @@
end
i32.const 0
i32.const 136
i32.const 96
i32.const 97
i32.const 24
call $~lib/builtins/abort
unreachable
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 $3 i32)
local.get $0
@ -9310,7 +9311,7 @@
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 $switch$1$default
block $switch$1$case$5
@ -9339,7 +9340,7 @@
call $~lib/rt/pure/__visit
end
)
(func $null (; 81 ;) (type $FUNCSIG$v)
(func $null (; 82 ;) (type $FUNCSIG$v)
nop
)
)

View File

@ -19,9 +19,10 @@
(type $FUNCSIG$iijijiji (func (param i32 i64 i32 i64 i32 i64 i32) (result i32)))
(type $FUNCSIG$i (func (result 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" "release" (func $~lib/rt/pure/onDecrement (param i32)))
(import "rtrace" "free" (func $~lib/rt/tlsf/onFree (param i32)))
(import "rtrace" "onincrement" (func $~lib/rt/rtrace/onincrement (param i32)))
(import "rtrace" "ondecrement" (func $~lib/rt/rtrace/ondecrement (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)
(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")
@ -208,7 +209,7 @@
(export "memory" (memory $0))
(export "getString" (func $std/string/getString))
(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
i32.const 16
i32.sub
@ -216,7 +217,7 @@
i32.const 1
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 $0
call $~lib/string/String#get:length
@ -232,7 +233,7 @@
i32.add
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.get $0
i32.load offset=4
@ -254,7 +255,7 @@
if
i32.const 0
i32.const 136
i32.const 103
i32.const 104
i32.const 2
call $~lib/builtins/abort
unreachable
@ -265,7 +266,7 @@
i32.add
i32.store offset=4
local.get $0
call $~lib/rt/pure/onIncrement
call $~lib/rt/rtrace/onincrement
local.get $0
i32.load
i32.const 1
@ -275,13 +276,13 @@
if
i32.const 0
i32.const 136
i32.const 106
i32.const 107
i32.const 13
call $~lib/builtins/abort
unreachable
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
global.get $~lib/heap/HEAP_BASE
i32.gt_u
@ -293,7 +294,7 @@
end
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 $3 i32)
(local $4 i32)
@ -314,7 +315,7 @@
if
i32.const 0
i32.const 184
i32.const 275
i32.const 276
i32.const 13
call $~lib/builtins/abort
unreachable
@ -339,7 +340,7 @@
if
i32.const 0
i32.const 184
i32.const 277
i32.const 278
i32.const 13
call $~lib/builtins/abort
unreachable
@ -391,7 +392,7 @@
if
i32.const 0
i32.const 184
i32.const 290
i32.const 291
i32.const 13
call $~lib/builtins/abort
unreachable
@ -511,7 +512,7 @@
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 $3 i32)
(local $4 i32)
@ -529,7 +530,7 @@
if
i32.const 0
i32.const 184
i32.const 203
i32.const 204
i32.const 13
call $~lib/builtins/abort
unreachable
@ -544,7 +545,7 @@
if
i32.const 0
i32.const 184
i32.const 205
i32.const 206
i32.const 13
call $~lib/builtins/abort
unreachable
@ -643,7 +644,7 @@
if
i32.const 0
i32.const 184
i32.const 226
i32.const 227
i32.const 15
call $~lib/builtins/abort
unreachable
@ -706,7 +707,7 @@
if
i32.const 0
i32.const 184
i32.const 241
i32.const 242
i32.const 13
call $~lib/builtins/abort
unreachable
@ -722,7 +723,7 @@
if
i32.const 0
i32.const 184
i32.const 242
i32.const 243
i32.const 13
call $~lib/builtins/abort
unreachable
@ -779,7 +780,7 @@
if
i32.const 0
i32.const 184
i32.const 258
i32.const 259
i32.const 13
call $~lib/builtins/abort
unreachable
@ -875,7 +876,7 @@
i32.store offset=4
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.get $1
i32.load
@ -888,7 +889,7 @@
if
i32.const 0
i32.const 184
i32.const 530
i32.const 531
i32.const 2
call $~lib/builtins/abort
unreachable
@ -902,9 +903,9 @@
local.get $1
call $~lib/rt/tlsf/insertBlock
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)
global.get $~lib/rt/RTTI_BASE
local.set $1
@ -929,7 +930,7 @@
i32.add
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 $4 i32)
(local $5 i32)
@ -960,7 +961,7 @@
if
i32.const 0
i32.const 184
i32.const 384
i32.const 385
i32.const 4
call $~lib/builtins/abort
unreachable
@ -985,7 +986,7 @@
if
i32.const 0
i32.const 184
i32.const 394
i32.const 395
i32.const 15
call $~lib/builtins/abort
unreachable
@ -1016,7 +1017,7 @@
if
i32.const 0
i32.const 184
i32.const 406
i32.const 407
i32.const 4
call $~lib/builtins/abort
unreachable
@ -1081,7 +1082,7 @@
call $~lib/rt/tlsf/insertBlock
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 $1 i32)
(local $2 i32)
@ -1234,7 +1235,7 @@
local.get $3
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 $2 i32)
local.get $0
@ -1243,7 +1244,7 @@
if
i32.const 328
i32.const 184
i32.const 446
i32.const 447
i32.const 29
call $~lib/builtins/abort
unreachable
@ -1263,7 +1264,7 @@
i32.gt_u
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 $3 i32)
(local $4 i32)
@ -1337,7 +1338,7 @@
if
i32.const 0
i32.const 184
i32.const 336
i32.const 337
i32.const 13
call $~lib/builtins/abort
unreachable
@ -1404,7 +1405,7 @@
if
i32.const 0
i32.const 184
i32.const 349
i32.const 350
i32.const 17
call $~lib/builtins/abort
unreachable
@ -1454,7 +1455,7 @@
end
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 $3 i32)
(local $4 i32)
@ -1507,7 +1508,7 @@
call $~lib/rt/tlsf/addMemory
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 $4 i32)
(local $5 i32)
@ -1522,7 +1523,7 @@
if
i32.const 0
i32.const 184
i32.const 363
i32.const 364
i32.const 13
call $~lib/builtins/abort
unreachable
@ -1606,7 +1607,7 @@
i32.store
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 $3 i32)
local.get $1
@ -1631,7 +1632,7 @@
if
i32.const 0
i32.const 184
i32.const 476
i32.const 477
i32.const 15
call $~lib/builtins/abort
unreachable
@ -1649,7 +1650,7 @@
if
i32.const 0
i32.const 184
i32.const 478
i32.const 479
i32.const 13
call $~lib/builtins/abort
unreachable
@ -1668,8 +1669,10 @@
local.get $2
call $~lib/rt/tlsf/prepareBlock
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 $3 i32)
global.get $~lib/rt/tlsf/ROOT
@ -1692,7 +1695,7 @@
i32.const 16
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 $4 i32)
(local $5 i32)
@ -1898,7 +1901,7 @@
end
end
)
(func $~lib/rt/pure/growRoots (; 21 ;) (type $FUNCSIG$v)
(func $~lib/rt/pure/growRoots (; 22 ;) (type $FUNCSIG$v)
(local $0 i32)
(local $1 i32)
(local $2 i32)
@ -1943,7 +1946,7 @@
i32.add
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)
global.get $~lib/rt/pure/CUR
local.set $1
@ -1963,7 +1966,7 @@
i32.add
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 $2 i32)
local.get $0
@ -1974,7 +1977,7 @@
i32.and
local.set $2
local.get $0
call $~lib/rt/pure/onDecrement
call $~lib/rt/rtrace/ondecrement
local.get $0
i32.load
i32.const 1
@ -1984,7 +1987,7 @@
if
i32.const 0
i32.const 136
i32.const 114
i32.const 115
i32.const 13
call $~lib/builtins/abort
unreachable
@ -2023,7 +2026,7 @@
if
i32.const 0
i32.const 136
i32.const 123
i32.const 124
i32.const 15
call $~lib/builtins/abort
unreachable
@ -2067,7 +2070,7 @@
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
global.get $~lib/heap/HEAP_BASE
i32.gt_u
@ -2078,7 +2081,7 @@
call $~lib/rt/pure/decrement
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.get $0
call $~lib/rt/pure/__retain
@ -2098,7 +2101,7 @@
call $~lib/rt/pure/__release
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)
i32.const 2
i32.const 1
@ -2110,7 +2113,7 @@
local.get $1
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 $6 i32)
(local $7 i32)
@ -2174,7 +2177,7 @@
call $~lib/rt/pure/__release
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 $3 i32)
local.get $0
@ -2247,7 +2250,7 @@
call $~lib/rt/pure/__release
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 $2 i32)
(local $3 i32)
@ -2310,7 +2313,7 @@
local.get $2
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.get $1
local.get $0
@ -2339,7 +2342,7 @@
end
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 $4 i32)
(local $5 i32)
@ -2419,7 +2422,7 @@
call $~lib/rt/pure/__release
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 $4 i32)
(local $5 i32)
@ -2498,7 +2501,7 @@
call $~lib/rt/pure/__release
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 $4 i32)
(local $5 i32)
@ -2613,7 +2616,7 @@
call $~lib/rt/pure/__release
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 $5 i32)
i32.const 0
@ -2643,7 +2646,7 @@
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 $4 i32)
(local $5 i32)
@ -2755,7 +2758,7 @@
call $~lib/rt/pure/__release
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 $4 i32)
(local $5 i32)
@ -2871,7 +2874,7 @@
call $~lib/rt/pure/__release
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 $4 i32)
(local $5 i32)
@ -2984,7 +2987,7 @@
call $~lib/rt/pure/__release
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 $3 f64)
(local $4 i32)
@ -3302,7 +3305,7 @@
call $~lib/rt/pure/__release
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.get $0
call $~lib/rt/pure/__retain
@ -3315,7 +3318,7 @@
call $~lib/rt/pure/__release
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 $2 f64)
(local $3 i32)
@ -3526,7 +3529,7 @@
call $~lib/rt/pure/__release
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 $3 i32)
(local $4 i32)
@ -3591,7 +3594,7 @@
call $~lib/rt/pure/__release
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.get $0
call $~lib/rt/pure/__retain
@ -3614,7 +3617,7 @@
call $~lib/rt/pure/__release
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.get $0
call $~lib/rt/pure/__retain
@ -3633,7 +3636,7 @@
call $~lib/rt/pure/__release
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 $3 i32)
(local $4 i32)
@ -3723,7 +3726,7 @@
call $~lib/rt/pure/__release
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 $3 i32)
(local $4 i32)
@ -3813,7 +3816,7 @@
call $~lib/rt/pure/__release
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.get $0
call $~lib/rt/pure/__retain
@ -3832,7 +3835,7 @@
call $~lib/rt/pure/__release
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.get $0
call $~lib/rt/pure/__retain
@ -3851,7 +3854,7 @@
call $~lib/rt/pure/__release
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 $3 i32)
local.get $0
@ -3931,7 +3934,7 @@
local.get $3
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 $4 i32)
(local $5 i32)
@ -4022,7 +4025,7 @@
local.get $8
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 $5 i32)
(local $6 i32)
@ -4060,7 +4063,7 @@
end
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 $4 i32)
(local $5 i32)
@ -4081,7 +4084,7 @@
if
i32.const 0
i32.const 184
i32.const 491
i32.const 493
i32.const 13
call $~lib/builtins/abort
unreachable
@ -4191,17 +4194,15 @@
local.get $0
local.get $1
call $~lib/rt/tlsf/insertBlock
local.get $1
call $~lib/rt/tlsf/onFree
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
i32.eqz
if
i32.const 0
i32.const 184
i32.const 552
i32.const 553
i32.const 13
call $~lib/builtins/abort
unreachable
@ -4221,7 +4222,7 @@
if
i32.const 0
i32.const 184
i32.const 553
i32.const 554
i32.const 2
call $~lib/builtins/abort
unreachable
@ -4235,7 +4236,7 @@
i32.const 16
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 $4 i32)
(local $5 i32)
@ -4498,7 +4499,7 @@
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 $4 i32)
(local $5 i32)
@ -4561,7 +4562,7 @@
i32.store offset=8
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 $3 i32)
(local $4 i32)
@ -4601,7 +4602,7 @@
call $~lib/rt/pure/__release
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 $4 i32)
(local $5 i32)
@ -4922,7 +4923,7 @@
call $~lib/rt/pure/__release
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
global.get $~lib/heap/HEAP_BASE
i32.gt_u
@ -4934,11 +4935,11 @@
end
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
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
i32.load offset=4
local.get $1
@ -4948,7 +4949,7 @@
i32.load
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 $0
i32.load offset=12
@ -4979,7 +4980,7 @@
local.get $1
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.get $0
i32.const 100000
@ -5048,7 +5049,7 @@
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 $4 i32)
(local $5 i32)
@ -5189,7 +5190,7 @@
i32.store16
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 $2 i32)
(local $3 i32)
@ -5246,7 +5247,7 @@
local.get $3
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 $2 i32)
(local $3 i32)
@ -5283,7 +5284,7 @@
local.get $2
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.get $0
i64.const 1000000000000000
@ -5352,7 +5353,7 @@
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 $4 i64)
(local $5 i32)
@ -5478,7 +5479,7 @@
local.get $2
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 $2 i32)
(local $3 i32)
@ -5547,7 +5548,7 @@
local.get $1
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 $2 i32)
(local $3 i32)
@ -5638,19 +5639,19 @@
local.get $2
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
f64.sub
f64.const 0
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
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
i32.load offset=4
local.get $1
@ -5659,7 +5660,7 @@
i32.add
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
i32.load offset=4
local.get $1
@ -5668,7 +5669,7 @@
i32.add
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 $8 i64)
(local $9 i64)
@ -6224,7 +6225,7 @@
end
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 $4 i32)
(local $5 i32)
@ -6554,7 +6555,7 @@
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 $3 f64)
(local $4 i32)
@ -6992,7 +6993,7 @@
local.get $2
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 $4 i32)
(local $5 i32)
@ -7111,13 +7112,13 @@
local.get $10
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
i32.eqz
if
i32.const 0
i32.const 184
i32.const 560
i32.const 561
i32.const 13
call $~lib/builtins/abort
unreachable
@ -7137,7 +7138,7 @@
if
i32.const 0
i32.const 184
i32.const 561
i32.const 562
i32.const 2
call $~lib/builtins/abort
unreachable
@ -7148,7 +7149,7 @@
i32.sub
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 $2 i32)
(local $3 i32)
@ -7207,7 +7208,7 @@
call $~lib/rt/tlsf/__free
local.get $3
)
(func $start:std/string (; 79 ;) (type $FUNCSIG$v)
(func $start:std/string (; 80 ;) (type $FUNCSIG$v)
(local $0 i32)
(local $1 i32)
(local $2 i32)
@ -10741,14 +10742,14 @@
local.get $128
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
call $~lib/rt/pure/__retain
)
(func $start (; 81 ;) (type $FUNCSIG$v)
(func $start (; 82 ;) (type $FUNCSIG$v)
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.get $0
i32.load offset=4
@ -10775,7 +10776,7 @@
call $~lib/rt/__visit_members
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
i32.load offset=4
@ -10792,7 +10793,7 @@
i32.const 4
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.get $0
i32.load offset=4
@ -10829,7 +10830,7 @@
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.get $0
i32.load offset=4
@ -10858,7 +10859,7 @@
local.get $0
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 $3 i32)
local.get $0
@ -10921,7 +10922,7 @@
if
i32.const 0
i32.const 136
i32.const 74
i32.const 75
i32.const 17
call $~lib/builtins/abort
unreachable
@ -10968,7 +10969,7 @@
if
i32.const 0
i32.const 136
i32.const 85
i32.const 86
i32.const 6
call $~lib/builtins/abort
unreachable
@ -11005,14 +11006,14 @@
if
i32.const 0
i32.const 136
i32.const 96
i32.const 97
i32.const 24
call $~lib/builtins/abort
unreachable
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 $3 i32)
(local $4 i32)
@ -11048,19 +11049,19 @@
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
)
(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
)
(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
)
(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
)
(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)
block $block$4$break
block
@ -11210,6 +11211,6 @@
end
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