Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Do not allocate MemorySegments for memory.data(i32, i32?) #2831

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
CountBleck wants to merge 1 commit into AssemblyScript:main
base: main
Choose a base branch
Loading
from CountBleck:fix-large-memory-crash
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion src/builtins.ts
View file Open in desktop
Original file line number Diff line number Diff line change
Expand Up @@ -3322,7 +3322,7 @@ function builtin_memory_data(ctx: BuiltinFunctionContext): ExpressionRef {
return module.unreachable();
}
}
offset = compiler.addAlignedMemorySegment(new Uint8Array(size), align).offset;
offset = compiler.addZeroedMemorySegment(size, align).offset;
}
// FIXME: what if recompiles happen? recompiles are bad.
compiler.currentType = usizeType;
Expand Down
16 changes: 13 additions & 3 deletions src/compiler.ts
View file Open in desktop
Original file line number Diff line number Diff line change
Expand Up @@ -1894,6 +1894,16 @@ export class Compiler extends DiagnosticEmitter {
return segment;
}

/** Adds a dummy memory segment. */
addZeroedMemorySegment(size: i32, alignment: i32 = 16): MemorySegment {
assert(isPowerOf2(alignment));
let memoryOffset = i64_align(this.memoryOffset, alignment);
let segment = new MemorySegment(null, memoryOffset);
this.memorySegments.push(segment);
this.memoryOffset = i64_add(memoryOffset, i64_new(size));
return segment;
}

