526 Commits
Author SHA1 Message Date
Alex Rønne Petersen 2d6ff903a1 std.Target: add z80 arch tag and ABI info
Also fix cCharSignedness() for ez80.
2026-10-26 11:02:44 +01:00
Alex Rønne Petersen 3237f171fd update_cpu_features: populate z80 data 2026-10-26 11:02:44 +01:00
Alex Rønne Petersen 38186a3cfe std.Target: update some baseline() CPU models 2026-10-26 11:02:44 +01:00
Alex Rønne Petersen 766840daf1 std.Target: remove the kalimba arch tag
What little target info we had for this was incomplete/wrong, and it's
annoyingly difficult to get reliable information about it because Qualcomm
doesn't publish the documentation. So just delete it.
2026-10-26 11:02:44 +01:00
Alex Rønne Petersen c7716c1212 update_cpu_features: populate microblaze data 2026-10-26 11:02:44 +01:00
Alex Rønne Petersen 0bb7fc0cd0 update_cpu_features: populate sh data 2026-10-26 11:02:44 +01:00
Alex Rønne Petersen 2d2de5f69e std.Target: fix Abi.default() for sh-openbsd and sh(eb)-netbsd 2026-10-26 11:02:44 +01:00
Alex Rønne Petersen 8df29bb518 update_cpu_features: populate or1k data 2026-10-26 11:02:44 +01:00
Alex Rønne Petersen f759705998 update_cpu_features: populate m88k data 2026-10-26 11:02:43 +01:00
Alex Rønne Petersen 06555e298d update_cpu_features: rename generic xtensa model to xtensa
Since it's just the base Xtensa ISA.
2026-10-26 11:02:43 +01:00
Alex Rønne Petersen 4449211074 update_cpu_features: rename generic arc model to arcv2 2026-10-26 11:02:43 +01:00
Alex Rønne Petersen e80dcf3474 update_cpu_features: rename generic csky model to e2 2026-10-26 11:02:43 +01:00
Alex Rønne Petersen 104652f6c6 update_cpu_feature: replace generic/baseline riscv models with common arch combos 2026-10-26 11:02:43 +01:00
Alex Rønne Petersen b012a84c34 std.Target: pick better baseline models for spirv 2026-10-26 11:02:43 +01:00
Alex Rønne Petersen cdadcb2e1d std.Target: adjust OS min/max version ranges for GPU targets 2026-10-26 11:02:43 +01:00
Alex Rønne Petersen 020aa22288 update_cpu_features: flesh out spirv models a bit 2026-10-26 11:02:43 +01:00
Alex Rønne Petersen 1e440e14ef update_cpu_feature: replace generic aarch64 model with architecture level models
And use armv8a as the generic model.

The old generic model was incoherent; it didn't even have v8a.
2026-10-26 11:02:43 +01:00
Alex Rønne Petersen cc2431f382 update_cpu_features: remove generic s390x model
This is just arch8/z10.
2026-10-26 11:02:43 +01:00
Alex Rønne Petersen 78a614343c update_cpu_features: remove generic hexagon model
This is just hexagonv60.
2026-10-26 11:02:43 +01:00
Alex Rønne Petersen 6ed004cad7 update_cpu_features: remove generic lanai model
This is just v11.
2026-10-26 11:02:43 +01:00
Alex Rønne Petersen 0d142b9e17 std.Target: remove amdpal and mesa3d OS tags
* mesa3d is for internal use in Mesa's shader compilation pipeline. This never
  really made sense to have in Zig.
* amdpal is for LLPC, part of AMDVLK, which AMD discontinued development of in
  favor of RADV in 2025.

Follow-up work: Removing the amdgcn_cs calling convention.
2026-10-26 11:02:43 +01:00
Alex Rønne Petersen aa9f92f9fd std.Target: support arm-switch-eabihf target
contributes to https://codeberg.org/ziglang/zig/issues/31341
2026-10-26 11:02:42 +01:00
Alex Rønne Petersen 785bb6e576 update_cpu_features: clean up powerpc features/models a bit
* Remove codegen options
* Remove future ISA extensions/models
* Remove generic model
* Rename ppc model to ppc32
* Flatten microarchitecture features
* Fix fast-mflr casing
2026-10-26 11:02:42 +01:00
Alex Rønne Petersen cf589109e7 update_cpu_features: clean up sparc features a bit
* Remove codegen options
* Flatten microarchitecture features
2026-10-26 11:02:42 +01:00
Alex Rønne Petersen f20ff0be1d update_cpu_features: rename m68k models to follow Zig conventions 2026-10-26 11:02:42 +01:00
Alex Rønne Petersen 3d71112ae5 update_cpu_features: remove generic m68k model
This was just identical to the M68000 model.
2026-10-26 11:02:42 +01:00
Alex Rønne Petersen 6847e90ce7 update_cpu_features: remove generic bpf model
This was just identical to the v1 model.
2026-10-26 11:02:42 +01:00
Alex Rønne Petersen 730aa6c502 update_cpu_features: remove generic msp430 model
This was just identical to the msp430 model.
2026-10-26 11:02:42 +01:00
Ali Cheraghi b60a4af44c llvm: fix blocking issues to get tests running 2026-10-23 09:18:03 +03:30
Alex Rønne Petersen f52b9598e0 std.Target: bump min/max OpenBSD version to 7.9 and 8.0 respectively 2026-10-21 19:49:59 +02:00
Alex Rønne Petersen 1c5c725431 remove mips64el-openbsd support
OpenBSD 8.0 dropped this target.
2026-10-21 19:49:58 +02:00
Jacob Young f08a8f0fc2 main: reimplement compiler debug flags
* Add `.llvmbc`/`.llvmir` to `ObjectFormat` for emitting unoptimized IR
* Replace `--verbose-air`, `--verbose-intern-pool`,
  `--verbose-generic-instances`, `--verbose-llvm-ir`, and
  `--verbose-llvm-bc` with various `--debug-log` scopes
  * `--debug-log illegal-air`: pre-legalized Air
  * `--debug-log legal-air`: post-legalized Air
  * `--debug-log air`: final Air with liveness
  * `--debug-log ip-stats`: InternPool statistics
  * `--debug-log ip-values`: InternPool values
  * `--debug-log ip-generic-instances`: InternPool generic instances
  * `--debug-log llvm-ir`: pre-optimized LLVM IR
  * `--debug-log opt-llvm-ir`: post-optimized LLVM IR
