blaise/compiler
Graeme Geldenhuys d56bdbf84f feat(backend): default to the native backend; QBE is now opt-in
Flip the compiler's default --backend from qbe to native.  Native has full
feature parity with QBE (the v0.11.0 cycle's 116 fixes plus the dual-backend
e2e harness brought them level), self-hosts, and gives no external codegen
dependency, source-level debugging, and a path to cross-compilation — so it
is the right default to exercise everywhere.

QBE stays fully supported via --backend qbe and remains the cold-bootstrap
root: --emit-ir still routes to QBE regardless of the default (PickTopDriver
ignores --backend for emit modes), so scripts/rolling-bootstrap.sh,
fixpoint.sh, and CI — all of which pass --emit-ir explicitly — are unaffected
by this change.  The only behaviour change is that a plain
'blaise --source X --output Y' (and a plain 'make' in runtime/) now uses the
native backend.

Flipping the default surfaced and fixed a real native gap first (the
unit-to-.o duplicate-system-defs link collision, previous commit); the full
suite is green with the TestRunner built by BOTH a QBE-built and a
native-built compiler, and all three fixpoints pass.
2026-06-18 18:43:23 +01:00
..
src feat(backend): default to the native backend; QBE is now opt-in 2026-06-18 18:43:23 +01:00
project.xml Revert defaulting the compiler to Native backend. 2026-06-11 22:53:26 +01:00