CMakeLists.txt | 4 +- doc/langref.html.in | 5 +- lib/std/Progress.zig | 135 +- lib/std/Thread.zig | 64 +- lib/std/array_list.zig | 19 +- lib/std/atomic.zig | 38 +- lib/std/atomic/Atomic.zig | 88 +- lib/std/hash/auto_hash.zig | 5 +- lib/std/json.zig | 8 +- lib/std/math/hypot.zig | 2 +- lib/std/meta/trait.zig | 5 +- lib/std/os.zig | 1 - lib/std/unicode.zig | 45 +- lib/std/zig/fmt.zig | 1 + src/Air.zig | 546 ++++++ src/AstGen.zig | 227 +-- src/Compilation.zig | 144 +- src/Liveness.zig | 602 ++++++ src/Module.zig | 651 +++---- src/Sema.zig | 3216 +++++++++++++++++--------------- src/Zir.zig | 66 +- src/air.zig | 1185 ------------ src/codegen.zig | 2312 +++++++++++++---------- src/codegen/c.zig | 712 ++++--- src/codegen/llvm.zig | 473 +++-- src/codegen/spirv.zig | 492 ++--- src/codegen/wasm.zig | 535 +++--- src/link.zig | 34 +- src/link/C.zig | 28 +- src/link/Coff.zig | 61 +- src/link/Elf.zig | 562 +++--- src/link/MachO.zig | 159 +- src/link/Plan9.zig | 385 ++-- src/link/SpirV.zig | 38 +- src/link/Wasm.zig | 84 +- src/liveness.zig | 254 --- src/main.zig | 1 + src/print_air.zig | 413 ++++ src/register_manager.zig | 77 +- src/stage1/astgen.cpp | 3 - src/stage1/ir.cpp | 20 +- src/stage1/stage1.h | 1 + src/stage1/target.cpp | 6 + src/test.zig | 11 +- src/translate_c.zig | 4 - src/value.zig | 6 +- test/behavior/bugs/3779.zig | 18 + test/run_translated_c.zig | 12 + test/stage2/wasm.zig | 122 +- test/translate_c.zig | 7 +- 50 files changed, 7644 insertions(+), 6243 deletions(-)