Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: AssemblyScript/assemblyscript
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: v0.27.3
Choose a base ref
...
head repository: AssemblyScript/assemblyscript
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: v0.27.4
Choose a head ref
  • 2 commits
  • 166 files changed
  • 2 contributors

Commits on Apr 25, 2023

  1. Copy the full SHA
    c0d86e6 View commit details
  2. Verified

    This commit was created on GitHub.com and signed with GitHub’s verified signature. The key has expired.
    Copy the full SHA
    e28f536 View commit details
Showing with 6,818 additions and 3,381 deletions.
  1. +23 −6 src/bindings/js.ts
  2. +14 −0 src/bindings/tsd.ts
  3. +2 −2 src/compiler.ts
  4. +6 −5 std/assembly/rt/tlsf.ts
  5. +6 −0 tests/compiler/bindings/esm.debug.d.ts
  6. +9 −4 tests/compiler/bindings/esm.debug.js
  7. +32 −24 tests/compiler/bindings/esm.debug.wat
  8. +2 −1 tests/compiler/bindings/esm.json
  9. +6 −0 tests/compiler/bindings/esm.release.d.ts
  10. +10 −5 tests/compiler/bindings/esm.release.js
  11. +26 −22 tests/compiler/bindings/esm.release.wat
  12. +32 −24 tests/compiler/bindings/noExportRuntime.debug.wat
  13. +25 −21 tests/compiler/bindings/noExportRuntime.release.wat
  14. +3 −3 tests/compiler/bindings/raw.debug.js
  15. +32 −24 tests/compiler/bindings/raw.debug.wat
  16. +4 −4 tests/compiler/bindings/raw.release.js
  17. +26 −22 tests/compiler/bindings/raw.release.wat
  18. +31 −24 tests/compiler/call-super.debug.wat
  19. +25 −21 tests/compiler/call-super.release.wat
  20. +31 −24 tests/compiler/class-implements.debug.wat
  21. +25 −21 tests/compiler/class-implements.release.wat
  22. +31 −24 tests/compiler/class-overloading-cast.debug.wat
  23. +24 −20 tests/compiler/class-overloading-cast.release.wat
  24. +31 −24 tests/compiler/class-overloading.debug.wat
  25. +24 −20 tests/compiler/class-overloading.release.wat
  26. +32 −24 tests/compiler/class.debug.wat
  27. +25 −21 tests/compiler/class.release.wat
  28. +32 −24 tests/compiler/constructor.debug.wat
  29. +25 −21 tests/compiler/constructor.release.wat
  30. +31 −24 tests/compiler/do.debug.wat
  31. +24 −20 tests/compiler/do.release.wat
  32. +31 −24 tests/compiler/duplicate-fields.debug.wat
  33. +25 −21 tests/compiler/duplicate-fields.release.wat
  34. +31 −24 tests/compiler/empty-exportruntime.debug.wat
  35. +25 −21 tests/compiler/empty-exportruntime.release.wat
  36. +31 −24 tests/compiler/empty-new.debug.wat
  37. +24 −20 tests/compiler/empty-new.release.wat
  38. +31 −24 tests/compiler/exportstar-rereexport.debug.wat
  39. +24 −20 tests/compiler/exportstar-rereexport.release.wat
  40. +31 −24 tests/compiler/extends-baseaggregate.debug.wat
  41. +25 −21 tests/compiler/extends-baseaggregate.release.wat
  42. +31 −24 tests/compiler/extends-recursive.debug.wat
  43. +25 −21 tests/compiler/extends-recursive.release.wat
  44. +31 −24 tests/compiler/field-initialization.debug.wat
  45. +25 −21 tests/compiler/field-initialization.release.wat
  46. +32 −24 tests/compiler/field.debug.wat
  47. +25 −21 tests/compiler/field.release.wat
  48. +31 −24 tests/compiler/for.debug.wat
  49. +24 −20 tests/compiler/for.release.wat
  50. +32 −24 tests/compiler/function-call.debug.wat
  51. +24 −20 tests/compiler/function-call.release.wat
  52. +31 −24 tests/compiler/function-expression.debug.wat
  53. +24 −20 tests/compiler/function-expression.release.wat
  54. +31 −24 tests/compiler/getter-call.debug.wat
  55. +24 −20 tests/compiler/getter-call.release.wat
  56. +32 −24 tests/compiler/heap.debug.wat
  57. +26 −21 tests/compiler/heap.release.wat
  58. +32 −24 tests/compiler/infer-array.debug.wat
  59. +26 −21 tests/compiler/infer-array.release.wat
  60. +32 −24 tests/compiler/infer-generic.debug.wat
  61. +25 −21 tests/compiler/infer-generic.release.wat
  62. +31 −24 tests/compiler/inlining.debug.wat
  63. +25 −21 tests/compiler/inlining.release.wat
  64. +31 −24 tests/compiler/instanceof.debug.wat
  65. +24 −20 tests/compiler/instanceof.release.wat
  66. +31 −24 tests/compiler/issues/1095.debug.wat
  67. +25 −21 tests/compiler/issues/1095.release.wat
  68. +31 −24 tests/compiler/issues/1225.debug.wat
  69. +24 −20 tests/compiler/issues/1225.release.wat
  70. +31 −24 tests/compiler/issues/1699.debug.wat
  71. +26 −21 tests/compiler/issues/1699.release.wat
  72. +31 −24 tests/compiler/issues/2166.debug.wat
  73. +24 −20 tests/compiler/issues/2166.release.wat
  74. +31 −24 tests/compiler/issues/2322/index.debug.wat
  75. +25 −21 tests/compiler/issues/2322/index.release.wat
  76. +31 −24 tests/compiler/issues/2622.debug.wat
  77. +24 −20 tests/compiler/issues/2622.release.wat
  78. +31 −24 tests/compiler/logical.debug.wat
  79. +24 −20 tests/compiler/logical.release.wat
  80. +31 −24 tests/compiler/managed-cast.debug.wat
  81. +24 −20 tests/compiler/managed-cast.release.wat
  82. +31 −24 tests/compiler/new.debug.wat
  83. +24 −20 tests/compiler/new.release.wat
  84. +32 −24 tests/compiler/object-literal.debug.wat
  85. +25 −21 tests/compiler/object-literal.release.wat
  86. +32 −24 tests/compiler/optional-typeparameters.debug.wat
  87. +24 −20 tests/compiler/optional-typeparameters.release.wat
  88. +31 −24 tests/compiler/reexport.debug.wat
  89. +24 −20 tests/compiler/reexport.release.wat
  90. +31 −24 tests/compiler/rereexport.debug.wat
  91. +24 −20 tests/compiler/rereexport.release.wat
  92. +32 −24 tests/compiler/resolve-access.debug.wat
  93. +26 −21 tests/compiler/resolve-access.release.wat
  94. +32 −24 tests/compiler/resolve-binary.debug.wat
  95. +26 −21 tests/compiler/resolve-binary.release.wat
  96. +31 −23 tests/compiler/resolve-elementaccess.debug.wat
  97. +25 −20 tests/compiler/resolve-elementaccess.release.wat
  98. +31 −24 tests/compiler/resolve-function-expression.debug.wat
  99. +25 −21 tests/compiler/resolve-function-expression.release.wat
  100. +31 −24 tests/compiler/resolve-new.debug.wat
  101. +24 −20 tests/compiler/resolve-new.release.wat
  102. +31 −24 tests/compiler/resolve-propertyaccess.debug.wat
  103. +25 −21 tests/compiler/resolve-propertyaccess.release.wat
  104. +32 −24 tests/compiler/resolve-ternary.debug.wat
  105. +26 −21 tests/compiler/resolve-ternary.release.wat
  106. +31 −24 tests/compiler/resolve-unary.debug.wat
  107. +25 −21 tests/compiler/resolve-unary.release.wat
  108. +31 −24 tests/compiler/return-unreachable.debug.wat
  109. +25 −21 tests/compiler/return-unreachable.release.wat
  110. +1,539 −0 tests/compiler/rt/alloc-large-memory.debug.wat
  111. +3 −0 tests/compiler/rt/alloc-large-memory.json
  112. +959 −0 tests/compiler/rt/alloc-large-memory.release.wat
  113. +7 −0 tests/compiler/rt/alloc-large-memory.ts
  114. +31 −24 tests/compiler/rt/finalize.debug.wat
  115. +24 −20 tests/compiler/rt/finalize.release.wat
  116. +31 −24 tests/compiler/rt/runtime-incremental-export.debug.wat
  117. +25 −21 tests/compiler/rt/runtime-incremental-export.release.wat
  118. +31 −24 tests/compiler/rt/runtime-minimal-export.debug.wat
  119. +25 −21 tests/compiler/rt/runtime-minimal-export.release.wat
  120. +32 −24 tests/compiler/simd.debug.wat
  121. +25 −21 tests/compiler/simd.release.wat
  122. +32 −24 tests/compiler/std/array-literal.debug.wat
  123. +26 −21 tests/compiler/std/array-literal.release.wat
  124. +31 −23 tests/compiler/std/array.debug.wat
  125. +25 −20 tests/compiler/std/array.release.wat
  126. +32 −24 tests/compiler/std/arraybuffer.debug.wat
  127. +25 −21 tests/compiler/std/arraybuffer.release.wat
  128. +32 −24 tests/compiler/std/dataview.debug.wat
  129. +25 −20 tests/compiler/std/dataview.release.wat
  130. +31 −23 tests/compiler/std/date.debug.wat
  131. +26 −21 tests/compiler/std/date.release.wat
  132. +31 −23 tests/compiler/std/map.debug.wat
  133. +26 −22 tests/compiler/std/map.release.wat
  134. +18 −18 tests/compiler/std/math.release.wat
  135. +31 −24 tests/compiler/std/new.debug.wat
  136. +24 −20 tests/compiler/std/new.release.wat
  137. +32 −24 tests/compiler/std/operator-overloading.debug.wat
  138. +25 −20 tests/compiler/std/operator-overloading.release.wat
  139. +31 −23 tests/compiler/std/set.debug.wat
  140. +26 −22 tests/compiler/std/set.release.wat
  141. +31 −24 tests/compiler/std/static-array.debug.wat
  142. +25 −21 tests/compiler/std/static-array.release.wat
  143. +31 −23 tests/compiler/std/staticarray.debug.wat
  144. +26 −21 tests/compiler/std/staticarray.release.wat
  145. +31 −24 tests/compiler/std/string-casemapping.debug.wat
  146. +26 −21 tests/compiler/std/string-casemapping.release.wat
  147. +31 −23 tests/compiler/std/string-encoding.debug.wat
  148. +25 −21 tests/compiler/std/string-encoding.release.wat
  149. +31 −23 tests/compiler/std/string.debug.wat
  150. +26 −21 tests/compiler/std/string.release.wat
  151. +32 −24 tests/compiler/std/symbol.debug.wat
  152. +26 −21 tests/compiler/std/symbol.release.wat
  153. +31 −23 tests/compiler/std/typedarray.debug.wat
  154. +25 −21 tests/compiler/std/typedarray.release.wat
  155. +31 −23 tests/compiler/std/uri.debug.wat
  156. +25 −21 tests/compiler/std/uri.release.wat
  157. +31 −24 tests/compiler/super-inline.debug.wat
  158. +24 −20 tests/compiler/super-inline.release.wat
  159. +31 −23 tests/compiler/templateliteral.debug.wat
  160. +26 −21 tests/compiler/templateliteral.release.wat
  161. +25 −19 tests/compiler/throw.debug.wat
  162. +25 −20 tests/compiler/throw.release.wat
  163. +31 −24 tests/compiler/typeof.debug.wat
  164. +24 −20 tests/compiler/typeof.release.wat
  165. +31 −24 tests/compiler/while.debug.wat
  166. +24 −20 tests/compiler/while.release.wat
