14020 Commits

Author SHA1 Message Date
Andrew Kelley
b3596d72b0 CLI: add --host-target, --host-cpu, and --host-dynamic-linker
These are advanced options that make it possible to simultaneously
target the "host" computer, while overriding assumptions about the host
computer such as what CPU features are available, or what OS version
range to target.

This is useful only for the case of integrating with system package
manager builds which want to pretend the host is also the target.
2024-02-02 20:43:01 -07:00
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