lib/std/zig/Ast.zig | 54 ++- lib/std/zig/AstGen.zig | 113 +++++- lib/std/zig/Parse.zig | 26 +- lib/std/zig/Zir.zig | 14 +- src/Air.zig | 17 +- src/Air/types_resolved.zig | 4 +- src/Liveness.zig | 267 +++++++++----- src/Liveness/Verify.zig | 31 +- src/Sema.zig | 620 ++++++++++++++++++++++++-------- src/Value.zig | 1 + src/arch/aarch64/CodeGen.zig | 2 + src/arch/arm/CodeGen.zig | 2 + src/arch/riscv64/CodeGen.zig | 2 + src/arch/sparc64/CodeGen.zig | 2 + src/arch/wasm/CodeGen.zig | 2 + src/arch/x86_64/CodeGen.zig | 2 + src/codegen/c.zig | 127 +++++-- src/codegen/llvm.zig | 488 ++++++++++++++++++++----- src/print_air.zig | 3 +- src/print_zir.zig | 1 + test/behavior.zig | 1 + test/behavior/switch_loop.zig | 205 +++++++++++ 22 files changed, 1602 insertions(+), 382 deletions(-)