29 changes: 23 additions & 6 deletions src/bindings/js.ts
Original file line number Diff line number Diff line change
@@ -13,6 +13,11 @@ import {
CommonFlags
} from "../common";

import {
runtimeFunctions,
runtimeGlobals
} from "../compiler";

import {
ElementKind,
Element,
@@ -945,19 +950,31 @@ export class JSBuilder extends ExportsWalker {
assert(this.indentLevel == 0);

if (this.esm) {
sb.push("export const {\n ");
sb.push("export const {\n");
if (this.program.options.exportMemory) {
sb.push("memory,\n ");
sb.push(" memory,\n");
}
if (this.program.options.exportTable) {
sb.push("table,\n ");
sb.push(" table,\n");
}
if (this.program.options.exportRuntime) {
for (let i = 0, k = runtimeFunctions.length; i < k; ++i) {
sb.push(" ");
sb.push(runtimeFunctions[i]);
sb.push(",\n");
}
for (let i = 0, k = runtimeGlobals.length; i < k; ++i) {
sb.push(" ");
sb.push(runtimeGlobals[i]);
sb.push(",\n");
}
}
for (let i = 0, k = exports.length; i < k; ++i) {
if (i > 0) sb.push(",\n ");
sb.push(" ");
sb.push(exports[i]);
sb.push(",\n");
}
sb.push(`
} = await (async url => instantiate(
sb.push(`} = await (async url => instantiate(
await (async () => {
try { return await globalThis.WebAssembly.compileStreaming(globalThis.fetch(url)); }
catch { return globalThis.WebAssembly.compile(await (await import("node:fs/promises")).readFile(url)); }
14 changes: 14 additions & 0 deletions src/bindings/tsd.ts
Original file line number Diff line number Diff line change
@@ -198,6 +198,20 @@ export class TSDBuilder extends ExportsWalker {
indent(sb, this.indentLevel);
sb.push(`export ${this.esm ? "declare " : ""}const table: WebAssembly.Table;\n`);
}
if (this.program.options.exportRuntime) {
indent(sb, this.indentLevel);
sb.push("// Exported runtime interface\n");
indent(sb, this.indentLevel);
sb.push(`export ${this.esm ? "declare " : ""}function __new(size: number, id: number): number;\n`);
indent(sb, this.indentLevel);
sb.push(`export ${this.esm ? "declare " : ""}function __pin(ptr: number): number;\n`);
indent(sb, this.indentLevel);
sb.push(`export ${this.esm ? "declare " : ""}function __unpin(ptr: number): void;\n`);
indent(sb, this.indentLevel);
sb.push(`export ${this.esm ? "declare " : ""}function __collect(): void;\n`);
indent(sb, this.indentLevel);
sb.push(`export ${this.esm ? "declare " : ""}const __rtti_base: number;\n`);
}
this.walk();
if (!this.esm) {
--this.indentLevel;
4 changes: 2 additions & 2 deletions src/compiler.ts
Original file line number Diff line number Diff line change
@@ -418,9 +418,9 @@ export namespace ExportNames {
}

/** Functions to export if `--exportRuntime` is set. */
const runtimeFunctions = [ "__new", "__pin", "__unpin", "__collect" ];
export const runtimeFunctions = [ "__new", "__pin", "__unpin", "__collect" ];
/** Globals to export if `--exportRuntime` is set. */
const runtimeGlobals = [ "__rtti_base" ];
export const runtimeGlobals = [ "__rtti_base" ];

/** Compiler interface. */
export class Compiler extends DiagnosticEmitter {
11 changes: 6 additions & 5 deletions std/assembly/rt/tlsf.ts
Original file line number Diff line number Diff line change
@@ -373,8 +373,9 @@ function prepareBlock(root: Root, block: Block, size: usize): void {
}

/** Adds more memory to the pool. */
function addMemory(root: Root, start: usize, end: usize): bool {
if (DEBUG) assert(start <= end); // must be valid
function addMemory(root: Root, start: usize, endU64: u64): bool {
let end = <usize>endU64;
if (DEBUG) assert(<u64>start <= endU64); // must be valid
start = ((start + BLOCK_OVERHEAD + AL_MASK) & ~AL_MASK) - BLOCK_OVERHEAD;
end &= ~AL_MASK;

@@ -442,7 +443,7 @@ function growMemory(root: Root, size: usize): void {
if (memory.grow(pagesNeeded) < 0) unreachable();
}
let pagesAfter = memory.size();
addMemory(root, <usize>pagesBefore << 16, <usize>pagesAfter << 16);
addMemory(root, <usize>pagesBefore << 16, <u64>pagesAfter << 16);
}

/** Computes the size (excl. header) of a block. */
@@ -477,11 +478,11 @@ function initialize(): void {
}
let memStart = rootOffset + ROOT_SIZE;
if (ASC_LOW_MEMORY_LIMIT) {
const memEnd = <usize>ASC_LOW_MEMORY_LIMIT & ~AL_MASK;
const memEnd = <u64>ASC_LOW_MEMORY_LIMIT & ~AL_MASK;
if (memStart <= memEnd) addMemory(root, memStart, memEnd);
else unreachable(); // low memory limit already exceeded
} else {
addMemory(root, memStart, memory.size() << 16);
addMemory(root, memStart, <u64>memory.size() << 16);
}
ROOT = root;
}
6 changes: 6 additions & 0 deletions tests/compiler/bindings/esm.debug.d.ts
Original file line number Diff line number Diff line change
@@ -1,5 +1,11 @@
/** Exported memory */
export declare const memory: WebAssembly.Memory;
// Exported runtime interface
export declare function __new(size: number, id: number): number;
export declare function __pin(ptr: number): number;
export declare function __unpin(ptr: number): void;
export declare function __collect(): void;
export declare const __rtti_base: number;
/** bindings/esm/plainGlobal */
export declare const plainGlobal: {
/** @type `i32` */
13 changes: 9 additions & 4 deletions tests/compiler/bindings/esm.debug.js
Original file line number Diff line number Diff line change
@@ -18,10 +18,10 @@ async function instantiate(module, imports = {}) {
// ~lib/bindings/dom/Math.E: f64
Math.E
),
"Math.log": (
"Math.log"(x) {
// ~lib/bindings/dom/Math.log(f64) => f64
Math.log
),
return Math.log(x);
},
"globalThis.globalThis": (
// bindings/esm/immutableGlobalNested: ref_extern | null}
globalThis.globalThis
@@ -522,6 +522,11 @@ async function instantiate(module, imports = {}) {
}
export const {
memory,
__new,
__pin,
__unpin,
__collect,
__rtti_base,
plainGlobal,
plainMutableGlobal,
stringGlobal,
@@ -545,7 +550,7 @@ export const {
newInternref,
internrefFunction,
functionFunction,
fn
fn,
} = await (async url => instantiate(
await (async () => {
try { return await globalThis.WebAssembly.compileStreaming(globalThis.fetch(url)); }
56 changes: 32 additions & 24 deletions tests/compiler/bindings/esm.debug.wat
Original file line number Diff line number Diff line change
@@ -7,14 +7,15 @@
(type $i32_i32_i32_=>_none (func (param i32 i32 i32)))
(type $none_=>_i32 (func (result i32)))
(type $i32_i32_i32_i32_=>_none (func (param i32 i32 i32 i32)))
(type $i32_i32_i32_=>_i32 (func (param i32 i32 i32) (result i32)))
(type $i32_i64_=>_none (func (param i32 i64)))
(type $i32_i32_f64_f64_f64_f64_f64_=>_none (func (param i32 i32 f64 f64 f64 f64 f64)))
(type $f64_=>_f64 (func (param f64) (result f64)))
(type $i64_i64_=>_i64 (func (param i64 i64) (result i64)))
(type $none_=>_i64 (func (result i64)))
(type $i32_i32_i64_=>_i32 (func (param i32 i32 i64) (result i32)))
(type $i32_f32_=>_none (func (param i32 f32)))
(type $i32_f64_=>_none (func (param i32 f64)))
(type $i32_i32_i32_=>_i32 (func (param i32 i32 i32) (result i32)))
(type $i32_i32_i64_=>_none (func (param i32 i32 i64)))
(type $i32_i32_=>_f32 (func (param i32 i32) (result f32)))
(import "env" "Math.E" (global $~lib/bindings/dom/Math.E f64))
@@ -1123,25 +1124,30 @@
local.get $slMap
i32.store $0 offset=4
)
(func $~lib/rt/tlsf/addMemory (param $root i32) (param $start i32) (param $end i32) (result i32)
(local $root|3 i32)
(func $~lib/rt/tlsf/addMemory (param $root i32) (param $start i32) (param $endU64 i64) (result i32)
(local $end i32)
(local $root|4 i32)
(local $tail i32)
(local $tailInfo i32)
(local $size i32)
(local $leftSize i32)
(local $left i32)
(local $root|9 i32)
(local $tail|10 i32)
(local $root|10 i32)
(local $tail|11 i32)
local.get $endU64
i32.wrap_i64
local.set $end
i32.const 1
drop
local.get $start
local.get $end
i32.le_u
i64.extend_i32_u
local.get $endU64
i64.le_u
i32.eqz
if
i32.const 0
i32.const 672
i32.const 377
i32.const 378
i32.const 14
call $~lib/builtins/abort
unreachable
@@ -1166,8 +1172,8 @@
local.set $end
block $~lib/rt/tlsf/GETTAIL|inlined.0 (result i32)
local.get $root
local.set $root|3
local.get $root|3
local.set $root|4
local.get $root|4
i32.load $0 offset=1568
br $~lib/rt/tlsf/GETTAIL|inlined.0
end
@@ -1187,7 +1193,7 @@
if
i32.const 0
i32.const 672
i32.const 384
i32.const 385
i32.const 16
call $~lib/builtins/abort
unreachable
@@ -1220,7 +1226,7 @@
if
i32.const 0
i32.const 672
i32.const 397
i32.const 398
i32.const 5
call $~lib/builtins/abort
unreachable
@@ -1276,11 +1282,11 @@
i32.or
call $~lib/rt/common/BLOCK#set:mmInfo
local.get $root
local.set $root|9
local.set $root|10
local.get $tail
local.set $tail|10
local.get $root|9
local.get $tail|10
local.set $tail|11
local.get $root|10
local.get $tail|11
i32.store $0 offset=1568
local.get $root
local.get $left
@@ -1426,8 +1432,9 @@
local.get $root
local.get $memStart
memory.size $0
i32.const 16
i32.shl
i64.extend_i32_s
i64.const 16
i64.shl
call $~lib/rt/tlsf/addMemory
drop
local.get $root
@@ -1463,7 +1470,7 @@
if
i32.const 0
i32.const 672
i32.const 559
i32.const 560
i32.const 3
call $~lib/builtins/abort
unreachable
@@ -1792,7 +1799,7 @@
if
i32.const 336
i32.const 672
i32.const 458
i32.const 459
i32.const 29
call $~lib/builtins/abort
unreachable
@@ -2094,8 +2101,9 @@
i32.const 16
i32.shl
local.get $pagesAfter
i32.const 16
i32.shl
i64.extend_i32_s
i64.const 16
i64.shl
call $~lib/rt/tlsf/addMemory
drop
)
@@ -2235,7 +2243,7 @@
if
i32.const 0
i32.const 672
i32.const 496
i32.const 497
i32.const 16
call $~lib/builtins/abort
unreachable
@@ -2255,7 +2263,7 @@
if
i32.const 0
i32.const 672
i32.const 498
i32.const 499
i32.const 14
call $~lib/builtins/abort
unreachable
3 changes: 2 additions & 1 deletion tests/compiler/bindings/esm.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,8 @@
{
"asc_flags": [
"--exportStart _start",
"--bindings esm"
"--bindings esm",
"--exportRuntime"
],
"features": [
"reference-types"
6 changes: 6 additions & 0 deletions tests/compiler/bindings/esm.release.d.ts
Original file line number Diff line number Diff line change
@@ -1,5 +1,11 @@
/** Exported memory */
export declare const memory: WebAssembly.Memory;
// Exported runtime interface
export declare function __new(size: number, id: number): number;
export declare function __pin(ptr: number): number;
export declare function __unpin(ptr: number): void;
export declare function __collect(): void;
export declare const __rtti_base: number;
/** bindings/esm/plainGlobal */
export declare const plainGlobal: {
/** @type `i32` */
15 changes: 10 additions & 5 deletions tests/compiler/bindings/esm.release.js
Original file line number Diff line number Diff line change
@@ -18,12 +18,12 @@ async function instantiate(module, imports = {}) {
// ~lib/bindings/dom/Math.E: f64
Math.E
),
"Math.log": (
"Math.log"(x) {
// ~lib/bindings/dom/Math.log(f64) => f64
Math.log
),
return Math.log(x);
},
"globalThis.globalThis": (
// bindings/esm/immutableGlobalNested: externref
// bindings/esm/immutableGlobalNested: ref_extern | null}
globalThis.globalThis
),
"Date.getTimezoneOffset"() {
@@ -522,6 +522,11 @@ async function instantiate(module, imports = {}) {
}
export const {
memory,
__new,
__pin,
__unpin,
__collect,
__rtti_base,
plainGlobal,
plainMutableGlobal,
stringGlobal,
@@ -545,7 +550,7 @@ export const {
newInternref,
internrefFunction,
functionFunction,
fn
fn,
} = await (async url => instantiate(
await (async () => {
try { return await globalThis.WebAssembly.compileStreaming(globalThis.fetch(url)); }
Loading