tree 53f6da1280deffff749b705a4a71f04d543498b3
parent fdb6700ecb04103b658d2e4623d6bc663ba80ea8
author Shahbaz Youssefi <syoussefi@google.com> 1754322953 -0400
committer swiftshader-scoped@luci-project-accounts.iam.gserviceaccount.com <swiftshader-scoped@luci-project-accounts.iam.gserviceaccount.com> 1754490910 -0700

Update SPIR-V Headers to 97e96f9e9 and SPIR-V Tools to 3aeaaa088

SPIR-V Headers update:

Changes:
    97e96f9e9 SPV_KHR_untyped_pointers final (#536)
    de1807b7c Use less confusing name for OpGroupNonUniformBroadcast and OpGroupNonUniformShuffle (#535)
    c8ad050fc Add CI reuse check (#525)
    7919b00b5 Add MIT license to TOSA extended instruction set grammar (#534)
    1de2e410a SPV_QCOM_cooperative_matrix_conversion (#533) (#533)
    04b76709b Use original LICENSES/CC-BY-4.0.txt (#524)
    9e3836d7d Add SPV_INTEL_function_variants (#532)
    2a611a970 Merge pull request #529 from dneto0/tosa-in-spv-headers-bazel
    21a60b891 BUILD.bazel: Add the TOSA header to spv_headers
    54cec5dc2 Add Bazel definitions for TOSA 001000.1 extended instruction set (#527)
    4e209d3d7 Add definitions for TOSA.001000.1 extended instruction set (#526)
    e87f5a873 Add text of CC-BY-4.0 to top-level LICENSE file (#523)
    50daff941 Add definitions for SPV_ARM_graph (#521)
    3b9447dc9 Add missing capability declarations to Float8CooperativeMatrixEXT (#519)
    fd9666192 Add definitions for SPV_EXT_float8 (#518)
    7168a5ad0 Fix header build (#517)
    d6d133089 Add headers for SPV_INTEL_bindless_images (#516)
    9a46274d2 Add REUSE (#506)
    c9aad99f9 Add definitions for SPV_ARM_tensors (#513)
    6d0784e9f Register Goopax SPIV-V generator (#514)
    ccf425942 header updates for SPV_INTEL_int4 (#512)
    a5b2bd69f Ci legacy asciidoc (#477)
    971e66250 Remove asciidoc markup in JSON annotations (#475)
    3786ee89d Merge pull request #511 from abrisco/bazel
    bab63ff67 Remove reference to EXT_mesh_shader from PerTaskNV decoration (#510)
    ffb6c7f93 Add Bazel bzlmod support
    aa6cef192 SPV_QCOM_tile_shading (#509)
    7c2f5333e Add ImageChannelDataType definitions for cl_ext_image_unsigned_10x6_12x4_14x2 (#507)
    95dc1aa44 Add DisplacementMicromapNV to the capabilities enabling OpTypeAccelerationStructureKHR (#508)
    8e82b7cfe bump the required CMake version to 3.14 (#505)
    8c88e0c4c header updates for SPV_INTEL_ternary_bitwise_function (#504)
    72664577f Fix OpFPGARegINTEL grammar (#503)
    0e7106779 Fix json capabilities for RayTracingOpacityMicromapEXT (#498)
    eceb46dad fixes for SPV_INTEL_arbitrary_precision_floating_point (#495)
    0fcd74932 Add grammar entries for SPV_INTEL_task_sequence (#494)
    06633cfee Add headers for SPV_INTEL_tensor_float32_conversion extension (#501)
    d5ee9ed2b Add SPV_KHR_bfloat16 (#502)
    ddd2c099b Update Slang tool entry. (#496)
    bf08186d8 ClspvReflection non-sematic: Add WorkgroupVariableSize (#493)
    4793aeec2 remove extra arbitrary precision fixed point instructions operands (#491)
    54a521dd1 Register tool ID 47 for a new ARM SPIR-V generator. (#486)
    6be51b8f7 updates AtomicStorageOps to depend on the AtomicStorage capability (#479)
    09913f088 Remove extra space causing rendering issue (#485)
    e7294a8eb Add headers for SPV_NV_linear_swept_spheres. (#483)
    003bcf4e0 Add headers for SPV_NV_cluster_acceleration_structure. (#484)
    43764cc75 updates IntegerFunctions2INTEL to remove Shader capability dependency (#481)
    767e901c9 Add SPV_NV_cooperative_vector (#482)
    2b2e05e08 grammar and header changes for SPV_INTEL_subgroup_matrix_multiply_accumulate (#471)
    0659679d9 Add a source language for Rust (#472)
    9ca0e67b5 grammar and header changes for SPV_INTEL_2d_block_io (#470)
    a380cd254 Fix OpAsmTargetINTEL operand (#468)
    3f17b2af6 [SPIRV] Add generator magic number (#467)
    36d5e2dda Add provisional key to grammar (#464)
    45b314049 Add NonSemanticShaderDebugInfo100.h to bazel build. (#466)
    2ce05a6f7 Remove trailing whitespace (#465)
    996c728cf add basic utility code testing for cpp, cpp11, and c (#461)
    cb6b2c32d Fix on header generator for c++11, regenerated products (#463)
    22c4d1b1e Add SPV_NV_cooperative_matrix2 and SPV_NV_tensor_addressing (#458)
    252dc2df0 Add nuvk's spirv emitter. (#454)
    50bc4debd VkspReflection non-sematic: remove literals for Ids (#453)
    07ddb1c0f Update SPV_AMDX_shader_enqueue (#452)
    d92cf88c3 Add "aliases" fields to the grammar and remove duplicated (#447)
    a62b03200 Add SPV_EXT_arithmetic_fence (#450)
    ec59c77a3 Reserve SPIR-V enums for MediaTek (#451)
    0413bc33f Add SPV_EXT_optnone (#449)
    2a9b6f951 Add Capability and Execution mode SPV_KHR_compute_shader_derivatives (#446)
    efb6b4099 add support for SPV_INTEL_subgroup_buffer_prefetch (#442)
    744753a21 Update spirv generator info (#445)
    69ab0f32d Add UnormInt2_101010EXT ImageChannelDataType (#444)
    1b75a4ae0 Request a vendor id for Kongruent (#443)
    f013f08e4 Add missing OpUntypedPrefetchKHR (#441)
    a41bc926e VkspReflection non-sematic: add fields to DescriptorSetBuffer (#440)
    db5a00f8c Support for SPV_KHR_untyped_pointers (#439)
    3c355ec43 Reserve 4 memory operands bits for Arm (#436)
    41a8eb27f Update headers with SPIR-V version 1.6, revision 4. (#437)
    2acb319af SPV_ARM_cooperative_matrix_layouts (#433)
    eb49bb7b1 Add KHR suffix to OpExtInstWithForwardRefsKHR (#435)
    fbf240296 Enforce grammar naming conventions for aliases (#432)
    ff2afc3af Adds SPV_KHR_relaxed_extended_instruction (#434)
    ea77f2a82 SPV_EXT_replicated_composites (#431)
    49a1fceb9 Fix SPIR-V reserved ranges (#427)
    acfc254a7 Add utility functions to strinfigy value enums (#426)

Commands:
    ./third_party/update-spirvheaders.sh

SPIR-V Tools update:

Changes:
    3aeaaa088 spirv-val: Fix using global static map (#6241)
    286c4a66d spirv-val: Fix Mesh Builtin checking for signed int (#6238)
    18f08838c Roll external/abseil_cpp/ 840da4a0f..56945519b (3 commits) (#6235)
    9b035b701 Roll external/abseil_cpp/ 7ece455c2..55f48665b (2 commits) (#6231)
    cef15589a [GH Actions] Run wasm build when kokoro:run is removed. (#6233)
    c8fd10183 spirv-val: Fix scalarBlockLayout typo (#6234)
    a6e2406b1 Validate that OpDecorateId IDs are well-ordered (#6227)
    a983ab19d spirv-val: Fix Mesh Shading not checking EntryPoint (#6228)
    ed173ab18 [GH Actions] Trigger when the `kokoro:run` label is removed (#6230)
    c0455d40d Extra restrictions for accesses of block arrays (#6226)
    73d28b5f3 Roll external/abseil_cpp/ 6ad95e153..7ece455c2 (4 commits) (#6229)
    d8c5240c3 build(deps): bump github/codeql-action in the github-actions group (#6225)
    17b870490 Roll external/abseil_cpp/ 454205a61..64a9eafe3 (1 commit) (#6224)
    04d4deab5 Add support for SPV_INTEL_inline_assembly (#6210)
    3abad502d spirv-val: Add Patch Decoration check (#6219)
    8cf1bf9bb spirv-val: Check OpTypeCooperativeMatrixKHR for bfloat16/fp8 (#6220)
    aaa94856d Initialize output parameter of spvtools::LookupOperand (#6223)
    e7d92f71f Roll external/abseil_cpp/ 6cd1763d9..492fccd3b (5 commits) (#6214)
    257a227fb Roll external/abseil_cpp/ ea50280ae..6cd1763d9 (6 commits) (#6208)
    7806d0a70 spirv-val: Add PrimitiveID check (#6209)
    08f1e75fe spir-val: fix OpTensor{Read,Write}ARM for tensors with a spec constant rank (#6206)
    54fc95232 Roll external/abseil_cpp/ 2ecc1dd00..ea50280ae (2 commits) (#6207)
    edce8bd5e Roll external/googletest/ c67de1173..3983f67e3 (1 commit) (#6205)
    cc07e5303 build(deps): bump github/codeql-action in the github-actions group (#6201)
    d05052073 Roll external/abseil_cpp/ d4e6b8cdb..d20bae7f9 (2 commits) (#6200)
    d6ef579a0 spirv-opt: add support for tensors to type manager (#6202)
    e16fcd177 Update README with canonicalize IDs pass (#6204)
    44c93ad92 spirv-val: accept NonReadable/NonWritable on tensor variables in UniformConstant (#6184)
    bc7c60e96 Fix the wrong location of DebugFunctionDefinition inst (#6198)
    f657d2c15 build(deps): bump github/codeql-action in the github-actions group (#6199)
    a478b3842 roll deps (#6197)
    40eb301f3 spirv-opt: Fix crash if shader uses linkage decoration (#6191)
    604c3e75a spirv-as: fix docs: need '-' arg to specify stdin (#6194)
    28a883ba4 SPV_INTEL_function_variants: basic asm, dis support (#6195)
    37da76351 Update github bots to windows-2025 (#6196)
    7fbd5fbb1 Roll external/abseil_cpp/ 212fcb96c..aed3ddd94 (6 commits) (#6190)
    33e025681 Prepare release v2025.3 (#6192)
    a364c41a7 We want to use extension `SPV_KHR_variable_pointers` with vulkan memory (#6121)
    108b19e5c Add --canonicalize-ids pass (#6174)
    85607567a Keep instructions used by the DebugBuildIdentifier (#6189)
    c837be3e4 opt: Pass DebugDeclare scope to DebugValue (#6178)
    7ddec72ea build(deps): bump lukka/get-cmake in the github-actions group (#6182)
    c2977ef0a roll deps (#6181)
    422150b40 Add mimalloc to improve multithreaded performance (#6188)
    da0ec29bb Revert array location validation (#6187)
    3f76afcf9 Add minimal as/dis support for TOSA.001000.1 extended instruction set (#6183)
    dab29fb16 spirv-val: tidy up validation of type constraints for IDs (#6185)
    dec28643e Add validation support for MeshEXT based on the spec update PR https://github.com/KhronosGroup/Vulkan-Docs/pull/2475 (#6171)
    e0bad2825 Roll external/abseil_cpp/ daff1b1a9..9c02e2cbe (1 commit) (#6173)
    15f61f8ad build(deps): bump github/codeql-action in the github-actions group (#6180)
    27dd301f8 spirv-val: Label maintenance9 new VUID (#6176)
    e9a8ceedd spirv-val: add positive test for FP8 cooperative matrices (#6175)
    90cfb3e96 spirv-val: Give hints when user is forgetting feature bit (#6164)
    ec1c9ca71 build(deps): bump github/codeql-action in the github-actions group (#6169)
    0d6c8d6f4 Add SPV_NV_linear_swept_spheres to allow list. (#6168)
    501960632 Roll external/abseil_cpp/ e1ff6a333..169c953aa (1 commit) (#6165)
    6061b7204 Add initial support for SPV_EXT_float8 (#6170)
    7dda3c01f Keep DebugBuildIdentifier during dce (#6166)
    2e743e96b Improve automatic formatting of SPV extensions allowlists (#6167)
    9de1dbb0a --Modfied files so that OpTypeTaskSequenceINTEL is identified as a type instruction (#6084)
    9d2218773 build(deps): bump ossf/scorecard-action in the github-actions group (#6162)
    c38571fee Add SPV_NV_cluster_acceleration_structure to allow lists (#6163)
    5b87767c6 [OPT] prevent private_to_local_pass optimizing double pointer (#6161)
    f6e5a5a8f spirv-dis: Set a hard limit on last_instruction_comment_alignment_ (#6149)
    066f726eb roll deps (#6160)
    0498065e0 [OPT] Use conservative default case for `GetPtr` (#6158)
    c3c5427ec [OPT] Set the BB for the debug instruction when moved. (#6153)
    a9d7fde99 Roll external/abseil_cpp/ 3006ff8b4..2dd803689 (4 commits) (#6159)
    8b2535346 build(deps): bump github/codeql-action in the github-actions group (#6147)
    045c1b251 roll deps (#6150)
    da48bb20b val: Fix CullPrimitiveEXT array of bool (#6155)
    01021466b [spirv-val] Add the validation checks for SPV_QCOM_tile_shading (#6130)
    736e415eb Fix operand access in invalid layout checks (#6151)
    66fe61094 roll deps (#6146)
    9b1a7e7a6 grammar tables: emit good error when missing an operand type (#6145)
    eac930caa Add support for SPV_ARM_tensors (#6134)
    11df9e83a build(deps): bump the github-actions group across 1 directory with 2 updates (#6133)
    0cf1a2bfe roll deps (#6143)
    75f2e873a [opt] Move debug instruction when neccessary in copy prop arrays. (#6142)
    6039eeff1 [OPT] Remove recursion from redundancy_elimination (#6141)
    feba06f44 ggt.py: no need to precondition extension lists (#6139)
    9d0f81794 Delete utils/generate_grammar_tables.py (#6138)
    058b4b3c7 roll deps (#6129)
    2956d8e7e Fix exit in ggt.py (#6137)
    f06e0f3d2 Avoid double-lookup for name searches in tables (#6136)
    e8864edbe Use compressed tables for extended instructions (#6135)
    8ede14d21 use static std::array for grammar tables again (#6132)
    54f2f3dc0 Fix gn (#6131)
    cc1e6c546 [ROLL] Roll deps (#6127)
    9693056da no static initializers (#6128)
    f1524d1a2 Roll external/googletest/ cd430b47a..90a415211 (5 commits) (#6114)
    eb82f2cad Move enum mappings to compressed tables (#6120)
    d50426893 build: Fix BUILD.gn missing headers (#6125)
    f026033b6 opt: add SPV_NV_shader_invocation_reorder to allowlist (#6122)
    6db659dae Add instruction printingClass value to InstructionDesc (#6118)
    c0fa1efc8 python: Use type annotations compatible with python 3.8 (#6119)
    3935361d2 Fixes for Dawn gn build. (#6117)
    62de1f740 Use compressed grammar tables for core instructions and operands (#6107)
    887a1d678 [Kokoro] Add dxc-smoketest (#6113)
    f050bb781 spirv-val: allow Float16 in OpenCL environments (#6110)
    cb619916b [Kokoro] Use merge-base for format check. (#6112)
    20d503166 build(deps): bump github/codeql-action in the github-actions group (#6102)
    d101daf8a Replace spirv.hpp with spirv.hpp11 in objdump (#6108)
    04ade331e Roll external/abseil_cpp/ 8b2b78bb9..87e8b54fa (4 commits) (#6101)
    634a44abf Simplify ext inst table generation (#6095)
    2fe7d3dd6 Add spvtools::utils::IndexRange (#6106)
    d75157435 fix clang-20 build issue (#6103)
    783d70336 Add spvtools::utils::Span (#6105)
    8e9165a3d spirv-val: Update 1.4.312 VUID churn (#6082)
    b6a83226d Allow copyright line without '(c)' (#6099)
    a62abcb40 [OPT] Don't fold n % 1.0 (#6100)
    506fee4df generate_grammar_tables.py: remove unused option to emit C enums (#6094)
    898ed77be Prepare for 2025.2 release. (#6098)
    0aa67e2af Roll external/abseil_cpp/ 8b81b77c5..daa0bfb56 (4 commits) (#6091)
    ca63ea568 Fix validation of BFloat16 FP types (#6092)
    096bb07f7 Initialize variables (#6093)
    255086985 build(deps): bump lukka/get-cmake in the github-actions group (#6089)
    7e41c7130 Add Vulkan 1.3 and 1.4 capability checks (#6063)
    f53aac84f Roll external/abseil_cpp/ c8d5854f0..12f4be680 (7 commits) (#6086)
    3f7cbaf32 format check: Show the list of files to be checked (#6088)
    a871fc43e Minimal opt support for SPV_KHR_untyped_pointers (#6087)
    2e7ba023c Add SPV_KHR_bfloat16 support (#6057)
    e94023922 build(deps): bump the github-actions group across 1 directory with 2 updates (#6083)
    fb6206f9a roll deps (#6076)
    1a811fd69 spirv-val: Restrict VUID 09557 to Vulkan environments (#6080)
    73d6a038e spirv-val: Label new VUID from 312 headers (#6079)
    4bd1536ed [OPT] In copy propagate arrays, debug instructions are not stores. (#6078)
    6add4e478 Add support for pointer types in vector when using extension SPV_INTEL_masked_gather_scatter (#6041)
    056e3ed2c [OPT] Add extension to allow list (#6075)
    2e83ad7e6 Roll external/abseil_cpp/ b12a6f75f..bcf4bf315 (3 commits) (#6072)
    8a6aaa696 roll deps (#6069)
    393d5c7df [OPT] fix loop with recursive types in trim pass (#6070)
    a48b47340 opt: Add QuadControlKHR to trim pass and allow lists (#6068)
    a4adb9a8a [OPT] Delete decoration for OpPhi when unrolling (#6064)
    4b5584e28 Roll external/abseil_cpp/ 3b1bb7337..fd39cfa46 (1 commit) (#6065)
    91c4380f7 build(deps): bump github/codeql-action in the github-actions group (#6066)
    6a6693d1c Validate version requirement for Vulkan Memory Model (#6042)
    a958887ba roll deps (#6060)
    d5ca80037 build(deps): bump the github-actions group with 3 updates (#6056)
    ada1771a9 Fix calculation of locations for matrices (#6062)
    db06346b0 opt: value numbering: preserve loads of image, sampler, sampled image (#6059)
    ef1004ec5 format check should say what version of clang-format is used (#6058)
    553300374 Fix implicit conversion warning: int32_t to uint32_t (#6052)
    e58e469f0 roll deps (#6055)
    0c1ca5815 Validation for relaxed control barrier with storage class semantics (#5984)
    51aeff761 roll deps (#6049)
    a6cb96028 Check that layouts match runtime array requirement (#6048)
    2b3df1ec7 split-combined-image-samplers: clone decorations on loads (#6046)
    ff4d89082 opt: add resolve-binding-conflicts pass (#6044)
    36a3ef46e test fixture: print optimized assembly that fails to validate (#6043)
    940c6faa1 split-combined-image-sampler: synthesize names (#6037)
    6c757dd9e build(deps): bump github/codeql-action in the github-actions group (#6033)
    b45be9b0a Roll external/abseil_cpp/ 35211d98d..bdbaf376e (3 commits) (#6031)
    ba1359d20 Update location/component conflict validation (#5993)
    48c703b81 opt: add pass to split combined image samplers (#6035)
    5986ec106 github workflow bazel: print error logs (#6036)
    9f8ff357d spirv-diff: Try to pair functions by their complete type. (#6021)
    9e470ef0f Fix explicit layout validation on ptr type (#6029)
    ba828b232 Fold 0 <<,>>,/,% n to 0. Fold a / 1 to a. Fold a % 1 to 0. Fold f % 1.0 to 0.0. Fold 0.0 % f to 0.0 (#6020)
    bac6ca756 Support optimization of OpCopyLogical (#6016)
    7e3efaf1b Support scalar replacement of large structs (#6019)
    d3fc6ed18 spirv-val: Validate PhysicalStorageBuffer Stage Interface (#6000)
    f6b40e7f1 spirv-val: Add Vulkan Aligned PowerOfTwo check (#6027)
    fb803311a folding_rules: generalise RedundantIAdd() to |^>><<+- with 0 on RHS and |^+ with 0 on LHS (#6013)
    62a930f4a roll deps (#6030)
    bb86786ed Roll external/abseil_cpp/ f1b7d000b..735c86164 (3 commits) (#6025)
    6484ea2a0 spirv-as: Add OpUnknown pseudo-instruction (#6024)
    b63895481 [opt] Add StorageBuffer16BitAccess to trim pass. (#6026)
    a946dba85 roll deps (#6022)
    12abd77a6 Fix invalid layout validation version check (#6023)
    b1140ad29 Roll external/abseil_cpp/ f004e6c0a..cc70e832b (1 commit) (#5999)
    4517f75c6 build(deps): bump actions/cache in the github-actions group (#6018)
    d3bfa4b9b build(deps): bump lukka/get-cmake in the github-actions group (#6015)
    b095f36a5 Add validation for invalid layout decoration usage (#6012)
    f289d047f [OPT] Update DebugDeclare if the var is not an OpVariable (#6014)
    132103f44 Prepare release v2025.1 (#6011)
    d5b6f2de7 build(deps): bump the github-actions group across 1 directory with 4 updates (#6010)
    00170308e kokoro: linux: use cpp-builder instead of radial-build (#6008)
    aafd52457 [opt] Fix bug opt::InstructionBuilder::AddVariable (#6007)
    f2dac2f3d spirv-val: Add AllowVulkan32BitBitwise option (#6001)
    a80d3b5c5 Fix untyped pointer comparison validation (#6004)
    2e55f9c69 kokoro: Streamline check-format (#5973)
    9fa14b914 roll deps (#5997)
    dc1641d16 build(deps): bump github/codeql-action in the github-actions group (#5994)
    cd177fa74 roll deps (#5996)
    66e57d114 roll deps (#5992)
    f95b07a5a diff: Fix crash in OpString matching (#5988)
    114920c25 Add missing include headers (#5995)
    b3fe11f89 spirv-val: Update VUIDs for 308 header (#5990)
    9d7e182da linker: remove LinkOnceODR decorations when linking executables (#5979)
    32af271ac roll deps (#5987)
    682bcd515 spirv-val: fix env parsing for vk1.1spv1.4 (#5985)
    f52c9a1e4 Roll external/abseil_cpp/ 7253ff8f9..69b58f922 (4 commits) (#5983)
    9d07794bc build(deps): bump the github-actions group across 1 directory with 2 updates (#5976)
    d59325f37 Roll external/abseil_cpp/ fd8b35b9a..5f8d605c0 (1 commit) (#5957)
    ce37fd67f Add validation for SPV_NV_linear_swept_spheres. (#5975)
    7cf95f1d5 Add validation SPV_NV_cluster_acceleration_structure. (#5974)
    04b4a204a Improve the instruction diagnostic for some access chain errors (#5978)
    96b46d160 Update physical storage buffer validation to match SPIR-V 1.6.5 (#5977)
    3364b9827 Validate SPV_NV_cooperative_vector (#5972)
    2e8113719 Fix layout checks with untyped pointers (#5970)
    d99e54e37 kokoro: use ndk-r27c (#5969)
    bdf077623 kokoro: use clang 13.0.1 on Linux (#5962)
    a9f826b65 kokoro: use gcc 13 instead of gcc 9 (#5961)
    173fe3c60 spirv-val: Update mislabeled VUIDs (#5964)
    e02275ec0 More explicit layout validation (#5958)
    4aa537a5c Roll external/abseil_cpp/ a28c4b582..fd8b35b9a (6 commits) (#5955)
    01676d8d8 build(deps): bump github/codeql-action in the github-actions group (#5956)
    066c3d52c spirv-val: Add VK_KHR_maintenance8 support (#5951)
    4be5222ac Roll external/abseil_cpp/ a4e771912..a28c4b582 (7 commits) (#5952)
    b9d5ced92 Add SPV_AMDX_shader_enqueue version 2 support (#5838)
    c62409034 roll deps (#5949)
    321692686 dd missing Vulkan 1.4 in validator help, env testing (#5946)
    f942f65e8 add support for SPV_INTEL_subgroup_matrix_multiply_accumulate (#5928)
    a6107edd2 Add missing include headers (#5944)
    981c462c1 roll deps (#5943)
    7ef6bc3ce [OPT] Add SPV_KHR_ray_tracing to allow list (#5941)
    173217281 fix: handle LinkOnceODR correctly (#5938)
    8b8f8fe95 Roll external/abseil_cpp/ 6effb000c..a1de53ddd (4 commits) (#5942)
    fdea64191 Add EXT_mesh_shader validation support (#5640)
    6ea395b0e spirv-val: Remove OpenCL ivec3 req (#5940)
    b8566d459 Roll external/abseil_cpp/ 3f770c4d9..6effb000c (6 commits) (#5937)
    995922d48 build(deps): bump the github-actions group with 2 updates (#5936)
    9064fe863 Roll external/abseil_cpp/ f489ceb63..3f770c4d9 (4 commits) (#5935)
    31c154a2a kokoro: remove VS 2019 debug (#5934)
    a29530db2 Update download links to VS 2022 (#5933)
    bc158d936 build(deps): bump the github-actions group across 1 directory with 4 updates (#5932)
    e15ac6102 kokoro: Add VS 2022 scripts, remove VS 2017 scripts (#5930)
    880612646 Roll external/abseil_cpp/ 4e0956109..65b7da13b (2 commits) (#5929)
    e6307f473 Update downloads badges and matrix (#5931)
    8b39a8b54 Update effcee (#5927)
    4b4e4b993 lsp: Make vim support more explicit, add code completions (#5917)
    8fc0830d9 Roll external/abseil_cpp/ 688dd51cc..4e0956109 (11 commits) (#5926)
    8f98634c4 spirv-val: Validate zero product workgroup size (#5407)
    1a0658f55 Roll external/abseil_cpp/ c7cf999bd..67576965a (3 commits) (#5900)
    becf97fdc update cmake_minimum_required to 3.22.1 (#5925)
    9295a8b94 Add OpImageSampleFootprintNV to IsAllowedSampledImageOperand (#5914)
    a466e9d68 kokoro: windows: use Python 3.12 (#5920)
    1a84052a5 opt: keep all OpSource instructions (#5901)
    a4084887e build: Add missing include headers (#5915)
    7cac4f355 kokoro: Use cmake-3.31.2 on linux and windows (#5918)
    13b59bf1d Relax DebugLine validation (#5916)
    1229f1ef3 assembler: ensure progress when seeking the version string (#5910)
    4d2f0b40b Prepare release (#5905)
    3fb52548b Vulkan 1.4 support (#5899)
    7d5bc3519 build(deps): bump github/codeql-action in the github-actions group (#5891)
    eebdb1575 Roll external/abseil_cpp/ 917bfee46..b67caffec (3 commits) (#5889)
    7c58952fa Update path-to-regexp to address CVE-2024-45296 (#5895)
    a9d884e58 spirv-as: Assume target from spvasm text (#5893)
    f3c4a5053 spirv-val: Add missing NonSemantic.Shader.DebugInfo.100 (#5846)
    ea1d8cd98 Roll external/abseil_cpp/ 8f739d18b..917bfee46 (2 commits) (#5887)
    16fa89f06 build(deps): bump the github-actions group across 1 directory with 2 updates (#5885)
    27433b11e roll deps (#5883)
    35e5f1160 spirv-val: Accept valid OpSizeOf instructions (#5879)
    692529b94 [NFC] Apply small clang-tidy fixes (#5709)
    707da36c7 Correct a spelling error 'diagnostic' (#5878)
    df94b2db4 Avoid maintaining a list of all operating systems by hand. (#5881)
    1601ec263 ci: Make MacOS builds only run if other things pass (#5872)
    671e7ca5e Roll external/abseil_cpp/ a3027054a..27a0c7308 (7 commits) (#5875)
    384d527eb spirv-val: Report VUID 08973 only in Vulkan environments (#5873)
    9117e042b roll deps (#5871)
    02433568a tools: Accept hex representation as binary input (#5870)
    d426fc53b build(deps): bump the github-actions group across 1 directory with 3 updates (#5866)
    9aaa26014 roll deps (#5850)
    e5c1498af Update proto JSON options call. (#5867)
    5f1e86cb5 tools: Move io utils to cpp (#5869)
    ce9263039 Add validation for SPV_NV_tensor_addressing and SPV_NV_cooperative_matrix2 (#5865)
    298055b25 opt: add StorageImageWriteWithoutFormat to trimm pass (#5860)
    895bb9ffe opt: add KHR_fragment_shading_rate to allowlist (#5859)
    ba37b3b51 opt: Remove InstDebugPrintfPass (#5856)
    14388d701 ci: Update MacOS to latest OS (#5855)
    a832c1333 Fix switch case construct validation (#5852)
    2ea729062 opt: Fix array copy propagation of access chain pointers (#5853)
    5b98dea6f build(deps): bump the github-actions group across 1 directory with 5 updates (#5847)
    68265e160 Roll external/abseil_cpp/ 03b8d6ea3..8634e35f1 (1 commit) (#5844)
    42b315c15 Fix result type check in ValidateImageTexelPointer (#5848)
    fcf994a61 Handle aliases field in the grammar (#5799)
    4310fd4ed build(deps): bump the github-actions group across 1 directory with 3 updates (#5841)
    ada92f849 roll deps (#5833)
    522dfead3 opt: Add support for OpExtInst to capability trim pass (#5836)
    c173df736 build(deps): bump github/codeql-action in the github-actions group (#5831)
    4554c6b7e Roll external/abseil_cpp/ 482ca0b9d..c6b27359c (1 commit) (#5829)
    48f9f4a99 opt: Update copy prop arrays to handle InterpolateAt* instructions (#5827)
    d9c1aee6a Roll external/abseil_cpp/ ba5fd0979..482ca0b9d (1 commit) (#5828)
    b1ad37b17 opt: Mark InterpolateAt* argument as live for DCE (#5824)
    5b38abc87 Do not distrubute OpSNegate into OpUDiv (#5823)
    5c8442f7f build(deps-dev): bump rollup from 3.23.0 to 3.29.5 in /tools/sva (#5826)
    c0e6399df build(deps): bump the github-actions group across 1 directory with 2 updates (#5825)
    3656c4bd1 Roll external/abseil_cpp/ c0b9bd08e..ba5fd0979 (2 commits) (#5818)
    44936c4a9 Add support for SPV_KHR_compute_shader_derivative (#5817)
    362ce7c60 Allow more levels of arrays with component decoration (#5820)
    24849751c build(deps): bump github/codeql-action in the github-actions group (#5813)
    c405baf8c Roll external/abseil_cpp/ 0df567400..c0b9bd08e (3 commits) (#5812)
    7ba72f14f spirv-val: Disallow stores according to VUID 06924 (#5368)
    01c8438ee [SPV_KHR_untyped_pointers] Fix verification for OpenCL.std instructions (#5810)
    6dcc7e350 Prepare release v2024.4 (#5811)
    04bdb6c7c roll deps (#5809)
    20788a4c5 add support for SPV_INTEL_global_variable_host_access (#5786)
    04ad1e1ce build(deps): bump github/codeql-action in the github-actions group (#5808)
    d85446fd7 [OPT] Fix generating debugLocalVariable from debugGlobalVariable (#5803)
    a2c9c2387 Roll external/abseil_cpp/ 1d4466e8d..f7c22f52a (3 commits) (#5806)
    4c2094ee9 Made libspirv include relative to allow better portability (#5807)
    4451f6ab1 Implement to_string(uint32_t) without using the locale (#5805)
    7c9210cc1 Roll external/abseil_cpp/ 67d126083..1d4466e8d (2 commits) (#5801)
    37d2fcb48 spirv-opt: fix crash in function declarations (#5796)
    380275eac Do not check structurally unreachable continue target predecessors (#5800)
    d160e170d Roll external/abseil_cpp/ f7f316824..67d126083 (3 commits) (#5787)
    6209efd77 Update SPIRV-Headers (#5793)
    05be5b246 Fix build.gn build. (#5791)
    e9915cea8 Update sampled image validation (#5789)
    07f49ce65 spirv-opt: make traversal deterministic (#5790)
    f914d9c8a [SPV_KHR_untyped_pointers] Fix verification of vload/vstore OpenCL.std instructions (#5788)
    b31baff4e [opt] Add struct-packing pass and unit test. (#5778)
    2a67ced43 Roll external/abseil_cpp/ e64dd622d..f7f316824 (2 commits) (#5782)
    bc4060ed2 update_build_version.py: support an envvar to force the description (#5758)
    61d6952e2 Revert "OpSampledImage extra validation (#5695)" (#5785)
    e1782d667 Roll external/abseil_cpp/ fd7713cb9..fd58e18f2 (2 commits) (#5773)
    88c25a71d build(deps): bump the github-actions group across 1 directory with 3 updates (#5780)
    b21dda0ee Validate presence of Stride operand to OpCooperativeMatrix{Load,Store}KHR (#5777)
    edc68950b build(deps): bump github/codeql-action in the github-actions group (#5772)
    a85a703e3 roll deps (#5771)
    25b4e42ea roll deps (#5754)
    0c40b591a [OPT] Add SPV_KHR_ray_tracing_position_fetch to allow lists (#5757)
    e8c2fbca1 Remove local attribute from build_version_inc genrule (#5766)
    988995c3b build(deps): bump github/codeql-action (#5769)
    87fcbaf1b build(deps): bump the github-actions group across 1 directory with 4 updates (#5761)
    b64a423b4 Workaround issue in MSVC arm64 compiler returning random upper 32-bits in function spvtools::util::CountSetBits. (#5763)
    72c291332 Add OpTypeRuntimeArray to composite types (#5765)
    bc2478c92 Use "docker compose" in wasm build (#5764)
    246daf246 [OPT] Avoid assert in generatecopy (#5756)
    363486479 roll deps (#5748)
    e7216170d build(deps): bump braces from 3.0.2 to 3.0.3 in /tools/sva (#5737)
    8731673a5 Allow ArrayStride on untyped pointers (#5746)
    ffb8d85ea Roll external/googletest/ 9ff2450a5..cee1ba1f2 (1 commit) (#5743)
    81a116002 [opt] Fix uses of type manager in fix storage class (#5740)
    e99a5c033 spirv-link: allow linking functions with different pointer arguments (#5534)
    ca373497f [opt] Fix pointer stores in DCE (#5739)
    a0817526b properly handle the load and store cache control operand types (#5664)
    d1b35bb17 build(deps): bump the github-actions group with 2 updates (#5744)
    626dfbff4 Roll external/abseil_cpp/ eb8522077..3cb498899 (4 commits) (#5741)
    2ea400363 opt: split composite from array flattening (#5733)
    4c7e1fa5c Roll external/abseil_cpp/ 074a32af6..af4c589ed (1 commit) (#5731)
    3ab0d2260 Support SPV_KHR_untyped_pointers (#5736)
    6248fda37 Handle coop matrix in fix storage class (#5729)
    7c778973e Allow fmt arg to printf to be an array of i8 in non-constant space (#5677)
    257cacfb3 build(deps): bump the github-actions group across 1 directory with 4 updates (#5734)
    6a5fa5f70 Fix SPRIV -> SPIRV typos (#5735)
    9f2ccaef5 kokoro: use Python 3.12 in Linux builds (#5730)
    beabd8b7f Roll external/abseil_cpp/ 1278ee9bd..0d9c2fc76 (2 commits) (#5724)
    216574bed Allow for empty list of enums for an operand (#5727)
    3bc9744d0 Add FPEncoding operand type. (#5726)
    973e791a9 Roll external/abseil_cpp/ 16452e141..a7c5f985f (5 commits) (#5722)
    c91d9ec15 Roll external/abseil_cpp/ 1315c900e..b4e4b6259 (1 commit) (#5716)
    ca004da9f Add knowledge of cooperative matrices (#5720)
    64d37e281 [NFC] Fix potential buffer overflow (#5715)
    b9d811469 Add re2 dep back to Bazel build (#5721)
    0cfe9e721 Prepare release v2024.3 (#5719)
    581279ded [OPT] Zero-extend unsigned 16-bit integers when bitcasting (#5714)
    80a1aed21 Use bzlmod for effcee (#5707)
    7bf2d0275 roll deps (#5685)
    6c8b460eb misc: remove encoding parameter (#5710)
    7564e142d spirv-dis: Add --nested-indent and --reorder-blocks (#5671)
    bc28ac7c1 opt: add OpExtInst forward ref fixup pass (#5708)
    65d30c315 opt: fix Subgroup* trimming (#5706)
    c3178da8e spirv-dis: add decorations to comments (#5675)
    ce46482db Add KHR suffix to OpExtInstWithForwardRef opcode. (#5704)
    7b5691084 update tests for disassembly changes (#5694)
    e1c0ad23f build(deps): bump the github-actions group across 1 directory with 2 updates (#5702)
    9db5b5ec1 Add assert header to val/decoration.h (#5703)
    6a2bdeee7 spirv-val, core: add support for OpExtInstWithForwardRefs (#5698)
    4a2e0c9b3 Fix comments in liveness.h (#5699)
    70ad4dae7 OpSampledImage extra validation (#5695)
    fd96922e9 Remove calls to GetId in liveness analysis (#5693)
    95681dc42 Remove implicit call to GetId in ConvertToSampledImagePass. (#5692)
    148c97f68 Avoid use of type manager in extact->construct folding (#5684)
    142bf7de8 spirv-val: Fix indentation of --version output (#5686)
    7e1a8cdc5 Basic support for SPV_EXT_replicated_composites (#5690)
    3d2408929 spirv-val: Add Duplicate EntryPoint Builtin check (#5678)
    77c40bece Roll deps
    336b5710a Do not fold mul and adds to generate fmas (#5682)
    ee749f505 Add abseil to the autoroller (#5680)
    e2646f5e9 spirv-val: Consider target env for OpReadClockKHR scope (#5681)
    e4b1a48aa Use raw string to avoid unintended escapes in regex (#5676)
    14fe558c0 --- (#5679)
    ccf3e3c10 Improve matrix layout validation (#5662)
    199038f10 spirv-val: Validate MemoryAccessMask of OpCooperativeMatrixStoreKHR (#5668)
    9241a58a8 opt: Remove bindless and buff addr instrumentation passes (#5657)
    bfc3a1568 build(deps): bump the github-actions group across 1 directory with 3 updates (#5656)
    57a42e6c1 spirv-val: Separate Location check for tess patch (#5654)

Commands:
    ./third_party/update-spirvtools.sh

Bug: b/123642959
git-subtree-dir: third_party/SPIRV-Headers
git-subtree-split: 97e96f9e9defeb4bba3cfbd034dec516671dd7a3
Change-Id: I8b91f5f47966f93507bb032d8e0b36ca31553557
Reviewed-on: https://swiftshader-review.googlesource.com/c/SwiftShader/+/76128
Kokoro-Result: kokoro <noreply+kokoro@google.com>
Tested-by: Shahbaz Youssefi <syoussefi@google.com>
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@google.com>
