Alex Rønne Petersen
9e3eaa6be7
Merge pull request 'add spacemit_x100 + spacemit_x100 RISC-V CPU models; detect more RISC-V CPU models on Linux' ( #35392 ) from alexrp/zig:more-riscv-models into master
...
Reviewed-on: https://codeberg.org/ziglang/zig/pulls/35392
2026-05-23 05:43:47 +02:00
Alex Rønne Petersen
d70b56429c
std.zig.system.linux: add detection for more RISC-V CPU models
2026-05-22 21:12:51 +02:00
Alex Rønne Petersen
c717b0d08d
std.Target: add spacemit_x100 and spacemit_a100 RISC-V CPU models
...
Backported from LLVM main branch.
2026-05-22 21:12:45 +02:00
Alex Rønne Petersen
3140b375fc
std.Target: update a bunch of min/max OS versions
2026-05-22 19:19:52 +02:00
Alex Rønne Petersen
3a6ddce4cf
Merge pull request 'libc: Update macOS headers to SDK 26.5' ( #35382 ) from linus/zig:bump-macos-libc into master
...
Reviewed-on: https://codeberg.org/ziglang/zig/pulls/35382
Reviewed-by: Alex Rønne Petersen <alex@alexrp.com >
2026-05-22 18:53:47 +02:00
Alex Rønne Petersen
038c0783d4
std.Target: only make v9 the baseline for sparc-linux
...
NetBSD supports older models, for example.
2026-05-22 18:41:03 +02:00
Alex Rønne Petersen
8930bdfeb6
std.Target: make arch11 (z13) the baseline for s390x
...
arch8 (z10) is from 2008; arch11 (z13) is from 2015. I believe all Linux distros
have already made arch11 the baseline, so let's do the same.
2026-05-22 18:41:03 +02:00
Alex Rønne Petersen
a8859a6d21
std.Target: make octeon the baseline for mips64-openbsd
...
From https://www.openbsd.org/octeon.html :
OpenBSD/octeon is a port intended to run on MIPS64-based systems that
utilize the Cavium OCTEON, OCTEON Plus, OCTEON II, and OCTEON III system on
chips.
2026-05-22 18:41:03 +02:00
Alex Rønne Petersen
9f6d31c1bf
std.Target: make 750 the baseline for powerpc-openbsd
...
From https://www.openbsd.org/macppc.html :
OpenBSD/macppc runs on the PowerPC-based Macintosh systems from the
"New World" family
2026-05-22 18:41:03 +02:00
Alex Rønne Petersen
552c0fe914
std.Target: make pwr9 the baseline for powerpc64-openbsd
...
From https://www.openbsd.org/powerpc64.html :
OpenBSD/powerpc64 runs on PowerNV machines using the IBM POWER9 processors.
2026-05-22 18:41:03 +02:00
Alex Rønne Petersen
1fd1fadc02
std.Target: make ultrasparc the baseline for sparc64
...
No OSs actually support CPUs older than this.
2026-05-22 18:41:03 +02:00
Alex Rønne Petersen
51962172f7
std.Target: make esp32 the baseline for xtensa
...
This is the MCU that the overwhelming majority of hobbyists target.
2026-05-22 18:41:03 +02:00
Alex Rønne Petersen
c49f7fbffd
std.Target: make m68030 the baseline for m68k
...
It's the oldest model that has an integrated MMU.
2026-05-22 18:41:00 +02:00
Alex Rønne Petersen
0b00adc6fc
std.Target: make cortex_a55 the baseline for aarch64-haiku
...
Haiku's build system targets this.
2026-05-22 03:10:56 +02:00
Linus Groh
761809e793
std.Target: Update supported Apple OS versions
2026-05-22 00:44:16 +01:00
Andrew Kelley
c02d39a21c
std.Io.File: explain rationale for no Dir.setLength
...
closes #35353
2026-05-21 14:57:59 -07:00
Alex Rønne Petersen
0d4f3cc675
re-enable some tests on RISC-V that no longer fail
...
Miscompilations appear to have been fixed with LLVM 22.
closes https://github.com/ziglang/zig/issues/24299
closes https://github.com/ziglang/zig/issues/24300
closes https://github.com/ziglang/zig/issues/24301
closes https://github.com/ziglang/zig/issues/25083
2026-05-21 20:37:11 +02:00
Alex Rønne Petersen
bf1c847719
Merge pull request 'OpenBSD 7.9 cross libc support' ( #35375 ) from alexrp/zig:openbsd-7.9 into master
...
Reviewed-on: https://codeberg.org/ziglang/zig/pulls/35375
2026-05-21 06:47:10 +02:00
Alex Rønne Petersen
3b3833acf7
remove remnants of {m68k,powerpc,sparc64}-haiku support
...
These ports of Haiku have been nonfunctional/incomplete for years. We do not
generally treat such ports as "real" targets.
https://codeberg.org/ziglang/ziglang.org/commit/1efffd83ffd4078cea456c80ae806259207530ad
2026-05-21 06:38:51 +02:00
Alex Rønne Petersen
86b9e985cc
std.Target: bump max OpenBSD version to 7.9
2026-05-21 03:05:18 +02:00
Alex Rønne Petersen
21b7ceb5e5
std.fs.test: disable Dir.renamePreserve onto existing test on Windows
...
https://codeberg.org/ziglang/zig/issues/35359
2026-05-19 20:11:28 +02:00
Alex Rønne Petersen
fe6c3e58ef
std.Io.RwLock: disable lock canceling test on SPARC
...
https://codeberg.org/ziglang/zig/issues/35347
2026-05-19 20:07:00 +02:00
Alex Rønne Petersen
a8376afca9
Merge pull request 'add sparc64-linux-none to module test matrix' ( #35348 ) from alexrp/zig:sparc64-linux into master
...
Reviewed-on: https://codeberg.org/ziglang/zig/pulls/35348
2026-05-19 14:05:21 +02:00
linus
30698b03c0
Merge pull request 'std: Remove more deprecated functions' ( #35253 ) from linus/zig:more-deprecations into master
...
Reviewed-on: https://codeberg.org/ziglang/zig/pulls/35253
2026-05-19 11:41:52 +02:00
Ryan Liptak
71f23402bc
Writer: Fix splatBytePreserve losing data in certain cases
...
In cases where the now removed `preserve < w.end` branch was taken, some of the data in the buffer would never make it to logical sink. For example, in one of the newly added test cases where a buffer of 10 is filled with 9 bytes, and then `splatBytePreserve` is called with a preserve of 5 and a splat of 2, the 5 preserved bytes in the buffer would get memmoved to the front of the buffer in the `preserve < w.end` branch, clobbering the first 4 bytes (without any chance of them making it to the logical sink).
After this commit, `rebase` is called to allow the implementation to do the preservation while sending any relevant bytes to the logical sink in the process.
Addresses part of https://github.com/ziglang/zig/issues/24767
Supersedes https://github.com/ziglang/zig/pull/24875
2026-05-19 03:15:55 +02:00
EJ
5b647b792c
std.Io.Dir: doc comment for renamePreserve and tests ( #35317 )
...
Right now the comment specifies what will happen when "renaming a file _over_ ... or a directory _over_...". But the whole point of `renamePreserve` is not writing over anything.
Reviewed-on: https://codeberg.org/ziglang/zig/pulls/35317
Reviewed-by: Ryan Liptak <squeek502@noreply.codeberg.org >
2026-05-19 03:12:32 +02:00
Alex Rønne Petersen
3b330f1d7c
std: disable some failing cancelation tests on sparc64-linux
...
https://codeberg.org/ziglang/zig/issues/35347
2026-05-19 00:19:50 +02:00
Alex Rønne Petersen
3b41518c14
std: disable some tests that fail on sparc64
2026-05-18 21:39:34 +02:00
mlugg
27be3b069a
Merge pull request 'Elf2: various enhancements' ( #35332 ) from elf2 into master
...
Reviewed-on: https://codeberg.org/ziglang/zig/pulls/35332
2026-05-18 08:22:47 +02:00
Matthew Lugg
55cdf6c28b
std.elf: add Ident struct
...
This is much nicer than indexing a raw 16-byte buffer.
2026-05-17 18:08:57 +01:00
K4
1deaf5a085
rename std.Io.GenericReader to std.Io.Reader in outdated doc comment
2026-05-17 19:48:12 +03:00
Jari Vetoniemi
bdfbf432dd
std.process.abort: trap on freestanding
2026-05-12 15:33:21 +09:00
Quint Daenen
9787df9421
fix(std.Target/spirv): correct variable_pointers feature description
...
The description was incorrectly copied from physical_storage_buffer.
Reviewed-on: https://codeberg.org/ziglang/zig/pulls/35272
2026-05-10 08:11:51 +02:00
Alex Rønne Petersen
cb1fe0e578
Merge pull request 'ci: build/run all darwin module tests on aarch64-macos' ( #35256 ) from alexrp/zig:maccatalyst-ci into master
...
Reviewed-on: https://codeberg.org/ziglang/zig/pulls/35256
2026-05-10 03:04:58 +02:00
Alex Rønne Petersen
72966e2a7b
disable some tests that fail on x86_64-macos
...
These might be Rosetta 2 bugs, but I have no way to actually check since we no
longer have any native x86_64-macos CI machines.
2026-05-09 08:49:34 +02:00
Linus Groh
75c717bd06
std.bit_set, std.enums: Remove .init{Empty,Full}() in favor of .empty/.full
2026-05-08 22:12:27 +01:00
Linus Groh
33d2e571c7
std.mem: Remove containsAtLeastScalar() in favor of new impl
2026-05-08 22:04:30 +01:00
Linus Groh
83da6827fd
std.mem: Remove native/foreign variants of {read,write}PackedInt()
2026-05-08 21:59:09 +01:00
Linus Groh
4590712804
std.ascii: Remove indexOfIgnoreCase*() in favor of findIgnoreCase*()
2026-05-08 21:55:08 +01:00
Elaine Gibson
e2c5523cd1
std.zig.LibCDirs: remove config from haiku include path
2026-05-08 08:11:59 +01:00
Elaine Gibson
a85a29ae4d
std.zig.LibCDirs: add default haiku include directories
2026-05-07 21:45:59 +02:00
Matthew Lugg
989b6a1b93
std.Build: clear step inputs when resetting the step
...
Previously, when using `zig build -fincremental --watch some-run-step`,
if the binary initially builds fine but a future update introduces a
compile error, the old file system inputs of the `Step.Run`---containing
the executable file itself---would remain. This is a bug, because that
file *has* changed since the input was registered (due to incremental
compilation), and yet the `Run` step is not out-of-date because it was
skipped due to a transitive failure.
A simple reproduction for this issue was:
$ zig init
$ zig build test --watch -fincremental
Then, in another terminal, introduce a compile error:
$ sed -i 's/const/onst/' src/main.zig
Before this commit, this would cause the `zig build` command to repeat
updates forever, separated only by the 50ms debounce interval.
To fix this, when we reset a step with intent to re-run it, we should
clear its inputs immediately, so that if the step is skipped, it is
correctly marked as having no inputs.
This relates to a more general problem with the file system watching
logic which is that the set of inputs includes files in the cache which
are actually artifacts of other steps. Eventually, the build system
should learn to identify such files and exclude them from the set of
file system inputs. In other words, the fact that a `Run` step depends
on the executable generated by a `Compile` step should be modeled by a
dependency in the build step graph, *not* by a dependency on the path
where the `Compile` step happens to have emitted its executable file.
2026-05-07 19:45:37 +02:00
Matthew Lugg
45ecd6a996
std.hash_map: fix removeByPtr with array key type
...
Resolves: https://codeberg.org/ziglang/zig/issues/32086
2026-05-07 06:20:58 +02:00
Jari Vetoniemi
52c5223bca
std.os.linux: local variable for timeout in poll
...
The linux syscall ppoll modifies its second argument, thus using
`@constCast` here is not correct.
2026-05-07 05:45:20 +02:00
ahwayakchih
0ec456c785
Add missing BPF.TAX and BPF.TXA declarations
...
As described in #32112 , two instructions were missing from bpf.zig. They're declared in `linux/filter.h` (not in `linux/bpf.h`).
2026-05-07 05:38:45 +02:00
pentuppup
6d98649f68
llvm: print linksection when formatting IR
2026-05-07 05:37:23 +02:00
Andrew Kelley
cd23f7a814
Merge pull request 'std.meta: Remove Int/Tuple in favor of @Int/@Tuple' ( #35188 ) from linus/zig:deprecated-std-meta into master
...
Reviewed-on: https://codeberg.org/ziglang/zig/pulls/35188
Reviewed-by: Andrew Kelley <andrew@ziglang.org >
2026-05-06 19:35:40 +02:00
Andrew Kelley
3d56df1716
Merge pull request 'std.fmt, std.mem.Allocator: Remove bufPrintZ()/dupeZ() in favor of bufPrintSentinel()/dupeSentinel()' ( #35190 ) from linus/zig:deprecated-std-fmt-mem into master
...
Reviewed-on: https://codeberg.org/ziglang/zig/pulls/35190
Reviewed-by: Andrew Kelley <andrew@ziglang.org >
2026-05-06 19:34:52 +02:00
Alex Rønne Petersen
994547d19a
std.debug: disable stack traces on avr
...
https://codeberg.org/ziglang/zig/issues/31127
2026-05-06 16:03:56 +02:00
Alex Rønne Petersen
3e0dfe83ce
drop support for powerpc-linux-gnueabi(hf)
...
These are the last PowerPC cross targets that still use the IBM 128-bit long
double format. I'm not convinced anyone cares enough about them to justify
keeping them around, so this drops support. powerpc-linux-musleabi(hf), which
use the IEEE format, are still fully supported for people who want to use old
32-bit PowerPC hardware.
2026-05-06 15:50:45 +02:00