14019 Commits

Author SHA1 Message Date
Jakub Konka
92deebcd66 cli+build: handle -ObjC flag and route it to MachO linker 2024-02-02 22:00:16 +01:00
mlugg
9eda6ccefc InternPool: use separate key for slices
This change eliminates some problematic recursive logic in InternPool,
and provides a safer API.
2024-02-02 11:02:03 +00:00
Jakub Konka
d4966517f6 x86_64+macho: emit .got instead of .got_load relocs 2024-01-31 09:33:49 +01:00
Jakub Konka
1ee628a3e0 macho: improve error msg when relaxing GOT fails 2024-01-31 09:33:39 +01:00
danielsan901998
d7a27bf803 Use mem.zeroes for empty union initializer list 2024-01-31 06:38:44 +02:00
Jakub Konka
f63f4508d2 macho: fix parsing versions from TBDs if parsed as floats 2024-01-30 20:56:20 +01:00
Jakub Konka
b8490c05c1 macho: improve weak-ref symbols handling 2024-01-30 13:56:08 +01:00
Pavel Verigo
a2ad8517ee
Sema: fix union init with zero size field 2024-01-30 12:20:23 +02:00
Jiacai Liu
1b5cbf0d08
fix(autodoc): avoid panic when module not found (#18699) 2024-01-29 21:43:11 -05:00
Veikka Tuominen
7d75c3d3b8 llvm: ensure returned undef is 0xaa bytes when runtime safety is enabled
Closes #13178
2024-01-29 17:35:07 -08:00
SuperAuguste
a479fd3132 Fix some comptime packed struct issues
Co-authored-by: Veikka Tuominen <git@vexu.eu>
2024-01-29 13:09:17 -08:00
Andrew Kelley
f4f8036ec0
Merge pull request #18729 from Vexu/fixes
Fix some generic{Reader,Writer} related issues
2024-01-29 13:07:37 -08:00
Jakub Konka
3e939e6153
Merge pull request #18722 from ziglang/macho-debug-info
macho: reinstate DWARF in self-hosted x86_64-macho
2024-01-29 20:33:54 +01:00
Veikka Tuominen
f93a36c091 llvm: revert bad array access optimization
Closes #18723
2024-01-29 08:43:27 -08:00
Jakub Konka
78740e5540 macho: flush Dwarf module before flushing dSYM 2024-01-29 13:01:32 +01:00
Veikka Tuominen
78e982f7c3 llvm: fix alignment of array ptr when bitcasting vector
Closes #17996
2024-01-29 13:51:57 +02:00
Veikka Tuominen
281b2695c4 Value: expand canMutateComptimeVarState
Closes #17761
2024-01-29 13:48:45 +02:00
Veikka Tuominen
f782202910 Sema: do not emit @errorCast safety check when dest is adhoc inferred error set
Closes #17354
2024-01-29 13:48:45 +02:00
Jakub Konka
ec757ea666 macho: reset Zig-tracked section handles 2024-01-29 07:26:59 +01:00
Jakub Konka
5dbac19d8c macho: re-instate writing DWARF into dSYM 2024-01-29 07:26:59 +01:00
Jakub Konka
f2214e4371 macho: re-enable dSYM but don't write anything to it yet 2024-01-29 07:26:59 +01:00
Jakub Konka
d53cb284de macho: re-enable emitting empty dSYM bundle 2024-01-29 07:26:59 +01:00
Jakub Konka
3ae4c3cc36 macho: dedup -o flag from --verbose-link output 2024-01-29 07:26:59 +01:00
Jakub Konka
abb8e7478d
Merge pull request #18714 from ziglang/macho-mem
macho: reduce heap allocations
2024-01-29 02:50:40 +01:00
Pavel Verigo
96a5f7c8ed Sema: fix casting runtime value to enum with comptime int tag type 2024-01-29 01:43:19 +02:00
Jakub Konka
5b315f8a3a macho: fix 32bit builds 2024-01-28 19:14:55 +01:00
Jakub Konka
17215bd2c8 macho: insert global symbol name into the correct strtab 2024-01-28 10:02:28 +01:00
Jakub Konka
8cdaaa7b4f macho: move getAtomData switch into Atom 2024-01-28 00:49:59 +01:00
Jakub Konka
6337ce16ae macho: do not allocate input files in full 2024-01-28 00:40:50 +01:00
Jakub Konka
d5fc3c635a
Merge pull request #18677 from ziglang/post-new-macho
macho: fix logic for parsing dependent dylibs aka re-exports
2024-01-27 01:49:54 +01:00
Andrew Kelley
b96fb858c8
Merge pull request #18654 from mlugg/incremental-the-second
InternPool: introduce TrackedInst to prepare for incremental compilation
2024-01-26 15:51:33 -08:00
Krzysztof Wolicki
61ba225709
Sema: tuples have no names to be used for reporting errors in finishStructInit 2024-01-26 15:22:15 +02:00
Jacob Young
bea958df4d Compilation: preserve "builtin" as the first dependency
Previously, sorting dependencies would reorder the builtin dependency
and cause `Package.Module.getBuiltinDependency` to stop working.
2024-01-25 22:20:34 -08:00
Jakub Konka
ce58f68903 elf: merge all mergeable string rodata sections into one 2024-01-26 05:48:32 +01:00
Jakub Konka
d62e7bbefd macho: unify accessLibPath with accessLibPath2 2024-01-25 12:07:04 +01:00
Jakub Konka
dc9b6ecb55 macho: refactor resolving libs and frameworks when searching dependent dylibs 2024-01-25 12:07:04 +01:00
Jakub Konka
51d60d1a60 macho: dump print search lib and framework dirs in --verbose-link 2024-01-25 12:07:04 +01:00
Jakub Konka
dc4ef6d5d0 macho: try frameworks before libs non-exclusive 2024-01-25 12:07:04 +01:00
Jakub Konka
d8d6ea6af2 macho: print tried paths for unresolved dylib deps 2024-01-25 12:07:04 +01:00
Jakub Konka
0fd0b765fa macho: set __DATA_CONST* segments flags to SG_READ_ONLY 2024-01-24 12:48:22 +01:00
Jakub Konka
47dd8d0cf7 macho: clean up logic for deciding if needs __stub_helper 2024-01-24 12:40:01 +01:00
Jakub Konka
508ff1dd14 macho: add misc fixes targeting macos 11 2024-01-24 12:34:42 +01:00
Jakub Konka
e69ffcd8c1 macho: set filename as ident in code signature 2024-01-24 12:34:42 +01:00
Jakub Konka
46bc91ade5 macho: skip -r when single input object file
This is to ensure we don't unnecessarily strip debug info from
the final relocatable input file, so just copy the file out for now.
2024-01-24 12:34:42 +01:00
Jakub Konka
f2dce0c337 macho: exclude symbols from empty sections when parsing unwind info 2024-01-24 12:34:42 +01:00
Jakub Konka
82628dd151 macho: synthesise unwind records from __eh_frame even if no __compact_unwind 2024-01-24 12:34:42 +01:00
Jakub Konka
fe19d1e09b macho: allocate segments in sep step and tweak sorting logic 2024-01-24 12:34:42 +01:00
Jakub Konka
06224c23b7 macho: fix 32bit compilation issues 2024-01-24 12:34:42 +01:00
Jakub Konka
67ea039426 macho: do not enforce platform check for now 2024-01-24 12:34:42 +01:00
Jakub Konka
060406a526 macho: ensure we zero-out regions after copying them over
This is to ensure that the loader correctly zeroes-out zerofill
sections when mapping them. For context, Apple's loader dyld
will map the regions where any zerofill would theoretically reside
as belonging to zerofill section.
2024-01-24 12:34:42 +01:00