/** Adds a static memory segment representing a runtime object. */
addRuntimeMemorySegment(buffer: Uint8Array): MemorySegment {
let memoryOffset = this.program.computeBlockStart64(this.memoryOffset);
Expand Down Expand Up @@ -2043,7 +2053,7 @@ export class Compiler extends DiagnosticEmitter {
if (!arrayInstance) {
arrayInstance = assert(this.resolver.resolveClass(this.program.arrayPrototype, [ elementType ]));
}
let bufferLength = readI32(bufferSegment.buffer, program.OBJECTInstance.offsetof("rtSize"));
let bufferLength = readI32(bufferSegment.buffer!, program.OBJECTInstance.offsetof("rtSize"));
let arrayLength = i32(bufferLength / elementType.byteSize);
let bufferAddress = i64_add(bufferSegment.offset, i64_new(program.totalOverhead));
let buf = arrayInstance.createBuffer();
Expand Down Expand Up @@ -8060,7 +8070,7 @@ export class Compiler extends DiagnosticEmitter {
}
let arrayInstance = assert(this.resolver.resolveClass(this.program.staticArrayPrototype, [ stringType ]));
let segment = this.addStaticBuffer(stringType, values, arrayInstance.id);
this.program.OBJECTInstance.writeField("gcInfo", 3, segment.buffer, 0); // use transparent gcinfo
this.program.OBJECTInstance.writeField("gcInfo", 3, segment.buffer!, 0); // use transparent gcinfo
let offset = i64_add(segment.offset, i64_new(this.program.totalOverhead));
let joinInstance = assert(arrayInstance.getMethod("join"));
let indexedSetInstance = assert(arrayInstance.lookupOverload(OperatorKind.IndexedSet, true));
Expand Down Expand Up @@ -8151,7 +8161,7 @@ export class Compiler extends DiagnosticEmitter {
);
arrayInstance.writeField("raw",
i64_add(rawHeaderSegment.offset, i64_new(this.program.totalOverhead)),
arraySegment.buffer
arraySegment.buffer!
);
} else {
arraySegment = this.addStaticArrayHeader(stringType,
Expand Down
27 changes: 18 additions & 9 deletions src/module.ts
View file Open in desktop
Original file line number Diff line number Diff line change
Expand Up @@ -1366,7 +1366,7 @@ export const enum ExpressionRunnerFlags {
export class MemorySegment {
constructor(
/** Segment data. */
public buffer: Uint8Array,
public buffer: Uint8Array | null,
/** Segment offset. */
public offset: i64
) {}
Expand Down Expand Up @@ -2409,22 +2409,31 @@ export class Module {
let cStr1 = this.allocStringCached(exportName);
let cStr2 = this.allocStringCached(name);
let k = segments.length;
let segs = new Array<usize>(k);
let empty = 0;

let segs = new Array<usize>();
let psvs = new Uint8Array(k);
let offs = new Array<ExpressionRef>(k);
let sizs = new Array<Index>(k);
for (let i = 0; i < k; ++i) {
let offs = new Array<ExpressionRef>();
let sizs = new Array<Index>();
for (let i = 0; i < k; i++) {
let segment = unchecked(segments[i]);
let buffer = segment.buffer;
if (!buffer) {
empty++;
continue;
}

let offset = segment.offset;
unchecked(segs[i] = allocU8Array(buffer));
unchecked(psvs[i] = 0); // no passive segments currently
unchecked(offs[i] = target == Target.Wasm64
segs.push(allocU8Array(buffer));
psvs[i - empty] = 0; // no passive segments currently
offs.push(target == Target.Wasm64
? this.i64(i64_low(offset), i64_high(offset))
: this.i32(i64_low(offset))
);
unchecked(sizs[i] = buffer.length);
sizs.push(buffer.length);
}

k -= empty;
let cArr1 = allocPtrArray(segs);
let cArr2 = allocU8Array(psvs);
let cArr3 = allocPtrArray(offs);
Expand Down
13 changes: 5 additions & 8 deletions tests/compiler/assignment-chain.debug.wat
View file Open in desktop
Original file line number Diff line number Diff line change
Expand Up @@ -35,14 +35,11 @@
(memory 0ドル 1)
(data 0ドル (i32.const 12) "<00円00円00円00円00円00円00円00円00円00円00円02円00円00円00円(00円00円00円A00円l00円l00円o00円c00円a00円t00円i00円o00円n00円 00円t00円o00円o00円 00円l00円a00円r00円g00円e00円00円00円00円00円")
(data 1ドル (i32.const 76) "<00円00円00円00円00円00円00円00円00円00円00円02円00円00円00円 00円00円00円~00円l00円i00円b00円/00円r00円t00円/00円i00円t00円c00円m00円s00円.00円t00円s00円00円00円00円00円00円00円00円00円00円00円00円00円")
(data 2ドル (i32.const 144) "00円00円00円00円00円00円00円00円00円00円00円00円00円00円00円00円00円00円00円00円")
(data 3ドル (i32.const 176) "00円00円00円00円00円00円00円00円00円00円00円00円00円00円00円00円00円00円00円00円")
(data 4ドル (i32.const 204) "<00円00円00円00円00円00円00円00円00円00円00円02円00円00円00円$00円00円00円I00円n00円d00円e00円x00円 00円o00円u00円t00円 00円o00円f00円 00円r00円a00円n00円g00円e00円00円00円00円00円00円00円00円00円")
(data 5ドル (i32.const 268) ",00円00円00円00円00円00円00円00円00円00円00円02円00円00円00円14円00円00円00円~00円l00円i00円b00円/00円r00円t00円.00円t00円s00円00円00円00円00円00円00円00円00円")
(data 6ドル (i32.const 320) "00円00円00円00円00円00円00円00円00円00円00円00円00円00円00円00円00円00円00円00円")
(data 7ドル (i32.const 348) "<00円00円00円00円00円00円00円00円00円00円00円02円00円00円00円1円e00円00円00円~00円l00円i00円b00円/00円r00円t00円/00円t00円l00円s00円f00円.00円t00円s00円00円00円00円00円00円00円00円00円00円00円00円00円00円00円")
(data 8ドル (i32.const 412) "<00円00円00円00円00円00円00円00円00円00円00円02円00円00円00円&00円00円00円a00円s00円s00円i00円g00円n00円m00円e00円n00円t00円-00円c00円h00円a00円i00円n00円.00円t00円s00円00円00円00円00円00円00円")
(data 9ドル (i32.const 480) "06円00円00円00円 00円00円00円 00円00円00円 00円00円00円00円00円00円00円 00円00円00円 00円00円00円")
(data 2ドル (i32.const 204) "<00円00円00円00円00円00円00円00円00円00円00円02円00円00円00円$00円00円00円I00円n00円d00円e00円x00円 00円o00円u00円t00円 00円o00円f00円 00円r00円a00円n00円g00円e00円00円00円00円00円00円00円00円00円")
(data 3ドル (i32.const 268) ",00円00円00円00円00円00円00円00円00円00円00円02円00円00円00円14円00円00円00円~00円l00円i00円b00円/00円r00円t00円.00円t00円s00円00円00円00円00円00円00円00円00円")
(data 4ドル (i32.const 348) "<00円00円00円00円00円00円00円00円00円00円00円02円00円00円00円1円e00円00円00円~00円l00円i00円b00円/00円r00円t00円/00円t00円l00円s00円f00円.00円t00円s00円00円00円00円00円00円00円00円00円00円00円00円00円00円00円")
(data 5ドル (i32.const 412) "<00円00円00円00円00円00円00円00円00円00円00円02円00円00円00円&00円00円00円a00円s00円s00円i00円g00円n00円m00円e00円n00円t00円-00円c00円h00円a00円i00円n00円.00円t00円s00円00円00円00円00円00円00円")
(data 6ドル (i32.const 480) "06円00円00円00円 00円00円00円 00円00円00円 00円00円00円00円00円00円00円 00円00円00円 00円00円00円")
(table 0ドル 1 1 funcref)
(elem 0ドル (i32.const 1))
(export "normal_assignment_chain" (func $assignment-chain/normal_assignment_chain))
Expand Down
18 changes: 9 additions & 9 deletions tests/compiler/assignment-chain.release.wat
View file Open in desktop
Original file line number Diff line number Diff line change
Expand Up @@ -25,15 +25,15 @@
(data 0ドル.1 (i32.const 1048) "02円00円00円00円(00円00円00円A00円l00円l00円o00円c00円a00円t00円i00円o00円n00円 00円t00円o00円o00円 00円l00円a00円r00円g00円e")
(data 1ドル (i32.const 1100) "<")
(data 1ドル.1 (i32.const 1112) "02円00円00円00円 00円00円00円~00円l00円i00円b00円/00円r00円t00円/00円i00円t00円c00円m00円s00円.00円t00円s")
(data $4 (i32.const 1228) "<")
(data $4.1 (i32.const 1240) "02円00円00円00円$00円00円00円I00円n00円d00円e00円x00円 00円o00円u00円t00円 00円o00円f00円 00円r00円a00円n00円g00円e")
(data $5 (i32.const 1292) ",")
(data $5.1 (i32.const 1304) "02円00円00円00円14円00円00円00円~00円l00円i00円b00円/00円r00円t00円.00円t00円s")
(data $7 (i32.const 1372) "<")
(data $7.1 (i32.const 1384) "02円00円00円00円1円e00円00円00円~00円l00円i00円b00円/00円r00円t00円/00円t00円l00円s00円f00円.00円t00円s")
(data $8 (i32.const 1436) "<")
(data $8.1 (i32.const 1448) "02円00円00円00円&00円00円00円a00円s00円s00円i00円g00円n00円m00円e00円n00円t00円-00円c00円h00円a00円i00円n00円.00円t00円s")
(data $9 (i32.const 1504) "06円00円00円00円 00円00円00円 00円00円00円 00円00円00円00円00円00円00円 00円00円00円 ")
(data $2 (i32.const 1228) "<")
(data $2.1 (i32.const 1240) "02円00円00円00円$00円00円00円I00円n00円d00円e00円x00円 00円o00円u00円t00円 00円o00円f00円 00円r00円a00円n00円g00円e")
(data $3 (i32.const 1292) ",")
(data $3.1 (i32.const 1304) "02円00円00円00円14円00円00円00円~00円l00円i00円b00円/00円r00円t00円.00円t00円s")
(data $4 (i32.const 1372) "<")
(data $4.1 (i32.const 1384) "02円00円00円00円1円e00円00円00円~00円l00円i00円b00円/00円r00円t00円/00円t00円l00円s00円f00円.00円t00円s")
(data $5 (i32.const 1436) "<")
(data $5.1 (i32.const 1448) "02円00円00円00円&00円00円00円a00円s00円s00円i00円g00円n00円m00円e00円n00円t00円-00円c00円h00円a00円i00円n00円.00円t00円s")
(data $6 (i32.const 1504) "06円00円00円00円 00円00円00円 00円00円00円 00円00円00円00円00円00円00円 00円00円00円 ")
(export "normal_assignment_chain" (func $assignment-chain/normal_assignment_chain))
(export "setter_assignment_chain" (func $assignment-chain/setter_assignment_chain))
(export "static_setter_assignment_chain" (func $assignment-chain/static_setter_assignment_chain))
Expand Down
25 changes: 11 additions & 14 deletions tests/compiler/bindings/esm.debug.wat
View file Open in desktop
Original file line number Diff line number Diff line change
Expand Up @@ -70,20 +70,17 @@
(data 6ドル (i32.const 252) "<00円00円00円00円00円00円00円00円00円00円00円02円00円00円00円&00円00円00円~00円l00円i00円b00円/00円a00円r00円r00円a00円y00円b00円u00円f00円f00円e00円r00円.00円t00円s00円00円00円00円00円00円00円")
(data 7ドル (i32.const 316) "<00円00円00円00円00円00円00円00円00円00円00円02円00円00円00円(00円00円00円A00円l00円l00円o00円c00円a00円t00円i00円o00円n00円 00円t00円o00円o00円 00円l00円a00円r00円g00円e00円00円00円00円00円")
(data 8ドル (i32.const 380) "<00円00円00円00円00円00円00円00円00円00円00円02円00円00円00円 00円00円00円~00円l00円i00円b00円/00円r00円t00円/00円i00円t00円c00円m00円s00円.00円t00円s00円00円00円00円00円00円00円00円00円00円00円00円00円")
(data 9ドル (i32.const 448) "00円00円00円00円00円00円00円00円00円00円00円00円00円00円00円00円00円00円00円00円")
(data 10ドル (i32.const 480) "00円00円00円00円00円00円00円00円00円00円00円00円00円00円00円00円00円00円00円00円")
(data 11ドル (i32.const 508) "<00円00円00円00円00円00円00円00円00円00円00円02円00円00円00円$00円00円00円I00円n00円d00円e00円x00円 00円o00円u00円t00円 00円o00円f00円 00円r00円a00円n00円g00円e00円00円00円00円00円00円00円00円00円")
(data 12ドル (i32.const 572) ",00円00円00円00円00円00円00円00円00円00円00円02円00円00円00円14円00円00円00円~00円l00円i00円b00円/00円r00円t00円.00円t00円s00円00円00円00円00円00円00円00円00円")
(data 13ドル (i32.const 624) "00円00円00円00円00円00円00円00円00円00円00円00円00円00円00円00円00円00円00円00円")
(data 14ドル (i32.const 652) "<00円00円00円00円00円00円00円00円00円00円00円02円00円00円00円1円e00円00円00円~00円l00円i00円b00円/00円r00円t00円/00円t00円l00円s00円f00円.00円t00円s00円00円00円00円00円00円00円00円00円00円00円00円00円00円00円")
(data 15ドル (i32.const 716) "1円c00円00円00円00円00円00円00円00円00円00円00円02円00円00円00円00円00円00円00円00円00円00円00円00円00円00円00円00円00円00円00円")
(data 16ドル (i32.const 748) "<00円00円00円00円00円00円00円00円00円00円00円02円00円00円00円$00円00円00円~00円l00円i00円b00円/00円t00円y00円p00円e00円d00円a00円r00円r00円a00円y00円.00円t00円s00円00円00円00円00円00円00円00円00円")
(data 17ドル (i32.const 812) "<00円00円00円00円00円00円00円00円00円00円00円02円00円00円00円&00円00円00円~00円l00円i00円b00円/00円s00円t00円a00円t00円i00円c00円a00円r00円r00円a00円y00円.00円t00円s00円00円00円00円00円00円00円")
(data 18ドル (i32.const 876) ",00円00円00円00円00円00円00円00円00円00円00円02円00円00円00円1円a00円00円00円~00円l00円i00円b00円/00円a00円r00円r00円a00円y00円.00円t00円s00円00円00円")
(data 19ドル (i32.const 924) "|00円00円00円00円00円00円00円00円00円00円00円02円00円00円00円^00円00円00円E00円l00円e00円m00円e00円n00円t00円 00円t00円y00円p00円e00円 00円m00円u00円s00円t00円 00円b00円e00円 00円n00円u00円l00円l00円a00円b00円l00円e00円 00円i00円f00円 00円a00円r00円r00円a00円y00円 00円i00円s00円 00円h00円o00円l00円e00円y00円00円00円00円00円00円00円00円00円00円00円00円00円00円00円")
(data 20ドル (i32.const 1052) "<00円00円00円00円00円00円00円00円00円00円00円02円00円00円00円*00円00円00円O00円b00円j00円e00円c00円t00円 00円a00円l00円r00円e00円a00円d00円y00円 00円p00円i00円n00円n00円e00円d00円00円00円")
(data 21ドル (i32.const 1116) "<00円00円00円00円00円00円00円00円00円00円00円02円00円00円00円(00円00円00円O00円b00円j00円e00円c00円t00円 00円i00円s00円 00円n00円o00円t00円 00円p00円i00円n00円n00円e00円d00円00円00円00円00円")
(data 22ドル (i32.const 1184) "10円00円00円00円 00円00円00円 00円00円00円 00円00円00円00円00円00円00円00円00円00円00円81円08円00円00円01円19円00円00円01円02円00円00円$\t00円00円\a400円00円00円$\n00円00円02円\t00円00円02円A00円00円00円00円00円00円A00円00円00円 00円00円00円")
(data 9ドル (i32.const 508) "<00円00円00円00円00円00円00円00円00円00円00円02円00円00円00円$00円00円00円I00円n00円d00円e00円x00円 00円o00円u00円t00円 00円o00円f00円 00円r00円a00円n00円g00円e00円00円00円00円00円00円00円00円00円")
(data 10ドル (i32.const 572) ",00円00円00円00円00円00円00円00円00円00円00円02円00円00円00円14円00円00円00円~00円l00円i00円b00円/00円r00円t00円.00円t00円s00円00円00円00円00円00円00円00円00円")
(data 11ドル (i32.const 652) "<00円00円00円00円00円00円00円00円00円00円00円02円00円00円00円1円e00円00円00円~00円l00円i00円b00円/00円r00円t00円/00円t00円l00円s00円f00円.00円t00円s00円00円00円00円00円00円00円00円00円00円00円00円00円00円00円")
(data 12ドル (i32.const 716) "1円c00円00円00円00円00円00円00円00円00円00円00円02円00円00円00円00円00円00円00円00円00円00円00円00円00円00円00円00円00円00円00円")
(data 13ドル (i32.const 748) "<00円00円00円00円00円00円00円00円00円00円00円02円00円00円00円$00円00円00円~00円l00円i00円b00円/00円t00円y00円p00円e00円d00円a00円r00円r00円a00円y00円.00円t00円s00円00円00円00円00円00円00円00円00円")
(data 14ドル (i32.const 812) "<00円00円00円00円00円00円00円00円00円00円00円02円00円00円00円&00円00円00円~00円l00円i00円b00円/00円s00円t00円a00円t00円i00円c00円a00円r00円r00円a00円y00円.00円t00円s00円00円00円00円00円00円00円")
(data 15ドル (i32.const 876) ",00円00円00円00円00円00円00円00円00円00円00円02円00円00円00円1円a00円00円00円~00円l00円i00円b00円/00円a00円r00円r00円a00円y00円.00円t00円s00円00円00円")
(data 16ドル (i32.const 924) "|00円00円00円00円00円00円00円00円00円00円00円02円00円00円00円^00円00円00円E00円l00円e00円m00円e00円n00円t00円 00円t00円y00円p00円e00円 00円m00円u00円s00円t00円 00円b00円e00円 00円n00円u00円l00円l00円a00円b00円l00円e00円 00円i00円f00円 00円a00円r00円r00円a00円y00円 00円i00円s00円 00円h00円o00円l00円e00円y00円00円00円00円00円00円00円00円00円00円00円00円00円00円00円")
(data 17ドル (i32.const 1052) "<00円00円00円00円00円00円00円00円00円00円00円02円00円00円00円*00円00円00円O00円b00円j00円e00円c00円t00円 00円a00円l00円r00円e00円a00円d00円y00円 00円p00円i00円n00円n00円e00円d00円00円00円")
(data 18ドル (i32.const 1116) "<00円00円00円00円00円00円00円00円00円00円00円02円00円00円00円(00円00円00円O00円b00円j00円e00円c00円t00円 00円i00円s00円 00円n00円o00円t00円 00円p00円i00円n00円n00円e00円d00円00円00円00円00円")
(data 19ドル (i32.const 1184) "10円00円00円00円 00円00円00円 00円00円00円 00円00円00円00円00円00円00円00円00円00円00円81円08円00円00円01円19円00円00円01円02円00円00円$\t00円00円\a400円00円00円$\n00円00円02円\t00円00円02円A00円00円00円00円00円00円A00円00円00円 00円00円00円")
(table 0ドル 2 2 funcref)
(elem 0ドル (i32.const 1) $start:bindings/esm~anonymous|0)
(export "plainGlobal" (global $bindings/esm/plainGlobal))
Expand Down
44 changes: 22 additions & 22 deletions tests/compiler/bindings/esm.release.wat
View file Open in desktop
Original file line number Diff line number Diff line change
Expand Up @@ -62,28 +62,28 @@
(data 7ドル.1 (i32.const 1352) "02円00円00円00円(00円00円00円A00円l00円l00円o00円c00円a00円t00円i00円o00円n00円 00円t00円o00円o00円 00円l00円a00円r00円g00円e")
(data 8ドル (i32.const 1404) "<")
(data 8ドル.1 (i32.const 1416) "02円00円00円00円 00円00円00円~00円l00円i00円b00円/00円r00円t00円/00円i00円t00円c00円m00円s00円.00円t00円s")
(data $11 (i32.const 1532) "<")
(data $11.1 (i32.const 1544) "02円00円00円00円$00円00円00円I00円n00円d00円e00円x00円 00円o00円u00円t00円 00円o00円f00円 00円r00円a00円n00円g00円e")
(data $12 (i32.const 1596) ",")
(data $12.1 (i32.const 1608) "02円00円00円00円14円00円00円00円~00円l00円i00円b00円/00円r00円t00円.00円t00円s")
(data $14 (i32.const 1676) "<")
(data $14.1 (i32.const 1688) "02円00円00円00円1円e00円00円00円~00円l00円i00円b00円/00円r00円t00円/00円t00円l00円s00円f00円.00円t00円s")
(data $15 (i32.const 1740) "1円c")
(data $15.1 (i32.const 1752) "02円")
(data $16 (i32.const 1772) "<")
(data $16.1 (i32.const 1784) "02円00円00円00円$00円00円00円~00円l00円i00円b00円/00円t00円y00円p00円e00円d00円a00円r00円r00円a00円y00円.00円t00円s")
(data $17 (i32.const 1836) "<")
(data $17.1 (i32.const 1848) "02円00円00円00円&00円00円00円~00円l00円i00円b00円/00円s00円t00円a00円t00円i00円c00円a00円r00円r00円a00円y00円.00円t00円s")
(data $18 (i32.const 1900) ",")
(data $18.1 (i32.const 1912) "02円00円00円00円1円a00円00円00円~00円l00円i00円b00円/00円a00円r00円r00円a00円y00円.00円t00円s")
(data $19 (i32.const 1948) "|")
(data $19.1 (i32.const 1960) "02円00円00円00円^00円00円00円E00円l00円e00円m00円e00円n00円t00円 00円t00円y00円p00円e00円 00円m00円u00円s00円t00円 00円b00円e00円 00円n00円u00円l00円l00円a00円b00円l00円e00円 00円i00円f00円 00円a00円r00円r00円a00円y00円 00円i00円s00円 00円h00円o00円l00円e00円y")
(data $20 (i32.const 2076) "<")
(data $20.1 (i32.const 2088) "02円00円00円00円*00円00円00円O00円b00円j00円e00円c00円t00円 00円a00円l00円r00円e00円a00円d00円y00円 00円p00円i00円n00円n00円e00円d")
(data $21 (i32.const 2140) "<")
(data $21.1 (i32.const 2152) "02円00円00円00円(00円00円00円O00円b00円j00円e00円c00円t00円 00円i00円s00円 00円n00円o00円t00円 00円p00円i00円n00円n00円e00円d")
(data $22 (i32.const 2208) "10円00円00円00円 00円00円00円 00円00円00円 ")
(data $22.1 (i32.const 2232) "81円08円00円00円01円19円00円00円01円02円00円00円$\t00円00円\a400円00円00円$\n00円00円02円\t00円00円02円A00円00円00円00円00円00円A00円00円00円 ")
(data $9 (i32.const 1532) "<")
(data $9.1 (i32.const 1544) "02円00円00円00円$00円00円00円I00円n00円d00円e00円x00円 00円o00円u00円t00円 00円o00円f00円 00円r00円a00円n00円g00円e")
(data $10 (i32.const 1596) ",")
(data $10.1 (i32.const 1608) "02円00円00円00円14円00円00円00円~00円l00円i00円b00円/00円r00円t00円.00円t00円s")
(data $11 (i32.const 1676) "<")
(data $11.1 (i32.const 1688) "02円00円00円00円1円e00円00円00円~00円l00円i00円b00円/00円r00円t00円/00円t00円l00円s00円f00円.00円t00円s")
(data $12 (i32.const 1740) "1円c")
(data $12.1 (i32.const 1752) "02円")
(data $13 (i32.const 1772) "<")
(data $13.1 (i32.const 1784) "02円00円00円00円$00円00円00円~00円l00円i00円b00円/00円t00円y00円p00円e00円d00円a00円r00円r00円a00円y00円.00円t00円s")
(data $14 (i32.const 1836) "<")
(data $14.1 (i32.const 1848) "02円00円00円00円&00円00円00円~00円l00円i00円b00円/00円s00円t00円a00円t00円i00円c00円a00円r00円r00円a00円y00円.00円t00円s")
(data $15 (i32.const 1900) ",")
(data $15.1 (i32.const 1912) "02円00円00円00円1円a00円00円00円~00円l00円i00円b00円/00円a00円r00円r00円a00円y00円.00円t00円s")
(data $16 (i32.const 1948) "|")
(data $16.1 (i32.const 1960) "02円00円00円00円^00円00円00円E00円l00円e00円m00円e00円n00円t00円 00円t00円y00円p00円e00円 00円m00円u00円s00円t00円 00円b00円e00円 00円n00円u00円l00円l00円a00円b00円l00円e00円 00円i00円f00円 00円a00円r00円r00円a00円y00円 00円i00円s00円 00円h00円o00円l00円e00円y")
(data $17 (i32.const 2076) "<")
(data $17.1 (i32.const 2088) "02円00円00円00円*00円00円00円O00円b00円j00円e00円c00円t00円 00円a00円l00円r00円e00円a00円d00円y00円 00円p00円i00円n00円n00円e00円d")
(data $18 (i32.const 2140) "<")
(data $18.1 (i32.const 2152) "02円00円00円00円(00円00円00円O00円b00円j00円e00円c00円t00円 00円i00円s00円 00円n00円o00円t00円 00円p00円i00円n00円n00円e00円d")
(data $19 (i32.const 2208) "10円00円00円00円 00円00円00円 00円00円00円 ")
(data $19.1 (i32.const 2232) "81円08円00円00円01円19円00円00円01円02円00円00円$\t00円00円\a400円00円00円$\n00円00円02円\t00円00円02円A00円00円00円00円00円00円A00円00円00円 ")
(export "plainGlobal" (global $bindings/esm/plainGlobal))
(export "plainMutableGlobal" (global $bindings/esm/plainMutableGlobal))
(export "stringGlobal" (global $bindings/esm/stringGlobal))
Expand Down
Loading

AltStyle によって変換されたページ (->オリジナル) /