| Age | Commit message (Collapse) | Author | |
|---|---|---|---|
| 2024-02-02 | InternPool: use separate key for slices | mlugg | |
| This change eliminates some problematic recursive logic in InternPool, and provides a safer API. | |||
| 2024-01-24 | macho: prep for lowering TLS variables | Jakub Konka | |
| 2024-01-24 | macho: fix '_' prefixing rules for exports | Jakub Konka | |
| 2024-01-24 | macho: fix symbol index dereference in codegen wrt ZigObject | Jakub Konka | |
| This is incredibly confusing and I really need to simplify it. Elf also possesses this shortcoming so once I get Coff up to speed it should hopefully become clear on how to refactor this. | |||
| 2024-01-24 | codegen: implement more missing bits | Jakub Konka | |
| 2024-01-24 | codegen: re-implement enough of codegen to error out instead panic | Jakub Konka | |
| 2024-01-24 | codegen: re-enable MachO support in genDeclRef | Jakub Konka | |
| 2024-01-24 | macho: get the ball rolling! | Jakub Konka | |
| 2024-01-01 | frontend: fix handling of special builtin module | Andrew Kelley | |
| it's allocated differently and imported differently | |||
| 2024-01-01 | fix a round of compile errors caused by this branch | Andrew Kelley | |
| 2024-01-01 | compiler: update references to target | Andrew Kelley | |
| 2024-01-01 | update references to module (to be renamed to zcu) | Andrew Kelley | |
| 2024-01-01 | compiler: update references to single_threaded | Andrew Kelley | |
| 2023-12-04 | x86_64: implement more operations on vectors with 1-bit elements | Jacob Young | |
| 2023-12-03 | x86_64: implement more compliant vectors | Jacob Young | |
| 2023-12-01 | test: test with `-fstrip` and fix failures | Jacob Young | |
| Closes #17513 | |||
| 2023-11-26 | move Module.Decl.Index and Module.Namespace.Index to InternPool | Meghan Denny | |
| 2023-11-25 | convert `toType` and `toValue` to `Type.fromInterned` and `Value.fromInterned` | Techatrix | |
| 2023-11-19 | compiler: correct unnecessary uses of 'var' | mlugg | |
| 2023-11-12 | x86_64: resolve tlv references on first use and spill to the stack | Jacob Young | |
| This avoids any arbitrary memory operand possibly clobbering rax and sometime rdi with no warning. | |||
| 2023-11-12 | elf: set symbol flags such as needs_zig_got in ZigObject | Jakub Konka | |
| 2023-11-04 | Merge pull request #17844 from ziglang/elf-object | Jakub Konka | |
| elf: handle emitting relocatables and static libraries - humble beginnings | |||
| 2023-11-04 | elf: postpone creation of .got.zig entry until code emit | Jakub Konka | |
| 2023-11-04 | elf: make sure we never emit .got.zig relocs when linking object files | Jakub Konka | |
| 2023-11-03 | x86_64: fix std test failures | Jacob Young | |
| 2023-10-30 | elf: move incremental codegen bits into ZigObject.zig | Jakub Konka | |
| 2023-10-30 | elf: rename ZigModule to ZigObject | Jakub Konka | |
| 2023-10-30 | coff: implement enough of extern handling to pass comptime export tests | Jakub Konka | |
| 2023-10-30 | macho: implement enough of extern handling to pass comptime export tests | Jakub Konka | |
| 2023-10-28 | x86_64: no more load/lea_symbol weirdness | Jakub Konka | |
| 2023-10-28 | elf: set needs_got on generated extern vars | Jakub Konka | |
| 2023-10-28 | x86_64: rename load/lea_memory to load/lea_symbol | Jakub Konka | |
| 2023-10-28 | x86_64: do not hardcode memory passed by Elf linker | Jakub Konka | |
| 2023-10-25 | x86_64: pass more tests | Jacob Young | |
| * 128-bit integer multiplication with overflow * more instruction encodings used by std inline asm * implement the `try_ptr` air instruction * follow correct stack frame abi * enable full panic handler * enable stack traces | |||
| 2023-10-24 | InternPool: remove runtime_value representation | mlugg | |
| The main goal of this commit is to remove the `runtime_value` field from `InternPool.Key` (and its associated representation), but there are a few dominos. Specifically, this mostly eliminates the "maybe runtime" concept from value resolution in Sema: so some resolution functions like `resolveMaybeUndefValAllowVariablesMaybeRuntime` are gone. This required a small change to struct/union/array initializers, to no longer use `runtime_value` if a field was a `variable` - I'm not convinced this case was even reachable, as `variable` should only ever exist as the trivial value of a global runtime `var` decl. Now, the only case in which a `Sema.resolveMaybeUndefVal`-esque function can return the `variable` key is `resolveMaybeUndefValAllowVariables`, which is directly called from `Sema.resolveInstValueAllowVariables` (previously `Sema.resolveInstValue`), which is only used for resolving the value of a Decl from `Module.semaDecl`. While changing these functions, I also slightly reordered and restructured some of them, and updated their doc comments. | |||
| 2023-10-23 | Merge pull request #17651 from Vexu/error-limit | Andrew Kelley | |
| Make distinct error limit configurable (attempt #2) | |||
| 2023-10-22 | Revert "Revert "Merge pull request #17637 from jacobly0/x86_64-test-std"" | Jacob Young | |
| This reverts commit 6f0198cadbe29294f2bf3153a27beebd64377566. | |||
| 2023-10-22 | Revert "Merge pull request #17637 from jacobly0/x86_64-test-std" | Andrew Kelley | |
| This reverts commit 0c99ba1eab63865592bb084feb271cd4e4b0357e, reversing changes made to 5f92b070bf284f1493b1b5d433dd3adde2f46727. This caused a CI failure when it landed in master branch due to a 128-bit `@byteSwap` in std.mem. | |||
| 2023-10-22 | Merge pull request #17637 from jacobly0/x86_64-test-std | Jacob Young | |
| x86_64: start to enable `test-std` and `test-compiler-rt` testing | |||
| 2023-10-22 | remove uses of non-configurable `err_int` | Veikka Tuominen | |
| 2023-10-21 | codegen: implement lowering aligned anon decls | Jacob Young | |
| 2023-10-21 | InternPool: store alignment of anon decls | Andrew Kelley | |
| Commit 5393e56500d499753dbc39704c0161b47d1e4d5c has a flaw pointed out by @mlugg: the `ty` field of pointer values changes when comptime values are pointer-casted. This commit introduces a new encoding which additionally stores the "original pointer type" which is used to store the alignment of the anonymous decl, and potentially other information in the future such as section and pointer address space. However, this new encoding is only used when the original pointer type differs from the casted pointer type in a meaningful way. I was able to make the LLVM backend and the C backend lower anonymous decls with the appropriate alignment, however I will need some help figuring out how to do this for the backends that lower anonymous decls via src/codegen.zig and the wasm backend. | |||
| 2023-10-21 | x86_64: disable difficult std tests and hack around more zero-bit types | Jacob Young | |
| 2023-10-16 | codegen: refactor .actual_got into .extern_got | Jakub Konka | |
| 2023-10-16 | codegen+elf: check if extern is a variable ref | Jakub Konka | |
| 2023-10-16 | codegen+elf: lower imported data refs | Jakub Konka | |
| 2023-10-16 | x86_64: add -fPIC support targeting ELF | Jakub Konka | |
| 2023-10-16 | elf: create new synthetic section ZigGotSection | Jakub Konka | |
| 2023-10-05 | plan9: refactor debug info | Jacob Young | |
| The main goal is to stop depending on `emit.lower.target`. | |||
| 2023-10-03 | codegen: separate getAnonDeclVAddr into lowerAnonDecl and the former | Jakub Konka | |
| Implement the stub for Elf. I believe that separating the concerns, namely, having an interface function that is responsible for signalling the linker to lower the anon decl only, and a separate function to obtain the decl's vaddr is preferable since it allows us to handle codegen errors in a simpler way. | |||
