| Age | Commit message (Collapse) | Author | |
|---|---|---|---|
| 2020-04-05 | ir: Fix error checking for vector ops | LemonBoy | |
| The extra logic that's needed was lost during a refactoring, now it should be fine. | |||
| 2020-04-05 | ir: Remove unused and commented out code | LemonBoy | |
| 2020-04-05 | ir: Support shift left/right on vectors | LemonBoy | |
| 2020-04-05 | ir: Support div/mod/rem on vector types | LemonBoy | |
| Closes #4050 | |||
| 2020-04-05 | Do not parse native_libc.txt anymore when linking on native target, always ↵ | Michaël Larouche | |
| run detection of libc. Fixes #4772 | |||
| 2020-04-03 | change the default ABI of riscv64-linux-musl | Andrew Kelley | |
| Before, this would cause a link failure when mixing Zig and C code for RISC-V targets. Now, the ABIs match and Zig and C code can be mixed successfully. I will file a follow-up issue for the ability to deal more explicitly with ABIs. closes #4863 | |||
| 2020-04-02 | zig cc: support more linker args | Andrew Kelley | |
| 2020-04-02 | zig cc: respect -MF -MV -MD options | Andrew Kelley | |
| Zig disables its caching and forwards these args when any are provided. see #4784 | |||
| 2020-04-01 | zig cc properly handles -S flag and .ll, .bc extensions | Andrew Kelley | |
| 2020-04-01 | stage1: make C++ switch fallthrough an error | Michael Dusan | |
| Make fallthrough an error when compiler supports it. This requires a new macro that is defined with such compilers to be used as a statement, at all fallthrough sites: switch (...) { case 0: ... ZIG_FALLTHROUGH; case 1: ... break; default: ... break; } If we ever move to C++17 as minimal requirement, then the macro can be replaced with `[[fallthrough]];` at statement sites. | |||
| 2020-04-01 | Merge pull request #4896 from FireFox317/fix-arm32-stuff | Andrew Kelley | |
| fix some nullptr dereferences on arm-linux-musleabhif | |||
| 2020-04-01 | Make sure that ZigTypeVector and ZigTypeArray have the same memory layout | Timon Kruiper | |
| Throughout the stage1 code it is assumed that these have the same layout, but that was not the case. This caused an issue on 32-bit hardware. | |||
| 2020-04-01 | fixups and revert a few things | Andrew Kelley | |
| 2020-04-01 | Use length field as passed in stage2 libc_installation instead of relying on ↵ | daurnimator | |
| zero termination | |||
| 2020-03-30 | revert detection of rtti and exceptions | Andrew Kelley | |
| This caused link errors in c++ code because it was not correct to pass these flags to child codegens. And that was the only reason to detect these flags. Otherwise we can safely rely on non-explicitly-detected flag forwarding. | |||
| 2020-03-27 | zig c++: get it working with musl and mingw-w64 | Andrew Kelley | |
| 2020-03-26 | ability to compile c++ hello world with `zig c++` | Andrew Kelley | |
| closes #4786 | |||
| 2020-03-25 | improved handling of native system directories | Andrew Kelley | |
| * `-isystem` instead of `-I` for system include directories fixes a problem with native system directories interfering with zig's bundled libc. * separate Stage2Target.is_native into Stage2Target.is_native_os and Stage2Target.is_native_cpu. | |||
| 2020-03-22 | riscv: add -mrelax arg for C to work around upstream issue | Andrew Kelley | |
| See #4485 | |||
| 2020-03-22 | Merge remote-tracking branch 'origin/master' into llvm10 | Andrew Kelley | |
| 2020-03-22 | Merge remote-tracking branch 'origin/master' into llvm10 | Andrew Kelley | |
| 2020-03-21 | zig cc: detect optimization and debug flags | Andrew Kelley | |
| 2020-03-21 | zig cc: better support for the preprocessor option (-E) | Andrew Kelley | |
| 2020-03-21 | ability to use `zig cc` as a drop-in C compiler | Andrew Kelley | |
| The basics are working | |||
| 2020-03-20 | glibc: include ld symbols and proper soname for ld | Andrew Kelley | |
| 2020-03-19 | Merge remote-tracking branch 'origin/master' into llvm10 | Andrew Kelley | |
| 2020-03-19 | fix incorrect sentinel check | Andrew Kelley | |
| 2020-03-19 | fix runtime slice of pointer not setting length | Andrew Kelley | |
| 2020-03-19 | fix regression when slicing 0-bit pointers | Andrew Kelley | |
| 2020-03-19 | fixes in semantic analysis needed to support this feature | Andrew Kelley | |
| 2020-03-19 | slicing with comptime start and end results in array | Andrew Kelley | |
| implements #863 | |||
| 2020-03-19 | ir: More changes to sentinel-terminated const arrays | LemonBoy | |
| * Don't add an extra slot for the sentinel. Most of the code keeps using the constant value from the type descriptor, let's harmonize all the code dealing with sentinels. * Properly write out sentinel values when reinterpreting pointers at comptime. * Allow the reading of the 0th element in a `[0:S]T` type. | |||
| 2020-03-18 | ir: Correct ABI size calculation for arrays | LemonBoy | |
| Zero-length array with a sentinel may not have zero size. Closes #4749 | |||
| 2020-03-14 | for build-obj with only 1 C file, name .o file after root_out_name | Andrew Kelley | |
| 2020-03-13 | special case when doing build-obj with just one source file | Andrew Kelley | |
| When building an object file from only one source file, instead of having a two-stage cache system, we special case it and use the cache directory that the .o file is output to as the final cache directory for all the build artifacts. When there are more than 1 source file, the linker has to merge objects into one, and so the two stage approach makes sens. But in the case of only one source file, this prevents needlessly copying the object file. This commit fixes an issue with the previous one, where zig with cache enabled would print a directory that actually did not have any build artifacts in it. | |||
| 2020-03-13 | Merge remote-tracking branch 'origin/master' into llvm10 | Andrew Kelley | |
| 2020-03-12 | Merge pull request #4707 from Vexu/small-atomics | Andrew Kelley | |
| Support atomic operations with bools and non power of two integers | |||
| 2020-03-12 | Simplify stores, use sext for signed ints | Vexu | |
| 2020-03-11 | fix zig-cache to treat cpu-features as raw-bytes | Michael Dusan | |
| - add Stage2Target.cache_hash_len - add cache_mem(ch, ptr, len) - update call sites to use { ptr, len } | |||
| 2020-03-11 | Move abi size checking to codegen | Vexu | |
| 2020-03-11 | fix codegen, update docs | Vexu | |
| 2020-03-11 | support non power of two integers in atomic ops | Vexu | |
| 2020-03-10 | support atomic operations with bools | Vexu | |
| 2020-03-10 | ir: Implement more safety checks for shl/shr | LemonBoy | |
| The checks are now valid on types whose size is not a power of two. Closes #2096 | |||
| 2020-03-09 | ir: Fix codegen of ?*T types where T is zero-sized | LemonBoy | |
| * Fix codegen for optional types that decay to a pointer, the type behaves as a boolean * Fix comptime evaluation of zero-sized arrays, always initialize the internal array elements Closes #4673 | |||
| 2020-03-09 | add LemonBoy's test | Vexu | |
| 2020-03-09 | implement noasync scopes | Vexu | |
| 2020-03-07 | Merge remote-tracking branch 'origin/master' into llvm10 | Andrew Kelley | |
| 2020-03-04 | ir: Implement @TypeOf with multiple arguments | LemonBoy | |
| Closes #439 | |||
| 2020-03-04 | get_codegen_ptr_type returns possible error | Andrew Kelley | |
| And fix most of the fallout. This also makes optional pointers not require resolving zero bits, because the comptime value struct layout no longer depends on whether the type has zero bits. Thanks to @LemonBoy for the behavior test case Closes #4357 Closes #4359 | |||
