CMakeLists.txt | 34 +- doc/langref.html.in | 16 +- lib/std/fmt/errol.zig | 8 +- lib/std/json.zig | 2 +- lib/std/math.zig | 31 +- lib/std/math/__rem_pio2.zig | 198 --------- lib/std/math/__rem_pio2_large.zig | 510 ---------------------- lib/std/math/__rem_pio2f.zig | 70 --- lib/std/math/__trig.zig | 273 ------------ lib/std/math/acos.zig | 8 +- lib/std/math/acosh.zig | 12 +- lib/std/math/asin.zig | 8 +- lib/std/math/asinh.zig | 12 +- lib/std/math/atan.zig | 4 +- lib/std/math/atan2.zig | 4 +- lib/std/math/ceil.zig | 170 -------- lib/std/math/complex.zig | 2 +- lib/std/math/complex/atan.zig | 4 +- lib/std/math/complex/cosh.zig | 24 +- lib/std/math/complex/exp.zig | 20 +- lib/std/math/complex/ldexp.zig | 12 +- lib/std/math/complex/log.zig | 2 +- lib/std/math/complex/sinh.zig | 24 +- lib/std/math/complex/sqrt.zig | 18 +- lib/std/math/complex/tanh.zig | 20 +- lib/std/math/cos.zig | 154 ------- lib/std/math/cosh.zig | 4 +- lib/std/math/exp.zig | 217 ---------- lib/std/math/exp2.zig | 465 -------------------- lib/std/math/expo2.zig | 4 +- lib/std/math/fabs.zig | 45 -- lib/std/math/floor.zig | 221 ---------- lib/std/math/fma.zig | 339 --------------- lib/std/math/hypot.zig | 4 +- lib/std/math/ln.zig | 171 +------- lib/std/math/log.zig | 12 +- lib/std/math/log10.zig | 196 +-------- lib/std/math/log2.zig | 184 +------- lib/std/math/nan.zig | 31 +- lib/std/math/pow.zig | 12 +- lib/std/math/round.zig | 185 -------- lib/std/math/sin.zig | 168 -------- lib/std/math/tan.zig | 140 ------ lib/std/math/trunc.zig | 141 ------- lib/std/rand/ziggurat.zig | 16 +- lib/std/special/c.zig | 591 -------------------------- lib/std/special/compiler_rt.zig | 155 +++---- lib/std/special/compiler_rt/ceil.zig | 154 +++++++ lib/std/special/compiler_rt/cos.zig | 144 +++++++ lib/std/special/compiler_rt/divxf3_test.zig | 6 +- lib/std/special/compiler_rt/exp.zig | 213 ++++++++++ lib/std/special/compiler_rt/exp2.zig | 461 ++++++++++++++++++++ lib/std/special/compiler_rt/fabs.zig | 29 ++ lib/std/special/compiler_rt/floor.zig | 198 +++++++++ lib/std/special/compiler_rt/fma.zig | 327 ++++++++++++++ lib/std/special/compiler_rt/fmax.zig | 43 ++ lib/std/special/compiler_rt/fmin.zig | 43 ++ lib/std/special/compiler_rt/fmod.zig | 351 ++++++++++++++++ lib/std/special/compiler_rt/fmodq.zig | 126 ------ lib/std/special/compiler_rt/fmodq_test.zig | 20 +- lib/std/special/compiler_rt/fmodx.zig | 108 ----- lib/std/special/compiler_rt/fmodx_test.zig | 20 +- lib/std/special/compiler_rt/log.zig | 168 ++++++++ lib/std/special/compiler_rt/log10.zig | 196 +++++++++ lib/std/special/compiler_rt/log2.zig | 185 ++++++++ lib/std/special/compiler_rt/rem_pio2.zig | 198 +++++++++ lib/std/special/compiler_rt/rem_pio2_large.zig | 506 ++++++++++++++++++++++ lib/std/special/compiler_rt/rem_pio2f.zig | 70 +++ lib/std/special/compiler_rt/round.zig | 169 ++++++++ lib/std/special/compiler_rt/sin.zig | 162 +++++++ lib/std/special/compiler_rt/sincos.zig | 242 +++++++++++ lib/std/special/compiler_rt/sqrt.zig | 284 +++++++++++++ lib/std/special/compiler_rt/tan.zig | 140 ++++++ lib/std/special/compiler_rt/trig.zig | 273 ++++++++++++ lib/std/special/compiler_rt/trunc.zig | 124 ++++++ lib/std/testing.zig | 2 +- src/Air.zig | 8 +- src/AstGen.zig | 6 +- src/BuiltinFn.zig | 8 + src/Liveness.zig | 1 + src/Sema.zig | 74 ++-- src/Zir.zig | 33 +- src/arch/aarch64/CodeGen.zig | 1 + src/arch/arm/CodeGen.zig | 1 + src/arch/riscv64/CodeGen.zig | 1 + src/arch/sparcv9/CodeGen.zig | 1 + src/arch/wasm/CodeGen.zig | 1 + src/arch/x86_64/CodeGen.zig | 1 + src/codegen/c.zig | 1 + src/codegen/llvm.zig | 443 ++++++++++++------- src/codegen/llvm/bindings.zig | 8 + src/print_air.zig | 1 + src/print_zir.zig | 12 +- src/stage1/all_types.hpp | 1 + src/stage1/analyze.cpp | 8 +- src/stage1/analyze.hpp | 2 +- src/stage1/astgen.cpp | 1 + src/stage1/codegen.cpp | 725 ++++++++++++++++++-------------- src/stage1/ir.cpp | 106 ++++- src/stage1/ir_print.cpp | 4 +- src/translate_c.zig | 2 +- src/value.zig | 149 +++---- src/zig_llvm.cpp | 4 + src/zig_llvm.h | 1 + test/behavior/bugs/920.zig | 14 +- test/behavior/floatop.zig | 20 +- test/behavior/math.zig | 259 ++++++++---- test/behavior/muladd.zig | 21 +- 108 files changed, 6138 insertions(+), 5683 deletions(-)