lib/std/build.zig | 40 ++- lib/std/build/run.zig | 2 +- lib/std/builtin.zig | 4 +- lib/std/c.zig | 25 +- lib/std/c/linux.zig | 2 +- lib/std/child_process.zig | 26 +- lib/std/cstr.zig | 4 +- lib/std/debug.zig | 24 +- lib/std/dynamic_library.zig | 4 +- lib/std/elf.zig | 25 +- lib/std/event/channel.zig | 2 +- lib/std/event/future.zig | 2 +- lib/std/event/lock.zig | 2 +- lib/std/event/loop.zig | 26 +- lib/std/fs.zig | 46 +-- lib/std/fs/file.zig | 12 +- lib/std/fs/get_app_data_dir.zig | 2 +- lib/std/fs/path.zig | 38 +- lib/std/fs/watch.zig | 8 +- lib/std/heap.zig | 14 +- lib/std/io.zig | 6 +- lib/std/mutex.zig | 4 +- lib/std/net.zig | 2 +- lib/std/net/test.zig | 4 +- lib/std/os.zig | 136 ++++---- lib/std/os/bits.zig | 4 +- lib/std/os/linux.zig | 2 +- lib/std/os/test.zig | 16 +- lib/std/packed_int_array.zig | 4 +- lib/std/process.zig | 22 +- lib/std/reset_event.zig | 6 +- lib/std/special/c.zig | 8 +- lib/std/special/compiler_rt.zig | 13 +- lib/std/special/compiler_rt/extendXfYf2_test.zig | 2 +- lib/std/spinlock.zig | 2 +- lib/std/start.zig | 16 +- lib/std/target.zig | 599 ++++++++++++++++---------------- lib/std/thread.zig | 20 +- lib/std/time.zig | 18 +- lib/std/zig/system.zig | 330 +++++++++++++++++- src-self-hosted/c_int.zig | 2 +- src-self-hosted/clang.zig | 2 +- src-self-hosted/introspect.zig | 10 +- src-self-hosted/libc_installation.zig | 112 +----- src-self-hosted/link.zig | 4 +- src-self-hosted/main.zig | 6 +- src-self-hosted/print_targets.zig | 12 +- src-self-hosted/stage2.zig | 404 ++++++++++++++------- src-self-hosted/util.zig | 22 -- src/codegen.cpp | 38 +- src/error.cpp | 2 + src/main.cpp | 29 +- src/stage2.cpp | 8 - src/stage2.h | 10 +- test/stage1/behavior/asm.zig | 7 +- test/stage1/behavior/byteswap.zig | 5 +- test/stage1/behavior/namespace_depends_on_compile_var.zig | 8 +- test/stage1/behavior/vector.zig | 3 +- test/tests.zig | 2 +- 59 files changed, 1275 insertions(+), 933 deletions(-)