toilscript 0.0.1 → 0.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (121) hide show
  1. package/LICENSE +201 -201
  2. package/NOTICE +94 -94
  3. package/README.md +101 -114
  4. package/bin/asc.js +0 -0
  5. package/bin/asinit.js +6 -6
  6. package/dist/asc.generated.d.ts +10027 -0
  7. package/dist/asc.js +24474 -0
  8. package/dist/asc.js.map +7 -0
  9. package/dist/importmap.json +9 -0
  10. package/dist/toilscript.generated.d.ts +11242 -0
  11. package/dist/toilscript.js +337 -0
  12. package/dist/toilscript.js.map +7 -0
  13. package/dist/web.js +22 -0
  14. package/lib/binaryen.d.ts +2 -2
  15. package/lib/binaryen.js +2 -2
  16. package/package.json +115 -114
  17. package/std/README.md +6 -6
  18. package/std/assembly/array.ts +550 -550
  19. package/std/assembly/arraybuffer.ts +77 -77
  20. package/std/assembly/atomics.ts +127 -127
  21. package/std/assembly/bindings/asyncify.ts +16 -16
  22. package/std/assembly/bindings/dom.ts +291 -291
  23. package/std/assembly/bindings/node.ts +6 -6
  24. package/std/assembly/bitflags.ts +53 -53
  25. package/std/assembly/builtins.ts +2650 -2650
  26. package/std/assembly/byteslice.ts +177 -177
  27. package/std/assembly/compat.ts +2 -2
  28. package/std/assembly/console.ts +42 -42
  29. package/std/assembly/crypto.ts +9 -9
  30. package/std/assembly/dataview.ts +181 -181
  31. package/std/assembly/date.ts +375 -375
  32. package/std/assembly/diagnostics.ts +11 -11
  33. package/std/assembly/encoding.ts +151 -151
  34. package/std/assembly/endian.ts +45 -45
  35. package/std/assembly/error.ts +44 -44
  36. package/std/assembly/fixedarray.ts +173 -173
  37. package/std/assembly/fixedmap.ts +326 -326
  38. package/std/assembly/fixedset.ts +275 -275
  39. package/std/assembly/function.ts +42 -42
  40. package/std/assembly/index.d.ts +2892 -2891
  41. package/std/assembly/iterator.ts +35 -35
  42. package/std/assembly/map.ts +269 -269
  43. package/std/assembly/math.ts +3289 -3289
  44. package/std/assembly/memory.ts +123 -123
  45. package/std/assembly/number.ts +388 -388
  46. package/std/assembly/object.ts +36 -36
  47. package/std/assembly/performance.ts +9 -9
  48. package/std/assembly/pointer.ts +80 -80
  49. package/std/assembly/polyfills.ts +27 -27
  50. package/std/assembly/process.ts +50 -50
  51. package/std/assembly/reference.ts +48 -48
  52. package/std/assembly/regexp.ts +12 -12
  53. package/std/assembly/rt/README.md +83 -83
  54. package/std/assembly/rt/common.ts +81 -81
  55. package/std/assembly/rt/index-incremental.ts +2 -2
  56. package/std/assembly/rt/index-memory.ts +1 -1
  57. package/std/assembly/rt/index-minimal.ts +2 -2
  58. package/std/assembly/rt/index-stub.ts +1 -1
  59. package/std/assembly/rt/index.d.ts +37 -37
  60. package/std/assembly/rt/itcms.ts +419 -419
  61. package/std/assembly/rt/memory-runtime.ts +94 -94
  62. package/std/assembly/rt/rtrace.ts +15 -15
  63. package/std/assembly/rt/stub.ts +133 -133
  64. package/std/assembly/rt/tcms.ts +254 -254
  65. package/std/assembly/rt/tlsf.ts +592 -592
  66. package/std/assembly/rt.ts +90 -90
  67. package/std/assembly/set.ts +225 -225
  68. package/std/assembly/shared/feature.ts +68 -68
  69. package/std/assembly/shared/runtime.ts +13 -13
  70. package/std/assembly/shared/target.ts +11 -11
  71. package/std/assembly/shared/tsconfig.json +11 -11
  72. package/std/assembly/shared/typeinfo.ts +72 -72
  73. package/std/assembly/staticarray.ts +423 -423
  74. package/std/assembly/string.ts +850 -850
  75. package/std/assembly/symbol.ts +114 -114
  76. package/std/assembly/table.ts +16 -16
  77. package/std/assembly/toilscript.ts +16 -0
  78. package/std/assembly/tsconfig.json +6 -6
  79. package/std/assembly/typedarray.ts +1954 -1954
  80. package/std/assembly/uri.ts +17 -17
  81. package/std/assembly/util/bytes.ts +107 -107
  82. package/std/assembly/util/casemap.ts +497 -497
  83. package/std/assembly/util/error.ts +58 -58
  84. package/std/assembly/util/hash.ts +117 -117
  85. package/std/assembly/util/math.ts +1922 -1922
  86. package/std/assembly/util/memory.ts +290 -290
  87. package/std/assembly/util/number.ts +873 -873
  88. package/std/assembly/util/sort.ts +313 -313
  89. package/std/assembly/util/string.ts +1202 -1202
  90. package/std/assembly/util/uri.ts +275 -275
  91. package/std/assembly/vector.ts +4 -4
  92. package/std/assembly.json +16 -16
  93. package/std/portable/index.d.ts +461 -461
  94. package/std/portable/index.js +416 -416
  95. package/std/portable.json +11 -11
  96. package/std/types/assembly/index.d.ts +1 -1
  97. package/std/types/assembly/package.json +2 -2
  98. package/std/types/portable/index.d.ts +1 -1
  99. package/std/types/portable/package.json +2 -2
  100. package/tsconfig-base.json +13 -13
  101. package/util/README.md +23 -23
  102. package/util/browser/fs.js +1 -1
  103. package/util/browser/module.js +5 -5
  104. package/util/browser/path.js +520 -520
  105. package/util/browser/process.js +59 -59
  106. package/util/browser/url.js +23 -23
  107. package/util/cpu.d.ts +9 -9
  108. package/util/cpu.js +42 -42
  109. package/util/find.d.ts +6 -6
  110. package/util/find.js +20 -20
  111. package/util/node.d.ts +21 -21
  112. package/util/node.js +34 -34
  113. package/util/options.d.ts +70 -70
  114. package/util/options.js +262 -262
  115. package/util/terminal.d.ts +52 -52
  116. package/util/terminal.js +35 -35
  117. package/util/text.d.ts +26 -26
  118. package/util/text.js +114 -114
  119. package/util/tsconfig.json +9 -9
  120. package/util/web.d.ts +11 -11
  121. package/util/web.js +33 -33