* Delete `--verbose-cimport` which does nothing
* Delete `--verbose-llvm-cpu-features` which is equivalent to looking at
  the outputs of `--show-builtin` and `--debug-log llvm-ir`
2026-10-21 10:04:01 -07:00
Jacob Young b2d0675f90 Type: make c_longdouble an invalid type without x87
Also invert `xclang_flags` loop nesting which will make it easier to
translate features to something without `-Xclang` in the future.
2026-10-20 15:47:57 -04:00
Alex Rønne Petersen 6d24378a30 Merge pull request 'Linux 7.3' (#37333) from alexrp/zig:linux-7.3 into master
Reviewed-on: https://codeberg.org/ziglang/zig/pulls/37333
2026-10-20 09:53:06 +02:00
Alex Rønne Petersen e771583d88 Merge pull request 'std.Target: more fixes' (#37334) from alexrp/zig:target-fixes into master
Reviewed-on: https://codeberg.org/ziglang/zig/pulls/37334
2026-10-20 09:52:48 +02:00
Alex Rønne Petersen ffe1510d29 std.Target: drop the baseline CPU for hppa from pa_7300lc to pa_7000
This is what Debian and Gentoo support as their baseline.
2026-10-20 06:13:01 +02:00
Alex Rønne Petersen a0d8ee3fde std.Target: drop the baseline CPU for kvx from coolidge_v2 to coolidge_v1
This is the default in the Linux kernel and GCC ports for kvx.
2026-10-20 06:13:00 +02:00
Alex Rønne Petersen 9bcc2b6c8c std.Target: drop the baseline CPU for alpha from ev6 to ev56
This is the baseline for the Linux kernel.
2026-10-20 06:13:00 +02:00
Alex Rønne Petersen b0ce4f0996 update_cpu_features: omit more optional arm features
Both on models and architecture levels this time.

As part of this, I removed neon from the baseline model because that isn't
actually part of the ARMv7 baseline on any platform I'm aware of, and it made
our baseline binaries not work on some real boards, e.g. Tegra 2. We keep
vfp3d16 since virtually every ARMv7 board has VFP.

To not regress PlayStation Vita performance, I also added a kermit model with
neon enabled. This was necessary since vortex_a9 lost all NEON/VFP features by
default.
2026-10-20 05:37:12 +02:00
Alex Rønne Petersen e76f969f1a update_cpu_features: flesh out ve data 2026-10-20 03:29:36 +02:00
Alex Rønne Petersen 0f09c3c55a update_cpu_features: flesh out xcore data
LLVM's backend is very outdated so we can't extract any useful data from it.
2026-10-20 03:29:33 +02:00
Alex Rønne Petersen 3513dc3695 std.Target: update max Linux version to 7.3.0 2026-10-19 18:04:05 +02:00
Alex Rønne Petersen 3dbffc6886 std.Target: fix some inaccuracies in stackAlignment() 2026-10-19 08:03:19 +02:00
Alex Rønne Petersen c0cc0f5991 std.Target: fix cTypeBitSize() for ez80-freestanding
It was incorrectly using the generic prong. Just throw tios in the same OS prong
as freestanding and ashetos.
2026-10-19 06:58:23 +02:00
Alex Rønne Petersen ce95ea1113 std.Target: fix cTypeBitSize(.{long,ulong}) for plan9
They really made this choice *after* Microsoft's mistake.
2026-10-19 06:56:12 +02:00
Alex Rønne Petersen 7a310e4ab6 std.Target: fix cTypeBitSize(.longdouble) on alpha-netbsd/openbsd 2026-10-19 06:52:16 +02:00
Alex Rønne Petersen 3026fdece2 std.Target: fix cTypeBitSize(.longdouble) on x86[_64]-linux-ohos 2026-10-19 06:52:04 +02:00
Alex Rønne Petersen 7b38151ec2 std.Target: further simplify cTypeBitSize()
And fix long double size on x86_64-linux-android as a happy accident.
2026-10-19 06:47:50 +02:00
Alex Rønne Petersen 5c1bbdc433 std.Target: fix cCallingConvention() to return m68k_sysv for m68k-netbsd 2026-10-19 06:23:24 +02:00
Alex Rønne Petersen df360a8ca2 std.Target: fix cCallingConvention() to pick xtensa_windowed for abi != .call0 2026-10-19 06:15:42 +02:00