jassub 2.5.1 → 2.5.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +2 -0
- package/dist/wasm/jassub-worker-modern.wasm +0 -0
- package/dist/wasm/jassub-worker.js +191 -128
- package/dist/wasm/jassub-worker.js.map +1 -1
- package/dist/wasm/jassub-worker.wasm +0 -0
- package/dist/worker/extern-pre-worker.d.ts +0 -0
- package/dist/worker/extern-pre-worker.js +11 -0
- package/dist/worker/extern-pre-worker.js.map +1 -0
- package/dist/worker/util.d.ts +50 -5
- package/dist/worker/util.js +0 -5
- package/dist/worker/util.js.map +1 -1
- package/dist/worker/worker.d.ts +2 -2
- package/dist/worker/worker.js +11 -37
- package/dist/worker/worker.js.map +1 -1
- package/package.json +1 -1
- package/src/wasm/types.d.ts +15 -79
- package/src/worker/util.ts +51 -10
- package/src/worker/worker.ts +14 -42
- package/dist/default.woff2 +0 -0
- package/dist/wasm/types.d.ts +0 -134
- package/dist/worker/webgl-renderer.d.ts +0 -51
- package/dist/worker/webgl-renderer.js +0 -417
- package/dist/worker/webgl-renderer.js.map +0 -1
- package/dist/worker/webgpu-renderer.d.ts +0 -50
- package/dist/worker/webgpu-renderer.js +0 -404
- package/dist/worker/webgpu-renderer.js.map +0 -1
package/README.md
CHANGED
|
@@ -51,6 +51,8 @@ Promise: 33 7.1 29 / 4 3.1 2
|
|
|
51
51
|
Proxy: 49 10 18
|
|
52
52
|
Fetch: 42 10.1 39 / 41 10.1 34
|
|
53
53
|
getVPQ/rVFC: 80 8 42 / 28 8 42
|
|
54
|
+
-mnontrapping-fptoint 75 15 64
|
|
55
|
+
-msign-ext 69 14 62
|
|
54
56
|
-->
|
|
55
57
|
|
|
56
58
|
JASSUB supports Chrome/Safari/Firefox 80/17/105, you bring the support down to 67/16.2/68 if you enable some flags/settings in your browser for these features. For other engines polyfills might be needed. Babel is also recommended if you need to support older JS engines as JASSUB ships as ES modules with modern syntax.
|
|
Binary file
|
|
@@ -1,14 +1,23 @@
|
|
|
1
|
+
// emscripten doesnt support conditional loading of wasm modules out of the box
|
|
2
|
+
// so we hack around it by passing the url and simd support via the worker name
|
|
3
|
+
// hopefully not bad?
|
|
4
|
+
if (self.name.startsWith('em-pthread')) {
|
|
5
|
+
const url = self.name.split('-').slice(2).join('-');
|
|
6
|
+
const _fetch = globalThis.fetch;
|
|
7
|
+
globalThis.fetch = _ => _fetch(url);
|
|
8
|
+
self.name = 'em-pthread';
|
|
9
|
+
}
|
|
1
10
|
async function Module(moduleArg = {}) {
|
|
2
11
|
var moduleRtn;
|
|
3
12
|
var Module = moduleArg;
|
|
4
13
|
var ENVIRONMENT_IS_WEB = true;
|
|
14
|
+
var ENVIRONMENT_IS_WORKER = !!globalThis.WorkerGlobalScope;
|
|
5
15
|
var out = (...args) => console.log(...args);
|
|
6
16
|
var err = (...args) => console.error(...args);
|
|
7
17
|
function ready() { readyPromiseResolve?.(Module); if (ENVIRONMENT_IS_PTHREAD) {
|
|
8
18
|
startWorker();
|
|
9
19
|
} }
|
|
10
|
-
var
|
|
11
|
-
var ENVIRONMENT_IS_PTHREAD = ENVIRONMENT_IS_WORKER && self.name?.startsWith("em-pthread");
|
|
20
|
+
var ENVIRONMENT_IS_PTHREAD = ENVIRONMENT_IS_WORKER && globalThis.name == "em-pthread";
|
|
12
21
|
if (ENVIRONMENT_IS_WORKER) {
|
|
13
22
|
_scriptName = self.location.href;
|
|
14
23
|
}
|
|
@@ -16,16 +25,11 @@ async function Module(moduleArg = {}) {
|
|
|
16
25
|
const supportsGrowth = !!WebAssembly.Memory.prototype.toResizableBuffer;
|
|
17
26
|
updateMemoryViews = () => { if (supportsGrowth && self.HEAPU8RAW)
|
|
18
27
|
return; var b = supportsGrowth ? wasmMemory.toResizableBuffer() : wasmMemory.buffer; HEAP8 = new Int8Array(b); HEAP16 = new Int16Array(b); HEAPU8 = new Uint8Array(b); HEAPU16 = new Uint16Array(b); HEAP32 = new Int32Array(b); HEAPU32 = new Uint32Array(b); HEAPF32 = new Float32Array(b); HEAPF64 = new Float64Array(b); HEAP64 = new BigInt64Array(b); HEAPU64 = new BigUint64Array(b); self.HEAPU8RAW = new Uint8Array(b); self.WASMMEMORY = wasmMemory; };
|
|
19
|
-
if (
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
else {
|
|
25
|
-
if (moduleArg.__out)
|
|
26
|
-
out = moduleArg.__out;
|
|
27
|
-
if (moduleArg.__err)
|
|
28
|
-
err = moduleArg.__err;
|
|
28
|
+
if (moduleArg.__out)
|
|
29
|
+
out = moduleArg.__out;
|
|
30
|
+
if (moduleArg.__err)
|
|
31
|
+
err = moduleArg.__err;
|
|
32
|
+
if (!self.name.startsWith("em-pthread")) {
|
|
29
33
|
const OriginalWorker = globalThis.Worker;
|
|
30
34
|
globalThis.Worker = class extends OriginalWorker {
|
|
31
35
|
constructor(scriptURL, options = {}) { super(scriptURL, { ...options, name: "em-pthread-" + moduleArg.__url }); }
|
|
@@ -33,6 +37,10 @@ async function Module(moduleArg = {}) {
|
|
|
33
37
|
}
|
|
34
38
|
if (!ENVIRONMENT_IS_PTHREAD) { }
|
|
35
39
|
function abort(what) { throw what; }
|
|
40
|
+
class EmscriptenEH {
|
|
41
|
+
}
|
|
42
|
+
class EmscriptenSjLj extends EmscriptenEH {
|
|
43
|
+
}
|
|
36
44
|
function growMemViews() { if (wasmMemory.buffer != HEAP8.buffer) {
|
|
37
45
|
updateMemoryViews();
|
|
38
46
|
} }
|
|
@@ -99,17 +107,25 @@ async function Module(moduleArg = {}) {
|
|
|
99
107
|
} }
|
|
100
108
|
self.onmessage = handleMessage;
|
|
101
109
|
}
|
|
102
|
-
var HEAP8, HEAPU8, HEAP16, HEAPU16, HEAP32, HEAPU32, HEAPF32, HEAPF64;
|
|
103
|
-
var HEAP64, HEAPU64;
|
|
104
110
|
var runtimeInitialized = false;
|
|
105
111
|
function updateMemoryViews() { var b = wasmMemory.buffer; HEAP8 = new Int8Array(b); HEAP16 = new Int16Array(b); HEAPU8 = new Uint8Array(b); HEAPU16 = new Uint16Array(b); HEAP32 = new Int32Array(b); HEAPU32 = new Uint32Array(b); HEAPF32 = new Float32Array(b); HEAPF64 = new Float64Array(b); HEAP64 = new BigInt64Array(b); HEAPU64 = new BigUint64Array(b); }
|
|
106
112
|
function initMemory() { if (ENVIRONMENT_IS_PTHREAD) {
|
|
107
113
|
return;
|
|
108
114
|
} {
|
|
109
|
-
var INITIAL_MEMORY =
|
|
115
|
+
var INITIAL_MEMORY = 33554432;
|
|
110
116
|
wasmMemory = new WebAssembly.Memory({ initial: INITIAL_MEMORY / 65536, maximum: 32768, shared: true });
|
|
111
117
|
} updateMemoryViews(); }
|
|
112
118
|
initMemory();
|
|
119
|
+
var HEAP16;
|
|
120
|
+
var HEAP32;
|
|
121
|
+
var HEAP64;
|
|
122
|
+
var HEAP8;
|
|
123
|
+
var HEAPF32;
|
|
124
|
+
var HEAPF64;
|
|
125
|
+
var HEAPU16;
|
|
126
|
+
var HEAPU32;
|
|
127
|
+
var HEAPU64;
|
|
128
|
+
var HEAPU8;
|
|
113
129
|
var terminateWorker = worker => { worker.terminate(); worker.onmessage = e => { }; };
|
|
114
130
|
var cleanupThread = pthread_ptr => { var worker = PThread.pthreads[pthread_ptr]; PThread.returnWorkerToPool(worker); };
|
|
115
131
|
var callRuntimeCallbacks = callbacks => { while (callbacks.length > 0) {
|
|
@@ -122,20 +138,20 @@ async function Module(moduleArg = {}) {
|
|
|
122
138
|
var stackSave = () => _emscripten_stack_get_current();
|
|
123
139
|
var stackRestore = val => __emscripten_stack_restore(val);
|
|
124
140
|
var stackAlloc = sz => __emscripten_stack_alloc(sz);
|
|
125
|
-
var proxyToMainThread = (funcIndex, emAsmAddr,
|
|
126
|
-
var arg = callArgs[i];
|
|
141
|
+
var proxyToMainThread = (funcIndex, emAsmAddr, proxyMode, ...callArgs) => { var bufSize = 8 * callArgs.length * 2; var sp = stackSave(); var args = stackAlloc(bufSize); var b = args >> 3; for (var arg of callArgs) {
|
|
127
142
|
if (typeof arg == "bigint") {
|
|
128
|
-
(growMemViews(), HEAP64)[b
|
|
129
|
-
(growMemViews(), HEAP64)[b
|
|
143
|
+
(growMemViews(), HEAP64)[b++] = 1n;
|
|
144
|
+
(growMemViews(), HEAP64)[b++] = arg;
|
|
130
145
|
}
|
|
131
146
|
else {
|
|
132
|
-
(growMemViews(), HEAP64)[b
|
|
133
|
-
(growMemViews(), HEAPF64)[b
|
|
147
|
+
(growMemViews(), HEAP64)[b++] = 0n;
|
|
148
|
+
(growMemViews(), HEAPF64)[b++] = arg;
|
|
134
149
|
}
|
|
135
|
-
} var rtn = __emscripten_run_js_on_main_thread(funcIndex, emAsmAddr,
|
|
150
|
+
} var rtn = __emscripten_run_js_on_main_thread(funcIndex, emAsmAddr, bufSize, args, proxyMode); stackRestore(sp); return rtn; };
|
|
136
151
|
function _proc_exit(code) { if (ENVIRONMENT_IS_PTHREAD)
|
|
137
152
|
return proxyToMainThread(0, 0, 1, code); throw `exit(${code})`; }
|
|
138
153
|
var _exit = _proc_exit;
|
|
154
|
+
var waitAsyncPolyfilled = !Atomics.waitAsync || globalThis.navigator?.userAgent && Number((navigator.userAgent.match(/Chrom(e|ium)\/([0-9]+)\./) || [])[2]) < 91;
|
|
139
155
|
var PThread = { unusedWorkers: [], runningWorkers: [], tlsInitFunctions: [], pthreads: {}, init() { if (!ENVIRONMENT_IS_PTHREAD) {
|
|
140
156
|
PThread.initMainThread();
|
|
141
157
|
} }, initMainThread() { var pthreadPoolSize = !navigator.userAgent.toLowerCase().includes("firefox") && self.crossOriginIsolated ? Math.min(Math.max(0, navigator.hardwareConcurrency - 2), 8) : 0; while (pthreadPoolSize--) {
|
|
@@ -144,13 +160,15 @@ async function Module(moduleArg = {}) {
|
|
|
144
160
|
terminateWorker(worker);
|
|
145
161
|
} for (var worker of PThread.unusedWorkers) {
|
|
146
162
|
terminateWorker(worker);
|
|
147
|
-
} PThread.unusedWorkers = []; PThread.runningWorkers = []; PThread.pthreads = {}; },
|
|
163
|
+
} PThread.unusedWorkers = []; PThread.runningWorkers = []; PThread.pthreads = {}; }, terminateRuntime: () => { PThread.terminateAllThreads(); var pthread_ptr = _pthread_self(); ___set_thread_state(0, 0, 0, 1); if (!waitAsyncPolyfilled) {
|
|
164
|
+
Atomics.notify((growMemViews(), HEAP32), pthread_ptr >> 2);
|
|
165
|
+
} }, returnWorkerToPool: worker => { var pthread_ptr = worker.pthread_ptr; delete PThread.pthreads[pthread_ptr]; PThread.unusedWorkers.push(worker); PThread.runningWorkers.splice(PThread.runningWorkers.indexOf(worker), 1); worker.pthread_ptr = 0; __emscripten_thread_free_data(pthread_ptr); }, threadInitTLS() { PThread.tlsInitFunctions.forEach(f => f()); }, loadWasmModuleToWorker: worker => new Promise(onFinishedLoading => { worker.onmessage = e => { var d = e["data"]; var cmd = d.cmd; if (d.targetThread && d.targetThread != _pthread_self()) {
|
|
148
166
|
var targetWorker = PThread.pthreads[d.targetThread];
|
|
149
167
|
if (targetWorker) {
|
|
150
168
|
targetWorker.postMessage(d, d.transferList);
|
|
151
169
|
}
|
|
152
170
|
else {
|
|
153
|
-
err(`
|
|
171
|
+
err(`worker sent message (${cmd}) to pthread (${d.targetThread}) that no longer exists`);
|
|
154
172
|
}
|
|
155
173
|
return;
|
|
156
174
|
} if (cmd === "checkMailbox") {
|
|
@@ -184,12 +202,62 @@ async function Module(moduleArg = {}) {
|
|
|
184
202
|
PThread.allocateUnusedWorker();
|
|
185
203
|
PThread.loadWasmModuleToWorker(PThread.unusedWorkers[0]);
|
|
186
204
|
} return PThread.unusedWorkers.pop(); } };
|
|
187
|
-
function establishStackSpace(pthread_ptr) { var stackHigh = (growMemViews(), HEAPU32)[pthread_ptr +
|
|
205
|
+
function establishStackSpace(pthread_ptr) { var stackHigh = (growMemViews(), HEAPU32)[pthread_ptr + 48 >> 2]; var stackSize = (growMemViews(), HEAPU32)[pthread_ptr + 52 >> 2]; var stackLow = stackHigh - stackSize; _emscripten_stack_set_limits(stackHigh, stackLow); stackRestore(stackHigh); }
|
|
188
206
|
var wasmTableMirror = [];
|
|
189
207
|
var getWasmTableEntry = funcPtr => { var func = wasmTableMirror[funcPtr]; if (!func) {
|
|
190
208
|
wasmTableMirror[funcPtr] = func = wasmTable.get(funcPtr);
|
|
191
209
|
} return func; };
|
|
192
210
|
var invokeEntryPoint = (ptr, arg) => { var result = getWasmTableEntry(ptr)(arg); function finish(result) { __emscripten_thread_exit(result); } finish(result); };
|
|
211
|
+
var lengthBytesUTF8 = str => { var len = 0; for (var i = 0; i < str.length; ++i) {
|
|
212
|
+
var c = str.charCodeAt(i);
|
|
213
|
+
if (c <= 127) {
|
|
214
|
+
len++;
|
|
215
|
+
}
|
|
216
|
+
else if (c <= 2047) {
|
|
217
|
+
len += 2;
|
|
218
|
+
}
|
|
219
|
+
else if (c >= 55296 && c <= 57343) {
|
|
220
|
+
len += 4;
|
|
221
|
+
++i;
|
|
222
|
+
}
|
|
223
|
+
else {
|
|
224
|
+
len += 3;
|
|
225
|
+
}
|
|
226
|
+
} return len; };
|
|
227
|
+
var stringToUTF8Array = (str, heap, outIdx, maxBytesToWrite) => { if (!(maxBytesToWrite > 0))
|
|
228
|
+
return 0; var startIdx = outIdx; var endIdx = outIdx + maxBytesToWrite - 1; for (var i = 0; i < str.length; ++i) {
|
|
229
|
+
var u = str.codePointAt(i);
|
|
230
|
+
if (u <= 127) {
|
|
231
|
+
if (outIdx >= endIdx)
|
|
232
|
+
break;
|
|
233
|
+
heap[outIdx++] = u;
|
|
234
|
+
}
|
|
235
|
+
else if (u <= 2047) {
|
|
236
|
+
if (outIdx + 1 >= endIdx)
|
|
237
|
+
break;
|
|
238
|
+
heap[outIdx++] = 192 | u >> 6;
|
|
239
|
+
heap[outIdx++] = 128 | u & 63;
|
|
240
|
+
}
|
|
241
|
+
else if (u <= 65535) {
|
|
242
|
+
if (outIdx + 2 >= endIdx)
|
|
243
|
+
break;
|
|
244
|
+
heap[outIdx++] = 224 | u >> 12;
|
|
245
|
+
heap[outIdx++] = 128 | u >> 6 & 63;
|
|
246
|
+
heap[outIdx++] = 128 | u & 63;
|
|
247
|
+
}
|
|
248
|
+
else {
|
|
249
|
+
if (outIdx + 3 >= endIdx)
|
|
250
|
+
break;
|
|
251
|
+
heap[outIdx++] = 240 | u >> 18;
|
|
252
|
+
heap[outIdx++] = 128 | u >> 12 & 63;
|
|
253
|
+
heap[outIdx++] = 128 | u >> 6 & 63;
|
|
254
|
+
heap[outIdx++] = 128 | u & 63;
|
|
255
|
+
i++;
|
|
256
|
+
}
|
|
257
|
+
} heap[outIdx] = 0; return outIdx - startIdx; };
|
|
258
|
+
var stringToUTF8 = (str, outPtr, maxBytesToWrite) => stringToUTF8Array(str, (growMemViews(), HEAPU8), outPtr, maxBytesToWrite);
|
|
259
|
+
var stringToNewUTF8 = str => { var size = lengthBytesUTF8(str) + 1; var ret = _malloc(size); if (ret)
|
|
260
|
+
stringToUTF8(str, ret, size); return ret; };
|
|
193
261
|
var wasmMemory;
|
|
194
262
|
var UTF8Decoder = new TextDecoder;
|
|
195
263
|
var findStringEnd = (heapOrArray, idx, maxBytesToRead, ignoreNul) => { var maxIdx = idx + maxBytesToRead; if (ignoreNul)
|
|
@@ -432,7 +500,7 @@ async function Module(moduleArg = {}) {
|
|
|
432
500
|
}
|
|
433
501
|
}
|
|
434
502
|
break;
|
|
435
|
-
default: throwBindingError("
|
|
503
|
+
default: throwBindingError("Unsupported sharing policy");
|
|
436
504
|
}
|
|
437
505
|
} return ptr; }
|
|
438
506
|
function nonConstNoSmartPtrRawPointerToWireType(destructors, handle) { if (handle === null) {
|
|
@@ -594,34 +662,21 @@ async function Module(moduleArg = {}) {
|
|
|
594
662
|
return true;
|
|
595
663
|
}
|
|
596
664
|
} return false; }
|
|
597
|
-
function
|
|
598
|
-
|
|
599
|
-
|
|
600
|
-
|
|
601
|
-
|
|
602
|
-
|
|
603
|
-
invokerFnBody += "var destructors = [];\n";
|
|
604
|
-
} var dtorStack = needsDestructorStack ? "destructors" : "null"; var args1 = ["humanName", "throwBindingError", "invoker", "fn", "runDestructors", "fromRetWire", "toClassParamWire"]; if (isClassMethodFunc) {
|
|
605
|
-
invokerFnBody += `var thisWired = toClassParamWire(${dtorStack}, this);\n`;
|
|
606
|
-
} for (var i = 0; i < argCount; ++i) {
|
|
607
|
-
var argName = `toArg${i}Wire`;
|
|
608
|
-
invokerFnBody += `var arg${i}Wired = ${argName}(${dtorStack}, arg${i});\n`;
|
|
609
|
-
args1.push(argName);
|
|
610
|
-
} invokerFnBody += (returns || isAsync ? "var rv = " : "") + `invoker(${argsListWired});\n`; if (needsDestructorStack) {
|
|
611
|
-
invokerFnBody += "runDestructors(destructors);\n";
|
|
612
|
-
}
|
|
613
|
-
else {
|
|
614
|
-
for (var i = isClassMethodFunc ? 1 : 2; i < argTypes.length; ++i) {
|
|
615
|
-
var paramName = i === 1 ? "thisWired" : "arg" + (i - 2) + "Wired";
|
|
616
|
-
if (argTypes[i].destructorFunction !== null) {
|
|
617
|
-
invokerFnBody += `${paramName}_dtor(${paramName});\n`;
|
|
618
|
-
args1.push(`${paramName}_dtor`);
|
|
619
|
-
}
|
|
665
|
+
var InvokerFunctions = { ftfnnn: function anonymous(humanName, throwBindingError, invoker, fn, runDestructors, fromRetWire, toClassParamWire, toArg0Wire, toArg1Wire, toArg2Wire) { return function (arg0, arg1, arg2) { var arg0Wired = toArg0Wire(null, arg0); var arg1Wired = toArg1Wire(null, arg1); var arg2Wired = toArg2Wire(null, arg2); var rv = invoker(fn, arg0Wired, arg1Wired, arg2Wired); var ret = fromRetWire(rv); return ret; }; }, tffn: function anonymous(humanName, throwBindingError, invoker, fn, runDestructors, fromRetWire, toClassParamWire) { return function () { var thisWired = toClassParamWire(null, this); invoker(fn, thisWired); }; }, tffnn: function anonymous(humanName, throwBindingError, invoker, fn, runDestructors, fromRetWire, toClassParamWire, toArg0Wire) { return function (arg0) { var thisWired = toClassParamWire(null, this); var arg0Wired = toArg0Wire(null, arg0); invoker(fn, thisWired, arg0Wired); }; }, tffnnnnn: function anonymous(humanName, throwBindingError, invoker, fn, runDestructors, fromRetWire, toClassParamWire, toArg0Wire, toArg1Wire, toArg2Wire, toArg3Wire) { return function (arg0, arg1, arg2, arg3) { var thisWired = toClassParamWire(null, this); var arg0Wired = toArg0Wire(null, arg0); var arg1Wired = toArg1Wire(null, arg1); var arg2Wired = toArg2Wire(null, arg2); var arg3Wired = toArg3Wire(null, arg3); invoker(fn, thisWired, arg0Wired, arg1Wired, arg2Wired, arg3Wired); }; }, tffnnn: function anonymous(humanName, throwBindingError, invoker, fn, runDestructors, fromRetWire, toClassParamWire, toArg0Wire, toArg1Wire) { return function (arg0, arg1) { var thisWired = toClassParamWire(null, this); var arg0Wired = toArg0Wire(null, arg0); var arg1Wired = toArg1Wire(null, arg1); invoker(fn, thisWired, arg0Wired, arg1Wired); }; }, ttfnn: function anonymous(humanName, throwBindingError, invoker, fn, runDestructors, fromRetWire, toClassParamWire, toArg0Wire) { return function (arg0) { var thisWired = toClassParamWire(null, this); var arg0Wired = toArg0Wire(null, arg0); var rv = invoker(fn, thisWired, arg0Wired); var ret = fromRetWire(rv); return ret; }; }, tffnt: function anonymous(humanName, throwBindingError, invoker, fn, runDestructors, fromRetWire, toClassParamWire, toArg0Wire, arg0Wired_dtor) { return function (arg0) { var thisWired = toClassParamWire(null, this); var arg0Wired = toArg0Wire(null, arg0); invoker(fn, thisWired, arg0Wired); arg0Wired_dtor(arg0Wired); }; }, tffnnnn: function anonymous(humanName, throwBindingError, invoker, fn, runDestructors, fromRetWire, toClassParamWire, toArg0Wire, toArg1Wire, toArg2Wire) { return function (arg0, arg1, arg2) { var thisWired = toClassParamWire(null, this); var arg0Wired = toArg0Wire(null, arg0); var arg1Wired = toArg1Wire(null, arg1); var arg2Wired = toArg2Wire(null, arg2); invoker(fn, thisWired, arg0Wired, arg1Wired, arg2Wired); }; }, ttfn: function anonymous(humanName, throwBindingError, invoker, fn, runDestructors, fromRetWire, toClassParamWire) { return function () { var thisWired = toClassParamWire(null, this); var rv = invoker(fn, thisWired); var ret = fromRetWire(rv); return ret; }; }, ttfnnn: function anonymous(humanName, throwBindingError, invoker, fn, runDestructors, fromRetWire, toClassParamWire, toArg0Wire, toArg1Wire) { return function (arg0, arg1) { var thisWired = toClassParamWire(null, this); var arg0Wired = toArg0Wire(null, arg0); var arg1Wired = toArg1Wire(null, arg1); var rv = invoker(fn, thisWired, arg0Wired, arg1Wired); var ret = fromRetWire(rv); return ret; }; } };
|
|
666
|
+
function createJsInvokerSignature(argTypes, isClassMethodFunc, returns, isAsync) { const signature = [isClassMethodFunc ? "t" : "f", returns ? "t" : "f", isAsync ? "t" : "f"]; for (let i = isClassMethodFunc ? 1 : 2; i < argTypes.length; ++i) {
|
|
667
|
+
const arg = argTypes[i];
|
|
668
|
+
let destructorSig = "";
|
|
669
|
+
if (arg.destructorFunction === undefined) {
|
|
670
|
+
destructorSig = "u";
|
|
620
671
|
}
|
|
621
|
-
|
|
622
|
-
|
|
623
|
-
|
|
624
|
-
|
|
672
|
+
else if (arg.destructorFunction === null) {
|
|
673
|
+
destructorSig = "n";
|
|
674
|
+
}
|
|
675
|
+
else {
|
|
676
|
+
destructorSig = "t";
|
|
677
|
+
}
|
|
678
|
+
signature.push(destructorSig);
|
|
679
|
+
} return signature.join(""); }
|
|
625
680
|
function craftInvokerFunction(humanName, argTypes, classType, cppInvokerFunc, cppTargetFunc, isAsync) { var argCount = argTypes.length; if (argCount < 2) {
|
|
626
681
|
throwBindingError("argTypes array size mismatch! Must at least get return value and 'this' types!");
|
|
627
682
|
} var isClassMethodFunc = argTypes[1] !== null && classType !== null; var needsDestructorStack = usesDestructorStack(argTypes); var returns = !argTypes[0].isVoid; var retType = argTypes[0]; var instType = argTypes[1]; var closureArgs = [humanName, throwBindingError, cppInvokerFunc, cppTargetFunc, runDestructors, retType.fromWireType.bind(retType), instType?.toWireType.bind(instType)]; for (var i = 2; i < argCount; ++i) {
|
|
@@ -633,7 +688,7 @@ async function Module(moduleArg = {}) {
|
|
|
633
688
|
closureArgs.push(argTypes[i].destructorFunction);
|
|
634
689
|
}
|
|
635
690
|
}
|
|
636
|
-
}
|
|
691
|
+
} var signature = createJsInvokerSignature(argTypes, isClassMethodFunc, returns, isAsync); var invokerFn = InvokerFunctions[signature](...closureArgs); return createNamedFunction(humanName, invokerFn); }
|
|
637
692
|
var __embind_register_class_constructor = (rawClassType, argCount, rawArgTypesAddr, invokerSignature, invoker, rawConstructor) => { var rawArgTypes = heap32VectorToArray(argCount, rawArgTypesAddr); invoker = embind__requireFunction(invokerSignature, invoker); whenDependentTypesAreResolved([], [rawClassType], classType => { classType = classType[0]; var humanName = `constructor ${classType.name}`; if (undefined === classType.registeredClass.constructor_body) {
|
|
638
693
|
classType.registeredClass.constructor_body = [];
|
|
639
694
|
} if (undefined !== classType.registeredClass.constructor_body[argCount - 1]) {
|
|
@@ -680,6 +735,7 @@ async function Module(moduleArg = {}) {
|
|
|
680
735
|
var emval_freelist = [];
|
|
681
736
|
var emval_handles = [0, 1, , 1, null, 1, true, 1, false, 1];
|
|
682
737
|
var __emval_decref = handle => { if (handle > 9 && 0 === --emval_handles[handle + 1]) {
|
|
738
|
+
var value = emval_handles[handle];
|
|
683
739
|
emval_handles[handle] = undefined;
|
|
684
740
|
emval_freelist.push(handle);
|
|
685
741
|
} };
|
|
@@ -711,54 +767,6 @@ async function Module(moduleArg = {}) {
|
|
|
711
767
|
maxRange = fromWireType(maxRange);
|
|
712
768
|
} registerType(primitiveType, { name, fromWireType, toWireType: (destructors, value) => value, readValueFromPointer: integerReadValueFromPointer(name, size, minRange !== 0), destructorFunction: null }); };
|
|
713
769
|
var __embind_register_memory_view = (rawType, dataTypeIndex, name) => { var typeMapping = [Int8Array, Uint8Array, Int16Array, Uint16Array, Int32Array, Uint32Array, Float32Array, Float64Array, BigInt64Array, BigUint64Array]; var TA = typeMapping[dataTypeIndex]; function decodeMemoryView(handle) { var size = (growMemViews(), HEAPU32)[handle >> 2]; var data = (growMemViews(), HEAPU32)[handle + 4 >> 2]; return new TA((growMemViews(), HEAP8).buffer, data, size); } name = AsciiToString(name); registerType(rawType, { name, fromWireType: decodeMemoryView, readValueFromPointer: decodeMemoryView }, { ignoreDuplicateRegistrations: true }); };
|
|
714
|
-
var stringToUTF8Array = (str, heap, outIdx, maxBytesToWrite) => { if (!(maxBytesToWrite > 0))
|
|
715
|
-
return 0; var startIdx = outIdx; var endIdx = outIdx + maxBytesToWrite - 1; for (var i = 0; i < str.length; ++i) {
|
|
716
|
-
var u = str.codePointAt(i);
|
|
717
|
-
if (u <= 127) {
|
|
718
|
-
if (outIdx >= endIdx)
|
|
719
|
-
break;
|
|
720
|
-
heap[outIdx++] = u;
|
|
721
|
-
}
|
|
722
|
-
else if (u <= 2047) {
|
|
723
|
-
if (outIdx + 1 >= endIdx)
|
|
724
|
-
break;
|
|
725
|
-
heap[outIdx++] = 192 | u >> 6;
|
|
726
|
-
heap[outIdx++] = 128 | u & 63;
|
|
727
|
-
}
|
|
728
|
-
else if (u <= 65535) {
|
|
729
|
-
if (outIdx + 2 >= endIdx)
|
|
730
|
-
break;
|
|
731
|
-
heap[outIdx++] = 224 | u >> 12;
|
|
732
|
-
heap[outIdx++] = 128 | u >> 6 & 63;
|
|
733
|
-
heap[outIdx++] = 128 | u & 63;
|
|
734
|
-
}
|
|
735
|
-
else {
|
|
736
|
-
if (outIdx + 3 >= endIdx)
|
|
737
|
-
break;
|
|
738
|
-
heap[outIdx++] = 240 | u >> 18;
|
|
739
|
-
heap[outIdx++] = 128 | u >> 12 & 63;
|
|
740
|
-
heap[outIdx++] = 128 | u >> 6 & 63;
|
|
741
|
-
heap[outIdx++] = 128 | u & 63;
|
|
742
|
-
i++;
|
|
743
|
-
}
|
|
744
|
-
} heap[outIdx] = 0; return outIdx - startIdx; };
|
|
745
|
-
var stringToUTF8 = (str, outPtr, maxBytesToWrite) => stringToUTF8Array(str, (growMemViews(), HEAPU8), outPtr, maxBytesToWrite);
|
|
746
|
-
var lengthBytesUTF8 = str => { var len = 0; for (var i = 0; i < str.length; ++i) {
|
|
747
|
-
var c = str.charCodeAt(i);
|
|
748
|
-
if (c <= 127) {
|
|
749
|
-
len++;
|
|
750
|
-
}
|
|
751
|
-
else if (c <= 2047) {
|
|
752
|
-
len += 2;
|
|
753
|
-
}
|
|
754
|
-
else if (c >= 55296 && c <= 57343) {
|
|
755
|
-
len += 4;
|
|
756
|
-
++i;
|
|
757
|
-
}
|
|
758
|
-
else {
|
|
759
|
-
len += 3;
|
|
760
|
-
}
|
|
761
|
-
} return len; };
|
|
762
770
|
var __embind_register_std_string = (rawType, name) => { name = AsciiToString(name); var stdStringIsUTF8 = true; registerType(rawType, { name, fromWireType(value) { var length = (growMemViews(), HEAPU32)[value >> 2]; var payload = value + 4; var str; if (stdStringIsUTF8) {
|
|
763
771
|
str = UTF8ToString(payload, length, true);
|
|
764
772
|
}
|
|
@@ -844,19 +852,16 @@ async function Module(moduleArg = {}) {
|
|
|
844
852
|
destructors.push(_free, ptr);
|
|
845
853
|
} return ptr; }, readValueFromPointer: readPointer, destructorFunction(ptr) { _free(ptr); } }); };
|
|
846
854
|
var __embind_register_void = (rawType, name) => { name = AsciiToString(name); registerType(rawType, { isVoid: true, name, fromWireType: () => undefined, toWireType: (destructors, o) => undefined }); };
|
|
847
|
-
var __emscripten_init_main_thread_js = tb => { __emscripten_thread_init(tb, !ENVIRONMENT_IS_WORKER, 1, !ENVIRONMENT_IS_WEB,
|
|
855
|
+
var __emscripten_init_main_thread_js = tb => { __emscripten_thread_init(tb, !ENVIRONMENT_IS_WORKER, 1, !ENVIRONMENT_IS_WEB, 262144, false); PThread.threadInitTLS(); };
|
|
848
856
|
var callUserCallback = func => { func(); };
|
|
849
|
-
var waitAsyncPolyfilled = !Atomics.waitAsync || globalThis.navigator?.userAgent && Number((navigator.userAgent.match(/Chrom(e|ium)\/([0-9]+)\./) || [])[2]) < 91;
|
|
850
857
|
var __emscripten_thread_mailbox_await = pthread_ptr => { if (!waitAsyncPolyfilled) {
|
|
851
858
|
var wait = Atomics.waitAsync((growMemViews(), HEAP32), pthread_ptr >> 2, pthread_ptr);
|
|
852
859
|
wait.value.then(checkMailbox);
|
|
853
|
-
var waitingAsync = pthread_ptr +
|
|
860
|
+
var waitingAsync = pthread_ptr + 120;
|
|
854
861
|
Atomics.store((growMemViews(), HEAP32), waitingAsync >> 2, 1);
|
|
855
862
|
} };
|
|
856
|
-
var checkMailbox = () =>
|
|
857
|
-
__emscripten_thread_mailbox_await(pthread_ptr);
|
|
858
|
-
__emscripten_check_mailbox();
|
|
859
|
-
} });
|
|
863
|
+
var checkMailbox = () => { var pthread_ptr = _pthread_self(); if (!pthread_ptr)
|
|
864
|
+
return; callUserCallback(() => { __emscripten_thread_mailbox_await(pthread_ptr); __emscripten_check_mailbox(); }); };
|
|
860
865
|
var __emscripten_notify_mailbox_postmessage = (targetThread, currThreadId) => { if (targetThread == currThreadId) {
|
|
861
866
|
setTimeout(checkMailbox);
|
|
862
867
|
}
|
|
@@ -871,21 +876,68 @@ async function Module(moduleArg = {}) {
|
|
|
871
876
|
worker.postMessage({ cmd: "checkMailbox" });
|
|
872
877
|
} };
|
|
873
878
|
var proxiedJSCallArgs = [];
|
|
874
|
-
var __emscripten_receive_on_main_thread_js = (funcIndex, emAsmAddr, callingThread,
|
|
875
|
-
|
|
876
|
-
|
|
879
|
+
var __emscripten_receive_on_main_thread_js = (funcIndex, emAsmAddr, callingThread, bufSize, args, ctx, ctxArgs) => { proxiedJSCallArgs.length = 0; var b = args >> 3; var end = args + bufSize >> 3; while (b < end) {
|
|
880
|
+
var arg;
|
|
881
|
+
if ((growMemViews(), HEAP64)[b++]) {
|
|
882
|
+
arg = (growMemViews(), HEAP64)[b++];
|
|
877
883
|
}
|
|
878
884
|
else {
|
|
879
|
-
|
|
885
|
+
arg = (growMemViews(), HEAPF64)[b++];
|
|
880
886
|
}
|
|
881
|
-
|
|
887
|
+
proxiedJSCallArgs.push(arg);
|
|
888
|
+
} var func = emAsmAddr ? ASM_CONSTS[emAsmAddr] : proxiedFunctionTable[funcIndex]; PThread.currentProxiedOperationCallerThread = callingThread; var rtn = func(...proxiedJSCallArgs); PThread.currentProxiedOperationCallerThread = 0; if (ctx) {
|
|
889
|
+
rtn.then(rtn => __emscripten_run_js_on_main_thread_done(ctx, ctxArgs, rtn));
|
|
890
|
+
return;
|
|
891
|
+
} return rtn; };
|
|
882
892
|
var __emscripten_runtime_keepalive_clear = () => { };
|
|
883
893
|
var __emscripten_thread_cleanup = thread => { if (!ENVIRONMENT_IS_PTHREAD)
|
|
884
894
|
cleanupThread(thread);
|
|
885
895
|
else
|
|
886
896
|
postMessage({ cmd: "cleanupThread", thread }); };
|
|
887
897
|
var __emscripten_thread_set_strongref = thread => { };
|
|
888
|
-
var __emscripten_throw_longjmp = () => { throw
|
|
898
|
+
var __emscripten_throw_longjmp = () => { throw new EmscriptenSjLj; };
|
|
899
|
+
var emval_methodCallers = [];
|
|
900
|
+
var emval_addMethodCaller = caller => { var id = emval_methodCallers.length; emval_methodCallers.push(caller); return id; };
|
|
901
|
+
var requireRegisteredType = (rawType, humanName) => { var impl = registeredTypes[rawType]; if (undefined === impl) {
|
|
902
|
+
throwBindingError(`${humanName} has unknown type ${getTypeName(rawType)}`);
|
|
903
|
+
} return impl; };
|
|
904
|
+
var emval_lookupTypes = (argCount, argTypes) => { var a = new Array(argCount); for (var i = 0; i < argCount; ++i) {
|
|
905
|
+
a[i] = requireRegisteredType((growMemViews(), HEAPU32)[argTypes + i * 4 >> 2], `parameter ${i}`);
|
|
906
|
+
} return a; };
|
|
907
|
+
var emval_returnValue = (toReturnWire, destructorsRef, handle) => { var destructors = []; var result = toReturnWire(destructors, handle); if (destructors.length) {
|
|
908
|
+
(growMemViews(), HEAPU32)[destructorsRef >> 2] = Emval.toHandle(destructors);
|
|
909
|
+
} return result; };
|
|
910
|
+
var emval_symbols = {};
|
|
911
|
+
var getStringOrSymbol = address => { var symbol = emval_symbols[address]; if (symbol === undefined) {
|
|
912
|
+
return AsciiToString(address);
|
|
913
|
+
} return symbol; };
|
|
914
|
+
var __emval_create_invoker = (argCount, argTypesPtr, kind) => { var GenericWireTypeSize = 8; var [retType, ...argTypes] = emval_lookupTypes(argCount, argTypesPtr); var toReturnWire = retType.toWireType.bind(retType); var argFromPtr = argTypes.map(type => type.readValueFromPointer.bind(type)); argCount--; var argN = new Array(argCount); var invokerFunction = (handle, methodName, destructorsRef, args) => { var offset = 0; for (var i = 0; i < argCount; ++i) {
|
|
915
|
+
argN[i] = argFromPtr[i](args + offset);
|
|
916
|
+
offset += GenericWireTypeSize;
|
|
917
|
+
} var rv; switch (kind) {
|
|
918
|
+
case 0:
|
|
919
|
+
rv = Emval.toValue(handle).apply(null, argN);
|
|
920
|
+
break;
|
|
921
|
+
case 2:
|
|
922
|
+
rv = Reflect.construct(Emval.toValue(handle), argN);
|
|
923
|
+
break;
|
|
924
|
+
case 3:
|
|
925
|
+
rv = argN[0];
|
|
926
|
+
break;
|
|
927
|
+
case 1:
|
|
928
|
+
rv = Emval.toValue(handle)[getStringOrSymbol(methodName)](...argN);
|
|
929
|
+
break;
|
|
930
|
+
} return emval_returnValue(toReturnWire, destructorsRef, rv); }; var functionName = `methodCaller<(${argTypes.map(t => t.name)}) => ${retType.name}>`; return emval_addMethodCaller(createNamedFunction(functionName, invokerFunction)); };
|
|
931
|
+
var __emval_get_property = (handle, key) => { handle = Emval.toValue(handle); key = Emval.toValue(key); return Emval.toHandle(handle[key]); };
|
|
932
|
+
var __emval_incref = handle => { if (handle > 9) {
|
|
933
|
+
emval_handles[handle + 1] += 1;
|
|
934
|
+
} };
|
|
935
|
+
var __emval_invoke = (caller, handle, methodName, destructorsRef, args) => emval_methodCallers[caller](handle, methodName, destructorsRef, args);
|
|
936
|
+
var __emval_new_array = () => Emval.toHandle([]);
|
|
937
|
+
var __emval_new_cstring = v => Emval.toHandle(getStringOrSymbol(v));
|
|
938
|
+
var __emval_new_object = () => Emval.toHandle({});
|
|
939
|
+
var __emval_run_destructors = handle => { var destructors = Emval.toValue(handle); runDestructors(destructors); __emval_decref(handle); };
|
|
940
|
+
var __emval_set_property = (handle, key, value) => { handle = Emval.toValue(handle); key = Emval.toValue(key); value = Emval.toValue(value); handle[key] = value; };
|
|
889
941
|
var timers = {};
|
|
890
942
|
var _emscripten_get_now = () => performance.timeOrigin + performance.now();
|
|
891
943
|
function __setitimer_js(which, timeout_ms) { if (ENVIRONMENT_IS_PTHREAD)
|
|
@@ -898,6 +950,16 @@ async function Module(moduleArg = {}) {
|
|
|
898
950
|
var INT53_MAX = 9007199254740992;
|
|
899
951
|
var INT53_MIN = -9007199254740992;
|
|
900
952
|
var bigintToI53Checked = num => num < INT53_MIN || num > INT53_MAX ? NaN : Number(num);
|
|
953
|
+
var readEmAsmArgsArray = [];
|
|
954
|
+
var readEmAsmArgs = (sigPtr, buf) => { readEmAsmArgsArray.length = 0; var ch; while (ch = (growMemViews(), HEAPU8)[sigPtr++]) {
|
|
955
|
+
var wide = ch != 105;
|
|
956
|
+
wide &= ch != 112;
|
|
957
|
+
buf += wide && buf % 8 ? 4 : 0;
|
|
958
|
+
readEmAsmArgsArray.push(ch == 112 ? (growMemViews(), HEAPU32)[buf >> 2] : ch == 106 ? (growMemViews(), HEAP64)[buf >> 3] : ch == 105 ? (growMemViews(), HEAP32)[buf >> 2] : (growMemViews(), HEAPF64)[buf >> 3]);
|
|
959
|
+
buf += wide ? 8 : 4;
|
|
960
|
+
} return readEmAsmArgsArray; };
|
|
961
|
+
var runEmAsmFunction = (code, sigPtr, argbuf) => { var args = readEmAsmArgs(sigPtr, argbuf); return ASM_CONSTS[code](...args); };
|
|
962
|
+
var _emscripten_asm_const_ptr = (code, sigPtr, argbuf) => runEmAsmFunction(code, sigPtr, argbuf);
|
|
901
963
|
var _emscripten_check_blocking_allowed = () => { };
|
|
902
964
|
var _emscripten_err = str => err(UTF8ToString(str));
|
|
903
965
|
var _emscripten_exit_with_live_runtime = () => { throw "unwind"; };
|
|
@@ -977,23 +1039,24 @@ async function Module(moduleArg = {}) {
|
|
|
977
1039
|
}
|
|
978
1040
|
num += len;
|
|
979
1041
|
} (growMemViews(), HEAPU32)[pnum >> 2] = num; return 0; }
|
|
980
|
-
var initRandomFill = () => view => view.set(crypto.getRandomValues(new Uint8Array(view.byteLength)));
|
|
981
|
-
var randomFill = view =>
|
|
982
|
-
var _random_get = (buffer, size) =>
|
|
1042
|
+
var initRandomFill = () => view => (view.set(crypto.getRandomValues(new Uint8Array(view.byteLength))), 0);
|
|
1043
|
+
var randomFill = view => (randomFill = initRandomFill())(view);
|
|
1044
|
+
var _random_get = (buffer, size) => randomFill((growMemViews(), HEAPU8).subarray(buffer, buffer + size));
|
|
983
1045
|
PThread.init();
|
|
984
1046
|
init_ClassHandle();
|
|
985
1047
|
init_RegisteredPointer();
|
|
986
1048
|
var proxiedFunctionTable = [_proc_exit, pthreadCreateProxied, ___syscall_fcntl64, ___syscall_getdents64, ___syscall_ioctl, ___syscall_openat, __setitimer_js, _environ_get, _environ_sizes_get, _fd_close, _fd_read, _fd_seek, _fd_write];
|
|
987
|
-
var
|
|
988
|
-
|
|
1049
|
+
var ASM_CONSTS = { 613693: $0 => stringToNewUTF8(Emval.toValue($0)) };
|
|
1050
|
+
var __ZdlPvm, _pthread_self, __Znwm, _free, _malloc, _calloc, ___getTypeName, __embind_initialize_bindings, _emscripten_builtin_free, __emscripten_tls_init, __emscripten_thread_init, ___set_thread_state, __emscripten_thread_crashed, ___libc_free, _emscripten_builtin_malloc, ___libc_malloc, __emscripten_run_js_on_main_thread_done, __emscripten_run_js_on_main_thread, __emscripten_thread_free_data, __emscripten_thread_exit, __emscripten_timeout, __emscripten_check_mailbox, __ZdaPv, __ZdaPvm, __ZdlPv, __Znam, __ZnamSt11align_val_t, __ZnwmSt11align_val_t, ___libc_calloc, ___libc_realloc, _emscripten_builtin_calloc, _emscripten_builtin_realloc, _malloc_size, _malloc_usable_size, _reallocf, _setThrew, _emscripten_stack_set_limits, __emscripten_stack_restore, __emscripten_stack_alloc, _emscripten_stack_get_current, __indirect_function_table, wasmTable;
|
|
1051
|
+
function assignWasmExports(wasmExports) { __ZdlPvm = Module["__ZdlPvm"] = wasmExports["ia"]; _pthread_self = wasmExports["ja"]; __Znwm = Module["__Znwm"] = wasmExports["ka"]; _free = wasmExports["la"]; _malloc = Module["_malloc"] = wasmExports["ma"]; _calloc = Module["_calloc"] = wasmExports["na"]; ___getTypeName = wasmExports["oa"]; __embind_initialize_bindings = wasmExports["pa"]; _emscripten_builtin_free = Module["_emscripten_builtin_free"] = wasmExports["qa"]; __emscripten_tls_init = wasmExports["ra"]; __emscripten_thread_init = wasmExports["ta"]; ___set_thread_state = wasmExports["ua"]; __emscripten_thread_crashed = wasmExports["va"]; ___libc_free = Module["___libc_free"] = wasmExports["wa"]; _emscripten_builtin_malloc = Module["_emscripten_builtin_malloc"] = wasmExports["xa"]; ___libc_malloc = Module["___libc_malloc"] = wasmExports["ya"]; __emscripten_run_js_on_main_thread_done = wasmExports["za"]; __emscripten_run_js_on_main_thread = wasmExports["Aa"]; __emscripten_thread_free_data = wasmExports["Ba"]; __emscripten_thread_exit = wasmExports["Ca"]; __emscripten_timeout = wasmExports["Da"]; __emscripten_check_mailbox = wasmExports["Ea"]; __ZdaPv = Module["__ZdaPv"] = wasmExports["Fa"]; __ZdaPvm = Module["__ZdaPvm"] = wasmExports["Ga"]; __ZdlPv = Module["__ZdlPv"] = wasmExports["Ha"]; __Znam = Module["__Znam"] = wasmExports["Ia"]; __ZnamSt11align_val_t = Module["__ZnamSt11align_val_t"] = wasmExports["Ja"]; __ZnwmSt11align_val_t = Module["__ZnwmSt11align_val_t"] = wasmExports["Ka"]; ___libc_calloc = Module["___libc_calloc"] = wasmExports["La"]; ___libc_realloc = Module["___libc_realloc"] = wasmExports["Ma"]; _emscripten_builtin_calloc = Module["_emscripten_builtin_calloc"] = wasmExports["Na"]; _emscripten_builtin_realloc = Module["_emscripten_builtin_realloc"] = wasmExports["Oa"]; _malloc_size = Module["_malloc_size"] = wasmExports["Pa"]; _malloc_usable_size = Module["_malloc_usable_size"] = wasmExports["Qa"]; _reallocf = Module["_reallocf"] = wasmExports["Ra"]; _setThrew = wasmExports["Sa"]; _emscripten_stack_set_limits = wasmExports["Ta"]; __emscripten_stack_restore = wasmExports["Ua"]; __emscripten_stack_alloc = wasmExports["Va"]; _emscripten_stack_get_current = wasmExports["Wa"]; __indirect_function_table = wasmTable = wasmExports["sa"]; }
|
|
989
1052
|
var wasmImports;
|
|
990
|
-
function assignWasmImports() { wasmImports = { b: ___assert_fail,
|
|
1053
|
+
function assignWasmImports() { wasmImports = { b: ___assert_fail, Q: ___pthread_create_js, y: ___syscall_fcntl64, P: ___syscall_getdents64, Y: ___syscall_ioctl, z: ___syscall_openat, L: __abort_js, B: __embind_register_bigint, ba: __embind_register_bool, ga: __embind_register_class, fa: __embind_register_class_constructor, d: __embind_register_class_function, da: __embind_register_class_property, $: __embind_register_emval, A: __embind_register_float, l: __embind_register_integer, e: __embind_register_memory_view, aa: __embind_register_std_string, t: __embind_register_std_wstring, ca: __embind_register_void, T: __emscripten_init_main_thread_js, M: __emscripten_notify_mailbox_postmessage, x: __emscripten_receive_on_main_thread_js, H: __emscripten_runtime_keepalive_clear, v: __emscripten_thread_cleanup, S: __emscripten_thread_mailbox_await, _: __emscripten_thread_set_strongref, F: __emscripten_throw_longjmp, h: __emval_create_invoker, c: __emval_decref, ea: __emval_get_property, i: __emval_incref, g: __emval_invoke, s: __emval_new_array, j: __emval_new_cstring, r: __emval_new_object, f: __emval_run_destructors, k: __emval_set_property, I: __setitimer_js, n: _emscripten_asm_const_ptr, w: _emscripten_check_blocking_allowed, m: _emscripten_date_now, u: _emscripten_err, Z: _emscripten_exit_with_live_runtime, N: _emscripten_get_heap_max, o: _emscripten_get_now, O: _emscripten_num_logical_cores, J: _emscripten_resize_heap, U: _environ_get, V: _environ_sizes_get, p: _exit, q: _fd_close, X: _fd_read, R: _fd_seek, W: _fd_write, E: invoke_iii, C: invoke_iiii, D: invoke_iiiii, a: wasmMemory, G: _proc_exit, K: _random_get }; }
|
|
991
1054
|
function invoke_iii(index, a1, a2) { var sp = stackSave(); try {
|
|
992
1055
|
return getWasmTableEntry(index)(a1, a2);
|
|
993
1056
|
}
|
|
994
1057
|
catch (e) {
|
|
995
1058
|
stackRestore(sp);
|
|
996
|
-
if (e
|
|
1059
|
+
if (!(e instanceof EmscriptenEH))
|
|
997
1060
|
throw e;
|
|
998
1061
|
_setThrew(1, 0);
|
|
999
1062
|
} }
|
|
@@ -1002,7 +1065,7 @@ async function Module(moduleArg = {}) {
|
|
|
1002
1065
|
}
|
|
1003
1066
|
catch (e) {
|
|
1004
1067
|
stackRestore(sp);
|
|
1005
|
-
if (e
|
|
1068
|
+
if (!(e instanceof EmscriptenEH))
|
|
1006
1069
|
throw e;
|
|
1007
1070
|
_setThrew(1, 0);
|
|
1008
1071
|
} }
|
|
@@ -1011,14 +1074,14 @@ async function Module(moduleArg = {}) {
|
|
|
1011
1074
|
}
|
|
1012
1075
|
catch (e) {
|
|
1013
1076
|
stackRestore(sp);
|
|
1014
|
-
if (e
|
|
1077
|
+
if (!(e instanceof EmscriptenEH))
|
|
1015
1078
|
throw e;
|
|
1016
1079
|
_setThrew(1, 0);
|
|
1017
1080
|
} }
|
|
1018
|
-
function initRuntime(wasmExports) { runtimeInitialized = true; PThread.tlsInitFunctions.push(wasmExports["
|
|
1019
|
-
return; wasmExports["
|
|
1081
|
+
function initRuntime(wasmExports) { runtimeInitialized = true; PThread.tlsInitFunctions.push(wasmExports["ra"]); if (ENVIRONMENT_IS_PTHREAD)
|
|
1082
|
+
return; wasmExports["ha"](); }
|
|
1020
1083
|
var wasmModule;
|
|
1021
|
-
function loadModule() { assignWasmImports(); var imports = { a: wasmImports }; WebAssembly.instantiateStreaming(fetch("jassub-worker.wasm"), imports).then(output => { var wasmExports = (output.instance || output).exports; wasmModule = output.module || Module["wasm"]; assignWasmExports(wasmExports); callRuntimeCallbacks(onPreRuns); initRuntime(wasmExports); PThread.loadWasmModuleToAllWorkers().then(ready); }); }
|
|
1084
|
+
function loadModule() { assignWasmImports(); var imports = { a: wasmImports }; WebAssembly.instantiateStreaming(fetch(new URL("jassub-worker.wasm", import.meta.url)), imports).then(output => { var wasmExports = (output.instance || output).exports; wasmModule = output.module || Module["wasm"]; assignWasmExports(wasmExports); callRuntimeCallbacks(onPreRuns); initRuntime(wasmExports); PThread.loadWasmModuleToAllWorkers().then(ready); }); }
|
|
1022
1085
|
if (!ENVIRONMENT_IS_PTHREAD) {
|
|
1023
1086
|
loadModule();
|
|
1024
1087
|
}
|
|
@@ -1032,6 +1095,6 @@ async function Module(moduleArg = {}) {
|
|
|
1032
1095
|
return moduleRtn;
|
|
1033
1096
|
}
|
|
1034
1097
|
export default Module;
|
|
1035
|
-
var isPthread = globalThis.
|
|
1098
|
+
var isPthread = globalThis.name == "em-pthread";
|
|
1036
1099
|
isPthread && Module();
|
|
1037
1100
|
//# sourceMappingURL=jassub-worker.js.map
|