lib/std/testing.zig | 8 +- src/Air.zig | 14 +- src/AstGen.zig | 12 +- src/Liveness.zig | 28 ++- src/Sema.zig | 314 +++++++++++++++++++++++++------- src/arch/aarch64/CodeGen.zig | 32 +++- src/arch/arm/CodeGen.zig | 30 +++ src/arch/riscv64/CodeGen.zig | 30 +++ src/arch/wasm/CodeGen.zig | 23 +++ src/arch/x86_64/CodeGen.zig | 32 +++- src/codegen/c.zig | 35 ++++ src/codegen/llvm.zig | 74 ++++++-- src/codegen/llvm/bindings.zig | 3 + src/print_air.zig | 16 ++ src/type.zig | 5 +- src/value.zig | 65 +++++++ test/behavior/math.zig | 73 ++++++++ test/behavior/math_stage1.zig | 40 ---- test/behavior/popcount.zig | 2 +- 19 files changed, 707 insertions(+), 129 deletions(-)