agra
e5586f61b8
issue 0152 RESOLVED: byte-promote sub-byte (Atomic(bool)) atomic load/store
...
LLVM rejects a sub-byte atomic memory access (must be byte-sized), so
Atomic(bool) — bool lowers to i1 — failed verification on load/store. The
atomic emitters in src/backend/llvm/ops.zig now perform a sub-byte access in
its byte storage type (i8) and trunc/zext the value at the boundary (new
atomicByteType helper: i8 for .bool, null otherwise). rmw/cmpxchg are left
as-is on purpose — a bool rmw/CAS is rejected at the sx level (integer-only),
so a sub-byte element never reaches those emitters.
Regression test examples/1705-atomics-bool-byte-promoted.sx. Suite green 729/0.
Unblocks Future.canceled: Atomic(bool) in the B1.2 async layer.
2026-06-21 05:42:48 +03:00
..
2026-06-15 11:18:35 +03:00
2026-06-15 11:18:35 +03:00
2026-06-15 11:14:35 +03:00
2026-06-12 09:31:53 +03:00
2026-06-12 09:31:53 +03:00
2026-06-15 11:18:35 +03:00
2026-06-15 11:18:35 +03:00
2026-06-12 09:31:53 +03:00
2026-06-12 09:31:53 +03:00
2026-06-12 09:31:53 +03:00
2026-06-12 09:31:53 +03:00
2026-06-15 11:18:35 +03:00
2026-05-27 21:44:39 +03:00
2026-06-15 11:18:35 +03:00
2026-06-12 09:31:53 +03:00
2026-06-12 09:31:53 +03:00
2026-06-12 09:31:53 +03:00
2026-06-12 09:31:53 +03:00
2026-06-15 11:18:35 +03:00
2026-06-12 09:31:53 +03:00
2026-06-01 16:47:51 +03:00
2026-06-12 09:31:53 +03:00
2026-06-12 09:31:53 +03:00
2026-06-12 09:31:53 +03:00
2026-06-12 09:31:53 +03:00
2026-06-12 09:31:53 +03:00
2026-06-15 11:18:35 +03:00
2026-06-12 09:31:53 +03:00
2026-06-12 09:31:53 +03:00
2026-06-12 09:31:53 +03:00
2026-06-15 11:18:35 +03:00
2026-06-12 09:31:53 +03:00
2026-06-12 09:31:53 +03:00
2026-06-15 11:18:35 +03:00
2026-06-12 09:31:53 +03:00
2026-06-12 09:31:53 +03:00
2026-06-15 11:18:35 +03:00
2026-06-12 09:31:53 +03:00
2026-06-15 11:18:35 +03:00
2026-06-12 09:31:53 +03:00
2026-06-04 02:00:13 +03:00
2026-06-12 09:31:53 +03:00
2026-06-12 09:31:53 +03:00
2026-06-12 09:31:53 +03:00
2026-06-12 09:31:53 +03:00
2026-06-12 09:31:53 +03:00
2026-06-12 09:31:53 +03:00
2026-06-12 09:31:53 +03:00
2026-06-05 01:32:35 +03:00
2026-06-12 09:31:53 +03:00
2026-06-12 09:31:53 +03:00
2026-06-15 11:18:35 +03:00
2026-06-12 09:31:53 +03:00
2026-06-04 17:04:41 +03:00
2026-06-12 09:31:53 +03:00
2026-06-12 09:31:53 +03:00
2026-06-12 09:31:53 +03:00
2026-06-12 09:31:53 +03:00
2026-06-05 20:48:49 +03:00
2026-06-12 09:31:53 +03:00
2026-06-12 12:35:20 +03:00
2026-06-05 23:33:22 +03:00
2026-06-15 11:18:35 +03:00
2026-06-12 09:31:53 +03:00
2026-06-15 11:18:35 +03:00
2026-06-12 09:31:53 +03:00
2026-06-09 22:16:47 +03:00
2026-06-12 09:31:53 +03:00
2026-06-12 09:31:53 +03:00
2026-06-12 09:31:53 +03:00
2026-06-12 09:31:53 +03:00
2026-06-12 09:31:53 +03:00
2026-06-12 09:31:53 +03:00
2026-06-15 11:18:35 +03:00
2026-06-12 09:31:53 +03:00
2026-06-12 09:31:53 +03:00
2026-06-12 09:31:53 +03:00
2026-06-12 09:31:53 +03:00
2026-06-12 09:31:53 +03:00
2026-06-12 09:31:53 +03:00
2026-06-15 11:18:35 +03:00
2026-06-12 09:31:53 +03:00
2026-06-15 11:18:35 +03:00
2026-06-12 09:31:53 +03:00
2026-06-19 15:32:07 +03:00
2026-06-12 09:31:53 +03:00
2026-06-12 09:31:53 +03:00
2026-06-15 11:18:35 +03:00
2026-06-12 13:36:54 +03:00
2026-06-15 11:18:35 +03:00
2026-06-12 21:52:11 +03:00
2026-06-13 18:55:41 +03:00
2026-06-13 18:55:41 +03:00
2026-06-13 13:41:30 +03:00
2026-06-13 13:41:30 +03:00
2026-06-13 18:55:10 +03:00
2026-06-13 21:18:40 +03:00
2026-06-15 20:21:25 +03:00
2026-06-16 06:29:36 +03:00
2026-06-16 22:24:31 +03:00
2026-06-17 04:31:38 +03:00
2026-06-19 20:40:21 +03:00
2026-06-18 10:47:36 +03:00
2026-06-18 19:42:42 +03:00
2026-06-20 14:09:41 +03:00
2026-06-20 18:54:04 +03:00
2026-06-20 18:54:04 +03:00
2026-06-21 05:25:39 +03:00
2026-06-21 05:42:48 +03:00