← board

riscv32 hosted: exception machinery (raise/try) — last wall before chess

Problem

With the riscv32 hosted leg brought up (writeln/read/eof/exit, syscalls, set ops, in-operator, Int64 neg/l2d, stack args — 2026-07-02), the ONLY remaining compile error for the stackless chess demo on hosted riscv32 is:

error: target riscv32: unsupported node in IR codegen: raise

exception_emit.inc's riscv32/xtensa branch is a stub (ExcRaise = EmitExit(1)), and the backend lowers none of IR_EXC_ENTER/LEAVE/RAISE/EXC_STORE/EXC_MATCH/ EXC_CLEAR. sysutils raises (EConvertError etc.), so anything pulling sysutils is walled.

Scope

Log