From 72dbcbe24fc118d2ae61cced300cc8a56bcd738a Mon Sep 17 00:00:00 2001 From: m5r Date: Sun, 23 Aug 2026 12:26:05 +0200 Subject: [PATCH] ci: run the aarch64 suite with one qemu insn per tb, tcg optimization falsely trips the ubsan pointer check --- .gitea/workflows/gates.yml | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/.gitea/workflows/gates.yml b/.gitea/workflows/gates.yml index 49d4d4a..f2a0333 100644 --- a/.gitea/workflows/gates.yml +++ b/.gitea/workflows/gates.yml @@ -101,8 +101,15 @@ jobs: sudo apt-get update -qq sudo apt-get install -qq -y --no-install-recommends qemu-user + # QEMU_ONE_INSN_PER_TB: qemu's TCG with translation-block optimization + # (observed on 8.2 and 11.1) takes the panic branch of Zig's UBSan + # pointer-overflow check on a valid in-bounds pointer (subs+b.cc is + # correct AArch64; real silicon and one-insn-per-tb both pass). The + # false abort makes qemu write a ~380 MB guest core per crashing test + # and the respawn loop ran the job into the runner's 3 h kill. ~10x + # slower, correct by construction. - name: Run test suite under qemu (plain suite, no -Dintegration) - run: zig build test-aarch64 -fqemu + run: QEMU_ONE_INSN_PER_TB=1 zig build test-aarch64 -fqemu frontend: # The light runner, a second act_runner at capacity 1 that advertises only