2188 Commits

Author SHA1 Message Date
Christian Legnitto
36e3348cdc release-plz2: update difftest Cargo.lock in the release PR
All checks were successful
Release-plz / Release-plz release (push) Has been skipped
Release-plz / Release-plz PR (push) Has been skipped
Rust Toolchain Upgrade / check-and-upgrade (push) Has been skipped
The difftest workspace pulls `spirv-std` / `spirv-builder` via path
deps, so its `Cargo.lock` references their versions. release-plz only
bumps the root workspace, so add a follow-up step on the `release-pr`
job that checks out the freshly-created release PR, runs a targeted
`cargo update` against the difftest manifest for the five spirv-*
packages, and pushes the resulting lockfile change back onto the PR
before CI runs against it. Uses the documented "commit files to the
release PR" pattern from release-plz so we don't need a config option
upstream. `RUSTUP_TOOLCHAIN=stable` avoids rust-toolchain.toml
auto-installing the pinned nightly just to refresh a lockfile.
2026-05-20 08:50:43 +00:00
firestar99
f989936ad8 release-plz2: add release-dry-run job 2026-05-20 08:50:43 +00:00
firestar99
5a9a3bf99a release-plz2: only create one github release for all crates 2026-05-20 08:50:43 +00:00
@brody2consult - Chris J. Brody
66b7eb3922 support memset on 128-bit integers
All checks were successful
Release-plz / Release-plz release (push) Has been skipped
Release-plz / Release-plz PR (push) Has been skipped
Rust Toolchain Upgrade / check-and-upgrade (push) Has been skipped
Co-authored-by: firestar99 <firestar99@vectorware.com>
2026-05-07 11:20:11 +00:00
Christian Legnitto
c904e5c039 Keep #[spirv(...)] entry-points from being DCE'd by rustc.
All checks were successful
Release-plz / Release-plz release (push) Has been skipped
Release-plz / Release-plz PR (push) Has been skipped
Rust Toolchain Upgrade / check-and-upgrade (push) Has been skipped
When building a shader as a `dylib`, rustc's `cross_crate_inlinable`
heuristic can mark a `pub fn` entry-point as inlinable, which
internalizes it and drops its `OpEntryPoint` before codegen ever runs.

Override the query to return `false` for entry-points.

