mirror of
https://github.com/fluencelabs/assemblyscript
synced 2025-06-12 06:21:29 +00:00
General cleanup (#525)
* Cleans up and trims the overly large builtins file by ~1600 lines * Properly propagate inline assembler-like argument types * Use https in examples * Reformat README
This commit is contained in:
@ -426,14 +426,14 @@
|
||||
i32.const 1
|
||||
i32.store
|
||||
i32.const 8
|
||||
i32.const 1
|
||||
i32.store8
|
||||
i64.const 1
|
||||
i64.store8
|
||||
i32.const 8
|
||||
i32.const 1
|
||||
i32.store16
|
||||
i64.const 1
|
||||
i64.store16
|
||||
i32.const 8
|
||||
i32.const 1
|
||||
i32.store
|
||||
i64.const 1
|
||||
i64.store32
|
||||
i32.const 8
|
||||
i64.const 1
|
||||
i64.store
|
||||
|
@ -274,6 +274,12 @@ sizeof<isize>();
|
||||
assert(sizeof<f32>() == 4);
|
||||
assert(sizeof<f64>() == 8);
|
||||
|
||||
assert(alignof<u8>() == 0);
|
||||
assert(alignof<u16>() == 1);
|
||||
assert(alignof<u32>() == 2);
|
||||
assert(alignof<u64>() == 3);
|
||||
assert(alignof<bool>() == 0);
|
||||
|
||||
class Foo<T> { a: T; b: T; }
|
||||
assert(offsetof<Foo<i32>>("a") == 0);
|
||||
assert(offsetof<Foo<i32>>("b") == 4);
|
||||
|
@ -1513,6 +1513,18 @@
|
||||
i32.const 0
|
||||
i32.eq
|
||||
i32.eqz
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 8
|
||||
i32.const 277
|
||||
i32.const 0
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
end
|
||||
i32.const 1
|
||||
i32.const 1
|
||||
i32.eq
|
||||
i32.eqz
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 8
|
||||
@ -1521,8 +1533,8 @@
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
end
|
||||
i32.const 4
|
||||
i32.const 4
|
||||
i32.const 2
|
||||
i32.const 2
|
||||
i32.eq
|
||||
i32.eqz
|
||||
if
|
||||
@ -1533,8 +1545,8 @@
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
end
|
||||
i32.const 0
|
||||
i32.const 0
|
||||
i32.const 3
|
||||
i32.const 3
|
||||
i32.eq
|
||||
i32.eqz
|
||||
if
|
||||
@ -1545,8 +1557,8 @@
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
end
|
||||
i32.const 2
|
||||
i32.const 2
|
||||
i32.const 0
|
||||
i32.const 0
|
||||
i32.eq
|
||||
i32.eqz
|
||||
if
|
||||
@ -1564,7 +1576,55 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 8
|
||||
i32.const 283
|
||||
i32.const 284
|
||||
i32.const 0
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
end
|
||||
i32.const 4
|
||||
i32.const 4
|
||||
i32.eq
|
||||
i32.eqz
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 8
|
||||
i32.const 285
|
||||
i32.const 0
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
end
|
||||
i32.const 0
|
||||
i32.const 0
|
||||
i32.eq
|
||||
i32.eqz
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 8
|
||||
i32.const 286
|
||||
i32.const 0
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
end
|
||||
i32.const 2
|
||||
i32.const 2
|
||||
i32.eq
|
||||
i32.eqz
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 8
|
||||
i32.const 287
|
||||
i32.const 0
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
end
|
||||
i32.const 0
|
||||
i32.const 0
|
||||
i32.eq
|
||||
i32.eqz
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 8
|
||||
i32.const 289
|
||||
i32.const 0
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -1576,7 +1636,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 8
|
||||
i32.const 284
|
||||
i32.const 290
|
||||
i32.const 0
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -1588,7 +1648,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 8
|
||||
i32.const 286
|
||||
i32.const 292
|
||||
i32.const 0
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -1606,7 +1666,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 8
|
||||
i32.const 287
|
||||
i32.const 293
|
||||
i32.const 0
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -1624,7 +1684,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 8
|
||||
i32.const 288
|
||||
i32.const 294
|
||||
i32.const 0
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -1645,7 +1705,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 8
|
||||
i32.const 289
|
||||
i32.const 295
|
||||
i32.const 0
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -1666,7 +1726,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 8
|
||||
i32.const 290
|
||||
i32.const 296
|
||||
i32.const 0
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -1687,7 +1747,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 8
|
||||
i32.const 291
|
||||
i32.const 297
|
||||
i32.const 0
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -1708,7 +1768,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 8
|
||||
i32.const 292
|
||||
i32.const 298
|
||||
i32.const 0
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -1728,7 +1788,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 8
|
||||
i32.const 293
|
||||
i32.const 299
|
||||
i32.const 0
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -1748,7 +1808,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 8
|
||||
i32.const 294
|
||||
i32.const 300
|
||||
i32.const 0
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -1764,7 +1824,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 8
|
||||
i32.const 307
|
||||
i32.const 313
|
||||
i32.const 0
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -1776,7 +1836,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 8
|
||||
i32.const 308
|
||||
i32.const 314
|
||||
i32.const 0
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -1792,7 +1852,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 8
|
||||
i32.const 309
|
||||
i32.const 315
|
||||
i32.const 0
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -1804,7 +1864,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 8
|
||||
i32.const 310
|
||||
i32.const 316
|
||||
i32.const 0
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -1816,7 +1876,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 8
|
||||
i32.const 311
|
||||
i32.const 317
|
||||
i32.const 0
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -1828,7 +1888,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 8
|
||||
i32.const 312
|
||||
i32.const 318
|
||||
i32.const 0
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -1840,7 +1900,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 8
|
||||
i32.const 313
|
||||
i32.const 319
|
||||
i32.const 0
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -1852,7 +1912,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 8
|
||||
i32.const 314
|
||||
i32.const 320
|
||||
i32.const 0
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -1864,7 +1924,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 8
|
||||
i32.const 316
|
||||
i32.const 322
|
||||
i32.const 0
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -1876,7 +1936,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 8
|
||||
i32.const 317
|
||||
i32.const 323
|
||||
i32.const 0
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -1888,7 +1948,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 8
|
||||
i32.const 318
|
||||
i32.const 324
|
||||
i32.const 0
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -1900,7 +1960,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 8
|
||||
i32.const 319
|
||||
i32.const 325
|
||||
i32.const 0
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -1912,7 +1972,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 8
|
||||
i32.const 320
|
||||
i32.const 326
|
||||
i32.const 0
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -1924,7 +1984,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 8
|
||||
i32.const 321
|
||||
i32.const 327
|
||||
i32.const 0
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -1936,7 +1996,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 8
|
||||
i32.const 322
|
||||
i32.const 328
|
||||
i32.const 0
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -1948,7 +2008,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 8
|
||||
i32.const 323
|
||||
i32.const 329
|
||||
i32.const 0
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -1960,7 +2020,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 8
|
||||
i32.const 324
|
||||
i32.const 330
|
||||
i32.const 0
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -1972,7 +2032,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 8
|
||||
i32.const 324
|
||||
i32.const 330
|
||||
i32.const 29
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -1984,7 +2044,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 8
|
||||
i32.const 325
|
||||
i32.const 331
|
||||
i32.const 0
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -1996,7 +2056,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 8
|
||||
i32.const 325
|
||||
i32.const 331
|
||||
i32.const 29
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -2008,7 +2068,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 8
|
||||
i32.const 327
|
||||
i32.const 333
|
||||
i32.const 0
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -2020,7 +2080,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 8
|
||||
i32.const 328
|
||||
i32.const 334
|
||||
i32.const 0
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -2032,7 +2092,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 8
|
||||
i32.const 329
|
||||
i32.const 335
|
||||
i32.const 0
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -2044,7 +2104,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 8
|
||||
i32.const 330
|
||||
i32.const 336
|
||||
i32.const 0
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -2056,7 +2116,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 8
|
||||
i32.const 331
|
||||
i32.const 337
|
||||
i32.const 0
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -2068,7 +2128,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 8
|
||||
i32.const 332
|
||||
i32.const 338
|
||||
i32.const 0
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -2080,7 +2140,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 8
|
||||
i32.const 334
|
||||
i32.const 340
|
||||
i32.const 0
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -2092,7 +2152,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 8
|
||||
i32.const 335
|
||||
i32.const 341
|
||||
i32.const 0
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -2104,7 +2164,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 8
|
||||
i32.const 336
|
||||
i32.const 342
|
||||
i32.const 0
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -2116,7 +2176,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 8
|
||||
i32.const 337
|
||||
i32.const 343
|
||||
i32.const 0
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -2128,7 +2188,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 8
|
||||
i32.const 338
|
||||
i32.const 344
|
||||
i32.const 0
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -2140,7 +2200,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 8
|
||||
i32.const 339
|
||||
i32.const 345
|
||||
i32.const 0
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -2297,14 +2357,14 @@
|
||||
i32.const 1
|
||||
i32.store
|
||||
i32.const 8
|
||||
i32.const 1
|
||||
i32.store8
|
||||
i64.const 1
|
||||
i64.store8
|
||||
i32.const 8
|
||||
i32.const 1
|
||||
i32.store16
|
||||
i64.const 1
|
||||
i64.store16
|
||||
i32.const 8
|
||||
i32.const 1
|
||||
i32.store
|
||||
i64.const 1
|
||||
i64.store32
|
||||
i32.const 8
|
||||
i64.const 1
|
||||
i64.store
|
||||
|
@ -99,65 +99,65 @@ function testAtomicAsm(): void {
|
||||
i32.atomic.store8(0, 1);
|
||||
i32.atomic.store16(0, 1);
|
||||
i32.atomic.store(0, 1);
|
||||
i64.atomic.store8(0, <i64>1);
|
||||
i64.atomic.store16(0, <i64>1);
|
||||
i64.atomic.store32(0, <i64>1);
|
||||
i64.atomic.store8(0, 1);
|
||||
i64.atomic.store16(0, 1);
|
||||
i64.atomic.store32(0, 1);
|
||||
i64.atomic.store(0, 1);
|
||||
|
||||
i32.atomic.rmw8.add_u(0, 1);
|
||||
i32.atomic.rmw16.add_u(0, 1);
|
||||
i32.atomic.rmw.add(0, 1);
|
||||
i64.atomic.rmw8.add_u(0, <i64>1);
|
||||
i64.atomic.rmw16.add_u(0, <i64>1);
|
||||
i64.atomic.rmw32.add_u(0, <i64>1);
|
||||
i64.atomic.rmw8.add_u(0, 1);
|
||||
i64.atomic.rmw16.add_u(0, 1);
|
||||
i64.atomic.rmw32.add_u(0, 1);
|
||||
i64.atomic.rmw.add(0, 1);
|
||||
|
||||
i32.atomic.rmw8.sub_u(0, 1);
|
||||
i32.atomic.rmw16.sub_u(0, 1);
|
||||
i32.atomic.rmw.sub(0, 1);
|
||||
i64.atomic.rmw8.sub_u(0, <i64>1);
|
||||
i64.atomic.rmw16.sub_u(0, <i64>1);
|
||||
i64.atomic.rmw32.sub_u(0, <i64>1);
|
||||
i64.atomic.rmw8.sub_u(0, 1);
|
||||
i64.atomic.rmw16.sub_u(0, 1);
|
||||
i64.atomic.rmw32.sub_u(0, 1);
|
||||
i64.atomic.rmw.sub(0, 1);
|
||||
|
||||
i32.atomic.rmw8.and_u(0, 1);
|
||||
i32.atomic.rmw16.and_u(0, 1);
|
||||
i32.atomic.rmw.and(0, 1);
|
||||
i64.atomic.rmw8.and_u(0, <i64>1);
|
||||
i64.atomic.rmw16.and_u(0, <i64>1);
|
||||
i64.atomic.rmw32.and_u(0, <i64>1);
|
||||
i64.atomic.rmw8.and_u(0, 1);
|
||||
i64.atomic.rmw16.and_u(0, 1);
|
||||
i64.atomic.rmw32.and_u(0, 1);
|
||||
i64.atomic.rmw.and(0, 1);
|
||||
|
||||
i32.atomic.rmw8.or_u(0, 1);
|
||||
i32.atomic.rmw16.or_u(0, 1);
|
||||
i32.atomic.rmw.or(0, 1);
|
||||
i64.atomic.rmw8.or_u(0, <i64>1);
|
||||
i64.atomic.rmw16.or_u(0, <i64>1);
|
||||
i64.atomic.rmw32.or_u(0, <i64>1);
|
||||
i64.atomic.rmw8.or_u(0, 1);
|
||||
i64.atomic.rmw16.or_u(0, 1);
|
||||
i64.atomic.rmw32.or_u(0, 1);
|
||||
i64.atomic.rmw.or(0, 1);
|
||||
|
||||
i32.atomic.rmw8.xor_u(0, 1);
|
||||
i32.atomic.rmw16.xor_u(0, 1);
|
||||
i32.atomic.rmw.xor(0, 1);
|
||||
i64.atomic.rmw8.xor_u(0, <i64>1);
|
||||
i64.atomic.rmw16.xor_u(0, <i64>1);
|
||||
i64.atomic.rmw32.xor_u(0, <i64>1);
|
||||
i64.atomic.rmw8.xor_u(0, 1);
|
||||
i64.atomic.rmw16.xor_u(0, 1);
|
||||
i64.atomic.rmw32.xor_u(0, 1);
|
||||
i64.atomic.rmw.xor(0, 1);
|
||||
|
||||
i32.atomic.rmw8.xchg_u(0, 1);
|
||||
i32.atomic.rmw16.xchg_u(0, 1);
|
||||
i32.atomic.rmw.xchg(0, 1);
|
||||
i64.atomic.rmw8.xchg_u(0, <i64>1);
|
||||
i64.atomic.rmw16.xchg_u(0, <i64>1);
|
||||
i64.atomic.rmw32.xchg_u(0, <i64>1);
|
||||
i64.atomic.rmw8.xchg_u(0, 1);
|
||||
i64.atomic.rmw16.xchg_u(0, 1);
|
||||
i64.atomic.rmw32.xchg_u(0, 1);
|
||||
i64.atomic.rmw.xchg(0, 1);
|
||||
|
||||
i32.atomic.rmw8.cmpxchg_u(0, 1, 2);
|
||||
i32.atomic.rmw16.cmpxchg_u(0, 1, 2);
|
||||
i32.atomic.rmw.cmpxchg(0, 1, 2);
|
||||
i64.atomic.rmw8.cmpxchg_u(0, <i64>1, 2);
|
||||
i64.atomic.rmw16.cmpxchg_u(0, <i64>1, 2);
|
||||
i64.atomic.rmw32.cmpxchg_u(0, <i64>1, 2);
|
||||
i64.atomic.rmw8.cmpxchg_u(0, 1, 2);
|
||||
i64.atomic.rmw16.cmpxchg_u(0, 1, 2);
|
||||
i64.atomic.rmw32.cmpxchg_u(0, 1, 2);
|
||||
i64.atomic.rmw.cmpxchg(0, 1, 2);
|
||||
|
||||
// i32.atomic.wait(0, 0, -1);
|
||||
|
Reference in New Issue
Block a user