Andrew Kelley
f250802ce7
compiler: introduce @Restrict builtin
...
conservative, incomplete change
2025-08-31 20:40:15 -07:00
Andrew Kelley
fc23fe90ce
std.os.windows: avoid dragging in baggage on non-windows
...
particularly noticeable when usize is not 4 or 8 bytes
2025-08-31 20:39:47 -07:00
Andrew Kelley
ec36e0609f
delete behavior test that depends on std.fmt
...
behavior tests should have minimal dependency on std
2025-08-31 12:49:18 -07:00
Andrew Kelley
150169f1e0
std.fmt: delete deprecated APIs
...
std.fmt.Formatter -> std.fmt.Alt
std.fmt.format -> std.Io.Writer.print
2025-08-31 12:49:18 -07:00
Alex Rønne Petersen
ab99dd9c5d
zig_clang: fix ZigClangAPValueLValueBase struct layout to match Clang 21
...
Fixes the compiler build for various targets, especially 32-bit.
2025-08-31 20:18:57 +02:00
Brandon Mercer
7fdd60df1c
Populate MSG struct for OpenBSD ( #25076 )
...
* update the MSG struct with the correct values for openbsd
* add comment with link to sys/sys/socket.h
---------
Co-authored-by: Brandon Mercer <bmercer@eutonian.com>
2025-08-30 22:04:32 +00:00
Andrew Kelley
b7104231af
Merge pull request #25077 from ziglang/GenericReader
...
std.Io: delete GenericReader, AnyReader, FixedBufferStream; and related API breakage
2025-08-30 12:43:52 -07:00
Alex Rønne Petersen
151314346d
Merge pull request #25055 from ziglang/llvm21
...
LLVM 21
2025-08-30 21:00:53 +02:00
Andrew Kelley
e2fdaea0b3
Revert "std.Io.Reader: work around llvm backend bug"
...
This reverts commit 530cc2c1111699d9d02ad9ebef94efa6b99f5205.
The compiler bug has been fixed.
2025-08-30 06:04:25 -07:00
Alex Rønne Petersen
8896046b11
ci: update tarballs to 0.16.0-dev.104+689461e31
2025-08-30 13:27:25 +02:00
Alex Rønne Petersen
d2a038c082
stage1: update zig1.wasm
...
Needed because some std.Target.aarch64 features were renamed in LLVM 21.
Signed-off-by: Alex Rønne Petersen <alex@alexrp.com>
2025-08-30 13:27:25 +02:00
Alex Rønne Petersen
66b43234bb
std: disable sha3-512 single test on RISC-V with V support
...
https://github.com/ziglang/zig/issues/25083
2025-08-30 13:27:25 +02:00
Andrew Kelley
31a0c2a36a
child process test: preemptively use streaming mode
...
works around #24984
2025-08-30 00:48:50 -07:00
Andrew Kelley
07da9567e6
compiler: fix macos build
2025-08-30 00:48:50 -07:00
Andrew Kelley
9adcc31ca3
update tools and other miscellaneous things to new APIs
2025-08-30 00:48:50 -07:00
Andrew Kelley
fadd268a60
upgrade more old API uses
2025-08-30 00:48:50 -07:00
Andrew Kelley
9a0970a12b
rework std.Io.Writer.Allocating to support runtime-known alignment
...
Also, breaking API changes to:
* std.fs.Dir.readFileAlloc
* std.fs.Dir.readFileAllocOptions
2025-08-30 00:48:50 -07:00
Alex Rønne Petersen
0071917621
test: disable some varargs behavior tests on RISC-V due to LLVM 21 regression
...
https://github.com/ziglang/zig/issues/25064
2025-08-30 06:36:41 +02:00
Alex Rønne Petersen
3a5b7a31ff
test: use -Wno-unterminated-string-initialization for cbe tests
...
https://github.com/llvm/llvm-project/issues/153314
2025-08-30 06:36:41 +02:00
Alex Rønne Petersen
2cb412ff1b
test: re-enable a bunch of vector behavior tests on hexagon
2025-08-30 06:36:41 +02:00
Alex Rønne Petersen
0683e1564c
test: use long calls for hexagon-linux module tests
2025-08-30 06:36:41 +02:00
Alex Rønne Petersen
f149112951
test: expand C ABI test coverage to hexagon-linux-musl
2025-08-30 06:36:41 +02:00
Alex Rønne Petersen
f6879c35af
std.posix.test: fix mmap() test to use actual page size instead of 4096
2025-08-30 06:36:41 +02:00
Alex Rønne Petersen
59ee4e8e54
std.hash.xxhash: disable xxhash3 test on all mips64 targets
...
See also dd1de18f9629904b5d97d5791a47244ac63385da.
https://github.com/ziglang/zig/issues/23807
2025-08-30 06:36:41 +02:00
Alex Rønne Petersen
af78c55676
std: skip some failing tests on hexagon
2025-08-30 06:36:41 +02:00
Alex Rønne Petersen
367be3777c
std.Thread: make unreachable errors in sleep() clearer
2025-08-30 06:36:41 +02:00
Alex Rønne Petersen
e351ee3b7f
Revert "llvm: workaround crashes in llvm loop optimizations"
...
This reverts commit b4fd57a9c114748afb9ba0a04bede61089a02ddf.
https://github.com/llvm/llvm-project/pull/149743
2025-08-30 06:36:41 +02:00
Alex Rønne Petersen
907b5b73b4
compiler: remove medium code model workaround for loongarch64
...
The default was changed in LLVM 21.
2025-08-30 06:36:41 +02:00
Alex Rønne Petersen
e4f38a611f
llvm: switch to native f16 IR type for all hexagon targets
...
This was fixed in LLVM 21, in particular for targets older than v68.
2025-08-30 06:36:41 +02:00
Alex Rønne Petersen
1c858ba7e3
llvm: remove f16 special case for soft float aarch64
2025-08-30 06:36:41 +02:00
Alex Rønne Petersen
d4882d10f8
llvm: switch to native f128 IR type for nvptx
...
LLVM 21 added support for this.
2025-08-30 06:36:41 +02:00
Alex Rønne Petersen
53c53a2697
llvm: switch to native f16 IR type for s390x
...
LLVM 21 added support for this.
2025-08-30 06:36:41 +02:00
Alex Rønne Petersen
c4592da882
compiler-rt: use native f16 type for loongarch
...
This ABI changed in LLVM 21.
2025-08-30 06:36:41 +02:00
Alex Rønne Petersen
e9ac2ce116
compiler-rt: move strlen from libzigc to here
...
LLVM 21 has started recognizing strlen-like idioms and optimizing them to strlen
calls, so we need this function provided in compiler-rt for libc-less
compilations.
2025-08-30 06:36:41 +02:00
Alex Rønne Petersen
dfa55e193d
musl: replace .data.rel.ro with .section .data.rel.ro,"aw"
...
The former was an LLVM extension that appears to have been removed in LLVM 21.
I won't bother fixing gen_stubs.zig; see #23881 .
2025-08-30 06:36:41 +02:00
Alex Rønne Petersen
2b84eb85ee
llvm: update data layout strings for LLVM 21
2025-08-30 06:36:41 +02:00
Alex Rønne Petersen
c44f631c72
zig cc: pass -mthumb to the assembler as necessary
2025-08-30 06:36:41 +02:00
Alex Rønne Petersen
8c47dda7df
zig cc: pass CPU features to Clang using the new -Xclangas when assembling
...
Unfortunately, we cannot yet remove the special-casing for RISC-V CPU features,
so that code stays.
Closes #10411 .
2025-08-30 06:36:41 +02:00
Alex Rønne Petersen
c0cfe571f9
zig cc: update options data to LLVM 21
2025-08-30 06:36:41 +02:00
Alex Rønne Petersen
5b80900a5d
std.zig.system: update aarch64 and powerpc cpu detection for LLVM 21
2025-08-30 06:36:41 +02:00
Alex Rønne Petersen
0b9f5e2549
std.Target: fix alignment for int/long types on m68k
2025-08-30 06:36:41 +02:00
Alex Rønne Petersen
fdd32a2257
std.Target: add managarm OS tag
2025-08-30 06:36:41 +02:00
Alex Rønne Petersen
464eef390b
std.Target: make ultrasparc3 the baseline for sparc64-solaris
...
https://github.com/llvm/llvm-project/pull/149990
2025-08-30 06:36:41 +02:00
Alex Rønne Petersen
978555eea4
std.Target.x86: purge avx10.n-256, rename avx10.n_512 to avx10.n, require evex512 for avx512f
...
Intel has abandoned AVX10.N/128,256; AVX10.N is now always 512-bit.
2025-08-30 06:36:41 +02:00
Alex Rønne Petersen
2c0cc81e74
std.Target: bump feature bit count from 288 to 317
...
/lib/std/debug.zig:559:14: error: reached unreachable code
if (!ok) unreachable; // assertion failure
^~~~~~~~~~~
/lib/std/Target/riscv.zig:335:21: note: called at comptime here
std.debug.assert(len <= CpuFeature.Set.needed_bit_count);
~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2025-08-30 06:36:41 +02:00
Alex Rønne Petersen
587eddda28
std.Target: update CPU features to LLVM 21
2025-08-30 06:36:41 +02:00
Alex Rønne Petersen
94f95fefe3
update_cpu_features: bump branch quota for amdgcn
...
/lib/std/Target/amdgcn.zig:1656:5: error: evaluation exceeded 1000 backwards branches
for (&result, 0..) |*elem, i| {
^~~
2025-08-30 06:36:41 +02:00
Alex Rønne Petersen
5739ce786e
update_cpu_features: fix a fmtId call to be fmtIdPU
2025-08-30 06:36:41 +02:00
Alex Rønne Petersen
7e6cb7c7a5
compiler: respond to API changes in LLVM 21
2025-08-30 06:36:41 +02:00
Alex Rønne Petersen
ac20506090
libtsan: update to LLVM 21
2025-08-30 06:36:41 +02:00