Ian Johnson
2b2c9c5db8
Introduce type-erased writers to C backend codegen
...
This reduces generic instantiations of several write functions.
Before:
```
@as(type, io.writer.Writer(*array_list.ArrayListAligned(u8,null),error{OutOfMemory},(function 'appendWrite')))
@as(type, io.writer.Writer(*codegen.c.IndentWriter(io.writer.Writer(*array_list.ArrayListAligned(u8,null),error{OutOfMemory},(function 'appendWrite'))),error{OutOfMemory},(function 'write')))
```
After:
```
@as(type, io.GenericWriter(io.Writer,error{OutOfMemory},(function 'write')))
```
2024-01-29 19:02:18 -05:00
Ian Johnson
cc25756b3f
Eliminate generic duplication in allocPrint
...
Since `bufPrint` and `count` both control the writers used internally,
they can leverage type-erased writers while maintaining correct error
handling. This reduces generic instantiations when using `allocPrint`,
which calls both `count` and `bufPrint` internally.
2024-01-29 19:02:18 -05:00
Ian Johnson
e392c1a0b3
Add type-erased writer and GenericWriter
...
This is a companion to #17344 to apply the same change to the
`std.io.Writer` interface.
2024-01-29 19:02:18 -05:00
Jacob Young
4dfca01de4
gzip: implement compression
2024-01-29 14:30:23 -08:00
Ian Johnson
27d2d8e81f
Apply cflags from pkg-config to all dependent modules
...
Closes #18628
This commit splits the arguments obtained from pkg-config into two
groups, cflags and libs, and consistently applies the cflags to each
individual module linking the library while applying the libs only once
for each compilation.
2024-01-29 14:08:41 -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
Christian Flicker
9c7fa358c1
std.Thread: fix off-by-one in PosixThreadImpl ( #18711 )
...
by removing ZST special case
2024-01-29 11:07:21 -05:00
Jakub Konka
7b4561170a
ci: re-enable reproducibility for x86_64-macos
2024-01-29 13:16:58 +01: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
2d757c65d8
build: reduce max rss back down to 7GB
2024-01-28 01:05:36 +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
Veikka Tuominen
c085c6ecdd
std: remove meta.globalOption
2024-01-27 13:56:32 -08:00
Krzysztof Wolicki
190ea02e0d
os.windows: Fix missing correction from #18657
2024-01-27 12:38:33 -08:00
Andrew Kelley
608d5e6fb7
Merge pull request #18676 from MrDmitry/feat/improve_cmake_replace_values
...
std.Build.Step.ConfigHeader (cmake): rewrite variable expansion
2024-01-27 12:38:02 -08:00
Pavel Verigo
87733171b6
parser: fix "else" followed by "comptime"
2024-01-27 16:20:47 +02: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
MrDmitry
c84e086a2f
Get rid of direct dependency on std.fmt
...
Replace unnecessary panic with step error
2024-01-26 15:59:05 -05:00
MrDmitry
9ecbf53388
Minor formatting, removed duplicate test case
2024-01-26 13:33:17 -05:00
MrDmitry
3e6f07e617
Add escaped character processing
2024-01-26 13:33:17 -05:00
MrDmitry
0307f87715
Remove unused test file
2024-01-26 13:33:17 -05:00
MrDmitry
834f8d45ba
Rewrite replace_variables with CMake-specific version
...
Behavior matches CMake's CMP0053 policy that is the current standard for
variable expansion for `configure_file()`
2024-01-26 13:33:17 -05:00
MrDmitry
2ce32e4497
Extend standalone tests for cmakedefine
2024-01-26 13:33:17 -05:00
Meghan Denny
8a0429e885
test: add behavior coverage for global setter in function liveness
2024-01-26 15:26:37 +02:00
Tobias Simetsreiter
20abf1394a
align naming and fix module creation from TranslateC
2024-01-26 15:25:52 +02:00
Zachary Raineri
b36dd55af5
std.os.wasi | Fix comment links
...
Branch was renamed: master -> main
Preview 1 was moved to legacy
2024-01-26 15:24:07 +02: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