From 711f73b15da0f9b585bf18e8807327be6f93ddfc Mon Sep 17 00:00:00 2001 From: Max Graey Date: Thu, 18 Oct 2018 20:05:35 +0300 Subject: [PATCH] Implement String#split (#301) --- std/assembly/index.d.ts | 1 + std/assembly/string.ts | 64 +- std/portable/index.d.ts | 1 + tests/compiler/std/array-access.optimized.wat | 2 +- tests/compiler/std/array-access.untouched.wat | 2 +- tests/compiler/std/array.optimized.wat | 4 +- tests/compiler/std/array.untouched.wat | 6 +- tests/compiler/std/hash.untouched.wat | 2 + tests/compiler/std/string-utf8.optimized.wat | 8 +- tests/compiler/std/string-utf8.untouched.wat | 8 +- tests/compiler/std/string.optimized.wat | 5089 ++++++++++----- tests/compiler/std/string.ts | 37 + tests/compiler/std/string.untouched.wat | 5469 ++++++++++++----- 13 files changed, 7436 insertions(+), 3257 deletions(-) diff --git a/std/assembly/index.d.ts b/std/assembly/index.d.ts index 6def9e05..14d382bb 100644 --- a/std/assembly/index.d.ts +++ b/std/assembly/index.d.ts @@ -491,6 +491,7 @@ declare class String { padStart(targetLength: i32, padString?: string): string; padEnd(targetLength: i32, padString?: string): string; repeat(count?: i32): string; + split(separator?: string, limit?: i32): string[]; toString(): string; static fromUTF8(ptr: usize, len: usize): string; toUTF8(): usize; diff --git a/std/assembly/string.ts b/std/assembly/string.ts index c329ce50..8d5eb378 100644 --- a/std/assembly/string.ts +++ b/std/assembly/string.ts @@ -10,6 +10,10 @@ import { parse } from "./internal/string"; +import { + storeUnsafe as storeUnsafeArray +} from "./internal/arraybuffer"; + @sealed export class String { @@ -200,6 +204,7 @@ export class String { return compareUnsafe(left, 0, right, 0, length) <= 0; } + @inline includes(searchString: String, position: i32 = 0): bool { return this.indexOf(searchString, position) != -1; } @@ -400,14 +405,69 @@ export class String { throw new RangeError("Invalid count value"); } - if (count === 0 || !length) return changetype(""); - if (count === 1) return this; + if (count == 0 || !length) return changetype(""); + if (count == 1) return this; var result = allocateUnsafe(length * count); repeatUnsafe(result, 0, this, count); return result; } + split(separator: String = null, limit: i32 = i32.MAX_VALUE): String[] { + assert(this !== null); + if (!limit) return new Array(); + if (separator === null) return [this]; + var length: isize = this.length; + var sepLen: isize = separator.length; + if (limit < 0) limit = i32.MAX_VALUE; + if (!sepLen) { + if (!length) return new Array(); + // split by chars + length = min(length, limit); + let result = new Array(length); + let buffer = result.buffer_; + for (let i: isize = 0; i < length; ++i) { + let char = allocateUnsafe(1); + store( + changetype(char), + load( + changetype(this) + (i << 1), + HEADER_SIZE + ), + HEADER_SIZE + ); + storeUnsafeArray(buffer, i, char); + } + return result; + } else if (!length) { + return [changetype("")]; + } + var result = new Array(); + var end = 0, start = 0, i = 0; + while ((end = this.indexOf(separator, start)) != -1) { + let len = end - start; + if (len > 0) { + let out = allocateUnsafe(len); + copyUnsafe(out, 0, this, start, len); + result.push(out); + } else { + result.push(changetype("")); + } + if (++i == limit) return result; + start = end + sepLen; + } + if (!start) return [this]; + var len = length - start; + if (len > 0) { + let out = allocateUnsafe(len); + copyUnsafe(out, 0, this, start, len); + result.push(out); + } else { + result.push(changetype("")); + } + return result; + } + toString(): String { return this; } diff --git a/std/portable/index.d.ts b/std/portable/index.d.ts index ac3435d1..1d201a8b 100644 --- a/std/portable/index.d.ts +++ b/std/portable/index.d.ts @@ -310,6 +310,7 @@ declare class String { padEnd(targetLength: i32, padString?: string): string; replace(search: string, replacement: string): string; repeat(count?: i32): string; + split(separator?: string, limit?: i32): string[]; toString(): string; } diff --git a/tests/compiler/std/array-access.optimized.wat b/tests/compiler/std/array-access.optimized.wat index e7493711..ba166ce4 100644 --- a/tests/compiler/std/array-access.optimized.wat +++ b/tests/compiler/std/array-access.optimized.wat @@ -132,7 +132,7 @@ (call $~lib/env/abort (i32.const 0) (i32.const 16) - (i32.const 239) + (i32.const 244) (i32.const 4) ) (unreachable) diff --git a/tests/compiler/std/array-access.untouched.wat b/tests/compiler/std/array-access.untouched.wat index c7ddbcb1..dd8187c5 100644 --- a/tests/compiler/std/array-access.untouched.wat +++ b/tests/compiler/std/array-access.untouched.wat @@ -225,7 +225,7 @@ (call $~lib/env/abort (i32.const 0) (i32.const 16) - (i32.const 239) + (i32.const 244) (i32.const 4) ) (unreachable) diff --git a/tests/compiler/std/array.optimized.wat b/tests/compiler/std/array.optimized.wat index 2e4bcdaa..9d4a22a4 100644 --- a/tests/compiler/std/array.optimized.wat +++ b/tests/compiler/std/array.optimized.wat @@ -7930,7 +7930,7 @@ (call $~lib/env/abort (i32.const 0) (i32.const 1616) - (i32.const 106) + (i32.const 110) (i32.const 4) ) (unreachable) @@ -8104,7 +8104,7 @@ (call $~lib/env/abort (i32.const 0) (i32.const 1616) - (i32.const 264) + (i32.const 269) (i32.const 4) ) (unreachable) diff --git a/tests/compiler/std/array.untouched.wat b/tests/compiler/std/array.untouched.wat index d2f668f5..88053d7e 100644 --- a/tests/compiler/std/array.untouched.wat +++ b/tests/compiler/std/array.untouched.wat @@ -12670,7 +12670,7 @@ (call $~lib/env/abort (i32.const 0) (i32.const 1616) - (i32.const 54) + (i32.const 58) (i32.const 4) ) (unreachable) @@ -12764,7 +12764,7 @@ (call $~lib/env/abort (i32.const 0) (i32.const 1616) - (i32.const 106) + (i32.const 110) (i32.const 4) ) (unreachable) @@ -13051,7 +13051,7 @@ (call $~lib/env/abort (i32.const 0) (i32.const 1616) - (i32.const 264) + (i32.const 269) (i32.const 4) ) (unreachable) diff --git a/tests/compiler/std/hash.untouched.wat b/tests/compiler/std/hash.untouched.wat index 0d67cc4a..9d19d4e4 100644 --- a/tests/compiler/std/hash.untouched.wat +++ b/tests/compiler/std/hash.untouched.wat @@ -13,6 +13,8 @@ (global $~lib/internal/allocator/AL_SIZE i32 (i32.const 8)) (global $~lib/internal/allocator/AL_MASK i32 (i32.const 7)) (global $~lib/internal/allocator/MAX_SIZE_32 i32 (i32.const 1073741824)) + (global $~lib/internal/arraybuffer/HEADER_SIZE i32 (i32.const 8)) + (global $~lib/internal/arraybuffer/MAX_BLENGTH i32 (i32.const 1073741816)) (global $~lib/internal/string/HEADER_SIZE i32 (i32.const 4)) (global $~lib/internal/string/MAX_LENGTH i32 (i32.const 536870910)) (global $~lib/internal/hash/FNV_OFFSET i32 (i32.const -2128831035)) diff --git a/tests/compiler/std/string-utf8.optimized.wat b/tests/compiler/std/string-utf8.optimized.wat index d38c6881..76b4f994 100644 --- a/tests/compiler/std/string-utf8.optimized.wat +++ b/tests/compiler/std/string-utf8.optimized.wat @@ -2365,7 +2365,7 @@ (call $~lib/env/abort (i32.const 0) (i32.const 72) - (i32.const 450) + (i32.const 510) (i32.const 8) ) (unreachable) @@ -2440,7 +2440,7 @@ (call $~lib/env/abort (i32.const 0) (i32.const 72) - (i32.const 454) + (i32.const 514) (i32.const 8) ) (unreachable) @@ -2559,7 +2559,7 @@ (call $~lib/env/abort (i32.const 0) (i32.const 72) - (i32.const 466) + (i32.const 526) (i32.const 8) ) (unreachable) @@ -2645,7 +2645,7 @@ (call $~lib/env/abort (i32.const 0) (i32.const 72) - (i32.const 475) + (i32.const 535) (i32.const 4) ) (unreachable) diff --git a/tests/compiler/std/string-utf8.untouched.wat b/tests/compiler/std/string-utf8.untouched.wat index 0ae2b1c2..b80be9f1 100644 --- a/tests/compiler/std/string-utf8.untouched.wat +++ b/tests/compiler/std/string-utf8.untouched.wat @@ -2911,7 +2911,7 @@ (call $~lib/env/abort (i32.const 0) (i32.const 72) - (i32.const 450) + (i32.const 510) (i32.const 8) ) (unreachable) @@ -2988,7 +2988,7 @@ (call $~lib/env/abort (i32.const 0) (i32.const 72) - (i32.const 454) + (i32.const 514) (i32.const 8) ) (unreachable) @@ -3132,7 +3132,7 @@ (call $~lib/env/abort (i32.const 0) (i32.const 72) - (i32.const 466) + (i32.const 526) (i32.const 8) ) (unreachable) @@ -3225,7 +3225,7 @@ (call $~lib/env/abort (i32.const 0) (i32.const 72) - (i32.const 475) + (i32.const 535) (i32.const 4) ) (unreachable) diff --git a/tests/compiler/std/string.optimized.wat b/tests/compiler/std/string.optimized.wat index 1f3351af..3e6e8fc1 100644 --- a/tests/compiler/std/string.optimized.wat +++ b/tests/compiler/std/string.optimized.wat @@ -18,6 +18,8 @@ (type $FUNCSIG$iiiii (func (param i32 i32 i32 i32) (result i32))) (type $FUNCSIG$iii (func (param i32 i32) (result i32))) (type $FUNCSIG$di (func (param i32) (result f64))) + (type $FUNCSIG$i (func (result i32))) + (type $FUNCSIG$vii (func (param i32 i32))) (type $FUNCSIG$v (func)) (memory $0 1) (data (i32.const 8) "\10\00\00\00h\00i\00,\00 \00I\00\'\00m\00 \00a\00 \00s\00t\00r\00i\00n\00g") @@ -67,96 +69,109 @@ (data (i32.const 720) "\05\00\00\00a\00a\00a\00a\00a") (data (i32.const 736) "\06\00\00\00a\00a\00a\00a\00a\00a") (data (i32.const 752) "\07\00\00\00a\00a\00a\00a\00a\00a\00a") - (data (i32.const 776) "\90\01\00\00\00\00\00\000\000\000\001\000\002\000\003\000\004\000\005\000\006\000\007\000\008\000\009\001\000\001\001\001\002\001\003\001\004\001\005\001\006\001\007\001\008\001\009\002\000\002\001\002\002\002\003\002\004\002\005\002\006\002\007\002\008\002\009\003\000\003\001\003\002\003\003\003\004\003\005\003\006\003\007\003\008\003\009\004\000\004\001\004\002\004\003\004\004\004\005\004\006\004\007\004\008\004\009\005\000\005\001\005\002\005\003\005\004\005\005\005\006\005\007\005\008\005\009\006\000\006\001\006\002\006\003\006\004\006\005\006\006\006\007\006\008\006\009\007\000\007\001\007\002\007\003\007\004\007\005\007\006\007\007\007\008\007\009\008\000\008\001\008\002\008\003\008\004\008\005\008\006\008\007\008\008\008\009\009\000\009\001\009\002\009\003\009\004\009\005\009\006\009\007\009\008\009\009") - (data (i32.const 1288) "\08\03\00\00d") - (data (i32.const 1296) "\01\00\00\008") - (data (i32.const 1304) "\05\00\00\00-\001\000\000\000") - (data (i32.const 1320) "\04\00\00\001\002\003\004") - (data (i32.const 1336) "\05\00\00\001\002\003\004\005") - (data (i32.const 1352) "\06\00\00\001\002\003\004\005\006") - (data (i32.const 1368) "\07\00\00\001\001\001\001\001\001\001") - (data (i32.const 1392) "\07\00\00\001\002\003\004\005\006\007") - (data (i32.const 1416) "\n\00\00\002\001\004\007\004\008\003\006\004\006") - (data (i32.const 1440) "\n\00\00\002\001\004\007\004\008\003\006\004\007") - (data (i32.const 1464) "\0b\00\00\00-\002\001\004\007\004\008\003\006\004\008") - (data (i32.const 1496) "\02\00\00\00-\001") - (data (i32.const 1504) "\04\00\00\001\000\000\000") - (data (i32.const 1520) "\n\00\00\002\001\004\007\004\008\003\006\004\008") - (data (i32.const 1544) "\n\00\00\004\002\009\004\009\006\007\002\009\005") - (data (i32.const 1568) "\90\01\00\00\00\00\00\000\000\000\001\000\002\000\003\000\004\000\005\000\006\000\007\000\008\000\009\001\000\001\001\001\002\001\003\001\004\001\005\001\006\001\007\001\008\001\009\002\000\002\001\002\002\002\003\002\004\002\005\002\006\002\007\002\008\002\009\003\000\003\001\003\002\003\003\003\004\003\005\003\006\003\007\003\008\003\009\004\000\004\001\004\002\004\003\004\004\004\005\004\006\004\007\004\008\004\009\005\000\005\001\005\002\005\003\005\004\005\005\005\006\005\007\005\008\005\009\006\000\006\001\006\002\006\003\006\004\006\005\006\006\006\007\006\008\006\009\007\000\007\001\007\002\007\003\007\004\007\005\007\006\007\007\007\008\007\009\008\000\008\001\008\002\008\003\008\004\008\005\008\006\008\007\008\008\008\009\009\000\009\001\009\002\009\003\009\004\009\005\009\006\009\007\009\008\009\009") - (data (i32.const 2080) " \06\00\00d") - (data (i32.const 2088) "\08\00\00\009\009\009\009\009\009\009\009") - (data (i32.const 2112) "\t\00\00\001\000\000\000\000\000\000\000\000") - (data (i32.const 2136) "\0b\00\00\006\008\007\001\009\004\007\006\007\003\005") - (data (i32.const 2168) "\0c\00\00\008\006\008\007\001\009\004\007\006\007\003\005") - (data (i32.const 2200) "\0f\00\00\009\009\009\008\006\008\007\001\009\004\007\006\007\003\005") - (data (i32.const 2240) "\10\00\00\009\009\009\009\008\006\008\007\001\009\004\007\006\007\003\005") - (data (i32.const 2280) "\11\00\00\001\009\009\009\009\008\006\008\007\001\009\004\007\006\007\003\005") - (data (i32.const 2320) "\14\00\00\001\008\004\004\006\007\004\004\000\007\003\007\000\009\005\005\001\006\001\005") - (data (i32.const 2368) "\05\00\00\00-\001\002\003\004") - (data (i32.const 2384) "\0b\00\00\00-\004\002\009\004\009\006\007\002\009\005") - (data (i32.const 2416) "\0c\00\00\00-\006\008\007\001\009\004\007\006\007\003\005") - (data (i32.const 2448) "\0d\00\00\00-\008\006\008\007\001\009\004\007\006\007\003\005") - (data (i32.const 2480) "\10\00\00\00-\009\009\009\008\006\008\007\001\009\004\007\006\007\003\005") - (data (i32.const 2520) "\12\00\00\00-\001\009\009\009\009\008\006\008\007\001\009\004\007\006\007\003\005") - (data (i32.const 2560) "\13\00\00\009\002\002\003\003\007\002\000\003\006\008\005\004\007\007\005\008\000\007") - (data (i32.const 2608) "\14\00\00\00-\009\002\002\003\003\007\002\000\003\006\008\005\004\007\007\005\008\000\008") - (data (i32.const 2656) "\03\00\00\000\00.\000") - (data (i32.const 2672) "\03\00\00\00N\00a\00N") - (data (i32.const 2688) "\t\00\00\00-\00I\00n\00f\00i\00n\00i\00t\00y") - (data (i32.const 2712) "\08\00\00\00I\00n\00f\00i\00n\00i\00t\00y") - (data (i32.const 2736) "\b8\02\00\00\00\00\00\00\88\02\1c\08\a0\d5\8f\fav\bf>\a2\7f\e1\ae\bav\acU0 \fb\16\8b\ea5\ce]J\89B\cf-;eU\aa\b0k\9a\dfE\1a=\03\cf\1a\e6\ca\c6\9a\c7\17\fep\abO\dc\bc\be\fc\b1w\ff\0c\d6kA\ef\91V\be<\fc\7f\90\ad\1f\d0\8d\83\9aU1(\\Q\d3\b5\c9\a6\ad\8f\acq\9d\cb\8b\ee#w\"\9c\eamSx@\91I\cc\aeW\ce\b6]y\12<\827V\fbM6\94\10\c2O\98H8o\ea\96\90\c7:\82%\cb\85t\d7\f4\97\bf\97\cd\cf\86\a0\e5\ac*\17\98\n4\ef\8e\b25*\fbg8\b2;?\c6\d2\df\d4\c8\84\ba\cd\d3\1a\'D\dd\c5\96\c9%\bb\ce\9fk\93\84\a5b}$l\ac\db\f6\da_\0dXf\ab\a3&\f1\c3\de\93\f8\e2\f3\b8\80\ff\aa\a8\ad\b5\b5\8bJ|l\05_b\87S0\c14`\ff\bc\c9U&\ba\91\8c\85N\96\bd~)p$w\f9\df\8f\b8\e5\b8\9f\bd\df\a6\94}t\88\cf_\a9\f8\cf\9b\a8\8f\93pD\b9k\15\0f\bf\f8\f0\08\8a\b611eU%\b0\cd\ac\7f{\d0\c6\e2?\99\06;+*\c4\10\\\e4\d3\92si\99$$\aa\0e\ca\00\83\f2\b5\87\fd\eb\1a\11\92d\08\e5\bc\cc\88Po\t\cc\bc\8c,e\19\e2X\17\b7\d1\00\00\00\00\00\00@\9c\00\00\00\00\10\a5\d4\e8\00\00b\ac\c5\ebx\ad\84\t\94\f8x9?\81\b3\15\07\c9{\ce\97\c0p\\\ea{\ce2~\8fh\80\e9\ab\a48\d2\d5E\"\9a\17&\'O\9f\'\fb\c4\d41\a2c\ed\a8\ad\c8\8c8e\de\b0\dbe\ab\1a\8e\08\c7\83\9a\1dqB\f9\1d]\c4X\e7\1b\a6,iM\92\ea\8dp\1ad\ee\01\daJw\ef\9a\99\a3m\a2\85k}\b4{x\t\f2w\18\ddy\a1\e4T\b4\c2\c5\9b[\92\86[\86=]\96\c8\c5S5\c8\b3\a0\97\fa\\\b4*\95\e3_\a0\99\bd\9fF\de%\8c9\db4\c2\9b\a5\\\9f\98\a3r\9a\c6\f6\ce\be\e9TS\bf\dc\b7\e2A\"\f2\17\f3\fc\88\a5x\\\d3\9b\ce \cc\dfS!{\f3Z\16\98:0\1f\97\dc\b5\a0\e2\96\b3\e3\\S\d1\d9\a8\a2\7f\e1\ae\bav\acU0 \fb\16\8b\ea5\ce]J\89B\cf-;eU\aa\b0k\9a\dfE\1a=\03\cf\1a\e6\ca\c6\9a\c7\17\fep\abO\dc\bc\be\fc\b1w\ff\0c\d6kA\ef\91V\be<\fc\7f\90\ad\1f\d0\8d\83\9aU1(\\Q\d3\b5\c9\a6\ad\8f\acq\9d\cb\8b\ee#w\"\9c\eamSx@\91I\cc\aeW\ce\b6]y\12<\827V\fbM6\94\10\c2O\98H8o\ea\96\90\c7:\82%\cb\85t\d7\f4\97\bf\97\cd\cf\86\a0\e5\ac*\17\98\n4\ef\8e\b25*\fbg8\b2;?\c6\d2\df\d4\c8\84\ba\cd\d3\1a\'D\dd\c5\96\c9%\bb\ce\9fk\93\84\a5b}$l\ac\db\f6\da_\0dXf\ab\a3&\f1\c3\de\93\f8\e2\f3\b8\80\ff\aa\a8\ad\b5\b5\8bJ|l\05_b\87S0\c14`\ff\bc\c9U&\ba\91\8c\85N\96\bd~)p$w\f9\df\8f\b8\e5\b8\9f\bd\df\a6\94}t\88\cf_\a9\f8\cf\9b\a8\8f\93pD\b9k\15\0f\bf\f8\f0\08\8a\b611eU%\b0\cd\ac\7f{\d0\c6\e2?\99\06;+*\c4\10\\\e4\d3\92si\99$$\aa\0e\ca\00\83\f2\b5\87\fd\eb\1a\11\92d\08\e5\bc\cc\88Po\t\cc\bc\8c,e\19\e2X\17\b7\d1\00\00\00\00\00\00@\9c\00\00\00\00\10\a5\d4\e8\00\00b\ac\c5\ebx\ad\84\t\94\f8x9?\81\b3\15\07\c9{\ce\97\c0p\\\ea{\ce2~\8fh\80\e9\ab\a48\d2\d5E\"\9a\17&\'O\9f\'\fb\c4\d41\a2c\ed\a8\ad\c8\8c8e\de\b0\dbe\ab\1a\8e\08\c7\83\9a\1dqB\f9\1d]\c4X\e7\1b\a6,iM\92\ea\8dp\1ad\ee\01\daJw\ef\9a\99\a3m\a2\85k}\b4{x\t\f2w\18\ddy\a1\e4T\b4\c2\c5\9b[\92\86[\86=]\96\c8\c5S5\c8\b3\a0\97\fa\\\b4*\95\e3_\a0\99\bd\9fF\de%\8c9\db4\c2\9b\a5\\\9f\98\a3r\9a\c6\f6\ce\be\e9TS\bf\dc\b7\e2A\"\f2\17\f3\fc\88\a5x\\\d3\9b\ce \cc\dfS!{\f3Z\16\98:0\1f\97\dc\b5\a0\e2\96\b3\e3\\S\d1\d9\a8 (; 24 ;) (; has Stack IR ;) (type $iiF) (param $0 i32) (param $1 i32) (result f64) + (func $~lib/internal/string/parse (; 23 ;) (; has Stack IR ;) (type $iiF) (param $0 i32) (param $1 i32) (result f64) (local $2 i32) (local $3 i32) (local $4 i32) @@ -3583,13 +3589,13 @@ (get_local $5) ) ) - (func $~lib/string/parseInt (; 25 ;) (; has Stack IR ;) (type $FUNCSIG$di) (param $0 i32) (result f64) + (func $~lib/string/parseInt (; 24 ;) (; has Stack IR ;) (type $FUNCSIG$di) (param $0 i32) (result f64) (call $~lib/internal/string/parse (get_local $0) (i32.const 0) ) ) - (func $~lib/string/parseFloat (; 26 ;) (; has Stack IR ;) (type $iF) (param $0 i32) (result f64) + (func $~lib/string/parseFloat (; 25 ;) (; has Stack IR ;) (type $iF) (param $0 i32) (result f64) (local $1 i32) (local $2 i32) (local $3 i32) @@ -3753,7 +3759,7 @@ (call $~lib/env/abort (i32.const 0) (i32.const 80) - (i32.const 566) + (i32.const 626) (i32.const 10) ) (unreachable) @@ -3839,7 +3845,7 @@ (get_local $4) ) ) - (func $~lib/string/String#concat (; 27 ;) (; has Stack IR ;) (type $iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/string/String#concat (; 26 ;) (; has Stack IR ;) (type $iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -3851,7 +3857,7 @@ (call $~lib/env/abort (i32.const 0) (i32.const 80) - (i32.const 106) + (i32.const 110) (i32.const 4) ) (unreachable) @@ -3906,7 +3912,7 @@ ) (get_local $2) ) - (func $~lib/string/String.__concat (; 28 ;) (; has Stack IR ;) (type $iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/string/String.__concat (; 27 ;) (; has Stack IR ;) (type $iii) (param $0 i32) (param $1 i32) (result i32) (if (i32.eqz (get_local $0) @@ -3920,7 +3926,7 @@ (get_local $1) ) ) - (func $~lib/string/String.__ne (; 29 ;) (; has Stack IR ;) (type $iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/string/String.__ne (; 28 ;) (; has Stack IR ;) (type $iii) (param $0 i32) (param $1 i32) (result i32) (i32.eqz (call $~lib/string/String.__eq (get_local $0) @@ -3928,7 +3934,7 @@ ) ) ) - (func $~lib/string/String.__gt (; 30 ;) (; has Stack IR ;) (type $iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/string/String.__gt (; 29 ;) (; has Stack IR ;) (type $iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (if @@ -4004,7 +4010,7 @@ (i32.const 0) ) ) - (func $~lib/string/String.__gte (; 31 ;) (; has Stack IR ;) (type $iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/string/String.__gte (; 30 ;) (; has Stack IR ;) (type $iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (if @@ -4080,7 +4086,7 @@ (i32.const 0) ) ) - (func $~lib/string/String.__lt (; 32 ;) (; has Stack IR ;) (type $iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/string/String.__lt (; 31 ;) (; has Stack IR ;) (type $iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (if @@ -4156,7 +4162,7 @@ (i32.const 0) ) ) - (func $~lib/string/String.__lte (; 33 ;) (; has Stack IR ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (func $~lib/string/String.__lte (; 32 ;) (; has Stack IR ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (local $1 i32) (local $2 i32) (if @@ -4222,7 +4228,7 @@ (i32.const 0) ) ) - (func $~lib/string/String#repeat (; 34 ;) (; has Stack IR ;) (type $iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/string/String#repeat (; 33 ;) (; has Stack IR ;) (type $iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (if @@ -4233,7 +4239,7 @@ (call $~lib/env/abort (i32.const 0) (i32.const 80) - (i32.const 395) + (i32.const 400) (i32.const 4) ) (unreachable) @@ -4269,7 +4275,7 @@ (call $~lib/env/abort (i32.const 0) (i32.const 80) - (i32.const 400) + (i32.const 405) (i32.const 6) ) (unreachable) @@ -4319,7 +4325,977 @@ ) (get_local $2) ) - (func $~lib/internal/number/decimalCount32 (; 35 ;) (; has Stack IR ;) (type $ii) (param $0 i32) (result i32) + (func $~lib/internal/arraybuffer/computeSize (; 34 ;) (; has Stack IR ;) (type $ii) (param $0 i32) (result i32) + (i32.shl + (i32.const 1) + (i32.sub + (i32.const 32) + (i32.clz + (i32.add + (get_local $0) + (i32.const 7) + ) + ) + ) + ) + ) + (func $~lib/internal/arraybuffer/allocateUnsafe (; 35 ;) (; has Stack IR ;) (type $ii) (param $0 i32) (result i32) + (local $1 i32) + (if + (i32.gt_u + (get_local $0) + (i32.const 1073741816) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 808) + (i32.const 23) + (i32.const 2) + ) + (unreachable) + ) + ) + (i32.store + (tee_local $1 + (call $~lib/allocator/arena/__memory_allocate + (call $~lib/internal/arraybuffer/computeSize + (get_local $0) + ) + ) + ) + (get_local $0) + ) + (get_local $1) + ) + (func $~lib/memory/memory.allocate (; 36 ;) (; has Stack IR ;) (type $FUNCSIG$i) (result i32) + (call $~lib/allocator/arena/__memory_allocate + (i32.const 8) + ) + ) + (func $~lib/internal/memory/memset (; 37 ;) (; has Stack IR ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + (local $2 i32) + (if + (i32.eqz + (get_local $1) + ) + (return) + ) + (i32.store8 + (get_local $0) + (i32.const 0) + ) + (i32.store8 + (i32.sub + (i32.add + (get_local $0) + (get_local $1) + ) + (i32.const 1) + ) + (i32.const 0) + ) + (if + (i32.le_u + (get_local $1) + (i32.const 2) + ) + (return) + ) + (i32.store8 + (i32.add + (get_local $0) + (i32.const 1) + ) + (i32.const 0) + ) + (i32.store8 + (i32.add + (get_local $0) + (i32.const 2) + ) + (i32.const 0) + ) + (i32.store8 + (i32.sub + (tee_local $2 + (i32.add + (get_local $0) + (get_local $1) + ) + ) + (i32.const 2) + ) + (i32.const 0) + ) + (i32.store8 + (i32.sub + (get_local $2) + (i32.const 3) + ) + (i32.const 0) + ) + (if + (i32.le_u + (get_local $1) + (i32.const 6) + ) + (return) + ) + (i32.store8 + (i32.add + (get_local $0) + (i32.const 3) + ) + (i32.const 0) + ) + (i32.store8 + (i32.sub + (i32.add + (get_local $0) + (get_local $1) + ) + (i32.const 4) + ) + (i32.const 0) + ) + (if + (i32.le_u + (get_local $1) + (i32.const 8) + ) + (return) + ) + (i32.store + (tee_local $0 + (i32.add + (get_local $0) + (tee_local $2 + (i32.and + (i32.sub + (i32.const 0) + (get_local $0) + ) + (i32.const 3) + ) + ) + ) + ) + (i32.const 0) + ) + (i32.store + (i32.sub + (i32.add + (get_local $0) + (tee_local $1 + (i32.and + (i32.sub + (get_local $1) + (get_local $2) + ) + (i32.const -4) + ) + ) + ) + (i32.const 4) + ) + (i32.const 0) + ) + (if + (i32.le_u + (get_local $1) + (i32.const 8) + ) + (return) + ) + (i32.store + (i32.add + (get_local $0) + (i32.const 4) + ) + (i32.const 0) + ) + (i32.store + (i32.add + (get_local $0) + (i32.const 8) + ) + (i32.const 0) + ) + (i32.store + (i32.sub + (tee_local $2 + (i32.add + (get_local $0) + (get_local $1) + ) + ) + (i32.const 12) + ) + (i32.const 0) + ) + (i32.store + (i32.sub + (get_local $2) + (i32.const 8) + ) + (i32.const 0) + ) + (if + (i32.le_u + (get_local $1) + (i32.const 24) + ) + (return) + ) + (i32.store + (i32.add + (get_local $0) + (i32.const 12) + ) + (i32.const 0) + ) + (i32.store + (i32.add + (get_local $0) + (i32.const 16) + ) + (i32.const 0) + ) + (i32.store + (i32.add + (get_local $0) + (i32.const 20) + ) + (i32.const 0) + ) + (i32.store + (i32.add + (get_local $0) + (i32.const 24) + ) + (i32.const 0) + ) + (i32.store + (i32.sub + (tee_local $2 + (i32.add + (get_local $0) + (get_local $1) + ) + ) + (i32.const 28) + ) + (i32.const 0) + ) + (i32.store + (i32.sub + (get_local $2) + (i32.const 24) + ) + (i32.const 0) + ) + (i32.store + (i32.sub + (get_local $2) + (i32.const 20) + ) + (i32.const 0) + ) + (i32.store + (i32.sub + (get_local $2) + (i32.const 16) + ) + (i32.const 0) + ) + (set_local $0 + (i32.add + (get_local $0) + (tee_local $2 + (i32.add + (i32.and + (get_local $0) + (i32.const 4) + ) + (i32.const 24) + ) + ) + ) + ) + (set_local $1 + (i32.sub + (get_local $1) + (get_local $2) + ) + ) + (loop $continue|0 + (if + (i32.ge_u + (get_local $1) + (i32.const 32) + ) + (block + (i64.store + (get_local $0) + (i64.const 0) + ) + (i64.store + (i32.add + (get_local $0) + (i32.const 8) + ) + (i64.const 0) + ) + (i64.store + (i32.add + (get_local $0) + (i32.const 16) + ) + (i64.const 0) + ) + (i64.store + (i32.add + (get_local $0) + (i32.const 24) + ) + (i64.const 0) + ) + (set_local $1 + (i32.sub + (get_local $1) + (i32.const 32) + ) + ) + (set_local $0 + (i32.add + (get_local $0) + (i32.const 32) + ) + ) + (br $continue|0) + ) + ) + ) + ) + (func $~lib/array/Array#constructor (; 38 ;) (; has Stack IR ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) + (local $1 i32) + (local $2 i32) + (local $3 i32) + (if + (i32.gt_u + (get_local $0) + (i32.const 268435454) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 776) + (i32.const 37) + (i32.const 39) + ) + (unreachable) + ) + ) + (set_local $2 + (call $~lib/internal/arraybuffer/allocateUnsafe + (tee_local $3 + (i32.shl + (get_local $0) + (i32.const 2) + ) + ) + ) + ) + (i32.store + (tee_local $1 + (call $~lib/memory/memory.allocate) + ) + (i32.const 0) + ) + (i32.store offset=4 + (get_local $1) + (i32.const 0) + ) + (i32.store + (get_local $1) + (get_local $2) + ) + (i32.store offset=4 + (get_local $1) + (get_local $0) + ) + (call $~lib/internal/memory/memset + (i32.add + (get_local $2) + (i32.const 8) + ) + (get_local $3) + ) + (get_local $1) + ) + (func $~lib/array/Array#__unchecked_set (; 39 ;) (; has Stack IR ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) + (i32.store offset=8 + (i32.load + (get_local $0) + ) + (get_local $1) + ) + ) + (func $~lib/internal/arraybuffer/reallocateUnsafe (; 40 ;) (; has Stack IR ;) (type $iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + (if + (i32.gt_s + (get_local $1) + (tee_local $2 + (i32.load + (get_local $0) + ) + ) + ) + (block + (if + (i32.gt_s + (get_local $1) + (i32.const 1073741816) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 808) + (i32.const 37) + (i32.const 4) + ) + (unreachable) + ) + ) + (set_local $3 + (call $~lib/internal/arraybuffer/computeSize + (get_local $2) + ) + ) + (if + (i32.le_s + (get_local $1) + (i32.sub + (get_local $3) + (i32.const 8) + ) + ) + (block + (i32.store + (get_local $0) + (get_local $1) + ) + (call $~lib/internal/memory/memset + (i32.add + (i32.add + (get_local $0) + (i32.const 8) + ) + (get_local $2) + ) + (i32.sub + (get_local $1) + (get_local $2) + ) + ) + ) + (block + (call $~lib/internal/memory/memmove + (i32.add + (tee_local $3 + (call $~lib/internal/arraybuffer/allocateUnsafe + (get_local $1) + ) + ) + (i32.const 8) + ) + (i32.add + (get_local $0) + (i32.const 8) + ) + (get_local $2) + ) + (call $~lib/internal/memory/memset + (i32.add + (i32.add + (get_local $3) + (i32.const 8) + ) + (get_local $2) + ) + (i32.sub + (get_local $1) + (get_local $2) + ) + ) + (return + (get_local $3) + ) + ) + ) + ) + (if + (i32.lt_s + (get_local $1) + (get_local $2) + ) + (block + (if + (i32.lt_s + (get_local $1) + (i32.const 0) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 808) + (i32.const 61) + (i32.const 4) + ) + (unreachable) + ) + ) + (i32.store + (get_local $0) + (get_local $1) + ) + ) + ) + ) + (get_local $0) + ) + (func $~lib/array/Array#push (; 41 ;) (; has Stack IR ;) (type $iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (set_local $4 + (i32.add + (tee_local $3 + (i32.load offset=4 + (get_local $0) + ) + ) + (i32.const 1) + ) + ) + (if + (i32.ge_u + (get_local $3) + (i32.shr_u + (i32.load + (tee_local $2 + (i32.load + (get_local $0) + ) + ) + ) + (i32.const 2) + ) + ) + (block + (if + (i32.ge_u + (get_local $3) + (i32.const 268435454) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 776) + (i32.const 172) + (i32.const 42) + ) + (unreachable) + ) + ) + (set_local $2 + (call $~lib/internal/arraybuffer/reallocateUnsafe + (get_local $2) + (i32.shl + (get_local $4) + (i32.const 2) + ) + ) + ) + (i32.store + (get_local $0) + (get_local $2) + ) + ) + ) + (i32.store offset=4 + (get_local $0) + (get_local $4) + ) + (i32.store offset=8 + (i32.add + (get_local $2) + (i32.shl + (get_local $3) + (i32.const 2) + ) + ) + (get_local $1) + ) + (get_local $4) + ) + (func $~lib/string/String#split (; 42 ;) (; has Stack IR ;) (type $iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (if + (i32.eqz + (get_local $0) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 80) + (i32.const 417) + (i32.const 4) + ) + (unreachable) + ) + ) + (if + (i32.eqz + (get_local $2) + ) + (return + (call $~lib/array/Array#constructor + (i32.const 0) + ) + ) + ) + (if + (i32.eqz + (get_local $1) + ) + (block + (call $~lib/array/Array#__unchecked_set + (tee_local $5 + (call $~lib/array/Array#constructor + (i32.const 1) + ) + ) + (get_local $0) + ) + (return + (get_local $5) + ) + ) + ) + (set_local $3 + (i32.load + (get_local $0) + ) + ) + (set_local $8 + (i32.load + (get_local $1) + ) + ) + (if + (i32.lt_s + (get_local $2) + (i32.const 0) + ) + (set_local $2 + (i32.const 2147483647) + ) + ) + (if + (get_local $8) + (if + (i32.eqz + (get_local $3) + ) + (return + (i32.const 888) + ) + ) + (block + (if + (i32.eqz + (get_local $3) + ) + (return + (call $~lib/array/Array#constructor + (i32.const 0) + ) + ) + ) + (set_local $7 + (i32.load + (tee_local $5 + (call $~lib/array/Array#constructor + (tee_local $3 + (select + (tee_local $5 + (get_local $3) + ) + (tee_local $7 + (get_local $2) + ) + (i32.lt_s + (get_local $3) + (get_local $2) + ) + ) + ) + ) + ) + ) + ) + (block $break|0 + (set_local $2 + (i32.const 0) + ) + (loop $repeat|0 + (br_if $break|0 + (i32.ge_s + (get_local $2) + (get_local $3) + ) + ) + (i32.store16 offset=4 + (tee_local $1 + (call $~lib/internal/string/allocateUnsafe + (i32.const 1) + ) + ) + (i32.load16_u offset=4 + (i32.add + (get_local $0) + (i32.shl + (get_local $2) + (i32.const 1) + ) + ) + ) + ) + (i32.store offset=8 + (i32.add + (get_local $7) + (i32.shl + (get_local $2) + (i32.const 2) + ) + ) + (get_local $1) + ) + (set_local $2 + (i32.add + (get_local $2) + (i32.const 1) + ) + ) + (br $repeat|0) + ) + ) + (return + (get_local $5) + ) + ) + ) + (set_local $6 + (call $~lib/array/Array#constructor + (i32.const 0) + ) + ) + (loop $continue|1 + (if + (i32.ne + (tee_local $10 + (call $~lib/string/String#indexOf + (get_local $0) + (get_local $1) + (get_local $4) + ) + ) + (i32.const -1) + ) + (block + (if + (i32.gt_s + (tee_local $7 + (i32.sub + (get_local $10) + (get_local $4) + ) + ) + (i32.const 0) + ) + (block + (call $~lib/internal/string/copyUnsafe + (tee_local $5 + (call $~lib/internal/string/allocateUnsafe + (get_local $7) + ) + ) + (i32.const 0) + (get_local $0) + (get_local $4) + (get_local $7) + ) + (drop + (call $~lib/array/Array#push + (get_local $6) + (get_local $5) + ) + ) + ) + (drop + (call $~lib/array/Array#push + (get_local $6) + (i32.const 256) + ) + ) + ) + (if + (i32.eq + (tee_local $9 + (i32.add + (get_local $9) + (i32.const 1) + ) + ) + (get_local $2) + ) + (return + (get_local $6) + ) + ) + (set_local $4 + (i32.add + (get_local $10) + (get_local $8) + ) + ) + (br $continue|1) + ) + ) + ) + (if + (i32.eqz + (get_local $4) + ) + (block + (call $~lib/array/Array#__unchecked_set + (tee_local $2 + (call $~lib/array/Array#constructor + (i32.const 1) + ) + ) + (get_local $0) + ) + (return + (get_local $2) + ) + ) + ) + (if + (i32.gt_s + (tee_local $1 + (i32.sub + (get_local $3) + (get_local $4) + ) + ) + (i32.const 0) + ) + (block + (call $~lib/internal/string/copyUnsafe + (tee_local $2 + (call $~lib/internal/string/allocateUnsafe + (get_local $1) + ) + ) + (i32.const 0) + (get_local $0) + (get_local $4) + (get_local $1) + ) + (drop + (call $~lib/array/Array#push + (get_local $6) + (get_local $2) + ) + ) + ) + (drop + (call $~lib/array/Array#push + (get_local $6) + (i32.const 256) + ) + ) + ) + (get_local $6) + ) + (func $~lib/string/String#split|trampoline (; 43 ;) (; has Stack IR ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (block $2of2 + (block $1of2 + (block $0of2 + (block $outOfRange + (br_table $0of2 $1of2 $2of2 $outOfRange + (get_global $~argc) + ) + ) + (unreachable) + ) + (set_local $1 + (i32.const 0) + ) + ) + (set_local $2 + (i32.const 2147483647) + ) + ) + (call $~lib/string/String#split + (get_local $0) + (get_local $1) + (get_local $2) + ) + ) + (func $~lib/array/Array#__get (; 44 ;) (; has Stack IR ;) (type $iii) (param $0 i32) (param $1 i32) (result i32) + (tee_local $0 + (if (result i32) + (i32.lt_u + (get_local $1) + (i32.shr_u + (i32.load + (tee_local $0 + (i32.load + (get_local $0) + ) + ) + ) + (i32.const 2) + ) + ) + (i32.load offset=8 + (i32.add + (get_local $0) + (i32.shl + (get_local $1) + (i32.const 2) + ) + ) + ) + (unreachable) + ) + ) + ) + (func $~lib/internal/number/decimalCount32 (; 45 ;) (; has Stack IR ;) (type $ii) (param $0 i32) (result i32) (if (result i32) (i32.lt_u (get_local $0) @@ -4385,12 +5361,12 @@ ) ) ) - (func $~lib/internal/number/utoa32_lut (; 36 ;) (; has Stack IR ;) (type $iiiv) (param $0 i32) (param $1 i32) (param $2 i32) + (func $~lib/internal/number/utoa32_lut (; 46 ;) (; has Stack IR ;) (type $iiiv) (param $0 i32) (param $1 i32) (param $2 i32) (local $3 i32) (local $4 i32) (set_local $3 (i32.load - (i32.const 1288) + (i32.const 1520) ) ) (loop $continue|0 @@ -4546,7 +5522,7 @@ ) ) ) - (func $~lib/internal/number/itoa32 (; 37 ;) (; has Stack IR ;) (type $ii) (param $0 i32) (result i32) + (func $~lib/internal/number/itoa32 (; 47 ;) (; has Stack IR ;) (type $ii) (param $0 i32) (result i32) (local $1 i32) (local $2 i32) (local $3 i32) @@ -4599,7 +5575,7 @@ ) (get_local $1) ) - (func $~lib/internal/number/utoa32 (; 38 ;) (; has Stack IR ;) (type $ii) (param $0 i32) (result i32) + (func $~lib/internal/number/utoa32 (; 48 ;) (; has Stack IR ;) (type $ii) (param $0 i32) (result i32) (local $1 i32) (local $2 i32) (if @@ -4625,7 +5601,7 @@ ) (get_local $2) ) - (func $~lib/internal/number/decimalCount64 (; 39 ;) (; has Stack IR ;) (type $Ii) (param $0 i64) (result i32) + (func $~lib/internal/number/decimalCount64 (; 49 ;) (; has Stack IR ;) (type $Ii) (param $0 i64) (result i32) (if (result i32) (i64.lt_u (get_local $0) @@ -4691,14 +5667,14 @@ ) ) ) - (func $~lib/internal/number/utoa64_lut (; 40 ;) (; has Stack IR ;) (type $iIiv) (param $0 i32) (param $1 i64) (param $2 i32) + (func $~lib/internal/number/utoa64_lut (; 50 ;) (; has Stack IR ;) (type $iIiv) (param $0 i32) (param $1 i64) (param $2 i32) (local $3 i32) (local $4 i32) (local $5 i32) (local $6 i32) (set_local $3 (i32.load - (i32.const 2080) + (i32.const 2312) ) ) (loop $continue|0 @@ -4837,7 +5813,7 @@ (get_local $2) ) ) - (func $~lib/internal/number/utoa64 (; 41 ;) (; has Stack IR ;) (type $Ii) (param $0 i64) (result i32) + (func $~lib/internal/number/utoa64 (; 51 ;) (; has Stack IR ;) (type $Ii) (param $0 i64) (result i32) (local $1 i32) (local $2 i32) (local $3 i32) @@ -4887,7 +5863,7 @@ ) (get_local $2) ) - (func $~lib/internal/number/itoa64 (; 42 ;) (; has Stack IR ;) (type $Ii) (param $0 i64) (result i32) + (func $~lib/internal/number/itoa64 (; 52 ;) (; has Stack IR ;) (type $Ii) (param $0 i64) (result i32) (local $1 i32) (local $2 i32) (local $3 i32) @@ -4969,7 +5945,7 @@ ) (get_local $1) ) - (func $~lib/builtins/isFinite (; 43 ;) (; has Stack IR ;) (type $Fi) (param $0 f64) (result i32) + (func $~lib/builtins/isFinite (; 53 ;) (; has Stack IR ;) (type $Fi) (param $0 f64) (result i32) (f64.eq (f64.sub (get_local $0) @@ -4978,13 +5954,13 @@ (f64.const 0) ) ) - (func $~lib/builtins/isNaN (; 44 ;) (; has Stack IR ;) (type $Fi) (param $0 f64) (result i32) + (func $~lib/builtins/isNaN (; 54 ;) (; has Stack IR ;) (type $Fi) (param $0 f64) (result i32) (f64.ne (get_local $0) (get_local $0) ) ) - (func $~lib/internal/number/genDigits (; 45 ;) (; has Stack IR ;) (type $iIiIiIii) (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/internal/number/genDigits (; 55 ;) (; has Stack IR ;) (type $iIiIiIii) (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 i32) @@ -5038,7 +6014,7 @@ ) (set_local $12 (i32.load - (i32.const 4096) + (i32.const 4328) ) ) (loop $continue|0 @@ -5583,7 +6559,7 @@ ) ) ) - (func $~lib/internal/number/prettify (; 46 ;) (; has Stack IR ;) (type $iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $~lib/internal/number/prettify (; 56 ;) (; has Stack IR ;) (type $iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) (local $4 i32) (if @@ -5971,7 +6947,7 @@ ) ) ) - (func $~lib/internal/number/dtoa_core (; 47 ;) (; has Stack IR ;) (type $iFi) (param $0 i32) (param $1 f64) (result i32) + (func $~lib/internal/number/dtoa_core (; 57 ;) (; has Stack IR ;) (type $iFi) (param $0 i32) (param $1 f64) (result i32) (local $2 i64) (local $3 i32) (local $4 i64) @@ -6159,14 +7135,14 @@ ) (set_local $5 (i32.load - (i32.const 4024) + (i32.const 4256) ) ) (set_global $~lib/internal/number/_frc_pow (i64.load offset=8 (i32.add (i32.load - (i32.const 3760) + (i32.const 3992) ) (i32.shl (get_local $3) @@ -6476,7 +7452,7 @@ (get_local $14) ) ) - (func $~lib/string/String#substring (; 48 ;) (; has Stack IR ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/string/String#substring (; 58 ;) (; has Stack IR ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -6488,7 +7464,7 @@ (call $~lib/env/abort (i32.const 0) (i32.const 80) - (i32.const 264) + (i32.const 269) (i32.const 4) ) (unreachable) @@ -6592,10 +7568,10 @@ ) (get_local $2) ) - (func $~lib/allocator/arena/__memory_free (; 49 ;) (; has Stack IR ;) (type $FUNCSIG$v) + (func $~lib/allocator/arena/__memory_free (; 59 ;) (; has Stack IR ;) (type $FUNCSIG$v) (nop) ) - (func $~lib/internal/number/dtoa (; 50 ;) (; has Stack IR ;) (type $Fi) (param $0 f64) (result i32) + (func $~lib/internal/number/dtoa (; 60 ;) (; has Stack IR ;) (type $Fi) (param $0 f64) (result i32) (local $1 i32) (local $2 i32) (if @@ -6604,7 +7580,7 @@ (f64.const 0) ) (return - (i32.const 2656) + (i32.const 2888) ) ) (if @@ -6619,13 +7595,13 @@ (get_local $0) ) (return - (i32.const 2672) + (i32.const 2904) ) ) (return (select - (i32.const 2688) - (i32.const 2712) + (i32.const 2920) + (i32.const 2944) (f64.lt (get_local $0) (f64.const 0) @@ -6667,11 +7643,11 @@ (call $~lib/allocator/arena/__memory_free) (get_local $2) ) - (func $start (; 51 ;) (; has Stack IR ;) (type $v) + (func $start (; 61 ;) (; has Stack IR ;) (type $v) (local $0 i32) (local $1 i32) (set_global $~lib/allocator/arena/startOffset - (i32.const 5648) + (i32.const 5880) ) (set_global $~lib/allocator/arena/offset (get_global $~lib/allocator/arena/startOffset) @@ -6872,10 +7848,13 @@ ) ) (if - (i32.eqz - (call $~lib/string/String#includes + (i32.eq + (call $~lib/string/String#indexOf (get_global $std/string/str) + (i32.const 232) + (i32.const 0) ) + (i32.const -1) ) (block (call $~lib/env/abort @@ -7274,6 +8253,38 @@ (unreachable) ) ) + (if + (call $~lib/string/String#indexOf + (i32.const 280) + (i32.const 280) + (i32.const 0) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 54) + (i32.const 0) + ) + (unreachable) + ) + ) + (if + (call $~lib/string/String#indexOf + (get_global $std/string/str) + (get_global $std/string/str) + (i32.const 0) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 55) + (i32.const 0) + ) + (unreachable) + ) + ) (if (call $~lib/string/String#indexOf (get_global $std/string/str) @@ -7284,7 +8295,7 @@ (call $~lib/env/abort (i32.const 0) (i32.const 48) - (i32.const 54) + (i32.const 56) (i32.const 0) ) (unreachable) @@ -7303,7 +8314,7 @@ (call $~lib/env/abort (i32.const 0) (i32.const 48) - (i32.const 55) + (i32.const 57) (i32.const 0) ) (unreachable) @@ -7322,7 +8333,7 @@ (call $~lib/env/abort (i32.const 0) (i32.const 48) - (i32.const 56) + (i32.const 58) (i32.const 0) ) (unreachable) @@ -7341,7 +8352,7 @@ (call $~lib/env/abort (i32.const 0) (i32.const 48) - (i32.const 57) + (i32.const 59) (i32.const 0) ) (unreachable) @@ -7360,7 +8371,7 @@ (call $~lib/env/abort (i32.const 0) (i32.const 48) - (i32.const 58) + (i32.const 60) (i32.const 0) ) (unreachable) @@ -7379,7 +8390,7 @@ (call $~lib/env/abort (i32.const 0) (i32.const 48) - (i32.const 59) + (i32.const 61) (i32.const 0) ) (unreachable) @@ -7397,7 +8408,7 @@ (call $~lib/env/abort (i32.const 0) (i32.const 48) - (i32.const 61) + (i32.const 63) (i32.const 0) ) (unreachable) @@ -7418,7 +8429,7 @@ (call $~lib/env/abort (i32.const 0) (i32.const 48) - (i32.const 62) + (i32.const 64) (i32.const 0) ) (unreachable) @@ -7441,7 +8452,7 @@ (call $~lib/env/abort (i32.const 0) (i32.const 48) - (i32.const 63) + (i32.const 65) (i32.const 0) ) (unreachable) @@ -7462,7 +8473,7 @@ (call $~lib/env/abort (i32.const 0) (i32.const 48) - (i32.const 64) + (i32.const 66) (i32.const 0) ) (unreachable) @@ -7483,7 +8494,7 @@ (call $~lib/env/abort (i32.const 0) (i32.const 48) - (i32.const 65) + (i32.const 67) (i32.const 0) ) (unreachable) @@ -7504,7 +8515,7 @@ (call $~lib/env/abort (i32.const 0) (i32.const 48) - (i32.const 66) + (i32.const 68) (i32.const 0) ) (unreachable) @@ -7523,7 +8534,7 @@ (call $~lib/env/abort (i32.const 0) (i32.const 48) - (i32.const 67) + (i32.const 69) (i32.const 0) ) (unreachable) @@ -7542,7 +8553,7 @@ (call $~lib/env/abort (i32.const 0) (i32.const 48) - (i32.const 68) + (i32.const 70) (i32.const 0) ) (unreachable) @@ -7561,7 +8572,7 @@ (call $~lib/env/abort (i32.const 0) (i32.const 48) - (i32.const 69) + (i32.const 71) (i32.const 0) ) (unreachable) @@ -7580,7 +8591,7 @@ (call $~lib/env/abort (i32.const 0) (i32.const 48) - (i32.const 70) + (i32.const 72) (i32.const 0) ) (unreachable) @@ -7596,7 +8607,7 @@ (call $~lib/env/abort (i32.const 0) (i32.const 48) - (i32.const 71) + (i32.const 73) (i32.const 0) ) (unreachable) @@ -7613,7 +8624,7 @@ (call $~lib/env/abort (i32.const 0) (i32.const 48) - (i32.const 77) + (i32.const 79) (i32.const 0) ) (unreachable) @@ -7630,7 +8641,7 @@ (call $~lib/env/abort (i32.const 0) (i32.const 48) - (i32.const 78) + (i32.const 80) (i32.const 0) ) (unreachable) @@ -7647,7 +8658,7 @@ (call $~lib/env/abort (i32.const 0) (i32.const 48) - (i32.const 79) + (i32.const 81) (i32.const 0) ) (unreachable) @@ -7664,7 +8675,7 @@ (call $~lib/env/abort (i32.const 0) (i32.const 48) - (i32.const 80) + (i32.const 82) (i32.const 0) ) (unreachable) @@ -7681,7 +8692,7 @@ (call $~lib/env/abort (i32.const 0) (i32.const 48) - (i32.const 81) + (i32.const 83) (i32.const 0) ) (unreachable) @@ -7698,7 +8709,7 @@ (call $~lib/env/abort (i32.const 0) (i32.const 48) - (i32.const 82) + (i32.const 84) (i32.const 0) ) (unreachable) @@ -7715,7 +8726,7 @@ (call $~lib/env/abort (i32.const 0) (i32.const 48) - (i32.const 83) + (i32.const 85) (i32.const 0) ) (unreachable) @@ -7732,7 +8743,7 @@ (call $~lib/env/abort (i32.const 0) (i32.const 48) - (i32.const 84) + (i32.const 86) (i32.const 0) ) (unreachable) @@ -7749,7 +8760,7 @@ (call $~lib/env/abort (i32.const 0) (i32.const 48) - (i32.const 86) + (i32.const 88) (i32.const 0) ) (unreachable) @@ -7766,7 +8777,7 @@ (call $~lib/env/abort (i32.const 0) (i32.const 48) - (i32.const 87) + (i32.const 89) (i32.const 0) ) (unreachable) @@ -7783,7 +8794,7 @@ (call $~lib/env/abort (i32.const 0) (i32.const 48) - (i32.const 88) + (i32.const 90) (i32.const 0) ) (unreachable) @@ -7800,7 +8811,7 @@ (call $~lib/env/abort (i32.const 0) (i32.const 48) - (i32.const 89) + (i32.const 91) (i32.const 0) ) (unreachable) @@ -7817,7 +8828,7 @@ (call $~lib/env/abort (i32.const 0) (i32.const 48) - (i32.const 90) + (i32.const 92) (i32.const 0) ) (unreachable) @@ -7840,7 +8851,7 @@ (call $~lib/env/abort (i32.const 0) (i32.const 48) - (i32.const 93) + (i32.const 95) (i32.const 0) ) (unreachable) @@ -7857,7 +8868,7 @@ (call $~lib/env/abort (i32.const 0) (i32.const 48) - (i32.const 94) + (i32.const 96) (i32.const 0) ) (unreachable) @@ -7874,7 +8885,7 @@ (call $~lib/env/abort (i32.const 0) (i32.const 48) - (i32.const 95) + (i32.const 97) (i32.const 0) ) (unreachable) @@ -7891,7 +8902,7 @@ (call $~lib/env/abort (i32.const 0) (i32.const 48) - (i32.const 96) + (i32.const 98) (i32.const 0) ) (unreachable) @@ -7908,7 +8919,7 @@ (call $~lib/env/abort (i32.const 0) (i32.const 48) - (i32.const 98) + (i32.const 100) (i32.const 0) ) (unreachable) @@ -7925,7 +8936,7 @@ (call $~lib/env/abort (i32.const 0) (i32.const 48) - (i32.const 99) + (i32.const 101) (i32.const 0) ) (unreachable) @@ -7942,7 +8953,7 @@ (call $~lib/env/abort (i32.const 0) (i32.const 48) - (i32.const 100) + (i32.const 102) (i32.const 0) ) (unreachable) @@ -7959,7 +8970,7 @@ (call $~lib/env/abort (i32.const 0) (i32.const 48) - (i32.const 101) + (i32.const 103) (i32.const 0) ) (unreachable) @@ -7970,21 +8981,6 @@ (i32.const 664) (i32.const 656) ) - (block - (call $~lib/env/abort - (i32.const 0) - (i32.const 48) - (i32.const 102) - (i32.const 0) - ) - (unreachable) - ) - ) - (if - (call $~lib/string/String.__lt - (i32.const 648) - (get_global $std/string/nullStr) - ) (block (call $~lib/env/abort (i32.const 0) @@ -7995,6 +8991,21 @@ (unreachable) ) ) + (if + (call $~lib/string/String.__lt + (i32.const 648) + (get_global $std/string/nullStr) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 106) + (i32.const 0) + ) + (unreachable) + ) + ) (if (call $~lib/string/String.__lt (get_global $std/string/nullStr) @@ -8004,7 +9015,7 @@ (call $~lib/env/abort (i32.const 0) (i32.const 48) - (i32.const 105) + (i32.const 107) (i32.const 0) ) (unreachable) @@ -8021,7 +9032,7 @@ (call $~lib/env/abort (i32.const 0) (i32.const 48) - (i32.const 107) + (i32.const 109) (i32.const 0) ) (unreachable) @@ -8038,7 +9049,7 @@ (call $~lib/env/abort (i32.const 0) (i32.const 48) - (i32.const 108) + (i32.const 110) (i32.const 0) ) (unreachable) @@ -8055,7 +9066,7 @@ (call $~lib/env/abort (i32.const 0) (i32.const 48) - (i32.const 109) + (i32.const 111) (i32.const 0) ) (unreachable) @@ -8067,36 +9078,6 @@ (i32.const 288) ) ) - (block - (call $~lib/env/abort - (i32.const 0) - (i32.const 48) - (i32.const 110) - (i32.const 0) - ) - (unreachable) - ) - ) - (if - (call $~lib/string/String.__lt - (i32.const 288) - (i32.const 256) - ) - (block - (call $~lib/env/abort - (i32.const 0) - (i32.const 48) - (i32.const 111) - (i32.const 0) - ) - (unreachable) - ) - ) - (if - (call $~lib/string/String.__gt - (i32.const 256) - (i32.const 288) - ) (block (call $~lib/env/abort (i32.const 0) @@ -8109,7 +9090,7 @@ ) (if (call $~lib/string/String.__lt - (i32.const 256) + (i32.const 288) (i32.const 256) ) (block @@ -8125,7 +9106,7 @@ (if (call $~lib/string/String.__gt (i32.const 256) - (i32.const 256) + (i32.const 288) ) (block (call $~lib/env/abort @@ -8137,6 +9118,36 @@ (unreachable) ) ) + (if + (call $~lib/string/String.__lt + (i32.const 256) + (i32.const 256) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 115) + (i32.const 0) + ) + (unreachable) + ) + ) + (if + (call $~lib/string/String.__gt + (i32.const 256) + (i32.const 256) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 116) + (i32.const 0) + ) + (unreachable) + ) + ) (if (i32.eqz (call $~lib/string/String.__gte @@ -8148,7 +9159,7 @@ (call $~lib/env/abort (i32.const 0) (i32.const 48) - (i32.const 115) + (i32.const 117) (i32.const 0) ) (unreachable) @@ -8164,7 +9175,7 @@ (call $~lib/env/abort (i32.const 0) (i32.const 48) - (i32.const 116) + (i32.const 118) (i32.const 0) ) (unreachable) @@ -8202,7 +9213,7 @@ (call $~lib/env/abort (i32.const 0) (i32.const 48) - (i32.const 120) + (i32.const 122) (i32.const 0) ) (unreachable) @@ -8219,7 +9230,7 @@ (call $~lib/env/abort (i32.const 0) (i32.const 48) - (i32.const 122) + (i32.const 124) (i32.const 0) ) (unreachable) @@ -8239,7 +9250,7 @@ (call $~lib/env/abort (i32.const 0) (i32.const 48) - (i32.const 124) + (i32.const 126) (i32.const 0) ) (unreachable) @@ -8259,7 +9270,7 @@ (call $~lib/env/abort (i32.const 0) (i32.const 48) - (i32.const 125) + (i32.const 127) (i32.const 0) ) (unreachable) @@ -8279,7 +9290,7 @@ (call $~lib/env/abort (i32.const 0) (i32.const 48) - (i32.const 126) + (i32.const 128) (i32.const 0) ) (unreachable) @@ -8299,7 +9310,7 @@ (call $~lib/env/abort (i32.const 0) (i32.const 48) - (i32.const 127) + (i32.const 129) (i32.const 0) ) (unreachable) @@ -8319,7 +9330,7 @@ (call $~lib/env/abort (i32.const 0) (i32.const 48) - (i32.const 128) + (i32.const 130) (i32.const 0) ) (unreachable) @@ -8339,7 +9350,7 @@ (call $~lib/env/abort (i32.const 0) (i32.const 48) - (i32.const 129) + (i32.const 131) (i32.const 0) ) (unreachable) @@ -8359,7 +9370,7 @@ (call $~lib/env/abort (i32.const 0) (i32.const 48) - (i32.const 130) + (i32.const 132) (i32.const 0) ) (unreachable) @@ -8379,7 +9390,7 @@ (call $~lib/env/abort (i32.const 0) (i32.const 48) - (i32.const 131) + (i32.const 133) (i32.const 0) ) (unreachable) @@ -8399,7 +9410,881 @@ (call $~lib/env/abort (i32.const 0) (i32.const 48) - (i32.const 132) + (i32.const 134) + (i32.const 0) + ) + (unreachable) + ) + ) + (set_global $~argc + (i32.const 0) + ) + (set_global $std/string/sa + (call $~lib/string/String#split|trampoline + (i32.const 256) + (i32.const 0) + ) + ) + (if + (tee_local $0 + (i32.eq + (i32.load offset=4 + (get_global $std/string/sa) + ) + (i32.const 1) + ) + ) + (set_local $0 + (call $~lib/string/String.__eq + (call $~lib/array/Array#__get + (get_global $std/string/sa) + (i32.const 0) + ) + (i32.const 256) + ) + ) + ) + (if + (i32.eqz + (get_local $0) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 139) + (i32.const 0) + ) + (unreachable) + ) + ) + (set_global $~argc + (i32.const 1) + ) + (set_global $std/string/sa + (call $~lib/string/String#split|trampoline + (i32.const 256) + (i32.const 256) + ) + ) + (if + (i32.load offset=4 + (get_global $std/string/sa) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 141) + (i32.const 0) + ) + (unreachable) + ) + ) + (set_global $~argc + (i32.const 1) + ) + (set_global $std/string/sa + (call $~lib/string/String#split|trampoline + (i32.const 256) + (i32.const 432) + ) + ) + (if + (tee_local $0 + (i32.eq + (i32.load offset=4 + (get_global $std/string/sa) + ) + (i32.const 1) + ) + ) + (set_local $0 + (call $~lib/string/String.__eq + (call $~lib/array/Array#__get + (get_global $std/string/sa) + (i32.const 0) + ) + (i32.const 256) + ) + ) + ) + (if + (i32.eqz + (get_local $0) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 143) + (i32.const 0) + ) + (unreachable) + ) + ) + (set_global $~argc + (i32.const 1) + ) + (set_global $std/string/sa + (call $~lib/string/String#split|trampoline + (i32.const 896) + (i32.const 912) + ) + ) + (if + (tee_local $0 + (i32.eq + (i32.load offset=4 + (get_global $std/string/sa) + ) + (i32.const 1) + ) + ) + (set_local $0 + (call $~lib/string/String.__eq + (call $~lib/array/Array#__get + (get_global $std/string/sa) + (i32.const 0) + ) + (i32.const 896) + ) + ) + ) + (if + (i32.eqz + (get_local $0) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 145) + (i32.const 0) + ) + (unreachable) + ) + ) + (set_global $~argc + (i32.const 1) + ) + (set_global $std/string/sa + (call $~lib/string/String#split|trampoline + (i32.const 896) + (i32.const 432) + ) + ) + (if + (tee_local $0 + (i32.eq + (i32.load offset=4 + (get_global $std/string/sa) + ) + (i32.const 3) + ) + ) + (set_local $0 + (call $~lib/string/String.__eq + (call $~lib/array/Array#__get + (get_global $std/string/sa) + (i32.const 0) + ) + (i32.const 280) + ) + ) + ) + (if + (get_local $0) + (set_local $0 + (call $~lib/string/String.__eq + (call $~lib/array/Array#__get + (get_global $std/string/sa) + (i32.const 1) + ) + (i32.const 648) + ) + ) + ) + (if + (get_local $0) + (set_local $0 + (call $~lib/string/String.__eq + (call $~lib/array/Array#__get + (get_global $std/string/sa) + (i32.const 2) + ) + (i32.const 920) + ) + ) + ) + (if + (i32.eqz + (get_local $0) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 147) + (i32.const 0) + ) + (unreachable) + ) + ) + (set_global $~argc + (i32.const 1) + ) + (set_global $std/string/sa + (call $~lib/string/String#split|trampoline + (i32.const 928) + (i32.const 952) + ) + ) + (if + (tee_local $0 + (i32.eq + (i32.load offset=4 + (get_global $std/string/sa) + ) + (i32.const 3) + ) + ) + (set_local $0 + (call $~lib/string/String.__eq + (call $~lib/array/Array#__get + (get_global $std/string/sa) + (i32.const 0) + ) + (i32.const 280) + ) + ) + ) + (if + (get_local $0) + (set_local $0 + (call $~lib/string/String.__eq + (call $~lib/array/Array#__get + (get_global $std/string/sa) + (i32.const 1) + ) + (i32.const 648) + ) + ) + ) + (if + (get_local $0) + (set_local $0 + (call $~lib/string/String.__eq + (call $~lib/array/Array#__get + (get_global $std/string/sa) + (i32.const 2) + ) + (i32.const 920) + ) + ) + ) + (if + (i32.eqz + (get_local $0) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 149) + (i32.const 0) + ) + (unreachable) + ) + ) + (set_global $~argc + (i32.const 1) + ) + (set_global $std/string/sa + (call $~lib/string/String#split|trampoline + (i32.const 960) + (i32.const 432) + ) + ) + (if + (tee_local $0 + (i32.eq + (i32.load offset=4 + (get_global $std/string/sa) + ) + (i32.const 4) + ) + ) + (set_local $0 + (call $~lib/string/String.__eq + (call $~lib/array/Array#__get + (get_global $std/string/sa) + (i32.const 0) + ) + (i32.const 280) + ) + ) + ) + (if + (get_local $0) + (set_local $0 + (call $~lib/string/String.__eq + (call $~lib/array/Array#__get + (get_global $std/string/sa) + (i32.const 1) + ) + (i32.const 648) + ) + ) + ) + (if + (get_local $0) + (set_local $0 + (call $~lib/string/String.__eq + (call $~lib/array/Array#__get + (get_global $std/string/sa) + (i32.const 2) + ) + (i32.const 256) + ) + ) + ) + (if + (get_local $0) + (set_local $0 + (call $~lib/string/String.__eq + (call $~lib/array/Array#__get + (get_global $std/string/sa) + (i32.const 3) + ) + (i32.const 920) + ) + ) + ) + (if + (i32.eqz + (get_local $0) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 151) + (i32.const 0) + ) + (unreachable) + ) + ) + (set_global $~argc + (i32.const 1) + ) + (set_global $std/string/sa + (call $~lib/string/String#split|trampoline + (i32.const 976) + (i32.const 432) + ) + ) + (if + (tee_local $0 + (i32.eq + (i32.load offset=4 + (get_global $std/string/sa) + ) + (i32.const 4) + ) + ) + (set_local $0 + (call $~lib/string/String.__eq + (call $~lib/array/Array#__get + (get_global $std/string/sa) + (i32.const 0) + ) + (i32.const 256) + ) + ) + ) + (if + (get_local $0) + (set_local $0 + (call $~lib/string/String.__eq + (call $~lib/array/Array#__get + (get_global $std/string/sa) + (i32.const 1) + ) + (i32.const 280) + ) + ) + ) + (if + (get_local $0) + (set_local $0 + (call $~lib/string/String.__eq + (call $~lib/array/Array#__get + (get_global $std/string/sa) + (i32.const 2) + ) + (i32.const 648) + ) + ) + ) + (if + (get_local $0) + (set_local $0 + (call $~lib/string/String.__eq + (call $~lib/array/Array#__get + (get_global $std/string/sa) + (i32.const 3) + ) + (i32.const 920) + ) + ) + ) + (if + (i32.eqz + (get_local $0) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 153) + (i32.const 0) + ) + (unreachable) + ) + ) + (set_global $~argc + (i32.const 1) + ) + (set_global $std/string/sa + (call $~lib/string/String#split|trampoline + (i32.const 992) + (i32.const 432) + ) + ) + (if + (tee_local $0 + (i32.eq + (i32.load offset=4 + (get_global $std/string/sa) + ) + (i32.const 4) + ) + ) + (set_local $0 + (call $~lib/string/String.__eq + (call $~lib/array/Array#__get + (get_global $std/string/sa) + (i32.const 0) + ) + (i32.const 280) + ) + ) + ) + (if + (get_local $0) + (set_local $0 + (call $~lib/string/String.__eq + (call $~lib/array/Array#__get + (get_global $std/string/sa) + (i32.const 1) + ) + (i32.const 648) + ) + ) + ) + (if + (get_local $0) + (set_local $0 + (call $~lib/string/String.__eq + (call $~lib/array/Array#__get + (get_global $std/string/sa) + (i32.const 2) + ) + (i32.const 920) + ) + ) + ) + (if + (get_local $0) + (set_local $0 + (call $~lib/string/String.__eq + (call $~lib/array/Array#__get + (get_global $std/string/sa) + (i32.const 3) + ) + (i32.const 256) + ) + ) + ) + (if + (i32.eqz + (get_local $0) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 155) + (i32.const 0) + ) + (unreachable) + ) + ) + (set_global $~argc + (i32.const 1) + ) + (set_global $std/string/sa + (call $~lib/string/String#split|trampoline + (i32.const 288) + (i32.const 256) + ) + ) + (if + (tee_local $0 + (i32.eq + (i32.load offset=4 + (get_global $std/string/sa) + ) + (i32.const 3) + ) + ) + (set_local $0 + (call $~lib/string/String.__eq + (call $~lib/array/Array#__get + (get_global $std/string/sa) + (i32.const 0) + ) + (i32.const 280) + ) + ) + ) + (if + (get_local $0) + (set_local $0 + (call $~lib/string/String.__eq + (call $~lib/array/Array#__get + (get_global $std/string/sa) + (i32.const 1) + ) + (i32.const 648) + ) + ) + ) + (if + (get_local $0) + (set_local $0 + (call $~lib/string/String.__eq + (call $~lib/array/Array#__get + (get_global $std/string/sa) + (i32.const 2) + ) + (i32.const 920) + ) + ) + ) + (if + (i32.eqz + (get_local $0) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 157) + (i32.const 0) + ) + (unreachable) + ) + ) + (set_global $std/string/sa + (call $~lib/string/String#split + (i32.const 288) + (i32.const 256) + (i32.const 0) + ) + ) + (if + (i32.load offset=4 + (get_global $std/string/sa) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 159) + (i32.const 0) + ) + (unreachable) + ) + ) + (set_global $std/string/sa + (call $~lib/string/String#split + (i32.const 288) + (i32.const 256) + (i32.const 1) + ) + ) + (if + (tee_local $0 + (i32.eq + (i32.load offset=4 + (get_global $std/string/sa) + ) + (i32.const 1) + ) + ) + (set_local $0 + (call $~lib/string/String.__eq + (call $~lib/array/Array#__get + (get_global $std/string/sa) + (i32.const 0) + ) + (i32.const 280) + ) + ) + ) + (if + (i32.eqz + (get_local $0) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 161) + (i32.const 0) + ) + (unreachable) + ) + ) + (set_global $std/string/sa + (call $~lib/string/String#split + (i32.const 896) + (i32.const 432) + (i32.const 1) + ) + ) + (if + (tee_local $0 + (i32.eq + (i32.load offset=4 + (get_global $std/string/sa) + ) + (i32.const 1) + ) + ) + (set_local $0 + (call $~lib/string/String.__eq + (call $~lib/array/Array#__get + (get_global $std/string/sa) + (i32.const 0) + ) + (i32.const 280) + ) + ) + ) + (if + (i32.eqz + (get_local $0) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 163) + (i32.const 0) + ) + (unreachable) + ) + ) + (set_global $std/string/sa + (call $~lib/string/String#split + (i32.const 288) + (i32.const 256) + (i32.const 4) + ) + ) + (if + (tee_local $0 + (i32.eq + (i32.load offset=4 + (get_global $std/string/sa) + ) + (i32.const 3) + ) + ) + (set_local $0 + (call $~lib/string/String.__eq + (call $~lib/array/Array#__get + (get_global $std/string/sa) + (i32.const 0) + ) + (i32.const 280) + ) + ) + ) + (if + (get_local $0) + (set_local $0 + (call $~lib/string/String.__eq + (call $~lib/array/Array#__get + (get_global $std/string/sa) + (i32.const 1) + ) + (i32.const 648) + ) + ) + ) + (if + (get_local $0) + (set_local $0 + (call $~lib/string/String.__eq + (call $~lib/array/Array#__get + (get_global $std/string/sa) + (i32.const 2) + ) + (i32.const 920) + ) + ) + ) + (if + (i32.eqz + (get_local $0) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 165) + (i32.const 0) + ) + (unreachable) + ) + ) + (set_global $std/string/sa + (call $~lib/string/String#split + (i32.const 288) + (i32.const 256) + (i32.const -1) + ) + ) + (if + (tee_local $0 + (i32.eq + (i32.load offset=4 + (get_global $std/string/sa) + ) + (i32.const 3) + ) + ) + (set_local $0 + (call $~lib/string/String.__eq + (call $~lib/array/Array#__get + (get_global $std/string/sa) + (i32.const 0) + ) + (i32.const 280) + ) + ) + ) + (if + (get_local $0) + (set_local $0 + (call $~lib/string/String.__eq + (call $~lib/array/Array#__get + (get_global $std/string/sa) + (i32.const 1) + ) + (i32.const 648) + ) + ) + ) + (if + (get_local $0) + (set_local $0 + (call $~lib/string/String.__eq + (call $~lib/array/Array#__get + (get_global $std/string/sa) + (i32.const 2) + ) + (i32.const 920) + ) + ) + ) + (if + (i32.eqz + (get_local $0) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 167) + (i32.const 0) + ) + (unreachable) + ) + ) + (set_global $std/string/sa + (call $~lib/string/String#split + (i32.const 896) + (i32.const 432) + (i32.const -1) + ) + ) + (if + (tee_local $0 + (i32.eq + (i32.load offset=4 + (get_global $std/string/sa) + ) + (i32.const 3) + ) + ) + (set_local $0 + (call $~lib/string/String.__eq + (call $~lib/array/Array#__get + (get_global $std/string/sa) + (i32.const 0) + ) + (i32.const 280) + ) + ) + ) + (if + (get_local $0) + (set_local $0 + (call $~lib/string/String.__eq + (call $~lib/array/Array#__get + (get_global $std/string/sa) + (i32.const 1) + ) + (i32.const 648) + ) + ) + ) + (if + (get_local $0) + (set_local $0 + (call $~lib/string/String.__eq + (call $~lib/array/Array#__get + (get_global $std/string/sa) + (i32.const 2) + ) + (i32.const 920) + ) + ) + ) + (if + (i32.eqz + (get_local $0) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 169) (i32.const 0) ) (unreachable) @@ -8418,7 +10303,7 @@ (call $~lib/env/abort (i32.const 0) (i32.const 48) - (i32.const 134) + (i32.const 171) (i32.const 0) ) (unreachable) @@ -8437,7 +10322,7 @@ (call $~lib/env/abort (i32.const 0) (i32.const 48) - (i32.const 135) + (i32.const 172) (i32.const 0) ) (unreachable) @@ -8449,14 +10334,14 @@ (call $~lib/internal/number/itoa32 (i32.const 8) ) - (i32.const 1296) + (i32.const 1528) ) ) (block (call $~lib/env/abort (i32.const 0) (i32.const 48) - (i32.const 136) + (i32.const 173) (i32.const 0) ) (unreachable) @@ -8475,7 +10360,7 @@ (call $~lib/env/abort (i32.const 0) (i32.const 48) - (i32.const 137) + (i32.const 174) (i32.const 0) ) (unreachable) @@ -8487,14 +10372,14 @@ (call $~lib/internal/number/itoa32 (i32.const -1000) ) - (i32.const 1304) + (i32.const 1536) ) ) (block (call $~lib/env/abort (i32.const 0) (i32.const 48) - (i32.const 138) + (i32.const 175) (i32.const 0) ) (unreachable) @@ -8506,14 +10391,14 @@ (call $~lib/internal/number/itoa32 (i32.const 1234) ) - (i32.const 1320) + (i32.const 1552) ) ) (block (call $~lib/env/abort (i32.const 0) (i32.const 48) - (i32.const 139) + (i32.const 176) (i32.const 0) ) (unreachable) @@ -8525,14 +10410,14 @@ (call $~lib/internal/number/itoa32 (i32.const 12345) ) - (i32.const 1336) + (i32.const 1568) ) ) (block (call $~lib/env/abort (i32.const 0) (i32.const 48) - (i32.const 140) + (i32.const 177) (i32.const 0) ) (unreachable) @@ -8544,14 +10429,14 @@ (call $~lib/internal/number/itoa32 (i32.const 123456) ) - (i32.const 1352) + (i32.const 1584) ) ) (block (call $~lib/env/abort (i32.const 0) (i32.const 48) - (i32.const 141) + (i32.const 178) (i32.const 0) ) (unreachable) @@ -8563,14 +10448,14 @@ (call $~lib/internal/number/itoa32 (i32.const 1111111) ) - (i32.const 1368) + (i32.const 1600) ) ) (block (call $~lib/env/abort (i32.const 0) (i32.const 48) - (i32.const 142) + (i32.const 179) (i32.const 0) ) (unreachable) @@ -8582,14 +10467,14 @@ (call $~lib/internal/number/itoa32 (i32.const 1234567) ) - (i32.const 1392) + (i32.const 1624) ) ) (block (call $~lib/env/abort (i32.const 0) (i32.const 48) - (i32.const 143) + (i32.const 180) (i32.const 0) ) (unreachable) @@ -8601,14 +10486,14 @@ (call $~lib/internal/number/itoa32 (i32.const 2147483646) ) - (i32.const 1416) + (i32.const 1648) ) ) (block (call $~lib/env/abort (i32.const 0) (i32.const 48) - (i32.const 144) + (i32.const 181) (i32.const 0) ) (unreachable) @@ -8620,14 +10505,14 @@ (call $~lib/internal/number/itoa32 (i32.const 2147483647) ) - (i32.const 1440) + (i32.const 1672) ) ) (block (call $~lib/env/abort (i32.const 0) (i32.const 48) - (i32.const 145) + (i32.const 182) (i32.const 0) ) (unreachable) @@ -8639,14 +10524,14 @@ (call $~lib/internal/number/itoa32 (i32.const -2147483648) ) - (i32.const 1464) + (i32.const 1696) ) ) (block (call $~lib/env/abort (i32.const 0) (i32.const 48) - (i32.const 146) + (i32.const 183) (i32.const 0) ) (unreachable) @@ -8658,14 +10543,14 @@ (call $~lib/internal/number/itoa32 (i32.const -1) ) - (i32.const 1496) + (i32.const 1728) ) ) (block (call $~lib/env/abort (i32.const 0) (i32.const 48) - (i32.const 147) + (i32.const 184) (i32.const 0) ) (unreachable) @@ -8684,7 +10569,7 @@ (call $~lib/env/abort (i32.const 0) (i32.const 48) - (i32.const 149) + (i32.const 186) (i32.const 0) ) (unreachable) @@ -8696,634 +10581,7 @@ (call $~lib/internal/number/utoa32 (i32.const 1000) ) - (i32.const 1504) - ) - ) - (block - (call $~lib/env/abort - (i32.const 0) - (i32.const 48) - (i32.const 150) - (i32.const 0) - ) - (unreachable) - ) - ) - (if - (i32.eqz - (call $~lib/string/String.__eq - (call $~lib/internal/number/utoa32 - (i32.const 2147483647) - ) - (i32.const 1440) - ) - ) - (block - (call $~lib/env/abort - (i32.const 0) - (i32.const 48) - (i32.const 151) - (i32.const 0) - ) - (unreachable) - ) - ) - (if - (i32.eqz - (call $~lib/string/String.__eq - (call $~lib/internal/number/utoa32 - (i32.const -2147483648) - ) - (i32.const 1520) - ) - ) - (block - (call $~lib/env/abort - (i32.const 0) - (i32.const 48) - (i32.const 152) - (i32.const 0) - ) - (unreachable) - ) - ) - (if - (i32.eqz - (call $~lib/string/String.__eq - (call $~lib/internal/number/utoa32 - (i32.const -1) - ) - (i32.const 1544) - ) - ) - (block - (call $~lib/env/abort - (i32.const 0) - (i32.const 48) - (i32.const 153) - (i32.const 0) - ) - (unreachable) - ) - ) - (if - (i32.eqz - (call $~lib/string/String.__eq - (call $~lib/internal/number/utoa64 - (i64.const 0) - ) - (i32.const 480) - ) - ) - (block - (call $~lib/env/abort - (i32.const 0) - (i32.const 48) - (i32.const 155) - (i32.const 0) - ) - (unreachable) - ) - ) - (if - (i32.eqz - (call $~lib/string/String.__eq - (call $~lib/internal/number/utoa64 - (i64.const 1234) - ) - (i32.const 1320) - ) - ) - (block - (call $~lib/env/abort - (i32.const 0) - (i32.const 48) - (i32.const 156) - (i32.const 0) - ) - (unreachable) - ) - ) - (if - (i32.eqz - (call $~lib/string/String.__eq - (call $~lib/internal/number/utoa64 - (i64.const 99999999) - ) - (i32.const 2088) - ) - ) - (block - (call $~lib/env/abort - (i32.const 0) - (i32.const 48) - (i32.const 157) - (i32.const 0) - ) - (unreachable) - ) - ) - (if - (i32.eqz - (call $~lib/string/String.__eq - (call $~lib/internal/number/utoa64 - (i64.const 100000000) - ) - (i32.const 2112) - ) - ) - (block - (call $~lib/env/abort - (i32.const 0) - (i32.const 48) - (i32.const 158) - (i32.const 0) - ) - (unreachable) - ) - ) - (if - (i32.eqz - (call $~lib/string/String.__eq - (call $~lib/internal/number/utoa64 - (i64.const 4294967295) - ) - (i32.const 1544) - ) - ) - (block - (call $~lib/env/abort - (i32.const 0) - (i32.const 48) - (i32.const 159) - (i32.const 0) - ) - (unreachable) - ) - ) - (if - (i32.eqz - (call $~lib/string/String.__eq - (call $~lib/internal/number/utoa64 - (i64.const 68719476735) - ) - (i32.const 2136) - ) - ) - (block - (call $~lib/env/abort - (i32.const 0) - (i32.const 48) - (i32.const 160) - (i32.const 0) - ) - (unreachable) - ) - ) - (if - (i32.eqz - (call $~lib/string/String.__eq - (call $~lib/internal/number/utoa64 - (i64.const 868719476735) - ) - (i32.const 2168) - ) - ) - (block - (call $~lib/env/abort - (i32.const 0) - (i32.const 48) - (i32.const 161) - (i32.const 0) - ) - (unreachable) - ) - ) - (if - (i32.eqz - (call $~lib/string/String.__eq - (call $~lib/internal/number/utoa64 - (i64.const 999868719476735) - ) - (i32.const 2200) - ) - ) - (block - (call $~lib/env/abort - (i32.const 0) - (i32.const 48) - (i32.const 162) - (i32.const 0) - ) - (unreachable) - ) - ) - (if - (i32.eqz - (call $~lib/string/String.__eq - (call $~lib/internal/number/utoa64 - (i64.const 9999868719476735) - ) - (i32.const 2240) - ) - ) - (block - (call $~lib/env/abort - (i32.const 0) - (i32.const 48) - (i32.const 163) - (i32.const 0) - ) - (unreachable) - ) - ) - (if - (i32.eqz - (call $~lib/string/String.__eq - (call $~lib/internal/number/utoa64 - (i64.const 19999868719476735) - ) - (i32.const 2280) - ) - ) - (block - (call $~lib/env/abort - (i32.const 0) - (i32.const 48) - (i32.const 164) - (i32.const 0) - ) - (unreachable) - ) - ) - (if - (i32.eqz - (call $~lib/string/String.__eq - (call $~lib/internal/number/utoa64 - (i64.const -1) - ) - (i32.const 2320) - ) - ) - (block - (call $~lib/env/abort - (i32.const 0) - (i32.const 48) - (i32.const 165) - (i32.const 0) - ) - (unreachable) - ) - ) - (if - (i32.eqz - (call $~lib/string/String.__eq - (call $~lib/internal/number/itoa64 - (i64.const 0) - ) - (i32.const 480) - ) - ) - (block - (call $~lib/env/abort - (i32.const 0) - (i32.const 48) - (i32.const 167) - (i32.const 0) - ) - (unreachable) - ) - ) - (if - (i32.eqz - (call $~lib/string/String.__eq - (call $~lib/internal/number/itoa64 - (i64.const -1234) - ) - (i32.const 2368) - ) - ) - (block - (call $~lib/env/abort - (i32.const 0) - (i32.const 48) - (i32.const 168) - (i32.const 0) - ) - (unreachable) - ) - ) - (if - (i32.eqz - (call $~lib/string/String.__eq - (call $~lib/internal/number/itoa64 - (i64.const 4294967295) - ) - (i32.const 1544) - ) - ) - (block - (call $~lib/env/abort - (i32.const 0) - (i32.const 48) - (i32.const 169) - (i32.const 0) - ) - (unreachable) - ) - ) - (if - (i32.eqz - (call $~lib/string/String.__eq - (call $~lib/internal/number/itoa64 - (i64.const -4294967295) - ) - (i32.const 2384) - ) - ) - (block - (call $~lib/env/abort - (i32.const 0) - (i32.const 48) - (i32.const 170) - (i32.const 0) - ) - (unreachable) - ) - ) - (if - (i32.eqz - (call $~lib/string/String.__eq - (call $~lib/internal/number/itoa64 - (i64.const 68719476735) - ) - (i32.const 2136) - ) - ) - (block - (call $~lib/env/abort - (i32.const 0) - (i32.const 48) - (i32.const 171) - (i32.const 0) - ) - (unreachable) - ) - ) - (if - (i32.eqz - (call $~lib/string/String.__eq - (call $~lib/internal/number/itoa64 - (i64.const -68719476735) - ) - (i32.const 2416) - ) - ) - (block - (call $~lib/env/abort - (i32.const 0) - (i32.const 48) - (i32.const 172) - (i32.const 0) - ) - (unreachable) - ) - ) - (if - (i32.eqz - (call $~lib/string/String.__eq - (call $~lib/internal/number/itoa64 - (i64.const -868719476735) - ) - (i32.const 2448) - ) - ) - (block - (call $~lib/env/abort - (i32.const 0) - (i32.const 48) - (i32.const 173) - (i32.const 0) - ) - (unreachable) - ) - ) - (if - (i32.eqz - (call $~lib/string/String.__eq - (call $~lib/internal/number/itoa64 - (i64.const -999868719476735) - ) - (i32.const 2480) - ) - ) - (block - (call $~lib/env/abort - (i32.const 0) - (i32.const 48) - (i32.const 174) - (i32.const 0) - ) - (unreachable) - ) - ) - (if - (i32.eqz - (call $~lib/string/String.__eq - (call $~lib/internal/number/itoa64 - (i64.const -19999868719476735) - ) - (i32.const 2520) - ) - ) - (block - (call $~lib/env/abort - (i32.const 0) - (i32.const 48) - (i32.const 175) - (i32.const 0) - ) - (unreachable) - ) - ) - (if - (i32.eqz - (call $~lib/string/String.__eq - (call $~lib/internal/number/itoa64 - (i64.const 9223372036854775807) - ) - (i32.const 2560) - ) - ) - (block - (call $~lib/env/abort - (i32.const 0) - (i32.const 48) - (i32.const 176) - (i32.const 0) - ) - (unreachable) - ) - ) - (if - (i32.eqz - (call $~lib/string/String.__eq - (call $~lib/internal/number/itoa64 - (i64.const -9223372036854775808) - ) - (i32.const 2608) - ) - ) - (block - (call $~lib/env/abort - (i32.const 0) - (i32.const 48) - (i32.const 177) - (i32.const 0) - ) - (unreachable) - ) - ) - (if - (i32.eqz - (call $~lib/string/String.__eq - (call $~lib/internal/number/dtoa - (f64.const 0) - ) - (i32.const 2656) - ) - ) - (block - (call $~lib/env/abort - (i32.const 0) - (i32.const 48) - (i32.const 180) - (i32.const 0) - ) - (unreachable) - ) - ) - (if - (i32.eqz - (call $~lib/string/String.__eq - (call $~lib/internal/number/dtoa - (f64.const -0) - ) - (i32.const 2656) - ) - ) - (block - (call $~lib/env/abort - (i32.const 0) - (i32.const 48) - (i32.const 181) - (i32.const 0) - ) - (unreachable) - ) - ) - (if - (i32.eqz - (call $~lib/string/String.__eq - (call $~lib/internal/number/dtoa - (f64.const nan:0x8000000000000) - ) - (i32.const 2672) - ) - ) - (block - (call $~lib/env/abort - (i32.const 0) - (i32.const 48) - (i32.const 182) - (i32.const 0) - ) - (unreachable) - ) - ) - (if - (i32.eqz - (call $~lib/string/String.__eq - (call $~lib/internal/number/dtoa - (f64.const inf) - ) - (i32.const 2712) - ) - ) - (block - (call $~lib/env/abort - (i32.const 0) - (i32.const 48) - (i32.const 183) - (i32.const 0) - ) - (unreachable) - ) - ) - (if - (i32.eqz - (call $~lib/string/String.__eq - (call $~lib/internal/number/dtoa - (f64.const -inf) - ) - (i32.const 2688) - ) - ) - (block - (call $~lib/env/abort - (i32.const 0) - (i32.const 48) - (i32.const 184) - (i32.const 0) - ) - (unreachable) - ) - ) - (if - (i32.eqz - (call $~lib/string/String.__eq - (call $~lib/internal/number/dtoa - (f64.const 2.220446049250313e-16) - ) - (i32.const 4104) - ) - ) - (block - (call $~lib/env/abort - (i32.const 0) - (i32.const 48) - (i32.const 185) - (i32.const 0) - ) - (unreachable) - ) - ) - (if - (i32.eqz - (call $~lib/string/String.__eq - (call $~lib/internal/number/dtoa - (f64.const -2.220446049250313e-16) - ) - (i32.const 4152) - ) - ) - (block - (call $~lib/env/abort - (i32.const 0) - (i32.const 48) - (i32.const 186) - (i32.const 0) - ) - (unreachable) - ) - ) - (if - (i32.eqz - (call $~lib/string/String.__eq - (call $~lib/internal/number/dtoa - (f64.const 1797693134862315708145274e284) - ) - (i32.const 4200) + (i32.const 1736) ) ) (block @@ -9339,10 +10597,10 @@ (if (i32.eqz (call $~lib/string/String.__eq - (call $~lib/internal/number/dtoa - (f64.const -1797693134862315708145274e284) + (call $~lib/internal/number/utoa32 + (i32.const 2147483647) ) - (i32.const 4256) + (i32.const 1672) ) ) (block @@ -9358,10 +10616,10 @@ (if (i32.eqz (call $~lib/string/String.__eq - (call $~lib/internal/number/dtoa - (f64.const 4185580496821356722454785e274) + (call $~lib/internal/number/utoa32 + (i32.const -2147483648) ) - (i32.const 4312) + (i32.const 1752) ) ) (block @@ -9377,10 +10635,10 @@ (if (i32.eqz (call $~lib/string/String.__eq - (call $~lib/internal/number/dtoa - (f64.const 2.2250738585072014e-308) + (call $~lib/internal/number/utoa32 + (i32.const -1) ) - (i32.const 4360) + (i32.const 1776) ) ) (block @@ -9396,29 +10654,10 @@ (if (i32.eqz (call $~lib/string/String.__eq - (call $~lib/internal/number/dtoa - (f64.const 2.9802322387695312e-08) + (call $~lib/internal/number/utoa64 + (i64.const 0) ) - (i32.const 4416) - ) - ) - (block - (call $~lib/env/abort - (i32.const 0) - (i32.const 48) - (i32.const 191) - (i32.const 0) - ) - (unreachable) - ) - ) - (if - (i32.eqz - (call $~lib/string/String.__eq - (call $~lib/internal/number/dtoa - (f64.const -21098088986959632) - ) - (i32.const 4464) + (i32.const 480) ) ) (block @@ -9434,10 +10673,10 @@ (if (i32.eqz (call $~lib/string/String.__eq - (call $~lib/internal/number/dtoa - (f64.const 4.940656e-318) + (call $~lib/internal/number/utoa64 + (i64.const 1234) ) - (i32.const 4512) + (i32.const 1552) ) ) (block @@ -9453,10 +10692,10 @@ (if (i32.eqz (call $~lib/string/String.__eq - (call $~lib/internal/number/dtoa - (f64.const 9060801153433600) + (call $~lib/internal/number/utoa64 + (i64.const 99999999) ) - (i32.const 4544) + (i32.const 2320) ) ) (block @@ -9472,10 +10711,10 @@ (if (i32.eqz (call $~lib/string/String.__eq - (call $~lib/internal/number/dtoa - (f64.const 4708356024711512064) + (call $~lib/internal/number/utoa64 + (i64.const 100000000) ) - (i32.const 4584) + (i32.const 2344) ) ) (block @@ -9491,10 +10730,10 @@ (if (i32.eqz (call $~lib/string/String.__eq - (call $~lib/internal/number/dtoa - (f64.const 9409340012568248320) + (call $~lib/internal/number/utoa64 + (i64.const 4294967295) ) - (i32.const 4632) + (i32.const 1776) ) ) (block @@ -9510,10 +10749,10 @@ (if (i32.eqz (call $~lib/string/String.__eq - (call $~lib/internal/number/dtoa - (f64.const 5e-324) + (call $~lib/internal/number/utoa64 + (i64.const 68719476735) ) - (i32.const 4680) + (i32.const 2368) ) ) (block @@ -9526,11 +10765,543 @@ (unreachable) ) ) + (if + (i32.eqz + (call $~lib/string/String.__eq + (call $~lib/internal/number/utoa64 + (i64.const 868719476735) + ) + (i32.const 2400) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 198) + (i32.const 0) + ) + (unreachable) + ) + ) + (if + (i32.eqz + (call $~lib/string/String.__eq + (call $~lib/internal/number/utoa64 + (i64.const 999868719476735) + ) + (i32.const 2432) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 199) + (i32.const 0) + ) + (unreachable) + ) + ) + (if + (i32.eqz + (call $~lib/string/String.__eq + (call $~lib/internal/number/utoa64 + (i64.const 9999868719476735) + ) + (i32.const 2472) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 200) + (i32.const 0) + ) + (unreachable) + ) + ) + (if + (i32.eqz + (call $~lib/string/String.__eq + (call $~lib/internal/number/utoa64 + (i64.const 19999868719476735) + ) + (i32.const 2512) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 201) + (i32.const 0) + ) + (unreachable) + ) + ) + (if + (i32.eqz + (call $~lib/string/String.__eq + (call $~lib/internal/number/utoa64 + (i64.const -1) + ) + (i32.const 2552) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 202) + (i32.const 0) + ) + (unreachable) + ) + ) + (if + (i32.eqz + (call $~lib/string/String.__eq + (call $~lib/internal/number/itoa64 + (i64.const 0) + ) + (i32.const 480) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 204) + (i32.const 0) + ) + (unreachable) + ) + ) + (if + (i32.eqz + (call $~lib/string/String.__eq + (call $~lib/internal/number/itoa64 + (i64.const -1234) + ) + (i32.const 2600) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 205) + (i32.const 0) + ) + (unreachable) + ) + ) + (if + (i32.eqz + (call $~lib/string/String.__eq + (call $~lib/internal/number/itoa64 + (i64.const 4294967295) + ) + (i32.const 1776) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 206) + (i32.const 0) + ) + (unreachable) + ) + ) + (if + (i32.eqz + (call $~lib/string/String.__eq + (call $~lib/internal/number/itoa64 + (i64.const -4294967295) + ) + (i32.const 2616) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 207) + (i32.const 0) + ) + (unreachable) + ) + ) + (if + (i32.eqz + (call $~lib/string/String.__eq + (call $~lib/internal/number/itoa64 + (i64.const 68719476735) + ) + (i32.const 2368) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 208) + (i32.const 0) + ) + (unreachable) + ) + ) + (if + (i32.eqz + (call $~lib/string/String.__eq + (call $~lib/internal/number/itoa64 + (i64.const -68719476735) + ) + (i32.const 2648) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 209) + (i32.const 0) + ) + (unreachable) + ) + ) + (if + (i32.eqz + (call $~lib/string/String.__eq + (call $~lib/internal/number/itoa64 + (i64.const -868719476735) + ) + (i32.const 2680) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 210) + (i32.const 0) + ) + (unreachable) + ) + ) + (if + (i32.eqz + (call $~lib/string/String.__eq + (call $~lib/internal/number/itoa64 + (i64.const -999868719476735) + ) + (i32.const 2712) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 211) + (i32.const 0) + ) + (unreachable) + ) + ) + (if + (i32.eqz + (call $~lib/string/String.__eq + (call $~lib/internal/number/itoa64 + (i64.const -19999868719476735) + ) + (i32.const 2752) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 212) + (i32.const 0) + ) + (unreachable) + ) + ) + (if + (i32.eqz + (call $~lib/string/String.__eq + (call $~lib/internal/number/itoa64 + (i64.const 9223372036854775807) + ) + (i32.const 2792) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 213) + (i32.const 0) + ) + (unreachable) + ) + ) + (if + (i32.eqz + (call $~lib/string/String.__eq + (call $~lib/internal/number/itoa64 + (i64.const -9223372036854775808) + ) + (i32.const 2840) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 214) + (i32.const 0) + ) + (unreachable) + ) + ) (if (i32.eqz (call $~lib/string/String.__eq (call $~lib/internal/number/dtoa - (f64.const 1) + (f64.const 0) + ) + (i32.const 2888) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 217) + (i32.const 0) + ) + (unreachable) + ) + ) + (if + (i32.eqz + (call $~lib/string/String.__eq + (call $~lib/internal/number/dtoa + (f64.const -0) + ) + (i32.const 2888) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 218) + (i32.const 0) + ) + (unreachable) + ) + ) + (if + (i32.eqz + (call $~lib/string/String.__eq + (call $~lib/internal/number/dtoa + (f64.const nan:0x8000000000000) + ) + (i32.const 2904) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 219) + (i32.const 0) + ) + (unreachable) + ) + ) + (if + (i32.eqz + (call $~lib/string/String.__eq + (call $~lib/internal/number/dtoa + (f64.const inf) + ) + (i32.const 2944) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 220) + (i32.const 0) + ) + (unreachable) + ) + ) + (if + (i32.eqz + (call $~lib/string/String.__eq + (call $~lib/internal/number/dtoa + (f64.const -inf) + ) + (i32.const 2920) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 221) + (i32.const 0) + ) + (unreachable) + ) + ) + (if + (i32.eqz + (call $~lib/string/String.__eq + (call $~lib/internal/number/dtoa + (f64.const 2.220446049250313e-16) + ) + (i32.const 4336) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 222) + (i32.const 0) + ) + (unreachable) + ) + ) + (if + (i32.eqz + (call $~lib/string/String.__eq + (call $~lib/internal/number/dtoa + (f64.const -2.220446049250313e-16) + ) + (i32.const 4384) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 223) + (i32.const 0) + ) + (unreachable) + ) + ) + (if + (i32.eqz + (call $~lib/string/String.__eq + (call $~lib/internal/number/dtoa + (f64.const 1797693134862315708145274e284) + ) + (i32.const 4432) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 224) + (i32.const 0) + ) + (unreachable) + ) + ) + (if + (i32.eqz + (call $~lib/string/String.__eq + (call $~lib/internal/number/dtoa + (f64.const -1797693134862315708145274e284) + ) + (i32.const 4488) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 225) + (i32.const 0) + ) + (unreachable) + ) + ) + (if + (i32.eqz + (call $~lib/string/String.__eq + (call $~lib/internal/number/dtoa + (f64.const 4185580496821356722454785e274) + ) + (i32.const 4544) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 226) + (i32.const 0) + ) + (unreachable) + ) + ) + (if + (i32.eqz + (call $~lib/string/String.__eq + (call $~lib/internal/number/dtoa + (f64.const 2.2250738585072014e-308) + ) + (i32.const 4592) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 227) + (i32.const 0) + ) + (unreachable) + ) + ) + (if + (i32.eqz + (call $~lib/string/String.__eq + (call $~lib/internal/number/dtoa + (f64.const 2.9802322387695312e-08) + ) + (i32.const 4648) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 228) + (i32.const 0) + ) + (unreachable) + ) + ) + (if + (i32.eqz + (call $~lib/string/String.__eq + (call $~lib/internal/number/dtoa + (f64.const -21098088986959632) ) (i32.const 4696) ) @@ -9539,7 +11310,121 @@ (call $~lib/env/abort (i32.const 0) (i32.const 48) - (i32.const 203) + (i32.const 229) + (i32.const 0) + ) + (unreachable) + ) + ) + (if + (i32.eqz + (call $~lib/string/String.__eq + (call $~lib/internal/number/dtoa + (f64.const 4.940656e-318) + ) + (i32.const 4744) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 230) + (i32.const 0) + ) + (unreachable) + ) + ) + (if + (i32.eqz + (call $~lib/string/String.__eq + (call $~lib/internal/number/dtoa + (f64.const 9060801153433600) + ) + (i32.const 4776) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 231) + (i32.const 0) + ) + (unreachable) + ) + ) + (if + (i32.eqz + (call $~lib/string/String.__eq + (call $~lib/internal/number/dtoa + (f64.const 4708356024711512064) + ) + (i32.const 4816) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 232) + (i32.const 0) + ) + (unreachable) + ) + ) + (if + (i32.eqz + (call $~lib/string/String.__eq + (call $~lib/internal/number/dtoa + (f64.const 9409340012568248320) + ) + (i32.const 4864) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 233) + (i32.const 0) + ) + (unreachable) + ) + ) + (if + (i32.eqz + (call $~lib/string/String.__eq + (call $~lib/internal/number/dtoa + (f64.const 5e-324) + ) + (i32.const 4912) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 234) + (i32.const 0) + ) + (unreachable) + ) + ) + (if + (i32.eqz + (call $~lib/string/String.__eq + (call $~lib/internal/number/dtoa + (f64.const 1) + ) + (i32.const 4928) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 240) (i32.const 0) ) (unreachable) @@ -9558,7 +11443,7 @@ (call $~lib/env/abort (i32.const 0) (i32.const 48) - (i32.const 204) + (i32.const 241) (i32.const 0) ) (unreachable) @@ -9570,14 +11455,14 @@ (call $~lib/internal/number/dtoa (f64.const -1) ) - (i32.const 4712) + (i32.const 4944) ) ) (block (call $~lib/env/abort (i32.const 0) (i32.const 48) - (i32.const 205) + (i32.const 242) (i32.const 0) ) (unreachable) @@ -9589,636 +11474,9 @@ (call $~lib/internal/number/dtoa (f64.const -0.1) ) - (i32.const 4728) - ) - ) - (block - (call $~lib/env/abort - (i32.const 0) - (i32.const 48) - (i32.const 206) - (i32.const 0) - ) - (unreachable) - ) - ) - (if - (i32.eqz - (call $~lib/string/String.__eq - (call $~lib/internal/number/dtoa - (f64.const 1e6) - ) - (i32.const 4744) - ) - ) - (block - (call $~lib/env/abort - (i32.const 0) - (i32.const 48) - (i32.const 208) - (i32.const 0) - ) - (unreachable) - ) - ) - (if - (i32.eqz - (call $~lib/string/String.__eq - (call $~lib/internal/number/dtoa - (f64.const 1e-06) - ) - (i32.const 4768) - ) - ) - (block - (call $~lib/env/abort - (i32.const 0) - (i32.const 48) - (i32.const 209) - (i32.const 0) - ) - (unreachable) - ) - ) - (if - (i32.eqz - (call $~lib/string/String.__eq - (call $~lib/internal/number/dtoa - (f64.const -1e6) - ) - (i32.const 4792) - ) - ) - (block - (call $~lib/env/abort - (i32.const 0) - (i32.const 48) - (i32.const 210) - (i32.const 0) - ) - (unreachable) - ) - ) - (if - (i32.eqz - (call $~lib/string/String.__eq - (call $~lib/internal/number/dtoa - (f64.const -1e-06) - ) - (i32.const 4816) - ) - ) - (block - (call $~lib/env/abort - (i32.const 0) - (i32.const 48) - (i32.const 211) - (i32.const 0) - ) - (unreachable) - ) - ) - (if - (i32.eqz - (call $~lib/string/String.__eq - (call $~lib/internal/number/dtoa - (f64.const 1e7) - ) - (i32.const 4840) - ) - ) - (block - (call $~lib/env/abort - (i32.const 0) - (i32.const 48) - (i32.const 212) - (i32.const 0) - ) - (unreachable) - ) - ) - (if - (i32.eqz - (call $~lib/string/String.__eq - (call $~lib/internal/number/dtoa - (f64.const 1e-07) - ) - (i32.const 4864) - ) - ) - (block - (call $~lib/env/abort - (i32.const 0) - (i32.const 48) - (i32.const 213) - (i32.const 0) - ) - (unreachable) - ) - ) - (if - (i32.eqz - (call $~lib/string/String.__eq - (call $~lib/internal/number/dtoa - (f64.const 1.e+308) - ) - (i32.const 4880) - ) - ) - (block - (call $~lib/env/abort - (i32.const 0) - (i32.const 48) - (i32.const 215) - (i32.const 0) - ) - (unreachable) - ) - ) - (if - (i32.eqz - (call $~lib/string/String.__eq - (call $~lib/internal/number/dtoa - (f64.const -1.e+308) - ) - (i32.const 4896) - ) - ) - (block - (call $~lib/env/abort - (i32.const 0) - (i32.const 48) - (i32.const 216) - (i32.const 0) - ) - (unreachable) - ) - ) - (if - (i32.eqz - (call $~lib/string/String.__eq - (call $~lib/internal/number/dtoa - (f64.const inf) - ) - (i32.const 2712) - ) - ) - (block - (call $~lib/env/abort - (i32.const 0) - (i32.const 48) - (i32.const 217) - (i32.const 0) - ) - (unreachable) - ) - ) - (if - (i32.eqz - (call $~lib/string/String.__eq - (call $~lib/internal/number/dtoa - (f64.const -inf) - ) - (i32.const 2688) - ) - ) - (block - (call $~lib/env/abort - (i32.const 0) - (i32.const 48) - (i32.const 218) - (i32.const 0) - ) - (unreachable) - ) - ) - (if - (i32.eqz - (call $~lib/string/String.__eq - (call $~lib/internal/number/dtoa - (f64.const 1e-308) - ) - (i32.const 4920) - ) - ) - (block - (call $~lib/env/abort - (i32.const 0) - (i32.const 48) - (i32.const 219) - (i32.const 0) - ) - (unreachable) - ) - ) - (if - (i32.eqz - (call $~lib/string/String.__eq - (call $~lib/internal/number/dtoa - (f64.const -1e-308) - ) - (i32.const 4936) - ) - ) - (block - (call $~lib/env/abort - (i32.const 0) - (i32.const 48) - (i32.const 220) - (i32.const 0) - ) - (unreachable) - ) - ) - (if - (i32.eqz - (call $~lib/string/String.__eq - (call $~lib/internal/number/dtoa - (f64.const 1e-323) - ) (i32.const 4960) ) ) - (block - (call $~lib/env/abort - (i32.const 0) - (i32.const 48) - (i32.const 221) - (i32.const 0) - ) - (unreachable) - ) - ) - (if - (i32.eqz - (call $~lib/string/String.__eq - (call $~lib/internal/number/dtoa - (f64.const -1e-323) - ) - (i32.const 4976) - ) - ) - (block - (call $~lib/env/abort - (i32.const 0) - (i32.const 48) - (i32.const 222) - (i32.const 0) - ) - (unreachable) - ) - ) - (if - (i32.eqz - (call $~lib/string/String.__eq - (call $~lib/internal/number/dtoa - (f64.const 0) - ) - (i32.const 2656) - ) - ) - (block - (call $~lib/env/abort - (i32.const 0) - (i32.const 48) - (i32.const 223) - (i32.const 0) - ) - (unreachable) - ) - ) - (if - (i32.eqz - (call $~lib/string/String.__eq - (call $~lib/internal/number/dtoa - (f64.const 4294967272) - ) - (i32.const 5000) - ) - ) - (block - (call $~lib/env/abort - (i32.const 0) - (i32.const 48) - (i32.const 225) - (i32.const 0) - ) - (unreachable) - ) - ) - (if - (i32.eqz - (call $~lib/string/String.__eq - (call $~lib/internal/number/dtoa - (f64.const 1.2312145673456234e-08) - ) - (i32.const 5032) - ) - ) - (block - (call $~lib/env/abort - (i32.const 0) - (i32.const 48) - (i32.const 226) - (i32.const 0) - ) - (unreachable) - ) - ) - (if - (i32.eqz - (call $~lib/string/String.__eq - (call $~lib/internal/number/dtoa - (f64.const -1.0471975511965976e-06) - ) - (i32.const 5080) - ) - ) - (block - (call $~lib/env/abort - (i32.const 0) - (i32.const 48) - (i32.const 227) - (i32.const 0) - ) - (unreachable) - ) - ) - (if - (i32.eqz - (call $~lib/string/String.__eq - (call $~lib/internal/number/dtoa - (f64.const 555555555.5555556) - ) - (i32.const 5136) - ) - ) - (block - (call $~lib/env/abort - (i32.const 0) - (i32.const 48) - (i32.const 228) - (i32.const 0) - ) - (unreachable) - ) - ) - (if - (i32.eqz - (call $~lib/string/String.__eq - (call $~lib/internal/number/dtoa - (f64.const 0.9999999999999999) - ) - (i32.const 5176) - ) - ) - (block - (call $~lib/env/abort - (i32.const 0) - (i32.const 48) - (i32.const 229) - (i32.const 0) - ) - (unreachable) - ) - ) - (if - (i32.eqz - (call $~lib/string/String.__eq - (call $~lib/internal/number/dtoa - (f64.const 1) - ) - (i32.const 4696) - ) - ) - (block - (call $~lib/env/abort - (i32.const 0) - (i32.const 48) - (i32.const 230) - (i32.const 0) - ) - (unreachable) - ) - ) - (if - (i32.eqz - (call $~lib/string/String.__eq - (call $~lib/internal/number/dtoa - (f64.const 12.34) - ) - (i32.const 5216) - ) - ) - (block - (call $~lib/env/abort - (i32.const 0) - (i32.const 48) - (i32.const 231) - (i32.const 0) - ) - (unreachable) - ) - ) - (if - (i32.eqz - (call $~lib/string/String.__eq - (call $~lib/internal/number/dtoa - (f64.const 0.30000000000000004) - ) - (i32.const 5232) - ) - ) - (block - (call $~lib/env/abort - (i32.const 0) - (i32.const 48) - (i32.const 232) - (i32.const 0) - ) - (unreachable) - ) - ) - (if - (i32.eqz - (call $~lib/string/String.__eq - (call $~lib/internal/number/dtoa - (f64.const 0.3333333333333333) - ) - (i32.const 5280) - ) - ) - (block - (call $~lib/env/abort - (i32.const 0) - (i32.const 48) - (i32.const 233) - (i32.const 0) - ) - (unreachable) - ) - ) - (if - (i32.eqz - (call $~lib/string/String.__eq - (call $~lib/internal/number/dtoa - (f64.const 1234e17) - ) - (i32.const 5320) - ) - ) - (block - (call $~lib/env/abort - (i32.const 0) - (i32.const 48) - (i32.const 234) - (i32.const 0) - ) - (unreachable) - ) - ) - (if - (i32.eqz - (call $~lib/string/String.__eq - (call $~lib/internal/number/dtoa - (f64.const 1234e18) - ) - (i32.const 5376) - ) - ) - (block - (call $~lib/env/abort - (i32.const 0) - (i32.const 48) - (i32.const 235) - (i32.const 0) - ) - (unreachable) - ) - ) - (if - (i32.eqz - (call $~lib/string/String.__eq - (call $~lib/internal/number/dtoa - (f64.const 2.71828) - ) - (i32.const 5400) - ) - ) - (block - (call $~lib/env/abort - (i32.const 0) - (i32.const 48) - (i32.const 236) - (i32.const 0) - ) - (unreachable) - ) - ) - (if - (i32.eqz - (call $~lib/string/String.__eq - (call $~lib/internal/number/dtoa - (f64.const 0.0271828) - ) - (i32.const 5424) - ) - ) - (block - (call $~lib/env/abort - (i32.const 0) - (i32.const 48) - (i32.const 237) - (i32.const 0) - ) - (unreachable) - ) - ) - (if - (i32.eqz - (call $~lib/string/String.__eq - (call $~lib/internal/number/dtoa - (f64.const 271.828) - ) - (i32.const 5448) - ) - ) - (block - (call $~lib/env/abort - (i32.const 0) - (i32.const 48) - (i32.const 238) - (i32.const 0) - ) - (unreachable) - ) - ) - (if - (i32.eqz - (call $~lib/string/String.__eq - (call $~lib/internal/number/dtoa - (f64.const 1.1e+128) - ) - (i32.const 5472) - ) - ) - (block - (call $~lib/env/abort - (i32.const 0) - (i32.const 48) - (i32.const 239) - (i32.const 0) - ) - (unreachable) - ) - ) - (if - (i32.eqz - (call $~lib/string/String.__eq - (call $~lib/internal/number/dtoa - (f64.const 1.1e-64) - ) - (i32.const 5496) - ) - ) - (block - (call $~lib/env/abort - (i32.const 0) - (i32.const 48) - (i32.const 240) - (i32.const 0) - ) - (unreachable) - ) - ) - (if - (i32.eqz - (call $~lib/string/String.__eq - (call $~lib/internal/number/dtoa - (f64.const 0.000035689) - ) - (i32.const 5520) - ) - ) - (block - (call $~lib/env/abort - (i32.const 0) - (i32.const 48) - (i32.const 241) - (i32.const 0) - ) - (unreachable) - ) - ) - (if - (i32.eqz - (call $~lib/string/String.__eq - (call $~lib/internal/number/dtoa - (f64.const 3402823466385288598117041e14) - ) - (i32.const 5552) - ) - ) (block (call $~lib/env/abort (i32.const 0) @@ -10233,23 +11491,650 @@ (i32.eqz (call $~lib/string/String.__eq (call $~lib/internal/number/dtoa - (f64.const 1.1920928955078125e-07) + (f64.const 1e6) ) - (i32.const 5600) + (i32.const 4976) ) ) (block (call $~lib/env/abort (i32.const 0) (i32.const 48) - (i32.const 244) + (i32.const 245) + (i32.const 0) + ) + (unreachable) + ) + ) + (if + (i32.eqz + (call $~lib/string/String.__eq + (call $~lib/internal/number/dtoa + (f64.const 1e-06) + ) + (i32.const 5000) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 246) + (i32.const 0) + ) + (unreachable) + ) + ) + (if + (i32.eqz + (call $~lib/string/String.__eq + (call $~lib/internal/number/dtoa + (f64.const -1e6) + ) + (i32.const 5024) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 247) + (i32.const 0) + ) + (unreachable) + ) + ) + (if + (i32.eqz + (call $~lib/string/String.__eq + (call $~lib/internal/number/dtoa + (f64.const -1e-06) + ) + (i32.const 5048) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 248) + (i32.const 0) + ) + (unreachable) + ) + ) + (if + (i32.eqz + (call $~lib/string/String.__eq + (call $~lib/internal/number/dtoa + (f64.const 1e7) + ) + (i32.const 5072) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 249) + (i32.const 0) + ) + (unreachable) + ) + ) + (if + (i32.eqz + (call $~lib/string/String.__eq + (call $~lib/internal/number/dtoa + (f64.const 1e-07) + ) + (i32.const 5096) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 250) + (i32.const 0) + ) + (unreachable) + ) + ) + (if + (i32.eqz + (call $~lib/string/String.__eq + (call $~lib/internal/number/dtoa + (f64.const 1.e+308) + ) + (i32.const 5112) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 252) + (i32.const 0) + ) + (unreachable) + ) + ) + (if + (i32.eqz + (call $~lib/string/String.__eq + (call $~lib/internal/number/dtoa + (f64.const -1.e+308) + ) + (i32.const 5128) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 253) + (i32.const 0) + ) + (unreachable) + ) + ) + (if + (i32.eqz + (call $~lib/string/String.__eq + (call $~lib/internal/number/dtoa + (f64.const inf) + ) + (i32.const 2944) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 254) + (i32.const 0) + ) + (unreachable) + ) + ) + (if + (i32.eqz + (call $~lib/string/String.__eq + (call $~lib/internal/number/dtoa + (f64.const -inf) + ) + (i32.const 2920) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 255) + (i32.const 0) + ) + (unreachable) + ) + ) + (if + (i32.eqz + (call $~lib/string/String.__eq + (call $~lib/internal/number/dtoa + (f64.const 1e-308) + ) + (i32.const 5152) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 256) + (i32.const 0) + ) + (unreachable) + ) + ) + (if + (i32.eqz + (call $~lib/string/String.__eq + (call $~lib/internal/number/dtoa + (f64.const -1e-308) + ) + (i32.const 5168) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 257) + (i32.const 0) + ) + (unreachable) + ) + ) + (if + (i32.eqz + (call $~lib/string/String.__eq + (call $~lib/internal/number/dtoa + (f64.const 1e-323) + ) + (i32.const 5192) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 258) + (i32.const 0) + ) + (unreachable) + ) + ) + (if + (i32.eqz + (call $~lib/string/String.__eq + (call $~lib/internal/number/dtoa + (f64.const -1e-323) + ) + (i32.const 5208) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 259) + (i32.const 0) + ) + (unreachable) + ) + ) + (if + (i32.eqz + (call $~lib/string/String.__eq + (call $~lib/internal/number/dtoa + (f64.const 0) + ) + (i32.const 2888) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 260) + (i32.const 0) + ) + (unreachable) + ) + ) + (if + (i32.eqz + (call $~lib/string/String.__eq + (call $~lib/internal/number/dtoa + (f64.const 4294967272) + ) + (i32.const 5232) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 262) + (i32.const 0) + ) + (unreachable) + ) + ) + (if + (i32.eqz + (call $~lib/string/String.__eq + (call $~lib/internal/number/dtoa + (f64.const 1.2312145673456234e-08) + ) + (i32.const 5264) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 263) + (i32.const 0) + ) + (unreachable) + ) + ) + (if + (i32.eqz + (call $~lib/string/String.__eq + (call $~lib/internal/number/dtoa + (f64.const -1.0471975511965976e-06) + ) + (i32.const 5312) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 264) + (i32.const 0) + ) + (unreachable) + ) + ) + (if + (i32.eqz + (call $~lib/string/String.__eq + (call $~lib/internal/number/dtoa + (f64.const 555555555.5555556) + ) + (i32.const 5368) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 265) + (i32.const 0) + ) + (unreachable) + ) + ) + (if + (i32.eqz + (call $~lib/string/String.__eq + (call $~lib/internal/number/dtoa + (f64.const 0.9999999999999999) + ) + (i32.const 5408) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 266) + (i32.const 0) + ) + (unreachable) + ) + ) + (if + (i32.eqz + (call $~lib/string/String.__eq + (call $~lib/internal/number/dtoa + (f64.const 1) + ) + (i32.const 4928) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 267) + (i32.const 0) + ) + (unreachable) + ) + ) + (if + (i32.eqz + (call $~lib/string/String.__eq + (call $~lib/internal/number/dtoa + (f64.const 12.34) + ) + (i32.const 5448) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 268) + (i32.const 0) + ) + (unreachable) + ) + ) + (if + (i32.eqz + (call $~lib/string/String.__eq + (call $~lib/internal/number/dtoa + (f64.const 0.30000000000000004) + ) + (i32.const 5464) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 269) + (i32.const 0) + ) + (unreachable) + ) + ) + (if + (i32.eqz + (call $~lib/string/String.__eq + (call $~lib/internal/number/dtoa + (f64.const 0.3333333333333333) + ) + (i32.const 5512) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 270) + (i32.const 0) + ) + (unreachable) + ) + ) + (if + (i32.eqz + (call $~lib/string/String.__eq + (call $~lib/internal/number/dtoa + (f64.const 1234e17) + ) + (i32.const 5552) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 271) + (i32.const 0) + ) + (unreachable) + ) + ) + (if + (i32.eqz + (call $~lib/string/String.__eq + (call $~lib/internal/number/dtoa + (f64.const 1234e18) + ) + (i32.const 5608) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 272) + (i32.const 0) + ) + (unreachable) + ) + ) + (if + (i32.eqz + (call $~lib/string/String.__eq + (call $~lib/internal/number/dtoa + (f64.const 2.71828) + ) + (i32.const 5632) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 273) + (i32.const 0) + ) + (unreachable) + ) + ) + (if + (i32.eqz + (call $~lib/string/String.__eq + (call $~lib/internal/number/dtoa + (f64.const 0.0271828) + ) + (i32.const 5656) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 274) + (i32.const 0) + ) + (unreachable) + ) + ) + (if + (i32.eqz + (call $~lib/string/String.__eq + (call $~lib/internal/number/dtoa + (f64.const 271.828) + ) + (i32.const 5680) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 275) + (i32.const 0) + ) + (unreachable) + ) + ) + (if + (i32.eqz + (call $~lib/string/String.__eq + (call $~lib/internal/number/dtoa + (f64.const 1.1e+128) + ) + (i32.const 5704) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 276) + (i32.const 0) + ) + (unreachable) + ) + ) + (if + (i32.eqz + (call $~lib/string/String.__eq + (call $~lib/internal/number/dtoa + (f64.const 1.1e-64) + ) + (i32.const 5728) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 277) + (i32.const 0) + ) + (unreachable) + ) + ) + (if + (i32.eqz + (call $~lib/string/String.__eq + (call $~lib/internal/number/dtoa + (f64.const 0.000035689) + ) + (i32.const 5752) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 278) + (i32.const 0) + ) + (unreachable) + ) + ) + (if + (i32.eqz + (call $~lib/string/String.__eq + (call $~lib/internal/number/dtoa + (f64.const 3402823466385288598117041e14) + ) + (i32.const 5784) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 280) + (i32.const 0) + ) + (unreachable) + ) + ) + (if + (i32.eqz + (call $~lib/string/String.__eq + (call $~lib/internal/number/dtoa + (f64.const 1.1920928955078125e-07) + ) + (i32.const 5832) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 281) (i32.const 0) ) (unreachable) ) ) ) - (func $null (; 52 ;) (; has Stack IR ;) (type $v) + (func $null (; 62 ;) (; has Stack IR ;) (type $v) (nop) ) ) diff --git a/tests/compiler/std/string.ts b/tests/compiler/std/string.ts index ed1a86a1..052b0a5f 100644 --- a/tests/compiler/std/string.ts +++ b/tests/compiler/std/string.ts @@ -51,6 +51,8 @@ assert("abc".padEnd(8, "abc") == "abcabcab"); assert("".indexOf("") == 0); assert("".indexOf("hi") == -1); +assert("a".indexOf("a") == 0); +assert(str.indexOf(str) == 0); assert(str.indexOf("") == 0); assert(str.indexOf(",") == 2); assert(str.indexOf("x") == -1); @@ -131,6 +133,41 @@ assert("a".repeat(5) == "aaaaa"); assert("a".repeat(6) == "aaaaaa"); assert("a".repeat(7) == "aaaaaaa"); +var sa: string[]; + +sa = "".split(); +assert(sa.length == 1 && sa[0] == ""); +sa = "".split(""); +assert(sa.length == 0); +sa = "".split(","); +assert(sa.length == 1 && sa[0] == ""); +sa = "a,b,c".split("."); +assert(sa.length == 1 && sa[0] == "a,b,c"); +sa = "a,b,c".split(","); +assert(sa.length == 3 && sa[0] == "a" && sa[1] == "b" && sa[2] == "c"); +sa = "a, b, c".split(", "); +assert(sa.length == 3 && sa[0] == "a" && sa[1] == "b" && sa[2] == "c"); +sa = "a,b,,c".split(","); +assert(sa.length == 4 && sa[0] == "a" && sa[1] == "b" && sa[2] == "" && sa[3] == "c"); +sa = ",a,b,c".split(","); +assert(sa.length == 4 && sa[0] == "" && sa[1] == "a" && sa[2] == "b" && sa[3] == "c"); +sa = "a,b,c,".split(","); +assert(sa.length == 4 && sa[0] == "a" && sa[1] == "b" && sa[2] == "c" && sa[3] == ""); +sa = "abc".split(""); +assert(sa.length == 3 && sa[0] == "a" && sa[1] == "b" && sa[2] == "c"); +sa = "abc".split("", 0); +assert(sa.length == 0); +sa = "abc".split("", 1); +assert(sa.length == 1 && sa[0] == "a"); +sa = "a,b,c".split(",", 1); +assert(sa.length == 1 && sa[0] == "a"); +sa = "abc".split("", 4); +assert(sa.length == 3 && sa[0] == "a" && sa[1] == "b" && sa[2] == "c"); +sa = "abc".split("", -1); +assert(sa.length == 3 && sa[0] == "a" && sa[1] == "b" && sa[2] == "c"); +sa = "a,b,c".split(",", -1); +assert(sa.length == 3 && sa[0] == "a" && sa[1] == "b" && sa[2] == "c"); + assert(itoa32(0) == "0"); assert(itoa32(1) == "1"); assert(itoa32(8) == "8"); diff --git a/tests/compiler/std/string.untouched.wat b/tests/compiler/std/string.untouched.wat index 55668756..99aa5fb1 100644 --- a/tests/compiler/std/string.untouched.wat +++ b/tests/compiler/std/string.untouched.wat @@ -65,96 +65,108 @@ (data (i32.const 720) "\05\00\00\00a\00a\00a\00a\00a\00") (data (i32.const 736) "\06\00\00\00a\00a\00a\00a\00a\00a\00") (data (i32.const 752) "\07\00\00\00a\00a\00a\00a\00a\00a\00a\00") - (data (i32.const 776) "\90\01\00\00\00\00\00\000\000\000\001\000\002\000\003\000\004\000\005\000\006\000\007\000\008\000\009\001\000\001\001\001\002\001\003\001\004\001\005\001\006\001\007\001\008\001\009\002\000\002\001\002\002\002\003\002\004\002\005\002\006\002\007\002\008\002\009\003\000\003\001\003\002\003\003\003\004\003\005\003\006\003\007\003\008\003\009\004\000\004\001\004\002\004\003\004\004\004\005\004\006\004\007\004\008\004\009\005\000\005\001\005\002\005\003\005\004\005\005\005\006\005\007\005\008\005\009\006\000\006\001\006\002\006\003\006\004\006\005\006\006\006\007\006\008\006\009\007\000\007\001\007\002\007\003\007\004\007\005\007\006\007\007\007\008\007\009\008\000\008\001\008\002\008\003\008\004\008\005\008\006\008\007\008\008\008\009\009\000\009\001\009\002\009\003\009\004\009\005\009\006\009\007\009\008\009\009\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00") - (data (i32.const 1288) "\08\03\00\00d\00\00\00") - (data (i32.const 1296) "\01\00\00\008\00") - (data (i32.const 1304) "\05\00\00\00-\001\000\000\000\00") - (data (i32.const 1320) "\04\00\00\001\002\003\004\00") - (data (i32.const 1336) "\05\00\00\001\002\003\004\005\00") - (data (i32.const 1352) "\06\00\00\001\002\003\004\005\006\00") - (data (i32.const 1368) "\07\00\00\001\001\001\001\001\001\001\00") - (data (i32.const 1392) "\07\00\00\001\002\003\004\005\006\007\00") - (data (i32.const 1416) "\n\00\00\002\001\004\007\004\008\003\006\004\006\00") - (data (i32.const 1440) "\n\00\00\002\001\004\007\004\008\003\006\004\007\00") - (data (i32.const 1464) "\0b\00\00\00-\002\001\004\007\004\008\003\006\004\008\00") - (data (i32.const 1496) "\02\00\00\00-\001\00") - (data (i32.const 1504) "\04\00\00\001\000\000\000\00") - (data (i32.const 1520) "\n\00\00\002\001\004\007\004\008\003\006\004\008\00") - (data (i32.const 1544) "\n\00\00\004\002\009\004\009\006\007\002\009\005\00") - (data (i32.const 1568) "\90\01\00\00\00\00\00\000\000\000\001\000\002\000\003\000\004\000\005\000\006\000\007\000\008\000\009\001\000\001\001\001\002\001\003\001\004\001\005\001\006\001\007\001\008\001\009\002\000\002\001\002\002\002\003\002\004\002\005\002\006\002\007\002\008\002\009\003\000\003\001\003\002\003\003\003\004\003\005\003\006\003\007\003\008\003\009\004\000\004\001\004\002\004\003\004\004\004\005\004\006\004\007\004\008\004\009\005\000\005\001\005\002\005\003\005\004\005\005\005\006\005\007\005\008\005\009\006\000\006\001\006\002\006\003\006\004\006\005\006\006\006\007\006\008\006\009\007\000\007\001\007\002\007\003\007\004\007\005\007\006\007\007\007\008\007\009\008\000\008\001\008\002\008\003\008\004\008\005\008\006\008\007\008\008\008\009\009\000\009\001\009\002\009\003\009\004\009\005\009\006\009\007\009\008\009\009\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00") - (data (i32.const 2080) " \06\00\00d\00\00\00") - (data (i32.const 2088) "\08\00\00\009\009\009\009\009\009\009\009\00") - (data (i32.const 2112) "\t\00\00\001\000\000\000\000\000\000\000\000\00") - (data (i32.const 2136) "\0b\00\00\006\008\007\001\009\004\007\006\007\003\005\00") - (data (i32.const 2168) "\0c\00\00\008\006\008\007\001\009\004\007\006\007\003\005\00") - (data (i32.const 2200) "\0f\00\00\009\009\009\008\006\008\007\001\009\004\007\006\007\003\005\00") - (data (i32.const 2240) "\10\00\00\009\009\009\009\008\006\008\007\001\009\004\007\006\007\003\005\00") - (data (i32.const 2280) "\11\00\00\001\009\009\009\009\008\006\008\007\001\009\004\007\006\007\003\005\00") - (data (i32.const 2320) "\14\00\00\001\008\004\004\006\007\004\004\000\007\003\007\000\009\005\005\001\006\001\005\00") - (data (i32.const 2368) "\05\00\00\00-\001\002\003\004\00") - (data (i32.const 2384) "\0b\00\00\00-\004\002\009\004\009\006\007\002\009\005\00") - (data (i32.const 2416) "\0c\00\00\00-\006\008\007\001\009\004\007\006\007\003\005\00") - (data (i32.const 2448) "\0d\00\00\00-\008\006\008\007\001\009\004\007\006\007\003\005\00") - (data (i32.const 2480) "\10\00\00\00-\009\009\009\008\006\008\007\001\009\004\007\006\007\003\005\00") - (data (i32.const 2520) "\12\00\00\00-\001\009\009\009\009\008\006\008\007\001\009\004\007\006\007\003\005\00") - (data (i32.const 2560) "\13\00\00\009\002\002\003\003\007\002\000\003\006\008\005\004\007\007\005\008\000\007\00") - (data (i32.const 2608) "\14\00\00\00-\009\002\002\003\003\007\002\000\003\006\008\005\004\007\007\005\008\000\008\00") - (data (i32.const 2656) "\03\00\00\000\00.\000\00") - (data (i32.const 2672) "\03\00\00\00N\00a\00N\00") - (data (i32.const 2688) "\t\00\00\00-\00I\00n\00f\00i\00n\00i\00t\00y\00") - (data (i32.const 2712) "\08\00\00\00I\00n\00f\00i\00n\00i\00t\00y\00") - (data (i32.const 2736) "\b8\02\00\00\00\00\00\00\88\02\1c\08\a0\d5\8f\fav\bf>\a2\7f\e1\ae\bav\acU0 \fb\16\8b\ea5\ce]J\89B\cf-;eU\aa\b0k\9a\dfE\1a=\03\cf\1a\e6\ca\c6\9a\c7\17\fep\abO\dc\bc\be\fc\b1w\ff\0c\d6kA\ef\91V\be<\fc\7f\90\ad\1f\d0\8d\83\9aU1(\\Q\d3\b5\c9\a6\ad\8f\acq\9d\cb\8b\ee#w\"\9c\eamSx@\91I\cc\aeW\ce\b6]y\12<\827V\fbM6\94\10\c2O\98H8o\ea\96\90\c7:\82%\cb\85t\d7\f4\97\bf\97\cd\cf\86\a0\e5\ac*\17\98\n4\ef\8e\b25*\fbg8\b2;?\c6\d2\df\d4\c8\84\ba\cd\d3\1a\'D\dd\c5\96\c9%\bb\ce\9fk\93\84\a5b}$l\ac\db\f6\da_\0dXf\ab\a3&\f1\c3\de\93\f8\e2\f3\b8\80\ff\aa\a8\ad\b5\b5\8bJ|l\05_b\87S0\c14`\ff\bc\c9U&\ba\91\8c\85N\96\bd~)p$w\f9\df\8f\b8\e5\b8\9f\bd\df\a6\94}t\88\cf_\a9\f8\cf\9b\a8\8f\93pD\b9k\15\0f\bf\f8\f0\08\8a\b611eU%\b0\cd\ac\7f{\d0\c6\e2?\99\06;+*\c4\10\\\e4\d3\92si\99$$\aa\0e\ca\00\83\f2\b5\87\fd\eb\1a\11\92d\08\e5\bc\cc\88Po\t\cc\bc\8c,e\19\e2X\17\b7\d1\00\00\00\00\00\00@\9c\00\00\00\00\10\a5\d4\e8\00\00b\ac\c5\ebx\ad\84\t\94\f8x9?\81\b3\15\07\c9{\ce\97\c0p\\\ea{\ce2~\8fh\80\e9\ab\a48\d2\d5E\"\9a\17&\'O\9f\'\fb\c4\d41\a2c\ed\a8\ad\c8\8c8e\de\b0\dbe\ab\1a\8e\08\c7\83\9a\1dqB\f9\1d]\c4X\e7\1b\a6,iM\92\ea\8dp\1ad\ee\01\daJw\ef\9a\99\a3m\a2\85k}\b4{x\t\f2w\18\ddy\a1\e4T\b4\c2\c5\9b[\92\86[\86=]\96\c8\c5S5\c8\b3\a0\97\fa\\\b4*\95\e3_\a0\99\bd\9fF\de%\8c9\db4\c2\9b\a5\\\9f\98\a3r\9a\c6\f6\ce\be\e9TS\bf\dc\b7\e2A\"\f2\17\f3\fc\88\a5x\\\d3\9b\ce \cc\dfS!{\f3Z\16\98:0\1f\97\dc\b5\a0\e2\96\b3\e3\\S\d1\d9\a8\a2\7f\e1\ae\bav\acU0 \fb\16\8b\ea5\ce]J\89B\cf-;eU\aa\b0k\9a\dfE\1a=\03\cf\1a\e6\ca\c6\9a\c7\17\fep\abO\dc\bc\be\fc\b1w\ff\0c\d6kA\ef\91V\be<\fc\7f\90\ad\1f\d0\8d\83\9aU1(\\Q\d3\b5\c9\a6\ad\8f\acq\9d\cb\8b\ee#w\"\9c\eamSx@\91I\cc\aeW\ce\b6]y\12<\827V\fbM6\94\10\c2O\98H8o\ea\96\90\c7:\82%\cb\85t\d7\f4\97\bf\97\cd\cf\86\a0\e5\ac*\17\98\n4\ef\8e\b25*\fbg8\b2;?\c6\d2\df\d4\c8\84\ba\cd\d3\1a\'D\dd\c5\96\c9%\bb\ce\9fk\93\84\a5b}$l\ac\db\f6\da_\0dXf\ab\a3&\f1\c3\de\93\f8\e2\f3\b8\80\ff\aa\a8\ad\b5\b5\8bJ|l\05_b\87S0\c14`\ff\bc\c9U&\ba\91\8c\85N\96\bd~)p$w\f9\df\8f\b8\e5\b8\9f\bd\df\a6\94}t\88\cf_\a9\f8\cf\9b\a8\8f\93pD\b9k\15\0f\bf\f8\f0\08\8a\b611eU%\b0\cd\ac\7f{\d0\c6\e2?\99\06;+*\c4\10\\\e4\d3\92si\99$$\aa\0e\ca\00\83\f2\b5\87\fd\eb\1a\11\92d\08\e5\bc\cc\88Po\t\cc\bc\8c,e\19\e2X\17\b7\d1\00\00\00\00\00\00@\9c\00\00\00\00\10\a5\d4\e8\00\00b\ac\c5\ebx\ad\84\t\94\f8x9?\81\b3\15\07\c9{\ce\97\c0p\\\ea{\ce2~\8fh\80\e9\ab\a48\d2\d5E\"\9a\17&\'O\9f\'\fb\c4\d41\a2c\ed\a8\ad\c8\8c8e\de\b0\dbe\ab\1a\8e\08\c7\83\9a\1dqB\f9\1d]\c4X\e7\1b\a6,iM\92\ea\8dp\1ad\ee\01\daJw\ef\9a\99\a3m\a2\85k}\b4{x\t\f2w\18\ddy\a1\e4T\b4\c2\c5\9b[\92\86[\86=]\96\c8\c5S5\c8\b3\a0\97\fa\\\b4*\95\e3_\a0\99\bd\9fF\de%\8c9\db4\c2\9b\a5\\\9f\98\a3r\9a\c6\f6\ce\be\e9TS\bf\dc\b7\e2A\"\f2\17\f3\fc\88\a5x\\\d3\9b\ce \cc\dfS!{\f3Z\16\98:0\1f\97\dc\b5\a0\e2\96\b3\e3\\S\d1\d9\a8 (; 24 ;) (type $iiF) (param $0 i32) (param $1 i32) (result f64) + (func $~lib/internal/string/parse (; 23 ;) (type $iiF) (param $0 i32) (param $1 i32) (result f64) (local $2 i32) (local $3 i32) (local $4 i32) @@ -4347,13 +4350,13 @@ (get_local $7) ) ) - (func $~lib/string/parseInt (; 25 ;) (type $iiF) (param $0 i32) (param $1 i32) (result f64) + (func $~lib/string/parseInt (; 24 ;) (type $iiF) (param $0 i32) (param $1 i32) (result f64) (call $~lib/internal/string/parse (get_local $0) (get_local $1) ) ) - (func $~lib/string/parseFloat (; 26 ;) (type $iF) (param $0 i32) (result f64) + (func $~lib/string/parseFloat (; 25 ;) (type $iF) (param $0 i32) (result f64) (local $1 i32) (local $2 i32) (local $3 i32) @@ -4537,7 +4540,7 @@ (call $~lib/env/abort (i32.const 0) (i32.const 80) - (i32.const 566) + (i32.const 626) (i32.const 10) ) (unreachable) @@ -4630,7 +4633,7 @@ (get_local $5) ) ) - (func $~lib/string/String#concat (; 27 ;) (type $iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/string/String#concat (; 26 ;) (type $iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -4646,7 +4649,7 @@ (call $~lib/env/abort (i32.const 0) (i32.const 80) - (i32.const 106) + (i32.const 110) (i32.const 4) ) (unreachable) @@ -4707,7 +4710,7 @@ ) (get_local $5) ) - (func $~lib/string/String.__concat (; 28 ;) (type $iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/string/String.__concat (; 27 ;) (type $iii) (param $0 i32) (param $1 i32) (result i32) (if (i32.eqz (get_local $0) @@ -4721,7 +4724,7 @@ (get_local $1) ) ) - (func $~lib/string/String.__ne (; 29 ;) (type $iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/string/String.__ne (; 28 ;) (type $iii) (param $0 i32) (param $1 i32) (result i32) (i32.eqz (call $~lib/string/String.__eq (get_local $0) @@ -4729,7 +4732,7 @@ ) ) ) - (func $~lib/string/String.__gt (; 30 ;) (type $iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/string/String.__gt (; 29 ;) (type $iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -4813,7 +4816,7 @@ (i32.const 0) ) ) - (func $~lib/string/String.__gte (; 31 ;) (type $iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/string/String.__gte (; 30 ;) (type $iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -4899,7 +4902,7 @@ (i32.const 0) ) ) - (func $~lib/string/String.__lt (; 32 ;) (type $iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/string/String.__lt (; 31 ;) (type $iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -4983,7 +4986,7 @@ (i32.const 0) ) ) - (func $~lib/string/String.__lte (; 33 ;) (type $iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/string/String.__lte (; 32 ;) (type $iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -5069,7 +5072,7 @@ (i32.const 0) ) ) - (func $~lib/string/String#repeat (; 34 ;) (type $iii) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/string/String#repeat (; 33 ;) (type $iii) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -5084,7 +5087,7 @@ (call $~lib/env/abort (i32.const 0) (i32.const 80) - (i32.const 395) + (i32.const 400) (i32.const 4) ) (unreachable) @@ -5119,7 +5122,7 @@ (call $~lib/env/abort (i32.const 0) (i32.const 80) - (i32.const 400) + (i32.const 405) (i32.const 6) ) (unreachable) @@ -5167,7 +5170,1169 @@ ) (get_local $4) ) - (func $~lib/internal/number/decimalCount32 (; 35 ;) (type $ii) (param $0 i32) (result i32) + (func $~lib/internal/arraybuffer/computeSize (; 34 ;) (type $ii) (param $0 i32) (result i32) + (i32.shl + (i32.const 1) + (i32.sub + (i32.const 32) + (i32.clz + (i32.sub + (i32.add + (get_local $0) + (get_global $~lib/internal/arraybuffer/HEADER_SIZE) + ) + (i32.const 1) + ) + ) + ) + ) + ) + (func $~lib/internal/arraybuffer/allocateUnsafe (; 35 ;) (type $ii) (param $0 i32) (result i32) + (local $1 i32) + (local $2 i32) + (if + (i32.eqz + (i32.le_u + (get_local $0) + (get_global $~lib/internal/arraybuffer/MAX_BLENGTH) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 808) + (i32.const 23) + (i32.const 2) + ) + (unreachable) + ) + ) + (set_local $1 + (block $~lib/memory/memory.allocate|inlined.1 (result i32) + (set_local $2 + (call $~lib/internal/arraybuffer/computeSize + (get_local $0) + ) + ) + (br $~lib/memory/memory.allocate|inlined.1 + (call $~lib/allocator/arena/__memory_allocate + (get_local $2) + ) + ) + ) + ) + (i32.store + (get_local $1) + (get_local $0) + ) + (get_local $1) + ) + (func $~lib/memory/memory.allocate (; 36 ;) (type $ii) (param $0 i32) (result i32) + (return + (call $~lib/allocator/arena/__memory_allocate + (get_local $0) + ) + ) + ) + (func $~lib/internal/memory/memset (; 37 ;) (type $iiiv) (param $0 i32) (param $1 i32) (param $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i64) + (if + (i32.eqz + (get_local $2) + ) + (return) + ) + (i32.store8 + (get_local $0) + (get_local $1) + ) + (i32.store8 + (i32.sub + (i32.add + (get_local $0) + (get_local $2) + ) + (i32.const 1) + ) + (get_local $1) + ) + (if + (i32.le_u + (get_local $2) + (i32.const 2) + ) + (return) + ) + (i32.store8 + (i32.add + (get_local $0) + (i32.const 1) + ) + (get_local $1) + ) + (i32.store8 + (i32.add + (get_local $0) + (i32.const 2) + ) + (get_local $1) + ) + (i32.store8 + (i32.sub + (i32.add + (get_local $0) + (get_local $2) + ) + (i32.const 2) + ) + (get_local $1) + ) + (i32.store8 + (i32.sub + (i32.add + (get_local $0) + (get_local $2) + ) + (i32.const 3) + ) + (get_local $1) + ) + (if + (i32.le_u + (get_local $2) + (i32.const 6) + ) + (return) + ) + (i32.store8 + (i32.add + (get_local $0) + (i32.const 3) + ) + (get_local $1) + ) + (i32.store8 + (i32.sub + (i32.add + (get_local $0) + (get_local $2) + ) + (i32.const 4) + ) + (get_local $1) + ) + (if + (i32.le_u + (get_local $2) + (i32.const 8) + ) + (return) + ) + (set_local $3 + (i32.and + (i32.sub + (i32.const 0) + (get_local $0) + ) + (i32.const 3) + ) + ) + (set_local $0 + (i32.add + (get_local $0) + (get_local $3) + ) + ) + (set_local $2 + (i32.sub + (get_local $2) + (get_local $3) + ) + ) + (set_local $2 + (i32.and + (get_local $2) + (i32.const -4) + ) + ) + (set_local $4 + (i32.mul + (i32.div_u + (i32.const -1) + (i32.const 255) + ) + (i32.and + (get_local $1) + (i32.const 255) + ) + ) + ) + (i32.store + (get_local $0) + (get_local $4) + ) + (i32.store + (i32.sub + (i32.add + (get_local $0) + (get_local $2) + ) + (i32.const 4) + ) + (get_local $4) + ) + (if + (i32.le_u + (get_local $2) + (i32.const 8) + ) + (return) + ) + (i32.store + (i32.add + (get_local $0) + (i32.const 4) + ) + (get_local $4) + ) + (i32.store + (i32.add + (get_local $0) + (i32.const 8) + ) + (get_local $4) + ) + (i32.store + (i32.sub + (i32.add + (get_local $0) + (get_local $2) + ) + (i32.const 12) + ) + (get_local $4) + ) + (i32.store + (i32.sub + (i32.add + (get_local $0) + (get_local $2) + ) + (i32.const 8) + ) + (get_local $4) + ) + (if + (i32.le_u + (get_local $2) + (i32.const 24) + ) + (return) + ) + (i32.store + (i32.add + (get_local $0) + (i32.const 12) + ) + (get_local $4) + ) + (i32.store + (i32.add + (get_local $0) + (i32.const 16) + ) + (get_local $4) + ) + (i32.store + (i32.add + (get_local $0) + (i32.const 20) + ) + (get_local $4) + ) + (i32.store + (i32.add + (get_local $0) + (i32.const 24) + ) + (get_local $4) + ) + (i32.store + (i32.sub + (i32.add + (get_local $0) + (get_local $2) + ) + (i32.const 28) + ) + (get_local $4) + ) + (i32.store + (i32.sub + (i32.add + (get_local $0) + (get_local $2) + ) + (i32.const 24) + ) + (get_local $4) + ) + (i32.store + (i32.sub + (i32.add + (get_local $0) + (get_local $2) + ) + (i32.const 20) + ) + (get_local $4) + ) + (i32.store + (i32.sub + (i32.add + (get_local $0) + (get_local $2) + ) + (i32.const 16) + ) + (get_local $4) + ) + (set_local $3 + (i32.add + (i32.const 24) + (i32.and + (get_local $0) + (i32.const 4) + ) + ) + ) + (set_local $0 + (i32.add + (get_local $0) + (get_local $3) + ) + ) + (set_local $2 + (i32.sub + (get_local $2) + (get_local $3) + ) + ) + (set_local $5 + (i64.or + (i64.extend_u/i32 + (get_local $4) + ) + (i64.shl + (i64.extend_u/i32 + (get_local $4) + ) + (i64.const 32) + ) + ) + ) + (block $break|0 + (loop $continue|0 + (if + (i32.ge_u + (get_local $2) + (i32.const 32) + ) + (block + (block + (i64.store + (get_local $0) + (get_local $5) + ) + (i64.store + (i32.add + (get_local $0) + (i32.const 8) + ) + (get_local $5) + ) + (i64.store + (i32.add + (get_local $0) + (i32.const 16) + ) + (get_local $5) + ) + (i64.store + (i32.add + (get_local $0) + (i32.const 24) + ) + (get_local $5) + ) + (set_local $2 + (i32.sub + (get_local $2) + (i32.const 32) + ) + ) + (set_local $0 + (i32.add + (get_local $0) + (i32.const 32) + ) + ) + ) + (br $continue|0) + ) + ) + ) + ) + ) + (func $~lib/array/Array#constructor (; 38 ;) (type $iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (if + (i32.gt_u + (get_local $1) + (i32.const 268435454) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 776) + (i32.const 37) + (i32.const 39) + ) + (unreachable) + ) + ) + (set_local $2 + (i32.shl + (get_local $1) + (i32.const 2) + ) + ) + (set_local $3 + (call $~lib/internal/arraybuffer/allocateUnsafe + (get_local $2) + ) + ) + (i32.store + (tee_local $0 + (if (result i32) + (get_local $0) + (get_local $0) + (tee_local $0 + (block (result i32) + (set_local $4 + (call $~lib/memory/memory.allocate + (i32.const 8) + ) + ) + (i32.store + (get_local $4) + (i32.const 0) + ) + (i32.store offset=4 + (get_local $4) + (i32.const 0) + ) + (get_local $4) + ) + ) + ) + ) + (get_local $3) + ) + (i32.store offset=4 + (get_local $0) + (get_local $1) + ) + (block $~lib/memory/memory.fill|inlined.0 + (set_local $4 + (i32.add + (get_local $3) + (get_global $~lib/internal/arraybuffer/HEADER_SIZE) + ) + ) + (set_local $5 + (i32.const 0) + ) + (call $~lib/internal/memory/memset + (get_local $4) + (get_local $5) + (get_local $2) + ) + ) + (get_local $0) + ) + (func $~lib/array/Array#__unchecked_set (; 39 ;) (type $iiiv) (param $0 i32) (param $1 i32) (param $2 i32) + (local $3 i32) + (block $~lib/internal/arraybuffer/storeUnsafe|inlined.0 + (set_local $3 + (i32.load + (get_local $0) + ) + ) + (i32.store offset=8 + (i32.add + (get_local $3) + (i32.shl + (get_local $1) + (i32.const 2) + ) + ) + (get_local $2) + ) + ) + ) + (func $~lib/internal/arraybuffer/reallocateUnsafe (; 40 ;) (type $iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (set_local $2 + (i32.load + (get_local $0) + ) + ) + (if + (i32.gt_s + (get_local $1) + (get_local $2) + ) + (block + (if + (i32.eqz + (i32.le_s + (get_local $1) + (get_global $~lib/internal/arraybuffer/MAX_BLENGTH) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 808) + (i32.const 37) + (i32.const 4) + ) + (unreachable) + ) + ) + (if + (i32.le_s + (get_local $1) + (i32.sub + (call $~lib/internal/arraybuffer/computeSize + (get_local $2) + ) + (get_global $~lib/internal/arraybuffer/HEADER_SIZE) + ) + ) + (block + (i32.store + (get_local $0) + (get_local $1) + ) + (block $~lib/memory/memory.fill|inlined.1 + (set_local $3 + (i32.add + (i32.add + (get_local $0) + (get_global $~lib/internal/arraybuffer/HEADER_SIZE) + ) + (get_local $2) + ) + ) + (set_local $4 + (i32.const 0) + ) + (set_local $5 + (i32.sub + (get_local $1) + (get_local $2) + ) + ) + (call $~lib/internal/memory/memset + (get_local $3) + (get_local $4) + (get_local $5) + ) + ) + ) + (block + (set_local $5 + (call $~lib/internal/arraybuffer/allocateUnsafe + (get_local $1) + ) + ) + (block $~lib/memory/memory.copy|inlined.2 + (set_local $4 + (i32.add + (get_local $5) + (get_global $~lib/internal/arraybuffer/HEADER_SIZE) + ) + ) + (set_local $3 + (i32.add + (get_local $0) + (get_global $~lib/internal/arraybuffer/HEADER_SIZE) + ) + ) + (call $~lib/internal/memory/memmove + (get_local $4) + (get_local $3) + (get_local $2) + ) + ) + (block $~lib/memory/memory.fill|inlined.2 + (set_local $3 + (i32.add + (i32.add + (get_local $5) + (get_global $~lib/internal/arraybuffer/HEADER_SIZE) + ) + (get_local $2) + ) + ) + (set_local $4 + (i32.const 0) + ) + (set_local $6 + (i32.sub + (get_local $1) + (get_local $2) + ) + ) + (call $~lib/internal/memory/memset + (get_local $3) + (get_local $4) + (get_local $6) + ) + ) + (return + (get_local $5) + ) + ) + ) + ) + (if + (i32.lt_s + (get_local $1) + (get_local $2) + ) + (block + (if + (i32.eqz + (i32.ge_s + (get_local $1) + (i32.const 0) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 808) + (i32.const 61) + (i32.const 4) + ) + (unreachable) + ) + ) + (i32.store + (get_local $0) + (get_local $1) + ) + ) + ) + ) + (get_local $0) + ) + (func $~lib/array/Array#push (; 41 ;) (type $iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (set_local $2 + (i32.load offset=4 + (get_local $0) + ) + ) + (set_local $3 + (i32.load + (get_local $0) + ) + ) + (set_local $4 + (i32.shr_u + (i32.load + (get_local $3) + ) + (i32.const 2) + ) + ) + (set_local $5 + (i32.add + (get_local $2) + (i32.const 1) + ) + ) + (if + (i32.ge_u + (get_local $2) + (get_local $4) + ) + (block + (if + (i32.ge_u + (get_local $2) + (i32.const 268435454) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 776) + (i32.const 172) + (i32.const 42) + ) + (unreachable) + ) + ) + (set_local $3 + (call $~lib/internal/arraybuffer/reallocateUnsafe + (get_local $3) + (i32.shl + (get_local $5) + (i32.const 2) + ) + ) + ) + (i32.store + (get_local $0) + (get_local $3) + ) + ) + ) + (i32.store offset=4 + (get_local $0) + (get_local $5) + ) + (block $~lib/internal/arraybuffer/storeUnsafe|inlined.2 + (i32.store offset=8 + (i32.add + (get_local $3) + (i32.shl + (get_local $2) + (i32.const 2) + ) + ) + (get_local $1) + ) + ) + (get_local $5) + ) + (func $~lib/string/String#split (; 42 ;) (type $iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (local $3 i32) + (local $4 i32) + (local $5 i32) + (local $6 i32) + (local $7 i32) + (local $8 i32) + (local $9 i32) + (local $10 i32) + (local $11 i32) + (local $12 i32) + (local $13 i32) + (local $14 i32) + (if + (i32.eqz + (i32.ne + (get_local $0) + (i32.const 0) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 80) + (i32.const 417) + (i32.const 4) + ) + (unreachable) + ) + ) + (if + (i32.eqz + (get_local $2) + ) + (return + (call $~lib/array/Array#constructor + (i32.const 0) + (i32.const 0) + ) + ) + ) + (if + (i32.eq + (get_local $1) + (i32.const 0) + ) + (return + (block (result i32) + (set_local $3 + (call $~lib/array/Array#constructor + (i32.const 0) + (i32.const 1) + ) + ) + (call $~lib/array/Array#__unchecked_set + (get_local $3) + (i32.const 0) + (get_local $0) + ) + (get_local $3) + ) + ) + ) + (set_local $4 + (i32.load + (get_local $0) + ) + ) + (set_local $5 + (i32.load + (get_local $1) + ) + ) + (if + (i32.lt_s + (get_local $2) + (i32.const 0) + ) + (set_local $2 + (get_global $~lib/builtins/i32.MAX_VALUE) + ) + ) + (if + (i32.eqz + (get_local $5) + ) + (block + (if + (i32.eqz + (get_local $4) + ) + (return + (call $~lib/array/Array#constructor + (i32.const 0) + (i32.const 0) + ) + ) + ) + (set_local $4 + (select + (tee_local $3 + (get_local $4) + ) + (tee_local $6 + (get_local $2) + ) + (i32.lt_s + (get_local $3) + (get_local $6) + ) + ) + ) + (set_local $3 + (call $~lib/array/Array#constructor + (i32.const 0) + (get_local $4) + ) + ) + (set_local $6 + (i32.load + (get_local $3) + ) + ) + (block $break|0 + (set_local $7 + (i32.const 0) + ) + (loop $repeat|0 + (br_if $break|0 + (i32.eqz + (i32.lt_s + (get_local $7) + (get_local $4) + ) + ) + ) + (block + (set_local $8 + (call $~lib/internal/string/allocateUnsafe + (i32.const 1) + ) + ) + (i32.store16 offset=4 + (get_local $8) + (i32.load16_u offset=4 + (i32.add + (get_local $0) + (i32.shl + (get_local $7) + (i32.const 1) + ) + ) + ) + ) + (block $~lib/internal/arraybuffer/storeUnsafe|inlined.1 + (i32.store offset=8 + (i32.add + (get_local $6) + (i32.shl + (get_local $7) + (i32.const 2) + ) + ) + (get_local $8) + ) + ) + ) + (set_local $7 + (i32.add + (get_local $7) + (i32.const 1) + ) + ) + (br $repeat|0) + ) + ) + (return + (get_local $3) + ) + ) + (if + (i32.eqz + (get_local $4) + ) + (return + (i32.const 888) + ) + ) + ) + (set_local $9 + (call $~lib/array/Array#constructor + (i32.const 0) + (i32.const 0) + ) + ) + (set_local $10 + (i32.const 0) + ) + (set_local $11 + (i32.const 0) + ) + (set_local $12 + (i32.const 0) + ) + (block $break|1 + (loop $continue|1 + (if + (i32.ne + (tee_local $10 + (call $~lib/string/String#indexOf + (get_local $0) + (get_local $1) + (get_local $11) + ) + ) + (i32.const -1) + ) + (block + (block + (set_local $6 + (i32.sub + (get_local $10) + (get_local $11) + ) + ) + (if + (i32.gt_s + (get_local $6) + (i32.const 0) + ) + (block + (set_local $3 + (call $~lib/internal/string/allocateUnsafe + (get_local $6) + ) + ) + (call $~lib/internal/string/copyUnsafe + (get_local $3) + (i32.const 0) + (get_local $0) + (get_local $11) + (get_local $6) + ) + (drop + (call $~lib/array/Array#push + (get_local $9) + (get_local $3) + ) + ) + ) + (drop + (call $~lib/array/Array#push + (get_local $9) + (i32.const 256) + ) + ) + ) + (if + (i32.eq + (tee_local $12 + (i32.add + (get_local $12) + (i32.const 1) + ) + ) + (get_local $2) + ) + (return + (get_local $9) + ) + ) + (set_local $11 + (i32.add + (get_local $10) + (get_local $5) + ) + ) + ) + (br $continue|1) + ) + ) + ) + ) + (if + (i32.eqz + (get_local $11) + ) + (return + (block (result i32) + (set_local $13 + (call $~lib/array/Array#constructor + (i32.const 0) + (i32.const 1) + ) + ) + (call $~lib/array/Array#__unchecked_set + (get_local $13) + (i32.const 0) + (get_local $0) + ) + (get_local $13) + ) + ) + ) + (set_local $14 + (i32.sub + (get_local $4) + (get_local $11) + ) + ) + (if + (i32.gt_s + (get_local $14) + (i32.const 0) + ) + (block + (set_local $13 + (call $~lib/internal/string/allocateUnsafe + (get_local $14) + ) + ) + (call $~lib/internal/string/copyUnsafe + (get_local $13) + (i32.const 0) + (get_local $0) + (get_local $11) + (get_local $14) + ) + (drop + (call $~lib/array/Array#push + (get_local $9) + (get_local $13) + ) + ) + ) + (drop + (call $~lib/array/Array#push + (get_local $9) + (i32.const 256) + ) + ) + ) + (get_local $9) + ) + (func $~lib/string/String#split|trampoline (; 43 ;) (type $iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (block $2of2 + (block $1of2 + (block $0of2 + (block $outOfRange + (br_table $0of2 $1of2 $2of2 $outOfRange + (get_global $~argc) + ) + ) + (unreachable) + ) + (set_local $1 + (i32.const 0) + ) + ) + (set_local $2 + (get_global $~lib/builtins/i32.MAX_VALUE) + ) + ) + (call $~lib/string/String#split + (get_local $0) + (get_local $1) + (get_local $2) + ) + ) + (func $~lib/array/Array#__get (; 44 ;) (type $iii) (param $0 i32) (param $1 i32) (result i32) + (local $2 i32) + (set_local $2 + (i32.load + (get_local $0) + ) + ) + (if (result i32) + (i32.lt_u + (get_local $1) + (i32.shr_u + (i32.load + (get_local $2) + ) + (i32.const 2) + ) + ) + (block $~lib/internal/arraybuffer/loadUnsafe|inlined.0 (result i32) + (i32.load offset=8 + (i32.add + (get_local $2) + (i32.shl + (get_local $1) + (i32.const 2) + ) + ) + ) + ) + (unreachable) + ) + ) + (func $~lib/internal/number/decimalCount32 (; 45 ;) (type $ii) (param $0 i32) (result i32) (local $1 i32) (if (i32.lt_u @@ -5259,7 +6424,7 @@ ) (unreachable) ) - (func $~lib/internal/number/utoa32_lut (; 36 ;) (type $iiiv) (param $0 i32) (param $1 i32) (param $2 i32) + (func $~lib/internal/number/utoa32_lut (; 46 ;) (type $iiiv) (param $0 i32) (param $1 i32) (param $2 i32) (local $3 i32) (local $4 i32) (local $5 i32) @@ -5270,7 +6435,7 @@ (set_local $3 (i32.load (block $~lib/internal/number/DIGITS|inlined.0 (result i32) - (i32.const 1288) + (i32.const 1520) ) ) ) @@ -5478,7 +6643,7 @@ ) ) ) - (func $~lib/internal/number/itoa32 (; 37 ;) (type $ii) (param $0 i32) (result i32) + (func $~lib/internal/number/itoa32 (; 47 ;) (type $ii) (param $0 i32) (result i32) (local $1 i32) (local $2 i32) (local $3 i32) @@ -5534,7 +6699,7 @@ ) (get_local $3) ) - (func $~lib/internal/number/utoa32 (; 38 ;) (type $ii) (param $0 i32) (result i32) + (func $~lib/internal/number/utoa32 (; 48 ;) (type $ii) (param $0 i32) (result i32) (local $1 i32) (local $2 i32) (if @@ -5564,7 +6729,7 @@ ) (get_local $2) ) - (func $~lib/internal/number/decimalCount64 (; 39 ;) (type $Ii) (param $0 i64) (result i32) + (func $~lib/internal/number/decimalCount64 (; 49 ;) (type $Ii) (param $0 i64) (result i32) (local $1 i32) (if (i64.lt_u @@ -5656,7 +6821,7 @@ ) (unreachable) ) - (func $~lib/internal/number/utoa64_lut (; 40 ;) (type $iIiv) (param $0 i32) (param $1 i64) (param $2 i32) + (func $~lib/internal/number/utoa64_lut (; 50 ;) (type $iIiv) (param $0 i32) (param $1 i64) (param $2 i32) (local $3 i32) (local $4 i64) (local $5 i32) @@ -5671,7 +6836,7 @@ (set_local $3 (i32.load (block $~lib/internal/number/DIGITS|inlined.1 (result i32) - (i32.const 2080) + (i32.const 2312) ) ) ) @@ -5850,7 +7015,7 @@ (get_local $2) ) ) - (func $~lib/internal/number/utoa64 (; 41 ;) (type $Ii) (param $0 i64) (result i32) + (func $~lib/internal/number/utoa64 (; 51 ;) (type $Ii) (param $0 i64) (result i32) (local $1 i32) (local $2 i32) (local $3 i32) @@ -5915,7 +7080,7 @@ ) (get_local $1) ) - (func $~lib/internal/number/itoa64 (; 42 ;) (type $Ii) (param $0 i64) (result i32) + (func $~lib/internal/number/itoa64 (; 52 ;) (type $Ii) (param $0 i64) (result i32) (local $1 i32) (local $2 i32) (local $3 i32) @@ -6009,7 +7174,7 @@ ) (get_local $2) ) - (func $~lib/builtins/isFinite (; 43 ;) (type $Fi) (param $0 f64) (result i32) + (func $~lib/builtins/isFinite (; 53 ;) (type $Fi) (param $0 f64) (result i32) (f64.eq (f64.sub (get_local $0) @@ -6018,13 +7183,13 @@ (f64.const 0) ) ) - (func $~lib/builtins/isNaN (; 44 ;) (type $Fi) (param $0 f64) (result i32) + (func $~lib/builtins/isNaN (; 54 ;) (type $Fi) (param $0 f64) (result i32) (f64.ne (get_local $0) (get_local $0) ) ) - (func $~lib/internal/number/genDigits (; 45 ;) (type $iIiIiIii) (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/internal/number/genDigits (; 55 ;) (type $iIiIiIii) (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) @@ -6097,7 +7262,7 @@ (set_local $16 (i32.load (block $~lib/internal/number/POWERS10|inlined.0 (result i32) - (i32.const 4096) + (i32.const 4328) ) ) ) @@ -6750,7 +7915,7 @@ ) (get_local $15) ) - (func $~lib/internal/number/prettify (; 46 ;) (type $iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $~lib/internal/number/prettify (; 56 ;) (type $iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) (local $4 i32) (local $5 i32) @@ -6886,7 +8051,7 @@ ) ) ) - (block $~lib/memory/memory.copy|inlined.2 + (block $~lib/memory/memory.copy|inlined.3 (set_local $5 (i32.add (i32.add @@ -6955,7 +8120,7 @@ (get_local $3) ) ) - (block $~lib/memory/memory.copy|inlined.3 + (block $~lib/memory/memory.copy|inlined.4 (set_local $7 (i32.add (i32.add @@ -7114,7 +8279,7 @@ (i32.const 1) ) ) - (block $~lib/memory/memory.copy|inlined.4 + (block $~lib/memory/memory.copy|inlined.5 (set_local $6 (i32.add (i32.add @@ -7230,7 +8395,7 @@ ) (unreachable) ) - (func $~lib/internal/number/dtoa_core (; 47 ;) (type $iFi) (param $0 i32) (param $1 f64) (result i32) + (func $~lib/internal/number/dtoa_core (; 57 ;) (type $iFi) (param $0 i32) (param $1 f64) (result i32) (local $2 i32) (local $3 i64) (local $4 i32) @@ -7458,14 +8623,14 @@ (set_local $12 (i32.load (block $~lib/internal/number/FRC_POWERS|inlined.0 (result i32) - (i32.const 3760) + (i32.const 3992) ) ) ) (set_local $13 (i32.load (block $~lib/internal/number/EXP_POWERS|inlined.0 (result i32) - (i32.const 4024) + (i32.const 4256) ) ) ) @@ -7856,7 +9021,7 @@ (get_local $2) ) ) - (func $~lib/string/String#substring (; 48 ;) (type $iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $~lib/string/String#substring (; 58 ;) (type $iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) (local $4 i32) (local $5 i32) @@ -7876,7 +9041,7 @@ (call $~lib/env/abort (i32.const 0) (i32.const 80) - (i32.const 264) + (i32.const 269) (i32.const 4) ) (unreachable) @@ -8012,10 +9177,10 @@ ) (get_local $10) ) - (func $~lib/allocator/arena/__memory_free (; 49 ;) (type $iv) (param $0 i32) + (func $~lib/allocator/arena/__memory_free (; 59 ;) (type $iv) (param $0 i32) (nop) ) - (func $~lib/internal/number/dtoa (; 50 ;) (type $Fi) (param $0 f64) (result i32) + (func $~lib/internal/number/dtoa (; 60 ;) (type $Fi) (param $0 f64) (result i32) (local $1 i32) (local $2 i32) (local $3 i32) @@ -8025,7 +9190,7 @@ (f64.const 0) ) (return - (i32.const 2656) + (i32.const 2888) ) ) (if @@ -8040,13 +9205,13 @@ (get_local $0) ) (return - (i32.const 2672) + (i32.const 2904) ) ) (return (select - (i32.const 2688) - (i32.const 2712) + (i32.const 2920) + (i32.const 2944) (f64.lt (get_local $0) (f64.const 0) @@ -8101,7 +9266,10 @@ ) (get_local $3) ) - (func $start (; 51 ;) (type $v) + (func $start (; 61 ;) (type $v) + (local $0 i32) + (local $1 i32) + (local $2 i32) (set_global $~lib/allocator/arena/startOffset (i32.and (i32.add @@ -8330,10 +9498,27 @@ ) (if (i32.eqz - (call $~lib/string/String#includes - (get_global $std/string/str) - (i32.const 232) - (i32.const 0) + (i32.and + (block $~lib/string/String#includes|inlined.0 (result i32) + (set_local $0 + (get_global $std/string/str) + ) + (set_local $1 + (i32.const 232) + ) + (set_local $2 + (i32.const 0) + ) + (i32.ne + (call $~lib/string/String#indexOf + (get_local $0) + (get_local $1) + (get_local $2) + ) + (i32.const -1) + ) + ) + (i32.const 1) ) ) (block @@ -8768,8 +9953,8 @@ (i32.eqz (i32.eq (call $~lib/string/String#indexOf - (get_global $std/string/str) - (i32.const 256) + (i32.const 280) + (i32.const 280) (i32.const 0) ) (i32.const 0) @@ -8785,6 +9970,48 @@ (unreachable) ) ) + (if + (i32.eqz + (i32.eq + (call $~lib/string/String#indexOf + (get_global $std/string/str) + (get_global $std/string/str) + (i32.const 0) + ) + (i32.const 0) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 55) + (i32.const 0) + ) + (unreachable) + ) + ) + (if + (i32.eqz + (i32.eq + (call $~lib/string/String#indexOf + (get_global $std/string/str) + (i32.const 256) + (i32.const 0) + ) + (i32.const 0) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 56) + (i32.const 0) + ) + (unreachable) + ) + ) (if (i32.eqz (i32.eq @@ -8800,7 +10027,7 @@ (call $~lib/env/abort (i32.const 0) (i32.const 48) - (i32.const 55) + (i32.const 57) (i32.const 0) ) (unreachable) @@ -8821,7 +10048,7 @@ (call $~lib/env/abort (i32.const 0) (i32.const 48) - (i32.const 56) + (i32.const 58) (i32.const 0) ) (unreachable) @@ -8842,7 +10069,7 @@ (call $~lib/env/abort (i32.const 0) (i32.const 48) - (i32.const 57) + (i32.const 59) (i32.const 0) ) (unreachable) @@ -8863,7 +10090,7 @@ (call $~lib/env/abort (i32.const 0) (i32.const 48) - (i32.const 58) + (i32.const 60) (i32.const 0) ) (unreachable) @@ -8884,7 +10111,7 @@ (call $~lib/env/abort (i32.const 0) (i32.const 48) - (i32.const 59) + (i32.const 61) (i32.const 0) ) (unreachable) @@ -8910,7 +10137,7 @@ (call $~lib/env/abort (i32.const 0) (i32.const 48) - (i32.const 61) + (i32.const 63) (i32.const 0) ) (unreachable) @@ -8936,7 +10163,7 @@ (call $~lib/env/abort (i32.const 0) (i32.const 48) - (i32.const 62) + (i32.const 64) (i32.const 0) ) (unreachable) @@ -8964,7 +10191,7 @@ (call $~lib/env/abort (i32.const 0) (i32.const 48) - (i32.const 63) + (i32.const 65) (i32.const 0) ) (unreachable) @@ -8990,7 +10217,7 @@ (call $~lib/env/abort (i32.const 0) (i32.const 48) - (i32.const 64) + (i32.const 66) (i32.const 0) ) (unreachable) @@ -9016,7 +10243,7 @@ (call $~lib/env/abort (i32.const 0) (i32.const 48) - (i32.const 65) + (i32.const 67) (i32.const 0) ) (unreachable) @@ -9042,7 +10269,7 @@ (call $~lib/env/abort (i32.const 0) (i32.const 48) - (i32.const 66) + (i32.const 68) (i32.const 0) ) (unreachable) @@ -9063,7 +10290,7 @@ (call $~lib/env/abort (i32.const 0) (i32.const 48) - (i32.const 67) + (i32.const 69) (i32.const 0) ) (unreachable) @@ -9084,7 +10311,7 @@ (call $~lib/env/abort (i32.const 0) (i32.const 48) - (i32.const 68) + (i32.const 70) (i32.const 0) ) (unreachable) @@ -9105,7 +10332,7 @@ (call $~lib/env/abort (i32.const 0) (i32.const 48) - (i32.const 69) + (i32.const 71) (i32.const 0) ) (unreachable) @@ -9126,7 +10353,7 @@ (call $~lib/env/abort (i32.const 0) (i32.const 48) - (i32.const 70) + (i32.const 72) (i32.const 0) ) (unreachable) @@ -9147,7 +10374,7 @@ (call $~lib/env/abort (i32.const 0) (i32.const 48) - (i32.const 71) + (i32.const 73) (i32.const 0) ) (unreachable) @@ -9167,7 +10394,7 @@ (call $~lib/env/abort (i32.const 0) (i32.const 48) - (i32.const 77) + (i32.const 79) (i32.const 0) ) (unreachable) @@ -9187,7 +10414,7 @@ (call $~lib/env/abort (i32.const 0) (i32.const 48) - (i32.const 78) + (i32.const 80) (i32.const 0) ) (unreachable) @@ -9207,7 +10434,7 @@ (call $~lib/env/abort (i32.const 0) (i32.const 48) - (i32.const 79) + (i32.const 81) (i32.const 0) ) (unreachable) @@ -9227,7 +10454,7 @@ (call $~lib/env/abort (i32.const 0) (i32.const 48) - (i32.const 80) + (i32.const 82) (i32.const 0) ) (unreachable) @@ -9247,7 +10474,7 @@ (call $~lib/env/abort (i32.const 0) (i32.const 48) - (i32.const 81) + (i32.const 83) (i32.const 0) ) (unreachable) @@ -9267,7 +10494,7 @@ (call $~lib/env/abort (i32.const 0) (i32.const 48) - (i32.const 82) + (i32.const 84) (i32.const 0) ) (unreachable) @@ -9287,7 +10514,7 @@ (call $~lib/env/abort (i32.const 0) (i32.const 48) - (i32.const 83) + (i32.const 85) (i32.const 0) ) (unreachable) @@ -9307,7 +10534,7 @@ (call $~lib/env/abort (i32.const 0) (i32.const 48) - (i32.const 84) + (i32.const 86) (i32.const 0) ) (unreachable) @@ -9326,7 +10553,7 @@ (call $~lib/env/abort (i32.const 0) (i32.const 48) - (i32.const 86) + (i32.const 88) (i32.const 0) ) (unreachable) @@ -9345,7 +10572,7 @@ (call $~lib/env/abort (i32.const 0) (i32.const 48) - (i32.const 87) + (i32.const 89) (i32.const 0) ) (unreachable) @@ -9364,7 +10591,7 @@ (call $~lib/env/abort (i32.const 0) (i32.const 48) - (i32.const 88) + (i32.const 90) (i32.const 0) ) (unreachable) @@ -9383,7 +10610,7 @@ (call $~lib/env/abort (i32.const 0) (i32.const 48) - (i32.const 89) + (i32.const 91) (i32.const 0) ) (unreachable) @@ -9402,7 +10629,7 @@ (call $~lib/env/abort (i32.const 0) (i32.const 48) - (i32.const 90) + (i32.const 92) (i32.const 0) ) (unreachable) @@ -9425,7 +10652,7 @@ (call $~lib/env/abort (i32.const 0) (i32.const 48) - (i32.const 93) + (i32.const 95) (i32.const 0) ) (unreachable) @@ -9442,7 +10669,7 @@ (call $~lib/env/abort (i32.const 0) (i32.const 48) - (i32.const 94) + (i32.const 96) (i32.const 0) ) (unreachable) @@ -9459,7 +10686,7 @@ (call $~lib/env/abort (i32.const 0) (i32.const 48) - (i32.const 95) + (i32.const 97) (i32.const 0) ) (unreachable) @@ -9476,7 +10703,7 @@ (call $~lib/env/abort (i32.const 0) (i32.const 48) - (i32.const 96) + (i32.const 98) (i32.const 0) ) (unreachable) @@ -9493,7 +10720,7 @@ (call $~lib/env/abort (i32.const 0) (i32.const 48) - (i32.const 98) + (i32.const 100) (i32.const 0) ) (unreachable) @@ -9510,7 +10737,7 @@ (call $~lib/env/abort (i32.const 0) (i32.const 48) - (i32.const 99) + (i32.const 101) (i32.const 0) ) (unreachable) @@ -9527,7 +10754,7 @@ (call $~lib/env/abort (i32.const 0) (i32.const 48) - (i32.const 100) + (i32.const 102) (i32.const 0) ) (unreachable) @@ -9544,7 +10771,7 @@ (call $~lib/env/abort (i32.const 0) (i32.const 48) - (i32.const 101) + (i32.const 103) (i32.const 0) ) (unreachable) @@ -9559,25 +10786,6 @@ ) ) ) - (block - (call $~lib/env/abort - (i32.const 0) - (i32.const 48) - (i32.const 102) - (i32.const 0) - ) - (unreachable) - ) - ) - (if - (i32.eqz - (i32.eqz - (call $~lib/string/String.__lt - (i32.const 648) - (get_global $std/string/nullStr) - ) - ) - ) (block (call $~lib/env/abort (i32.const 0) @@ -9588,6 +10796,25 @@ (unreachable) ) ) + (if + (i32.eqz + (i32.eqz + (call $~lib/string/String.__lt + (i32.const 648) + (get_global $std/string/nullStr) + ) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 106) + (i32.const 0) + ) + (unreachable) + ) + ) (if (i32.eqz (i32.eqz @@ -9601,7 +10828,7 @@ (call $~lib/env/abort (i32.const 0) (i32.const 48) - (i32.const 105) + (i32.const 107) (i32.const 0) ) (unreachable) @@ -9618,7 +10845,7 @@ (call $~lib/env/abort (i32.const 0) (i32.const 48) - (i32.const 107) + (i32.const 109) (i32.const 0) ) (unreachable) @@ -9635,7 +10862,7 @@ (call $~lib/env/abort (i32.const 0) (i32.const 48) - (i32.const 108) + (i32.const 110) (i32.const 0) ) (unreachable) @@ -9652,7 +10879,7 @@ (call $~lib/env/abort (i32.const 0) (i32.const 48) - (i32.const 109) + (i32.const 111) (i32.const 0) ) (unreachable) @@ -9665,44 +10892,6 @@ (i32.const 288) ) ) - (block - (call $~lib/env/abort - (i32.const 0) - (i32.const 48) - (i32.const 110) - (i32.const 0) - ) - (unreachable) - ) - ) - (if - (i32.eqz - (i32.eqz - (call $~lib/string/String.__lt - (i32.const 288) - (i32.const 256) - ) - ) - ) - (block - (call $~lib/env/abort - (i32.const 0) - (i32.const 48) - (i32.const 111) - (i32.const 0) - ) - (unreachable) - ) - ) - (if - (i32.eqz - (i32.eqz - (call $~lib/string/String.__gt - (i32.const 256) - (i32.const 288) - ) - ) - ) (block (call $~lib/env/abort (i32.const 0) @@ -9717,7 +10906,7 @@ (i32.eqz (i32.eqz (call $~lib/string/String.__lt - (i32.const 256) + (i32.const 288) (i32.const 256) ) ) @@ -9737,7 +10926,7 @@ (i32.eqz (call $~lib/string/String.__gt (i32.const 256) - (i32.const 256) + (i32.const 288) ) ) ) @@ -9751,6 +10940,44 @@ (unreachable) ) ) + (if + (i32.eqz + (i32.eqz + (call $~lib/string/String.__lt + (i32.const 256) + (i32.const 256) + ) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 115) + (i32.const 0) + ) + (unreachable) + ) + ) + (if + (i32.eqz + (i32.eqz + (call $~lib/string/String.__gt + (i32.const 256) + (i32.const 256) + ) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 116) + (i32.const 0) + ) + (unreachable) + ) + ) (if (i32.eqz (call $~lib/string/String.__gte @@ -9762,7 +10989,7 @@ (call $~lib/env/abort (i32.const 0) (i32.const 48) - (i32.const 115) + (i32.const 117) (i32.const 0) ) (unreachable) @@ -9779,7 +11006,7 @@ (call $~lib/env/abort (i32.const 0) (i32.const 48) - (i32.const 116) + (i32.const 118) (i32.const 0) ) (unreachable) @@ -9811,7 +11038,7 @@ (call $~lib/env/abort (i32.const 0) (i32.const 48) - (i32.const 120) + (i32.const 122) (i32.const 0) ) (unreachable) @@ -9830,7 +11057,7 @@ (call $~lib/env/abort (i32.const 0) (i32.const 48) - (i32.const 122) + (i32.const 124) (i32.const 0) ) (unreachable) @@ -9850,7 +11077,7 @@ (call $~lib/env/abort (i32.const 0) (i32.const 48) - (i32.const 124) + (i32.const 126) (i32.const 0) ) (unreachable) @@ -9870,7 +11097,7 @@ (call $~lib/env/abort (i32.const 0) (i32.const 48) - (i32.const 125) + (i32.const 127) (i32.const 0) ) (unreachable) @@ -9890,7 +11117,7 @@ (call $~lib/env/abort (i32.const 0) (i32.const 48) - (i32.const 126) + (i32.const 128) (i32.const 0) ) (unreachable) @@ -9910,7 +11137,7 @@ (call $~lib/env/abort (i32.const 0) (i32.const 48) - (i32.const 127) + (i32.const 129) (i32.const 0) ) (unreachable) @@ -9930,7 +11157,7 @@ (call $~lib/env/abort (i32.const 0) (i32.const 48) - (i32.const 128) + (i32.const 130) (i32.const 0) ) (unreachable) @@ -9950,7 +11177,7 @@ (call $~lib/env/abort (i32.const 0) (i32.const 48) - (i32.const 129) + (i32.const 131) (i32.const 0) ) (unreachable) @@ -9970,7 +11197,7 @@ (call $~lib/env/abort (i32.const 0) (i32.const 48) - (i32.const 130) + (i32.const 132) (i32.const 0) ) (unreachable) @@ -9990,7 +11217,7 @@ (call $~lib/env/abort (i32.const 0) (i32.const 48) - (i32.const 131) + (i32.const 133) (i32.const 0) ) (unreachable) @@ -10010,7 +11237,973 @@ (call $~lib/env/abort (i32.const 0) (i32.const 48) - (i32.const 132) + (i32.const 134) + (i32.const 0) + ) + (unreachable) + ) + ) + (set_global $std/string/sa + (block (result i32) + (set_global $~argc + (i32.const 0) + ) + (call $~lib/string/String#split|trampoline + (i32.const 256) + (i32.const 0) + (i32.const 0) + ) + ) + ) + (if + (i32.eqz + (if (result i32) + (tee_local $2 + (i32.eq + (block $~lib/array/Array#get:length|inlined.0 (result i32) + (set_local $2 + (get_global $std/string/sa) + ) + (i32.load offset=4 + (get_local $2) + ) + ) + (i32.const 1) + ) + ) + (call $~lib/string/String.__eq + (call $~lib/array/Array#__get + (get_global $std/string/sa) + (i32.const 0) + ) + (i32.const 256) + ) + (get_local $2) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 139) + (i32.const 0) + ) + (unreachable) + ) + ) + (set_global $std/string/sa + (block (result i32) + (set_global $~argc + (i32.const 1) + ) + (call $~lib/string/String#split|trampoline + (i32.const 256) + (i32.const 256) + (i32.const 0) + ) + ) + ) + (if + (i32.eqz + (i32.eq + (block $~lib/array/Array#get:length|inlined.1 (result i32) + (set_local $2 + (get_global $std/string/sa) + ) + (i32.load offset=4 + (get_local $2) + ) + ) + (i32.const 0) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 141) + (i32.const 0) + ) + (unreachable) + ) + ) + (set_global $std/string/sa + (block (result i32) + (set_global $~argc + (i32.const 1) + ) + (call $~lib/string/String#split|trampoline + (i32.const 256) + (i32.const 432) + (i32.const 0) + ) + ) + ) + (if + (i32.eqz + (if (result i32) + (tee_local $2 + (i32.eq + (block $~lib/array/Array#get:length|inlined.2 (result i32) + (set_local $2 + (get_global $std/string/sa) + ) + (i32.load offset=4 + (get_local $2) + ) + ) + (i32.const 1) + ) + ) + (call $~lib/string/String.__eq + (call $~lib/array/Array#__get + (get_global $std/string/sa) + (i32.const 0) + ) + (i32.const 256) + ) + (get_local $2) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 143) + (i32.const 0) + ) + (unreachable) + ) + ) + (set_global $std/string/sa + (block (result i32) + (set_global $~argc + (i32.const 1) + ) + (call $~lib/string/String#split|trampoline + (i32.const 896) + (i32.const 912) + (i32.const 0) + ) + ) + ) + (if + (i32.eqz + (if (result i32) + (tee_local $2 + (i32.eq + (block $~lib/array/Array#get:length|inlined.3 (result i32) + (set_local $2 + (get_global $std/string/sa) + ) + (i32.load offset=4 + (get_local $2) + ) + ) + (i32.const 1) + ) + ) + (call $~lib/string/String.__eq + (call $~lib/array/Array#__get + (get_global $std/string/sa) + (i32.const 0) + ) + (i32.const 896) + ) + (get_local $2) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 145) + (i32.const 0) + ) + (unreachable) + ) + ) + (set_global $std/string/sa + (block (result i32) + (set_global $~argc + (i32.const 1) + ) + (call $~lib/string/String#split|trampoline + (i32.const 896) + (i32.const 432) + (i32.const 0) + ) + ) + ) + (if + (i32.eqz + (if (result i32) + (tee_local $2 + (if (result i32) + (tee_local $2 + (if (result i32) + (tee_local $2 + (i32.eq + (block $~lib/array/Array#get:length|inlined.4 (result i32) + (set_local $2 + (get_global $std/string/sa) + ) + (i32.load offset=4 + (get_local $2) + ) + ) + (i32.const 3) + ) + ) + (call $~lib/string/String.__eq + (call $~lib/array/Array#__get + (get_global $std/string/sa) + (i32.const 0) + ) + (i32.const 280) + ) + (get_local $2) + ) + ) + (call $~lib/string/String.__eq + (call $~lib/array/Array#__get + (get_global $std/string/sa) + (i32.const 1) + ) + (i32.const 648) + ) + (get_local $2) + ) + ) + (call $~lib/string/String.__eq + (call $~lib/array/Array#__get + (get_global $std/string/sa) + (i32.const 2) + ) + (i32.const 920) + ) + (get_local $2) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 147) + (i32.const 0) + ) + (unreachable) + ) + ) + (set_global $std/string/sa + (block (result i32) + (set_global $~argc + (i32.const 1) + ) + (call $~lib/string/String#split|trampoline + (i32.const 928) + (i32.const 952) + (i32.const 0) + ) + ) + ) + (if + (i32.eqz + (if (result i32) + (tee_local $2 + (if (result i32) + (tee_local $2 + (if (result i32) + (tee_local $2 + (i32.eq + (block $~lib/array/Array#get:length|inlined.5 (result i32) + (set_local $2 + (get_global $std/string/sa) + ) + (i32.load offset=4 + (get_local $2) + ) + ) + (i32.const 3) + ) + ) + (call $~lib/string/String.__eq + (call $~lib/array/Array#__get + (get_global $std/string/sa) + (i32.const 0) + ) + (i32.const 280) + ) + (get_local $2) + ) + ) + (call $~lib/string/String.__eq + (call $~lib/array/Array#__get + (get_global $std/string/sa) + (i32.const 1) + ) + (i32.const 648) + ) + (get_local $2) + ) + ) + (call $~lib/string/String.__eq + (call $~lib/array/Array#__get + (get_global $std/string/sa) + (i32.const 2) + ) + (i32.const 920) + ) + (get_local $2) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 149) + (i32.const 0) + ) + (unreachable) + ) + ) + (set_global $std/string/sa + (block (result i32) + (set_global $~argc + (i32.const 1) + ) + (call $~lib/string/String#split|trampoline + (i32.const 960) + (i32.const 432) + (i32.const 0) + ) + ) + ) + (if + (i32.eqz + (if (result i32) + (tee_local $2 + (if (result i32) + (tee_local $2 + (if (result i32) + (tee_local $2 + (if (result i32) + (tee_local $2 + (i32.eq + (block $~lib/array/Array#get:length|inlined.6 (result i32) + (set_local $2 + (get_global $std/string/sa) + ) + (i32.load offset=4 + (get_local $2) + ) + ) + (i32.const 4) + ) + ) + (call $~lib/string/String.__eq + (call $~lib/array/Array#__get + (get_global $std/string/sa) + (i32.const 0) + ) + (i32.const 280) + ) + (get_local $2) + ) + ) + (call $~lib/string/String.__eq + (call $~lib/array/Array#__get + (get_global $std/string/sa) + (i32.const 1) + ) + (i32.const 648) + ) + (get_local $2) + ) + ) + (call $~lib/string/String.__eq + (call $~lib/array/Array#__get + (get_global $std/string/sa) + (i32.const 2) + ) + (i32.const 256) + ) + (get_local $2) + ) + ) + (call $~lib/string/String.__eq + (call $~lib/array/Array#__get + (get_global $std/string/sa) + (i32.const 3) + ) + (i32.const 920) + ) + (get_local $2) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 151) + (i32.const 0) + ) + (unreachable) + ) + ) + (set_global $std/string/sa + (block (result i32) + (set_global $~argc + (i32.const 1) + ) + (call $~lib/string/String#split|trampoline + (i32.const 976) + (i32.const 432) + (i32.const 0) + ) + ) + ) + (if + (i32.eqz + (if (result i32) + (tee_local $2 + (if (result i32) + (tee_local $2 + (if (result i32) + (tee_local $2 + (if (result i32) + (tee_local $2 + (i32.eq + (block $~lib/array/Array#get:length|inlined.7 (result i32) + (set_local $2 + (get_global $std/string/sa) + ) + (i32.load offset=4 + (get_local $2) + ) + ) + (i32.const 4) + ) + ) + (call $~lib/string/String.__eq + (call $~lib/array/Array#__get + (get_global $std/string/sa) + (i32.const 0) + ) + (i32.const 256) + ) + (get_local $2) + ) + ) + (call $~lib/string/String.__eq + (call $~lib/array/Array#__get + (get_global $std/string/sa) + (i32.const 1) + ) + (i32.const 280) + ) + (get_local $2) + ) + ) + (call $~lib/string/String.__eq + (call $~lib/array/Array#__get + (get_global $std/string/sa) + (i32.const 2) + ) + (i32.const 648) + ) + (get_local $2) + ) + ) + (call $~lib/string/String.__eq + (call $~lib/array/Array#__get + (get_global $std/string/sa) + (i32.const 3) + ) + (i32.const 920) + ) + (get_local $2) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 153) + (i32.const 0) + ) + (unreachable) + ) + ) + (set_global $std/string/sa + (block (result i32) + (set_global $~argc + (i32.const 1) + ) + (call $~lib/string/String#split|trampoline + (i32.const 992) + (i32.const 432) + (i32.const 0) + ) + ) + ) + (if + (i32.eqz + (if (result i32) + (tee_local $2 + (if (result i32) + (tee_local $2 + (if (result i32) + (tee_local $2 + (if (result i32) + (tee_local $2 + (i32.eq + (block $~lib/array/Array#get:length|inlined.8 (result i32) + (set_local $2 + (get_global $std/string/sa) + ) + (i32.load offset=4 + (get_local $2) + ) + ) + (i32.const 4) + ) + ) + (call $~lib/string/String.__eq + (call $~lib/array/Array#__get + (get_global $std/string/sa) + (i32.const 0) + ) + (i32.const 280) + ) + (get_local $2) + ) + ) + (call $~lib/string/String.__eq + (call $~lib/array/Array#__get + (get_global $std/string/sa) + (i32.const 1) + ) + (i32.const 648) + ) + (get_local $2) + ) + ) + (call $~lib/string/String.__eq + (call $~lib/array/Array#__get + (get_global $std/string/sa) + (i32.const 2) + ) + (i32.const 920) + ) + (get_local $2) + ) + ) + (call $~lib/string/String.__eq + (call $~lib/array/Array#__get + (get_global $std/string/sa) + (i32.const 3) + ) + (i32.const 256) + ) + (get_local $2) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 155) + (i32.const 0) + ) + (unreachable) + ) + ) + (set_global $std/string/sa + (block (result i32) + (set_global $~argc + (i32.const 1) + ) + (call $~lib/string/String#split|trampoline + (i32.const 288) + (i32.const 256) + (i32.const 0) + ) + ) + ) + (if + (i32.eqz + (if (result i32) + (tee_local $2 + (if (result i32) + (tee_local $2 + (if (result i32) + (tee_local $2 + (i32.eq + (block $~lib/array/Array#get:length|inlined.9 (result i32) + (set_local $2 + (get_global $std/string/sa) + ) + (i32.load offset=4 + (get_local $2) + ) + ) + (i32.const 3) + ) + ) + (call $~lib/string/String.__eq + (call $~lib/array/Array#__get + (get_global $std/string/sa) + (i32.const 0) + ) + (i32.const 280) + ) + (get_local $2) + ) + ) + (call $~lib/string/String.__eq + (call $~lib/array/Array#__get + (get_global $std/string/sa) + (i32.const 1) + ) + (i32.const 648) + ) + (get_local $2) + ) + ) + (call $~lib/string/String.__eq + (call $~lib/array/Array#__get + (get_global $std/string/sa) + (i32.const 2) + ) + (i32.const 920) + ) + (get_local $2) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 157) + (i32.const 0) + ) + (unreachable) + ) + ) + (set_global $std/string/sa + (call $~lib/string/String#split + (i32.const 288) + (i32.const 256) + (i32.const 0) + ) + ) + (if + (i32.eqz + (i32.eq + (block $~lib/array/Array#get:length|inlined.10 (result i32) + (set_local $2 + (get_global $std/string/sa) + ) + (i32.load offset=4 + (get_local $2) + ) + ) + (i32.const 0) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 159) + (i32.const 0) + ) + (unreachable) + ) + ) + (set_global $std/string/sa + (call $~lib/string/String#split + (i32.const 288) + (i32.const 256) + (i32.const 1) + ) + ) + (if + (i32.eqz + (if (result i32) + (tee_local $2 + (i32.eq + (block $~lib/array/Array#get:length|inlined.11 (result i32) + (set_local $2 + (get_global $std/string/sa) + ) + (i32.load offset=4 + (get_local $2) + ) + ) + (i32.const 1) + ) + ) + (call $~lib/string/String.__eq + (call $~lib/array/Array#__get + (get_global $std/string/sa) + (i32.const 0) + ) + (i32.const 280) + ) + (get_local $2) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 161) + (i32.const 0) + ) + (unreachable) + ) + ) + (set_global $std/string/sa + (call $~lib/string/String#split + (i32.const 896) + (i32.const 432) + (i32.const 1) + ) + ) + (if + (i32.eqz + (if (result i32) + (tee_local $2 + (i32.eq + (block $~lib/array/Array#get:length|inlined.12 (result i32) + (set_local $2 + (get_global $std/string/sa) + ) + (i32.load offset=4 + (get_local $2) + ) + ) + (i32.const 1) + ) + ) + (call $~lib/string/String.__eq + (call $~lib/array/Array#__get + (get_global $std/string/sa) + (i32.const 0) + ) + (i32.const 280) + ) + (get_local $2) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 163) + (i32.const 0) + ) + (unreachable) + ) + ) + (set_global $std/string/sa + (call $~lib/string/String#split + (i32.const 288) + (i32.const 256) + (i32.const 4) + ) + ) + (if + (i32.eqz + (if (result i32) + (tee_local $2 + (if (result i32) + (tee_local $2 + (if (result i32) + (tee_local $2 + (i32.eq + (block $~lib/array/Array#get:length|inlined.13 (result i32) + (set_local $2 + (get_global $std/string/sa) + ) + (i32.load offset=4 + (get_local $2) + ) + ) + (i32.const 3) + ) + ) + (call $~lib/string/String.__eq + (call $~lib/array/Array#__get + (get_global $std/string/sa) + (i32.const 0) + ) + (i32.const 280) + ) + (get_local $2) + ) + ) + (call $~lib/string/String.__eq + (call $~lib/array/Array#__get + (get_global $std/string/sa) + (i32.const 1) + ) + (i32.const 648) + ) + (get_local $2) + ) + ) + (call $~lib/string/String.__eq + (call $~lib/array/Array#__get + (get_global $std/string/sa) + (i32.const 2) + ) + (i32.const 920) + ) + (get_local $2) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 165) + (i32.const 0) + ) + (unreachable) + ) + ) + (set_global $std/string/sa + (call $~lib/string/String#split + (i32.const 288) + (i32.const 256) + (i32.const -1) + ) + ) + (if + (i32.eqz + (if (result i32) + (tee_local $2 + (if (result i32) + (tee_local $2 + (if (result i32) + (tee_local $2 + (i32.eq + (block $~lib/array/Array#get:length|inlined.14 (result i32) + (set_local $2 + (get_global $std/string/sa) + ) + (i32.load offset=4 + (get_local $2) + ) + ) + (i32.const 3) + ) + ) + (call $~lib/string/String.__eq + (call $~lib/array/Array#__get + (get_global $std/string/sa) + (i32.const 0) + ) + (i32.const 280) + ) + (get_local $2) + ) + ) + (call $~lib/string/String.__eq + (call $~lib/array/Array#__get + (get_global $std/string/sa) + (i32.const 1) + ) + (i32.const 648) + ) + (get_local $2) + ) + ) + (call $~lib/string/String.__eq + (call $~lib/array/Array#__get + (get_global $std/string/sa) + (i32.const 2) + ) + (i32.const 920) + ) + (get_local $2) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 167) + (i32.const 0) + ) + (unreachable) + ) + ) + (set_global $std/string/sa + (call $~lib/string/String#split + (i32.const 896) + (i32.const 432) + (i32.const -1) + ) + ) + (if + (i32.eqz + (if (result i32) + (tee_local $2 + (if (result i32) + (tee_local $2 + (if (result i32) + (tee_local $2 + (i32.eq + (block $~lib/array/Array#get:length|inlined.15 (result i32) + (set_local $2 + (get_global $std/string/sa) + ) + (i32.load offset=4 + (get_local $2) + ) + ) + (i32.const 3) + ) + ) + (call $~lib/string/String.__eq + (call $~lib/array/Array#__get + (get_global $std/string/sa) + (i32.const 0) + ) + (i32.const 280) + ) + (get_local $2) + ) + ) + (call $~lib/string/String.__eq + (call $~lib/array/Array#__get + (get_global $std/string/sa) + (i32.const 1) + ) + (i32.const 648) + ) + (get_local $2) + ) + ) + (call $~lib/string/String.__eq + (call $~lib/array/Array#__get + (get_global $std/string/sa) + (i32.const 2) + ) + (i32.const 920) + ) + (get_local $2) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 169) (i32.const 0) ) (unreachable) @@ -10029,7 +12222,7 @@ (call $~lib/env/abort (i32.const 0) (i32.const 48) - (i32.const 134) + (i32.const 171) (i32.const 0) ) (unreachable) @@ -10048,7 +12241,7 @@ (call $~lib/env/abort (i32.const 0) (i32.const 48) - (i32.const 135) + (i32.const 172) (i32.const 0) ) (unreachable) @@ -10060,14 +12253,14 @@ (call $~lib/internal/number/itoa32 (i32.const 8) ) - (i32.const 1296) + (i32.const 1528) ) ) (block (call $~lib/env/abort (i32.const 0) (i32.const 48) - (i32.const 136) + (i32.const 173) (i32.const 0) ) (unreachable) @@ -10086,7 +12279,7 @@ (call $~lib/env/abort (i32.const 0) (i32.const 48) - (i32.const 137) + (i32.const 174) (i32.const 0) ) (unreachable) @@ -10098,14 +12291,14 @@ (call $~lib/internal/number/itoa32 (i32.const -1000) ) - (i32.const 1304) + (i32.const 1536) ) ) (block (call $~lib/env/abort (i32.const 0) (i32.const 48) - (i32.const 138) + (i32.const 175) (i32.const 0) ) (unreachable) @@ -10117,14 +12310,14 @@ (call $~lib/internal/number/itoa32 (i32.const 1234) ) - (i32.const 1320) + (i32.const 1552) ) ) (block (call $~lib/env/abort (i32.const 0) (i32.const 48) - (i32.const 139) + (i32.const 176) (i32.const 0) ) (unreachable) @@ -10136,14 +12329,14 @@ (call $~lib/internal/number/itoa32 (i32.const 12345) ) - (i32.const 1336) + (i32.const 1568) ) ) (block (call $~lib/env/abort (i32.const 0) (i32.const 48) - (i32.const 140) + (i32.const 177) (i32.const 0) ) (unreachable) @@ -10155,14 +12348,14 @@ (call $~lib/internal/number/itoa32 (i32.const 123456) ) - (i32.const 1352) + (i32.const 1584) ) ) (block (call $~lib/env/abort (i32.const 0) (i32.const 48) - (i32.const 141) + (i32.const 178) (i32.const 0) ) (unreachable) @@ -10174,14 +12367,14 @@ (call $~lib/internal/number/itoa32 (i32.const 1111111) ) - (i32.const 1368) + (i32.const 1600) ) ) (block (call $~lib/env/abort (i32.const 0) (i32.const 48) - (i32.const 142) + (i32.const 179) (i32.const 0) ) (unreachable) @@ -10193,14 +12386,14 @@ (call $~lib/internal/number/itoa32 (i32.const 1234567) ) - (i32.const 1392) + (i32.const 1624) ) ) (block (call $~lib/env/abort (i32.const 0) (i32.const 48) - (i32.const 143) + (i32.const 180) (i32.const 0) ) (unreachable) @@ -10212,14 +12405,14 @@ (call $~lib/internal/number/itoa32 (i32.const 2147483646) ) - (i32.const 1416) + (i32.const 1648) ) ) (block (call $~lib/env/abort (i32.const 0) (i32.const 48) - (i32.const 144) + (i32.const 181) (i32.const 0) ) (unreachable) @@ -10231,14 +12424,14 @@ (call $~lib/internal/number/itoa32 (i32.const 2147483647) ) - (i32.const 1440) + (i32.const 1672) ) ) (block (call $~lib/env/abort (i32.const 0) (i32.const 48) - (i32.const 145) + (i32.const 182) (i32.const 0) ) (unreachable) @@ -10250,14 +12443,14 @@ (call $~lib/internal/number/itoa32 (i32.const -2147483648) ) - (i32.const 1464) + (i32.const 1696) ) ) (block (call $~lib/env/abort (i32.const 0) (i32.const 48) - (i32.const 146) + (i32.const 183) (i32.const 0) ) (unreachable) @@ -10269,14 +12462,14 @@ (call $~lib/internal/number/itoa32 (i32.const -1) ) - (i32.const 1496) + (i32.const 1728) ) ) (block (call $~lib/env/abort (i32.const 0) (i32.const 48) - (i32.const 147) + (i32.const 184) (i32.const 0) ) (unreachable) @@ -10295,7 +12488,7 @@ (call $~lib/env/abort (i32.const 0) (i32.const 48) - (i32.const 149) + (i32.const 186) (i32.const 0) ) (unreachable) @@ -10307,638 +12500,7 @@ (call $~lib/internal/number/utoa32 (i32.const 1000) ) - (i32.const 1504) - ) - ) - (block - (call $~lib/env/abort - (i32.const 0) - (i32.const 48) - (i32.const 150) - (i32.const 0) - ) - (unreachable) - ) - ) - (if - (i32.eqz - (call $~lib/string/String.__eq - (call $~lib/internal/number/utoa32 - (i32.const 2147483647) - ) - (i32.const 1440) - ) - ) - (block - (call $~lib/env/abort - (i32.const 0) - (i32.const 48) - (i32.const 151) - (i32.const 0) - ) - (unreachable) - ) - ) - (if - (i32.eqz - (call $~lib/string/String.__eq - (call $~lib/internal/number/utoa32 - (i32.const -2147483648) - ) - (i32.const 1520) - ) - ) - (block - (call $~lib/env/abort - (i32.const 0) - (i32.const 48) - (i32.const 152) - (i32.const 0) - ) - (unreachable) - ) - ) - (if - (i32.eqz - (call $~lib/string/String.__eq - (call $~lib/internal/number/utoa32 - (get_global $~lib/builtins/u32.MAX_VALUE) - ) - (i32.const 1544) - ) - ) - (block - (call $~lib/env/abort - (i32.const 0) - (i32.const 48) - (i32.const 153) - (i32.const 0) - ) - (unreachable) - ) - ) - (if - (i32.eqz - (call $~lib/string/String.__eq - (call $~lib/internal/number/utoa64 - (i64.const 0) - ) - (i32.const 480) - ) - ) - (block - (call $~lib/env/abort - (i32.const 0) - (i32.const 48) - (i32.const 155) - (i32.const 0) - ) - (unreachable) - ) - ) - (if - (i32.eqz - (call $~lib/string/String.__eq - (call $~lib/internal/number/utoa64 - (i64.const 1234) - ) - (i32.const 1320) - ) - ) - (block - (call $~lib/env/abort - (i32.const 0) - (i32.const 48) - (i32.const 156) - (i32.const 0) - ) - (unreachable) - ) - ) - (if - (i32.eqz - (call $~lib/string/String.__eq - (call $~lib/internal/number/utoa64 - (i64.const 99999999) - ) - (i32.const 2088) - ) - ) - (block - (call $~lib/env/abort - (i32.const 0) - (i32.const 48) - (i32.const 157) - (i32.const 0) - ) - (unreachable) - ) - ) - (if - (i32.eqz - (call $~lib/string/String.__eq - (call $~lib/internal/number/utoa64 - (i64.const 100000000) - ) - (i32.const 2112) - ) - ) - (block - (call $~lib/env/abort - (i32.const 0) - (i32.const 48) - (i32.const 158) - (i32.const 0) - ) - (unreachable) - ) - ) - (if - (i32.eqz - (call $~lib/string/String.__eq - (call $~lib/internal/number/utoa64 - (i64.const 4294967295) - ) - (i32.const 1544) - ) - ) - (block - (call $~lib/env/abort - (i32.const 0) - (i32.const 48) - (i32.const 159) - (i32.const 0) - ) - (unreachable) - ) - ) - (if - (i32.eqz - (call $~lib/string/String.__eq - (call $~lib/internal/number/utoa64 - (i64.const 68719476735) - ) - (i32.const 2136) - ) - ) - (block - (call $~lib/env/abort - (i32.const 0) - (i32.const 48) - (i32.const 160) - (i32.const 0) - ) - (unreachable) - ) - ) - (if - (i32.eqz - (call $~lib/string/String.__eq - (call $~lib/internal/number/utoa64 - (i64.const 868719476735) - ) - (i32.const 2168) - ) - ) - (block - (call $~lib/env/abort - (i32.const 0) - (i32.const 48) - (i32.const 161) - (i32.const 0) - ) - (unreachable) - ) - ) - (if - (i32.eqz - (call $~lib/string/String.__eq - (call $~lib/internal/number/utoa64 - (i64.const 999868719476735) - ) - (i32.const 2200) - ) - ) - (block - (call $~lib/env/abort - (i32.const 0) - (i32.const 48) - (i32.const 162) - (i32.const 0) - ) - (unreachable) - ) - ) - (if - (i32.eqz - (call $~lib/string/String.__eq - (call $~lib/internal/number/utoa64 - (i64.const 9999868719476735) - ) - (i32.const 2240) - ) - ) - (block - (call $~lib/env/abort - (i32.const 0) - (i32.const 48) - (i32.const 163) - (i32.const 0) - ) - (unreachable) - ) - ) - (if - (i32.eqz - (call $~lib/string/String.__eq - (call $~lib/internal/number/utoa64 - (i64.const 19999868719476735) - ) - (i32.const 2280) - ) - ) - (block - (call $~lib/env/abort - (i32.const 0) - (i32.const 48) - (i32.const 164) - (i32.const 0) - ) - (unreachable) - ) - ) - (if - (i32.eqz - (call $~lib/string/String.__eq - (call $~lib/internal/number/utoa64 - (get_global $~lib/builtins/u64.MAX_VALUE) - ) - (i32.const 2320) - ) - ) - (block - (call $~lib/env/abort - (i32.const 0) - (i32.const 48) - (i32.const 165) - (i32.const 0) - ) - (unreachable) - ) - ) - (if - (i32.eqz - (call $~lib/string/String.__eq - (call $~lib/internal/number/itoa64 - (i64.const 0) - ) - (i32.const 480) - ) - ) - (block - (call $~lib/env/abort - (i32.const 0) - (i32.const 48) - (i32.const 167) - (i32.const 0) - ) - (unreachable) - ) - ) - (if - (i32.eqz - (call $~lib/string/String.__eq - (call $~lib/internal/number/itoa64 - (i64.const -1234) - ) - (i32.const 2368) - ) - ) - (block - (call $~lib/env/abort - (i32.const 0) - (i32.const 48) - (i32.const 168) - (i32.const 0) - ) - (unreachable) - ) - ) - (if - (i32.eqz - (call $~lib/string/String.__eq - (call $~lib/internal/number/itoa64 - (i64.const 4294967295) - ) - (i32.const 1544) - ) - ) - (block - (call $~lib/env/abort - (i32.const 0) - (i32.const 48) - (i32.const 169) - (i32.const 0) - ) - (unreachable) - ) - ) - (if - (i32.eqz - (call $~lib/string/String.__eq - (call $~lib/internal/number/itoa64 - (i64.const -4294967295) - ) - (i32.const 2384) - ) - ) - (block - (call $~lib/env/abort - (i32.const 0) - (i32.const 48) - (i32.const 170) - (i32.const 0) - ) - (unreachable) - ) - ) - (if - (i32.eqz - (call $~lib/string/String.__eq - (call $~lib/internal/number/itoa64 - (i64.const 68719476735) - ) - (i32.const 2136) - ) - ) - (block - (call $~lib/env/abort - (i32.const 0) - (i32.const 48) - (i32.const 171) - (i32.const 0) - ) - (unreachable) - ) - ) - (if - (i32.eqz - (call $~lib/string/String.__eq - (call $~lib/internal/number/itoa64 - (i64.const -68719476735) - ) - (i32.const 2416) - ) - ) - (block - (call $~lib/env/abort - (i32.const 0) - (i32.const 48) - (i32.const 172) - (i32.const 0) - ) - (unreachable) - ) - ) - (if - (i32.eqz - (call $~lib/string/String.__eq - (call $~lib/internal/number/itoa64 - (i64.const -868719476735) - ) - (i32.const 2448) - ) - ) - (block - (call $~lib/env/abort - (i32.const 0) - (i32.const 48) - (i32.const 173) - (i32.const 0) - ) - (unreachable) - ) - ) - (if - (i32.eqz - (call $~lib/string/String.__eq - (call $~lib/internal/number/itoa64 - (i64.const -999868719476735) - ) - (i32.const 2480) - ) - ) - (block - (call $~lib/env/abort - (i32.const 0) - (i32.const 48) - (i32.const 174) - (i32.const 0) - ) - (unreachable) - ) - ) - (if - (i32.eqz - (call $~lib/string/String.__eq - (call $~lib/internal/number/itoa64 - (i64.const -19999868719476735) - ) - (i32.const 2520) - ) - ) - (block - (call $~lib/env/abort - (i32.const 0) - (i32.const 48) - (i32.const 175) - (i32.const 0) - ) - (unreachable) - ) - ) - (if - (i32.eqz - (call $~lib/string/String.__eq - (call $~lib/internal/number/itoa64 - (get_global $~lib/builtins/i64.MAX_VALUE) - ) - (i32.const 2560) - ) - ) - (block - (call $~lib/env/abort - (i32.const 0) - (i32.const 48) - (i32.const 176) - (i32.const 0) - ) - (unreachable) - ) - ) - (if - (i32.eqz - (call $~lib/string/String.__eq - (call $~lib/internal/number/itoa64 - (get_global $~lib/builtins/i64.MIN_VALUE) - ) - (i32.const 2608) - ) - ) - (block - (call $~lib/env/abort - (i32.const 0) - (i32.const 48) - (i32.const 177) - (i32.const 0) - ) - (unreachable) - ) - ) - (if - (i32.eqz - (call $~lib/string/String.__eq - (call $~lib/internal/number/dtoa - (f64.const 0) - ) - (i32.const 2656) - ) - ) - (block - (call $~lib/env/abort - (i32.const 0) - (i32.const 48) - (i32.const 180) - (i32.const 0) - ) - (unreachable) - ) - ) - (if - (i32.eqz - (call $~lib/string/String.__eq - (call $~lib/internal/number/dtoa - (f64.const -0) - ) - (i32.const 2656) - ) - ) - (block - (call $~lib/env/abort - (i32.const 0) - (i32.const 48) - (i32.const 181) - (i32.const 0) - ) - (unreachable) - ) - ) - (if - (i32.eqz - (call $~lib/string/String.__eq - (call $~lib/internal/number/dtoa - (f64.const nan:0x8000000000000) - ) - (i32.const 2672) - ) - ) - (block - (call $~lib/env/abort - (i32.const 0) - (i32.const 48) - (i32.const 182) - (i32.const 0) - ) - (unreachable) - ) - ) - (if - (i32.eqz - (call $~lib/string/String.__eq - (call $~lib/internal/number/dtoa - (f64.const inf) - ) - (i32.const 2712) - ) - ) - (block - (call $~lib/env/abort - (i32.const 0) - (i32.const 48) - (i32.const 183) - (i32.const 0) - ) - (unreachable) - ) - ) - (if - (i32.eqz - (call $~lib/string/String.__eq - (call $~lib/internal/number/dtoa - (f64.neg - (f64.const inf) - ) - ) - (i32.const 2688) - ) - ) - (block - (call $~lib/env/abort - (i32.const 0) - (i32.const 48) - (i32.const 184) - (i32.const 0) - ) - (unreachable) - ) - ) - (if - (i32.eqz - (call $~lib/string/String.__eq - (call $~lib/internal/number/dtoa - (get_global $~lib/builtins/f64.EPSILON) - ) - (i32.const 4104) - ) - ) - (block - (call $~lib/env/abort - (i32.const 0) - (i32.const 48) - (i32.const 185) - (i32.const 0) - ) - (unreachable) - ) - ) - (if - (i32.eqz - (call $~lib/string/String.__eq - (call $~lib/internal/number/dtoa - (f64.neg - (get_global $~lib/builtins/f64.EPSILON) - ) - ) - (i32.const 4152) - ) - ) - (block - (call $~lib/env/abort - (i32.const 0) - (i32.const 48) - (i32.const 186) - (i32.const 0) - ) - (unreachable) - ) - ) - (if - (i32.eqz - (call $~lib/string/String.__eq - (call $~lib/internal/number/dtoa - (get_global $~lib/builtins/f64.MAX_VALUE) - ) - (i32.const 4200) + (i32.const 1736) ) ) (block @@ -10954,12 +12516,10 @@ (if (i32.eqz (call $~lib/string/String.__eq - (call $~lib/internal/number/dtoa - (f64.neg - (get_global $~lib/builtins/f64.MAX_VALUE) - ) + (call $~lib/internal/number/utoa32 + (i32.const 2147483647) ) - (i32.const 4256) + (i32.const 1672) ) ) (block @@ -10975,10 +12535,10 @@ (if (i32.eqz (call $~lib/string/String.__eq - (call $~lib/internal/number/dtoa - (f64.const 4185580496821356722454785e274) + (call $~lib/internal/number/utoa32 + (i32.const -2147483648) ) - (i32.const 4312) + (i32.const 1752) ) ) (block @@ -10994,10 +12554,10 @@ (if (i32.eqz (call $~lib/string/String.__eq - (call $~lib/internal/number/dtoa - (f64.const 2.2250738585072014e-308) + (call $~lib/internal/number/utoa32 + (get_global $~lib/builtins/u32.MAX_VALUE) ) - (i32.const 4360) + (i32.const 1776) ) ) (block @@ -11013,29 +12573,10 @@ (if (i32.eqz (call $~lib/string/String.__eq - (call $~lib/internal/number/dtoa - (f64.const 2.9802322387695312e-08) + (call $~lib/internal/number/utoa64 + (i64.const 0) ) - (i32.const 4416) - ) - ) - (block - (call $~lib/env/abort - (i32.const 0) - (i32.const 48) - (i32.const 191) - (i32.const 0) - ) - (unreachable) - ) - ) - (if - (i32.eqz - (call $~lib/string/String.__eq - (call $~lib/internal/number/dtoa - (f64.const -21098088986959632) - ) - (i32.const 4464) + (i32.const 480) ) ) (block @@ -11051,10 +12592,10 @@ (if (i32.eqz (call $~lib/string/String.__eq - (call $~lib/internal/number/dtoa - (f64.const 4.940656e-318) + (call $~lib/internal/number/utoa64 + (i64.const 1234) ) - (i32.const 4512) + (i32.const 1552) ) ) (block @@ -11070,10 +12611,10 @@ (if (i32.eqz (call $~lib/string/String.__eq - (call $~lib/internal/number/dtoa - (f64.const 9060801153433600) + (call $~lib/internal/number/utoa64 + (i64.const 99999999) ) - (i32.const 4544) + (i32.const 2320) ) ) (block @@ -11089,10 +12630,10 @@ (if (i32.eqz (call $~lib/string/String.__eq - (call $~lib/internal/number/dtoa - (f64.const 4708356024711512064) + (call $~lib/internal/number/utoa64 + (i64.const 100000000) ) - (i32.const 4584) + (i32.const 2344) ) ) (block @@ -11108,10 +12649,10 @@ (if (i32.eqz (call $~lib/string/String.__eq - (call $~lib/internal/number/dtoa - (f64.const 9409340012568248320) + (call $~lib/internal/number/utoa64 + (i64.const 4294967295) ) - (i32.const 4632) + (i32.const 1776) ) ) (block @@ -11127,10 +12668,10 @@ (if (i32.eqz (call $~lib/string/String.__eq - (call $~lib/internal/number/dtoa - (f64.const 5e-324) + (call $~lib/internal/number/utoa64 + (i64.const 68719476735) ) - (i32.const 4680) + (i32.const 2368) ) ) (block @@ -11143,11 +12684,549 @@ (unreachable) ) ) + (if + (i32.eqz + (call $~lib/string/String.__eq + (call $~lib/internal/number/utoa64 + (i64.const 868719476735) + ) + (i32.const 2400) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 198) + (i32.const 0) + ) + (unreachable) + ) + ) + (if + (i32.eqz + (call $~lib/string/String.__eq + (call $~lib/internal/number/utoa64 + (i64.const 999868719476735) + ) + (i32.const 2432) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 199) + (i32.const 0) + ) + (unreachable) + ) + ) + (if + (i32.eqz + (call $~lib/string/String.__eq + (call $~lib/internal/number/utoa64 + (i64.const 9999868719476735) + ) + (i32.const 2472) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 200) + (i32.const 0) + ) + (unreachable) + ) + ) + (if + (i32.eqz + (call $~lib/string/String.__eq + (call $~lib/internal/number/utoa64 + (i64.const 19999868719476735) + ) + (i32.const 2512) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 201) + (i32.const 0) + ) + (unreachable) + ) + ) + (if + (i32.eqz + (call $~lib/string/String.__eq + (call $~lib/internal/number/utoa64 + (get_global $~lib/builtins/u64.MAX_VALUE) + ) + (i32.const 2552) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 202) + (i32.const 0) + ) + (unreachable) + ) + ) + (if + (i32.eqz + (call $~lib/string/String.__eq + (call $~lib/internal/number/itoa64 + (i64.const 0) + ) + (i32.const 480) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 204) + (i32.const 0) + ) + (unreachable) + ) + ) + (if + (i32.eqz + (call $~lib/string/String.__eq + (call $~lib/internal/number/itoa64 + (i64.const -1234) + ) + (i32.const 2600) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 205) + (i32.const 0) + ) + (unreachable) + ) + ) + (if + (i32.eqz + (call $~lib/string/String.__eq + (call $~lib/internal/number/itoa64 + (i64.const 4294967295) + ) + (i32.const 1776) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 206) + (i32.const 0) + ) + (unreachable) + ) + ) + (if + (i32.eqz + (call $~lib/string/String.__eq + (call $~lib/internal/number/itoa64 + (i64.const -4294967295) + ) + (i32.const 2616) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 207) + (i32.const 0) + ) + (unreachable) + ) + ) + (if + (i32.eqz + (call $~lib/string/String.__eq + (call $~lib/internal/number/itoa64 + (i64.const 68719476735) + ) + (i32.const 2368) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 208) + (i32.const 0) + ) + (unreachable) + ) + ) + (if + (i32.eqz + (call $~lib/string/String.__eq + (call $~lib/internal/number/itoa64 + (i64.const -68719476735) + ) + (i32.const 2648) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 209) + (i32.const 0) + ) + (unreachable) + ) + ) + (if + (i32.eqz + (call $~lib/string/String.__eq + (call $~lib/internal/number/itoa64 + (i64.const -868719476735) + ) + (i32.const 2680) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 210) + (i32.const 0) + ) + (unreachable) + ) + ) + (if + (i32.eqz + (call $~lib/string/String.__eq + (call $~lib/internal/number/itoa64 + (i64.const -999868719476735) + ) + (i32.const 2712) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 211) + (i32.const 0) + ) + (unreachable) + ) + ) + (if + (i32.eqz + (call $~lib/string/String.__eq + (call $~lib/internal/number/itoa64 + (i64.const -19999868719476735) + ) + (i32.const 2752) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 212) + (i32.const 0) + ) + (unreachable) + ) + ) + (if + (i32.eqz + (call $~lib/string/String.__eq + (call $~lib/internal/number/itoa64 + (get_global $~lib/builtins/i64.MAX_VALUE) + ) + (i32.const 2792) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 213) + (i32.const 0) + ) + (unreachable) + ) + ) + (if + (i32.eqz + (call $~lib/string/String.__eq + (call $~lib/internal/number/itoa64 + (get_global $~lib/builtins/i64.MIN_VALUE) + ) + (i32.const 2840) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 214) + (i32.const 0) + ) + (unreachable) + ) + ) (if (i32.eqz (call $~lib/string/String.__eq (call $~lib/internal/number/dtoa - (f64.const 1) + (f64.const 0) + ) + (i32.const 2888) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 217) + (i32.const 0) + ) + (unreachable) + ) + ) + (if + (i32.eqz + (call $~lib/string/String.__eq + (call $~lib/internal/number/dtoa + (f64.const -0) + ) + (i32.const 2888) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 218) + (i32.const 0) + ) + (unreachable) + ) + ) + (if + (i32.eqz + (call $~lib/string/String.__eq + (call $~lib/internal/number/dtoa + (f64.const nan:0x8000000000000) + ) + (i32.const 2904) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 219) + (i32.const 0) + ) + (unreachable) + ) + ) + (if + (i32.eqz + (call $~lib/string/String.__eq + (call $~lib/internal/number/dtoa + (f64.const inf) + ) + (i32.const 2944) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 220) + (i32.const 0) + ) + (unreachable) + ) + ) + (if + (i32.eqz + (call $~lib/string/String.__eq + (call $~lib/internal/number/dtoa + (f64.neg + (f64.const inf) + ) + ) + (i32.const 2920) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 221) + (i32.const 0) + ) + (unreachable) + ) + ) + (if + (i32.eqz + (call $~lib/string/String.__eq + (call $~lib/internal/number/dtoa + (get_global $~lib/builtins/f64.EPSILON) + ) + (i32.const 4336) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 222) + (i32.const 0) + ) + (unreachable) + ) + ) + (if + (i32.eqz + (call $~lib/string/String.__eq + (call $~lib/internal/number/dtoa + (f64.neg + (get_global $~lib/builtins/f64.EPSILON) + ) + ) + (i32.const 4384) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 223) + (i32.const 0) + ) + (unreachable) + ) + ) + (if + (i32.eqz + (call $~lib/string/String.__eq + (call $~lib/internal/number/dtoa + (get_global $~lib/builtins/f64.MAX_VALUE) + ) + (i32.const 4432) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 224) + (i32.const 0) + ) + (unreachable) + ) + ) + (if + (i32.eqz + (call $~lib/string/String.__eq + (call $~lib/internal/number/dtoa + (f64.neg + (get_global $~lib/builtins/f64.MAX_VALUE) + ) + ) + (i32.const 4488) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 225) + (i32.const 0) + ) + (unreachable) + ) + ) + (if + (i32.eqz + (call $~lib/string/String.__eq + (call $~lib/internal/number/dtoa + (f64.const 4185580496821356722454785e274) + ) + (i32.const 4544) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 226) + (i32.const 0) + ) + (unreachable) + ) + ) + (if + (i32.eqz + (call $~lib/string/String.__eq + (call $~lib/internal/number/dtoa + (f64.const 2.2250738585072014e-308) + ) + (i32.const 4592) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 227) + (i32.const 0) + ) + (unreachable) + ) + ) + (if + (i32.eqz + (call $~lib/string/String.__eq + (call $~lib/internal/number/dtoa + (f64.const 2.9802322387695312e-08) + ) + (i32.const 4648) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 228) + (i32.const 0) + ) + (unreachable) + ) + ) + (if + (i32.eqz + (call $~lib/string/String.__eq + (call $~lib/internal/number/dtoa + (f64.const -21098088986959632) ) (i32.const 4696) ) @@ -11156,7 +13235,121 @@ (call $~lib/env/abort (i32.const 0) (i32.const 48) - (i32.const 203) + (i32.const 229) + (i32.const 0) + ) + (unreachable) + ) + ) + (if + (i32.eqz + (call $~lib/string/String.__eq + (call $~lib/internal/number/dtoa + (f64.const 4.940656e-318) + ) + (i32.const 4744) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 230) + (i32.const 0) + ) + (unreachable) + ) + ) + (if + (i32.eqz + (call $~lib/string/String.__eq + (call $~lib/internal/number/dtoa + (f64.const 9060801153433600) + ) + (i32.const 4776) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 231) + (i32.const 0) + ) + (unreachable) + ) + ) + (if + (i32.eqz + (call $~lib/string/String.__eq + (call $~lib/internal/number/dtoa + (f64.const 4708356024711512064) + ) + (i32.const 4816) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 232) + (i32.const 0) + ) + (unreachable) + ) + ) + (if + (i32.eqz + (call $~lib/string/String.__eq + (call $~lib/internal/number/dtoa + (f64.const 9409340012568248320) + ) + (i32.const 4864) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 233) + (i32.const 0) + ) + (unreachable) + ) + ) + (if + (i32.eqz + (call $~lib/string/String.__eq + (call $~lib/internal/number/dtoa + (f64.const 5e-324) + ) + (i32.const 4912) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 234) + (i32.const 0) + ) + (unreachable) + ) + ) + (if + (i32.eqz + (call $~lib/string/String.__eq + (call $~lib/internal/number/dtoa + (f64.const 1) + ) + (i32.const 4928) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 240) (i32.const 0) ) (unreachable) @@ -11175,7 +13368,7 @@ (call $~lib/env/abort (i32.const 0) (i32.const 48) - (i32.const 204) + (i32.const 241) (i32.const 0) ) (unreachable) @@ -11187,14 +13380,14 @@ (call $~lib/internal/number/dtoa (f64.const -1) ) - (i32.const 4712) + (i32.const 4944) ) ) (block (call $~lib/env/abort (i32.const 0) (i32.const 48) - (i32.const 205) + (i32.const 242) (i32.const 0) ) (unreachable) @@ -11206,644 +13399,9 @@ (call $~lib/internal/number/dtoa (f64.const -0.1) ) - (i32.const 4728) - ) - ) - (block - (call $~lib/env/abort - (i32.const 0) - (i32.const 48) - (i32.const 206) - (i32.const 0) - ) - (unreachable) - ) - ) - (if - (i32.eqz - (call $~lib/string/String.__eq - (call $~lib/internal/number/dtoa - (f64.const 1e6) - ) - (i32.const 4744) - ) - ) - (block - (call $~lib/env/abort - (i32.const 0) - (i32.const 48) - (i32.const 208) - (i32.const 0) - ) - (unreachable) - ) - ) - (if - (i32.eqz - (call $~lib/string/String.__eq - (call $~lib/internal/number/dtoa - (f64.const 1e-06) - ) - (i32.const 4768) - ) - ) - (block - (call $~lib/env/abort - (i32.const 0) - (i32.const 48) - (i32.const 209) - (i32.const 0) - ) - (unreachable) - ) - ) - (if - (i32.eqz - (call $~lib/string/String.__eq - (call $~lib/internal/number/dtoa - (f64.const -1e6) - ) - (i32.const 4792) - ) - ) - (block - (call $~lib/env/abort - (i32.const 0) - (i32.const 48) - (i32.const 210) - (i32.const 0) - ) - (unreachable) - ) - ) - (if - (i32.eqz - (call $~lib/string/String.__eq - (call $~lib/internal/number/dtoa - (f64.const -1e-06) - ) - (i32.const 4816) - ) - ) - (block - (call $~lib/env/abort - (i32.const 0) - (i32.const 48) - (i32.const 211) - (i32.const 0) - ) - (unreachable) - ) - ) - (if - (i32.eqz - (call $~lib/string/String.__eq - (call $~lib/internal/number/dtoa - (f64.const 1e7) - ) - (i32.const 4840) - ) - ) - (block - (call $~lib/env/abort - (i32.const 0) - (i32.const 48) - (i32.const 212) - (i32.const 0) - ) - (unreachable) - ) - ) - (if - (i32.eqz - (call $~lib/string/String.__eq - (call $~lib/internal/number/dtoa - (f64.const 1e-07) - ) - (i32.const 4864) - ) - ) - (block - (call $~lib/env/abort - (i32.const 0) - (i32.const 48) - (i32.const 213) - (i32.const 0) - ) - (unreachable) - ) - ) - (if - (i32.eqz - (call $~lib/string/String.__eq - (call $~lib/internal/number/dtoa - (f64.const 1.e+308) - ) - (i32.const 4880) - ) - ) - (block - (call $~lib/env/abort - (i32.const 0) - (i32.const 48) - (i32.const 215) - (i32.const 0) - ) - (unreachable) - ) - ) - (if - (i32.eqz - (call $~lib/string/String.__eq - (call $~lib/internal/number/dtoa - (f64.const -1.e+308) - ) - (i32.const 4896) - ) - ) - (block - (call $~lib/env/abort - (i32.const 0) - (i32.const 48) - (i32.const 216) - (i32.const 0) - ) - (unreachable) - ) - ) - (if - (i32.eqz - (call $~lib/string/String.__eq - (call $~lib/internal/number/dtoa - (f64.const inf) - ) - (i32.const 2712) - ) - ) - (block - (call $~lib/env/abort - (i32.const 0) - (i32.const 48) - (i32.const 217) - (i32.const 0) - ) - (unreachable) - ) - ) - (if - (i32.eqz - (call $~lib/string/String.__eq - (call $~lib/internal/number/dtoa - (f64.const -inf) - ) - (i32.const 2688) - ) - ) - (block - (call $~lib/env/abort - (i32.const 0) - (i32.const 48) - (i32.const 218) - (i32.const 0) - ) - (unreachable) - ) - ) - (if - (i32.eqz - (call $~lib/string/String.__eq - (call $~lib/internal/number/dtoa - (f64.const 1e-308) - ) - (i32.const 4920) - ) - ) - (block - (call $~lib/env/abort - (i32.const 0) - (i32.const 48) - (i32.const 219) - (i32.const 0) - ) - (unreachable) - ) - ) - (if - (i32.eqz - (call $~lib/string/String.__eq - (call $~lib/internal/number/dtoa - (f64.const -1e-308) - ) - (i32.const 4936) - ) - ) - (block - (call $~lib/env/abort - (i32.const 0) - (i32.const 48) - (i32.const 220) - (i32.const 0) - ) - (unreachable) - ) - ) - (if - (i32.eqz - (call $~lib/string/String.__eq - (call $~lib/internal/number/dtoa - (f64.const 1e-323) - ) (i32.const 4960) ) ) - (block - (call $~lib/env/abort - (i32.const 0) - (i32.const 48) - (i32.const 221) - (i32.const 0) - ) - (unreachable) - ) - ) - (if - (i32.eqz - (call $~lib/string/String.__eq - (call $~lib/internal/number/dtoa - (f64.const -1e-323) - ) - (i32.const 4976) - ) - ) - (block - (call $~lib/env/abort - (i32.const 0) - (i32.const 48) - (i32.const 222) - (i32.const 0) - ) - (unreachable) - ) - ) - (if - (i32.eqz - (call $~lib/string/String.__eq - (call $~lib/internal/number/dtoa - (f64.const 0) - ) - (i32.const 2656) - ) - ) - (block - (call $~lib/env/abort - (i32.const 0) - (i32.const 48) - (i32.const 223) - (i32.const 0) - ) - (unreachable) - ) - ) - (if - (i32.eqz - (call $~lib/string/String.__eq - (call $~lib/internal/number/dtoa - (f64.const 4294967272) - ) - (i32.const 5000) - ) - ) - (block - (call $~lib/env/abort - (i32.const 0) - (i32.const 48) - (i32.const 225) - (i32.const 0) - ) - (unreachable) - ) - ) - (if - (i32.eqz - (call $~lib/string/String.__eq - (call $~lib/internal/number/dtoa - (f64.const 1.2312145673456234e-08) - ) - (i32.const 5032) - ) - ) - (block - (call $~lib/env/abort - (i32.const 0) - (i32.const 48) - (i32.const 226) - (i32.const 0) - ) - (unreachable) - ) - ) - (if - (i32.eqz - (call $~lib/string/String.__eq - (call $~lib/internal/number/dtoa - (f64.const -1.0471975511965976e-06) - ) - (i32.const 5080) - ) - ) - (block - (call $~lib/env/abort - (i32.const 0) - (i32.const 48) - (i32.const 227) - (i32.const 0) - ) - (unreachable) - ) - ) - (if - (i32.eqz - (call $~lib/string/String.__eq - (call $~lib/internal/number/dtoa - (f64.const 555555555.5555556) - ) - (i32.const 5136) - ) - ) - (block - (call $~lib/env/abort - (i32.const 0) - (i32.const 48) - (i32.const 228) - (i32.const 0) - ) - (unreachable) - ) - ) - (if - (i32.eqz - (call $~lib/string/String.__eq - (call $~lib/internal/number/dtoa - (f64.const 0.9999999999999999) - ) - (i32.const 5176) - ) - ) - (block - (call $~lib/env/abort - (i32.const 0) - (i32.const 48) - (i32.const 229) - (i32.const 0) - ) - (unreachable) - ) - ) - (if - (i32.eqz - (call $~lib/string/String.__eq - (call $~lib/internal/number/dtoa - (f64.const 1) - ) - (i32.const 4696) - ) - ) - (block - (call $~lib/env/abort - (i32.const 0) - (i32.const 48) - (i32.const 230) - (i32.const 0) - ) - (unreachable) - ) - ) - (if - (i32.eqz - (call $~lib/string/String.__eq - (call $~lib/internal/number/dtoa - (f64.const 12.34) - ) - (i32.const 5216) - ) - ) - (block - (call $~lib/env/abort - (i32.const 0) - (i32.const 48) - (i32.const 231) - (i32.const 0) - ) - (unreachable) - ) - ) - (if - (i32.eqz - (call $~lib/string/String.__eq - (call $~lib/internal/number/dtoa - (f64.add - (f64.const 0.1) - (f64.const 0.2) - ) - ) - (i32.const 5232) - ) - ) - (block - (call $~lib/env/abort - (i32.const 0) - (i32.const 48) - (i32.const 232) - (i32.const 0) - ) - (unreachable) - ) - ) - (if - (i32.eqz - (call $~lib/string/String.__eq - (call $~lib/internal/number/dtoa - (f64.div - (f64.const 1) - (f64.const 3) - ) - ) - (i32.const 5280) - ) - ) - (block - (call $~lib/env/abort - (i32.const 0) - (i32.const 48) - (i32.const 233) - (i32.const 0) - ) - (unreachable) - ) - ) - (if - (i32.eqz - (call $~lib/string/String.__eq - (call $~lib/internal/number/dtoa - (f64.const 1234e17) - ) - (i32.const 5320) - ) - ) - (block - (call $~lib/env/abort - (i32.const 0) - (i32.const 48) - (i32.const 234) - (i32.const 0) - ) - (unreachable) - ) - ) - (if - (i32.eqz - (call $~lib/string/String.__eq - (call $~lib/internal/number/dtoa - (f64.const 1234e18) - ) - (i32.const 5376) - ) - ) - (block - (call $~lib/env/abort - (i32.const 0) - (i32.const 48) - (i32.const 235) - (i32.const 0) - ) - (unreachable) - ) - ) - (if - (i32.eqz - (call $~lib/string/String.__eq - (call $~lib/internal/number/dtoa - (f64.const 2.71828) - ) - (i32.const 5400) - ) - ) - (block - (call $~lib/env/abort - (i32.const 0) - (i32.const 48) - (i32.const 236) - (i32.const 0) - ) - (unreachable) - ) - ) - (if - (i32.eqz - (call $~lib/string/String.__eq - (call $~lib/internal/number/dtoa - (f64.const 0.0271828) - ) - (i32.const 5424) - ) - ) - (block - (call $~lib/env/abort - (i32.const 0) - (i32.const 48) - (i32.const 237) - (i32.const 0) - ) - (unreachable) - ) - ) - (if - (i32.eqz - (call $~lib/string/String.__eq - (call $~lib/internal/number/dtoa - (f64.const 271.828) - ) - (i32.const 5448) - ) - ) - (block - (call $~lib/env/abort - (i32.const 0) - (i32.const 48) - (i32.const 238) - (i32.const 0) - ) - (unreachable) - ) - ) - (if - (i32.eqz - (call $~lib/string/String.__eq - (call $~lib/internal/number/dtoa - (f64.const 1.1e+128) - ) - (i32.const 5472) - ) - ) - (block - (call $~lib/env/abort - (i32.const 0) - (i32.const 48) - (i32.const 239) - (i32.const 0) - ) - (unreachable) - ) - ) - (if - (i32.eqz - (call $~lib/string/String.__eq - (call $~lib/internal/number/dtoa - (f64.const 1.1e-64) - ) - (i32.const 5496) - ) - ) - (block - (call $~lib/env/abort - (i32.const 0) - (i32.const 48) - (i32.const 240) - (i32.const 0) - ) - (unreachable) - ) - ) - (if - (i32.eqz - (call $~lib/string/String.__eq - (call $~lib/internal/number/dtoa - (f64.const 0.000035689) - ) - (i32.const 5520) - ) - ) - (block - (call $~lib/env/abort - (i32.const 0) - (i32.const 48) - (i32.const 241) - (i32.const 0) - ) - (unreachable) - ) - ) - (if - (i32.eqz - (call $~lib/string/String.__eq - (call $~lib/internal/number/dtoa - (f64.promote/f32 - (get_global $~lib/builtins/f32.MAX_VALUE) - ) - ) - (i32.const 5552) - ) - ) (block (call $~lib/env/abort (i32.const 0) @@ -11858,24 +13416,659 @@ (i32.eqz (call $~lib/string/String.__eq (call $~lib/internal/number/dtoa - (f64.promote/f32 - (get_global $~lib/builtins/f32.EPSILON) - ) + (f64.const 1e6) ) - (i32.const 5600) + (i32.const 4976) ) ) (block (call $~lib/env/abort (i32.const 0) (i32.const 48) - (i32.const 244) + (i32.const 245) + (i32.const 0) + ) + (unreachable) + ) + ) + (if + (i32.eqz + (call $~lib/string/String.__eq + (call $~lib/internal/number/dtoa + (f64.const 1e-06) + ) + (i32.const 5000) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 246) + (i32.const 0) + ) + (unreachable) + ) + ) + (if + (i32.eqz + (call $~lib/string/String.__eq + (call $~lib/internal/number/dtoa + (f64.const -1e6) + ) + (i32.const 5024) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 247) + (i32.const 0) + ) + (unreachable) + ) + ) + (if + (i32.eqz + (call $~lib/string/String.__eq + (call $~lib/internal/number/dtoa + (f64.const -1e-06) + ) + (i32.const 5048) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 248) + (i32.const 0) + ) + (unreachable) + ) + ) + (if + (i32.eqz + (call $~lib/string/String.__eq + (call $~lib/internal/number/dtoa + (f64.const 1e7) + ) + (i32.const 5072) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 249) + (i32.const 0) + ) + (unreachable) + ) + ) + (if + (i32.eqz + (call $~lib/string/String.__eq + (call $~lib/internal/number/dtoa + (f64.const 1e-07) + ) + (i32.const 5096) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 250) + (i32.const 0) + ) + (unreachable) + ) + ) + (if + (i32.eqz + (call $~lib/string/String.__eq + (call $~lib/internal/number/dtoa + (f64.const 1.e+308) + ) + (i32.const 5112) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 252) + (i32.const 0) + ) + (unreachable) + ) + ) + (if + (i32.eqz + (call $~lib/string/String.__eq + (call $~lib/internal/number/dtoa + (f64.const -1.e+308) + ) + (i32.const 5128) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 253) + (i32.const 0) + ) + (unreachable) + ) + ) + (if + (i32.eqz + (call $~lib/string/String.__eq + (call $~lib/internal/number/dtoa + (f64.const inf) + ) + (i32.const 2944) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 254) + (i32.const 0) + ) + (unreachable) + ) + ) + (if + (i32.eqz + (call $~lib/string/String.__eq + (call $~lib/internal/number/dtoa + (f64.const -inf) + ) + (i32.const 2920) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 255) + (i32.const 0) + ) + (unreachable) + ) + ) + (if + (i32.eqz + (call $~lib/string/String.__eq + (call $~lib/internal/number/dtoa + (f64.const 1e-308) + ) + (i32.const 5152) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 256) + (i32.const 0) + ) + (unreachable) + ) + ) + (if + (i32.eqz + (call $~lib/string/String.__eq + (call $~lib/internal/number/dtoa + (f64.const -1e-308) + ) + (i32.const 5168) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 257) + (i32.const 0) + ) + (unreachable) + ) + ) + (if + (i32.eqz + (call $~lib/string/String.__eq + (call $~lib/internal/number/dtoa + (f64.const 1e-323) + ) + (i32.const 5192) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 258) + (i32.const 0) + ) + (unreachable) + ) + ) + (if + (i32.eqz + (call $~lib/string/String.__eq + (call $~lib/internal/number/dtoa + (f64.const -1e-323) + ) + (i32.const 5208) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 259) + (i32.const 0) + ) + (unreachable) + ) + ) + (if + (i32.eqz + (call $~lib/string/String.__eq + (call $~lib/internal/number/dtoa + (f64.const 0) + ) + (i32.const 2888) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 260) + (i32.const 0) + ) + (unreachable) + ) + ) + (if + (i32.eqz + (call $~lib/string/String.__eq + (call $~lib/internal/number/dtoa + (f64.const 4294967272) + ) + (i32.const 5232) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 262) + (i32.const 0) + ) + (unreachable) + ) + ) + (if + (i32.eqz + (call $~lib/string/String.__eq + (call $~lib/internal/number/dtoa + (f64.const 1.2312145673456234e-08) + ) + (i32.const 5264) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 263) + (i32.const 0) + ) + (unreachable) + ) + ) + (if + (i32.eqz + (call $~lib/string/String.__eq + (call $~lib/internal/number/dtoa + (f64.const -1.0471975511965976e-06) + ) + (i32.const 5312) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 264) + (i32.const 0) + ) + (unreachable) + ) + ) + (if + (i32.eqz + (call $~lib/string/String.__eq + (call $~lib/internal/number/dtoa + (f64.const 555555555.5555556) + ) + (i32.const 5368) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 265) + (i32.const 0) + ) + (unreachable) + ) + ) + (if + (i32.eqz + (call $~lib/string/String.__eq + (call $~lib/internal/number/dtoa + (f64.const 0.9999999999999999) + ) + (i32.const 5408) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 266) + (i32.const 0) + ) + (unreachable) + ) + ) + (if + (i32.eqz + (call $~lib/string/String.__eq + (call $~lib/internal/number/dtoa + (f64.const 1) + ) + (i32.const 4928) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 267) + (i32.const 0) + ) + (unreachable) + ) + ) + (if + (i32.eqz + (call $~lib/string/String.__eq + (call $~lib/internal/number/dtoa + (f64.const 12.34) + ) + (i32.const 5448) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 268) + (i32.const 0) + ) + (unreachable) + ) + ) + (if + (i32.eqz + (call $~lib/string/String.__eq + (call $~lib/internal/number/dtoa + (f64.add + (f64.const 0.1) + (f64.const 0.2) + ) + ) + (i32.const 5464) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 269) + (i32.const 0) + ) + (unreachable) + ) + ) + (if + (i32.eqz + (call $~lib/string/String.__eq + (call $~lib/internal/number/dtoa + (f64.div + (f64.const 1) + (f64.const 3) + ) + ) + (i32.const 5512) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 270) + (i32.const 0) + ) + (unreachable) + ) + ) + (if + (i32.eqz + (call $~lib/string/String.__eq + (call $~lib/internal/number/dtoa + (f64.const 1234e17) + ) + (i32.const 5552) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 271) + (i32.const 0) + ) + (unreachable) + ) + ) + (if + (i32.eqz + (call $~lib/string/String.__eq + (call $~lib/internal/number/dtoa + (f64.const 1234e18) + ) + (i32.const 5608) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 272) + (i32.const 0) + ) + (unreachable) + ) + ) + (if + (i32.eqz + (call $~lib/string/String.__eq + (call $~lib/internal/number/dtoa + (f64.const 2.71828) + ) + (i32.const 5632) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 273) + (i32.const 0) + ) + (unreachable) + ) + ) + (if + (i32.eqz + (call $~lib/string/String.__eq + (call $~lib/internal/number/dtoa + (f64.const 0.0271828) + ) + (i32.const 5656) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 274) + (i32.const 0) + ) + (unreachable) + ) + ) + (if + (i32.eqz + (call $~lib/string/String.__eq + (call $~lib/internal/number/dtoa + (f64.const 271.828) + ) + (i32.const 5680) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 275) + (i32.const 0) + ) + (unreachable) + ) + ) + (if + (i32.eqz + (call $~lib/string/String.__eq + (call $~lib/internal/number/dtoa + (f64.const 1.1e+128) + ) + (i32.const 5704) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 276) + (i32.const 0) + ) + (unreachable) + ) + ) + (if + (i32.eqz + (call $~lib/string/String.__eq + (call $~lib/internal/number/dtoa + (f64.const 1.1e-64) + ) + (i32.const 5728) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 277) + (i32.const 0) + ) + (unreachable) + ) + ) + (if + (i32.eqz + (call $~lib/string/String.__eq + (call $~lib/internal/number/dtoa + (f64.const 0.000035689) + ) + (i32.const 5752) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 278) + (i32.const 0) + ) + (unreachable) + ) + ) + (if + (i32.eqz + (call $~lib/string/String.__eq + (call $~lib/internal/number/dtoa + (f64.promote/f32 + (get_global $~lib/builtins/f32.MAX_VALUE) + ) + ) + (i32.const 5784) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 280) + (i32.const 0) + ) + (unreachable) + ) + ) + (if + (i32.eqz + (call $~lib/string/String.__eq + (call $~lib/internal/number/dtoa + (f64.promote/f32 + (get_global $~lib/builtins/f32.EPSILON) + ) + ) + (i32.const 5832) + ) + ) + (block + (call $~lib/env/abort + (i32.const 0) + (i32.const 48) + (i32.const 281) (i32.const 0) ) (unreachable) ) ) ) - (func $null (; 52 ;) (type $v) + (func $null (; 62 ;) (type $v) ) )