aboutsummaryrefslogtreecommitdiff
path: root/src/stage1
AgeCommit message (Collapse)Author
2020-10-06stage1: use size_t over int as index in resolve_opaque_typeTadeo Kondrak
2020-10-06stage1: disallow fields in opaque typesTadeo Kondrak
2020-10-06Add opaque type syntaxTadeo Kondrak
2020-10-05Merge pull request #6472 from alexnask/add_some_freesAndrew Kelley
Add a few missing deallocations of temporaries to stage1
2020-10-05stage1: Implement @reduce builtin for vector typesLemonBoy
The builtin folds a Vector(N,T) into a scalar T using a specified operator. Closes #2698
2020-10-04Merge branch 'master' of https://github.com/ziglang/zig into add_some_freesAlexandros Naskos
2020-10-03stage1: better value for builtin.link_modeAndrew Kelley
Now it is Dynamic unless -DZIG_STATIC=on is passed to cmake. This partially addresses #6469.
2020-10-03stage0: check for some more required parametersTadeo Kondrak
2020-10-03stage1: delete unused os codeTadeo Kondrak
2020-10-03Revert "Include dbg.h to third-party libs"Tadeo Kondrak
This reverts commit c8b4cc2ff9cf15a42f95b2302e02431a0004f5c8. This includes many C++ standard library headers: #include <algorithm> #include <chrono> #include <ctime> #include <iomanip> #include <ios> #include <iostream> #include <memory> #include <sstream> #include <string> #include <tuple> #include <type_traits> #include <vector> which adds more than a second of compile time for each file that includes the header: ir.cpp before: 8.041s ir.cpp after: 6.847s
2020-10-03Merge pull request #6427 from ↵Alexandros Naskos
tadeokondrak/enums-explicit-tag-type-extern-allowed Allow enums with explicit extern-allowed tag types in extern types
2020-10-01Allow enums with explicit extern-allowed tag types in extern typesTadeo Kondrak
Closes https://github.com/ziglang/zig/issues/1467
2020-10-01Switch TypeInfo.Fn.alignment to comptime_int from u29Tadeo Kondrak
All integers in TypeInfo are intentionally comptime_int: https://github.com/ziglang/zig/issues/1683
2020-10-01stage1: Implement @Type for Fn and BoundFnTadeo Kondrak
2020-10-01stage1: Add alignment to TypeInfo.FnTadeo Kondrak
2020-10-01Switch TypeInfo alignment fields from u29 to comptime_intTadeo Kondrak
2020-10-01Add alignment field to TypeInfo.UnionField and TypeInfo.StructFieldTadeo Kondrak
Closes https://github.com/ziglang/zig/issues/6122
2020-10-01Make builtin.TypeInfo.Pointer.alignment u29 instead of comptime_intTadeo Kondrak
2020-09-30Added some c_allocator.deallocate callsAlexandros Naskos
2020-09-30Added a few ZigList deinit callsAlexandros Naskos
2020-09-30stage1: Fix @Type(.Enum) with invalid tag_typeTadeo Kondrak
Fixes https://github.com/ziglang/zig/issues/6459
2020-09-30Merge remote-tracking branch 'origin/master' into llvm11Andrew Kelley
The changes to install_files.h needed to put into src/libcxx.zig
2020-09-29Merge remote-tracking branch 'origin/master' into stage2-zig-ccAndrew Kelley
2020-09-29Merge remote-tracking branch 'origin/master' into stage2-zig-ccAndrew Kelley
2020-09-28stage2: building mingw-w64 and COFF LDD linkingAndrew Kelley
still TODO is the task of creating import .lib files for DLLs on the fly both for -lfoo and for e.g. `extern "kernel32"`
2020-09-26fix another round of regressions in this branchAndrew Kelley
* std.log: still print error messages in ReleaseSmall builds. - when start code gets an error code from main, it uses std.log.err to report the error. this resulted in a test failure because ReleaseSmall wasn't printing `error: TheErrorCode` when an error was returned from main. But that seems like it should keep working. So I changed the std.log defaults. I plan to follow this up with a proposal to change the names of and reduce the quantity of the log levels. * warning emitted when using -femit-h when using stage1 backend; fatal log message when using -femit-h with self-hosted backend (because the feature is not yet available) * fix double `test-cli` build steps in zig's build.zig * update docgen to use new CLI * translate-c uses `-x c` and generates a temporary basename with a `.h` extension. Otherwise clang reports an error. * --show-builtin implies -fno-emit-bin * restore the compile error for using an extern "c" function without putting -lc on the build line. we have to know about the libc dependency up front. * Fix ReleaseFast and ReleaseSmall getting swapped when passing the value to the stage1 backend. * correct the zig0 CLI usage text. * update test harness code to the new CLI.
2020-09-26stage0: update CLI to match stage2Andrew Kelley
2020-09-26implement -femit-asm, -femit-docs, -femit-llvm-ir, etcAndrew Kelley
These CLI options are now forwarded to the stage1 backend. We're not going to support the -mllvm CLI option any longer. As a compromise, we unconditionally tell LLVM to output intel x86 syntax when using -femit-asm. Simplify stage1 logic; it no longer has the concept of an output directory. --output-dir is no longer a valid CLI option. cmake uses the `-femit-bin=[path]` option. Note the changes to test/cli.zig. This breaks the CLI API that Godbolt is using so we're going to want to open a PR to help them upgrade to the new CLI for the upcoming Zig 0.7.0 release.
2020-09-24stage2: implement @cImportAndrew Kelley
Also rename Cache.CacheHash to Cache.Manifest
2020-09-21Merge remote-tracking branch 'origin/master' into stage2-zig-ccAndrew Kelley
2020-09-21fix regressed stage2 test harnessAndrew Kelley
2020-09-21rename src-self-hosted/ to src/Andrew Kelley