Fixes #590.
2026-05-04 04:55:23 +00:00
firestar99
c41db00890 difftest: unify num-traits features on cpu to prevent rustc_codegen_spirv.so rebuilds
All checks were successful
Release-plz / Release-plz release (push) Has been skipped
Release-plz / Release-plz PR (push) Has been skipped
Rust Toolchain Upgrade / check-and-upgrade (push) Has been skipped
2026-04-24 13:38:50 +00:00
firestar99
16dd91e023 difftest: document nextest requirement 2026-04-24 13:38:50 +00:00
firestar99
6483aa6f42 difftest: typo fixes 2026-04-24 13:38:50 +00:00
Christian Legnitto
4cfbe0097f difftest: Unconditionally create output file 2026-04-24 13:38:50 +00:00
firestar99
63872d9291 difftest: cargo windows bug workaround, mirror all workspace dependencies 2026-04-24 13:38:50 +00:00
Firestar99
17cc4d206b difftest: better io error reporting in config 2026-04-24 13:38:50 +00:00
Firestar99
ae3e45b219 difftest: compile difftest in ci before running 2026-04-24 13:38:50 +00:00
firestar99
002db6e294 difftest: move lib into tests workspace, move mod config to new crate types, massive difftest speedup 36s -> 6s 2026-04-24 13:38:50 +00:00
Firestar99
d7aa709ac8 difftest: use nextest to properly filter tests, adjust ci 2026-04-24 13:38:50 +00:00
Firestar99
76458ac170 difftest: fix use-installed-tools feature 2026-04-24 13:38:50 +00:00
Firestar99
ecc8f05aaa difftest: disable logger when listing available tests 2026-04-24 13:38:50 +00:00
firestar99
d73d7ac051 difftest: switch to mimic-libtest from tester 2026-04-24 13:38:50 +00:00
firestar99
00398eb216 difftest: move difftest bin to runner 2026-04-24 13:38:50 +00:00
Firestar99
4d2d2c6060 difftest: fix test names on windows 2026-04-24 13:38:50 +00:00
Firestar99
3f2a7d5aa8 difftest: fix test mod paths with subdirectories 2026-04-24 13:38:50 +00:00
Firestar99
e8ea313af1 difftest: use relative paths, create output directory in target 2026-04-24 13:38:50 +00:00
firestar99
e2e4d529a5 chore: release v0.10.0-alpha.1
All checks were successful
Release-plz / Release-plz release (push) Has been skipped
Release-plz / Release-plz PR (push) Has been skipped
Rust Toolchain Upgrade / check-and-upgrade (push) Has been skipped
v0.10.0-alpha.1
2026-04-17 13:33:01 +00:00
firestar99
97588f0d7e release-plz: setup release-plz 2026-04-17 13:33:01 +00:00
firestar99
c6ef4a4bae release-plz: remove cargo release config 2026-04-17 13:33:01 +00:00
Firestar99
097f243da1 wgsl: enable naga feature by default, cargo-gpu can't handle it 2026-04-17 11:52:47 +00:00
firestar99
7b161332f9 wgsl: hide naga behind feature 2026-04-17 11:52:47 +00:00
firestar99
b4e3d535b4 wgsl: add spirv-unknown-naga-wgsl target, transpiling with naga 29 2026-04-17 11:52:47 +00:00
firestar99
e938af90b5 target declaration refactor: update spirv-val and spirv-opt to new target decl 2026-04-17 10:51:09 +00:00
firestar99
3cf382647f target declaration refactor 2026-04-17 10:51:09 +00:00
firestar99
0a60fd6e2d cargo-gpu: rerun build script when Cargo.lock changes
close https://github.com/Rust-GPU/rust-gpu/issues/575
2026-04-17 06:14:22 +00:00
firestar99
e2cdfbdac0 cargo-gpu: add CrateMetadata to store cargo metadata with crate that was queried 2026-04-17 06:14:22 +00:00
39ali
3f7cb64247 fix No OpEntryPoint for non-public entry points
All checks were successful
Rust Toolchain Upgrade / check-and-upgrade (push) Has been skipped
2026-04-14 19:46:22 +00:00
Christian Legnitto
ff2572065f difftest: 5 compute tests were silently passing on zeroed inputs, fix them.
Also fixes `trig_ops-rust` clamping asin's output instead of its input — the zero input was hiding it.
2026-04-14 13:55:19 +00:00
firestar99
8494942c0b update to nightly-2026-04-11, rustc 1.96.0
All checks were successful
Rust Toolchain Upgrade / check-and-upgrade (push) Has been skipped
2026-04-13 16:15:49 +00:00
Eduard-Mihai Burtescu
ab9ca5ed1a Add --dump-spirt for dumping only the final SPIR-T module (unlike --dump-spirt-passes). 2026-04-13 07:25:37 +00:00
firestar99
003dde7b4c update toolchain to nightly-2026-04-08 2026-04-12 23:39:42 +00:00
Eduard-Mihai Burtescu
a874c1b5cb linker/inline: also run mem2reg on every fully-inlined function.
All checks were successful
Rust Toolchain Upgrade / check-and-upgrade (push) Has been skipped
2026-04-11 15:05:00 +00:00
Eduard-Mihai Burtescu
a3cf6c2236 linker/inline: also run remove_duplicate_debuginfo on every fully-inlined function. 2026-04-11 15:05:00 +00:00
Eduard-Mihai Burtescu
a758d7e2b7 [2024] linker/mem2reg: apply rewrite rules only once per insert_phis_all invocation. 2026-04-11 15:05:00 +00:00
Eduard-Mihai Burtescu
1521645aa7 linker/inline: fix typos in comments. 2026-04-11 15:05:00 +00:00
Eduard-Mihai Burtescu
31a98d8d21 [2024] linker/inline: use OpPhi instead of OpVariable for return values. 2026-04-11 15:05:00 +00:00
Eduard-Mihai Burtescu
a0c135c6f8 [2024] linker/mem2reg: index SPIR-V blocks by their label IDs for O(1) lookup. 2026-04-11 15:05:00 +00:00
Eduard-Mihai Burtescu
f9d1746da1 [2024] linker/inline: use bottom-up inlining to minimize redundancy. 2026-04-11 15:05:00 +00:00
Eduard-Mihai Burtescu
c555d07b87 [2024] linker/inline: fix OpVariable debuginfo collection and insertion. 2026-04-11 15:05:00 +00:00
Eduard-Mihai Burtescu
51c9b9466b Revert "linker/inline: fix OpVariable debuginfo collection and insertion."
This reverts commit 355122de8b.
2026-04-11 15:05:00 +00:00
Eduard-Mihai Burtescu
292746a49b Revert "WIP: (TODO: finish bottom-up cleanups) bottom-up inlining"
This reverts commit 41ec7ea82b.
2026-04-11 15:05:00 +00:00
Eduard-Mihai Burtescu
56cfff7ef3 Revert "WIP: couple of inliner things that need to be disentangled"
This reverts commit ea20ef36a7.
2026-04-11 15:05:00 +00:00
Eduard-Mihai Burtescu
8b7ac72202 Revert "WIP: mem2reg speedup"
This reverts commit efbf694ede.
2026-04-11 15:05:00 +00:00
Eduard-Mihai Burtescu
6d95c94a8b Revert "linker/inline: use OpPhi instead of OpVariable for return values."
This reverts commit fcd1b1e750.
2026-04-11 15:05:00 +00:00
firestar99
10e17d836b ci: fix cargo-gpu-backwards-compat failure due to indexmap@2 crate update
All checks were successful
Rust Toolchain Upgrade / check-and-upgrade (push) Has been skipped
2026-04-10 19:14:41 +00:00