Commit Graph

38002 Commits

Author SHA1 Message Date
Alex Rønne Petersen 69fcca8556 test: disable a couple of failing C ABI tests on hexagon 2026-04-26 07:44:58 +02:00
Alex Rønne Petersen 0e8e987deb README: LLVM 21 -> 22 2026-04-26 07:10:46 +02:00
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