| Age | Commit message (Collapse) | Author | |
|---|---|---|---|
| 2023-03-17 | main: add debug option to dump unoptimized llvm ir | Jacob Young | |
| 2023-03-07 | CBE: implement unsigned big int div and mod | Jacob Young | |
| 2023-03-05 | llvm: fix lowering of `@trap` | Andrew Kelley | |
| It needed an unreachable instruction after it. | |||
| 2023-03-05 | Merge pull request #14789 from jacobly0/ditype | Andrew Kelley | |
| llvm: fix use after free with pointers to optional slices | |||
| 2023-03-05 | CBE: fix reduce of emulated integers | Jacob Young | |
| 2023-03-05 | CBE: ensure uniqueness of more internal identifiers | Jacob Young | |
| 2023-03-05 | CBE: implement select and shuffle | Jacob Young | |
| 2023-03-05 | CBE: implement splat | Jacob Young | |
| 2023-03-05 | CBE: implement vector truncate | Jacob Young | |
| 2023-03-05 | CBE: implement vector element pointers | Jacob Young | |
| 2023-03-05 | CBE: implement vector operations | Jacob Young | |
| Also, bigint add and sub which is all I was actually trying to do. | |||
| 2023-03-05 | CBE: fix behavior test failures on msvc | Jacob Young | |
| 2023-03-05 | CBE: implement some big integer and vector unary operations | Jacob Young | |
| 2023-03-05 | CBE: implement big integer and vector comparisons | Jacob Young | |
| 2023-03-05 | CBE: implement big integer literals | Jacob Young | |
| 2023-03-04 | llvm: fix incorrectly annotated DIType | Jacob Young | |
| Closes #14715 Closes #14783 | |||
| 2023-03-04 | add @trap builtin | r00ster91 | |
| This introduces a new builtin function that compiles down to something that results in an illegal instruction exception/interrupt. It can be used to exit a program abnormally. This implements the builtin for all backends. | |||
| 2023-02-27 | llvm: fix untagged struct names in debug info for llvm (again) | Jacob Young | |
| At least lldb misbehaves with all these same-named unions, so just generate a unique name. | |||
| 2023-02-25 | CBE: replace locals list with a hash map | Jacob Young | |
| Replace `ArrayList` with `ArrayHashMap` since we want to be able to remove by element. | |||
| 2023-02-24 | CBE: reuse locals with the same `CType` instead of `Type` | Jacob Young | |
| Many `Type`s can correspond to the same `CType`, so this reduces the number of used locals by 27760 when compiling only-c. Also, disabled some tests that were only passing by accident and shouldn't really be considered working. | |||
| 2023-02-23 | CBE: implement the future | Jacob Young | |
| Turns out f(...) will be supported one day. | |||
| 2023-02-23 | CBE: apply some maybe payload cleanups | Jacob Young | |
| 2023-02-23 | CBE: simplify always_tail call logic | Jacob Young | |
| It should be Sema's job to check this anyway. | |||
| 2023-02-23 | CBE: delete stage1 hacks | Jacob Young | |
| 2023-02-23 | CType: cleanup | Jacob Young | |
| 2023-02-23 | CBE: fix MSVC diagnostics generated by the behavior tests | Jacob Young | |
| After this, the last MSVC warnings are in behavior/bugs/529.zig: behavior.c(37971): warning C4133: 'function': incompatible types - from 'A__8479 *' to 'A__8474 *' behavior.c(37974): warning C4133: 'function': incompatible types - from 'A__8480 *' to 'A__8474 *' | |||
| 2023-02-23 | CBE: support call attributes | Jacob Young | |
| * Support always_tail and never_tail/never_inline with a comptime callee using clang * Support never_inline using gcc * Support never_inline using msvc Unfortunately, can't enable behavior tests because of the conditional support. | |||
| 2023-02-23 | CBE: implement c varargs | Jacob Young | |
| Removed some backend test skip checks for things disabled in std. | |||
| 2023-02-23 | CType: fix lowering of generic function pointer | Jacob Young | |
| 2023-02-23 | CBE: cleanup field access | Jacob Young | |
| * Implement @fieldParentPtr on a union * Refactor field access to ensure that it is handled consistently * Remove `renderTypecast` as it is now behaves the same as `renderType` | |||
| 2023-02-22 | Merge pull request #14691 from jacobly0/ctype | Andrew Kelley | |
| 2023-02-21 | CBE: fix windows test failures | Jacob Young | |
| 2023-02-21 | Sema: implement @fieldParentPtr for unions | Isaac Freund | |
| 2023-02-21 | CBE: fix test failures | Jacob Young | |
| 2023-02-21 | CBE: use CType for type definitions | Jacob Young | |
| 2023-02-21 | CBE: remove typedef data structures | Jacob Young | |
| Adds a new mechanism for `@tagName` function generation that doesn't piggyback on the removed typedef system. | |||
| 2023-02-20 | CBE: use stdint.h types instead of `zig_` prefixes | Jacob Young | |
| This requires manual defines before C99 which may not have stdint.h. Also have update-zig1 leave a copy of lib/zig.h in stage1/zig.h, which allows lib/zig.h to be updated without needing to update zig1.wasm. Note that since the object already existed with the exact same contents, this completely avoids repo bloat due to zig.h changes. | |||
| 2023-02-20 | CBE: fix comptime checks | Jacob Young | |
| 2023-02-20 | CBE: use CType for type rendering | Jacob Young | |
| 2023-02-20 | CBE: add CType interning | Jacob Young | |
| 2023-02-18 | update std lib and compiler sources to new for loop syntax | Andrew Kelley | |
| 2023-02-11 | llvm: fix lowerDeclRefValue for extern function aliases | Veikka Tuominen | |
| Same as 0577069af5f5deb859762725736537d60c324453 for extern functions. Closes #14610 | |||
| 2023-02-11 | zig fmt: do not consider tuples blocks | Veikka Tuominen | |
| Closes #14056 | |||
| 2023-02-02 | Merge pull request #14502 from ziglang/link-owned-atoms | Jakub Konka | |
| link: move ownership of linker atom from frontend to the linkers | |||
| 2023-02-01 | link: make SpirV atoms fully owned by the linker | Jakub Konka | |
| 2023-01-31 | move compiler's CType logic to std.Target | Andrew Kelley | |
| This API only depends on std.Target and is extremely useful in build scripts when populating configure files. | |||
| 2023-01-29 | cbe: fixes for tls, support for not linking libc, and enabling tests | kcbanner | |
| - cbe: Implement linksection support, to support TLS when not linking libc - cbe: Support under-aligned variables / struct fields - cbe: Support packed structs (in the C definition of packed) - windows: Fix regression with x86 _tls_array - compiler_rt: Add 128-bit atomics to compiler_rt - tests: Re-enable threadlocal tests on cbe+windows, and llvm+x86 - tests: Re-enable f80 tests that now pass - ci: change windows ci to run the CBE behaviour tests with -lc, to match how the compiler is bootstrapped - update zig1.wasm | |||
| 2023-01-29 | cbe: don't emit unused undefined array literals | kcbanner | |
| 2023-01-23 | zig fmt fixup | kcbanner | |
| 2023-01-23 | cbe: fixes for x86 | kcbanner | |
| - Emit calling convention - Fix .Naked handling for msvc - Add teb helper for x86 - Fix 128-bit shl implementation when rhs is >= 64 - Add 128-bit shl tests | |||
