Commit Graph

4020 Commits

Author SHA1 Message Date
Cassandra Beckley
02c79e9082
kokoro: Update bazel to 7.0.2 for Linux builds (#5609) 2024-03-13 13:21:35 -04:00
Kévin Petit
f869d391a5
[OPT] Fix handling of analyses rebuild (#5608)
All tests treat kAnalysisEnd like STL end iterators, which
means its value must be greater than that of the last valid
Analysis.


Change-Id: Ibfaaf60bb450c508af0528dbe9c0729e6aa07b3b

Signed-off-by: Kevin Petit <kevin.petit@arm.com>
2024-03-12 09:09:46 +00:00
David Neto
d15a7aa25d
kokoro: Update bazel to 7.0.2 for Mac builds (#5606) 2024-03-11 09:57:43 -07:00
Michael Anttila
04896c462d
Prepare release v2024.1 (#5605)
* Roll external/spirv-headers/ b73e168ca..8b246ff75 (1 commit)

b73e168ca5...8b246ff75c

$ git log b73e168ca..8b246ff75 --date=short --no-merges --format='%ad %ae %s'
2024-03-01 rlocatti Add SPV_NV_raw_access_chains (#417)

Created with:
  roll-dep external/spirv-headers

* Prepare release 2024.1
2024-03-07 10:31:14 -05:00
Rodrigo Locatti
7c363050de
Add operand types for SPV_NV_raw_access_chains (#5602)
This is needed to unblock builds with updated SPIR-V headers.
It is not a replacement for #5568.
2024-03-06 10:42:22 -05:00
dependabot[bot]
5bc7c28763
build(deps): bump the github-actions group with 2 updates (#5598)
Bumps the github-actions group with 2 updates: [actions/cache](https://github.com/actions/cache) and [github/codeql-action](https://github.com/github/codeql-action).


Updates `actions/cache` from 4.0.0 to 4.0.1
- [Release notes](https://github.com/actions/cache/releases)
- [Changelog](https://github.com/actions/cache/blob/main/RELEASES.md)
- [Commits](13aacd865c...ab5e6d0c87)

Updates `github/codeql-action` from 3.24.5 to 3.24.6
- [Release notes](https://github.com/github/codeql-action/releases)
- [Changelog](https://github.com/github/codeql-action/blob/main/CHANGELOG.md)
- [Commits](47b3d888fe...8a470fddaf)

---
updated-dependencies:
- dependency-name: actions/cache
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: github-actions
- dependency-name: github/codeql-action
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: github-actions
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-03-04 13:00:12 -05:00
Kévin Petit
75ad1345d4
Remove redundant function declarations from source/operand.h (#5584)
Flagged by -Wredundant-decls

I'm assuming the declarations in libspirv.h are part of the external
interface and need to be kept.


Change-Id: I6b138d3322a7a4ee49ee33b0fbcf0ca35dd92261

Signed-off-by: Kevin Petit <kevin.petit@arm.com>
2024-02-29 17:46:38 +00:00
Wooyoung Kim
9bd44d028e
Suppot for SPV_QCOM_image_processing2 (#5582) 2024-02-28 16:26:28 -05:00
Viktoria Maximova
0b027bafa5
Support operand kind for SPV_INTEL_maximum_registers (#5580)
* Support operand kind for SPV_INTEL_maximum_registers

* improvements

* Update DEPS
2024-02-28 13:58:09 -05:00
alan-baker
fbc7a14b3e
Fix access chain struct checks (#5592)
* Fix access chain struct checks

Fixes https://crbug.com/oss-fuzz/66948

* Negative indices are invalid for struct access
* Fix typos

* formatting
2024-02-27 15:54:08 -05:00
dependabot[bot]
99a3ad32ff
build(deps): bump the github-actions group with 1 update (#5594)
Bumps the github-actions group with 1 update: [github/codeql-action](https://github.com/github/codeql-action).


Updates `github/codeql-action` from 3.24.4 to 3.24.5
- [Release notes](https://github.com/github/codeql-action/releases)
- [Changelog](https://github.com/github/codeql-action/blob/main/CHANGELOG.md)
- [Commits](e2e140ad14...47b3d888fe)

---
updated-dependencies:
- dependency-name: github/codeql-action
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: github-actions
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-02-26 12:51:21 -05:00
dependabot[bot]
c3a9ffd74f
build(deps): bump the github-actions group with 1 update (#5593)
Bumps the github-actions group with 1 update: [github/codeql-action](https://github.com/github/codeql-action).


Updates `github/codeql-action` from 3.24.3 to 3.24.4
- [Release notes](https://github.com/github/codeql-action/releases)
- [Changelog](https://github.com/github/codeql-action/blob/main/CHANGELOG.md)
- [Commits](379614612a...e2e140ad14)

---
updated-dependencies:
- dependency-name: github/codeql-action
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: github-actions
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-02-23 12:36:47 -05:00
Spencer Fricke
1b643eac5d
spirv-val: Make Constant evaluation consistent (#5587)
Bring 64-bit evaluation in line with 32-bit evaluation.
2024-02-21 17:52:13 -05:00
github-actions[bot]
dc6676445b
Roll external/googletest/ 6eb225cb8..5df0241ea (2 commits) (#5583)
* Roll external/googletest/ 6eb225cb8..5df0241ea (2 commits)

6eb225cb88...5df0241ea4

$ git log 6eb225cb8..5df0241ea --date=short --no-merges --format='%ad %ae %s'
2024-02-14 absl-team gtest.h: add IWYU export pragmas
2024-02-13 absl-team Support Fuchsia target builds.

Created with:
  roll-dep external/googletest

* Roll external/re2/ b4c6fe091..ed9fc269e (1 commit)

b4c6fe091b...ed9fc269e2

$ git log b4c6fe091..ed9fc269e --date=short --no-merges --format='%ad %ae %s'
2024-02-15 junyer Update @apple_support to version 1.12.0.

Created with:
  roll-dep external/re2

---------

Co-authored-by: GitHub Actions[bot] <>
Co-authored-by: Cassandra Beckley <cbeckley@google.com>
2024-02-16 19:28:03 -05:00
Cassandra Beckley
7da2c941f0
Update WORKSPACE (#5588)
* Update WORKSPACE

Same purpose as #5585, but a bit less intrusive perhaps.

* Update WORKSPACE

Add `rules_license`, needed by `platforms`.
2024-02-16 15:09:08 -08:00
dependabot[bot]
16af142c15
build(deps): bump the github-actions group with 1 update (#5586)
Bumps the github-actions group with 1 update: [github/codeql-action](https://github.com/github/codeql-action).


Updates `github/codeql-action` from 3.24.1 to 3.24.3
- [Release notes](https://github.com/github/codeql-action/releases)
- [Changelog](https://github.com/github/codeql-action/blob/main/CHANGELOG.md)
- [Commits](e675ced7a7...379614612a)

---
updated-dependencies:
- dependency-name: github/codeql-action
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: github-actions
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-02-16 12:04:01 -05:00
Jeff Bolz
b0a5c4ac12
SPV_NV_shader_atomic_fp16_vector (#5581) 2024-02-14 15:58:12 -05:00
dependabot[bot]
55cb3989ec
build(deps): bump the github-actions group with 1 update (#5578)
Bumps the github-actions group with 1 update: [github/codeql-action](https://github.com/github/codeql-action).


Updates `github/codeql-action` from 3.24.0 to 3.24.1
- [Release notes](https://github.com/github/codeql-action/releases)
- [Changelog](https://github.com/github/codeql-action/blob/main/CHANGELOG.md)
- [Commits](e8893c57a1...e675ced7a7)

---
updated-dependencies:
- dependency-name: github/codeql-action
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: github-actions
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-02-14 13:53:33 -05:00
github-actions[bot]
11afeb4bb1
roll deps (#5576)
* Roll external/googletest/ b75ecf1be..6eb225cb8 (1 commit)

b75ecf1bed...6eb225cb88

$ git log b75ecf1be..6eb225cb8 --date=short --no-merges --format='%ad %ae %s'
2024-02-13 absl-team Add anchor for expectation ordering note

Created with:
  roll-dep external/googletest

* Roll external/re2/ ab7c5918b..b4c6fe091 (2 commits)

ab7c5918b4...b4c6fe091b

$ git log ab7c5918b..b4c6fe091 --date=short --no-merges --format='%ad %ae %s'
2024-02-13 junyer Bump version of `p0deje/setup-bazel` to address warnings.
2024-02-13 junyer Try using `p0deje/setup-bazel` everywhere.

Created with:
  roll-dep external/re2

---------

Co-authored-by: GitHub Actions[bot] <>
2024-02-14 18:25:53 +00:00
Steven Perron
7604147c25
[OPT] Add removed unused interface var pass to legalization passes (#5579)
DXC does not do a good job of recognizing which variables need to be
on the entry point for which functions. This is because it does not
want to have to walk the call tree to determine which instructions
are reachable from which entry points.

This is also useful if the same input variable gets used from two
different shader, but the uses in one get optimized away.

Will parially fix
https://github.com/microsoft/DirectXShaderCompiler/issues/4621. Will not
fix code compiled with -fcgl.
2024-02-14 13:08:25 -05:00
Spencer Fricke
f9184c6501
spirv-val: Revert Validate PhysicalStorageBuffer Stage Interface (#5575) 2024-02-13 21:24:20 -05:00
Spencer Fricke
20ad38c18d
spirv-val: Multiple interface var with same SC (#5528) 2024-02-13 15:55:43 -05:00
Steven Perron
e08c012b19
[OPT] Identify arrays with unknown length in copy prop arrays (#5570)
* [OPT] Identify arrays with unknown length in copy prop arrays

The code in copy propagate arrays assumes that the length of an
OpTypeArray is known at compile time, but that is not true when the size
is an OpSpecConstant. We try to fix that assumption.

Fixes https://crbug.com/oss-fuzz/66634
2024-02-13 14:41:38 -05:00
github-actions[bot]
56a51dd947
Roll external/spirv-headers/ e77d03080..d3c2a6fa9 (1 commit) (#5574)
e77d03080b...d3c2a6fa95

$ git log e77d03080..d3c2a6fa9 --date=short --no-merges --format='%ad %ae %s'
2024-02-12 ben.ashbaugh remove Kernel from Image Channel Order and Channel Data Type enums (#413)

Created with:
  roll-dep external/spirv-headers

Co-authored-by: GitHub Actions[bot] <>
Co-authored-by: Cassandra Beckley <cbeckley@google.com>
2024-02-13 14:19:09 -05:00
Ben Ashbaugh
0c986f596d
update image enum tests to remove Kernel capability (#5562)
We are removing Kernel from the image channel order and image
channel data type enums because Kernel is already required
transitively, so we need to update the tests to match.
2024-02-13 11:07:39 -05:00
Steven Perron
b7413609cf
[OPT] Use new instruction folder for for all opcodes in spec consti folding (#5569)
* [OPT] Use new instruction folder for for all opcodes in spec consti folding

When folding and OpSpecConstantOp, we use the new instruction folder for
a small number of opcodes. This enable the new instruction folder for
all opcodes and uses the old one as a fall back. This allows us to
remove some code from the older folder that is now covered by the new
one.

Fixes #5499
2024-02-12 19:52:55 +00:00
Spencer Fricke
784b064f90
spirv-val: Validate PhysicalStorageBuffer Stage Interface (#5539)
Disallow PhysicalStorageBuffer pointers in Input and Output storage classes.
2024-02-12 09:51:38 -05:00
Steven Perron
a8959dc653
Fold 64-bit int operations (#5561)
Adds folding rules that will fold basic artimetic for signed and
unsigned integers of all sizes, including 64-bit.

Also folds OpSConvert and OpUConvert.
2024-02-09 14:02:48 -05:00
github-actions[bot]
80926d97ab
roll deps (#5566)
* Roll external/googletest/ 64be1c79f..b75ecf1be (2 commits)

64be1c79fa...b75ecf1bed

$ git log 64be1c79f..b75ecf1be --date=short --no-merges --format='%ad %ae %s'
2024-02-07 kfm Switch rank structs to be consistent with written guidance in go/ranked-overloads
2024-02-07 absl-team Use _Exit instead of _exit in GoogleTest

Created with:
  roll-dep external/googletest

* Roll external/spirv-headers/ 1c9115b56..e77d03080 (1 commit)

1c9115b562...e77d03080b

$ git log 1c9115b56..e77d03080 --date=short --no-merges --format='%ad %ae %s'
2024-02-07 gleese Update FPFastMath token reservation (#414)

Created with:
  roll-dep external/spirv-headers

---------

Co-authored-by: GitHub Actions[bot] <>
2024-02-08 19:47:36 +00:00
dependabot[bot]
9a7b1af906
build(deps): bump the github-actions group with 1 update (#5564)
Bumps the github-actions group with 1 update: [lukka/get-cmake](https://github.com/lukka/get-cmake).


Updates `lukka/get-cmake` from 3.28.2 to 3.28.3
- [Release notes](https://github.com/lukka/get-cmake/releases)
- [Commits](23a189c2ed...139aae9631)

---
updated-dependencies:
- dependency-name: lukka/get-cmake
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: github-actions
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-02-07 14:15:04 -05:00
github-actions[bot]
1a2cbabd8b
Roll external/googletest/ 48729681a..64be1c79f (1 commit) (#5563)
48729681ad...64be1c79fa

$ git log 48729681a..64be1c79f --date=short --no-merges --format='%ad %ae %s'
2024-02-06 absl-team Destroy installed environments in normal code, not in static teardown.

Created with:
  roll-dep external/googletest

Co-authored-by: GitHub Actions[bot] <>
2024-02-07 18:27:25 +00:00
dependabot[bot]
7657cb1c69
build(deps): bump the github-actions group with 3 updates (#5560)
Bumps the github-actions group with 3 updates: [lukka/get-cmake](https://github.com/lukka/get-cmake), [actions/upload-artifact](https://github.com/actions/upload-artifact) and [github/codeql-action](https://github.com/github/codeql-action).


Updates `lukka/get-cmake` from 3.28.1 to 3.28.2
- [Release notes](https://github.com/lukka/get-cmake/releases)
- [Commits](2654d8ee38...23a189c2ed)

Updates `actions/upload-artifact` from 4.3.0 to 4.3.1
- [Release notes](https://github.com/actions/upload-artifact/releases)
- [Commits](26f96dfa69...5d5d22a312)

Updates `github/codeql-action` from 3.23.2 to 3.24.0
- [Release notes](https://github.com/github/codeql-action/releases)
- [Changelog](https://github.com/github/codeql-action/blob/main/CHANGELOG.md)
- [Commits](b7bf0a3ed3...e8893c57a1)

---
updated-dependencies:
- dependency-name: lukka/get-cmake
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: github-actions
- dependency-name: actions/upload-artifact
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: github-actions
- dependency-name: github/codeql-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: github-actions
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-02-06 11:09:41 -08:00
Steven Perron
032c15aaf5
[NFC] Refactor code to fold instruction in fold tests. (#5558)
We repeat basically the same code multiple times in the different types of
folding tests. This commit adds a function that builds the module, finds the
instruction to fold, and folds it. Doing the routine checks at the same
time. We also have a couple generic functions for checking that an
instruction is a constant with the expected value.
2024-02-06 13:05:05 -05:00
github-actions[bot]
9938f5bc2e
Roll external/googletest/ 456574145..48729681a (1 commit) (#5559)
456574145c...48729681ad

$ git log 456574145..48729681a --date=short --no-merges --format='%ad %ae %s'
2024-01-31 112332952+kaswhy Add myself to Contributors

Created with:
  roll-dep external/googletest

Co-authored-by: GitHub Actions[bot] <>
2024-02-06 18:00:14 +00:00
Nathan Gauër
ab59dc6087
opt: prevent meld to merge block with MaximalReconvergence (#5557)
The extension SPV_KHR_maximal_reconvergence adds more constraints
around the merge blocks, and how the control flow can be altered.

The one we address here is explained in the following part of the spec:

  Note: This means that the instructions in a break block will execute as if
  they were still diverged according to the loop iteration. This restricts
  potential transformations an implementation may perform on the IR to match
  shader author expectations. Similarly, instructions in the loop construct
  cannot be moved into the continue construct unless it can be proven that
  invocations are always converged.

Until the optimizer is clever enough to determine if the invocation
have already converged, we shall not meld a block which branches to a
merge block into it, as it might move some instructions outside of the
convergence region.

This behavior being only required with the extension, this commit
behavior change is gated by the extension.
This means using wave operations without the maximal reconvergence
extension might lead to undefined behaviors.

Co-authored-by: Natalie Chouinard <chouinard.nm@gmail.com>
2024-02-06 06:12:00 -05:00
github-actions[bot]
6c11c2bd46
Roll external/re2/ 283636ffb..ab7c5918b (2 commits) (#5555)
283636ffb2...ab7c5918b4

$ git log 283636ffb..ab7c5918b --date=short --no-merges --format='%ad %ae %s'
2024-02-02 junyer Address a warning from `pypa/gh-action-pypi-publish`.
2024-02-02 junyer Update to `bazelbuild/setup-bazelisk@v3`.

Created with:
  roll-dep external/re2

Co-authored-by: GitHub Actions[bot] <>
2024-02-03 06:21:01 +00:00
github-actions[bot]
a8afbe941a
roll deps (#5550)
* Roll external/googletest/ 6a5938233..456574145 (5 commits)

6a5938233b...456574145c

$ git log 6a5938233..456574145 --date=short --no-merges --format='%ad %ae %s'
2024-01-31 absl-team Modifications to improve portability of googletest tests.
2024-01-30 absl-team Do not emit stack traces for messages generated by SUCCEED()
2024-01-23 sxshx818 Docs: Add mention of `gtest_recreate_environments_when_repeating`
2024-01-12 sxshx818 Docs: add conditions for calling SetUp and TearDown()
2023-12-29 sxshx818 Docs: add conditions for calling TearDown()

Created with:
  roll-dep external/googletest

* Roll external/re2/ 826ad10e5..283636ffb (6 commits)

826ad10e58...283636ffb2

$ git log 826ad10e5..283636ffb --date=short --no-merges --format='%ad %ae %s'
2024-01-31 junyer Build and deploy to GitHub Pages from GitHub Actions.
2024-01-30 junyer Try using larger runners for macOS.
2024-01-30 junyer Add support for macOS 14.
2024-01-30 junyer Prepare to tag release `2024-02-01`.
2024-01-29 junyer Drop `manylinux2014` from the build matrix.
2024-01-29 junyer Bump versions of actions to address warnings.

Created with:
  roll-dep external/re2

---------

Co-authored-by: GitHub Actions[bot] <>
2024-02-02 21:19:05 +00:00
Ben Doherty
8d3ee2e8f0
spirv-opt: Fix OpCompositeExtract relaxation with struct operands (#5536) 2024-02-01 15:19:02 -07:00
Spencer Fricke
61c51d4baf
spirv-val: Add Mesh Primitive Built-In validaiton (#5529) 2024-02-01 14:20:42 -05:00
Natalie Chouinard
5d3c8b73f7
opt: Add OpEntryPoint to DescriptorScalarReplacement pass (#5553)
Add OpEntryPoint to the list of instructions processed by the
DescriptorScalarReplacement pass. This is necessary for SPIR-V 1.4 and
above where global variables must be included in the interface.

Fixes microsoft/DirectXShaderCompiler#5962
2024-02-01 09:50:36 -05:00
Natalie Chouinard
de65e81740
[NFC] Remove unused code (#5554) 2024-02-01 09:47:42 -05:00
Nathan Gauër
ad11927e6c
opt: add SPV_EXT_mesh_shader to opt allowlist (#5551)
Add this extension to the allowlist, allowing DCE and other
optimizations on modules exposing this.
Note: NV equivalent is already allowed.
2024-01-30 12:13:46 -05:00
dependabot[bot]
27ffe976e0
build(deps): bump the github-actions group with 2 updates (#5549)
Bumps the github-actions group with 2 updates: [actions/upload-artifact](https://github.com/actions/upload-artifact) and [github/codeql-action](https://github.com/github/codeql-action).


Updates `actions/upload-artifact` from 4.2.0 to 4.3.0
- [Release notes](https://github.com/actions/upload-artifact/releases)
- [Commits](694cdabd8b...26f96dfa69)

Updates `github/codeql-action` from 3.23.1 to 3.23.2
- [Release notes](https://github.com/github/codeql-action/releases)
- [Changelog](https://github.com/github/codeql-action/blob/main/CHANGELOG.md)
- [Commits](0b21cf2492...b7bf0a3ed3)

---
updated-dependencies:
- dependency-name: actions/upload-artifact
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: github-actions
- dependency-name: github/codeql-action
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: github-actions
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-01-30 10:29:19 -05:00
github-actions[bot]
e5fcb7facf
Roll external/re2/ 264e71e88..826ad10e5 (1 commit) (#5538)
* Roll external/googletest/ 96cd50c08..6a5938233 (4 commits)

96cd50c082...6a5938233b

$ git log 96cd50c08..6a5938233 --date=short --no-merges --format='%ad %ae %s'
2024-01-25 dmauro Add support for Bzlmod for the next release https://bazel.build/external/overview#bzlmod
2024-01-23 absl-team Fix double-promotion warnings in AppropriateResolution()
2024-01-22 dinor googletest: Fix incorrect comment about `value_param` of `internal::MakeAndRegisterTestInfo`
2024-01-10 michael.128.leslie only apply -lregex for qnx710 and newer

Created with:
  roll-dep external/googletest

* Roll external/re2/ 264e71e88..826ad10e5 (1 commit)

264e71e88e...826ad10e58

$ git log 264e71e88..826ad10e5 --date=short --no-merges --format='%ad %ae %s'
2024-01-19 junyer Delete an unused function.

Created with:
  roll-dep external/re2

* Roll external/spirv-headers/ 5aa1dd8a1..1c9115b56 (1 commit)

5aa1dd8a11...1c9115b562

$ git log 5aa1dd8a1..1c9115b56 --date=short --no-merges --format='%ad %ae %s'
2024-01-26 dneto List all licenses in the root LICENSE file. (#410)

Created with:
  roll-dep external/spirv-headers

---------

Co-authored-by: GitHub Actions[bot] <>
2024-01-29 16:01:06 +00:00
Scott Todd
80bc99c3d4
Skip entire test/ folder if SPIRV_SKIP_TESTS is set. (#5548)
Without this (or similar filtering), the `spirv-tools_expect_unittests` and `spirv-tools_spirv_test_framework_unittests` Python tests at `test/tools/` get defined even when `SPIRV_SKIP_TESTS` is set.
2024-01-26 16:47:13 -05:00
Natalie Chouinard
0a6f0d1893
opt: Add TrimCapabilities pass to spirv-opt tool (#5545)
Add an option to the spirv-opt tool to run the TrimCapabilitiesPass.
2024-01-26 16:15:29 -05:00
ruiminzhao
b951948eaa
SPV_KHR_quad_control (#5547)
* SPV_KHR_quad_control

1. Add two new execute modes: RequireFullQuadsKHR and QuadDerivativesKHR
2. Add two opCodes: OpGroupNonUniformQuadAllKHR and
   OpGroupNonUniformQuadAnyKHR
3. Add one Capability: QuadControlKHR

* update DEPS

* Fixes

* Build fixes
* Formatting fixes
* Test fixes

* formatting

---------

Co-authored-by: Alan Baker <alanbaker@google.com>
2024-01-26 15:49:56 -05:00
alan-baker
69197ba90b
Add modify-maximal-reconvergence to spirv-opt help (#5546) 2024-01-25 15:53:11 -05:00
Natalie Chouinard
0045b01ff9
opt: Add VulkanMemoryModelDeviceScope to trim (#5544)
Add the VulkanMemoryModelDeviceScope capability to the capability
trimming pass. According the the spec, "If the Vulkan memory model is
declared and any instruction uses Device scope, the
VulkanMemoryModelDeviceScope capability must be declared." Since this
case, based on the type of an operand, is not covered by the JSON
grammar, it is added explicitly.
2024-01-25 14:05:04 -05:00
alan-baker
ef2f432364
Add support for SPV_KHR_float_controls2 (#5543)
* Test asm/dis for SPV_KHR_float_controls2
* SPV_KHR_float_controls2 validation

---------

Co-authored-by: David Neto <dneto@google.com>
2024-01-25 10:22:09 -05:00