Commit Graph

  • d3a8358b63 Update SPIRV-Tools to 22bcfb12 Christian Legnitto 2026-02-08 21:06:03 -08:00
  • 8c5fbac3f1 Update SPIRV-Tools to 1b2819a2 Christian Legnitto 2026-02-08 20:40:10 -08:00
  • 8a6ceed3f8 Update SPIRV-Tools to e2dadb15 Christian Legnitto 2026-02-08 19:37:39 -08:00
  • ee26932768 Update SPIRV-Tools: strict type-class validation in optimizer Christian Legnitto 2026-02-06 14:52:20 -08:00
  • b7817c2675 Update SPIRV-Tools: fix extraction type inference, loop detection, and BoolConst handling Christian Legnitto 2026-02-06 12:11:06 -08:00
  • d06c26b3ce Update SPIRV-Tools: add egraph-level type tracking to prevent cross-type rewrites Christian Legnitto 2026-02-06 11:16:27 -08:00
  • af5e94f3d5 Update SPIRV-Tools to fix optimizer reconstruction bugs Christian Legnitto 2026-02-06 09:27:05 -08:00
  • 8c3d11c820 Update SPIRV-Tools: separate boolean constants from integer constants in optimizer Christian Legnitto 2026-02-05 22:21:23 -08:00
  • 65103dacaa Update SPIRV-Tools: fix IEqual/INotEqual signedness and add cooperative type support Christian Legnitto 2026-02-05 21:27:02 -08:00
  • ec373b7e5f Update cargo.lock to fix cargo deny Christian Legnitto 2026-02-05 21:02:07 -08:00
  • 78052b18f4 Update SPIRV-Tools to remove SubpassData Vulkan-only restriction Christian Legnitto 2026-02-05 20:08:54 -08:00
  • 02c56a16e0 Update SPIRV-Tools with clippy and formatting fixes Christian Legnitto 2026-02-05 19:45:39 -08:00
  • a21d7eb77d Update SPIRV-Tools with formatting fix Christian Legnitto 2026-02-05 19:40:36 -08:00
  • 55dbc5df7f Update SPIRV-Tools with clippy fixes Christian Legnitto 2026-02-05 19:39:20 -08:00
  • eff75f3dfa Update SPIRV-Tools with formatting fixes Christian Legnitto 2026-02-05 19:13:00 -08:00
  • a8118edee2 Update SPIRV-Tools with image capability and query validation checks Christian Legnitto 2026-02-05 19:10:06 -08:00
  • 7d4418ee55 Update SPIRV-Tools to remove Vulkan-only restriction on mesh EXT builtins Christian Legnitto 2026-02-05 17:28:41 -08:00
  • 7fe76ec353 Update SPIRV-Tools to include cargo fmt pass Christian Legnitto 2026-02-05 17:24:44 -08:00
  • 971cb87c08 Update SPIRV-Tools with post-dominator computation and validation fixes Christian Legnitto 2026-02-05 17:22:51 -08:00
  • 1c2cfd9049 Update SPIRV-Tools to split large files into submodules Christian Legnitto 2026-02-05 11:45:14 -08:00
  • cfb1225dc9 Update SPIRV-Tools to enable relaxed block layout for Universal 1.3+ Christian Legnitto 2026-02-04 19:12:54 -08:00
  • 3c17715f55 Update SPIRV-Tools to fix row-major matrix layout validation Christian Legnitto 2026-02-04 16:06:48 -08:00
  • 56ac96bef7 Update SPIRV-Tools with block layout strictness fixes Christian Legnitto 2026-02-04 15:32:27 -08:00
  • e86cc3c4ee Update SPIRV-Tools to fix block layout std430 array stride validation Christian Legnitto 2026-02-04 14:57:02 -08:00
  • 8af66e54e6 Update SPIRV-Tools to allow extensions for Universal targets Christian Legnitto 2026-02-04 14:29:43 -08:00
  • 0bf9d1b0b3 Update SPIRV-Tools with builtin direction validation fix Christian Legnitto 2026-02-04 12:04:35 -08:00
  • 02f0802afe Update SPIRV-Tools with InstanceId validation fix Christian Legnitto 2026-02-04 11:51:53 -08:00
  • 190bdff0f0 Update SPIRV-Tools to fix ViewIndex validation Christian Legnitto 2026-02-04 11:12:04 -08:00
  • ae4a38790e Update SPIRV-Tools (formatting) Christian Legnitto 2026-02-04 11:00:03 -08:00
  • 45d6479212 Update SPIRV-Tools to fix materialized constants duplicate ID bug Christian Legnitto 2026-02-04 10:45:02 -08:00
  • 1d10a6c598 Update SPIRV-Tools to fix duplicate ID definitions in optimizer Christian Legnitto 2026-02-03 10:39:08 -08:00
  • bcbe168ab3 Update SPIRV-Tools to fix optimizer 'use of undefined id' errors Christian Legnitto 2026-02-02 13:09:50 -08:00
  • e4a8d399e2 Add missing ClipDistance and CullDistance capabilities to all-builtins test Christian Legnitto 2026-02-01 23:58:51 -08:00
  • 9da9eeb9a2 Update SPIRV-Tools to fix operand extension validation Christian Legnitto 2026-02-01 23:22:04 -08:00
  • 5393ce4bfc Update SPIRV-Tools to fix capability extension validation Christian Legnitto 2026-02-01 23:05:14 -08:00
  • 58c37ffd4b Fix CI: add missing capability deps and patch difftest rspirv Christian Legnitto 2026-02-01 22:41:09 -08:00
  • 76ffa3a6b1 Update SPIRV-Tools to remove ray tracing extension version check Christian Legnitto 2026-02-01 21:54:18 -08:00
  • f78f99dbce Update SPIRV-Tools to fix extension version requirements Christian Legnitto 2026-02-01 21:39:59 -08:00
  • 6d2d81c57c Fix member_ref_arg-broken.stderr line numbers after normalize comment removal Christian Legnitto 2026-02-01 21:11:28 -08:00
  • 18b801858b Update SPIRV-Tools to include ported validation rules Christian Legnitto 2026-02-01 20:59:56 -08:00
  • 667adbacf4 Fix rustfmt formatting in validation_err.rs Christian Legnitto 2026-02-01 20:59:51 -08:00
  • 7214cf1712 Update SPIRV-Tools to include assembler float literal fix Christian Legnitto 2026-02-01 19:48:24 -08:00
  • e36569ca94 Update SPIRV-Tools to include VulkanMemoryModel validation fix Christian Legnitto 2026-02-01 19:31:23 -08:00
  • 968a71c0c7 Fix clippy lints in validation_err.rs and codegen_cx/mod.rs Christian Legnitto 2026-02-01 19:17:01 -08:00
  • efc70c125a Allow MPL-2.0 license for egglog transitive deps Christian Legnitto 2026-01-27 13:11:20 -08:00
  • a71afb84b6 Update SPIRV-Tools to include vendored grammar and license fix Christian Legnitto 2026-01-27 09:35:34 -08:00
  • 2fcb8ad969 rustfmt Christian Legnitto 2026-01-27 09:01:44 -08:00
  • a21804d90d Remove replacements and comments no longer needed Christian Legnitto 2026-01-27 08:57:43 -08:00
  • 0fa745e155 Add rich error handling for additional validation errors Christian Legnitto 2026-01-24 17:41:09 -08:00
  • e36f9be558 Remove redundant 'spirv-val failed' note from validation errors Christian Legnitto 2026-01-24 17:30:25 -08:00
  • 15513e15a0 Add rich error handling for NotALogicalPointer validation errors Christian Legnitto 2026-01-24 15:17:27 -08:00
  • 9382914459 Pass Module directly to do_spirv_val instead of re-parsing binary Christian Legnitto 2026-01-24 15:17:18 -08:00
  • a4ec233294 Update feature docs and test expectations for pure Rust spirv-tools Update Cargo.toml feature documentation: - The use-compiled-tools and use-installed-tools features are now no-ops since we use a pure Rust implementation of spirv-tools - Keep features for backward compatibility with existing build configurations - Fix typo: rustc_cogeden_spirv → rustc_codegen_spirv Update test expectations: - explicit_overlap.stderr: Now shows rich error with source spans - mesh_shader.stderr: NV suffixes updated to EXT (OutputPrimitivesNV → OutputPrimitivesEXT, etc.) - member_ref_arg-broken: Updated line numbers and add normalizer for new error format Christian Legnitto 2026-01-24 14:55:54 -08:00
  • 25f24339df Add rich validation error messages with source spans Improve spirv-val error messages by looking up source locations from SrcLocDecoration annotations: - Add validation_err.rs module to parse validation errors and look up source spans from the SPIR-V module's custom SrcLocDecoration - Strip SrcLocDecoration and ZombieDecoration before validation (these are invalid on functions) but keep the original module for span lookup - Add --preserve-debug-decorations flag to optionally keep decorations - Add SrcLocDecoration to entry point interface variables so validation errors for conflicting locations show the relevant source spans - Keep decorations in linker output (they're stripped after validation) For location conflict errors, the error message now shows: - The specific variable causing the conflict with its source location - The conflicting variable with its source location - A help message explaining why the conflict occurs (e.g., Mat4 uses 4 locations) Christian Legnitto 2026-01-24 14:55:44 -08:00
  • 221f68d14a Update for rspirv sdk-update branch API changes Adapt to changes in rspirv 0.12.0+sdk-1.4.335.0: - Replace rspirv::grammar::reflect::is_type(op) with op.is_type() - Replace rspirv::grammar::reflect::is_constant(op) with op.is_constant() - Update type_float_id to include FPEncoding parameter (None) - Change MemorySemantics::NONE to MemorySemantics::RELAXED - Change Decoration::UserTypeGOOGLE to Decoration::UserSemantic - Update ExecutionMode NV suffixes to EXT/KHR (OutputLinesNV → OutputLinesEXT, etc.) - Add aliases for DemoteToHelperInvocationEXT and IsHelperInvocationEXT - Update ImageOperands and MemorySemantics KHR constants (now unified) - Add stubs for new operand kinds (RawAccessChainOperands, CooperativeMatrixReduce, etc.) - Update renamed ops (FinalizeNodePayloadsAMDX → EnqueueNodePayloadsAMDX, etc.) - Add catch-all for new ops in spirv_type_constraints Christian Legnitto 2026-01-24 14:55:32 -08:00
  • 92f877a9b4 Switch spirv-tools to Rust-GPU/SPIRV-Tools git dependency Switch from crates.io spirv-tools 0.13.0 to the Rust-GPU/SPIRV-Tools repository via git dependency. This provides access to the new pure-Rust SPIR-V validator and egglog-based optimizer. When using as a git dependency, set SPIRV_HEADERS_PATH to point to a local SPIRV-Headers checkout since the submodule isn't available. Christian Legnitto 2026-01-24 13:42:08 -08:00
  • 624e6f4422 Update rspirv/spirv to sdk-update branch with newer SPIR-V opcodes The published rspirv 0.12.0+sdk-1.3.268.0 doesn't include newer SPIR-V opcodes like UntypedPointersKHR, TypeUntypedPointerKHR, UntypedVariableKHR, and ConditionalEntryPointINTEL that are required by the spirv-tools crate. This patches rspirv and spirv to use the gfx-rs/rspirv sdk-update branch which includes these opcodes (version 0.12.0+sdk-1.4.335.0). Christian Legnitto 2026-01-24 13:41:38 -08:00
  • f2244a3f7f fix spirv-tools skipping C++ compile on install firestar99 2026-02-13 12:58:29 +01:00
  • 79acad1f91 Remove @schell from CODEOWNERS Schell Carl Scivally 2026-02-11 08:50:24 +13:00
  • e87c3d7021 update spirv-builder firestar99 2026-02-10 16:06:10 +01:00
  • 6131200831 toolchain: add minimal profile components in case they are manually uninstalled firestar99 2026-02-10 14:54:45 +01:00
  • 710eb00d1f toolchain: rustup install with minimal profile firestar99 2026-02-10 14:53:02 +01:00
  • 8b6d98f85d toolchain: make user consent default to yes on enter firestar99 2026-02-10 14:50:34 +01:00
  • 5b8748dbc7 toolchain: refactor, check installed components, install everything as one cmd firestar99 2026-02-10 13:39:17 +01:00
  • b265ae05c6 copy less strict lint config from rust-gpu firestar99 2026-02-10 15:28:30 +01:00
  • 3dc9770b75 fix clippy firestar99 2026-02-10 15:10:45 +01:00
  • af070fff30 ci: drop testing for 0.8.0 firestar99 2026-02-10 15:56:01 +01:00
  • 4046ead42c Deploying to gh-pages from @ e7e447a939 🚀 github-merge-queue[bot] 2026-02-05 10:21:47 +00:00
  • e7e447a939 spirv-builder: check and clippy shortcuts firestar99 2026-01-05 13:17:01 +01:00
  • 835deaeff2 Deploying to gh-pages from @ 7a0b4b303f 🚀 github-merge-queue[bot] 2026-02-04 20:37:02 +00:00
  • 7a0b4b303f cargo update firestar99 2026-02-04 12:06:06 +01:00
  • ee146bf215 inline image intrinsics: add #[inline] firestar99 2026-02-04 11:46:17 +01:00
  • ed204f4532 inline image intrinsics: compiletest for image writes with disasm firestar99 2026-02-04 11:41:39 +01:00
  • 8b87f9bfc1 Deploying to gh-pages from @ ba15d4c65a 🚀 github-merge-queue[bot] 2026-02-03 11:15:06 +00:00
  • ba15d4c65a build_script: allow using .watch() with env_shader_spv_path firestar99 2026-02-03 11:05:05 +01:00
  • 283e04ba5c build_script: add forwarding of rustc warnings, with color support firestar99 2025-12-15 18:36:59 +01:00
  • 083db3c9f3 build_script: replace enum MetadataPrintout with struct BuildScriptConfig for more flexibility firestar99 2025-12-15 18:27:34 +01:00
  • b982c5e84e Deploying to gh-pages from @ fda0e4e081 🚀 github-merge-queue[bot] 2026-02-03 00:44:51 +00:00
  • fda0e4e081 compiletest to showcase generic entry points firestar99 2026-01-15 09:57:31 +01:00
  • 195335a6f2 allow zst entry params in input and output positions firestar99 2026-01-15 09:50:45 +01:00
  • 1d04ec7379 Deploying to gh-pages from @ 7ad4c4dd3e 🚀 github-merge-queue[bot] 2026-01-23 16:01:09 +00:00
  • 7ad4c4dd3e trailing_zeros: fix 64bit trailing zeros Peyton Hammersley 2026-01-23 14:52:40 +01:00
  • 55251d64b2 trailing_zeros: add tests for 64bit Peyton Hammersley 2025-12-30 15:07:03 +00:00
  • 08e5c30183 Deploying to gh-pages from @ af29a38586 🚀 github-merge-queue[bot] 2026-01-22 14:11:07 +00:00
  • af29a38586 Add missing parent capabilities in test compile flags Christian Legnitto 2026-01-08 22:15:27 -04:00
  • 5cd947690e Deploying to gh-pages from @ 08f98a7335 🚀 github-merge-queue[bot] 2026-01-13 16:23:31 +00:00
  • a052bfa483 Deploying to gh-pages from @ beb7391308 🚀 github-merge-queue[bot] 2026-01-13 15:56:17 +00:00
  • 08f98a7335 location assignment2: fix location assignment for shader types with arrayed input/outputs firestar99 2026-01-05 12:45:27 +01:00
  • 043a887c59 location assignment2: compiletest showing wrong locations with mesh and geometry shaders firestar99 2025-12-28 11:47:34 +01:00
  • bc32a2a507 location assignment2: move compiletest to their own dir firestar99 2026-01-05 11:59:39 +01:00
  • beb7391308 Fold OpLoad from Private variables with constant initializers Christian Legnitto 2026-01-09 17:03:24 -04:00
  • d427d13557 Deploying to gh-pages from @ 5e1fe9736e 🚀 github-merge-queue[bot] 2026-01-09 18:13:17 +00:00
  • 5e1fe9736e ci: update install-vulkan-sdk, remove explicit driver registration firestar99 2026-01-09 11:54:33 +01:00
  • b42a6e7408 WIP difftest2_try1 firestar99 2026-01-09 16:59:53 +01:00
  • 39521d7ebe difftest2: pass spirv as words, not bytes firestar99 2026-01-09 15:54:47 +01:00
  • 32c459ca72 Added tests for 64bit trailing_zeros Peyton Hammersley 2025-12-30 15:07:03 +00:00
  • 6ddac87c5e difftest: document nextest requirement firestar99 2025-09-23 11:11:52 +02:00
  • 5520eaf6e3 difftest: typo fixes firestar99 2025-09-23 11:02:27 +02:00
  • 8f4a9bc7d6 difftest: Unconditionally create output file Christian Legnitto 2025-07-16 14:44:03 +03:00
  • a19188ab09 difftest: cargo windows bug workaround, mirror all workspace dependencies firestar99 2025-10-16 11:54:26 +02:00