diff --git a/NOTICE b/NOTICE index 3160d03559..81d66167db 100644 --- a/NOTICE +++ b/NOTICE @@ -44,6 +44,7 @@ under the licensing terms detailed in LICENSE: * Felipe Gasper * Congcong Cai <77575210+HerrCai0907@users.noreply.github.com> * mooooooi +* Yasushi Ando Portions of this software are derived from third-party works licensed under the following terms: diff --git a/tests/compiler/builtins.debug.wat b/tests/compiler/builtins.debug.wat index 81a545ffc8..08609a9456 100644 --- a/tests/compiler/builtins.debug.wat +++ b/tests/compiler/builtins.debug.wat @@ -930,7 +930,7 @@ if i32.const 0 i32.const 96 - i32.const 103 + i32.const 104 i32.const 20 call $~lib/builtins/abort unreachable @@ -951,7 +951,7 @@ if i32.const 0 i32.const 96 - i32.const 104 + i32.const 105 i32.const 21 call $~lib/builtins/abort unreachable @@ -972,7 +972,7 @@ if i32.const 0 i32.const 96 - i32.const 105 + i32.const 106 i32.const 21 call $~lib/builtins/abort unreachable @@ -988,7 +988,7 @@ if i32.const 0 i32.const 96 - i32.const 106 + i32.const 107 i32.const 21 call $~lib/builtins/abort unreachable @@ -1004,7 +1004,7 @@ if i32.const 0 i32.const 96 - i32.const 107 + i32.const 108 i32.const 21 call $~lib/builtins/abort unreachable @@ -1020,7 +1020,7 @@ if i32.const 0 i32.const 96 - i32.const 108 + i32.const 109 i32.const 21 call $~lib/builtins/abort unreachable @@ -1036,7 +1036,7 @@ if i32.const 0 i32.const 96 - i32.const 109 + i32.const 110 i32.const 21 call $~lib/builtins/abort unreachable @@ -1058,6 +1058,22 @@ f32.const 1.25 f32.floor drop + f32.const 1.5 + f32.const 2.5 + f32.add + drop + f32.const 2.5 + f32.const 1.5 + f32.sub + drop + f32.const 1.5 + f32.const 2 + f32.mul + drop + f32.const 1.5 + f32.const 0.5 + f32.div + drop f32.const 1.25 f32.const 2.5 f32.max @@ -1154,7 +1170,7 @@ if i32.const 0 i32.const 96 - i32.const 139 + i32.const 144 i32.const 25 call $~lib/builtins/abort unreachable @@ -1170,7 +1186,7 @@ if i32.const 0 i32.const 96 - i32.const 140 + i32.const 145 i32.const 25 call $~lib/builtins/abort unreachable @@ -1186,7 +1202,7 @@ if i32.const 0 i32.const 96 - i32.const 141 + i32.const 146 i32.const 25 call $~lib/builtins/abort unreachable @@ -1202,7 +1218,7 @@ if i32.const 0 i32.const 96 - i32.const 142 + i32.const 147 i32.const 25 call $~lib/builtins/abort unreachable @@ -1218,7 +1234,7 @@ if i32.const 0 i32.const 96 - i32.const 143 + i32.const 148 i32.const 26 call $~lib/builtins/abort unreachable @@ -1381,7 +1397,7 @@ if i32.const 0 i32.const 96 - i32.const 183 + i32.const 188 i32.const 25 call $~lib/builtins/abort unreachable @@ -1397,7 +1413,7 @@ if i32.const 0 i32.const 96 - i32.const 184 + i32.const 189 i32.const 25 call $~lib/builtins/abort unreachable @@ -1413,7 +1429,7 @@ if i32.const 0 i32.const 96 - i32.const 185 + i32.const 190 i32.const 25 call $~lib/builtins/abort unreachable @@ -1429,7 +1445,7 @@ if i32.const 0 i32.const 96 - i32.const 186 + i32.const 191 i32.const 25 call $~lib/builtins/abort unreachable @@ -1760,7 +1776,7 @@ if i32.const 0 i32.const 96 - i32.const 307 + i32.const 312 i32.const 1 call $~lib/builtins/abort unreachable @@ -1781,7 +1797,7 @@ if i32.const 0 i32.const 96 - i32.const 308 + i32.const 313 i32.const 1 call $~lib/builtins/abort unreachable @@ -1809,7 +1825,7 @@ if i32.const 0 i32.const 96 - i32.const 309 + i32.const 314 i32.const 1 call $~lib/builtins/abort unreachable @@ -1827,7 +1843,7 @@ if i32.const 0 i32.const 96 - i32.const 310 + i32.const 315 i32.const 1 call $~lib/builtins/abort unreachable @@ -1845,7 +1861,7 @@ if i32.const 0 i32.const 96 - i32.const 311 + i32.const 316 i32.const 1 call $~lib/builtins/abort unreachable @@ -1873,7 +1889,7 @@ if i32.const 0 i32.const 96 - i32.const 312 + i32.const 317 i32.const 1 call $~lib/builtins/abort unreachable @@ -2415,7 +2431,7 @@ if i32.const 0 i32.const 96 - i32.const 494 + i32.const 499 i32.const 1 call $~lib/builtins/abort unreachable @@ -2428,7 +2444,7 @@ if i32.const 0 i32.const 96 - i32.const 495 + i32.const 500 i32.const 1 call $~lib/builtins/abort unreachable @@ -2441,7 +2457,7 @@ if i32.const 0 i32.const 96 - i32.const 496 + i32.const 501 i32.const 1 call $~lib/builtins/abort unreachable @@ -2454,7 +2470,7 @@ if i32.const 0 i32.const 96 - i32.const 497 + i32.const 502 i32.const 1 call $~lib/builtins/abort unreachable @@ -2467,7 +2483,7 @@ if i32.const 0 i32.const 96 - i32.const 498 + i32.const 503 i32.const 1 call $~lib/builtins/abort unreachable @@ -2480,7 +2496,7 @@ if i32.const 0 i32.const 96 - i32.const 499 + i32.const 504 i32.const 1 call $~lib/builtins/abort unreachable @@ -2493,7 +2509,7 @@ if i32.const 0 i32.const 96 - i32.const 500 + i32.const 505 i32.const 1 call $~lib/builtins/abort unreachable @@ -2533,7 +2549,7 @@ if i32.const 304 i32.const 96 - i32.const 510 + i32.const 515 i32.const 3 call $~lib/builtins/abort unreachable @@ -2545,7 +2561,7 @@ if i32.const 0 i32.const 96 - i32.const 511 + i32.const 516 i32.const 3 call $~lib/builtins/abort unreachable @@ -2557,7 +2573,7 @@ if i32.const 0 i32.const 96 - i32.const 512 + i32.const 517 i32.const 3 call $~lib/builtins/abort unreachable @@ -2569,7 +2585,7 @@ if i32.const 0 i32.const 96 - i32.const 513 + i32.const 518 i32.const 3 call $~lib/builtins/abort unreachable @@ -2591,7 +2607,7 @@ if i32.const 0 i32.const 96 - i32.const 517 + i32.const 522 i32.const 3 call $~lib/builtins/abort unreachable @@ -2613,7 +2629,7 @@ if i32.const 0 i32.const 96 - i32.const 518 + i32.const 523 i32.const 3 call $~lib/builtins/abort unreachable @@ -2635,7 +2651,7 @@ if i32.const 0 i32.const 96 - i32.const 519 + i32.const 524 i32.const 3 call $~lib/builtins/abort unreachable @@ -2657,7 +2673,7 @@ if i32.const 0 i32.const 96 - i32.const 520 + i32.const 525 i32.const 3 call $~lib/builtins/abort unreachable @@ -2679,7 +2695,7 @@ if i32.const 0 i32.const 96 - i32.const 521 + i32.const 526 i32.const 3 call $~lib/builtins/abort unreachable @@ -2701,7 +2717,7 @@ if i32.const 0 i32.const 96 - i32.const 522 + i32.const 527 i32.const 3 call $~lib/builtins/abort unreachable @@ -2723,7 +2739,7 @@ if i32.const 0 i32.const 96 - i32.const 523 + i32.const 528 i32.const 3 call $~lib/builtins/abort unreachable @@ -2745,7 +2761,7 @@ if i32.const 0 i32.const 96 - i32.const 524 + i32.const 529 i32.const 3 call $~lib/builtins/abort unreachable @@ -2767,7 +2783,7 @@ if i32.const 0 i32.const 96 - i32.const 525 + i32.const 530 i32.const 3 call $~lib/builtins/abort unreachable @@ -2789,7 +2805,7 @@ if i32.const 0 i32.const 96 - i32.const 526 + i32.const 531 i32.const 3 call $~lib/builtins/abort unreachable @@ -2811,7 +2827,7 @@ if i32.const 0 i32.const 96 - i32.const 527 + i32.const 532 i32.const 3 call $~lib/builtins/abort unreachable @@ -2833,7 +2849,7 @@ if i32.const 0 i32.const 96 - i32.const 528 + i32.const 533 i32.const 3 call $~lib/builtins/abort unreachable @@ -2855,7 +2871,7 @@ if i32.const 0 i32.const 96 - i32.const 529 + i32.const 534 i32.const 3 call $~lib/builtins/abort unreachable @@ -2877,7 +2893,7 @@ if i32.const 0 i32.const 96 - i32.const 530 + i32.const 535 i32.const 3 call $~lib/builtins/abort unreachable @@ -2899,7 +2915,7 @@ if i32.const 0 i32.const 96 - i32.const 531 + i32.const 536 i32.const 3 call $~lib/builtins/abort unreachable @@ -2921,7 +2937,7 @@ if i32.const 0 i32.const 96 - i32.const 532 + i32.const 537 i32.const 3 call $~lib/builtins/abort unreachable @@ -2943,7 +2959,7 @@ if i32.const 0 i32.const 96 - i32.const 533 + i32.const 538 i32.const 3 call $~lib/builtins/abort unreachable @@ -2965,7 +2981,7 @@ if i32.const 0 i32.const 96 - i32.const 534 + i32.const 539 i32.const 3 call $~lib/builtins/abort unreachable @@ -2987,7 +3003,7 @@ if i32.const 0 i32.const 96 - i32.const 535 + i32.const 540 i32.const 3 call $~lib/builtins/abort unreachable @@ -3009,7 +3025,7 @@ if i32.const 0 i32.const 96 - i32.const 536 + i32.const 541 i32.const 3 call $~lib/builtins/abort unreachable @@ -3090,7 +3106,7 @@ if i32.const 0 i32.const 96 - i32.const 570 + i32.const 575 i32.const 1 call $~lib/builtins/abort unreachable @@ -3105,7 +3121,7 @@ if i32.const 0 i32.const 96 - i32.const 575 + i32.const 580 i32.const 1 call $~lib/builtins/abort unreachable @@ -3120,7 +3136,7 @@ if i32.const 0 i32.const 96 - i32.const 580 + i32.const 585 i32.const 1 call $~lib/builtins/abort unreachable @@ -3135,7 +3151,7 @@ if i32.const 0 i32.const 96 - i32.const 585 + i32.const 590 i32.const 1 call $~lib/builtins/abort unreachable diff --git a/tests/compiler/builtins.release.wat b/tests/compiler/builtins.release.wat index 0618716a77..8fddf1fa4d 100644 --- a/tests/compiler/builtins.release.wat +++ b/tests/compiler/builtins.release.wat @@ -538,7 +538,7 @@ if i32.const 0 i32.const 1120 - i32.const 307 + i32.const 312 i32.const 1 call $~lib/builtins/abort unreachable @@ -556,7 +556,7 @@ if i32.const 0 i32.const 1120 - i32.const 308 + i32.const 313 i32.const 1 call $~lib/builtins/abort unreachable @@ -578,7 +578,7 @@ if i32.const 0 i32.const 1120 - i32.const 309 + i32.const 314 i32.const 1 call $~lib/builtins/abort unreachable @@ -606,7 +606,7 @@ if i32.const 0 i32.const 1120 - i32.const 312 + i32.const 317 i32.const 1 call $~lib/builtins/abort unreachable @@ -705,7 +705,7 @@ if i32.const 0 i32.const 1120 - i32.const 517 + i32.const 522 i32.const 3 call $~lib/builtins/abort unreachable @@ -724,7 +724,7 @@ if i32.const 0 i32.const 1120 - i32.const 518 + i32.const 523 i32.const 3 call $~lib/builtins/abort unreachable @@ -743,7 +743,7 @@ if i32.const 0 i32.const 1120 - i32.const 519 + i32.const 524 i32.const 3 call $~lib/builtins/abort unreachable @@ -762,7 +762,7 @@ if i32.const 0 i32.const 1120 - i32.const 520 + i32.const 525 i32.const 3 call $~lib/builtins/abort unreachable @@ -781,7 +781,7 @@ if i32.const 0 i32.const 1120 - i32.const 521 + i32.const 526 i32.const 3 call $~lib/builtins/abort unreachable @@ -800,7 +800,7 @@ if i32.const 0 i32.const 1120 - i32.const 522 + i32.const 527 i32.const 3 call $~lib/builtins/abort unreachable @@ -819,7 +819,7 @@ if i32.const 0 i32.const 1120 - i32.const 523 + i32.const 528 i32.const 3 call $~lib/builtins/abort unreachable @@ -838,7 +838,7 @@ if i32.const 0 i32.const 1120 - i32.const 524 + i32.const 529 i32.const 3 call $~lib/builtins/abort unreachable @@ -857,7 +857,7 @@ if i32.const 0 i32.const 1120 - i32.const 525 + i32.const 530 i32.const 3 call $~lib/builtins/abort unreachable @@ -876,7 +876,7 @@ if i32.const 0 i32.const 1120 - i32.const 526 + i32.const 531 i32.const 3 call $~lib/builtins/abort unreachable @@ -895,7 +895,7 @@ if i32.const 0 i32.const 1120 - i32.const 527 + i32.const 532 i32.const 3 call $~lib/builtins/abort unreachable @@ -914,7 +914,7 @@ if i32.const 0 i32.const 1120 - i32.const 528 + i32.const 533 i32.const 3 call $~lib/builtins/abort unreachable @@ -933,7 +933,7 @@ if i32.const 0 i32.const 1120 - i32.const 529 + i32.const 534 i32.const 3 call $~lib/builtins/abort unreachable @@ -952,7 +952,7 @@ if i32.const 0 i32.const 1120 - i32.const 530 + i32.const 535 i32.const 3 call $~lib/builtins/abort unreachable @@ -971,7 +971,7 @@ if i32.const 0 i32.const 1120 - i32.const 531 + i32.const 536 i32.const 3 call $~lib/builtins/abort unreachable @@ -990,7 +990,7 @@ if i32.const 0 i32.const 1120 - i32.const 532 + i32.const 537 i32.const 3 call $~lib/builtins/abort unreachable @@ -1009,7 +1009,7 @@ if i32.const 0 i32.const 1120 - i32.const 533 + i32.const 538 i32.const 3 call $~lib/builtins/abort unreachable @@ -1028,7 +1028,7 @@ if i32.const 0 i32.const 1120 - i32.const 534 + i32.const 539 i32.const 3 call $~lib/builtins/abort unreachable @@ -1047,7 +1047,7 @@ if i32.const 0 i32.const 1120 - i32.const 535 + i32.const 540 i32.const 3 call $~lib/builtins/abort unreachable @@ -1066,7 +1066,7 @@ if i32.const 0 i32.const 1120 - i32.const 536 + i32.const 541 i32.const 3 call $~lib/builtins/abort unreachable diff --git a/tests/compiler/builtins.ts b/tests/compiler/builtins.ts index be82732a72..bb776279ef 100644 --- a/tests/compiler/builtins.ts +++ b/tests/compiler/builtins.ts @@ -86,6 +86,7 @@ i = add(1, 2); assert(i == 3); i = sub(2, 1); assert(i == 1); i = mul(2, 3); assert(i == 6); i = div(6, 2); assert(i == 3); + var I: i64; clz(1); @@ -118,6 +119,10 @@ abs(1.25); ceil(1.25); copysign(1.25, 2.5); floor(1.25); +add(1.5, 2.5); +sub(2.5, 1.5); +mul(1.5, 2.0); +div(1.5, 0.5); max(1.25, 2.5); min(1.25, 2.5); nearest(1.25);