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