| Age | Commit message (Collapse) | Author | |
|---|---|---|---|
| 2025-09-30 | fix compiler ftbfs from std.macho and std.dwarf changes | mlugg | |
| 2025-08-31 | std.fmt: delete deprecated APIs | Andrew Kelley | |
| std.fmt.Formatter -> std.fmt.Alt std.fmt.format -> std.Io.Writer.print | |||
| 2025-08-29 | std.Io: delete GenericReader | Andrew Kelley | |
| and delete deprecated alias std.io | |||
| 2025-07-07 | MachO: revert unfinished changes | Andrew Kelley | |
| 2025-07-07 | MachO: update to new std.io APIs | Andrew Kelley | |
| 2025-06-12 | x86_64: remove linker references from codegen | Jacob Young | |
| 2024-08-28 | std: update `std.builtin.Type` fields to follow naming conventions | mlugg | |
| The compiler actually doesn't need any functional changes for this: Sema does reification based on the tag indices of `std.builtin.Type` already! So, no zig1.wasm update is necessary. This change is necessary to disallow name clashes between fields and decls on a type, which is a prerequisite of #9938. | |||
| 2024-08-17 | macho: update codegen and linker to distributed jump table approach | Jakub Konka | |
| 2024-07-22 | macho: handle empty string in ZigObject.getString | Jakub Konka | |
| 2024-07-22 | macho: cache string len | Jakub Konka | |
| 2024-07-22 | macho: run more things in parallel | Jakub Konka | |
| 2024-07-18 | macho: fix symbol visibility merging logic | Jakub Konka | |
| 2024-07-18 | macho: fix compile errors | Jakub Konka | |
| 2024-07-18 | macho: migrate Atom and Symbol | Jakub Konka | |
| 2024-05-23 | link/macho: dedup literals in objects and internal object file | Jakub Konka | |
| 2024-02-03 | macho: make atom address relative wrt defining section | Jakub Konka | |
| 2024-01-28 | macho: do not allocate input files in full | Jakub Konka | |
| 2024-01-24 | macho: add misc fixes targeting macos 11 | Jakub Konka | |
| 2024-01-24 | macho: resolve relocs pointing at __got_zig | Jakub Konka | |
| 2024-01-24 | macho: add __zig_got section implementation | Jakub Konka | |
| 2024-01-24 | macho: create Atom for Decl in ZigObject | Jakub Konka | |
| 2024-01-24 | macho: split symbol.flags.got into needs_got and has_got | Jakub Konka | |
| 2024-01-24 | macho: introduce ZigObject | Jakub Konka | |
| 2024-01-24 | macho: write to file | Jakub Konka | |
| 2024-01-24 | macho: parse an input object file! | Jakub Konka | |
| 2024-01-24 | macho: copy over new implementation sources from zld | Jakub Konka | |
| 2021-07-16 | zld: replace parsed reloc with a simple wrapper around macho.relocation_info | Jakub Konka | |
| 2021-07-15 | zld: reuse string table for symbol names | Jakub Konka | |
| rather than manage allocs separately per symbol. | |||
| 2021-07-15 | zld: move tracking binding for proxies into TextBlock | Jakub Konka | |
| which is the source of binding rather than its target. That is, we now track by source. | |||
| 2021-07-15 | zld: remove StringTable abstraction | Jakub Konka | |
| 2021-07-15 | zld: map [section addr, first symbol) to a tracked TextBlock | Jakub Konka | |
| which applies exclusively to x86_64-macos. | |||
| 2021-07-15 | zld: re-enable all of linker after complete rewrite | Jakub Konka | |
| 2021-07-15 | zld: allocate TextBlocks | Jakub Konka | |
| temporarily by iterating over all defined TextBlocks. However, once we merge this with MachO incremental, updates will be done at the point of creation and/or update. Also, fix mining TLV knowledge for working out TLV pointers. | |||
| 2021-07-15 | zld: save rebase and TLV offset as part of TextBlock | Jakub Konka | |
| instead of as part of the Symbol. This seems to be more optimal way of handling dyld ops in presence of no splittable input sections in object files. | |||
| 2021-07-15 | zld: move should_rebase logic into Symbol | Jakub Konka | |
| 2021-07-15 | zld: create TextBlocks for tentative definitions | Jakub Konka | |
| and fix the links in the `TextBlock`s linked list! | |||
| 2021-07-15 | zld: convert section in linked list of TextBlocks | Jakub Konka | |
| 2021-07-15 | zld: fix ast errors | Jakub Konka | |
| 2021-07-15 | zld: reenable entire linker in the new scheme | Jakub Konka | |
| without the stabs... They are tricky and need a bit more work. | |||
| 2021-07-15 | zld: coalesce symbols on creation | Jakub Konka | |
| 2021-07-15 | zld: add Symbol.Stab and move nlist creation logic there | Jakub Konka | |
| 2021-07-15 | zld: abstract Symbol creation logic | Jakub Konka | |
| 2021-06-28 | zld: recurse dylibs reexports when defined and desired | Jakub Konka | |
| 2021-06-24 | Apply AST fixes | Jakub Konka | |
| 2021-06-24 | zld: merge Stub with Dylib struct | Jakub Konka | |
| After giving it more thought, it doesn't make sense to separate the two structurally. Instead, there should be two constructors for a Dylib struct: one from binary file, and the other from a stub file. This cleans up a lot of code and opens the way for recursive parsing of re-exports from a dylib which are a hard requirement for native feel when linking frameworks. | |||
| 2021-06-24 | zld: clean up memory management and refactor | Jakub Konka | |
| 2021-06-24 | zld: handle dynamic binding of proxies for objc correctly | Jakub Konka | |
| 2021-06-24 | zld: introduce Stub.zig which represents parsed stub file | Jakub Konka | |
| Instead of trying to fit a stub file into the frame of a Dylib struct, I think it makes more sense to keep them as separate entities with possibly shared interface (which would be added in the future). This cleaned up a lot of logic in Dylib as well as Stub. Also, while here I've made creating actual *Symbols lazy in the sense Dylib and Stub only store hash maps of symbol names that they expose but we defer create and referencing given dylib/stub until link time when a symbol is actually referenced. This should reduce memory usage and speed things up a bit. | |||
| 2021-06-24 | zld: create a synthetic ___dso_handle symbol self-referenced | Jakub Konka | |
| 2021-06-24 | zld: parse libSystem tbd stub when linking | Jakub Konka | |
