doc/langref.html.in | 24 +++- lib/compiler/Maker/WebServer.zig | 2 +- lib/compiler_rt/limb64.zig | 3 +- lib/compiler_rt/udivmodei4.zig | 2 +- lib/fuzzer.zig | 2 +- lib/std/Random.zig | 2 +- lib/std/Target.zig | 2 +- lib/std/crypto/aes_gcm.zig | 4 +- lib/std/crypto/ascon.zig | 2 +- lib/std/crypto/ff.zig | 6 +- lib/std/crypto/pbkdf2.zig | 2 +- lib/std/crypto/sha2.zig | 2 +- lib/std/crypto/sha3.zig | 4 +- lib/std/debug.zig | 2 +- lib/std/enums.zig | 2 +- lib/std/hash/auto_hash.zig | 2 +- lib/std/math.zig | 17 +-- lib/std/math/big/int.zig | 77 ++++++++++++- lib/std/math/big/int_test.zig | 38 ++++++ lib/std/mem.zig | 6 +- lib/std/zig/AstGen.zig | 4 +- lib/std/zig/AstRlAnnotate.zig | 1 + lib/std/zig/BuiltinFn.zig | 8 ++ lib/std/zig/Zir.zig | 9 +- lib/zig.h | 32 ++++++ src/Air.zig | 17 ++- src/Air/Legalize.zig | 197 +++++++++++++++++++++++++++++++- src/Air/Liveness.zig | 2 + src/Air/Liveness/Verify.zig | 2 + src/Air/Verify.zig | 2 + src/Air/print.zig | 2 + src/InternPool.zig | 6 +- src/Sema.zig | 80 +++++++++++-- src/Sema/arith.zig | 72 +++++++++++- src/Type.zig | 6 +- src/codegen/aarch64/Select.zig | 22 ++-- src/codegen/c.zig | 2 + src/codegen/llvm/FuncGen.zig | 78 ++++++++++++- src/codegen/riscv64/CodeGen.zig | 5 +- src/codegen/sparc64/CodeGen.zig | 3 +- src/codegen/spirv/Assembler.zig | 2 +- src/codegen/spirv/Section.zig | 2 +- src/codegen/wasm/CodeGen.zig | 109 +++++++++++++++++- src/codegen/x86_64/CodeGen.zig | 17 ++- src/codegen/x86_64/Emit.zig | 2 +- src/link/Dwarf.zig | 6 +- src/main.zig | 3 +- src/print_zir.zig | 1 + stage1/zig.h | 32 ++++++ stage1/zig1.wasm | Bin 3197493 -> 3212254 bytes test/behavior/int128.zig | 1 + test/behavior/math.zig | 89 +++++++++++++++ test/behavior/vector.zig | 36 +++++- test/behavior/x86_64/binary.zig | 21 ++++ test/cases/compile_errors/signed_integer_division.zig | 2 +- 55 files changed, 974 insertions(+), 100 deletions(-)