diff options
author | android-autoroll <android-autoroll@skia-public.iam.gserviceaccount.com> | 2023-12-21 02:21:39 +0000 |
---|---|---|
committer | android-autoroll <android-autoroll@skia-public.iam.gserviceaccount.com> | 2023-12-21 02:21:39 +0000 |
commit | 27e723064c2d51d7336d3fcb9f58dd86b592515a (patch) | |
tree | e91b91ecdfc5d7716ffd4dbd94c1b1b49e23456b /third_party/vulkan-deps/glslang | |
parent | fa21a0cf5c0b13b98b36f1afa1dbbb839ac890b4 (diff) | |
parent | 136854656738f30e034a5e0827a5b17a5511f2f8 (diff) | |
download | angle-27e723064c2d51d7336d3fcb9f58dd86b592515a.tar.gz |
Roll ANGLE from 82c95b301257 to 136854656738 (6 revisions)
https://chromium.googlesource.com/angle/angle.git/+log/82c95b301257..136854656738
Please enable autosubmit on changes if possible when approving them.
If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/angle-android-autoroll
Please CC angle-team@google.com,geofflang@google.com,rmistry@google.com on the revert to ensure that a human
is aware of the problem.
To file a bug in ANGLE: https://bugs.chromium.org/p/angleproject/issues/entry
To report a problem with the AutoRoller itself, please file a bug:
https://issues.skia.org/issues/new?component=1389291&template=1850622
Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
Test: Presubmit checks will test this change.
Exempt-From-Owner-Approval: The autoroll bot does not require owner approval.
Bug: b/310688730
Bug: b/316013423
Change-Id: If4134f0040293dc7cb26fadaabab36acfe55b1d6
Diffstat (limited to 'third_party/vulkan-deps/glslang')
12 files changed, 221 insertions, 14 deletions
diff --git a/third_party/vulkan-deps/glslang/src/.github/workflows/continuous_deployment.yml b/third_party/vulkan-deps/glslang/src/.github/workflows/continuous_deployment.yml index bb6f21f4a0..e68f60ca0a 100644 --- a/third_party/vulkan-deps/glslang/src/.github/workflows/continuous_deployment.yml +++ b/third_party/vulkan-deps/glslang/src/.github/workflows/continuous_deployment.yml @@ -42,7 +42,7 @@ jobs: cmake_build_type: [Debug, Release] steps: - uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1 - - uses: lukka/get-cmake@98fde40bf98bdc391abe7227e6b1052d9b36a22f # v3.28.0 + - uses: lukka/get-cmake@2654d8ee382b9b6cbbfe6487653b8629b4e062c8 # v3.28.1 - uses: actions/setup-python@0a5c61591373683505ea898e09a3ea4f39ef2b9c # v5.0.0 with: python-version: '3.7' @@ -106,7 +106,7 @@ jobs: cmake_build_type: [Debug, Release] steps: - uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1 - - uses: lukka/get-cmake@98fde40bf98bdc391abe7227e6b1052d9b36a22f # v3.28.0 + - uses: lukka/get-cmake@2654d8ee382b9b6cbbfe6487653b8629b4e062c8 # v3.28.1 - uses: actions/setup-python@0a5c61591373683505ea898e09a3ea4f39ef2b9c # v5.0.0 with: python-version: '3.7' @@ -163,7 +163,7 @@ jobs: cmake_build_type: [Debug, Release] steps: - uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1 - - uses: lukka/get-cmake@98fde40bf98bdc391abe7227e6b1052d9b36a22f # v3.28.0 + - uses: lukka/get-cmake@2654d8ee382b9b6cbbfe6487653b8629b4e062c8 # v3.28.1 - uses: actions/setup-python@0a5c61591373683505ea898e09a3ea4f39ef2b9c # v5.0.0 with: python-version: '3.7' diff --git a/third_party/vulkan-deps/glslang/src/.github/workflows/continuous_integration.yml b/third_party/vulkan-deps/glslang/src/.github/workflows/continuous_integration.yml index 9ec0223892..a7ec921129 100644 --- a/third_party/vulkan-deps/glslang/src/.github/workflows/continuous_integration.yml +++ b/third_party/vulkan-deps/glslang/src/.github/workflows/continuous_integration.yml @@ -18,7 +18,7 @@ jobs: cmake_build_type: [Debug, Release] steps: - uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1 - - uses: lukka/get-cmake@98fde40bf98bdc391abe7227e6b1052d9b36a22f # v3.28.0 + - uses: lukka/get-cmake@2654d8ee382b9b6cbbfe6487653b8629b4e062c8 # v3.28.1 - uses: actions/setup-python@0a5c61591373683505ea898e09a3ea4f39ef2b9c # v5.0.0 with: python-version: '3.7' @@ -54,7 +54,7 @@ jobs: flags: ['-fsanitize=address', '-fsanitize=thread'] steps: - uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1 - - uses: lukka/get-cmake@98fde40bf98bdc391abe7227e6b1052d9b36a22f # v3.28.0 + - uses: lukka/get-cmake@2654d8ee382b9b6cbbfe6487653b8629b4e062c8 # v3.28.1 - uses: actions/setup-python@0a5c61591373683505ea898e09a3ea4f39ef2b9c # v5.0.0 with: python-version: '3.7' @@ -92,7 +92,7 @@ jobs: - uses: actions/setup-python@0a5c61591373683505ea898e09a3ea4f39ef2b9c # v5.0.0 with: python-version: '3.7' - - uses: lukka/get-cmake@98fde40bf98bdc391abe7227e6b1052d9b36a22f # v3.28.0 + - uses: lukka/get-cmake@2654d8ee382b9b6cbbfe6487653b8629b4e062c8 # v3.28.1 with: cmakeVersion: 3.17.2 - name: Setup ccache @@ -124,7 +124,7 @@ jobs: cmake_build_type: [Debug, Release] steps: - uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1 - - uses: lukka/get-cmake@98fde40bf98bdc391abe7227e6b1052d9b36a22f # v3.28.0 + - uses: lukka/get-cmake@2654d8ee382b9b6cbbfe6487653b8629b4e062c8 # v3.28.1 - run: ./update_glslang_sources.py - run: cmake -S . -B build -D CMAKE_BUILD_TYPE=${{matrix.cmake_build_type}} -G Ninja -DBUILD_WERROR=ON -D GLSLANG_TESTS=ON env: @@ -148,7 +148,7 @@ jobs: cmake_build_type: [Debug, Release] steps: - uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1 - - uses: lukka/get-cmake@98fde40bf98bdc391abe7227e6b1052d9b36a22f # v3.28.0 + - uses: lukka/get-cmake@2654d8ee382b9b6cbbfe6487653b8629b4e062c8 # v3.28.1 - uses: actions/setup-python@0a5c61591373683505ea898e09a3ea4f39ef2b9c # v5.0.0 with: python-version: '3.7' @@ -166,7 +166,7 @@ jobs: runs-on: macos-13 steps: - uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1 - - uses: lukka/get-cmake@98fde40bf98bdc391abe7227e6b1052d9b36a22f # v3.28.0 + - uses: lukka/get-cmake@2654d8ee382b9b6cbbfe6487653b8629b4e062c8 # v3.28.1 - name: Setup ccache uses: hendrikmuhs/ccache-action@6d1841ec156c39a52b1b23a810da917ab98da1f4 # v1.2.10 with: @@ -195,7 +195,7 @@ jobs: LEGACY: [ON, OFF] steps: - uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1 - - uses: lukka/get-cmake@98fde40bf98bdc391abe7227e6b1052d9b36a22f # v3.28.0 + - uses: lukka/get-cmake@2654d8ee382b9b6cbbfe6487653b8629b4e062c8 # v3.28.1 - name: Setup ccache uses: hendrikmuhs/ccache-action@6d1841ec156c39a52b1b23a810da917ab98da1f4 # v1.2.10 with: @@ -221,7 +221,7 @@ jobs: - uses: actions/setup-python@0a5c61591373683505ea898e09a3ea4f39ef2b9c # v5.0.0 with: python-version: '3.7' - - uses: lukka/get-cmake@98fde40bf98bdc391abe7227e6b1052d9b36a22f # v3.28.0 + - uses: lukka/get-cmake@2654d8ee382b9b6cbbfe6487653b8629b4e062c8 # v3.28.1 - name: Setup ccache uses: hendrikmuhs/ccache-action@6d1841ec156c39a52b1b23a810da917ab98da1f4 # v1.2.10 with: diff --git a/third_party/vulkan-deps/glslang/src/.github/workflows/scorecard.yml b/third_party/vulkan-deps/glslang/src/.github/workflows/scorecard.yml index fe47a75bde..cf59ffbb72 100644 --- a/third_party/vulkan-deps/glslang/src/.github/workflows/scorecard.yml +++ b/third_party/vulkan-deps/glslang/src/.github/workflows/scorecard.yml @@ -40,7 +40,7 @@ jobs: # Upload the results as artifacts (optional). Commenting out will disable uploads of run results in SARIF # format to the repository Actions tab. - name: "Upload artifact" - uses: actions/upload-artifact@a8a3f3ad30e3422c9c7b888a15615d19a852ae32 # v3.1.3 + uses: actions/upload-artifact@c7d193f32edcb7bfad88892161225aeda64e9392 # v4.0.0 with: name: SARIF file path: results.sarif @@ -48,6 +48,6 @@ jobs: # Upload the results to GitHub's code scanning dashboard. - name: "Upload to code-scanning" - uses: github/codeql-action/upload-sarif@c0d1daa7f7e14667747d73a7dbbe8c074bc8bfe2 # v2.22.9 + uses: github/codeql-action/upload-sarif@b374143c1149a9115d881581d29b8390bbcbb59c # v3.22.11 with: sarif_file: results.sarif diff --git a/third_party/vulkan-deps/glslang/src/SPIRV/SpvBuilder.cpp b/third_party/vulkan-deps/glslang/src/SPIRV/SpvBuilder.cpp index c07f3b6705..9216817a2a 100644 --- a/third_party/vulkan-deps/glslang/src/SPIRV/SpvBuilder.cpp +++ b/third_party/vulkan-deps/glslang/src/SPIRV/SpvBuilder.cpp @@ -2741,6 +2741,14 @@ Id Builder::createSpecConstantOp(Op opCode, Id typeId, const std::vector<Id>& op module.mapInstruction(op); constantsTypesGlobals.push_back(std::unique_ptr<Instruction>(op)); + // OpSpecConstantOp's using 8 or 16 bit types require the associated capability + if (containsType(typeId, OpTypeInt, 8)) + addCapability(CapabilityInt8); + if (containsType(typeId, OpTypeInt, 16)) + addCapability(CapabilityInt16); + if (containsType(typeId, OpTypeFloat, 16)) + addCapability(CapabilityFloat16); + return op->getResultId(); } diff --git a/third_party/vulkan-deps/glslang/src/Test/baseResults/spv.specConstantOp.float16.comp.out b/third_party/vulkan-deps/glslang/src/Test/baseResults/spv.specConstantOp.float16.comp.out new file mode 100644 index 0000000000..97631f14ef --- /dev/null +++ b/third_party/vulkan-deps/glslang/src/Test/baseResults/spv.specConstantOp.float16.comp.out @@ -0,0 +1,47 @@ +spv.specConstantOp.float16.comp +// Module Version 10000 +// Generated by (magic number): 8000b +// Id's are bound by 18 + + Capability Shader + Capability Float16 + Capability StorageUniformBufferBlock16 + Extension "SPV_KHR_16bit_storage" + 1: ExtInstImport "GLSL.std.450" + MemoryModel Logical GLSL450 + EntryPoint GLCompute 4 "main" + ExecutionMode 4 LocalSize 1 1 1 + Source GLSL 450 + SourceExtension "GL_EXT_shader_explicit_arithmetic_types_float16" + Name 4 "main" + Name 8 "S" + MemberName 8(S) 0 "p_out" + Name 10 "" + Name 14 "c" + Decorate 7 ArrayStride 2 + MemberDecorate 8(S) 0 Restrict + MemberDecorate 8(S) 0 NonReadable + MemberDecorate 8(S) 0 Offset 0 + Decorate 8(S) BufferBlock + Decorate 10 DescriptorSet 0 + Decorate 10 Binding 0 + Decorate 14(c) SpecId 0 + 2: TypeVoid + 3: TypeFunction 2 + 6: TypeFloat 16 + 7: TypeRuntimeArray 6(float16_t) + 8(S): TypeStruct 7 + 9: TypePointer Uniform 8(S) + 10: 9(ptr) Variable Uniform + 11: TypeInt 32 1 + 12: 11(int) Constant 0 + 13: TypeFloat 32 + 14(c): 13(float) SpecConstant 1090519040 + 15:6(float16_t) SpecConstantOp 115 14(c) + 16: TypePointer Uniform 6(float16_t) + 4(main): 2 Function None 3 + 5: Label + 17: 16(ptr) AccessChain 10 12 12 + Store 17 15 + Return + FunctionEnd diff --git a/third_party/vulkan-deps/glslang/src/Test/baseResults/spv.specConstantOp.int16.comp.out b/third_party/vulkan-deps/glslang/src/Test/baseResults/spv.specConstantOp.int16.comp.out new file mode 100644 index 0000000000..13049bed66 --- /dev/null +++ b/third_party/vulkan-deps/glslang/src/Test/baseResults/spv.specConstantOp.int16.comp.out @@ -0,0 +1,49 @@ +spv.specConstantOp.int16.comp +// Module Version 10000 +// Generated by (magic number): 8000b +// Id's are bound by 20 + + Capability Shader + Capability Int16 + Capability StorageUniformBufferBlock16 + Extension "SPV_KHR_16bit_storage" + 1: ExtInstImport "GLSL.std.450" + MemoryModel Logical GLSL450 + EntryPoint GLCompute 4 "main" + ExecutionMode 4 LocalSize 1 1 1 + Source GLSL 450 + SourceExtension "GL_EXT_shader_explicit_arithmetic_types_int16" + Name 4 "main" + Name 8 "S" + MemberName 8(S) 0 "p_out" + Name 10 "" + Name 13 "c" + Decorate 7 ArrayStride 2 + MemberDecorate 8(S) 0 Restrict + MemberDecorate 8(S) 0 NonReadable + MemberDecorate 8(S) 0 Offset 0 + Decorate 8(S) BufferBlock + Decorate 10 DescriptorSet 0 + Decorate 10 Binding 0 + Decorate 13(c) SpecId 0 + 2: TypeVoid + 3: TypeFunction 2 + 6: TypeInt 16 0 + 7: TypeRuntimeArray 6(int16_t) + 8(S): TypeStruct 7 + 9: TypePointer Uniform 8(S) + 10: 9(ptr) Variable Uniform + 11: TypeInt 32 1 + 12: 11(int) Constant 0 + 13(c): 11(int) SpecConstant 8 + 14: TypeInt 16 1 + 15: 14(int16_t) SpecConstantOp 114 13(c) + 16: 6(int16_t) Constant 0 + 17: 6(int16_t) SpecConstantOp 128 15 16 + 18: TypePointer Uniform 6(int16_t) + 4(main): 2 Function None 3 + 5: Label + 19: 18(ptr) AccessChain 10 12 12 + Store 19 17 + Return + FunctionEnd diff --git a/third_party/vulkan-deps/glslang/src/Test/baseResults/spv.specConstantOp.int8.comp.out b/third_party/vulkan-deps/glslang/src/Test/baseResults/spv.specConstantOp.int8.comp.out new file mode 100644 index 0000000000..1cf53014bb --- /dev/null +++ b/third_party/vulkan-deps/glslang/src/Test/baseResults/spv.specConstantOp.int8.comp.out @@ -0,0 +1,49 @@ +spv.specConstantOp.int8.comp +// Module Version 10000 +// Generated by (magic number): 8000b +// Id's are bound by 20 + + Capability Shader + Capability Int8 + Capability UniformAndStorageBuffer8BitAccess + Extension "SPV_KHR_8bit_storage" + 1: ExtInstImport "GLSL.std.450" + MemoryModel Logical GLSL450 + EntryPoint GLCompute 4 "main" + ExecutionMode 4 LocalSize 1 1 1 + Source GLSL 450 + SourceExtension "GL_EXT_shader_explicit_arithmetic_types_int8" + Name 4 "main" + Name 8 "S" + MemberName 8(S) 0 "p_out" + Name 10 "" + Name 13 "c" + Decorate 7 ArrayStride 1 + MemberDecorate 8(S) 0 Restrict + MemberDecorate 8(S) 0 NonReadable + MemberDecorate 8(S) 0 Offset 0 + Decorate 8(S) BufferBlock + Decorate 10 DescriptorSet 0 + Decorate 10 Binding 0 + Decorate 13(c) SpecId 0 + 2: TypeVoid + 3: TypeFunction 2 + 6: TypeInt 8 0 + 7: TypeRuntimeArray 6(int8_t) + 8(S): TypeStruct 7 + 9: TypePointer Uniform 8(S) + 10: 9(ptr) Variable Uniform + 11: TypeInt 32 1 + 12: 11(int) Constant 0 + 13(c): 11(int) SpecConstant 8 + 14: TypeInt 8 1 + 15: 14(int8_t) SpecConstantOp 114 13(c) + 16: 6(int8_t) Constant 0 + 17: 6(int8_t) SpecConstantOp 128 15 16 + 18: TypePointer Uniform 6(int8_t) + 4(main): 2 Function None 3 + 5: Label + 19: 18(ptr) AccessChain 10 12 12 + Store 19 17 + Return + FunctionEnd diff --git a/third_party/vulkan-deps/glslang/src/Test/spv.specConstantOp.float16.comp b/third_party/vulkan-deps/glslang/src/Test/spv.specConstantOp.float16.comp new file mode 100644 index 0000000000..c3db60c232 --- /dev/null +++ b/third_party/vulkan-deps/glslang/src/Test/spv.specConstantOp.float16.comp @@ -0,0 +1,18 @@ +#version 450 +#extension GL_EXT_shader_explicit_arithmetic_types_float16 : require + +// Produce an OpSpecConstantOp with 8 bit integer type + +layout(constant_id = 0) const float c = 8; + +layout(binding=0) writeonly restrict buffer S { + float16_t p_out[]; +}; + +void main() +{ + p_out[0] = float16_t(c); +} + + + diff --git a/third_party/vulkan-deps/glslang/src/Test/spv.specConstantOp.int16.comp b/third_party/vulkan-deps/glslang/src/Test/spv.specConstantOp.int16.comp new file mode 100644 index 0000000000..c5078436c7 --- /dev/null +++ b/third_party/vulkan-deps/glslang/src/Test/spv.specConstantOp.int16.comp @@ -0,0 +1,16 @@ +#version 450 +#extension GL_EXT_shader_explicit_arithmetic_types_int16 : require + +// Produce an OpSpecConstantOp with 16 bit integer type + +layout(constant_id = 0) const int c = 8; + +layout(binding=0) writeonly restrict buffer S { + uint16_t p_out[]; +}; + +void main() +{ + p_out[0] = uint16_t(c); +} + diff --git a/third_party/vulkan-deps/glslang/src/Test/spv.specConstantOp.int8.comp b/third_party/vulkan-deps/glslang/src/Test/spv.specConstantOp.int8.comp new file mode 100644 index 0000000000..598821077b --- /dev/null +++ b/third_party/vulkan-deps/glslang/src/Test/spv.specConstantOp.int8.comp @@ -0,0 +1,17 @@ +#version 450 +#extension GL_EXT_shader_explicit_arithmetic_types_int8 : require + +// Produce an OpSpecConstantOp with 8 bit integer type + +layout(constant_id = 0) const int c = 8; + +layout(binding=0) writeonly restrict buffer S { + uint8_t p_out[]; +}; + +void main() +{ + p_out[0] = uint8_t(c); +} + + diff --git a/third_party/vulkan-deps/glslang/src/glslang/MachineIndependent/Constant.cpp b/third_party/vulkan-deps/glslang/src/glslang/MachineIndependent/Constant.cpp index 4f706cad88..ac7fc8cd1a 100644 --- a/third_party/vulkan-deps/glslang/src/glslang/MachineIndependent/Constant.cpp +++ b/third_party/vulkan-deps/glslang/src/glslang/MachineIndependent/Constant.cpp @@ -689,7 +689,7 @@ TIntermTyped* TIntermConstantUnion::fold(TOperator op, const TType& returnType) case EOpConvInt64ToBool: newConstArray[i].setBConst(unionArray[i].getI64Const() != 0); break; case EOpConvUint64ToBool: - newConstArray[i].setBConst(unionArray[i].getI64Const() != 0); break; + newConstArray[i].setBConst(unionArray[i].getU64Const() != 0); break; case EOpConvFloat16ToBool: newConstArray[i].setBConst(unionArray[i].getDConst() != 0); break; diff --git a/third_party/vulkan-deps/glslang/src/gtests/Spv.FromFile.cpp b/third_party/vulkan-deps/glslang/src/gtests/Spv.FromFile.cpp index 90fb2fc668..1fd67e6f4e 100644 --- a/third_party/vulkan-deps/glslang/src/gtests/Spv.FromFile.cpp +++ b/third_party/vulkan-deps/glslang/src/gtests/Spv.FromFile.cpp @@ -514,6 +514,9 @@ INSTANTIATE_TEST_SUITE_P( "spv.specConstant.float16.comp", "spv.specConstant.int16.comp", "spv.specConstant.int8.comp", + "spv.specConstantOp.int16.comp", + "spv.specConstantOp.int8.comp", + "spv.specConstantOp.float16.comp", "spv.storageBuffer.vert", "spv.terminate.frag", "spv.subgroupUniformControlFlow.vert", |