Commit Graph

4958 Commits

Author SHA1 Message Date
Rex Xu
a8d39f97cd Add a helper applySpirvDecorate to handle spirv_decorate_xxx directives
Some code paths could be shared.
2023-11-09 08:49:40 -07:00
Nathaniel Cesario
091b9fd979 Fix GL_ARB_shader_storage_buffer_object version
Ensure that GL_ARB_shader_storage_buffer_object is available from
version GL 400 to GL 420.

Closes #3263.
2023-11-07 15:56:52 -07:00
Arcady Goldmints-Orlov
f102d0f4fa Fix update_glslang_sources.py to not use distutils
The distutils package was removed in Python 3.12, however its only
usage in this script can easily be replaced with functionality available
in the builtin os package in Python 3.2 and later.

Fixes #3393
2023-11-07 15:51:45 -07:00
Rex Xu
65f59c81e7 GL_EXT_spirv_intrinsics: Fix a typo in function naming
hasSprivDecorate => hasSpirvDecorate

Also, revise a comment.
2023-11-06 12:50:02 -05:00
Juan Ramos
302a663a38 Use googletest version 1.14.0 2023-10-31 16:47:37 -04:00
Malcolm Bechard
1dde7113bb tweak error behavior for redeclared uniforms for vulkan-relaxed
avoids nullptr crash from reading memberType's name, and more user
friendly error message.
2023-10-31 15:02:38 -04:00
dependabot[bot]
f8dd5adde4 Bump github/codeql-action from 2.22.4 to 2.22.5
Bumps [github/codeql-action](https://github.com/github/codeql-action) from 2.22.4 to 2.22.5.
- [Release notes](https://github.com/github/codeql-action/releases)
- [Changelog](https://github.com/github/codeql-action/blob/main/CHANGELOG.md)
- [Commits](49abf0ba24...74483a38d3)

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

Signed-off-by: dependabot[bot] <support@github.com>
2023-10-30 14:16:54 -04:00
dependabot[bot]
24914a47b2 Bump ossf/scorecard-action from 2.3.0 to 2.3.1
Bumps [ossf/scorecard-action](https://github.com/ossf/scorecard-action) from 2.3.0 to 2.3.1.
- [Release notes](https://github.com/ossf/scorecard-action/releases)
- [Changelog](https://github.com/ossf/scorecard-action/blob/main/RELEASE.md)
- [Commits](483ef80eb9...0864cf1902)

---
updated-dependencies:
- dependency-name: ossf/scorecard-action
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-10-30 14:16:10 -04:00
Nathaniel Cesario
8fa46582ec Remove debugOptions from internal classes
The debug options passed down from the public ShConstruct* functions to
internal code is unused. This change removes the internal debugOptions
fields and attempts to make it more obvious these fields are not used.

This change does not change the public-facing interface.

This change also adds the -Wshorten-64-to-32 warning to the StandAlone
build in order to avoid unwanted 64-to-32 bit conversions in the future.

Closes #3348.
2023-10-25 20:13:20 -04:00
Kévin Petit
a9e698322e
Align spirv.hpp to SPIRV-Headers for SPV_KHR_cooperative_matrix
Some of the enumerants used by this extension were missing a KHR suffix.
2023-10-25 19:59:52 -04:00
Nathaniel Cesario
ffac211098 Fix Windows GHA Tests
The Windows tests job in Github Actions was incorrectly reporting
'success' on failed runs. This change ensures a single command is run in
each test 'step' to help remove any guesswork w.r.t. the shell behavior
on each platform.

This change also takes the oppportunity to make the formatting more
consistent in continuous_integration.yml.
2023-10-25 17:34:53 -06:00
ncesario-lunarg
e6fbb65699
Merge pull request #3357 from chaocNV/addLineForDebugFunction
Add correct line number to OpDebugFunction and OpDebugScope for function
2023-10-25 12:12:59 -06:00
Chao Chen
979423d84f Add correct line number to OpDebugFunction and OpDebugScope for function:
1. Pull OpDebugFunction, OpDebugScope and OpDebugVariable for params out
   of makeFunctionEntry.
2. Put above in a separate function called setupDebugFunctionEntry,
   which also accept line number and set it correctly in builder.
3. Call setupDebugFunctionEntry in makeFunction. Also special case
   handle entry function since it's created ealier elsewhere.
2023-10-24 13:37:19 -07:00
dependabot[bot]
a2fb1ba2ad Bump github/codeql-action from 2.22.3 to 2.22.4
Bumps [github/codeql-action](https://github.com/github/codeql-action) from 2.22.3 to 2.22.4.
- [Release notes](https://github.com/github/codeql-action/releases)
- [Changelog](https://github.com/github/codeql-action/blob/main/CHANGELOG.md)
- [Commits](0116bc2df5...49abf0ba24)

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

Signed-off-by: dependabot[bot] <support@github.com>
2023-10-24 12:26:47 -04:00
dependabot[bot]
ab030e9fc2 Bump actions/checkout from 4.1.0 to 4.1.1
Bumps [actions/checkout](https://github.com/actions/checkout) from 4.1.0 to 4.1.1.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](8ade135a41...b4ffde65f4)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-10-24 12:26:29 -04:00
Arcady Goldmints-Orlov
7fa0731a80 Initialize spv_options in glslang_program_SPIRV_generate
This will prevent any recurrence of issues like the one addressed by
PR #3364.
2023-10-19 16:57:31 -04:00
dependabot[bot]
ebb0a8b28e Bump github/codeql-action from 2.22.0 to 2.22.3
Bumps [github/codeql-action](https://github.com/github/codeql-action) from 2.22.0 to 2.22.3.
- [Release notes](https://github.com/github/codeql-action/releases)
- [Changelog](https://github.com/github/codeql-action/blob/main/CHANGELOG.md)
- [Commits](2cb752a87e...0116bc2df5)

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

Signed-off-by: dependabot[bot] <support@github.com>
2023-10-17 14:00:45 -04:00
dependabot[bot]
6a6fcc292e Bump actions/setup-python from 4.7.0 to 4.7.1
Bumps [actions/setup-python](https://github.com/actions/setup-python) from 4.7.0 to 4.7.1.
- [Release notes](https://github.com/actions/setup-python/releases)
- [Commits](61a6322f88...65d7f2d534)

---
updated-dependencies:
- dependency-name: actions/setup-python
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-10-17 14:00:01 -04:00
Jeremy Hayes
36d08c0d94 Update CHANGES for release 13.1.1 2023-10-17 10:20:07 -04:00
Andrew MacDonald
fd1f96d202 Add missing initialization of compile_only field for SPIRV C interface 2023-10-16 19:18:15 -04:00
Jeremy Hayes
be564292f0 Update CHANGES for release 13.1.0 2023-10-14 16:09:27 -06:00
Arcady Goldmints-Orlov
0504953b35 spirv: don't emit invalid debuginfo for buffer references
Currently no debug info is emitted for buffer reference types, which
resulted in the SPIR-V backend code asserting when trying to emit the
debug info for struct member that had such a type. Instead, the code now
skips such struct members. Full debug info for buffer references may
require forward references in the debug info instructions, which is
currently prohibited by the spec.
2023-10-13 17:49:26 -04:00
Arcady Goldmints-Orlov
48f9ed8b08 spirv: only set LocalSizeId mode when necessary
SPIR-V 1.6 added the LocalSizeId execution mode that allows using
spec constants for setting the work-group size, however it does not
deprecate the LocalSize mode. This change causes the LocalSizeId mode to
only be used when at least one of the workgroup size is actually
specified with a spec constant.

Fixes #3200
2023-10-12 14:45:33 -04:00
Jeremy Hayes
4ce1a1a68d Update known_good.json 2023-10-12 13:25:58 -04:00
dependabot[bot]
277d09e679 Bump ossf/scorecard-action from 2.2.0 to 2.3.0
Bumps [ossf/scorecard-action](https://github.com/ossf/scorecard-action) from 2.2.0 to 2.3.0.
- [Release notes](https://github.com/ossf/scorecard-action/releases)
- [Changelog](https://github.com/ossf/scorecard-action/blob/main/RELEASE.md)
- [Commits](08b4669551...483ef80eb9)

---
updated-dependencies:
- dependency-name: ossf/scorecard-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-10-09 12:23:35 -04:00
dependabot[bot]
43ec5f13f4 Bump github/codeql-action from 2.21.9 to 2.22.0
Bumps [github/codeql-action](https://github.com/github/codeql-action) from 2.21.9 to 2.22.0.
- [Release notes](https://github.com/github/codeql-action/releases)
- [Changelog](https://github.com/github/codeql-action/blob/main/CHANGELOG.md)
- [Commits](ddccb87388...2cb752a87e)

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

Signed-off-by: dependabot[bot] <support@github.com>
2023-10-09 12:23:03 -04:00
dependabot[bot]
715e36a0cc Bump lukka/get-cmake from 3.27.6 to 3.27.7
Bumps [lukka/get-cmake](https://github.com/lukka/get-cmake) from 3.27.6 to 3.27.7.
- [Release notes](https://github.com/lukka/get-cmake/releases)
- [Commits](aa2e3cb80f...8be6cca406)

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

Signed-off-by: dependabot[bot] <support@github.com>
2023-10-09 12:22:41 -04:00
Pankaj Mistry
5ff0c048b7
Clean the implementation of GL_EXT_texture_shadow_lod.
Move the parameter verifictation to a centralized place where all the builtins
are verified for correctness.

Add verification for the new builtins with version and extension check
These builtins are supported on GLSL since version 130 and GLES since
version 300.
2023-10-02 15:10:11 -04:00
alelenv
3f02132668
Add support for GL_NV_displacement_micromap.
* Add support for GL_NV_displacement_micromap.
* Update known_good for spirv-headers and spirv-tools.
2023-10-02 15:07:50 -04:00
dependabot[bot]
86151772b2 Bump github/codeql-action from 2.21.7 to 2.21.9
Bumps [github/codeql-action](https://github.com/github/codeql-action) from 2.21.7 to 2.21.9.
- [Release notes](https://github.com/github/codeql-action/releases)
- [Changelog](https://github.com/github/codeql-action/blob/main/CHANGELOG.md)
- [Commits](04daf014b5...ddccb87388)

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

Signed-off-by: dependabot[bot] <support@github.com>
2023-10-02 14:19:29 -04:00
dependabot[bot]
95c29a9a78 Bump lukka/get-cmake from 3.27.4 to 3.27.6
Bumps [lukka/get-cmake](https://github.com/lukka/get-cmake) from 3.27.4 to 3.27.6.
- [Release notes](https://github.com/lukka/get-cmake/releases)
- [Commits](4dcd3eb730...aa2e3cb80f)

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

Signed-off-by: dependabot[bot] <support@github.com>
2023-10-02 14:18:35 -04:00
dependabot[bot]
3359d240cf Bump actions/checkout from 4.0.0 to 4.1.0
Bumps [actions/checkout](https://github.com/actions/checkout) from 4.0.0 to 4.1.0.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](3df4ab11eb...8ade135a41)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-10-02 12:35:44 -04:00
Nathaniel Cesario
b0ed478885 Fix race condition identified by TSAN
Guard global variables 'CompileFailed' and 'LinkFailed' in the
StandAlone application with atomics.
2023-09-29 18:39:17 -04:00
Nathaniel Cesario
90f7810584 Add ASAN integration testing
Add jobs for testing with -fsanitize=address and -fsanitize=thread.
2023-09-29 18:39:17 -04:00
chirsz-ever
2bfacdac91 Improve preprocessor ouput format
Modify preprocessor.simple.vert to test spaces before parenthesis.
2023-09-22 16:34:08 -04:00
Nathaniel Cesario
4c57db1595 Add --no-link option
Adds the --no-link option which outputs the compiled shader binaries
without linking them. This is a first step towards allowing users to
create SPIR-v binary, non-executable libraries.

When using the --no-link option, all functions are decorated with the
Export linkage attribute.
2023-09-18 17:31:05 -04:00
dependabot[bot]
a4aceb57de Bump github/codeql-action from 2.21.5 to 2.21.7
Bumps [github/codeql-action](https://github.com/github/codeql-action) from 2.21.5 to 2.21.7.
- [Release notes](https://github.com/github/codeql-action/releases)
- [Changelog](https://github.com/github/codeql-action/blob/main/CHANGELOG.md)
- [Commits](00e563ead9...04daf014b5)

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

Signed-off-by: dependabot[bot] <support@github.com>
2023-09-18 11:52:50 -04:00
Nathaniel Cesario
efc33d1ee5 Fix segfault with atomic arg check
Makes sure that we have an l-value before checking the storage type of
the mem argument passed to an atomic memory operation.

Fixes #3332.
2023-09-15 17:43:04 -04:00
Rex Xu
323836e46b Use std::variant to represent TSpirvTypeParameter
This PR is try to address the review comment:
https://github.com/KhronosGroup/glslang/pull/3253#discussion_r1254932979.
2023-09-11 21:12:35 -04:00
Sajjad Mirza
afe6e781bd
Emit correct nonsemantic debug info for explicitly sized types
Previously, the type names in the nonsemantic shader debug info would be
"int", "uint", or "float" for all numeric types. This change makes the
correct names such as "int8_t" or "float16_t" get emitted.
2023-09-11 20:11:22 -04:00
dependabot[bot]
b2dc622faf Bump actions/upload-artifact from 3.1.2 to 3.1.3
Bumps [actions/upload-artifact](https://github.com/actions/upload-artifact) from 3.1.2 to 3.1.3.
- [Release notes](https://github.com/actions/upload-artifact/releases)
- [Commits](0b7f8abb15...a8a3f3ad30)

---
updated-dependencies:
- dependency-name: actions/upload-artifact
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-09-11 19:52:18 -04:00
dependabot[bot]
f89684110b Bump actions/checkout from 3.6.0 to 4.0.0
Bumps [actions/checkout](https://github.com/actions/checkout) from 3.6.0 to 4.0.0.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](f43a0e5ff2...3df4ab11eb)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-09-11 17:51:58 -04:00
Joyce
d3b8d91a93 Add license to dependabot.yml
Signed-off-by: Joyce <joycebrum@google.com>
2023-09-11 17:29:05 -04:00
Nathaniel Cesario
f3f23fece3 Add a generic texel fetch test
Test all core sampler functions.
2023-09-11 16:51:11 -04:00
Nathaniel Cesario
e8d657bdbe Fix textureOffset overload
float textureOffset(sampler2DArrayShadow sampler, vec4 P, ivec2 offset)
was incorrectly requiring the GL_EXT_texture_shadow_lod extension.

NOTE: Prior to GLSL 440, this prototype was defined as

float textureOffset(sampler2DArrayShadow sampler, vec4 P, vec2 offset)

i.e., the type of 'offset' was specified as 'vec2' rather than 'ivec2'.
This is believed to be a typo.

Fixes #3325.
2023-09-11 16:51:11 -04:00
Arcady Goldmints-Orlov
fb2882a3c3 kokoro: explicitly set ENABLE_OPT=0 in cmake builds
This is needed now that we force the user to explicitly choose between
disabling use of SPIRV-Tools, using a version installed on the system,
or using the version obtained by update_glslang_source.py
2023-09-06 13:16:16 -04:00
Arcady Goldmints-Orlov
589431af5c cmake: add more verbose messages if SPIRV-Tools is not found
This makes it more clear to users when SPIR-V optimization is disabled
because SPIRV-Tools could not be found, and suggests alternatives for
finding it.
2023-09-06 13:16:16 -04:00
Nathaniel Cesario
0bbe74c709 Use temporary parser for mangled names
Use a temporary parser to retrieve the mangled names of specific
function overloads. This is necessary for GL_EXT_texture_shadow_lod.
2023-09-05 19:00:10 -04:00
Nathaniel Cesario
ffefbcd9f3 Add GL_EXT_texture_shadow_lod support
Closes #3302.
2023-09-05 19:00:10 -04:00
Ralf Habacker
3787b6947f Revert "CMake: Make glslang-default-resource-limits STATIC"
Fixes #3316

This reverts commit 6f22e41e0d.
2023-09-05 15:53:50 -04:00