Alex Rønne Petersen
a83aad152b
Merge pull request 'LLVM 22' ( #32013 ) from llvm22 into master
...
Reviewed-on: https://codeberg.org/ziglang/zig/pulls/32013
2026-04-26 07:03:38 +02:00
Andrew Kelley
f0a7e3ccae
Merge pull request 'fix more c abi bugs' ( #32071 ) from c-abi-padding into master
...
Reviewed-on: https://codeberg.org/ziglang/zig/pulls/32071
Reviewed-by: Andrew Kelley <andrew@ziglang.org >
2026-04-26 04:22:38 +02:00
Andrew Kelley
e7d74e49b0
declare linker test bankruptcy
...
The active contributors and maintainers of Zig's linker code have
generally found the current linker test harness to be cumbersome. The
tests require a lot of maintenance, but do not provide a lot of
coverage, and when they fail it is painful to troubleshoot.
Furthermore, as part of working on #31691 , I don't want to port over the
CheckObject step, because I don't like the code anyway.
The plan forward is to start enhancing `zig objdump` to assist in
linker development, as well as using it as the basis for snapshot
testing.
We absolutely need linker test coverage, but we need to try to improve
these things about the next attempt:
* less effort to create and maintain tests
* less CPU overhead - we should be able to add a lot of tests without
adding a lot of CI time.
* more helpful failures. A failed linker test should provide the next
steps a developer can take to understand why the test failed.
* a goal of porting over all of LLD's test suite, or at least the good
ones.
I'm not going to open an issue to track the lost linker test coverage,
because there was already so much lack of coverage for linker stuff.
However I will open issues to track this lost coverage:
* the deleted checks from test/standalone/glibc_compat/build.zig
* the deleted checks from test/standalone/compiler_rt_panic/build.zig
* the deleted checks from test/standalone/ios/build.zig
2026-04-26 00:15:07 +02:00
Alex Rønne Petersen
8443e2ab43
ci: update tarballs to 0.17.0-dev.203+073889523
2026-04-25 22:02:35 +02:00
Alex Rønne Petersen
0738895237
stage1: update zig1.wasm
...
Signed-off-by: Alex Rønne Petersen <alex@alexrp.com >
2026-04-25 21:58:40 +02:00
Alex Rønne Petersen
d3ee286511
test: add loongarch64-linux-muslsf to test-c-abi matrix
2026-04-25 21:54:48 +02:00
Alex Rønne Petersen
1bd9f3f4f2
test: add loongarch64-linux-(gnu,musl)sf to test-modules matrix
2026-04-25 21:54:48 +02:00
Alex Rønne Petersen
a9fbcb7c67
test: add loongarch32-linux-none to test-modules matrix
2026-04-25 21:54:48 +02:00
Alex Rønne Petersen
9ecf5b4603
test: add some loongarch32 targets to llvm_targets
2026-04-25 21:54:48 +02:00
Alex Rønne Petersen
963c17f097
test: add hexagon-linux-musl to llvm_targets
2026-04-25 21:54:48 +02:00
Alex Rønne Petersen
bd12a5a6e1
std: re-enable a bunch of tests that now pass
...
closes https://github.com/ziglang/zig/issues/21893
closes https://github.com/ziglang/zig/issues/23806
closes https://github.com/ziglang/zig/issues/23807
closes https://github.com/ziglang/zig/issues/24191
closes https://codeberg.org/ziglang/zig/issues/30220
2026-04-25 21:54:48 +02:00
Alex Rønne Petersen
1af476d5d8
behavior: re-enable a bunch of behavior tests that now pass
...
closes https://github.com/ziglang/zig/issues/9660
closes https://github.com/ziglang/zig/issues/21050
closes https://github.com/ziglang/zig/issues/21090
closes https://github.com/ziglang/zig/issues/21091
2026-04-25 21:54:48 +02:00
Alex Rønne Petersen
cc022047c3
Revert "test: disable hexagon-linux-musl C ABI tests for now"
...
This reverts commit fce7878a91 .
The bug was fixed in LLVM 22.
2026-04-25 21:54:48 +02:00
Alex Rønne Petersen
7829397f89
Revert "std.zig.system: disable vector support on s390x for now"
...
This reverts commit 1cd913a0ec .
The bug was fixed in LLVM 22.
2026-04-25 21:54:48 +02:00
Alex Rønne Petersen
061c13f13b
Revert "std.mem: work around LoongArch inline asm bug in doNotOptimizeAway()"
...
This reverts commit e7f1624e6e .
The bug was fixed in LLVM 22.
2026-04-25 21:54:48 +02:00
Alex Rønne Petersen
4eb8640213
Revert "test: skip alternative constraints behavior test on LoongArch"
...
This reverts commit f90548e740 .
The bug was fixed in LLVM 22.
2026-04-25 21:54:48 +02:00
Alex Rønne Petersen
51a6a5a2a6
Revert "std.math.modf: disable vector test on LoongArch with LSX"
...
This reverts commit 35d2b1e99a .
The bug was fixed in LLVM 22.
2026-04-25 21:54:48 +02:00
Alex Rønne Petersen
a0ad35d0ba
Revert "test: disable some vector ctz/clz behavior tests on LoongArch with LSX"
...
This reverts commit beb25b0430 .
The bug was fixed in LLVM 22.
2026-04-25 21:54:48 +02:00
Alex Rønne Petersen
8eb8034af9
Revert "std.zig.system: Force soft_float feature on for MIPS soft float targets."
...
This reverts commit 71a237e764 .
The bug was fixed in LLVM 22.
2026-04-25 21:54:48 +02:00
Alex Rønne Petersen
cb2cb21b31
std.zig.system.x86: improve AVX10 detection
2026-04-25 21:54:48 +02:00
Alex Rønne Petersen
13c6e227a9
std.zig.system.x86: require OS APX save support for APX features
2026-04-25 21:54:48 +02:00
Alex Rønne Petersen
44004b05ef
std.zig.system.x86: detect more APX features
2026-04-25 21:54:48 +02:00
Alex Rønne Petersen
c46a8e0d2c
std.zig.system.x86: detect Diamonds Rapids, Wildcat Lake, and Nova Lake
2026-04-25 21:54:48 +02:00
Alex Rønne Petersen
a24eee8390
std.zig.system.x86: fix prefetchi detection on AMD
2026-04-25 21:54:48 +02:00
Alex Rønne Petersen
6880b5678a
std.zig.system.arm: add detection for a bunch more cores
2026-04-25 21:54:48 +02:00
Alex Rønne Petersen
eb041a514f
std.zig.system.windows: update aarch64 CPU feature detection
2026-04-25 21:54:48 +02:00
Alex Rønne Petersen
7c3d4642ae
std.os.windows: update PF feature flags from winnt.h
2026-04-25 21:54:48 +02:00
Alex Rønne Petersen
67fa822300
test: disable switch on pointer type behavior test with LLVM
...
See: https://github.com/llvm/llvm-project/issues/176634
ref https://github.com/ziglang/zig/issues/23509
2026-04-25 21:54:48 +02:00
Alex Rønne Petersen
1be84a39b8
compiler: fix and simplify DllMainCRTStartup handling
...
See: https://github.com/llvm/llvm-project/pull/171680
2026-04-25 21:54:48 +02:00
Alex Rønne Petersen
a8e624d7f1
compiler: let LLVM set the 64bit feature from the target triple on powerpc targets
2026-04-25 21:54:48 +02:00
Alex Rønne Petersen
bb7a43490f
compiler: let LLVM set the x32 feature from the target triple on x86 targets
2026-04-25 21:54:47 +02:00
Alex Rønne Petersen
4c50c4b6e5
llvm: wire up the xtensa backend
...
As of LLVM 22, it can produce assembly and object files. No LLD support,
however, so using it is still a bit of a pain.
2026-04-25 21:54:47 +02:00
Alex Rønne Petersen
473df0c106
llvm: switch to wasip<n> for preview wasi versions in triples
2026-04-25 21:54:47 +02:00
Alex Rønne Petersen
593f45ee02
llvm: switch most targets to using half and fp128 IR types
...
As of LLVM 22, most backends can (finally) handle legalization of these types as
necessary, so we don't need to do it ourselves anymore.
closes https://github.com/ziglang/zig/issues/23674
2026-04-25 21:54:47 +02:00
Alex Rønne Petersen
9e1e54d324
compiler-rt: additionally export __trunctfhf2 as __trunckfhf2 on powerpc
...
This is the name LLVM 22 expects.
2026-04-25 21:54:47 +02:00
Alex Rønne Petersen
421d997938
llvm: update data layout strings to LLVM 22
2026-04-25 21:54:47 +02:00
Alex Rønne Petersen
9aaebf67d2
zig cc: update options data to LLVM 22
2026-04-25 21:54:47 +02:00
Alex Rønne Petersen
ca0b3318a0
std.Target: update CPU and feature data to LLVM 22
2026-04-25 21:54:47 +02:00
Alex Rønne Petersen
c855c61432
libtsan: backport llvm/llvm-project#194116
...
https://github.com/llvm/llvm-project/pull/194116
2026-04-25 21:54:47 +02:00
Alex Rønne Petersen
f3bd49a5d8
libtsan: backport llvm/llvm-project#183411
...
https://github.com/llvm/llvm-project/pull/183411
2026-04-25 21:49:39 +02:00
Alex Rønne Petersen
dbaea8d67e
libtsan: update to LLVM 22
2026-04-25 21:49:39 +02:00
Alex Rønne Petersen
e79b4e907a
libunwind: update to LLVM 22
2026-04-25 21:49:39 +02:00
Alex Rønne Petersen
dfabf1586f
libcxx: update to LLVM 22
2026-04-25 21:49:39 +02:00
Alex Rønne Petersen
80212b03ff
libcxxabi: update to LLVM 22
2026-04-25 21:49:39 +02:00
Alex Rønne Petersen
520af69660
zig cc: update intrinsic headers to LLVM 22
2026-04-25 21:49:39 +02:00
Alex Rønne Petersen
1180711035
zig cc: update driver files to LLVM 22
2026-04-25 21:49:39 +02:00
Alex Rønne Petersen
2b6ab59435
cmake: update to LLVM 22
...
closes https://codeberg.org/ziglang/zig/issues/30558
2026-04-25 21:49:39 +02:00
Alex Rønne Petersen
54573e3542
compiler: fix LLVM ABI selection for loongarch32-linux-musl*
2026-04-25 21:49:39 +02:00
Alex Rønne Petersen
8deae2da4c
std.zig.llvm.Builder: fix writing u64 max constant for type bit_count > 64
2026-04-25 21:49:39 +02:00
Alex Rønne Petersen
48d5b66677
std.Target: fuchsia supports arm/thumb now
2026-04-25 21:49:38 +02:00