@yabgu_gm/tensionscript 0.0.0-stage → 0.10.0

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