@@ -1,2650 +1,2650 @@
1
- import { strtol, strtod, strtob } from "./util/string";
2
-
3
- type auto = i32;
4
-
5
- // @ts-ignore: decorator
6
- @builtin
7
- export declare function isBoolean<T>(value?: T): bool;
8
-
9
- // @ts-ignore: decorator
10
- @builtin
11
- export declare function isInteger<T>(value?: T): bool;
12
-
13
- // @ts-ignore: decorator
14
- @builtin
15
- export declare function isSigned<T>(value?: T): bool;
16
-
17
- // @ts-ignore: decorator
18
- @builtin
19
- export declare function isFloat<T>(value?: T): bool;
20
-
21
- // @ts-ignore: decorator
22
- @builtin
23
- export declare function isVector<T>(value?: T): bool;
24
-
25
- // @ts-ignore: decorator
26
- @builtin
27
- export declare function isReference<T>(value?: T): bool;
28
-
29
- // @ts-ignore: decorator
30
- @builtin
31
- export declare function isString<T>(value?: T): bool;
32
-
33
- // @ts-ignore: decorator
34
- @builtin
35
- export declare function isArray<T>(value?: T): bool;
36
-
37
- // @ts-ignore: decorator
38
- @builtin
39
- export declare function isArrayLike<T>(value?: T): bool;
40
-
41
- // @ts-ignore: decorator
42
- @builtin
43
- export declare function isFunction<T>(value?: T): bool;
44
-
45
- // @ts-ignore: decorator
46
- @builtin
47
- export declare function isNullable<T>(value?: T): bool;
48
-
49
- // @ts-ignore: decorator
50
- @builtin
51
- export declare function isDefined(expression: auto): bool;
52
-
53
- // @ts-ignore: decorator
54
- @builtin
55
- export declare function isConstant(expression: auto): bool;
56
-
57
- // @ts-ignore: decorator
58
- @builtin
59
- export declare function isManaged<T>(value?: T): bool;
60
-
61
- // @ts-ignore: decorator
62
- @builtin
63
- export declare function isVoid<T>(): bool;
64
-
65
- // @ts-ignore
66
- @builtin
67
- export declare function lengthof<T>(func?: T): i32;
68
-
69
- // @ts-ignore: decorator
70
- @builtin
71
- export declare function clz<T>(value: T): T;
72
-
73
- // @ts-ignore: decorator
74
- @builtin
75
- export declare function ctz<T>(value: T): T;
76
-
77
- // @ts-ignore: decorator
78
- @builtin
79
- export declare function popcnt<T>(value: T): T;
80
-
81
- // @ts-ignore: decorator
82
- @builtin
83
- export declare function rotl<T>(value: T, shift: T): T;
84
-
85
- // @ts-ignore: decorator
86
- @builtin
87
- export declare function rotr<T>(value: T, shift: T): T;
88
-
89
- // @ts-ignore: decorator
90
- @builtin
91
- export declare function abs<T>(value: T): T;
92
-
93
- // @ts-ignore: decorator
94
- @builtin
95
- export declare function max<T>(left: T, right: T): T;
96
-
97
- // @ts-ignore: decorator
98
- @builtin
99
- export declare function min<T>(left: T, right: T): T;
100
-
101
- // @ts-ignore: decorator
102
- @builtin
103
- export declare function ceil<T>(value: T): T;
104
-
105
- // @ts-ignore: decorator
106
- @builtin
107
- export declare function floor<T>(value: T): T;
108
-
109
- // @ts-ignore: decorator
110
- @builtin
111
- export declare function copysign<T>(left: T, right: T): T;
112
-
113
- // @ts-ignore: decorator
114
- @builtin
115
- export declare function nearest<T>(value: T): T;
116
-
117
- // @ts-ignore: decorator
118
- @builtin
119
- export declare function reinterpret<T>(value: number): T;
120
-
121
- // @ts-ignore: decorator
122
- @builtin
123
- export declare function sqrt<T>(value: T): T;
124
-
125
- // @ts-ignore: decorator
126
- @builtin
127
- export declare function trunc<T>(value: T): T;
128
-
129
- // @ts-ignore: decorator
130
- @builtin
131
- export declare function add<T>(left: T, right: T): T;
132
-
133
- // @ts-ignore: decorator
134
- @builtin
135
- export declare function sub<T>(left: T, right: T): T;
136
-
137
- // @ts-ignore: decorator
138
- @builtin
139
- export declare function mul<T>(left: T, right: T): T;
140
-
141
- // @ts-ignore: decorator
142
- @builtin
143
- export declare function div<T>(left: T, right: T): T;
144
-
145
- // @ts-ignore: decorator
146
- @builtin
147
- export declare function eq<T>(left: T, right: T): i32;
148
-
149
- // @ts-ignore: decorator
150
- @builtin
151
- export declare function ne<T>(left: T, right: T): i32;
152
-
153
- // @ts-ignore: decorator
154
- @builtin
155
- export declare function rem<T>(left: T, right: T): T;
156
-
157
- // @ts-ignore: decorator
158
- @unsafe @builtin
159
- export declare function load<T>(ptr: usize, immOffset?: usize, immAlign?: usize): T;
160
-
161
- // @ts-ignore: decorator
162
- @unsafe @builtin
163
- export declare function store<T>(ptr: usize, value: auto, immOffset?: usize, immAlign?: usize): void;
164
-
165
- // @ts-ignore: decorator
166
- @builtin
167
- export declare function sizeof<T>(): usize; // | u32 / u64
168
-
169
- // @ts-ignore: decorator
170
- @builtin
171
- export declare function alignof<T>(): usize; // | u32 / u64
172
-
173
- // @ts-ignore: decorator
174
- @builtin
175
- export declare function offsetof<T>(fieldName?: string): usize; // | u32 / u64
176
-
177
- // @ts-ignore: decorator
178
- @builtin
179
- export declare function idof<T>(): u32;
180
-
181
- // @ts-ignore
182
- @builtin
183
- export declare function nameof<T>(): string;
184
-
185
- // @ts-ignore: decorator
186
- @builtin
187
- export declare function select<T>(ifTrue: T, ifFalse: T, condition: bool): T;
188
-
189
- // @ts-ignore: decorator
190
- @unsafe @builtin
191
- export declare function unreachable(): auto;
192
-
193
- // @ts-ignore: decorator
194
- @builtin
195
- export declare function changetype<T>(value: auto): T;
196
-
197
- // @ts-ignore: decorator
198
- @builtin
199
- export declare function assert<T>(isTrueish: T, message?: string): T;
200
-
201
- // @ts-ignore: decorator
202
- @unsafe @builtin
203
- export declare function unchecked<T>(expr: T): T;
204
-
205
- export namespace inline {
206
- // @ts-ignore: decorator
207
- @unsafe @builtin
208
- export declare function always<T>(expr: T): T;
209
- }
210
-
211
- // @ts-ignore: decorator
212
- @unsafe @builtin
213
- export declare function call_indirect<T>(index: u32, ...args: auto[]): T;
214
-
215
- // @ts-ignore: decorator
216
- @builtin
217
- export declare function instantiate<T>(...args: auto[]): T;
218
-
219
- export namespace atomic {
220
- // @ts-ignore: decorator
221
- @unsafe @builtin
222
- export declare function load<T>(ptr: usize, immOffset?: usize): T;
223
-
224
- // @ts-ignore: decorator
225
- @unsafe @builtin
226
- export declare function store<T>(ptr: usize, value: T, immOffset?: usize): void;
227
-
228
- // @ts-ignore: decorator
229
- @builtin
230
- export declare function add<T>(ptr: usize, value: T, immOffset?: usize): T;
231
-
232
- // @ts-ignore: decorator
233
- @builtin
234
- export declare function sub<T>(ptr: usize, value: T, immOffset?: usize): T;
235
-
236
- // @ts-ignore: decorator
237
- @builtin
238
- export declare function and<T>(ptr: usize, value: T, immOffset?: usize): T;
239
-
240
- // @ts-ignore: decorator
241
- @builtin
242
- export declare function or<T>(ptr: usize, value: T, immOffset?: usize): T;
243
-
244
- // @ts-ignore: decorator
245
- @builtin
246
- export declare function xor<T>(ptr: usize, value: T, immOffset?: usize): T;
247
-
248
- // @ts-ignore: decorator
249
- @unsafe @builtin
250
- export declare function xchg<T>(ptr: usize, value: T, immOffset?: usize): T;
251
-
252
- // @ts-ignore: decorator
253
- @unsafe @builtin
254
- export declare function cmpxchg<T>(ptr: usize, expected: T, replacement: T, immOffset?: usize): T;
255
-
256
- // @ts-ignore: decorator
257
- @builtin
258
- export declare function wait<T>(ptr: usize, expected: T, timeout: i64): AtomicWaitResult;
259
-
260
- // @ts-ignore: decorator
261
- @builtin
262
- export declare function notify(ptr: usize, count: i32): i32;
263
-
264
- // @ts-ignore: decorator
265
- @builtin
266
- export declare function fence(): void;
267
- }
268
-
269
- // @ts-ignore: decorator
270
- @lazy
271
- export const enum AtomicWaitResult {
272
- OK = 0,
273
- NOT_EQUAL = 1,
274
- TIMED_OUT = 2
275
- }
276
-
277
- // @ts-ignore: decorator
278
- @builtin
279
- export declare function i8(value: auto): i8;
280
-
281
- export namespace i8 {
282
-
283
- // @ts-ignore: decorator
284
- @lazy
285
- export const MIN_VALUE: i8 = -128;
286
-
287
- // @ts-ignore: decorator
288
- @lazy
289
- export const MAX_VALUE: i8 = 127;
290
-
291
- // @ts-ignore: decorator
292
- @inline
293
- export function parse(value: string, radix: i32 = 0): i8 {
294
- return <i8>strtol<i32>(value, radix);
295
- }
296
- }
297
-
298
- // @ts-ignore: decorator
299
- @builtin
300
- export declare function i16(value: auto): i16;
301
-
302
- export namespace i16 {
303
-
304
- // @ts-ignore: decorator
305
- @lazy
306
- export const MIN_VALUE: i16 = -32768;
307
-
308
- // @ts-ignore: decorator
309
- @lazy
310
- export const MAX_VALUE: i16 = 32767;
311
-
312
- // @ts-ignore: decorator
313
- @inline
314
- export function parse(value: string, radix: i32 = 0): i16 {
315
- return <i16>strtol<i32>(value, radix);
316
- }
317
- }
318
-
319
- // @ts-ignore: decorator
320
- @builtin
321
- export declare function i32(value: auto): i32;
322
-
323
- export namespace i32 {
324
-
325
- // @ts-ignore: decorator
326
- @lazy
327
- export const MIN_VALUE: i32 = -2147483648;
328
-
329
- // @ts-ignore: decorator
330
- @lazy
331
- export const MAX_VALUE: i32 = 2147483647;
332
-
333
- // @ts-ignore: decorator
334
- @inline
335
- export function parse(value: string, radix: i32 = 0): i32 {
336
- return strtol<i32>(value, radix);
337
- }
338
-
339
- // @ts-ignore: decorator
340
- @builtin
341
- export declare function clz(value: i32): i32;
342
-
343
- // @ts-ignore: decorator
344
- @builtin
345
- export declare function ctz(value: i32): i32;
346
-
347
- // @ts-ignore: decorator
348
- @builtin
349
- export declare function popcnt(value: i32): i32;
350
-
351
- // @ts-ignore: decorator
352
- @builtin
353
- export declare function add(left: i32, right:i32): i32;
354
-
355
- // @ts-ignore: decorator
356
- @builtin
357
- export declare function sub(left: i32, right:i32): i32;
358
-
359
- // @ts-ignore: decorator
360
- @builtin
361
- export declare function mul(left: i32, right:i32): i32;
362
-
363
- // @ts-ignore: decorator
364
- @builtin
365
- export declare function div_s(left: i32, right:i32): i32;
366
-
367
- // @ts-ignore: decorator
368
- @builtin
369
- export declare function div_u(left: i32, right:i32): i32;
370
-
371
- // @ts-ignore: decorator
372
- @builtin
373
- export declare function rotl(value: i32, shift: i32): i32;
374
-
375
- // @ts-ignore: decorator
376
- @builtin
377
- export declare function rotr(value: i32, shift: i32): i32;
378
-
379
- // @ts-ignore: decorator
380
- @builtin
381
- export declare function eq(left: i32, right:i32): i32;
382
-
383
- // @ts-ignore: decorator
384
- @builtin
385
- export declare function ne(left: i32, right:i32): i32;
386
-
387
- // @ts-ignore: decorator
388
- @builtin
389
- export declare function rem_s(left: i32, right: i32): i32;
390
-
391
- // @ts-ignore: decorator
392
- @builtin
393
- export declare function rem_u(left: u32, right: u32): u32;
394
-
395
- // @ts-ignore: decorator
396
- @builtin
397
- export declare function reinterpret_f32(value: f32): i32;
398
-
399
- // @ts-ignore: decorator
400
- @builtin
401
- export declare function load8_s(ptr: usize, immOffset?: usize, immAlign?: usize): i32;
402
-
403
- // @ts-ignore: decorator
404
- @builtin
405
- export declare function load8_u(ptr: usize, immOffset?: usize, immAlign?: usize): i32;
406
-
407
- // @ts-ignore: decorator
408
- @builtin
409
- export declare function load16_s(ptr: usize, immOffset?: usize, immAlign?: usize): i32;
410
-
411
- // @ts-ignore: decorator
412
- @builtin
413
- export declare function load16_u(ptr: usize, immOffset?: usize, immAlign?: usize): i32;
414
-
415
- // @ts-ignore: decorator
416
- @builtin
417
- export declare function load(ptr: usize, immOffset?: usize, immAlign?: usize): i32;
418
-
419
- // @ts-ignore: decorator
420
- @unsafe @builtin
421
- export declare function store8(ptr: usize, value: i32, immOffset?: usize, immAlign?: usize): void;
422
-
423
- // @ts-ignore: decorator
424
- @unsafe @builtin
425
- export declare function store16(ptr: usize, value: i32, immOffset?: usize, immAlign?: usize): void;
426
-
427
- // @ts-ignore: decorator
428
- @unsafe @builtin
429
- export declare function store(ptr: usize, value: i32, immOffset?: usize, immAlign?: usize): void;
430
-
431
- export namespace atomic {
432
-
433
- // @ts-ignore: decorator
434
- @builtin
435
- export declare function load8_u(ptr: usize, immOffset?: usize): i32;
436
-
437
- // @ts-ignore: decorator
438
- @builtin
439
- export declare function load16_u(ptr: usize, immOffset?: usize): i32;
440
-
441
- // @ts-ignore: decorator
442
- @builtin
443
- export declare function load(ptr: usize, immOffset?: usize): i32;
444
-
445
- // @ts-ignore: decorator
446
- @unsafe @builtin
447
- export declare function store8(ptr: usize, value: i32, immOffset?: usize): void;
448
-
449
- // @ts-ignore: decorator
450
- @unsafe @builtin
451
- export declare function store16(ptr: usize, value: i32, immOffset?: usize): void;
452
-
453
- // @ts-ignore: decorator
454
- @unsafe @builtin
455
- export declare function store(ptr: usize, value: i32, immOffset?: usize): void;
456
-
457
- export namespace rmw8 {
458
-
459
- // @ts-ignore: decorator
460
- @builtin
461
- export declare function add_u(ptr: usize, value: i32, immOffset?: usize): i32;
462
-
463
- // @ts-ignore: decorator
464
- @builtin
465
- export declare function sub_u(ptr: usize, value: i32, immOffset?: usize): i32;
466
-
467
- // @ts-ignore: decorator
468
- @builtin
469
- export declare function and_u(ptr: usize, value: i32, immOffset?: usize): i32;
470
-
471
- // @ts-ignore: decorator
472
- @builtin
473
- export declare function or_u(ptr: usize, value: i32, immOffset?: usize): i32;
474
-
475
- // @ts-ignore: decorator
476
- @builtin
477
- export declare function xor_u(ptr: usize, value: i32, immOffset?: usize): i32;
478
-
479
- // @ts-ignore: decorator
480
- @unsafe @builtin
481
- export declare function xchg_u(ptr: usize, value: i32, immOffset?: usize): i32;
482
-
483
- // @ts-ignore: decorator
484
- @unsafe @builtin
485
- export declare function cmpxchg_u(ptr: usize, expected: i32, replacement: i32, immOffset?: usize): i32;
486
- }
487
-
488
- export namespace rmw16 {
489
-
490
- // @ts-ignore: decorator
491
- @builtin
492
- export declare function add_u(ptr: usize, value: i32, immOffset?: usize): i32;
493
-
494
- // @ts-ignore: decorator
495
- @builtin
496
- export declare function sub_u(ptr: usize, value: i32, immOffset?: usize): i32;
497
-
498
- // @ts-ignore: decorator
499
- @builtin
500
- export declare function and_u(ptr: usize, value: i32, immOffset?: usize): i32;
501
-
502
- // @ts-ignore: decorator
503
- @builtin
504
- export declare function or_u(ptr: usize, value: i32, immOffset?: usize): i32;
505
-
506
- // @ts-ignore: decorator
507
- @builtin
508
- export declare function xor_u(ptr: usize, value: i32, immOffset?: usize): i32;
509
-
510
- // @ts-ignore: decorator
511
- @unsafe @builtin
512
- export declare function xchg_u(ptr: usize, value: i32, immOffset?: usize): i32;
513
-
514
- // @ts-ignore: decorator
515
- @unsafe @builtin
516
- export declare function cmpxchg_u(ptr: usize, expected: i32, replacement: i32, immOffset?: usize): i32;
517
- }
518
-
519
- export namespace rmw {
520
-
521
- // @ts-ignore: decorator
522
- @builtin
523
- export declare function add(ptr: usize, value: i32, immOffset?: usize): i32;
524
-
525
- // @ts-ignore: decorator
526
- @builtin
527
- export declare function sub(ptr: usize, value: i32, immOffset?: usize): i32;
528
-
529
- // @ts-ignore: decorator
530
- @builtin
531
- export declare function and(ptr: usize, value: i32, immOffset?: usize): i32;
532
-
533
- // @ts-ignore: decorator
534
- @builtin
535
- export declare function or(ptr: usize, value: i32, immOffset?: usize): i32;
536
-
537
- // @ts-ignore: decorator
538
- @builtin
539
- export declare function xor(ptr: usize, value: i32, immOffset?: usize): i32;
540
-
541
- // @ts-ignore: decorator
542
- @unsafe @builtin
543
- export declare function xchg(ptr: usize, value: i32, immOffset?: usize): i32;
544
-
545
- // @ts-ignore: decorator
546
- @unsafe @builtin
547
- export declare function cmpxchg(ptr: usize, expected: i32, replacement: i32, immOffset?: usize): i32;
548
- }
549
- }
550
- }
551
-
552
- // @ts-ignore: decorator
553
- @builtin
554
- export declare function i64(value: auto): i64;
555
-
556
- export namespace i64 {
557
-
558
- // @ts-ignore: decorator
559
- @lazy
560
- export const MIN_VALUE: i64 = -9223372036854775808;
561
-
562
- // @ts-ignore: decorator
563
- @lazy
564
- export const MAX_VALUE: i64 = 9223372036854775807;
565
-
566
- // @ts-ignore: decorator
567
- @inline
568
- export function parse(value: string, radix: i32 = 0): i64 {
569
- return strtol<i64>(value, radix);
570
- }
571
-
572
- // @ts-ignore: decorator
573
- @builtin
574
- export declare function clz(value: i64): i64;
575
-
576
- // @ts-ignore: decorator
577
- @builtin
578
- export declare function ctz(value: i64): i64;
579
-
580
- // @ts-ignore: decorator
581
- @builtin
582
- export declare function add(left: i64, right:i64): i64;
583
-
584
- // @ts-ignore: decorator
585
- @builtin
586
- export declare function sub(left: i64, right:i64): i64;
587
-
588
- // @ts-ignore: decorator
589
- @builtin
590
- export declare function mul(left: i64, right:i64): i64;
591
-
592
- // @ts-ignore: decorator
593
- @builtin
594
- export declare function div_s(left: i64, right:i64): i64;
595
-
596
- // @ts-ignore: decorator
597
- @builtin
598
- export declare function div_u(left: i64, right:i64): i64;
599
-
600
- // @ts-ignore: decorator
601
- @builtin
602
- export declare function load8_s(ptr: usize, immOffset?: usize, immAlign?: usize): i64;
603
-
604
- // @ts-ignore: decorator
605
- @builtin
606
- export declare function load8_u(ptr: usize, immOffset?: usize, immAlign?: usize): i64;
607
-
608
- // @ts-ignore: decorator
609
- @builtin
610
- export declare function load16_s(ptr: usize, immOffset?: usize, immAlign?: usize): i64;
611
-
612
- // @ts-ignore: decorator
613
- @builtin
614
- export declare function load16_u(ptr: usize, immOffset?: usize, immAlign?: usize): i64;
615
-
616
- // @ts-ignore: decorator
617
- @builtin
618
- export declare function load32_s(ptr: usize, immOffset?: usize, immAlign?: usize): i64;
619
-
620
- // @ts-ignore: decorator
621
- @builtin
622
- export declare function load32_u(ptr: usize, immOffset?: usize, immAlign?: usize): i64;
623
-
624
- // @ts-ignore: decorator
625
- @builtin
626
- export declare function load(ptr: usize, immOffset?: usize): i64;
627
-
628
- // @ts-ignore: decorator
629
- @builtin
630
- export declare function popcnt(value: i64): i64;
631
-
632
- // @ts-ignore: decorator
633
- @builtin
634
- export declare function rotl(value: i64, shift: i64): i64;
635
-
636
- // @ts-ignore: decorator
637
- @builtin
638
- export declare function rotr(value: i64, shift: i64): i64;
639
-
640
- // @ts-ignore: decorator
641
- @builtin
642
- export declare function eq(left: i64, right:i64): i32;
643
-
644
- // @ts-ignore: decorator
645
- @builtin
646
- export declare function ne(left: i64, right:i64): i32;
647
-
648
- // @ts-ignore: decorator
649
- @builtin
650
- export declare function rem_s(left: i64, right: i64): i64;
651
-
652
- // @ts-ignore: decorator
653
- @builtin
654
- export declare function rem_u(left: u64, right: u64): u64;
655
-
656
- // @ts-ignore: decorator
657
- @builtin
658
- export declare function reinterpret_f64(value: f64): i64;
659
-
660
- // @ts-ignore: decorator
661
- @unsafe @builtin
662
- export declare function store8(ptr: usize, value: i64, immOffset?: usize, immAlign?: usize): void;
663
-
664
- // @ts-ignore: decorator
665
- @unsafe @builtin
666
- export declare function store16(ptr: usize, value: i64, immOffset?: usize, immAlign?: usize): void;
667
-
668
- // @ts-ignore: decorator
669
- @unsafe @builtin
670
- export declare function store32(ptr: usize, value: i64, immOffset?: usize, immAlign?: usize): void;
671
-
672
- // @ts-ignore: decorator
673
- @unsafe @builtin
674
- export declare function store(ptr: usize, value: i64, immOffset?: usize, immAlign?: usize): void;
675
-
676
- export namespace atomic {
677
-
678
- // @ts-ignore: decorator
679
- @builtin
680
- export declare function load8_u(ptr: usize, immOffset?: usize): i64;
681
-
682
- // @ts-ignore: decorator
683
- @builtin
684
- export declare function load16_u(ptr: usize, immOffset?: usize): i64;
685
-
686
- // @ts-ignore: decorator
687
- @builtin
688
- export declare function load32_u(ptr: usize, immOffset?: usize): i64;
689
-
690
- // @ts-ignore: decorator
691
- @builtin
692
- export declare function load(ptr: usize, immOffset?: usize): i64;
693
-
694
- // @ts-ignore: decorator
695
- @unsafe @builtin
696
- export declare function store8(ptr: usize, value: i64, immOffset?: usize): void;
697
-
698
- // @ts-ignore: decorator
699
- @unsafe @builtin
700
- export declare function store16(ptr: usize, value: i64, immOffset?: usize): void;
701
-
702
- // @ts-ignore: decorator
703
- @unsafe @builtin
704
- export declare function store32(ptr: usize, value: i64, immOffset?: usize): void;
705
-
706
- // @ts-ignore: decorator
707
- @unsafe @builtin
708
- export declare function store(ptr: usize, value: i64, immOffset?: usize): void;
709
-
710
- export namespace rmw8 {
711
-
712
- // @ts-ignore: decorator
713
- @builtin
714
- export declare function add_u(ptr: usize, value: i64, immOffset?: usize): i64;
715
-
716
- // @ts-ignore: decorator
717
- @builtin
718
- export declare function sub_u(ptr: usize, value: i64, immOffset?: usize): i64;
719
-
720
- // @ts-ignore: decorator
721
- @builtin
722
- export declare function and_u(ptr: usize, value: i64, immOffset?: usize): i64;
723
-
724
- // @ts-ignore: decorator
725
- @builtin
726
- export declare function or_u(ptr: usize, value: i64, immOffset?: usize): i64;
727
-
728
- // @ts-ignore: decorator
729
- @builtin
730
- export declare function xor_u(ptr: usize, value: i64, immOffset?: usize): i64;
731
-
732
- // @ts-ignore: decorator
733
- @unsafe @builtin
734
- export declare function xchg_u(ptr: usize, value: i64, immOffset?: usize): i64;
735
-
736
- // @ts-ignore: decorator
737
- @unsafe @builtin
738
- export declare function cmpxchg_u(ptr: usize, expected: i64, replacement: i64, immOffset?: usize): i64;
739
- }
740
-
741
- export namespace rmw16 {
742
-
743
- // @ts-ignore: decorator
744
- @builtin
745
- export declare function add_u(ptr: usize, value: i64, immOffset?: usize): i64;
746
-
747
- // @ts-ignore: decorator
748
- @builtin
749
- export declare function sub_u(ptr: usize, value: i64, immOffset?: usize): i64;
750
-
751
- // @ts-ignore: decorator
752
- @builtin
753
- export declare function and_u(ptr: usize, value: i64, immOffset?: usize): i64;
754
-
755
- // @ts-ignore: decorator
756
- @builtin
757
- export declare function or_u(ptr: usize, value: i64, immOffset?: usize): i64;
758
-
759
- // @ts-ignore: decorator
760
- @builtin
761
- export declare function xor_u(ptr: usize, value: i64, immOffset?: usize): i64;
762
-
763
- // @ts-ignore: decorator
764
- @unsafe @builtin
765
- export declare function xchg_u(ptr: usize, value: i64, immOffset?: usize): i64;
766
-
767
- // @ts-ignore: decorator
768
- @unsafe @builtin
769
- export declare function cmpxchg_u(ptr: usize, expected: i64, replacement: i64, immOffset?: usize): i64;
770
- }
771
-
772
- export namespace rmw32 {
773
-
774
- // @ts-ignore: decorator
775
- @builtin
776
- export declare function add_u(ptr: usize, value: i64, immOffset?: usize): i64;
777
-
778
- // @ts-ignore: decorator
779
- @builtin
780
- export declare function sub_u(ptr: usize, value: i64, immOffset?: usize): i64;
781
-
782
- // @ts-ignore: decorator
783
- @builtin
784
- export declare function and_u(ptr: usize, value: i64, immOffset?: usize): i64;
785
-
786
- // @ts-ignore: decorator
787
- @builtin
788
- export declare function or_u(ptr: usize, value: i64, immOffset?: usize): i64;
789
-
790
- // @ts-ignore: decorator
791
- @builtin
792
- export declare function xor_u(ptr: usize, value: i64, immOffset?: usize): i64;
793
-
794
- // @ts-ignore: decorator
795
- @unsafe @builtin
796
- export declare function xchg_u(ptr: usize, value: i64, immOffset?: usize): i64;
797
-
798
- // @ts-ignore: decorator
799
- @unsafe @builtin
800
- export declare function cmpxchg_u(ptr: usize, expected: i64, replacement: i64, immOffset?: usize): i64;
801
- }
802
-
803
- export namespace rmw {
804
-
805
- // @ts-ignore: decorator
806
- @builtin
807
- export declare function add(ptr: usize, value: i64, immOffset?: usize): i64;
808
-
809
- // @ts-ignore: decorator
810
- @builtin
811
- export declare function sub(ptr: usize, value: i64, immOffset?: usize): i64;
812
-
813
- // @ts-ignore: decorator
814
- @builtin
815
- export declare function and(ptr: usize, value: i64, immOffset?: usize): i64;
816
-
817
- // @ts-ignore: decorator
818
- @builtin
819
- export declare function or(ptr: usize, value: i64, immOffset?: usize): i64;
820
-
821
- // @ts-ignore: decorator
822
- @builtin
823
- export declare function xor(ptr: usize, value: i64, immOffset?: usize): i64;
824
-
825
- // @ts-ignore: decorator
826
- @unsafe @builtin
827
- export declare function xchg(ptr: usize, value: i64, immOffset?: usize): i64;
828
-
829
- // @ts-ignore: decorator
830
- @unsafe @builtin
831
- export declare function cmpxchg(ptr: usize, expected: i64, replacement: i64, immOffset?: usize): i64;
832
- }
833
- }
834
- }
835
-
836
- // @ts-ignore: decorator
837
- @builtin
838
- export declare function isize(value: auto): isize;
839
-
840
- export namespace isize {
841
-
842
- // @ts-ignore: decorator
843
- @lazy
844
- export const MIN_VALUE: isize = sizeof<i32>() == sizeof<isize>()
845
- ? -2147483648
846
- : <isize>-9223372036854775808;
847
-
848
- // @ts-ignore: decorator
849
- @lazy
850
- export const MAX_VALUE: isize = sizeof<i32>() == sizeof<isize>()
851
- ? 2147483647
852
- : <isize>9223372036854775807;
853
-
854
- // @ts-ignore: decorator
855
- @inline
856
- export function parse(value: string, radix: i32 = 0): isize {
857
- return <isize>strtol<i64>(value, radix);
858
- }
859
- }
860
-
861
- // @ts-ignore: decorator
862
- @builtin
863
- export declare function u8(value: auto): u8;
864
-
865
- export namespace u8 {
866
-
867
- // @ts-ignore: decorator
868
- @lazy
869
- export const MIN_VALUE: u8 = 0;
870
-
871
- // @ts-ignore: decorator
872
- @lazy
873
- export const MAX_VALUE: u8 = 255;
874
-
875
- // @ts-ignore: decorator
876
- @inline
877
- export function parse(value: string, radix: i32 = 0): u8 {
878
- return <u8>strtol<i32>(value, radix);
879
- }
880
- }
881
-
882
- // @ts-ignore: decorator
883
- @builtin
884
- export declare function u16(value: auto): u16;
885
-
886
- export namespace u16 {
887
-
888
- // @ts-ignore: decorator
889
- @lazy
890
- export const MIN_VALUE: u16 = 0;
891
-
892
- // @ts-ignore: decorator
893
- @lazy
894
- export const MAX_VALUE: u16 = 65535;
895
-
896
- // @ts-ignore: decorator
897
- @inline
898
- export function parse(value: string, radix: i32 = 0): u16 {
899
- return <u16>strtol<i32>(value, radix);
900
- }
901
- }
902
-
903
- // @ts-ignore: decorator
904
- @builtin
905
- export declare function u32(value: auto): u32;
906
-
907
- export namespace u32 {
908
-
909
- // @ts-ignore: decorator
910
- @lazy
911
- export const MIN_VALUE: u32 = 0;
912
-
913
- // @ts-ignore: decorator
914
- @lazy
915
- export const MAX_VALUE: u32 = 4294967295;
916
-
917
- // @ts-ignore: decorator
918
- @inline
919
- export function parse(value: string, radix: i32 = 0): u32 {
920
- return <u32>strtol<i32>(value, radix);
921
- }
922
- }
923
-
924
- // @ts-ignore: decorator
925
- @builtin
926
- export declare function u64(value: auto): u64;
927
-
928
- export namespace u64 {
929
-
930
- // @ts-ignore: decorator
931
- @lazy
932
- export const MIN_VALUE: u64 = 0;
933
-
934
- // @ts-ignore: decorator
935
- @lazy
936
- export const MAX_VALUE: u64 = 18446744073709551615;
937
-
938
- // @ts-ignore: decorator
939
- @inline
940
- export function parse(value: string, radix: i32 = 0): u64 {
941
- return <u64>strtol<i64>(value, radix);
942
- }
943
- }
944
-
945
- // @ts-ignore: decorator
946
- @builtin
947
- export declare function usize(value: auto): usize;
948
-
949
- export namespace usize {
950
-
951
- // @ts-ignore: decorator
952
- @lazy
953
- export const MIN_VALUE: usize = 0;
954
-
955
- // @ts-ignore: decorator
956
- @lazy
957
- export const MAX_VALUE: usize = sizeof<u32>() == sizeof<usize>()
958
- ? 4294967295
959
- : <usize>18446744073709551615;
960
-
961
- // @ts-ignore: decorator
962
- @inline
963
- export function parse(value: string, radix: i32 = 0): usize {
964
- return <usize>strtol<i64>(value, radix);
965
- }
966
- }
967
-
968
- // @ts-ignore: decorator
969
- @builtin
970
- export declare function bool(value: auto): bool;
971
-
972
- export namespace bool {
973
-
974
- // @ts-ignore: decorator
975
- @lazy
976
- export const MIN_VALUE: bool = false;
977
-
978
- // @ts-ignore: decorator
979
- @lazy
980
- export const MAX_VALUE: bool = true;
981
-
982
- // @ts-ignore: decorator
983
- @inline
984
- export function parse(value: string): bool {
985
- return strtob(value);
986
- }
987
- }
988
-
989
- // @ts-ignore: decorator
990
- @builtin
991
- export declare function f32(value: auto): f32;
992
-
993
- export namespace f32 {
994
-
995
- // @ts-ignore: decorator
996
- @lazy
997
- export const EPSILON = reinterpret<f32>(0x34000000); // 0x1p-23f
998
-
999
- // @ts-ignore: decorator
1000
- @lazy
1001
- export const MIN_VALUE = reinterpret<f32>(0x00000001); // 0x0.000001p+0f
1002
-
1003
- // @ts-ignore: decorator
1004
- @lazy
1005
- export const MAX_VALUE = reinterpret<f32>(0x7F7FFFFF); // 0x1.fffffep+127f
1006
-
1007
- // @ts-ignore: decorator
1008
- @lazy
1009
- export const MIN_NORMAL_VALUE = reinterpret<f32>(0x00800000); // 0x1p-126f
1010
-
1011
- // @ts-ignore: decorator
1012
- @lazy
1013
- export const MIN_SAFE_INTEGER: f32 = -16777215;
1014
-
1015
- // @ts-ignore: decorator
1016
- @lazy
1017
- export const MAX_SAFE_INTEGER: f32 = 16777215;
1018
-
1019
- // @ts-ignore: decorator
1020
- @lazy
1021
- export const POSITIVE_INFINITY: f32 = Infinity;
1022
-
1023
- // @ts-ignore: decorator
1024
- @lazy
1025
- export const NEGATIVE_INFINITY: f32 = -Infinity;
1026
-
1027
- // @ts-ignore: decorator
1028
- @lazy
1029
- export const NaN: f32 = 0.0 / 0.0;
1030
-
1031
- // @ts-ignore: decorator
1032
- @inline
1033
- export function parse(value: string): f32 {
1034
- return <f32>strtod(value);
1035
- }
1036
-
1037
- // @ts-ignore: decorator
1038
- @builtin
1039
- export declare function abs(value: f32): f32;
1040
-
1041
- // @ts-ignore: decorator
1042
- @builtin
1043
- export declare function ceil(value: f32): f32;
1044
-
1045
- // @ts-ignore: decorator
1046
- @builtin
1047
- export declare function copysign(x: f32, y: f32): f32;
1048
-
1049
- // @ts-ignore: decorator
1050
- @builtin
1051
- export declare function floor(value: f32): f32;
1052
-
1053
- // @ts-ignore: decorator
1054
- @builtin
1055
- export declare function load(ptr: usize, immOffset?: usize, immAlign?: usize): f32;
1056
-
1057
- // @ts-ignore: decorator
1058
- @builtin
1059
- export declare function max(left: f32, right: f32): f32;
1060
-
1061
- // @ts-ignore: decorator
1062
- @builtin
1063
- export declare function min(left: f32, right: f32): f32;
1064
-
1065
- // @ts-ignore: decorator
1066
- @builtin
1067
- export declare function nearest(value: f32): f32;
1068
-
1069
- // @ts-ignore: decorator
1070
- @builtin
1071
- export declare function reinterpret_i32(value: i32): f32;
1072
-
1073
- // @ts-ignore: decorator
1074
- @builtin
1075
- export declare function sqrt(value: f32): f32;
1076
-
1077
- // @ts-ignore: decorator
1078
- @unsafe @builtin
1079
- export declare function store(ptr: usize, value: f32, immOffset?: usize, immAlign?: usize): void;
1080
-
1081
- // @ts-ignore: decorator
1082
- @builtin
1083
- export declare function trunc(value: f32): f32;
1084
-
1085
- // @ts-ignore: decorator
1086
- @builtin
1087
- export declare function add(left: f32, right: f32): f32;
1088
-
1089
- // @ts-ignore: decorator
1090
- @builtin
1091
- export declare function sub(left: f32, right: f32): f32;
1092
-
1093
- // @ts-ignore: decorator
1094
- @builtin
1095
- export declare function mul(left: f32, right: f32): f32;
1096
-
1097
- // @ts-ignore: decorator
1098
- @builtin
1099
- export declare function div(left: f32, right: f32): f32;
1100
-
1101
- // @ts-ignore: decorator
1102
- @builtin
1103
- export declare function eq(left: f32, right: f32): i32;
1104
-
1105
- // @ts-ignore: decorator
1106
- @builtin
1107
- export declare function ne(left: f32, right: f32): i32;
1108
- }
1109
-
1110
- // @ts-ignore: decorator
1111
- @builtin
1112
- export declare function f64(value: auto): f64;
1113
-
1114
- export namespace f64 {
1115
-
1116
- // @ts-ignore: decorator
1117
- @lazy
1118
- export const EPSILON = reinterpret<f64>(0x3CB0000000000000); // 0x1p-52
1119
-
1120
- // @ts-ignore: decorator
1121
- @lazy
1122
- export const MIN_VALUE = reinterpret<f64>(0x0000000000000001); // 0x0.0000000000001p+0
1123
-
1124
- // @ts-ignore: decorator
1125
- @lazy
1126
- export const MAX_VALUE = reinterpret<f64>(0x7FEFFFFFFFFFFFFF); // 0x1.fffffffffffffp+1023
1127
-
1128
- // @ts-ignore: decorator
1129
- @lazy
1130
- export const MIN_NORMAL_VALUE = reinterpret<f64>(0x0010000000000000); // 0x1p-1022
1131
-
1132
- // @ts-ignore: decorator
1133
- @lazy
1134
- export const MIN_SAFE_INTEGER: f64 = -9007199254740991;
1135
-
1136
- // @ts-ignore: decorator
1137
- @lazy
1138
- export const MAX_SAFE_INTEGER: f64 = 9007199254740991;
1139
-
1140
- // @ts-ignore: decorator
1141
- @lazy
1142
- export const POSITIVE_INFINITY: f64 = Infinity;
1143
-
1144
- // @ts-ignore: decorator
1145
- @lazy
1146
- export const NEGATIVE_INFINITY: f64 = -Infinity;
1147
-
1148
- // @ts-ignore: decorator
1149
- @lazy
1150
- export const NaN: f64 = 0.0 / 0.0;
1151
-
1152
- // @ts-ignore: decorator
1153
- @inline
1154
- export function parse(value: string): f64 {
1155
- return strtod(value);
1156
- }
1157
-
1158
- // @ts-ignore: decorator
1159
- @builtin
1160
- export declare function abs(value: f64): f64;
1161
-
1162
- // @ts-ignore: decorator
1163
- @builtin
1164
- export declare function ceil(value: f64): f64;
1165
-
1166
- // @ts-ignore: decorator
1167
- @builtin
1168
- export declare function copysign(x: f64, y: f64): f64;
1169
-
1170
- // @ts-ignore: decorator
1171
- @builtin
1172
- export declare function floor(value: f64): f64;
1173
-
1174
- // @ts-ignore: decorator
1175
- @builtin
1176
- export declare function load(ptr: usize, immOffset?: usize, immAlign?: usize): f64;
1177
-
1178
- // @ts-ignore: decorator
1179
- @builtin
1180
- export declare function max(left: f64, right: f64): f64;
1181
-
1182
- // @ts-ignore: decorator
1183
- @builtin
1184
- export declare function min(left: f64, right: f64): f64;
1185
-
1186
- // @ts-ignore: decorator
1187
- @builtin
1188
- export declare function nearest(value: f64): f64;
1189
-
1190
- // @ts-ignore: decorator
1191
- @builtin
1192
- export declare function reinterpret_i64(value: i64): f64;
1193
-
1194
- // @ts-ignore: decorator
1195
- @builtin
1196
- export declare function sqrt(value: f64): f64;
1197
-
1198
- // @ts-ignore: decorator
1199
- @unsafe @builtin
1200
- export declare function store(ptr: usize, value: f64, immOffset?: usize, immAlign?: usize): void;
1201
-
1202
- // @ts-ignore: decorator
1203
- @builtin
1204
- export declare function trunc(value: f64): f64;
1205
-
1206
- // @ts-ignore: decorator
1207
- @builtin
1208
- export declare function add(left: f64, right: f64): f64;
1209
-
1210
- // @ts-ignore: decorator
1211
- @builtin
1212
- export declare function sub(left: f64, right: f64): f64;
1213
-
1214
- // @ts-ignore: decorator
1215
- @builtin
1216
- export declare function mul(left: f64, right: f64): f64;
1217
-
1218
- // @ts-ignore: decorator
1219
- @builtin
1220
- export declare function div(left: f64, right: f64): f64;
1221
-
1222
- // @ts-ignore: decorator
1223
- @builtin
1224
- export declare function eq(left: f64, right: f64): i32;
1225
-
1226
- // @ts-ignore: decorator
1227
- @builtin
1228
- export declare function ne(left: f64, right: f64): i32;
1229
- }
1230
-
1231
- // @ts-ignore: decorator
1232
- @builtin
1233
- export declare function v128(
1234
- a: i8, b: i8, c: i8, d: i8, e: i8, f: i8, g: i8, h: i8,
1235
- i: i8, j: i8, k: i8, l: i8, m: i8, n: i8, o: i8, p: i8
1236
- ): v128;
1237
-
1238
- export namespace v128 {
1239
-
1240
- // @ts-ignore: decorator
1241
- @builtin
1242
- export declare function splat<T>(x: T): v128;
1243
-
1244
- // @ts-ignore: decorator
1245
- @builtin
1246
- export declare function extract_lane<T>(x: v128, idx: u8): T;
1247
-
1248
- // @ts-ignore: decorator
1249
- @builtin
1250
- export declare function replace_lane<T>(x: v128, idx: u8, value: T): v128;
1251
-
1252
- // @ts-ignore: decorator
1253
- @builtin
1254
- export declare function shuffle<T>(a: v128, b: v128, ...lanes: u8[]): v128;
1255
-
1256
- // @ts-ignore: decorator
1257
- @builtin
1258
- export declare function swizzle(a: v128, b: v128): v128;
1259
-
1260
- // @ts-ignore: decorator
1261
- @unsafe @builtin
1262
- export declare function load(ptr: usize, immOffset?: usize, immAlign?: usize): v128;
1263
-
1264
- // @ts-ignore: decorator
1265
- @unsafe @builtin
1266
- export declare function load_ext<TFrom>(ptr: usize, immOffset?: usize, immAlign?: usize): v128;
1267
-
1268
- // @ts-ignore: decorator
1269
- @unsafe @builtin
1270
- export declare function load_zero<TFrom>(ptr: usize, immOffset?: usize, immAlign?: usize): v128;
1271
-
1272
- // @ts-ignore: decorator
1273
- @unsafe @builtin
1274
- export declare function load_lane<TFrom>(ptr: usize, vec: v128, idx: u8, immOffset?: usize, immAlign?: usize): v128;
1275
-
1276
- // @ts-ignore: decorator
1277
- @unsafe @builtin
1278
- export declare function store_lane<TFrom>(ptr: usize, vec: v128, idx: u8, immOffset?: usize, immAlign?: usize): void;
1279
-
1280
- // @ts-ignore: decorator
1281
- @builtin
1282
- export declare function load8x8_s(ptr: usize, immOffset?: u32, immAlign?: u32): v128;
1283
-
1284
- // @ts-ignore: decorator
1285
- @builtin
1286
- export declare function load8x8_u(ptr: usize, immOffset?: u32, immAlign?: u32): v128;
1287
-
1288
- // @ts-ignore: decorator
1289
- @builtin
1290
- export declare function load16x4_s(ptr: usize, immOffset?: u32, immAlign?: u32): v128;
1291
-
1292
- // @ts-ignore: decorator
1293
- @builtin
1294
- export declare function load16x4_u(ptr: usize, immOffset?: u32, immAlign?: u32): v128;
1295
-
1296
- // @ts-ignore: decorator
1297
- @builtin
1298
- export declare function load32x2_s(ptr: usize, immOffset?: u32, immAlign?: u32): v128;
1299
-
1300
- // @ts-ignore: decorator
1301
- @builtin
1302
- export declare function load32x2_u(ptr: usize, immOffset?: u32, immAlign?: u32): v128;
1303
-
1304
- // @ts-ignore: decorator
1305
- @unsafe @builtin
1306
- export declare function load_splat<T>(ptr: usize, immOffset?: usize, immAlign?: usize): v128;
1307
-
1308
- // @ts-ignore: decorator
1309
- @unsafe @builtin
1310
- export declare function load8_splat(ptr: usize, immOffset?: u32, immAlign?: u32): v128;
1311
-
1312
- // @ts-ignore: decorator
1313
- @unsafe @builtin
1314
- export declare function load16_splat(ptr: usize, immOffset?: u32, immAlign?: u32): v128;
1315
-
1316
- // @ts-ignore: decorator
1317
- @unsafe @builtin
1318
- export declare function load32_splat(ptr: usize, immOffset?: u32, immAlign?: u32): v128;
1319
-
1320
- // @ts-ignore: decorator
1321
- @unsafe @builtin
1322
- export declare function load64_splat(ptr: usize, immOffset?: u32, immAlign?: u32): v128;
1323
-
1324
- // @ts-ignore: decorator
1325
- @unsafe @builtin
1326
- export declare function load32_zero(ptr: usize, immOffset?: u32, immAlign?: u32): v128;
1327
-
1328
- // @ts-ignore: decorator
1329
- @unsafe @builtin
1330
- export declare function load64_zero(ptr: usize, immOffset?: u32, immAlign?: u32): v128;
1331
-
1332
- // @ts-ignore: decorator
1333
- @unsafe @builtin
1334
- export declare function load8_lane(ptr: usize, vec: v128, idx: u8, immOffset?: u32, immAlign?: u32): v128;
1335
-
1336
- // @ts-ignore: decorator
1337
- @unsafe @builtin
1338
- export declare function load16_lane(ptr: usize, vec: v128, idx: u8, immOffset?: u32, immAlign?: u32): v128;
1339
-
1340
- // @ts-ignore: decorator
1341
- @unsafe @builtin
1342
- export declare function load32_lane(ptr: usize, vec: v128, idx: u8, immOffset?: u32, immAlign?: u32): v128;
1343
-
1344
- // @ts-ignore: decorator
1345
- @unsafe @builtin
1346
- export declare function load64_lane(ptr: usize, vec: v128, idx: u8, immOffset?: u32, immAlign?: u32): v128;
1347
-
1348
- // @ts-ignore: decorator
1349
- @unsafe @builtin
1350
- export declare function store8_lane(ptr: usize, vec: v128, idx: u8, immOffset?: u32, immAlign?: u32): void;
1351
-
1352
- // @ts-ignore: decorator
1353
- @unsafe @builtin
1354
- export declare function store16_lane(ptr: usize, vec: v128, idx: u8, immOffset?: u32, immAlign?: u32): void;
1355
-
1356
- // @ts-ignore: decorator
1357
- @unsafe @builtin
1358
- export declare function store32_lane(ptr: usize, vec: v128, idx: u8, immOffset?: u32, immAlign?: u32): void;
1359
-
1360
- // @ts-ignore: decorator
1361
- @unsafe @builtin
1362
- export declare function store64_lane(ptr: usize, vec: v128, idx: u8, immOffset?: u32, immAlign?: u32): void;
1363
-
1364
- // @ts-ignore: decorator
1365
- @unsafe @builtin
1366
- export declare function store(ptr: usize, value: v128, immOffset?: usize, immAlign?: usize): void;
1367
-
1368
- // @ts-ignore: decorator
1369
- @builtin
1370
- export declare function add<T>(a: v128, b: v128): v128;
1371
-
1372
- // @ts-ignore: decorator
1373
- @builtin
1374
- export declare function sub<T>(a: v128, b: v128): v128;
1375
-
1376
- // @ts-ignore: decorator
1377
- @builtin
1378
- export declare function mul<T>(a: v128, b: v128): v128;
1379
-
1380
- // @ts-ignore: decorator
1381
- @builtin
1382
- export declare function div<T>(a: v128, b: v128): v128; // f32, f64 only
1383
-
1384
- // @ts-ignore: decorator
1385
- @builtin
1386
- export declare function neg<T>(a: v128): v128;
1387
-
1388
- // @ts-ignore: decorator
1389
- @builtin
1390
- export declare function add_sat<T>(a: v128, b: v128): v128;
1391
-
1392
- // @ts-ignore: decorator
1393
- @builtin
1394
- export declare function sub_sat<T>(a: v128, b: v128): v128;
1395
-
1396
- // @ts-ignore: decorator
1397
- @builtin
1398
- export declare function shl<T>(a: v128, b: i32): v128;
1399
-
1400
- // @ts-ignore: decorator
1401
- @builtin
1402
- export declare function shr<T>(a: v128, b: i32): v128;
1403
-
1404
- // @ts-ignore: decorator
1405
- @builtin
1406
- export declare function and(a: v128, b: v128): v128;
1407
-
1408
- // @ts-ignore: decorator
1409
- @builtin
1410
- export declare function or(a: v128, b: v128): v128;
1411
-
1412
- // @ts-ignore: decorator
1413
- @builtin
1414
- export declare function xor(a: v128, b: v128): v128;
1415
-
1416
- // @ts-ignore: decorator
1417
- @builtin
1418
- export declare function andnot(a: v128, b: v128): v128;
1419
-
1420
- // @ts-ignore: decorator
1421
- @builtin
1422
- export declare function not(a: v128): v128;
1423
-
1424
- // @ts-ignore: decorator
1425
- @builtin
1426
- export declare function bitselect(v1: v128, v2: v128, c: v128): v128;
1427
-
1428
- // @ts-ignore: decorator
1429
- @builtin
1430
- export declare function any_true(a: v128): bool;
1431
-
1432
- // @ts-ignore: decorator
1433
- @builtin
1434
- export declare function all_true<T>(a: v128): bool;
1435
-
1436
- // @ts-ignore: decorator
1437
- @builtin
1438
- export declare function bitmask<T>(a: v128): i32;
1439
-
1440
- // @ts-ignore: decorator
1441
- @builtin
1442
- export declare function popcnt<T>(a: v128): v128;
1443
-
1444
- // @ts-ignore: decorator
1445
- @builtin
1446
- export declare function min<T>(a: v128, b: v128): v128;
1447
-
1448
- // @ts-ignore: decorator
1449
- @builtin
1450
- export declare function max<T>(a: v128, b: v128): v128;
1451
-
1452
- // @ts-ignore: decorator
1453
- @builtin
1454
- export declare function pmin<T>(a: v128, b: v128): v128;
1455
-
1456
- // @ts-ignore: decorator
1457
- @builtin
1458
- export declare function pmax<T>(a: v128, b: v128): v128;
1459
-
1460
- // @ts-ignore: decorator
1461
- @builtin
1462
- export declare function dot<T>(a: v128, b: v128): v128; // i16 only
1463
-
1464
- // @ts-ignore: decorator
1465
- @builtin
1466
- export declare function avgr<T>(a: v128, b: v128): v128; // u8, u16 only
1467
-
1468
- // @ts-ignore: decorator
1469
- @builtin
1470
- export declare function abs<T>(a: v128): v128; // f32, f64 only
1471
-
1472
- // @ts-ignore: decorator
1473
- @builtin
1474
- export declare function sqrt<T>(a: v128): v128; // f32, f64 only
1475
-
1476
- // @ts-ignore: decorator
1477
- @builtin
1478
- export declare function ceil<T>(a: v128): v128; // f32, f64 only
1479
-
1480
- // @ts-ignore: decorator
1481
- @builtin
1482
- export declare function floor<T>(a: v128): v128; // f32, f64 only
1483
-
1484
- // @ts-ignore: decorator
1485
- @builtin
1486
- export declare function trunc<T>(a: v128): v128; // f32, f64 only
1487
-
1488
- // @ts-ignore: decorator
1489
- @builtin
1490
- export declare function nearest<T>(a: v128): v128; // f32, f64 only
1491
-
1492
- // @ts-ignore: decorator
1493
- @builtin
1494
- export declare function eq<T>(a: v128, b: v128): v128;
1495
-
1496
- // @ts-ignore: decorator
1497
- @builtin
1498
- export declare function ne<T>(a: v128, b: v128): v128;
1499
-
1500
- // @ts-ignore: decorator
1501
- @builtin
1502
- export declare function lt<T>(a: v128, b: v128): v128;
1503
-
1504
- // @ts-ignore: decorator
1505
- @builtin
1506
- export declare function le<T>(a: v128, b: v128): v128;
1507
-
1508
- // @ts-ignore: decorator
1509
- @builtin
1510
- export declare function gt<T>(a: v128, b: v128): v128;
1511
-
1512
- // @ts-ignore: decorator
1513
- @builtin
1514
- export declare function ge<T>(a: v128, b: v128): v128;
1515
-
1516
- // @ts-ignore: decorator
1517
- @builtin
1518
- export declare function convert<T>(a: v128): v128;
1519
-
1520
- // @ts-ignore: decorator
1521
- @builtin
1522
- export declare function convert_low<T>(a: v128): v128;
1523
-
1524
- // @ts-ignore: decorator
1525
- @builtin
1526
- export declare function trunc_sat<T>(a: v128): v128;
1527
-
1528
- // @ts-ignore: decorator
1529
- @builtin
1530
- export declare function trunc_sat_zero<T>(a: v128): v128;
1531
-
1532
- // @ts-ignore: decorator
1533
- @builtin
1534
- export declare function narrow<T>(a: v128, b: v128): v128;
1535
-
1536
- // @ts-ignore: decorator
1537
- @builtin
1538
- export declare function extend_low<T>(a: v128): v128;
1539
-
1540
- // @ts-ignore: decorator
1541
- @builtin
1542
- export declare function extend_high<T>(a: v128): v128;
1543
-
1544
- // @ts-ignore: decorator
1545
- @builtin
1546
- export declare function extadd_pairwise<T>(a: v128): v128;
1547
-
1548
- // @ts-ignore: decorator
1549
- @builtin
1550
- export declare function demote_zero<T = f64>(a: v128): v128;
1551
-
1552
- // @ts-ignore: decorator
1553
- @builtin
1554
- export declare function promote_low<T = f32>(a: v128): v128;
1555
-
1556
- // @ts-ignore: decorator
1557
- @builtin
1558
- export declare function q15mulr_sat<T>(a: v128, b: v128): v128;
1559
-
1560
- // @ts-ignore: decorator
1561
- @builtin
1562
- export declare function extmul_low<T>(a: v128, b: v128): v128;
1563
-
1564
- // @ts-ignore: decorator
1565
- @builtin
1566
- export declare function extmul_high<T>(a: v128, b: v128): v128;
1567
-
1568
- // @ts-ignore: decorator
1569
- @builtin
1570
- export declare function relaxed_swizzle(a: v128, s: v128): v128;
1571
-
1572
- // @ts-ignore: decorator
1573
- @builtin
1574
- export declare function relaxed_trunc<T>(a: v128): v128;
1575
-
1576
- // @ts-ignore: decorator
1577
- @builtin
1578
- export declare function relaxed_trunc_zero<T>(a: v128): v128;
1579
-
1580
- // @ts-ignore: decorator
1581
- @builtin
1582
- export declare function relaxed_madd<T>(a: v128, b: v128, c: v128): v128;
1583
-
1584
- // @ts-ignore: decorator
1585
- @builtin
1586
- export declare function relaxed_nmadd<T>(a: v128, b: v128, c: v128): v128;
1587
-
1588
- // @ts-ignore: decorator
1589
- @builtin
1590
- export declare function relaxed_laneselect<T>(a: v128, b: v128, m: v128): v128;
1591
-
1592
- // @ts-ignore: decorator
1593
- @builtin
1594
- export declare function relaxed_min<T>(a: v128, b: v128): v128;
1595
-
1596
- // @ts-ignore: decorator
1597
- @builtin
1598
- export declare function relaxed_max<T>(a: v128, b: v128): v128;
1599
-
1600
- // @ts-ignore: decorator
1601
- @builtin
1602
- export declare function relaxed_q15mulr<T>(a: v128, b: v128): v128;
1603
-
1604
- // @ts-ignore: decorator
1605
- @builtin
1606
- export declare function relaxed_dot<T>(a: v128, b: v128): v128;
1607
-
1608
- // @ts-ignore: decorator
1609
- @builtin
1610
- export declare function relaxed_dot_add<T>(a: v128, b: v128, c: v128): v128;
1611
- }
1612
-
1613
- // @ts-ignore: decorator
1614
- @builtin
1615
- export declare function i8x16(
1616
- a: i8, b: i8, c: i8, d: i8, e: i8, f: i8, g: i8, h: i8,
1617
- i: i8, j: i8, k: i8, l: i8, m: i8, n: i8, o: i8, p: i8
1618
- ): v128;
1619
-
1620
- export namespace i8x16 {
1621
-
1622
- // @ts-ignore: decorator
1623
- @builtin
1624
- export declare function splat(x: i8): v128;
1625
-
1626
- // @ts-ignore: decorator
1627
- @builtin
1628
- export declare function extract_lane_s(x: v128, idx: u8): i8;
1629
-
1630
- // @ts-ignore: decorator
1631
- @builtin
1632
- export declare function extract_lane_u(x: v128, idx: u8): u8;
1633
-
1634
- // @ts-ignore: decorator
1635
- @builtin
1636
- export declare function replace_lane(x: v128, idx: u8, value: i8): v128;
1637
-
1638
- // @ts-ignore: decorator
1639
- @builtin
1640
- export declare function add(a: v128, b: v128): v128;
1641
-
1642
- // @ts-ignore: decorator
1643
- @builtin
1644
- export declare function sub(a: v128, b: v128): v128;
1645
-
1646
- // @ts-ignore: decorator
1647
- @builtin
1648
- export declare function min_s(a: v128, b: v128): v128;
1649
-
1650
- // @ts-ignore: decorator
1651
- @builtin
1652
- export declare function min_u(a: v128, b: v128): v128;
1653
-
1654
- // @ts-ignore: decorator
1655
- @builtin
1656
- export declare function max_s(a: v128, b: v128): v128;
1657
-
1658
- // @ts-ignore: decorator
1659
- @builtin
1660
- export declare function max_u(a: v128, b: v128): v128;
1661
-
1662
- // @ts-ignore: decorator
1663
- @builtin
1664
- export declare function avgr_u(a: v128, b: v128): v128;
1665
-
1666
- // @ts-ignore: decorator
1667
- @builtin
1668
- export declare function abs(a: v128): v128;
1669
-
1670
- // @ts-ignore: decorator
1671
- @builtin
1672
- export declare function neg(a: v128): v128;
1673
-
1674
- // @ts-ignore: decorator
1675
- @builtin
1676
- export declare function add_sat_s(a: v128, b: v128): v128;
1677
-
1678
- // @ts-ignore: decorator
1679
- @builtin
1680
- export declare function add_sat_u(a: v128, b: v128): v128;
1681
-
1682
- // @ts-ignore: decorator
1683
- @builtin
1684
- export declare function sub_sat_s(a: v128, b: v128): v128;
1685
-
1686
- // @ts-ignore: decorator
1687
- @builtin
1688
- export declare function sub_sat_u(a: v128, b: v128): v128;
1689
-
1690
- // @ts-ignore: decorator
1691
- @builtin
1692
- export declare function shl(a: v128, b: i32): v128;
1693
-
1694
- // @ts-ignore: decorator
1695
- @builtin
1696
- export declare function shr_s(a: v128, b: i32): v128;
1697
-
1698
- // @ts-ignore: decorator
1699
- @builtin
1700
- export declare function shr_u(a: v128, b: i32): v128;
1701
-
1702
- // @ts-ignore: decorator
1703
- @builtin
1704
- export declare function all_true(a: v128): bool;
1705
-
1706
- // @ts-ignore: decorator
1707
- @builtin
1708
- export declare function bitmask(a: v128): i32;
1709
-
1710
- // @ts-ignore: decorator
1711
- @builtin
1712
- export declare function popcnt(a: v128): v128;
1713
-
1714
- // @ts-ignore: decorator
1715
- @builtin
1716
- export declare function eq(a: v128, b: v128): v128;
1717
-
1718
- // @ts-ignore: decorator
1719
- @builtin
1720
- export declare function ne(a: v128, b: v128): v128;
1721
-
1722
- // @ts-ignore: decorator
1723
- @builtin
1724
- export declare function lt_s(a: v128, b: v128): v128;
1725
-
1726
- // @ts-ignore: decorator
1727
- @builtin
1728
- export declare function lt_u(a: v128, b: v128): v128;
1729
-
1730
- // @ts-ignore: decorator
1731
- @builtin
1732
- export declare function le_s(a: v128, b: v128): v128;
1733
-
1734
- // @ts-ignore: decorator
1735
- @builtin
1736
- export declare function le_u(a: v128, b: v128): v128;
1737
-
1738
- // @ts-ignore: decorator
1739
- @builtin
1740
- export declare function gt_s(a: v128, b: v128): v128;
1741
-
1742
- // @ts-ignore: decorator
1743
- @builtin
1744
- export declare function gt_u(a: v128, b: v128): v128;
1745
-
1746
- // @ts-ignore: decorator
1747
- @builtin
1748
- export declare function ge_s(a: v128, b: v128): v128;
1749
-
1750
- // @ts-ignore: decorator
1751
- @builtin
1752
- export declare function ge_u(a: v128, b: v128): v128;
1753
-
1754
- // @ts-ignore: decorator
1755
- @builtin
1756
- export declare function narrow_i16x8_s(a: v128, b: v128): v128;
1757
-
1758
- // @ts-ignore: decorator
1759
- @builtin
1760
- export declare function narrow_i16x8_u(a: v128, b: v128): v128;
1761
-
1762
- // @ts-ignore: decorator
1763
- @builtin
1764
- export declare function shuffle(
1765
- a: v128, b: v128,
1766
- l0: u8, l1: u8, l2: u8, l3: u8, l4: u8, l5: u8, l6: u8, l7: u8,
1767
- l8: u8, l9: u8, l10: u8, l11: u8, l12: u8, l13: u8, l14: u8, l15: u8
1768
- ): v128;
1769
-
1770
- // @ts-ignore: decorator
1771
- @builtin
1772
- export declare function swizzle(a: v128, b: v128): v128;
1773
-
1774
- // @ts-ignore: decorator
1775
- @builtin
1776
- export declare function relaxed_swizzle(a: v128, s: v128): v128;
1777
-
1778
- // @ts-ignore: decorator
1779
- @builtin
1780
- export declare function relaxed_laneselect(a: v128, b: v128, m: v128): v128;
1781
- }
1782
-
1783
- // @ts-ignore: decorator
1784
- @builtin
1785
- export declare function i16x8(a: i16, b: i16, c: i16, d: i16, e: i16, f: i16, g: i16, h: i16): v128;
1786
-
1787
- export namespace i16x8 {
1788
-
1789
- // @ts-ignore: decorator
1790
- @builtin
1791
- export declare function splat(x: i16): v128;
1792
-
1793
- // @ts-ignore: decorator
1794
- @builtin
1795
- export declare function extract_lane_s(x: v128, idx: u8): i16;
1796
-
1797
- // @ts-ignore: decorator
1798
- @builtin
1799
- export declare function extract_lane_u(x: v128, idx: u8): u16;
1800
-
1801
- // @ts-ignore: decorator
1802
- @builtin
1803
- export declare function replace_lane(x: v128, idx: u8, value: i16): v128;
1804
-
1805
- // @ts-ignore: decorator
1806
- @builtin
1807
- export declare function add(a: v128, b: v128): v128;
1808
-
1809
- // @ts-ignore: decorator
1810
- @builtin
1811
- export declare function sub(a: v128, b: v128): v128;
1812
-
1813
- // @ts-ignore: decorator
1814
- @builtin
1815
- export declare function mul(a: v128, b: v128): v128;
1816
-
1817
- // @ts-ignore: decorator
1818
- @builtin
1819
- export declare function min_s(a: v128, b: v128): v128;
1820
-
1821
- // @ts-ignore: decorator
1822
- @builtin
1823
- export declare function min_u(a: v128, b: v128): v128;
1824
-
1825
- // @ts-ignore: decorator
1826
- @builtin
1827
- export declare function max_s(a: v128, b: v128): v128;
1828
-
1829
- // @ts-ignore: decorator
1830
- @builtin
1831
- export declare function max_u(a: v128, b: v128): v128;
1832
-
1833
- // @ts-ignore: decorator
1834
- @builtin
1835
- export declare function avgr_u(a: v128, b: v128): v128;
1836
-
1837
- // @ts-ignore: decorator
1838
- @builtin
1839
- export declare function abs(a: v128): v128;
1840
-
1841
- // @ts-ignore: decorator
1842
- @builtin
1843
- export declare function neg(a: v128): v128;
1844
-
1845
- // @ts-ignore: decorator
1846
- @builtin
1847
- export declare function add_sat_s(a: v128, b: v128): v128;
1848
-
1849
- // @ts-ignore: decorator
1850
- @builtin
1851
- export declare function add_sat_u(a: v128, b: v128): v128;
1852
-
1853
- // @ts-ignore: decorator
1854
- @builtin
1855
- export declare function sub_sat_s(a: v128, b: v128): v128;
1856
-
1857
- // @ts-ignore: decorator
1858
- @builtin
1859
- export declare function sub_sat_u(a: v128, b: v128): v128;
1860
-
1861
- // @ts-ignore: decorator
1862
- @builtin
1863
- export declare function shl(a: v128, b: i32): v128;
1864
-
1865
- // @ts-ignore: decorator
1866
- @builtin
1867
- export declare function shr_s(a: v128, b: i32): v128;
1868
-
1869
- // @ts-ignore: decorator
1870
- @builtin
1871
- export declare function shr_u(a: v128, b: i32): v128;
1872
-
1873
- // @ts-ignore: decorator
1874
- @builtin
1875
- export declare function all_true(a: v128): bool;
1876
-
1877
- // @ts-ignore: decorator
1878
- @builtin
1879
- export declare function bitmask(a: v128): i32;
1880
-
1881
- // @ts-ignore: decorator
1882
- @builtin
1883
- export declare function eq(a: v128, b: v128): v128;
1884
-
1885
- // @ts-ignore: decorator
1886
- @builtin
1887
- export declare function ne(a: v128, b: v128): v128;
1888
-
1889
- // @ts-ignore: decorator
1890
- @builtin
1891
- export declare function lt_s(a: v128, b: v128): v128;
1892
-
1893
- // @ts-ignore: decorator
1894
- @builtin
1895
- export declare function lt_u(a: v128, b: v128): v128;
1896
-
1897
- // @ts-ignore: decorator
1898
- @builtin
1899
- export declare function le_s(a: v128, b: v128): v128;
1900
-
1901
- // @ts-ignore: decorator
1902
- @builtin
1903
- export declare function le_u(a: v128, b: v128): v128;
1904
-
1905
- // @ts-ignore: decorator
1906
- @builtin
1907
- export declare function gt_s(a: v128, b: v128): v128;
1908
-
1909
- // @ts-ignore: decorator
1910
- @builtin
1911
- export declare function gt_u(a: v128, b: v128): v128;
1912
-
1913
- // @ts-ignore: decorator
1914
- @builtin
1915
- export declare function ge_s(a: v128, b: v128): v128;
1916
-
1917
- // @ts-ignore: decorator
1918
- @builtin
1919
- export declare function ge_u(a: v128, b: v128): v128;
1920
-
1921
- // @ts-ignore: decorator
1922
- @builtin
1923
- export declare function narrow_i32x4_s(a: v128, b: v128): v128;
1924
-
1925
- // @ts-ignore: decorator
1926
- @builtin
1927
- export declare function narrow_i32x4_u(a: v128, b: v128): v128;
1928
-
1929
- // @ts-ignore: decorator
1930
- @builtin
1931
- export declare function extend_low_i8x16_s(a: v128): v128;
1932
-
1933
- // @ts-ignore: decorator
1934
- @builtin
1935
- export declare function extend_low_i8x16_u(a: v128): v128;
1936
-
1937
- // @ts-ignore: decorator
1938
- @builtin
1939
- export declare function extend_high_i8x16_s(a: v128): v128;
1940
-
1941
- // @ts-ignore: decorator
1942
- @builtin
1943
- export declare function extend_high_i8x16_u(a: v128): v128;
1944
-
1945
- // @ts-ignore: decorator
1946
- @builtin
1947
- export declare function extadd_pairwise_i8x16_s(a: v128): v128;
1948
-
1949
- // @ts-ignore: decorator
1950
- @builtin
1951
- export declare function extadd_pairwise_i8x16_u(a: v128): v128;
1952
-
1953
- // @ts-ignore: decorator
1954
- @builtin
1955
- export declare function q15mulr_sat_s(a: v128, b: v128): v128;
1956
-
1957
- // @ts-ignore: decorator
1958
- @builtin
1959
- export declare function extmul_low_i8x16_s(a: v128, b: v128): v128;
1960
-
1961
- // @ts-ignore: decorator
1962
- @builtin
1963
- export declare function extmul_low_i8x16_u(a: v128, b: v128): v128;
1964
-
1965
- // @ts-ignore: decorator
1966
- @builtin
1967
- export declare function extmul_high_i8x16_s(a: v128, b: v128): v128;
1968
-
1969
- // @ts-ignore: decorator
1970
- @builtin
1971
- export declare function extmul_high_i8x16_u(a: v128, b: v128): v128;
1972
-
1973
- // @ts-ignore: decorator
1974
- @builtin
1975
- export declare function shuffle(
1976
- a: v128, b: v128,
1977
- l0: u8, l1: u8, l2: u8, l3: u8, l4: u8, l5: u8, l6: u8, l7: u8
1978
- ): v128;
1979
-
1980
- // @ts-ignore: decorator
1981
- @builtin
1982
- export declare function relaxed_laneselect(a: v128, b: v128, m: v128): v128;
1983
-
1984
- // @ts-ignore: decorator
1985
- @builtin
1986
- export declare function relaxed_q15mulr_s(a: v128, b: v128): v128;
1987
-
1988
- // @ts-ignore: decorator
1989
- @builtin
1990
- export declare function relaxed_dot_i8x16_i7x16_s(a: v128, b: v128, c: v128): v128;
1991
- }
1992
-
1993
- // @ts-ignore: decorator
1994
- @builtin
1995
- export declare function i32x4(a: i32, b: i32, c: i32, d: i32): v128;
1996
-
1997
- export namespace i32x4 {
1998
-
1999
- // @ts-ignore: decorator
2000
- @builtin
2001
- export declare function splat(x: i32): v128;
2002
-
2003
- // @ts-ignore: decorator
2004
- @builtin
2005
- export declare function extract_lane(x: v128, idx: u8): i32;
2006
-
2007
- // @ts-ignore: decorator
2008
- @builtin
2009
- export declare function replace_lane(x: v128, idx: u8, value: i32): v128;
2010
-
2011
- // @ts-ignore: decorator
2012
- @builtin
2013
- export declare function add(a: v128, b: v128): v128;
2014
-
2015
- // @ts-ignore: decorator
2016
- @builtin
2017
- export declare function sub(a: v128, b: v128): v128;
2018
-
2019
- // @ts-ignore: decorator
2020
- @builtin
2021
- export declare function mul(a: v128, b: v128): v128;
2022
-
2023
- // @ts-ignore: decorator
2024
- @builtin
2025
- export declare function min_s(a: v128, b: v128): v128;
2026
-
2027
- // @ts-ignore: decorator
2028
- @builtin
2029
- export declare function min_u(a: v128, b: v128): v128;
2030
-
2031
- // @ts-ignore: decorator
2032
- @builtin
2033
- export declare function max_s(a: v128, b: v128): v128;
2034
-
2035
- // @ts-ignore: decorator
2036
- @builtin
2037
- export declare function max_u(a: v128, b: v128): v128;
2038
-
2039
- // @ts-ignore: decorator
2040
- @builtin
2041
- export declare function dot_i16x8_s(a: v128, b: v128): v128;
2042
-
2043
- // @ts-ignore: decorator
2044
- @builtin
2045
- export declare function abs(a: v128): v128;
2046
-
2047
- // @ts-ignore: decorator
2048
- @builtin
2049
- export declare function neg(a: v128): v128;
2050
-
2051
- // @ts-ignore: decorator
2052
- @builtin
2053
- export declare function shl(a: v128, b: i32): v128;
2054
-
2055
- // @ts-ignore: decorator
2056
- @builtin
2057
- export declare function shr_s(a: v128, b: i32): v128;
2058
-
2059
- // @ts-ignore: decorator
2060
- @builtin
2061
- export declare function shr_u(a: v128, b: i32): v128;
2062
-
2063
- // @ts-ignore: decorator
2064
- @builtin
2065
- export declare function all_true(a: v128): bool;
2066
-
2067
- // @ts-ignore: decorator
2068
- @builtin
2069
- export declare function bitmask(a: v128): i32;
2070
-
2071
- // @ts-ignore: decorator
2072
- @builtin
2073
- export declare function eq(a: v128, b: v128): v128;
2074
-
2075
- // @ts-ignore: decorator
2076
- @builtin
2077
- export declare function ne(a: v128, b: v128): v128;
2078
-
2079
- // @ts-ignore: decorator
2080
- @builtin
2081
- export declare function lt_s(a: v128, b: v128): v128;
2082
-
2083
- // @ts-ignore: decorator
2084
- @builtin
2085
- export declare function lt_u(a: v128, b: v128): v128;
2086
-
2087
- // @ts-ignore: decorator
2088
- @builtin
2089
- export declare function le_s(a: v128, b: v128): v128;
2090
-
2091
- // @ts-ignore: decorator
2092
- @builtin
2093
- export declare function le_u(a: v128, b: v128): v128;
2094
-
2095
- // @ts-ignore: decorator
2096
- @builtin
2097
- export declare function gt_s(a: v128, b: v128): v128;
2098
-
2099
- // @ts-ignore: decorator
2100
- @builtin
2101
- export declare function gt_u(a: v128, b: v128): v128;
2102
-
2103
- // @ts-ignore: decorator
2104
- @builtin
2105
- export declare function ge_s(a: v128, b: v128): v128;
2106
-
2107
- // @ts-ignore: decorator
2108
- @builtin
2109
- export declare function ge_u(a: v128, b: v128): v128;
2110
-
2111
- // @ts-ignore: decorator
2112
- @builtin
2113
- export declare function trunc_sat_f32x4_s(a: v128): v128;
2114
-
2115
- // @ts-ignore: decorator
2116
- @builtin
2117
- export declare function trunc_sat_f32x4_u(a: v128): v128;
2118
-
2119
- // @ts-ignore: decorator
2120
- @builtin
2121
- export declare function trunc_sat_f64x2_s_zero(a: v128): v128;
2122
-
2123
- // @ts-ignore: decorator
2124
- @builtin
2125
- export declare function trunc_sat_f64x2_u_zero(a: v128): v128;
2126
-
2127
- // @ts-ignore: decorator
2128
- @builtin
2129
- export declare function extend_low_i16x8_s(a: v128): v128;
2130
-
2131
- // @ts-ignore: decorator
2132
- @builtin
2133
- export declare function extend_low_i16x8_u(a: v128): v128;
2134
-
2135
- // @ts-ignore: decorator
2136
- @builtin
2137
- export declare function extend_high_i16x8_s(a: v128): v128;
2138
-
2139
- // @ts-ignore: decorator
2140
- @builtin
2141
- export declare function extend_high_i16x8_u(a: v128): v128;
2142
-
2143
- // @ts-ignore: decorator
2144
- @builtin
2145
- export declare function extadd_pairwise_i16x8_s(a: v128): v128;
2146
-
2147
- // @ts-ignore: decorator
2148
- @builtin
2149
- export declare function extadd_pairwise_i16x8_u(a: v128): v128;
2150
-
2151
- // @ts-ignore: decorator
2152
- @builtin
2153
- export declare function extmul_low_i16x8_s(a: v128, b: v128): v128;
2154
-
2155
- // @ts-ignore: decorator
2156
- @builtin
2157
- export declare function extmul_low_i16x8_u(a: v128, b: v128): v128;
2158
-
2159
- // @ts-ignore: decorator
2160
- @builtin
2161
- export declare function extmul_high_i16x8_s(a: v128, b: v128): v128;
2162
-
2163
- // @ts-ignore: decorator
2164
- @builtin
2165
- export declare function extmul_high_i16x8_u(a: v128, b: v128): v128;
2166
-
2167
- // @ts-ignore: decorator
2168
- @builtin
2169
- export declare function shuffle(a: v128, b: v128, l0: u8, l1: u8, l2: u8, l3: u8): v128;
2170
-
2171
- // @ts-ignore: decorator
2172
- @builtin
2173
- export declare function relaxed_trunc_f32x4_s(a: v128): v128;
2174
-
2175
- // @ts-ignore: decorator
2176
- @builtin
2177
- export declare function relaxed_trunc_f32x4_u(a: v128): v128;
2178
-
2179
- // @ts-ignore: decorator
2180
- @builtin
2181
- export declare function relaxed_trunc_f64x2_s_zero(a: v128): v128;
2182
-
2183
- // @ts-ignore: decorator
2184
- @builtin
2185
- export declare function relaxed_trunc_f64x2_u_zero(a: v128): v128;
2186
-
2187
- // @ts-ignore: decorator
2188
- @builtin
2189
- export declare function relaxed_laneselect(a: v128, b: v128, m: v128): v128;
2190
-
2191
- // @ts-ignore: decorator
2192
- @builtin
2193
- export declare function relaxed_dot_i8x16_i7x16_add_s(a: v128, b: v128, c: v128): v128;
2194
- }
2195
-
2196
- // @ts-ignore: decorator
2197
- @builtin
2198
- export declare function i64x2(a: i64, b: i64): v128;
2199
-
2200
- export namespace i64x2 {
2201
-
2202
- // @ts-ignore: decorator
2203
- @builtin
2204
- export declare function splat(x: i64): v128;
2205
-
2206
- // @ts-ignore: decorator
2207
- @builtin
2208
- export declare function extract_lane(x: v128, idx: u8): i64;
2209
-
2210
- // @ts-ignore: decorator
2211
- @builtin
2212
- export declare function replace_lane(x: v128, idx: u8, value: i64): v128;
2213
-
2214
- // @ts-ignore: decorator
2215
- @builtin
2216
- export declare function add(a: v128, b: v128): v128;
2217
-
2218
- // @ts-ignore: decorator
2219
- @builtin
2220
- export declare function sub(a: v128, b: v128): v128;
2221
-
2222
- // @ts-ignore: decorator
2223
- @builtin
2224
- export declare function mul(a: v128, b: v128): v128;
2225
-
2226
- // @ts-ignore: decorator
2227
- @builtin
2228
- export declare function abs(a: v128): v128;
2229
-
2230
- // @ts-ignore: decorator
2231
- @builtin
2232
- export declare function neg(a: v128): v128;
2233
-
2234
- // @ts-ignore: decorator
2235
- @builtin
2236
- export declare function shl(a: v128, b: i32): v128;
2237
-
2238
- // @ts-ignore: decorator
2239
- @builtin
2240
- export declare function shr_s(a: v128, b: i32): v128;
2241
-
2242
- // @ts-ignore: decorator
2243
- @builtin
2244
- export declare function shr_u(a: v128, b: i32): v128;
2245
-
2246
- // @ts-ignore: decorator
2247
- @builtin
2248
- export declare function all_true(a: v128): bool;
2249
-
2250
- // @ts-ignore: decorator
2251
- @builtin
2252
- export declare function bitmask(a: v128): i32;
2253
-
2254
- // @ts-ignore: decorator
2255
- @builtin
2256
- export declare function eq(a: v128, b: v128): v128;
2257
-
2258
- // @ts-ignore: decorator
2259
- @builtin
2260
- export declare function ne(a: v128, b: v128): v128;
2261
-
2262
- // @ts-ignore: decorator
2263
- @builtin
2264
- export declare function lt_s(a: v128, b: v128): v128;
2265
-
2266
- // @ts-ignore: decorator
2267
- @builtin
2268
- export declare function le_s(a: v128, b: v128): v128;
2269
-
2270
- // @ts-ignore: decorator
2271
- @builtin
2272
- export declare function gt_s(a: v128, b: v128): v128;
2273
-
2274
- // @ts-ignore: decorator
2275
- @builtin
2276
- export declare function ge_s(a: v128, b: v128): v128;
2277
-
2278
- // @ts-ignore: decorator
2279
- @builtin
2280
- export declare function extend_low_i32x4_s(a: v128): v128;
2281
-
2282
- // @ts-ignore: decorator
2283
- @builtin
2284
- export declare function extend_low_i32x4_u(a: v128): v128;
2285
-
2286
- // @ts-ignore: decorator
2287
- @builtin
2288
- export declare function extend_high_i32x4_s(a: v128): v128;
2289
-
2290
- // @ts-ignore: decorator
2291
- @builtin
2292
- export declare function extend_high_i32x4_u(a: v128): v128;
2293
-
2294
- // @ts-ignore: decorator
2295
- @builtin
2296
- export declare function extmul_low_i32x4_s(a: v128, b: v128): v128;
2297
-
2298
- // @ts-ignore: decorator
2299
- @builtin
2300
- export declare function extmul_low_i32x4_u(a: v128, b: v128): v128;
2301
-
2302
- // @ts-ignore: decorator
2303
- @builtin
2304
- export declare function extmul_high_i32x4_s(a: v128, b: v128): v128;
2305
-
2306
- // @ts-ignore: decorator
2307
- @builtin
2308
- export declare function extmul_high_i32x4_u(a: v128, b: v128): v128;
2309
-
2310
- // @ts-ignore: decorator
2311
- @builtin
2312
- export declare function shuffle(a: v128, b: v128, l0: u8, l1: u8): v128;
2313
-
2314
- // @ts-ignore: decorator
2315
- @builtin
2316
- export declare function relaxed_laneselect(a: v128, b: v128, m: v128): v128;
2317
- }
2318
-
2319
- // @ts-ignore: decorator
2320
- @builtin
2321
- export declare function f32x4(a: f32, b: f32, c: f32, d: f32): v128;
2322
-
2323
- export namespace f32x4 {
2324
-
2325
- // @ts-ignore: decorator
2326
- @builtin
2327
- export declare function splat(x: f32): v128;
2328
-
2329
- // @ts-ignore: decorator
2330
- @builtin
2331
- export declare function extract_lane(x: v128, idx: u8): f32;
2332
-
2333
- // @ts-ignore: decorator
2334
- @builtin
2335
- export declare function replace_lane(x: v128, idx: u8, value: f32): v128;
2336
-
2337
- // @ts-ignore: decorator
2338
- @builtin
2339
- export declare function add(a: v128, b: v128): v128;
2340
-
2341
- // @ts-ignore: decorator
2342
- @builtin
2343
- export declare function sub(a: v128, b: v128): v128;
2344
-
2345
- // @ts-ignore: decorator
2346
- @builtin
2347
- export declare function mul(a: v128, b: v128): v128;
2348
-
2349
- // @ts-ignore: decorator
2350
- @builtin
2351
- export declare function div(a: v128, b: v128): v128;
2352
-
2353
- // @ts-ignore: decorator
2354
- @builtin
2355
- export declare function neg(a: v128): v128;
2356
-
2357
- // @ts-ignore: decorator
2358
- @builtin
2359
- export declare function min(a: v128, b: v128): v128;
2360
-
2361
- // @ts-ignore: decorator
2362
- @builtin
2363
- export declare function max(a: v128, b: v128): v128;
2364
-
2365
- // @ts-ignore: decorator
2366
- @builtin
2367
- export declare function pmin(a: v128, b: v128): v128;
2368
-
2369
- // @ts-ignore: decorator
2370
- @builtin
2371
- export declare function pmax(a: v128, b: v128): v128;
2372
-
2373
- // @ts-ignore: decorator
2374
- @builtin
2375
- export declare function abs(a: v128): v128;
2376
-
2377
- // @ts-ignore: decorator
2378
- @builtin
2379
- export declare function sqrt(a: v128): v128;
2380
-
2381
- // @ts-ignore: decorator
2382
- @builtin
2383
- export declare function ceil(a: v128): v128;
2384
-
2385
- // @ts-ignore: decorator
2386
- @builtin
2387
- export declare function floor(a: v128): v128;
2388
-
2389
- // @ts-ignore: decorator
2390
- @builtin
2391
- export declare function trunc(a: v128): v128;
2392
-
2393
- // @ts-ignore: decorator
2394
- @builtin
2395
- export declare function nearest(a: v128): v128;
2396
-
2397
- // @ts-ignore: decorator
2398
- @builtin
2399
- export declare function eq(a: v128, b: v128): v128;
2400
-
2401
- // @ts-ignore: decorator
2402
- @builtin
2403
- export declare function ne(a: v128, b: v128): v128;
2404
-
2405
- // @ts-ignore: decorator
2406
- @builtin
2407
- export declare function lt(a: v128, b: v128): v128;
2408
-
2409
- // @ts-ignore: decorator
2410
- @builtin
2411
- export declare function le(a: v128, b: v128): v128;
2412
-
2413
- // @ts-ignore: decorator
2414
- @builtin
2415
- export declare function gt(a: v128, b: v128): v128;
2416
-
2417
- // @ts-ignore: decorator
2418
- @builtin
2419
- export declare function ge(a: v128, b: v128): v128;
2420
-
2421
- // @ts-ignore: decorator
2422
- @builtin
2423
- export declare function convert_i32x4_s(a: v128): v128;
2424
-
2425
- // @ts-ignore: decorator
2426
- @builtin
2427
- export declare function convert_i32x4_u(a: v128): v128;
2428
-
2429
- // @ts-ignore: decorator
2430
- @builtin
2431
- export declare function demote_f64x2_zero(a: v128): v128;
2432
-
2433
- // @ts-ignore: decorator
2434
- @builtin
2435
- export declare function shuffle(a: v128, b: v128, l0: u8, l1: u8, l2: u8, l3: u8): v128;
2436
-
2437
- // @ts-ignore: decorator
2438
- @builtin
2439
- export declare function relaxed_madd(a: v128, b: v128, c: v128): v128;
2440
-
2441
- // @ts-ignore: decorator
2442
- @builtin
2443
- export declare function relaxed_nmadd(a: v128, b: v128, c: v128): v128;
2444
-
2445
- // @ts-ignore: decorator
2446
- @builtin
2447
- export declare function relaxed_min(a: v128, b: v128): v128;
2448
-
2449
- // @ts-ignore: decorator
2450
- @builtin
2451
- export declare function relaxed_max(a: v128, b: v128): v128;
2452
- }
2453
-
2454
- // @ts-ignore: decorator
2455
- @builtin
2456
- export declare function f64x2(a: f64, b: f64): v128;
2457
-
2458
- export namespace f64x2 {
2459
-
2460
- // @ts-ignore: decorator
2461
- @builtin
2462
- export declare function splat(x: f64): v128;
2463
-
2464
- // @ts-ignore: decorator
2465
- @builtin
2466
- export declare function extract_lane(x: v128, idx: u8): f64;
2467
-
2468
- // @ts-ignore: decorator
2469
- @builtin
2470
- export declare function replace_lane(x: v128, idx: u8, value: f64): v128;
2471
-
2472
- // @ts-ignore: decorator
2473
- @builtin
2474
- export declare function add(a: v128, b: v128): v128;
2475
-
2476
- // @ts-ignore: decorator
2477
- @builtin
2478
- export declare function sub(a: v128, b: v128): v128;
2479
-
2480
- // @ts-ignore: decorator
2481
- @builtin
2482
- export declare function mul(a: v128, b: v128): v128;
2483
-
2484
- // @ts-ignore: decorator
2485
- @builtin
2486
- export declare function div(a: v128, b: v128): v128;
2487
-
2488
- // @ts-ignore: decorator
2489
- @builtin
2490
- export declare function neg(a: v128): v128;
2491
-
2492
- // @ts-ignore: decorator
2493
- @builtin
2494
- export declare function min(a: v128, b: v128): v128;
2495
-
2496
- // @ts-ignore: decorator
2497
- @builtin
2498
- export declare function max(a: v128, b: v128): v128;
2499
-
2500
- // @ts-ignore: decorator
2501
- @builtin
2502
- export declare function pmin(a: v128, b: v128): v128;
2503
-
2504
- // @ts-ignore: decorator
2505
- @builtin
2506
- export declare function pmax(a: v128, b: v128): v128;
2507
-
2508
- // @ts-ignore: decorator
2509
- @builtin
2510
- export declare function abs(a: v128): v128;
2511
-
2512
- // @ts-ignore: decorator
2513
- @builtin
2514
- export declare function sqrt(a: v128): v128;
2515
-
2516
- // @ts-ignore: decorator
2517
- @builtin
2518
- export declare function ceil(a: v128): v128;
2519
-
2520
- // @ts-ignore: decorator
2521
- @builtin
2522
- export declare function floor(a: v128): v128;
2523
-
2524
- // @ts-ignore: decorator
2525
- @builtin
2526
- export declare function trunc(a: v128): v128;
2527
-
2528
- // @ts-ignore: decorator
2529
- @builtin
2530
- export declare function nearest(a: v128): v128;
2531
-
2532
- // @ts-ignore: decorator
2533
- @builtin
2534
- export declare function eq(a: v128, b: v128): v128;
2535
-
2536
- // @ts-ignore: decorator
2537
- @builtin
2538
- export declare function ne(a: v128, b: v128): v128;
2539
-
2540
- // @ts-ignore: decorator
2541
- @builtin
2542
- export declare function lt(a: v128, b: v128): v128;
2543
-
2544
- // @ts-ignore: decorator
2545
- @builtin
2546
- export declare function le(a: v128, b: v128): v128;
2547
-
2548
- // @ts-ignore: decorator
2549
- @builtin
2550
- export declare function gt(a: v128, b: v128): v128;
2551
-
2552
- // @ts-ignore: decorator
2553
- @builtin
2554
- export declare function ge(a: v128, b: v128): v128;
2555
-
2556
- // @ts-ignore: decorator
2557
- @builtin
2558
- export declare function convert_low_i32x4_s(a: v128): v128;
2559
-
2560
- // @ts-ignore: decorator
2561
- @builtin
2562
- export declare function convert_low_i32x4_u(a: v128): v128;
2563
-
2564
- // @ts-ignore: decorator
2565
- @builtin
2566
- export declare function promote_low_f32x4(a: v128): v128;
2567
-
2568
- // @ts-ignore: decorator
2569
- @builtin
2570
- export declare function shuffle(a: v128, b: v128, l0: u8, l1: u8): v128;
2571
-
2572
- // @ts-ignore: decorator
2573
- @builtin
2574
- export declare function relaxed_madd(a: v128, b: v128, c: v128): v128;
2575
-
2576
- // @ts-ignore: decorator
2577
- @builtin
2578
- export declare function relaxed_nmadd(a: v128, b: v128, c: v128): v128;
2579
-
2580
- // @ts-ignore: decorator
2581
- @builtin
2582
- export declare function relaxed_min(a: v128, b: v128): v128;
2583
-
2584
- // @ts-ignore: decorator
2585
- @builtin
2586
- export declare function relaxed_max(a: v128, b: v128): v128;
2587
- }
2588
-
2589
- @final
2590
- export abstract class i31 { // FIXME: usage of 'new' requires a class :(
2591
-
2592
- // @ts-ignore: decorator
2593
- @builtin
2594
- static new(value: i32): i31ref { return changetype<i31ref>(unreachable()); }
2595
-
2596
- // @ts-ignore: decorator
2597
- @builtin
2598
- static get(i31expr: i31ref): i32 { return unreachable(); }
2599
- }
2600
-
2601
- /* eslint-disable @typescript-eslint/no-unused-vars */
2602
-
2603
- // @ts-ignore: decorator
2604
- @external("env", "abort")
2605
- @external.js("throw Error(`${message} in ${fileName}:${lineNumber}:${columnNumber}`);")
2606
- declare function __abort_impl(
2607
- message?: string | null,
2608
- fileName?: string | null,
2609
- lineNumber?: u32,
2610
- columnNumber?: u32
2611
- ): void;
2612
-
2613
- // When exception-handling is enabled, abort throws an Error that can be caught.
2614
- // When disabled, it calls the external abort function (host implementation).
2615
- function abort(
2616
- message: string | null = null,
2617
- fileName: string | null = null,
2618
- lineNumber: u32 = 0,
2619
- columnNumber: u32 = 0
2620
- ): void {
2621
- if (ASC_FEATURE_EXCEPTION_HANDLING) {
2622
- let fullMessage = message ? message : "abort";
2623
- if (fileName) {
2624
- fullMessage += " in " + fileName + ":" + lineNumber.toString() + ":" + columnNumber.toString();
2625
- }
2626
- throw new Error(fullMessage);
2627
- } else {
2628
- __abort_impl(message, fileName, lineNumber, columnNumber);
2629
- }
2630
- }
2631
-
2632
- // @ts-ignore: decorator
2633
- @external("env", "trace")
2634
- @external.js("console.log(message, ...[a0, a1, a2, a3, a4].slice(0, n));")
2635
- declare function trace(
2636
- message: string,
2637
- n?: i32,
2638
- a0?: f64,
2639
- a1?: f64,
2640
- a2?: f64,
2641
- a3?: f64,
2642
- a4?: f64
2643
- ): void;
2644
-
2645
- // @ts-ignore: decorator
2646
- @external("env", "seed")
2647
- @external.js("return Date.now() * Math.random();")
2648
- declare function seed(): f64;
2649
-
2650
- /* eslint-enable @typescript-eslint/no-unused-vars */
1
+ import { strtol, strtod, strtob } from "./util/string";
2
+
3
+ type auto = i32;
4
+
5
+ // @ts-ignore: decorator
6
+ @builtin
7
+ export declare function isBoolean<T>(value?: T): bool;
8
+
9
+ // @ts-ignore: decorator
10
+ @builtin
11
+ export declare function isInteger<T>(value?: T): bool;
12
+
13
+ // @ts-ignore: decorator
14
+ @builtin
15
+ export declare function isSigned<T>(value?: T): bool;
16
+
17
+ // @ts-ignore: decorator
18
+ @builtin
19
+ export declare function isFloat<T>(value?: T): bool;
20
+
21
+ // @ts-ignore: decorator
22
+ @builtin
23
+ export declare function isVector<T>(value?: T): bool;
24
+
25
+ // @ts-ignore: decorator
26
+ @builtin
27
+ export declare function isReference<T>(value?: T): bool;
28
+
29
+ // @ts-ignore: decorator
30
+ @builtin
31
+ export declare function isString<T>(value?: T): bool;
32
+
33
+ // @ts-ignore: decorator
34
+ @builtin
35
+ export declare function isArray<T>(value?: T): bool;
36
+
37
+ // @ts-ignore: decorator
38
+ @builtin
39
+ export declare function isArrayLike<T>(value?: T): bool;
40
+
41
+ // @ts-ignore: decorator
42
+ @builtin
43
+ export declare function isFunction<T>(value?: T): bool;
44
+
45
+ // @ts-ignore: decorator
46
+ @builtin
47
+ export declare function isNullable<T>(value?: T): bool;
48
+
49
+ // @ts-ignore: decorator
50
+ @builtin
51
+ export declare function isDefined(expression: auto): bool;
52
+
53
+ // @ts-ignore: decorator
54
+ @builtin
55
+ export declare function isConstant(expression: auto): bool;
56
+
57
+ // @ts-ignore: decorator
58
+ @builtin
59
+ export declare function isManaged<T>(value?: T): bool;
60
+
61
+ // @ts-ignore: decorator
62
+ @builtin
63
+ export declare function isVoid<T>(): bool;
64
+
65
+ // @ts-ignore
66
+ @builtin
67
+ export declare function lengthof<T>(func?: T): i32;
68
+
69
+ // @ts-ignore: decorator
70
+ @builtin
71
+ export declare function clz<T>(value: T): T;
72
+
73
+ // @ts-ignore: decorator
74
+ @builtin
75
+ export declare function ctz<T>(value: T): T;
76
+
77
+ // @ts-ignore: decorator
78
+ @builtin
79
+ export declare function popcnt<T>(value: T): T;
80
+
81
+ // @ts-ignore: decorator
82
+ @builtin
83
+ export declare function rotl<T>(value: T, shift: T): T;
84
+
85
+ // @ts-ignore: decorator
86
+ @builtin
87
+ export declare function rotr<T>(value: T, shift: T): T;
88
+
89
+ // @ts-ignore: decorator
90
+ @builtin
91
+ export declare function abs<T>(value: T): T;
92
+
93
+ // @ts-ignore: decorator
94
+ @builtin
95
+ export declare function max<T>(left: T, right: T): T;
96
+
97
+ // @ts-ignore: decorator
98
+ @builtin
99
+ export declare function min<T>(left: T, right: T): T;
100
+
101
+ // @ts-ignore: decorator
102
+ @builtin
103
+ export declare function ceil<T>(value: T): T;
104
+
105
+ // @ts-ignore: decorator
106
+ @builtin
107
+ export declare function floor<T>(value: T): T;
108
+
109
+ // @ts-ignore: decorator
110
+ @builtin
111
+ export declare function copysign<T>(left: T, right: T): T;
112
+
113
+ // @ts-ignore: decorator
114
+ @builtin
115
+ export declare function nearest<T>(value: T): T;
116
+
117
+ // @ts-ignore: decorator
118
+ @builtin
119
+ export declare function reinterpret<T>(value: number): T;
120
+
121
+ // @ts-ignore: decorator
122
+ @builtin
123
+ export declare function sqrt<T>(value: T): T;
124
+
125
+ // @ts-ignore: decorator
126
+ @builtin
127
+ export declare function trunc<T>(value: T): T;
128
+
129
+ // @ts-ignore: decorator
130
+ @builtin
131
+ export declare function add<T>(left: T, right: T): T;
132
+
133
+ // @ts-ignore: decorator
134
+ @builtin
135
+ export declare function sub<T>(left: T, right: T): T;
136
+
137
+ // @ts-ignore: decorator
138
+ @builtin
139
+ export declare function mul<T>(left: T, right: T): T;
140
+
141
+ // @ts-ignore: decorator
142
+ @builtin
143
+ export declare function div<T>(left: T, right: T): T;
144
+
145
+ // @ts-ignore: decorator
146
+ @builtin
147
+ export declare function eq<T>(left: T, right: T): i32;
148
+
149
+ // @ts-ignore: decorator
150
+ @builtin
151
+ export declare function ne<T>(left: T, right: T): i32;
152
+
153
+ // @ts-ignore: decorator
154
+ @builtin
155
+ export declare function rem<T>(left: T, right: T): T;
156
+
157
+ // @ts-ignore: decorator
158
+ @unsafe @builtin
159
+ export declare function load<T>(ptr: usize, immOffset?: usize, immAlign?: usize): T;
160
+
161
+ // @ts-ignore: decorator
162
+ @unsafe @builtin
163
+ export declare function store<T>(ptr: usize, value: auto, immOffset?: usize, immAlign?: usize): void;
164
+
165
+ // @ts-ignore: decorator
166
+ @builtin
167
+ export declare function sizeof<T>(): usize; // | u32 / u64
168
+
169
+ // @ts-ignore: decorator
170
+ @builtin
171
+ export declare function alignof<T>(): usize; // | u32 / u64
172
+
173
+ // @ts-ignore: decorator
174
+ @builtin
175
+ export declare function offsetof<T>(fieldName?: string): usize; // | u32 / u64
176
+
177
+ // @ts-ignore: decorator
178
+ @builtin
179
+ export declare function idof<T>(): u32;
180
+
181
+ // @ts-ignore
182
+ @builtin
183
+ export declare function nameof<T>(): string;
184
+
185
+ // @ts-ignore: decorator
186
+ @builtin
187
+ export declare function select<T>(ifTrue: T, ifFalse: T, condition: bool): T;
188
+
189
+ // @ts-ignore: decorator
190
+ @unsafe @builtin
191
+ export declare function unreachable(): auto;
192
+
193
+ // @ts-ignore: decorator
194
+ @builtin
195
+ export declare function changetype<T>(value: auto): T;
196
+
197
+ // @ts-ignore: decorator
198
+ @builtin
199
+ export declare function assert<T>(isTrueish: T, message?: string): T;
200
+
201
+ // @ts-ignore: decorator
202
+ @unsafe @builtin
203
+ export declare function unchecked<T>(expr: T): T;
204
+
205
+ export namespace inline {
206
+ // @ts-ignore: decorator
207
+ @unsafe @builtin
208
+ export declare function always<T>(expr: T): T;
209
+ }
210
+
211
+ // @ts-ignore: decorator
212
+ @unsafe @builtin
213
+ export declare function call_indirect<T>(index: u32, ...args: auto[]): T;
214
+
215
+ // @ts-ignore: decorator
216
+ @builtin
217
+ export declare function instantiate<T>(...args: auto[]): T;
218
+
219
+ export namespace atomic {
220
+ // @ts-ignore: decorator
221
+ @unsafe @builtin
222
+ export declare function load<T>(ptr: usize, immOffset?: usize): T;
223
+
224
+ // @ts-ignore: decorator
225
+ @unsafe @builtin
226
+ export declare function store<T>(ptr: usize, value: T, immOffset?: usize): void;
227
+
228
+ // @ts-ignore: decorator
229
+ @builtin
230
+ export declare function add<T>(ptr: usize, value: T, immOffset?: usize): T;
231
+
232
+ // @ts-ignore: decorator
233
+ @builtin
234
+ export declare function sub<T>(ptr: usize, value: T, immOffset?: usize): T;
235
+
236
+ // @ts-ignore: decorator
237
+ @builtin
238
+ export declare function and<T>(ptr: usize, value: T, immOffset?: usize): T;
239
+
240
+ // @ts-ignore: decorator
241
+ @builtin
242
+ export declare function or<T>(ptr: usize, value: T, immOffset?: usize): T;
243
+
244
+ // @ts-ignore: decorator
245
+ @builtin
246
+ export declare function xor<T>(ptr: usize, value: T, immOffset?: usize): T;
247
+
248
+ // @ts-ignore: decorator
249
+ @unsafe @builtin
250
+ export declare function xchg<T>(ptr: usize, value: T, immOffset?: usize): T;
251
+
252
+ // @ts-ignore: decorator
253
+ @unsafe @builtin
254
+ export declare function cmpxchg<T>(ptr: usize, expected: T, replacement: T, immOffset?: usize): T;
255
+
256
+ // @ts-ignore: decorator
257
+ @builtin
258
+ export declare function wait<T>(ptr: usize, expected: T, timeout: i64): AtomicWaitResult;
259
+
260
+ // @ts-ignore: decorator
261
+ @builtin
262
+ export declare function notify(ptr: usize, count: i32): i32;
263
+
264
+ // @ts-ignore: decorator
265
+ @builtin
266
+ export declare function fence(): void;
267
+ }
268
+
269
+ // @ts-ignore: decorator
270
+ @lazy
271
+ export const enum AtomicWaitResult {
272
+ OK = 0,
273
+ NOT_EQUAL = 1,
274
+ TIMED_OUT = 2
275
+ }
276
+
277
+ // @ts-ignore: decorator
278
+ @builtin
279
+ export declare function i8(value: auto): i8;
280
+
281
+ export namespace i8 {
282
+
283
+ // @ts-ignore: decorator
284
+ @lazy
285
+ export const MIN_VALUE: i8 = -128;
286
+
287
+ // @ts-ignore: decorator
288
+ @lazy
289
+ export const MAX_VALUE: i8 = 127;
290
+
291
+ // @ts-ignore: decorator
292
+ @inline
293
+ export function parse(value: string, radix: i32 = 0): i8 {
294
+ return <i8>strtol<i32>(value, radix);
295
+ }
296
+ }
297
+
298
+ // @ts-ignore: decorator
299
+ @builtin
300
+ export declare function i16(value: auto): i16;
301
+
302
+ export namespace i16 {
303
+
304
+ // @ts-ignore: decorator
305
+ @lazy
306
+ export const MIN_VALUE: i16 = -32768;
307
+
308
+ // @ts-ignore: decorator
309
+ @lazy
310
+ export const MAX_VALUE: i16 = 32767;
311
+
312
+ // @ts-ignore: decorator
313
+ @inline
314
+ export function parse(value: string, radix: i32 = 0): i16 {
315
+ return <i16>strtol<i32>(value, radix);
316
+ }
317
+ }
318
+
319
+ // @ts-ignore: decorator
320
+ @builtin
321
+ export declare function i32(value: auto): i32;
322
+
323
+ export namespace i32 {
324
+
325
+ // @ts-ignore: decorator
326
+ @lazy
327
+ export const MIN_VALUE: i32 = -2147483648;
328
+
329
+ // @ts-ignore: decorator
330
+ @lazy
331
+ export const MAX_VALUE: i32 = 2147483647;
332
+
333
+ // @ts-ignore: decorator
334
+ @inline
335
+ export function parse(value: string, radix: i32 = 0): i32 {
336
+ return strtol<i32>(value, radix);
337
+ }
338
+
339
+ // @ts-ignore: decorator
340
+ @builtin
341
+ export declare function clz(value: i32): i32;
342
+
343
+ // @ts-ignore: decorator
344
+ @builtin
345
+ export declare function ctz(value: i32): i32;
346
+
347
+ // @ts-ignore: decorator
348
+ @builtin
349
+ export declare function popcnt(value: i32): i32;
350
+
351
+ // @ts-ignore: decorator
352
+ @builtin
353
+ export declare function add(left: i32, right:i32): i32;
354
+
355
+ // @ts-ignore: decorator
356
+ @builtin
357
+ export declare function sub(left: i32, right:i32): i32;
358
+
359
+ // @ts-ignore: decorator
360
+ @builtin
361
+ export declare function mul(left: i32, right:i32): i32;
362
+
363
+ // @ts-ignore: decorator
364
+ @builtin
365
+ export declare function div_s(left: i32, right:i32): i32;
366
+
367
+ // @ts-ignore: decorator
368
+ @builtin
369
+ export declare function div_u(left: i32, right:i32): i32;
370
+
371
+ // @ts-ignore: decorator
372
+ @builtin
373
+ export declare function rotl(value: i32, shift: i32): i32;
374
+
375
+ // @ts-ignore: decorator
376
+ @builtin
377
+ export declare function rotr(value: i32, shift: i32): i32;
378
+
379
+ // @ts-ignore: decorator
380
+ @builtin
381
+ export declare function eq(left: i32, right:i32): i32;
382
+
383
+ // @ts-ignore: decorator
384
+ @builtin
385
+ export declare function ne(left: i32, right:i32): i32;
386
+
387
+ // @ts-ignore: decorator
388
+ @builtin
389
+ export declare function rem_s(left: i32, right: i32): i32;
390
+
391
+ // @ts-ignore: decorator
392
+ @builtin
393
+ export declare function rem_u(left: u32, right: u32): u32;
394
+
395
+ // @ts-ignore: decorator
396
+ @builtin
397
+ export declare function reinterpret_f32(value: f32): i32;
398
+
399
+ // @ts-ignore: decorator
400
+ @builtin
401
+ export declare function load8_s(ptr: usize, immOffset?: usize, immAlign?: usize): i32;
402
+
403
+ // @ts-ignore: decorator
404
+ @builtin
405
+ export declare function load8_u(ptr: usize, immOffset?: usize, immAlign?: usize): i32;
406
+
407
+ // @ts-ignore: decorator
408
+ @builtin
409
+ export declare function load16_s(ptr: usize, immOffset?: usize, immAlign?: usize): i32;
410
+
411
+ // @ts-ignore: decorator
412
+ @builtin
413
+ export declare function load16_u(ptr: usize, immOffset?: usize, immAlign?: usize): i32;
414
+
415
+ // @ts-ignore: decorator
416
+ @builtin
417
+ export declare function load(ptr: usize, immOffset?: usize, immAlign?: usize): i32;
418
+
419
+ // @ts-ignore: decorator
420
+ @unsafe @builtin
421
+ export declare function store8(ptr: usize, value: i32, immOffset?: usize, immAlign?: usize): void;
422
+
423
+ // @ts-ignore: decorator
424
+ @unsafe @builtin
425
+ export declare function store16(ptr: usize, value: i32, immOffset?: usize, immAlign?: usize): void;
426
+
427
+ // @ts-ignore: decorator
428
+ @unsafe @builtin
429
+ export declare function store(ptr: usize, value: i32, immOffset?: usize, immAlign?: usize): void;
430
+
431
+ export namespace atomic {
432
+
433
+ // @ts-ignore: decorator
434
+ @builtin
435
+ export declare function load8_u(ptr: usize, immOffset?: usize): i32;
436
+
437
+ // @ts-ignore: decorator
438
+ @builtin
439
+ export declare function load16_u(ptr: usize, immOffset?: usize): i32;
440
+
441
+ // @ts-ignore: decorator
442
+ @builtin
443
+ export declare function load(ptr: usize, immOffset?: usize): i32;
444
+
445
+ // @ts-ignore: decorator
446
+ @unsafe @builtin
447
+ export declare function store8(ptr: usize, value: i32, immOffset?: usize): void;
448
+
449
+ // @ts-ignore: decorator
450
+ @unsafe @builtin
451
+ export declare function store16(ptr: usize, value: i32, immOffset?: usize): void;
452
+
453
+ // @ts-ignore: decorator
454
+ @unsafe @builtin
455
+ export declare function store(ptr: usize, value: i32, immOffset?: usize): void;
456
+
457
+ export namespace rmw8 {
458
+
459
+ // @ts-ignore: decorator
460
+ @builtin
461
+ export declare function add_u(ptr: usize, value: i32, immOffset?: usize): i32;
462
+
463
+ // @ts-ignore: decorator
464
+ @builtin
465
+ export declare function sub_u(ptr: usize, value: i32, immOffset?: usize): i32;
466
+
467
+ // @ts-ignore: decorator
468
+ @builtin
469
+ export declare function and_u(ptr: usize, value: i32, immOffset?: usize): i32;
470
+
471
+ // @ts-ignore: decorator
472
+ @builtin
473
+ export declare function or_u(ptr: usize, value: i32, immOffset?: usize): i32;
474
+
475
+ // @ts-ignore: decorator
476
+ @builtin
477
+ export declare function xor_u(ptr: usize, value: i32, immOffset?: usize): i32;
478
+
479
+ // @ts-ignore: decorator
480
+ @unsafe @builtin
481
+ export declare function xchg_u(ptr: usize, value: i32, immOffset?: usize): i32;
482
+
483
+ // @ts-ignore: decorator
484
+ @unsafe @builtin
485
+ export declare function cmpxchg_u(ptr: usize, expected: i32, replacement: i32, immOffset?: usize): i32;
486
+ }
487
+
488
+ export namespace rmw16 {
489
+
490
+ // @ts-ignore: decorator
491
+ @builtin
492
+ export declare function add_u(ptr: usize, value: i32, immOffset?: usize): i32;
493
+
494
+ // @ts-ignore: decorator
495
+ @builtin
496
+ export declare function sub_u(ptr: usize, value: i32, immOffset?: usize): i32;
497
+
498
+ // @ts-ignore: decorator
499
+ @builtin
500
+ export declare function and_u(ptr: usize, value: i32, immOffset?: usize): i32;
501
+
502
+ // @ts-ignore: decorator
503
+ @builtin
504
+ export declare function or_u(ptr: usize, value: i32, immOffset?: usize): i32;
505
+
506
+ // @ts-ignore: decorator
507
+ @builtin
508
+ export declare function xor_u(ptr: usize, value: i32, immOffset?: usize): i32;
509
+
510
+ // @ts-ignore: decorator
511
+ @unsafe @builtin
512
+ export declare function xchg_u(ptr: usize, value: i32, immOffset?: usize): i32;
513
+
514
+ // @ts-ignore: decorator
515
+ @unsafe @builtin
516
+ export declare function cmpxchg_u(ptr: usize, expected: i32, replacement: i32, immOffset?: usize): i32;
517
+ }
518
+
519
+ export namespace rmw {
520
+
521
+ // @ts-ignore: decorator
522
+ @builtin
523
+ export declare function add(ptr: usize, value: i32, immOffset?: usize): i32;
524
+
525
+ // @ts-ignore: decorator
526
+ @builtin
527
+ export declare function sub(ptr: usize, value: i32, immOffset?: usize): i32;
528
+
529
+ // @ts-ignore: decorator
530
+ @builtin
531
+ export declare function and(ptr: usize, value: i32, immOffset?: usize): i32;
532
+
533
+ // @ts-ignore: decorator
534
+ @builtin
535
+ export declare function or(ptr: usize, value: i32, immOffset?: usize): i32;
536
+
537
+ // @ts-ignore: decorator
538
+ @builtin
539
+ export declare function xor(ptr: usize, value: i32, immOffset?: usize): i32;
540
+
541
+ // @ts-ignore: decorator
542
+ @unsafe @builtin
543
+ export declare function xchg(ptr: usize, value: i32, immOffset?: usize): i32;
544
+
545
+ // @ts-ignore: decorator
546
+ @unsafe @builtin
547
+ export declare function cmpxchg(ptr: usize, expected: i32, replacement: i32, immOffset?: usize): i32;
548
+ }
549
+ }
550
+ }
551
+
552
+ // @ts-ignore: decorator
553
+ @builtin
554
+ export declare function i64(value: auto): i64;
555
+
556
+ export namespace i64 {
557
+
558
+ // @ts-ignore: decorator
559
+ @lazy
560
+ export const MIN_VALUE: i64 = -9223372036854775808;
561
+
562
+ // @ts-ignore: decorator
563
+ @lazy
564
+ export const MAX_VALUE: i64 = 9223372036854775807;
565
+
566
+ // @ts-ignore: decorator
567
+ @inline
568
+ export function parse(value: string, radix: i32 = 0): i64 {
569
+ return strtol<i64>(value, radix);
570
+ }
571
+
572
+ // @ts-ignore: decorator
573
+ @builtin
574
+ export declare function clz(value: i64): i64;
575
+
576
+ // @ts-ignore: decorator
577
+ @builtin
578
+ export declare function ctz(value: i64): i64;
579
+
580
+ // @ts-ignore: decorator
581
+ @builtin
582
+ export declare function add(left: i64, right:i64): i64;
583
+
584
+ // @ts-ignore: decorator
585
+ @builtin
586
+ export declare function sub(left: i64, right:i64): i64;
587
+
588
+ // @ts-ignore: decorator
589
+ @builtin
590
+ export declare function mul(left: i64, right:i64): i64;
591
+
592
+ // @ts-ignore: decorator
593
+ @builtin
594
+ export declare function div_s(left: i64, right:i64): i64;
595
+
596
+ // @ts-ignore: decorator
597
+ @builtin
598
+ export declare function div_u(left: i64, right:i64): i64;
599
+
600
+ // @ts-ignore: decorator
601
+ @builtin
602
+ export declare function load8_s(ptr: usize, immOffset?: usize, immAlign?: usize): i64;
603
+
604
+ // @ts-ignore: decorator
605
+ @builtin
606
+ export declare function load8_u(ptr: usize, immOffset?: usize, immAlign?: usize): i64;
607
+
608
+ // @ts-ignore: decorator
609
+ @builtin
610
+ export declare function load16_s(ptr: usize, immOffset?: usize, immAlign?: usize): i64;
611
+
612
+ // @ts-ignore: decorator
613
+ @builtin
614
+ export declare function load16_u(ptr: usize, immOffset?: usize, immAlign?: usize): i64;
615
+
616
+ // @ts-ignore: decorator
617
+ @builtin
618
+ export declare function load32_s(ptr: usize, immOffset?: usize, immAlign?: usize): i64;
619
+
620
+ // @ts-ignore: decorator
621
+ @builtin
622
+ export declare function load32_u(ptr: usize, immOffset?: usize, immAlign?: usize): i64;
623
+
624
+ // @ts-ignore: decorator
625
+ @builtin
626
+ export declare function load(ptr: usize, immOffset?: usize): i64;
627
+
628
+ // @ts-ignore: decorator
629
+ @builtin
630
+ export declare function popcnt(value: i64): i64;
631
+
632
+ // @ts-ignore: decorator
633
+ @builtin
634
+ export declare function rotl(value: i64, shift: i64): i64;
635
+
636
+ // @ts-ignore: decorator
637
+ @builtin
638
+ export declare function rotr(value: i64, shift: i64): i64;
639
+
640
+ // @ts-ignore: decorator
641
+ @builtin
642
+ export declare function eq(left: i64, right:i64): i32;
643
+
644
+ // @ts-ignore: decorator
645
+ @builtin
646
+ export declare function ne(left: i64, right:i64): i32;
647
+
648
+ // @ts-ignore: decorator
649
+ @builtin
650
+ export declare function rem_s(left: i64, right: i64): i64;
651
+
652
+ // @ts-ignore: decorator
653
+ @builtin
654
+ export declare function rem_u(left: u64, right: u64): u64;
655
+
656
+ // @ts-ignore: decorator
657
+ @builtin
658
+ export declare function reinterpret_f64(value: f64): i64;
659
+
660
+ // @ts-ignore: decorator
661
+ @unsafe @builtin
662
+ export declare function store8(ptr: usize, value: i64, immOffset?: usize, immAlign?: usize): void;
663
+
664
+ // @ts-ignore: decorator
665
+ @unsafe @builtin
666
+ export declare function store16(ptr: usize, value: i64, immOffset?: usize, immAlign?: usize): void;
667
+
668
+ // @ts-ignore: decorator
669
+ @unsafe @builtin
670
+ export declare function store32(ptr: usize, value: i64, immOffset?: usize, immAlign?: usize): void;
671
+
672
+ // @ts-ignore: decorator
673
+ @unsafe @builtin
674
+ export declare function store(ptr: usize, value: i64, immOffset?: usize, immAlign?: usize): void;
675
+
676
+ export namespace atomic {
677
+
678
+ // @ts-ignore: decorator
679
+ @builtin
680
+ export declare function load8_u(ptr: usize, immOffset?: usize): i64;
681
+
682
+ // @ts-ignore: decorator
683
+ @builtin
684
+ export declare function load16_u(ptr: usize, immOffset?: usize): i64;
685
+
686
+ // @ts-ignore: decorator
687
+ @builtin
688
+ export declare function load32_u(ptr: usize, immOffset?: usize): i64;
689
+
690
+ // @ts-ignore: decorator
691
+ @builtin
692
+ export declare function load(ptr: usize, immOffset?: usize): i64;
693
+
694
+ // @ts-ignore: decorator
695
+ @unsafe @builtin
696
+ export declare function store8(ptr: usize, value: i64, immOffset?: usize): void;
697
+
698
+ // @ts-ignore: decorator
699
+ @unsafe @builtin
700
+ export declare function store16(ptr: usize, value: i64, immOffset?: usize): void;
701
+
702
+ // @ts-ignore: decorator
703
+ @unsafe @builtin
704
+ export declare function store32(ptr: usize, value: i64, immOffset?: usize): void;
705
+
706
+ // @ts-ignore: decorator
707
+ @unsafe @builtin
708
+ export declare function store(ptr: usize, value: i64, immOffset?: usize): void;
709
+
710
+ export namespace rmw8 {
711
+
712
+ // @ts-ignore: decorator
713
+ @builtin
714
+ export declare function add_u(ptr: usize, value: i64, immOffset?: usize): i64;
715
+
716
+ // @ts-ignore: decorator
717
+ @builtin
718
+ export declare function sub_u(ptr: usize, value: i64, immOffset?: usize): i64;
719
+
720
+ // @ts-ignore: decorator
721
+ @builtin
722
+ export declare function and_u(ptr: usize, value: i64, immOffset?: usize): i64;
723
+
724
+ // @ts-ignore: decorator
725
+ @builtin
726
+ export declare function or_u(ptr: usize, value: i64, immOffset?: usize): i64;
727
+
728
+ // @ts-ignore: decorator
729
+ @builtin
730
+ export declare function xor_u(ptr: usize, value: i64, immOffset?: usize): i64;
731
+
732
+ // @ts-ignore: decorator
733
+ @unsafe @builtin
734
+ export declare function xchg_u(ptr: usize, value: i64, immOffset?: usize): i64;
735
+
736
+ // @ts-ignore: decorator
737
+ @unsafe @builtin
738
+ export declare function cmpxchg_u(ptr: usize, expected: i64, replacement: i64, immOffset?: usize): i64;
739
+ }
740
+
741
+ export namespace rmw16 {
742
+
743
+ // @ts-ignore: decorator
744
+ @builtin
745
+ export declare function add_u(ptr: usize, value: i64, immOffset?: usize): i64;
746
+
747
+ // @ts-ignore: decorator
748
+ @builtin
749
+ export declare function sub_u(ptr: usize, value: i64, immOffset?: usize): i64;
750
+
751
+ // @ts-ignore: decorator
752
+ @builtin
753
+ export declare function and_u(ptr: usize, value: i64, immOffset?: usize): i64;
754
+
755
+ // @ts-ignore: decorator
756
+ @builtin
757
+ export declare function or_u(ptr: usize, value: i64, immOffset?: usize): i64;
758
+
759
+ // @ts-ignore: decorator
760
+ @builtin
761
+ export declare function xor_u(ptr: usize, value: i64, immOffset?: usize): i64;
762
+
763
+ // @ts-ignore: decorator
764
+ @unsafe @builtin
765
+ export declare function xchg_u(ptr: usize, value: i64, immOffset?: usize): i64;
766
+
767
+ // @ts-ignore: decorator
768
+ @unsafe @builtin
769
+ export declare function cmpxchg_u(ptr: usize, expected: i64, replacement: i64, immOffset?: usize): i64;
770
+ }
771
+
772
+ export namespace rmw32 {
773
+
774
+ // @ts-ignore: decorator
775
+ @builtin
776
+ export declare function add_u(ptr: usize, value: i64, immOffset?: usize): i64;
777
+
778
+ // @ts-ignore: decorator
779
+ @builtin
780
+ export declare function sub_u(ptr: usize, value: i64, immOffset?: usize): i64;
781
+
782
+ // @ts-ignore: decorator
783
+ @builtin
784
+ export declare function and_u(ptr: usize, value: i64, immOffset?: usize): i64;
785
+
786
+ // @ts-ignore: decorator
787
+ @builtin
788
+ export declare function or_u(ptr: usize, value: i64, immOffset?: usize): i64;
789
+
790
+ // @ts-ignore: decorator
791
+ @builtin
792
+ export declare function xor_u(ptr: usize, value: i64, immOffset?: usize): i64;
793
+
794
+ // @ts-ignore: decorator
795
+ @unsafe @builtin
796
+ export declare function xchg_u(ptr: usize, value: i64, immOffset?: usize): i64;
797
+
798
+ // @ts-ignore: decorator
799
+ @unsafe @builtin
800
+ export declare function cmpxchg_u(ptr: usize, expected: i64, replacement: i64, immOffset?: usize): i64;
801
+ }
802
+
803
+ export namespace rmw {
804
+
805
+ // @ts-ignore: decorator
806
+ @builtin
807
+ export declare function add(ptr: usize, value: i64, immOffset?: usize): i64;
808
+
809
+ // @ts-ignore: decorator
810
+ @builtin
811
+ export declare function sub(ptr: usize, value: i64, immOffset?: usize): i64;
812
+
813
+ // @ts-ignore: decorator
814
+ @builtin
815
+ export declare function and(ptr: usize, value: i64, immOffset?: usize): i64;
816
+
817
+ // @ts-ignore: decorator
818
+ @builtin
819
+ export declare function or(ptr: usize, value: i64, immOffset?: usize): i64;
820
+
821
+ // @ts-ignore: decorator
822
+ @builtin
823
+ export declare function xor(ptr: usize, value: i64, immOffset?: usize): i64;
824
+
825
+ // @ts-ignore: decorator
826
+ @unsafe @builtin
827
+ export declare function xchg(ptr: usize, value: i64, immOffset?: usize): i64;
828
+
829
+ // @ts-ignore: decorator
830
+ @unsafe @builtin
831
+ export declare function cmpxchg(ptr: usize, expected: i64, replacement: i64, immOffset?: usize): i64;
832
+ }
833
+ }
834
+ }
835
+
836
+ // @ts-ignore: decorator
837
+ @builtin
838
+ export declare function isize(value: auto): isize;
839
+
840
+ export namespace isize {
841
+
842
+ // @ts-ignore: decorator
843
+ @lazy
844
+ export const MIN_VALUE: isize = sizeof<i32>() == sizeof<isize>()
845
+ ? -2147483648
846
+ : <isize>-9223372036854775808;
847
+
848
+ // @ts-ignore: decorator
849
+ @lazy
850
+ export const MAX_VALUE: isize = sizeof<i32>() == sizeof<isize>()
851
+ ? 2147483647
852
+ : <isize>9223372036854775807;
853
+
854
+ // @ts-ignore: decorator
855
+ @inline
856
+ export function parse(value: string, radix: i32 = 0): isize {
857
+ return <isize>strtol<i64>(value, radix);
858
+ }
859
+ }
860
+
861
+ // @ts-ignore: decorator
862
+ @builtin
863
+ export declare function u8(value: auto): u8;
864
+
865
+ export namespace u8 {
866
+
867
+ // @ts-ignore: decorator
868
+ @lazy
869
+ export const MIN_VALUE: u8 = 0;
870
+
871
+ // @ts-ignore: decorator
872
+ @lazy
873
+ export const MAX_VALUE: u8 = 255;
874
+
875
+ // @ts-ignore: decorator
876
+ @inline
877
+ export function parse(value: string, radix: i32 = 0): u8 {
878
+ return <u8>strtol<i32>(value, radix);
879
+ }
880
+ }
881
+
882
+ // @ts-ignore: decorator
883
+ @builtin
884
+ export declare function u16(value: auto): u16;
885
+
886
+ export namespace u16 {
887
+
888
+ // @ts-ignore: decorator
889
+ @lazy
890
+ export const MIN_VALUE: u16 = 0;
891
+
892
+ // @ts-ignore: decorator
893
+ @lazy
894
+ export const MAX_VALUE: u16 = 65535;
895
+
896
+ // @ts-ignore: decorator
897
+ @inline
898
+ export function parse(value: string, radix: i32 = 0): u16 {
899
+ return <u16>strtol<i32>(value, radix);
900
+ }
901
+ }
902
+
903
+ // @ts-ignore: decorator
904
+ @builtin
905
+ export declare function u32(value: auto): u32;
906
+
907
+ export namespace u32 {
908
+
909
+ // @ts-ignore: decorator
910
+ @lazy
911
+ export const MIN_VALUE: u32 = 0;
912
+
913
+ // @ts-ignore: decorator
914
+ @lazy
915
+ export const MAX_VALUE: u32 = 4294967295;
916
+
917
+ // @ts-ignore: decorator
918
+ @inline
919
+ export function parse(value: string, radix: i32 = 0): u32 {
920
+ return <u32>strtol<i32>(value, radix);
921
+ }
922
+ }
923
+
924
+ // @ts-ignore: decorator
925
+ @builtin
926
+ export declare function u64(value: auto): u64;
927
+
928
+ export namespace u64 {
929
+
930
+ // @ts-ignore: decorator
931
+ @lazy
932
+ export const MIN_VALUE: u64 = 0;
933
+
934
+ // @ts-ignore: decorator
935
+ @lazy
936
+ export const MAX_VALUE: u64 = 18446744073709551615;
937
+
938
+ // @ts-ignore: decorator
939
+ @inline
940
+ export function parse(value: string, radix: i32 = 0): u64 {
941
+ return <u64>strtol<i64>(value, radix);
942
+ }
943
+ }
944
+
945
+ // @ts-ignore: decorator
946
+ @builtin
947
+ export declare function usize(value: auto): usize;
948
+
949
+ export namespace usize {
950
+
951
+ // @ts-ignore: decorator
952
+ @lazy
953
+ export const MIN_VALUE: usize = 0;
954
+
955
+ // @ts-ignore: decorator
956
+ @lazy
957
+ export const MAX_VALUE: usize = sizeof<u32>() == sizeof<usize>()
958
+ ? 4294967295
959
+ : <usize>18446744073709551615;
960
+
961
+ // @ts-ignore: decorator
962
+ @inline
963
+ export function parse(value: string, radix: i32 = 0): usize {
964
+ return <usize>strtol<i64>(value, radix);
965
+ }
966
+ }
967
+
968
+ // @ts-ignore: decorator
969
+ @builtin
970
+ export declare function bool(value: auto): bool;
971
+
972
+ export namespace bool {
973
+
974
+ // @ts-ignore: decorator
975
+ @lazy
976
+ export const MIN_VALUE: bool = false;
977
+
978
+ // @ts-ignore: decorator
979
+ @lazy
980
+ export const MAX_VALUE: bool = true;
981
+
982
+ // @ts-ignore: decorator
983
+ @inline
984
+ export function parse(value: string): bool {
985
+ return strtob(value);
986
+ }
987
+ }
988
+
989
+ // @ts-ignore: decorator
990
+ @builtin
991
+ export declare function f32(value: auto): f32;
992
+
993
+ export namespace f32 {
994
+
995
+ // @ts-ignore: decorator
996
+ @lazy
997
+ export const EPSILON = reinterpret<f32>(0x34000000); // 0x1p-23f
998
+
999
+ // @ts-ignore: decorator
1000
+ @lazy
1001
+ export const MIN_VALUE = reinterpret<f32>(0x00000001); // 0x0.000001p+0f
1002
+
1003
+ // @ts-ignore: decorator
1004
+ @lazy
1005
+ export const MAX_VALUE = reinterpret<f32>(0x7F7FFFFF); // 0x1.fffffep+127f
1006
+
1007
+ // @ts-ignore: decorator
1008
+ @lazy
1009
+ export const MIN_NORMAL_VALUE = reinterpret<f32>(0x00800000); // 0x1p-126f
1010
+
1011
+ // @ts-ignore: decorator
1012
+ @lazy
1013
+ export const MIN_SAFE_INTEGER: f32 = -16777215;
1014
+
1015
+ // @ts-ignore: decorator
1016
+ @lazy
1017
+ export const MAX_SAFE_INTEGER: f32 = 16777215;
1018
+
1019
+ // @ts-ignore: decorator
1020
+ @lazy
1021
+ export const POSITIVE_INFINITY: f32 = Infinity;
1022
+
1023
+ // @ts-ignore: decorator
1024
+ @lazy
1025
+ export const NEGATIVE_INFINITY: f32 = -Infinity;
1026
+
1027
+ // @ts-ignore: decorator
1028
+ @lazy
1029
+ export const NaN: f32 = 0.0 / 0.0;
1030
+
1031
+ // @ts-ignore: decorator
1032
+ @inline
1033
+ export function parse(value: string): f32 {
1034
+ return <f32>strtod(value);
1035
+ }
1036
+
1037
+ // @ts-ignore: decorator
1038
+ @builtin
1039
+ export declare function abs(value: f32): f32;
1040
+
1041
+ // @ts-ignore: decorator
1042
+ @builtin
1043
+ export declare function ceil(value: f32): f32;
1044
+
1045
+ // @ts-ignore: decorator
1046
+ @builtin
1047
+ export declare function copysign(x: f32, y: f32): f32;
1048
+
1049
+ // @ts-ignore: decorator
1050
+ @builtin
1051
+ export declare function floor(value: f32): f32;
1052
+
1053
+ // @ts-ignore: decorator
1054
+ @builtin
1055
+ export declare function load(ptr: usize, immOffset?: usize, immAlign?: usize): f32;
1056
+
1057
+ // @ts-ignore: decorator
1058
+ @builtin
1059
+ export declare function max(left: f32, right: f32): f32;
1060
+
1061
+ // @ts-ignore: decorator
1062
+ @builtin
1063
+ export declare function min(left: f32, right: f32): f32;
1064
+
1065
+ // @ts-ignore: decorator
1066
+ @builtin
1067
+ export declare function nearest(value: f32): f32;
1068
+
1069
+ // @ts-ignore: decorator
1070
+ @builtin
1071
+ export declare function reinterpret_i32(value: i32): f32;
1072
+
1073
+ // @ts-ignore: decorator
1074
+ @builtin
1075
+ export declare function sqrt(value: f32): f32;
1076
+
1077
+ // @ts-ignore: decorator
1078
+ @unsafe @builtin
1079
+ export declare function store(ptr: usize, value: f32, immOffset?: usize, immAlign?: usize): void;
1080
+
1081
+ // @ts-ignore: decorator
1082
+ @builtin
1083
+ export declare function trunc(value: f32): f32;
1084
+
1085
+ // @ts-ignore: decorator
1086
+ @builtin
1087
+ export declare function add(left: f32, right: f32): f32;
1088
+
1089
+ // @ts-ignore: decorator
1090
+ @builtin
1091
+ export declare function sub(left: f32, right: f32): f32;
1092
+
1093
+ // @ts-ignore: decorator
1094
+ @builtin
1095
+ export declare function mul(left: f32, right: f32): f32;
1096
+
1097
+ // @ts-ignore: decorator
1098
+ @builtin
1099
+ export declare function div(left: f32, right: f32): f32;
1100
+
1101
+ // @ts-ignore: decorator
1102
+ @builtin
1103
+ export declare function eq(left: f32, right: f32): i32;
1104
+
1105
+ // @ts-ignore: decorator
1106
+ @builtin
1107
+ export declare function ne(left: f32, right: f32): i32;
1108
+ }
1109
+
1110
+ // @ts-ignore: decorator
1111
+ @builtin
1112
+ export declare function f64(value: auto): f64;
1113
+
1114
+ export namespace f64 {
1115
+
1116
+ // @ts-ignore: decorator
1117
+ @lazy
1118
+ export const EPSILON = reinterpret<f64>(0x3CB0000000000000); // 0x1p-52
1119
+
1120
+ // @ts-ignore: decorator
1121
+ @lazy
1122
+ export const MIN_VALUE = reinterpret<f64>(0x0000000000000001); // 0x0.0000000000001p+0
1123
+
1124
+ // @ts-ignore: decorator
1125
+ @lazy
1126
+ export const MAX_VALUE = reinterpret<f64>(0x7FEFFFFFFFFFFFFF); // 0x1.fffffffffffffp+1023
1127
+
1128
+ // @ts-ignore: decorator
1129
+ @lazy
1130
+ export const MIN_NORMAL_VALUE = reinterpret<f64>(0x0010000000000000); // 0x1p-1022
1131
+
1132
+ // @ts-ignore: decorator
1133
+ @lazy
1134
+ export const MIN_SAFE_INTEGER: f64 = -9007199254740991;
1135
+
1136
+ // @ts-ignore: decorator
1137
+ @lazy
1138
+ export const MAX_SAFE_INTEGER: f64 = 9007199254740991;
1139
+
1140
+ // @ts-ignore: decorator
1141
+ @lazy
1142
+ export const POSITIVE_INFINITY: f64 = Infinity;
1143
+
1144
+ // @ts-ignore: decorator
1145
+ @lazy
1146
+ export const NEGATIVE_INFINITY: f64 = -Infinity;
1147
+
1148
+ // @ts-ignore: decorator
1149
+ @lazy
1150
+ export const NaN: f64 = 0.0 / 0.0;
1151
+
1152
+ // @ts-ignore: decorator
1153
+ @inline
1154
+ export function parse(value: string): f64 {
1155
+ return strtod(value);
1156
+ }
1157
+
1158
+ // @ts-ignore: decorator
1159
+ @builtin
1160
+ export declare function abs(value: f64): f64;
1161
+
1162
+ // @ts-ignore: decorator
1163
+ @builtin
1164
+ export declare function ceil(value: f64): f64;
1165
+
1166
+ // @ts-ignore: decorator
1167
+ @builtin
1168
+ export declare function copysign(x: f64, y: f64): f64;
1169
+
1170
+ // @ts-ignore: decorator
1171
+ @builtin
1172
+ export declare function floor(value: f64): f64;
1173
+
1174
+ // @ts-ignore: decorator
1175
+ @builtin
1176
+ export declare function load(ptr: usize, immOffset?: usize, immAlign?: usize): f64;
1177
+
1178
+ // @ts-ignore: decorator
1179
+ @builtin
1180
+ export declare function max(left: f64, right: f64): f64;
1181
+
1182
+ // @ts-ignore: decorator
1183
+ @builtin
1184
+ export declare function min(left: f64, right: f64): f64;
1185
+
1186
+ // @ts-ignore: decorator
1187
+ @builtin
1188
+ export declare function nearest(value: f64): f64;
1189
+
1190
+ // @ts-ignore: decorator
1191
+ @builtin
1192
+ export declare function reinterpret_i64(value: i64): f64;
1193
+
1194
+ // @ts-ignore: decorator
1195
+ @builtin
1196
+ export declare function sqrt(value: f64): f64;
1197
+
1198
+ // @ts-ignore: decorator
1199
+ @unsafe @builtin
1200
+ export declare function store(ptr: usize, value: f64, immOffset?: usize, immAlign?: usize): void;
1201
+
1202
+ // @ts-ignore: decorator
1203
+ @builtin
1204
+ export declare function trunc(value: f64): f64;
1205
+
1206
+ // @ts-ignore: decorator
1207
+ @builtin
1208
+ export declare function add(left: f64, right: f64): f64;
1209
+
1210
+ // @ts-ignore: decorator
1211
+ @builtin
1212
+ export declare function sub(left: f64, right: f64): f64;
1213
+
1214
+ // @ts-ignore: decorator
1215
+ @builtin
1216
+ export declare function mul(left: f64, right: f64): f64;
1217
+
1218
+ // @ts-ignore: decorator
1219
+ @builtin
1220
+ export declare function div(left: f64, right: f64): f64;
1221
+
1222
+ // @ts-ignore: decorator
1223
+ @builtin
1224
+ export declare function eq(left: f64, right: f64): i32;
1225
+
1226
+ // @ts-ignore: decorator
1227
+ @builtin
1228
+ export declare function ne(left: f64, right: f64): i32;
1229
+ }
1230
+
1231
+ // @ts-ignore: decorator
1232
+ @builtin
1233
+ export declare function v128(
1234
+ a: i8, b: i8, c: i8, d: i8, e: i8, f: i8, g: i8, h: i8,
1235
+ i: i8, j: i8, k: i8, l: i8, m: i8, n: i8, o: i8, p: i8
1236
+ ): v128;
1237
+
1238
+ export namespace v128 {
1239
+
1240
+ // @ts-ignore: decorator
1241
+ @builtin
1242
+ export declare function splat<T>(x: T): v128;
1243
+
1244
+ // @ts-ignore: decorator
1245
+ @builtin
1246
+ export declare function extract_lane<T>(x: v128, idx: u8): T;
1247
+
1248
+ // @ts-ignore: decorator
1249
+ @builtin
1250
+ export declare function replace_lane<T>(x: v128, idx: u8, value: T): v128;
1251
+
1252
+ // @ts-ignore: decorator
1253
+ @builtin
1254
+ export declare function shuffle<T>(a: v128, b: v128, ...lanes: u8[]): v128;
1255
+
1256
+ // @ts-ignore: decorator
1257
+ @builtin
1258
+ export declare function swizzle(a: v128, b: v128): v128;
1259
+
1260
+ // @ts-ignore: decorator
1261
+ @unsafe @builtin
1262
+ export declare function load(ptr: usize, immOffset?: usize, immAlign?: usize): v128;
1263
+
1264
+ // @ts-ignore: decorator
1265
+ @unsafe @builtin
1266
+ export declare function load_ext<TFrom>(ptr: usize, immOffset?: usize, immAlign?: usize): v128;
1267
+
1268
+ // @ts-ignore: decorator
1269
+ @unsafe @builtin
1270
+ export declare function load_zero<TFrom>(ptr: usize, immOffset?: usize, immAlign?: usize): v128;
1271
+
1272
+ // @ts-ignore: decorator
1273
+ @unsafe @builtin
1274
+ export declare function load_lane<TFrom>(ptr: usize, vec: v128, idx: u8, immOffset?: usize, immAlign?: usize): v128;
1275
+
1276
+ // @ts-ignore: decorator
1277
+ @unsafe @builtin
1278
+ export declare function store_lane<TFrom>(ptr: usize, vec: v128, idx: u8, immOffset?: usize, immAlign?: usize): void;
1279
+
1280
+ // @ts-ignore: decorator
1281
+ @builtin
1282
+ export declare function load8x8_s(ptr: usize, immOffset?: u32, immAlign?: u32): v128;
1283
+
1284
+ // @ts-ignore: decorator
1285
+ @builtin
1286
+ export declare function load8x8_u(ptr: usize, immOffset?: u32, immAlign?: u32): v128;
1287
+
1288
+ // @ts-ignore: decorator
1289
+ @builtin
1290
+ export declare function load16x4_s(ptr: usize, immOffset?: u32, immAlign?: u32): v128;
1291
+
1292
+ // @ts-ignore: decorator
1293
+ @builtin
1294
+ export declare function load16x4_u(ptr: usize, immOffset?: u32, immAlign?: u32): v128;
1295
+
1296
+ // @ts-ignore: decorator
1297
+ @builtin
1298
+ export declare function load32x2_s(ptr: usize, immOffset?: u32, immAlign?: u32): v128;
1299
+
1300
+ // @ts-ignore: decorator
1301
+ @builtin
1302
+ export declare function load32x2_u(ptr: usize, immOffset?: u32, immAlign?: u32): v128;
1303
+
1304
+ // @ts-ignore: decorator
1305
+ @unsafe @builtin
1306
+ export declare function load_splat<T>(ptr: usize, immOffset?: usize, immAlign?: usize): v128;
1307
+
1308
+ // @ts-ignore: decorator
1309
+ @unsafe @builtin
1310
+ export declare function load8_splat(ptr: usize, immOffset?: u32, immAlign?: u32): v128;
1311
+
1312
+ // @ts-ignore: decorator
1313
+ @unsafe @builtin
1314
+ export declare function load16_splat(ptr: usize, immOffset?: u32, immAlign?: u32): v128;
1315
+
1316
+ // @ts-ignore: decorator
1317
+ @unsafe @builtin
1318
+ export declare function load32_splat(ptr: usize, immOffset?: u32, immAlign?: u32): v128;
1319
+
1320
+ // @ts-ignore: decorator
1321
+ @unsafe @builtin
1322
+ export declare function load64_splat(ptr: usize, immOffset?: u32, immAlign?: u32): v128;
1323
+
1324
+ // @ts-ignore: decorator
1325
+ @unsafe @builtin
1326
+ export declare function load32_zero(ptr: usize, immOffset?: u32, immAlign?: u32): v128;
1327
+
1328
+ // @ts-ignore: decorator
1329
+ @unsafe @builtin
1330
+ export declare function load64_zero(ptr: usize, immOffset?: u32, immAlign?: u32): v128;
1331
+
1332
+ // @ts-ignore: decorator
1333
+ @unsafe @builtin
1334
+ export declare function load8_lane(ptr: usize, vec: v128, idx: u8, immOffset?: u32, immAlign?: u32): v128;
1335
+
1336
+ // @ts-ignore: decorator
1337
+ @unsafe @builtin
1338
+ export declare function load16_lane(ptr: usize, vec: v128, idx: u8, immOffset?: u32, immAlign?: u32): v128;
1339
+
1340
+ // @ts-ignore: decorator
1341
+ @unsafe @builtin
1342
+ export declare function load32_lane(ptr: usize, vec: v128, idx: u8, immOffset?: u32, immAlign?: u32): v128;
1343
+
1344
+ // @ts-ignore: decorator
1345
+ @unsafe @builtin
1346
+ export declare function load64_lane(ptr: usize, vec: v128, idx: u8, immOffset?: u32, immAlign?: u32): v128;
1347
+
1348
+ // @ts-ignore: decorator
1349
+ @unsafe @builtin
1350
+ export declare function store8_lane(ptr: usize, vec: v128, idx: u8, immOffset?: u32, immAlign?: u32): void;
1351
+
1352
+ // @ts-ignore: decorator
1353
+ @unsafe @builtin
1354
+ export declare function store16_lane(ptr: usize, vec: v128, idx: u8, immOffset?: u32, immAlign?: u32): void;
1355
+
1356
+ // @ts-ignore: decorator
1357
+ @unsafe @builtin
1358
+ export declare function store32_lane(ptr: usize, vec: v128, idx: u8, immOffset?: u32, immAlign?: u32): void;
1359
+
1360
+ // @ts-ignore: decorator
1361
+ @unsafe @builtin
1362
+ export declare function store64_lane(ptr: usize, vec: v128, idx: u8, immOffset?: u32, immAlign?: u32): void;
1363
+
1364
+ // @ts-ignore: decorator
1365
+ @unsafe @builtin
1366
+ export declare function store(ptr: usize, value: v128, immOffset?: usize, immAlign?: usize): void;
1367
+
1368
+ // @ts-ignore: decorator
1369
+ @builtin
1370
+ export declare function add<T>(a: v128, b: v128): v128;
1371
+
1372
+ // @ts-ignore: decorator
1373
+ @builtin
1374
+ export declare function sub<T>(a: v128, b: v128): v128;
1375
+
1376
+ // @ts-ignore: decorator
1377
+ @builtin
1378
+ export declare function mul<T>(a: v128, b: v128): v128;
1379
+
1380
+ // @ts-ignore: decorator
1381
+ @builtin
1382
+ export declare function div<T>(a: v128, b: v128): v128; // f32, f64 only
1383
+
1384
+ // @ts-ignore: decorator
1385
+ @builtin
1386
+ export declare function neg<T>(a: v128): v128;
1387
+
1388
+ // @ts-ignore: decorator
1389
+ @builtin
1390
+ export declare function add_sat<T>(a: v128, b: v128): v128;
1391
+
1392
+ // @ts-ignore: decorator
1393
+ @builtin
1394
+ export declare function sub_sat<T>(a: v128, b: v128): v128;
1395
+
1396
+ // @ts-ignore: decorator
1397
+ @builtin
1398
+ export declare function shl<T>(a: v128, b: i32): v128;
1399
+
1400
+ // @ts-ignore: decorator
1401
+ @builtin
1402
+ export declare function shr<T>(a: v128, b: i32): v128;
1403
+
1404
+ // @ts-ignore: decorator
1405
+ @builtin
1406
+ export declare function and(a: v128, b: v128): v128;
1407
+
1408
+ // @ts-ignore: decorator
1409
+ @builtin
1410
+ export declare function or(a: v128, b: v128): v128;
1411
+
1412
+ // @ts-ignore: decorator
1413
+ @builtin
1414
+ export declare function xor(a: v128, b: v128): v128;
1415
+
1416
+ // @ts-ignore: decorator
1417
+ @builtin
1418
+ export declare function andnot(a: v128, b: v128): v128;
1419
+
1420
+ // @ts-ignore: decorator
1421
+ @builtin
1422
+ export declare function not(a: v128): v128;
1423
+
1424
+ // @ts-ignore: decorator
1425
+ @builtin
1426
+ export declare function bitselect(v1: v128, v2: v128, c: v128): v128;
1427
+
1428
+ // @ts-ignore: decorator
1429
+ @builtin
1430
+ export declare function any_true(a: v128): bool;
1431
+
1432
+ // @ts-ignore: decorator
1433
+ @builtin
1434
+ export declare function all_true<T>(a: v128): bool;
1435
+
1436
+ // @ts-ignore: decorator
1437
+ @builtin
1438
+ export declare function bitmask<T>(a: v128): i32;
1439
+
1440
+ // @ts-ignore: decorator
1441
+ @builtin
1442
+ export declare function popcnt<T>(a: v128): v128;
1443
+
1444
+ // @ts-ignore: decorator
1445
+ @builtin
1446
+ export declare function min<T>(a: v128, b: v128): v128;
1447
+
1448
+ // @ts-ignore: decorator
1449
+ @builtin
1450
+ export declare function max<T>(a: v128, b: v128): v128;
1451
+
1452
+ // @ts-ignore: decorator
1453
+ @builtin
1454
+ export declare function pmin<T>(a: v128, b: v128): v128;
1455
+
1456
+ // @ts-ignore: decorator
1457
+ @builtin
1458
+ export declare function pmax<T>(a: v128, b: v128): v128;
1459
+
1460
+ // @ts-ignore: decorator
1461
+ @builtin
1462
+ export declare function dot<T>(a: v128, b: v128): v128; // i16 only
1463
+
1464
+ // @ts-ignore: decorator
1465
+ @builtin
1466
+ export declare function avgr<T>(a: v128, b: v128): v128; // u8, u16 only
1467
+
1468
+ // @ts-ignore: decorator
1469
+ @builtin
1470
+ export declare function abs<T>(a: v128): v128; // f32, f64 only
1471
+
1472
+ // @ts-ignore: decorator
1473
+ @builtin
1474
+ export declare function sqrt<T>(a: v128): v128; // f32, f64 only
1475
+
1476
+ // @ts-ignore: decorator
1477
+ @builtin
1478
+ export declare function ceil<T>(a: v128): v128; // f32, f64 only
1479
+
1480
+ // @ts-ignore: decorator
1481
+ @builtin
1482
+ export declare function floor<T>(a: v128): v128; // f32, f64 only
1483
+
1484
+ // @ts-ignore: decorator
1485
+ @builtin
1486
+ export declare function trunc<T>(a: v128): v128; // f32, f64 only
1487
+
1488
+ // @ts-ignore: decorator
1489
+ @builtin
1490
+ export declare function nearest<T>(a: v128): v128; // f32, f64 only
1491
+
1492
+ // @ts-ignore: decorator
1493
+ @builtin
1494
+ export declare function eq<T>(a: v128, b: v128): v128;
1495
+
1496
+ // @ts-ignore: decorator
1497
+ @builtin
1498
+ export declare function ne<T>(a: v128, b: v128): v128;
1499
+
1500
+ // @ts-ignore: decorator
1501
+ @builtin
1502
+ export declare function lt<T>(a: v128, b: v128): v128;
1503
+
1504
+ // @ts-ignore: decorator
1505
+ @builtin
1506
+ export declare function le<T>(a: v128, b: v128): v128;
1507
+
1508
+ // @ts-ignore: decorator
1509
+ @builtin
1510
+ export declare function gt<T>(a: v128, b: v128): v128;
1511
+
1512
+ // @ts-ignore: decorator
1513
+ @builtin
1514
+ export declare function ge<T>(a: v128, b: v128): v128;
1515
+
1516
+ // @ts-ignore: decorator
1517
+ @builtin
1518
+ export declare function convert<T>(a: v128): v128;
1519
+
1520
+ // @ts-ignore: decorator
1521
+ @builtin
1522
+ export declare function convert_low<T>(a: v128): v128;
1523
+
1524
+ // @ts-ignore: decorator
1525
+ @builtin
1526
+ export declare function trunc_sat<T>(a: v128): v128;
1527
+
1528
+ // @ts-ignore: decorator
1529
+ @builtin
1530
+ export declare function trunc_sat_zero<T>(a: v128): v128;
1531
+
1532
+ // @ts-ignore: decorator
1533
+ @builtin
1534
+ export declare function narrow<T>(a: v128, b: v128): v128;
1535
+
1536
+ // @ts-ignore: decorator
1537
+ @builtin
1538
+ export declare function extend_low<T>(a: v128): v128;
1539
+
1540
+ // @ts-ignore: decorator
1541
+ @builtin
1542
+ export declare function extend_high<T>(a: v128): v128;
1543
+
1544
+ // @ts-ignore: decorator
1545
+ @builtin
1546
+ export declare function extadd_pairwise<T>(a: v128): v128;
1547
+
1548
+ // @ts-ignore: decorator
1549
+ @builtin
1550
+ export declare function demote_zero<T = f64>(a: v128): v128;
1551
+
1552
+ // @ts-ignore: decorator
1553
+ @builtin
1554
+ export declare function promote_low<T = f32>(a: v128): v128;
1555
+
1556
+ // @ts-ignore: decorator
1557
+ @builtin
1558
+ export declare function q15mulr_sat<T>(a: v128, b: v128): v128;
1559
+
1560
+ // @ts-ignore: decorator
1561
+ @builtin
1562
+ export declare function extmul_low<T>(a: v128, b: v128): v128;
1563
+
1564
+ // @ts-ignore: decorator
1565
+ @builtin
1566
+ export declare function extmul_high<T>(a: v128, b: v128): v128;
1567
+
1568
+ // @ts-ignore: decorator
1569
+ @builtin
1570
+ export declare function relaxed_swizzle(a: v128, s: v128): v128;
1571
+
1572
+ // @ts-ignore: decorator
1573
+ @builtin
1574
+ export declare function relaxed_trunc<T>(a: v128): v128;
1575
+
1576
+ // @ts-ignore: decorator
1577
+ @builtin
1578
+ export declare function relaxed_trunc_zero<T>(a: v128): v128;
1579
+
1580
+ // @ts-ignore: decorator
1581
+ @builtin
1582
+ export declare function relaxed_madd<T>(a: v128, b: v128, c: v128): v128;
1583
+
1584
+ // @ts-ignore: decorator
1585
+ @builtin
1586
+ export declare function relaxed_nmadd<T>(a: v128, b: v128, c: v128): v128;
1587
+
1588
+ // @ts-ignore: decorator
1589
+ @builtin
1590
+ export declare function relaxed_laneselect<T>(a: v128, b: v128, m: v128): v128;
1591
+
1592
+ // @ts-ignore: decorator
1593
+ @builtin
1594
+ export declare function relaxed_min<T>(a: v128, b: v128): v128;
1595
+
1596
+ // @ts-ignore: decorator
1597
+ @builtin
1598
+ export declare function relaxed_max<T>(a: v128, b: v128): v128;
1599
+
1600
+ // @ts-ignore: decorator
1601
+ @builtin
1602
+ export declare function relaxed_q15mulr<T>(a: v128, b: v128): v128;
1603
+
1604
+ // @ts-ignore: decorator
1605
+ @builtin
1606
+ export declare function relaxed_dot<T>(a: v128, b: v128): v128;
1607
+
1608
+ // @ts-ignore: decorator
1609
+ @builtin
1610
+ export declare function relaxed_dot_add<T>(a: v128, b: v128, c: v128): v128;
1611
+ }
1612
+
1613
+ // @ts-ignore: decorator
1614
+ @builtin
1615
+ export declare function i8x16(
1616
+ a: i8, b: i8, c: i8, d: i8, e: i8, f: i8, g: i8, h: i8,
1617
+ i: i8, j: i8, k: i8, l: i8, m: i8, n: i8, o: i8, p: i8
1618
+ ): v128;
1619
+
1620
+ export namespace i8x16 {
1621
+
1622
+ // @ts-ignore: decorator
1623
+ @builtin
1624
+ export declare function splat(x: i8): v128;
1625
+
1626
+ // @ts-ignore: decorator
1627
+ @builtin
1628
+ export declare function extract_lane_s(x: v128, idx: u8): i8;
1629
+
1630
+ // @ts-ignore: decorator
1631
+ @builtin
1632
+ export declare function extract_lane_u(x: v128, idx: u8): u8;
1633
+
1634
+ // @ts-ignore: decorator
1635
+ @builtin
1636
+ export declare function replace_lane(x: v128, idx: u8, value: i8): v128;
1637
+
1638
+ // @ts-ignore: decorator
1639
+ @builtin
1640
+ export declare function add(a: v128, b: v128): v128;
1641
+
1642
+ // @ts-ignore: decorator
1643
+ @builtin
1644
+ export declare function sub(a: v128, b: v128): v128;
1645
+
1646
+ // @ts-ignore: decorator
1647
+ @builtin
1648
+ export declare function min_s(a: v128, b: v128): v128;
1649
+
1650
+ // @ts-ignore: decorator
1651
+ @builtin
1652
+ export declare function min_u(a: v128, b: v128): v128;
1653
+
1654
+ // @ts-ignore: decorator
1655
+ @builtin
1656
+ export declare function max_s(a: v128, b: v128): v128;
1657
+
1658
+ // @ts-ignore: decorator
1659
+ @builtin
1660
+ export declare function max_u(a: v128, b: v128): v128;
1661
+
1662
+ // @ts-ignore: decorator
1663
+ @builtin
1664
+ export declare function avgr_u(a: v128, b: v128): v128;
1665
+
1666
+ // @ts-ignore: decorator
1667
+ @builtin
1668
+ export declare function abs(a: v128): v128;
1669
+
1670
+ // @ts-ignore: decorator
1671
+ @builtin
1672
+ export declare function neg(a: v128): v128;
1673
+
1674
+ // @ts-ignore: decorator
1675
+ @builtin
1676
+ export declare function add_sat_s(a: v128, b: v128): v128;
1677
+
1678
+ // @ts-ignore: decorator
1679
+ @builtin
1680
+ export declare function add_sat_u(a: v128, b: v128): v128;
1681
+
1682
+ // @ts-ignore: decorator
1683
+ @builtin
1684
+ export declare function sub_sat_s(a: v128, b: v128): v128;
1685
+
1686
+ // @ts-ignore: decorator
1687
+ @builtin
1688
+ export declare function sub_sat_u(a: v128, b: v128): v128;
1689
+
1690
+ // @ts-ignore: decorator
1691
+ @builtin
1692
+ export declare function shl(a: v128, b: i32): v128;
1693
+
1694
+ // @ts-ignore: decorator
1695
+ @builtin
1696
+ export declare function shr_s(a: v128, b: i32): v128;
1697
+
1698
+ // @ts-ignore: decorator
1699
+ @builtin
1700
+ export declare function shr_u(a: v128, b: i32): v128;
1701
+
1702
+ // @ts-ignore: decorator
1703
+ @builtin
1704
+ export declare function all_true(a: v128): bool;
1705
+
1706
+ // @ts-ignore: decorator
1707
+ @builtin
1708
+ export declare function bitmask(a: v128): i32;
1709
+
1710
+ // @ts-ignore: decorator
1711
+ @builtin
1712
+ export declare function popcnt(a: v128): v128;
1713
+
1714
+ // @ts-ignore: decorator
1715
+ @builtin
1716
+ export declare function eq(a: v128, b: v128): v128;
1717
+
1718
+ // @ts-ignore: decorator
1719
+ @builtin
1720
+ export declare function ne(a: v128, b: v128): v128;
1721
+
1722
+ // @ts-ignore: decorator
1723
+ @builtin
1724
+ export declare function lt_s(a: v128, b: v128): v128;
1725
+
1726
+ // @ts-ignore: decorator
1727
+ @builtin
1728
+ export declare function lt_u(a: v128, b: v128): v128;
1729
+
1730
+ // @ts-ignore: decorator
1731
+ @builtin
1732
+ export declare function le_s(a: v128, b: v128): v128;
1733
+
1734
+ // @ts-ignore: decorator
1735
+ @builtin
1736
+ export declare function le_u(a: v128, b: v128): v128;
1737
+
1738
+ // @ts-ignore: decorator
1739
+ @builtin
1740
+ export declare function gt_s(a: v128, b: v128): v128;
1741
+
1742
+ // @ts-ignore: decorator
1743
+ @builtin
1744
+ export declare function gt_u(a: v128, b: v128): v128;
1745
+
1746
+ // @ts-ignore: decorator
1747
+ @builtin
1748
+ export declare function ge_s(a: v128, b: v128): v128;
1749
+
1750
+ // @ts-ignore: decorator
1751
+ @builtin
1752
+ export declare function ge_u(a: v128, b: v128): v128;
1753
+
1754
+ // @ts-ignore: decorator
1755
+ @builtin
1756
+ export declare function narrow_i16x8_s(a: v128, b: v128): v128;
1757
+
1758
+ // @ts-ignore: decorator
1759
+ @builtin
1760
+ export declare function narrow_i16x8_u(a: v128, b: v128): v128;
1761
+
1762
+ // @ts-ignore: decorator
1763
+ @builtin
1764
+ export declare function shuffle(
1765
+ a: v128, b: v128,
1766
+ l0: u8, l1: u8, l2: u8, l3: u8, l4: u8, l5: u8, l6: u8, l7: u8,
1767
+ l8: u8, l9: u8, l10: u8, l11: u8, l12: u8, l13: u8, l14: u8, l15: u8
1768
+ ): v128;
1769
+
1770
+ // @ts-ignore: decorator
1771
+ @builtin
1772
+ export declare function swizzle(a: v128, b: v128): v128;
1773
+
1774
+ // @ts-ignore: decorator
1775
+ @builtin
1776
+ export declare function relaxed_swizzle(a: v128, s: v128): v128;
1777
+
1778
+ // @ts-ignore: decorator
1779
+ @builtin
1780
+ export declare function relaxed_laneselect(a: v128, b: v128, m: v128): v128;
1781
+ }
1782
+
1783
+ // @ts-ignore: decorator
1784
+ @builtin
1785
+ export declare function i16x8(a: i16, b: i16, c: i16, d: i16, e: i16, f: i16, g: i16, h: i16): v128;
1786
+
1787
+ export namespace i16x8 {
1788
+
1789
+ // @ts-ignore: decorator
1790
+ @builtin
1791
+ export declare function splat(x: i16): v128;
1792
+
1793
+ // @ts-ignore: decorator
1794
+ @builtin
1795
+ export declare function extract_lane_s(x: v128, idx: u8): i16;
1796
+
1797
+ // @ts-ignore: decorator
1798
+ @builtin
1799
+ export declare function extract_lane_u(x: v128, idx: u8): u16;
1800
+
1801
+ // @ts-ignore: decorator
1802
+ @builtin
1803
+ export declare function replace_lane(x: v128, idx: u8, value: i16): v128;
1804
+
1805
+ // @ts-ignore: decorator
1806
+ @builtin
1807
+ export declare function add(a: v128, b: v128): v128;
1808
+
1809
+ // @ts-ignore: decorator
1810
+ @builtin
1811
+ export declare function sub(a: v128, b: v128): v128;
1812
+
1813
+ // @ts-ignore: decorator
1814
+ @builtin
1815
+ export declare function mul(a: v128, b: v128): v128;
1816
+
1817
+ // @ts-ignore: decorator
1818
+ @builtin
1819
+ export declare function min_s(a: v128, b: v128): v128;
1820
+
1821
+ // @ts-ignore: decorator
1822
+ @builtin
1823
+ export declare function min_u(a: v128, b: v128): v128;
1824
+
1825
+ // @ts-ignore: decorator
1826
+ @builtin
1827
+ export declare function max_s(a: v128, b: v128): v128;
1828
+
1829
+ // @ts-ignore: decorator
1830
+ @builtin
1831
+ export declare function max_u(a: v128, b: v128): v128;
1832
+
1833
+ // @ts-ignore: decorator
1834
+ @builtin
1835
+ export declare function avgr_u(a: v128, b: v128): v128;
1836
+
1837
+ // @ts-ignore: decorator
1838
+ @builtin
1839
+ export declare function abs(a: v128): v128;
1840
+
1841
+ // @ts-ignore: decorator
1842
+ @builtin
1843
+ export declare function neg(a: v128): v128;
1844
+
1845
+ // @ts-ignore: decorator
1846
+ @builtin
1847
+ export declare function add_sat_s(a: v128, b: v128): v128;
1848
+
1849
+ // @ts-ignore: decorator
1850
+ @builtin
1851
+ export declare function add_sat_u(a: v128, b: v128): v128;
1852
+
1853
+ // @ts-ignore: decorator
1854
+ @builtin
1855
+ export declare function sub_sat_s(a: v128, b: v128): v128;
1856
+
1857
+ // @ts-ignore: decorator
1858
+ @builtin
1859
+ export declare function sub_sat_u(a: v128, b: v128): v128;
1860
+
1861
+ // @ts-ignore: decorator
1862
+ @builtin
1863
+ export declare function shl(a: v128, b: i32): v128;
1864
+
1865
+ // @ts-ignore: decorator
1866
+ @builtin
1867
+ export declare function shr_s(a: v128, b: i32): v128;
1868
+
1869
+ // @ts-ignore: decorator
1870
+ @builtin
1871
+ export declare function shr_u(a: v128, b: i32): v128;
1872
+
1873
+ // @ts-ignore: decorator
1874
+ @builtin
1875
+ export declare function all_true(a: v128): bool;
1876
+
1877
+ // @ts-ignore: decorator
1878
+ @builtin
1879
+ export declare function bitmask(a: v128): i32;
1880
+
1881
+ // @ts-ignore: decorator
1882
+ @builtin
1883
+ export declare function eq(a: v128, b: v128): v128;
1884
+
1885
+ // @ts-ignore: decorator
1886
+ @builtin
1887
+ export declare function ne(a: v128, b: v128): v128;
1888
+
1889
+ // @ts-ignore: decorator
1890
+ @builtin
1891
+ export declare function lt_s(a: v128, b: v128): v128;
1892
+
1893
+ // @ts-ignore: decorator
1894
+ @builtin
1895
+ export declare function lt_u(a: v128, b: v128): v128;
1896
+
1897
+ // @ts-ignore: decorator
1898
+ @builtin
1899
+ export declare function le_s(a: v128, b: v128): v128;
1900
+
1901
+ // @ts-ignore: decorator
1902
+ @builtin
1903
+ export declare function le_u(a: v128, b: v128): v128;
1904
+
1905
+ // @ts-ignore: decorator
1906
+ @builtin
1907
+ export declare function gt_s(a: v128, b: v128): v128;
1908
+
1909
+ // @ts-ignore: decorator
1910
+ @builtin
1911
+ export declare function gt_u(a: v128, b: v128): v128;
1912
+
1913
+ // @ts-ignore: decorator
1914
+ @builtin
1915
+ export declare function ge_s(a: v128, b: v128): v128;
1916
+
1917
+ // @ts-ignore: decorator
1918
+ @builtin
1919
+ export declare function ge_u(a: v128, b: v128): v128;
1920
+
1921
+ // @ts-ignore: decorator
1922
+ @builtin
1923
+ export declare function narrow_i32x4_s(a: v128, b: v128): v128;
1924
+
1925
+ // @ts-ignore: decorator
1926
+ @builtin
1927
+ export declare function narrow_i32x4_u(a: v128, b: v128): v128;
1928
+
1929
+ // @ts-ignore: decorator
1930
+ @builtin
1931
+ export declare function extend_low_i8x16_s(a: v128): v128;
1932
+
1933
+ // @ts-ignore: decorator
1934
+ @builtin
1935
+ export declare function extend_low_i8x16_u(a: v128): v128;
1936
+
1937
+ // @ts-ignore: decorator
1938
+ @builtin
1939
+ export declare function extend_high_i8x16_s(a: v128): v128;
1940
+
1941
+ // @ts-ignore: decorator
1942
+ @builtin
1943
+ export declare function extend_high_i8x16_u(a: v128): v128;
1944
+
1945
+ // @ts-ignore: decorator
1946
+ @builtin
1947
+ export declare function extadd_pairwise_i8x16_s(a: v128): v128;
1948
+
1949
+ // @ts-ignore: decorator
1950
+ @builtin
1951
+ export declare function extadd_pairwise_i8x16_u(a: v128): v128;
1952
+
1953
+ // @ts-ignore: decorator
1954
+ @builtin
1955
+ export declare function q15mulr_sat_s(a: v128, b: v128): v128;
1956
+
1957
+ // @ts-ignore: decorator
1958
+ @builtin
1959
+ export declare function extmul_low_i8x16_s(a: v128, b: v128): v128;
1960
+
1961
+ // @ts-ignore: decorator
1962
+ @builtin
1963
+ export declare function extmul_low_i8x16_u(a: v128, b: v128): v128;
1964
+
1965
+ // @ts-ignore: decorator
1966
+ @builtin
1967
+ export declare function extmul_high_i8x16_s(a: v128, b: v128): v128;
1968
+
1969
+ // @ts-ignore: decorator
1970
+ @builtin
1971
+ export declare function extmul_high_i8x16_u(a: v128, b: v128): v128;
1972
+
1973
+ // @ts-ignore: decorator
1974
+ @builtin
1975
+ export declare function shuffle(
1976
+ a: v128, b: v128,
1977
+ l0: u8, l1: u8, l2: u8, l3: u8, l4: u8, l5: u8, l6: u8, l7: u8
1978
+ ): v128;
1979
+
1980
+ // @ts-ignore: decorator
1981
+ @builtin
1982
+ export declare function relaxed_laneselect(a: v128, b: v128, m: v128): v128;
1983
+
1984
+ // @ts-ignore: decorator
1985
+ @builtin
1986
+ export declare function relaxed_q15mulr_s(a: v128, b: v128): v128;
1987
+
1988
+ // @ts-ignore: decorator
1989
+ @builtin
1990
+ export declare function relaxed_dot_i8x16_i7x16_s(a: v128, b: v128, c: v128): v128;
1991
+ }
1992
+
1993
+ // @ts-ignore: decorator
1994
+ @builtin
1995
+ export declare function i32x4(a: i32, b: i32, c: i32, d: i32): v128;
1996
+
1997
+ export namespace i32x4 {
1998
+
1999
+ // @ts-ignore: decorator
2000
+ @builtin
2001
+ export declare function splat(x: i32): v128;
2002
+
2003
+ // @ts-ignore: decorator
2004
+ @builtin
2005
+ export declare function extract_lane(x: v128, idx: u8): i32;
2006
+
2007
+ // @ts-ignore: decorator
2008
+ @builtin
2009
+ export declare function replace_lane(x: v128, idx: u8, value: i32): v128;
2010
+
2011
+ // @ts-ignore: decorator
2012
+ @builtin
2013
+ export declare function add(a: v128, b: v128): v128;
2014
+
2015
+ // @ts-ignore: decorator
2016
+ @builtin
2017
+ export declare function sub(a: v128, b: v128): v128;
2018
+
2019
+ // @ts-ignore: decorator
2020
+ @builtin
2021
+ export declare function mul(a: v128, b: v128): v128;
2022
+
2023
+ // @ts-ignore: decorator
2024
+ @builtin
2025
+ export declare function min_s(a: v128, b: v128): v128;
2026
+
2027
+ // @ts-ignore: decorator
2028
+ @builtin
2029
+ export declare function min_u(a: v128, b: v128): v128;
2030
+
2031
+ // @ts-ignore: decorator
2032
+ @builtin
2033
+ export declare function max_s(a: v128, b: v128): v128;
2034
+
2035
+ // @ts-ignore: decorator
2036
+ @builtin
2037
+ export declare function max_u(a: v128, b: v128): v128;
2038
+
2039
+ // @ts-ignore: decorator
2040
+ @builtin
2041
+ export declare function dot_i16x8_s(a: v128, b: v128): v128;
2042
+
2043
+ // @ts-ignore: decorator
2044
+ @builtin
2045
+ export declare function abs(a: v128): v128;
2046
+
2047
+ // @ts-ignore: decorator
2048
+ @builtin
2049
+ export declare function neg(a: v128): v128;
2050
+
2051
+ // @ts-ignore: decorator
2052
+ @builtin
2053
+ export declare function shl(a: v128, b: i32): v128;
2054
+
2055
+ // @ts-ignore: decorator
2056
+ @builtin
2057
+ export declare function shr_s(a: v128, b: i32): v128;
2058
+
2059
+ // @ts-ignore: decorator
2060
+ @builtin
2061
+ export declare function shr_u(a: v128, b: i32): v128;
2062
+
2063
+ // @ts-ignore: decorator
2064
+ @builtin
2065
+ export declare function all_true(a: v128): bool;
2066
+
2067
+ // @ts-ignore: decorator
2068
+ @builtin
2069
+ export declare function bitmask(a: v128): i32;
2070
+
2071
+ // @ts-ignore: decorator
2072
+ @builtin
2073
+ export declare function eq(a: v128, b: v128): v128;
2074
+
2075
+ // @ts-ignore: decorator
2076
+ @builtin
2077
+ export declare function ne(a: v128, b: v128): v128;
2078
+
2079
+ // @ts-ignore: decorator
2080
+ @builtin
2081
+ export declare function lt_s(a: v128, b: v128): v128;
2082
+
2083
+ // @ts-ignore: decorator
2084
+ @builtin
2085
+ export declare function lt_u(a: v128, b: v128): v128;
2086
+
2087
+ // @ts-ignore: decorator
2088
+ @builtin
2089
+ export declare function le_s(a: v128, b: v128): v128;
2090
+
2091
+ // @ts-ignore: decorator
2092
+ @builtin
2093
+ export declare function le_u(a: v128, b: v128): v128;
2094
+
2095
+ // @ts-ignore: decorator
2096
+ @builtin
2097
+ export declare function gt_s(a: v128, b: v128): v128;
2098
+
2099
+ // @ts-ignore: decorator
2100
+ @builtin
2101
+ export declare function gt_u(a: v128, b: v128): v128;
2102
+
2103
+ // @ts-ignore: decorator
2104
+ @builtin
2105
+ export declare function ge_s(a: v128, b: v128): v128;
2106
+
2107
+ // @ts-ignore: decorator
2108
+ @builtin
2109
+ export declare function ge_u(a: v128, b: v128): v128;
2110
+
2111
+ // @ts-ignore: decorator
2112
+ @builtin
2113
+ export declare function trunc_sat_f32x4_s(a: v128): v128;
2114
+
2115
+ // @ts-ignore: decorator
2116
+ @builtin
2117
+ export declare function trunc_sat_f32x4_u(a: v128): v128;
2118
+
2119
+ // @ts-ignore: decorator
2120
+ @builtin
2121
+ export declare function trunc_sat_f64x2_s_zero(a: v128): v128;
2122
+
2123
+ // @ts-ignore: decorator
2124
+ @builtin
2125
+ export declare function trunc_sat_f64x2_u_zero(a: v128): v128;
2126
+
2127
+ // @ts-ignore: decorator
2128
+ @builtin
2129
+ export declare function extend_low_i16x8_s(a: v128): v128;
2130
+
2131
+ // @ts-ignore: decorator
2132
+ @builtin
2133
+ export declare function extend_low_i16x8_u(a: v128): v128;
2134
+
2135
+ // @ts-ignore: decorator
2136
+ @builtin
2137
+ export declare function extend_high_i16x8_s(a: v128): v128;
2138
+
2139
+ // @ts-ignore: decorator
2140
+ @builtin
2141
+ export declare function extend_high_i16x8_u(a: v128): v128;
2142
+
2143
+ // @ts-ignore: decorator
2144
+ @builtin
2145
+ export declare function extadd_pairwise_i16x8_s(a: v128): v128;
2146
+
2147
+ // @ts-ignore: decorator
2148
+ @builtin
2149
+ export declare function extadd_pairwise_i16x8_u(a: v128): v128;
2150
+
2151
+ // @ts-ignore: decorator
2152
+ @builtin
2153
+ export declare function extmul_low_i16x8_s(a: v128, b: v128): v128;
2154
+
2155
+ // @ts-ignore: decorator
2156
+ @builtin
2157
+ export declare function extmul_low_i16x8_u(a: v128, b: v128): v128;
2158
+
2159
+ // @ts-ignore: decorator
2160
+ @builtin
2161
+ export declare function extmul_high_i16x8_s(a: v128, b: v128): v128;
2162
+
2163
+ // @ts-ignore: decorator
2164
+ @builtin
2165
+ export declare function extmul_high_i16x8_u(a: v128, b: v128): v128;
2166
+
2167
+ // @ts-ignore: decorator
2168
+ @builtin
2169
+ export declare function shuffle(a: v128, b: v128, l0: u8, l1: u8, l2: u8, l3: u8): v128;
2170
+
2171
+ // @ts-ignore: decorator
2172
+ @builtin
2173
+ export declare function relaxed_trunc_f32x4_s(a: v128): v128;
2174
+
2175
+ // @ts-ignore: decorator
2176
+ @builtin
2177
+ export declare function relaxed_trunc_f32x4_u(a: v128): v128;
2178
+
2179
+ // @ts-ignore: decorator
2180
+ @builtin
2181
+ export declare function relaxed_trunc_f64x2_s_zero(a: v128): v128;
2182
+
2183
+ // @ts-ignore: decorator
2184
+ @builtin
2185
+ export declare function relaxed_trunc_f64x2_u_zero(a: v128): v128;
2186
+
2187
+ // @ts-ignore: decorator
2188
+ @builtin
2189
+ export declare function relaxed_laneselect(a: v128, b: v128, m: v128): v128;
2190
+
2191
+ // @ts-ignore: decorator
2192
+ @builtin
2193
+ export declare function relaxed_dot_i8x16_i7x16_add_s(a: v128, b: v128, c: v128): v128;
2194
+ }
2195
+
2196
+ // @ts-ignore: decorator
2197
+ @builtin
2198
+ export declare function i64x2(a: i64, b: i64): v128;
2199
+
2200
+ export namespace i64x2 {
2201
+
2202
+ // @ts-ignore: decorator
2203
+ @builtin
2204
+ export declare function splat(x: i64): v128;
2205
+
2206
+ // @ts-ignore: decorator
2207
+ @builtin
2208
+ export declare function extract_lane(x: v128, idx: u8): i64;
2209
+
2210
+ // @ts-ignore: decorator
2211
+ @builtin
2212
+ export declare function replace_lane(x: v128, idx: u8, value: i64): v128;
2213
+
2214
+ // @ts-ignore: decorator
2215
+ @builtin
2216
+ export declare function add(a: v128, b: v128): v128;
2217
+
2218
+ // @ts-ignore: decorator
2219
+ @builtin
2220
+ export declare function sub(a: v128, b: v128): v128;
2221
+
2222
+ // @ts-ignore: decorator
2223
+ @builtin
2224
+ export declare function mul(a: v128, b: v128): v128;
2225
+
2226
+ // @ts-ignore: decorator
2227
+ @builtin
2228
+ export declare function abs(a: v128): v128;
2229
+
2230
+ // @ts-ignore: decorator
2231
+ @builtin
2232
+ export declare function neg(a: v128): v128;
2233
+
2234
+ // @ts-ignore: decorator
2235
+ @builtin
2236
+ export declare function shl(a: v128, b: i32): v128;
2237
+
2238
+ // @ts-ignore: decorator
2239
+ @builtin
2240
+ export declare function shr_s(a: v128, b: i32): v128;
2241
+
2242
+ // @ts-ignore: decorator
2243
+ @builtin
2244
+ export declare function shr_u(a: v128, b: i32): v128;
2245
+
2246
+ // @ts-ignore: decorator
2247
+ @builtin
2248
+ export declare function all_true(a: v128): bool;
2249
+
2250
+ // @ts-ignore: decorator
2251
+ @builtin
2252
+ export declare function bitmask(a: v128): i32;
2253
+
2254
+ // @ts-ignore: decorator
2255
+ @builtin
2256
+ export declare function eq(a: v128, b: v128): v128;
2257
+
2258
+ // @ts-ignore: decorator
2259
+ @builtin
2260
+ export declare function ne(a: v128, b: v128): v128;
2261
+
2262
+ // @ts-ignore: decorator
2263
+ @builtin
2264
+ export declare function lt_s(a: v128, b: v128): v128;
2265
+
2266
+ // @ts-ignore: decorator
2267
+ @builtin
2268
+ export declare function le_s(a: v128, b: v128): v128;
2269
+
2270
+ // @ts-ignore: decorator
2271
+ @builtin
2272
+ export declare function gt_s(a: v128, b: v128): v128;
2273
+
2274
+ // @ts-ignore: decorator
2275
+ @builtin
2276
+ export declare function ge_s(a: v128, b: v128): v128;
2277
+
2278
+ // @ts-ignore: decorator
2279
+ @builtin
2280
+ export declare function extend_low_i32x4_s(a: v128): v128;
2281
+
2282
+ // @ts-ignore: decorator
2283
+ @builtin
2284
+ export declare function extend_low_i32x4_u(a: v128): v128;
2285
+
2286
+ // @ts-ignore: decorator
2287
+ @builtin
2288
+ export declare function extend_high_i32x4_s(a: v128): v128;
2289
+
2290
+ // @ts-ignore: decorator
2291
+ @builtin
2292
+ export declare function extend_high_i32x4_u(a: v128): v128;
2293
+
2294
+ // @ts-ignore: decorator
2295
+ @builtin
2296
+ export declare function extmul_low_i32x4_s(a: v128, b: v128): v128;
2297
+
2298
+ // @ts-ignore: decorator
2299
+ @builtin
2300
+ export declare function extmul_low_i32x4_u(a: v128, b: v128): v128;
2301
+
2302
+ // @ts-ignore: decorator
2303
+ @builtin
2304
+ export declare function extmul_high_i32x4_s(a: v128, b: v128): v128;
2305
+
2306
+ // @ts-ignore: decorator
2307
+ @builtin
2308
+ export declare function extmul_high_i32x4_u(a: v128, b: v128): v128;
2309
+
2310
+ // @ts-ignore: decorator
2311
+ @builtin
2312
+ export declare function shuffle(a: v128, b: v128, l0: u8, l1: u8): v128;
2313
+
2314
+ // @ts-ignore: decorator
2315
+ @builtin
2316
+ export declare function relaxed_laneselect(a: v128, b: v128, m: v128): v128;
2317
+ }
2318
+
2319
+ // @ts-ignore: decorator
2320
+ @builtin
2321
+ export declare function f32x4(a: f32, b: f32, c: f32, d: f32): v128;
2322
+
2323
+ export namespace f32x4 {
2324
+
2325
+ // @ts-ignore: decorator
2326
+ @builtin
2327
+ export declare function splat(x: f32): v128;
2328
+
2329
+ // @ts-ignore: decorator
2330
+ @builtin
2331
+ export declare function extract_lane(x: v128, idx: u8): f32;
2332
+
2333
+ // @ts-ignore: decorator
2334
+ @builtin
2335
+ export declare function replace_lane(x: v128, idx: u8, value: f32): v128;
2336
+
2337
+ // @ts-ignore: decorator
2338
+ @builtin
2339
+ export declare function add(a: v128, b: v128): v128;
2340
+
2341
+ // @ts-ignore: decorator
2342
+ @builtin
2343
+ export declare function sub(a: v128, b: v128): v128;
2344
+
2345
+ // @ts-ignore: decorator
2346
+ @builtin
2347
+ export declare function mul(a: v128, b: v128): v128;
2348
+
2349
+ // @ts-ignore: decorator
2350
+ @builtin
2351
+ export declare function div(a: v128, b: v128): v128;
2352
+
2353
+ // @ts-ignore: decorator
2354
+ @builtin
2355
+ export declare function neg(a: v128): v128;
2356
+
2357
+ // @ts-ignore: decorator
2358
+ @builtin
2359
+ export declare function min(a: v128, b: v128): v128;
2360
+
2361
+ // @ts-ignore: decorator
2362
+ @builtin
2363
+ export declare function max(a: v128, b: v128): v128;
2364
+
2365
+ // @ts-ignore: decorator
2366
+ @builtin
2367
+ export declare function pmin(a: v128, b: v128): v128;
2368
+
2369
+ // @ts-ignore: decorator
2370
+ @builtin
2371
+ export declare function pmax(a: v128, b: v128): v128;
2372
+
2373
+ // @ts-ignore: decorator
2374
+ @builtin
2375
+ export declare function abs(a: v128): v128;
2376
+
2377
+ // @ts-ignore: decorator
2378
+ @builtin
2379
+ export declare function sqrt(a: v128): v128;
2380
+
2381
+ // @ts-ignore: decorator
2382
+ @builtin
2383
+ export declare function ceil(a: v128): v128;
2384
+
2385
+ // @ts-ignore: decorator
2386
+ @builtin
2387
+ export declare function floor(a: v128): v128;
2388
+
2389
+ // @ts-ignore: decorator
2390
+ @builtin
2391
+ export declare function trunc(a: v128): v128;
2392
+
2393
+ // @ts-ignore: decorator
2394
+ @builtin
2395
+ export declare function nearest(a: v128): v128;
2396
+
2397
+ // @ts-ignore: decorator
2398
+ @builtin
2399
+ export declare function eq(a: v128, b: v128): v128;
2400
+
2401
+ // @ts-ignore: decorator
2402
+ @builtin
2403
+ export declare function ne(a: v128, b: v128): v128;
2404
+
2405
+ // @ts-ignore: decorator
2406
+ @builtin
2407
+ export declare function lt(a: v128, b: v128): v128;
2408
+
2409
+ // @ts-ignore: decorator
2410
+ @builtin
2411
+ export declare function le(a: v128, b: v128): v128;
2412
+
2413
+ // @ts-ignore: decorator
2414
+ @builtin
2415
+ export declare function gt(a: v128, b: v128): v128;
2416
+
2417
+ // @ts-ignore: decorator
2418
+ @builtin
2419
+ export declare function ge(a: v128, b: v128): v128;
2420
+
2421
+ // @ts-ignore: decorator
2422
+ @builtin
2423
+ export declare function convert_i32x4_s(a: v128): v128;
2424
+
2425
+ // @ts-ignore: decorator
2426
+ @builtin
2427
+ export declare function convert_i32x4_u(a: v128): v128;
2428
+
2429
+ // @ts-ignore: decorator
2430
+ @builtin
2431
+ export declare function demote_f64x2_zero(a: v128): v128;
2432
+
2433
+ // @ts-ignore: decorator
2434
+ @builtin
2435
+ export declare function shuffle(a: v128, b: v128, l0: u8, l1: u8, l2: u8, l3: u8): v128;
2436
+
2437
+ // @ts-ignore: decorator
2438
+ @builtin
2439
+ export declare function relaxed_madd(a: v128, b: v128, c: v128): v128;
2440
+
2441
+ // @ts-ignore: decorator
2442
+ @builtin
2443
+ export declare function relaxed_nmadd(a: v128, b: v128, c: v128): v128;
2444
+
2445
+ // @ts-ignore: decorator
2446
+ @builtin
2447
+ export declare function relaxed_min(a: v128, b: v128): v128;
2448
+
2449
+ // @ts-ignore: decorator
2450
+ @builtin
2451
+ export declare function relaxed_max(a: v128, b: v128): v128;
2452
+ }
2453
+
2454
+ // @ts-ignore: decorator
2455
+ @builtin
2456
+ export declare function f64x2(a: f64, b: f64): v128;
2457
+
2458
+ export namespace f64x2 {
2459
+
2460
+ // @ts-ignore: decorator
2461
+ @builtin
2462
+ export declare function splat(x: f64): v128;
2463
+
2464
+ // @ts-ignore: decorator
2465
+ @builtin
2466
+ export declare function extract_lane(x: v128, idx: u8): f64;
2467
+
2468
+ // @ts-ignore: decorator
2469
+ @builtin
2470
+ export declare function replace_lane(x: v128, idx: u8, value: f64): v128;
2471
+
2472
+ // @ts-ignore: decorator
2473
+ @builtin
2474
+ export declare function add(a: v128, b: v128): v128;
2475
+
2476
+ // @ts-ignore: decorator
2477
+ @builtin
2478
+ export declare function sub(a: v128, b: v128): v128;
2479
+
2480
+ // @ts-ignore: decorator
2481
+ @builtin
2482
+ export declare function mul(a: v128, b: v128): v128;
2483
+
2484
+ // @ts-ignore: decorator
2485
+ @builtin
2486
+ export declare function div(a: v128, b: v128): v128;
2487
+
2488
+ // @ts-ignore: decorator
2489
+ @builtin
2490
+ export declare function neg(a: v128): v128;
2491
+
2492
+ // @ts-ignore: decorator
2493
+ @builtin
2494
+ export declare function min(a: v128, b: v128): v128;
2495
+
2496
+ // @ts-ignore: decorator
2497
+ @builtin
2498
+ export declare function max(a: v128, b: v128): v128;
2499
+
2500
+ // @ts-ignore: decorator
2501
+ @builtin
2502
+ export declare function pmin(a: v128, b: v128): v128;
2503
+
2504
+ // @ts-ignore: decorator
2505
+ @builtin
2506
+ export declare function pmax(a: v128, b: v128): v128;
2507
+
2508
+ // @ts-ignore: decorator
2509
+ @builtin
2510
+ export declare function abs(a: v128): v128;
2511
+
2512
+ // @ts-ignore: decorator
2513
+ @builtin
2514
+ export declare function sqrt(a: v128): v128;
2515
+
2516
+ // @ts-ignore: decorator
2517
+ @builtin
2518
+ export declare function ceil(a: v128): v128;
2519
+
2520
+ // @ts-ignore: decorator
2521
+ @builtin
2522
+ export declare function floor(a: v128): v128;
2523
+
2524
+ // @ts-ignore: decorator
2525
+ @builtin
2526
+ export declare function trunc(a: v128): v128;
2527
+
2528
+ // @ts-ignore: decorator
2529
+ @builtin
2530
+ export declare function nearest(a: v128): v128;
2531
+
2532
+ // @ts-ignore: decorator
2533
+ @builtin
2534
+ export declare function eq(a: v128, b: v128): v128;
2535
+
2536
+ // @ts-ignore: decorator
2537
+ @builtin
2538
+ export declare function ne(a: v128, b: v128): v128;
2539
+
2540
+ // @ts-ignore: decorator
2541
+ @builtin
2542
+ export declare function lt(a: v128, b: v128): v128;
2543
+
2544
+ // @ts-ignore: decorator
2545
+ @builtin
2546
+ export declare function le(a: v128, b: v128): v128;
2547
+
2548
+ // @ts-ignore: decorator
2549
+ @builtin
2550
+ export declare function gt(a: v128, b: v128): v128;
2551
+
2552
+ // @ts-ignore: decorator
2553
+ @builtin
2554
+ export declare function ge(a: v128, b: v128): v128;
2555
+
2556
+ // @ts-ignore: decorator
2557
+ @builtin
2558
+ export declare function convert_low_i32x4_s(a: v128): v128;
2559
+
2560
+ // @ts-ignore: decorator
2561
+ @builtin
2562
+ export declare function convert_low_i32x4_u(a: v128): v128;
2563
+
2564
+ // @ts-ignore: decorator
2565
+ @builtin
2566
+ export declare function promote_low_f32x4(a: v128): v128;
2567
+
2568
+ // @ts-ignore: decorator
2569
+ @builtin
2570
+ export declare function shuffle(a: v128, b: v128, l0: u8, l1: u8): v128;
2571
+
2572
+ // @ts-ignore: decorator
2573
+ @builtin
2574
+ export declare function relaxed_madd(a: v128, b: v128, c: v128): v128;
2575
+
2576
+ // @ts-ignore: decorator
2577
+ @builtin
2578
+ export declare function relaxed_nmadd(a: v128, b: v128, c: v128): v128;
2579
+
2580
+ // @ts-ignore: decorator
2581
+ @builtin
2582
+ export declare function relaxed_min(a: v128, b: v128): v128;
2583
+
2584
+ // @ts-ignore: decorator
2585
+ @builtin
2586
+ export declare function relaxed_max(a: v128, b: v128): v128;
2587
+ }
2588
+
2589
+ @final
2590
+ export abstract class i31 { // FIXME: usage of 'new' requires a class :(
2591
+
2592
+ // @ts-ignore: decorator
2593
+ @builtin
2594
+ static new(value: i32): i31ref { return changetype<i31ref>(unreachable()); }
2595
+
2596
+ // @ts-ignore: decorator
2597
+ @builtin
2598
+ static get(i31expr: i31ref): i32 { return unreachable(); }
2599
+ }
2600
+
2601
+ /* eslint-disable @typescript-eslint/no-unused-vars */
2602
+
2603
+ // @ts-ignore: decorator
2604
+ @external("env", "abort")
2605
+ @external.js("throw Error(`${message} in ${fileName}:${lineNumber}:${columnNumber}`);")
2606
+ declare function __abort_impl(
2607
+ message?: string | null,
2608
+ fileName?: string | null,
2609
+ lineNumber?: u32,
2610
+ columnNumber?: u32
2611
+ ): void;
2612
+
2613
+ // When exception-handling is enabled, abort throws an Error that can be caught.
2614
+ // When disabled, it calls the external abort function (host implementation).
2615
+ function abort(
2616
+ message: string | null = null,
2617
+ fileName: string | null = null,
2618
+ lineNumber: u32 = 0,
2619
+ columnNumber: u32 = 0
2620
+ ): void {
2621
+ if (ASC_FEATURE_EXCEPTION_HANDLING) {
2622
+ let fullMessage = message ? message : "abort";
2623
+ if (fileName) {
2624
+ fullMessage += " in " + fileName + ":" + lineNumber.toString() + ":" + columnNumber.toString();
2625
+ }
2626
+ throw new Error(fullMessage);
2627
+ } else {
2628
+ __abort_impl(message, fileName, lineNumber, columnNumber);
2629
+ }
2630
+ }
2631
+
2632
+ // @ts-ignore: decorator
2633
+ @external("env", "trace")
2634
+ @external.js("console.log(message, ...[a0, a1, a2, a3, a4].slice(0, n));")
2635
+ declare function trace(
2636
+ message: string,
2637
+ n?: i32,
2638
+ a0?: f64,
2639
+ a1?: f64,
2640
+ a2?: f64,
2641
+ a3?: f64,
2642
+ a4?: f64
2643
+ ): void;
2644
+
2645
+ // @ts-ignore: decorator
2646
+ @external("env", "seed")
2647
+ @external.js("return Date.now() * Math.random();")
2648
+ declare function seed(): f64;
2649
+
2650
+ /* eslint-enable @typescript-eslint/no-unused-vars */