Spec M17 — machine interface split and the x86-64 machine (Linux x64)

Goal: a second instruction set without touching stage0. Two steps, each gated by make check.

Step A — split gen_lower into a target-independent walker and a machine interface #

Today src/gen_arm64.mc mixes the AST walk (frames, depth stack, labels, calls, name resolution) with AArch64 instruction selection (I_* opcodes, x9..x15 depth registers, x16/x17 scratch). After the split:

Step B — the x86-64 machine (src/machine_x86_64.mc) for Linux (SysV ABI) #

Verification #

Edit this page