Externals: Update glslang.
This updates glslang to commit 9bb8cfffb0eed010e07132282c41d73064a7a609 which is the current version listed in the known_good.json file for the version 1.3.212 of the Vulkan-ValidationLayers repo.
This commit is contained in:
+146
-14
@@ -1,6 +1,7 @@
|
||||
//
|
||||
// Copyright (C) 2016 Google, Inc.
|
||||
// Copyright (C) 2019 ARM Limited.
|
||||
// Modifications Copyright (C) 2020 Advanced Micro Devices, Inc. All rights reserved.
|
||||
//
|
||||
// All rights reserved.
|
||||
//
|
||||
@@ -68,6 +69,7 @@ using CompileVulkanToSpirvDeadCodeElimTest = GlslangTest<::testing::TestWithPara
|
||||
using CompileVulkanToDebugSpirvTest = GlslangTest<::testing::TestWithParam<std::string>>;
|
||||
using CompileVulkan1_1ToSpirvTest = GlslangTest<::testing::TestWithParam<std::string>>;
|
||||
using CompileToSpirv14Test = GlslangTest<::testing::TestWithParam<std::string>>;
|
||||
using CompileToSpirv16Test = GlslangTest<::testing::TestWithParam<std::string>>;
|
||||
using CompileOpenGLToSpirvTest = GlslangTest<::testing::TestWithParam<std::string>>;
|
||||
using VulkanSemantics = GlslangTest<::testing::TestWithParam<std::string>>;
|
||||
using OpenGLSemantics = GlslangTest<::testing::TestWithParam<std::string>>;
|
||||
@@ -76,6 +78,7 @@ using HlslIoMap = GlslangTest<::testing::TestWithParam<IoMapData>>;
|
||||
using GlslIoMap = GlslangTest<::testing::TestWithParam<IoMapData>>;
|
||||
using CompileVulkanToSpirvTestAMD = GlslangTest<::testing::TestWithParam<std::string>>;
|
||||
using CompileVulkanToSpirvTestNV = GlslangTest<::testing::TestWithParam<std::string>>;
|
||||
using CompileVulkanToSpirv14TestNV = GlslangTest<::testing::TestWithParam<std::string>>;
|
||||
using CompileUpgradeTextureToSampledTextureAndDropSamplersTest = GlslangTest<::testing::TestWithParam<std::string>>;
|
||||
|
||||
// Compiling GLSL to SPIR-V under Vulkan semantics. Expected to successfully
|
||||
@@ -105,6 +108,7 @@ TEST_P(CompileVulkanToDebugSpirvTest, FromFile)
|
||||
"/baseResults/", false, true);
|
||||
}
|
||||
|
||||
|
||||
TEST_P(CompileVulkan1_1ToSpirvTest, FromFile)
|
||||
{
|
||||
loadFileCompileAndCheck(GlobalTestSettings.testRoot, GetParam(),
|
||||
@@ -119,6 +123,13 @@ TEST_P(CompileToSpirv14Test, FromFile)
|
||||
Target::Spv);
|
||||
}
|
||||
|
||||
TEST_P(CompileToSpirv16Test, FromFile)
|
||||
{
|
||||
loadFileCompileAndCheck(GlobalTestSettings.testRoot, GetParam(),
|
||||
Source::GLSL, Semantics::Vulkan, glslang::EShTargetVulkan_1_3, glslang::EShTargetSpv_1_6,
|
||||
Target::Spv);
|
||||
}
|
||||
|
||||
// Compiling GLSL to SPIR-V under OpenGL semantics. Expected to successfully
|
||||
// generate SPIR-V.
|
||||
TEST_P(CompileOpenGLToSpirvTest, FromFile)
|
||||
@@ -202,6 +213,13 @@ TEST_P(CompileVulkanToSpirvTestNV, FromFile)
|
||||
Target::Spv);
|
||||
}
|
||||
|
||||
TEST_P(CompileVulkanToSpirv14TestNV, FromFile)
|
||||
{
|
||||
loadFileCompileAndCheck(GlobalTestSettings.testRoot, GetParam(),
|
||||
Source::GLSL, Semantics::Vulkan, glslang::EShTargetVulkan_1_1, glslang::EShTargetSpv_1_4,
|
||||
Target::Spv);
|
||||
}
|
||||
|
||||
TEST_P(CompileUpgradeTextureToSampledTextureAndDropSamplersTest, FromFile)
|
||||
{
|
||||
loadCompileUpgradeTextureToSampledTextureAndDropSamplersAndCheck(GlobalTestSettings.testRoot,
|
||||
@@ -212,7 +230,7 @@ TEST_P(CompileUpgradeTextureToSampledTextureAndDropSamplersTest, FromFile)
|
||||
}
|
||||
|
||||
// clang-format off
|
||||
INSTANTIATE_TEST_CASE_P(
|
||||
INSTANTIATE_TEST_SUITE_P(
|
||||
Glsl, CompileVulkanToSpirvTest,
|
||||
::testing::ValuesIn(std::vector<std::string>({
|
||||
// Test looping constructs.
|
||||
@@ -229,6 +247,17 @@ INSTANTIATE_TEST_CASE_P(
|
||||
"spv.while-continue-break.vert",
|
||||
"spv.while-simple.vert",
|
||||
// vulkan-specific tests
|
||||
"rayQuery.rgen",
|
||||
"rayQuery-no-cse.rgen",
|
||||
"rayQuery-initialize.rgen",
|
||||
"rayQuery-allOps.rgen",
|
||||
"rayQuery-allOps.Error.rgen",
|
||||
"rayQuery-committed.Error.rgen",
|
||||
"rayQuery-allOps.comp",
|
||||
"rayQuery-allOps.frag",
|
||||
"rayQuery-initialization.Error.comp",
|
||||
"rayQuery-global.rgen",
|
||||
"rayQuery-types.comp",
|
||||
"spv.set.vert",
|
||||
"spv.double.comp",
|
||||
"spv.100ops.frag",
|
||||
@@ -271,6 +300,7 @@ INSTANTIATE_TEST_CASE_P(
|
||||
"spv.always-discard2.frag",
|
||||
"spv.arbPostDepthCoverage.frag",
|
||||
"spv.arbPostDepthCoverage_Error.frag",
|
||||
"spv.atomicCounter.comp",
|
||||
"spv.bitCast.frag",
|
||||
"spv.bool.vert",
|
||||
"spv.boolInBlock.frag",
|
||||
@@ -309,9 +339,12 @@ INSTANTIATE_TEST_CASE_P(
|
||||
"spv.dataOut.frag",
|
||||
"spv.dataOutIndirect.frag",
|
||||
"spv.dataOutIndirect.vert",
|
||||
"spv.debugPrintf.frag",
|
||||
"spv.debugPrintf_Error.frag",
|
||||
"spv.demoteDisabled.frag",
|
||||
"spv.deepRvalue.frag",
|
||||
"spv.depthOut.frag",
|
||||
"spv.depthUnchanged.frag",
|
||||
"spv.discard-dce.frag",
|
||||
"spv.doWhileLoop.frag",
|
||||
"spv.earlyReturnDiscard.frag",
|
||||
@@ -334,10 +367,22 @@ INSTANTIATE_TEST_CASE_P(
|
||||
"spv.functionSemantics.frag",
|
||||
"spv.functionParameterTypes.frag",
|
||||
"spv.GeometryShaderPassthrough.geom",
|
||||
"spv.funcall.array.frag",
|
||||
"spv.load.bool.array.interface.block.frag",
|
||||
"spv.interpOps.frag",
|
||||
"spv.int64.frag",
|
||||
"spv.intcoopmat.comp",
|
||||
"spv.intOps.vert",
|
||||
"spv.intrinsicsSpirvByReference.vert",
|
||||
"spv.intrinsicsSpirvDecorate.frag",
|
||||
"spv.intrinsicsSpirvExecutionMode.frag",
|
||||
"spv.intrinsicsSpirvInstruction.vert",
|
||||
"spv.intrinsicsSpirvLiteral.vert",
|
||||
"spv.intrinsicsSpirvStorageClass.rchit",
|
||||
"spv.intrinsicsSpirvType.rgen",
|
||||
"spv.intrinsicsSpirvTypeLocalVar.vert",
|
||||
"spv.invariantAll.vert",
|
||||
"spv.layer.tese",
|
||||
"spv.layoutNested.vert",
|
||||
"spv.length.frag",
|
||||
"spv.localAggregates.frag",
|
||||
@@ -355,12 +400,19 @@ INSTANTIATE_TEST_CASE_P(
|
||||
"spv.nonSquare.vert",
|
||||
"spv.nonuniform.frag",
|
||||
"spv.nonuniform2.frag",
|
||||
"spv.nonuniform3.frag",
|
||||
"spv.nonuniform4.frag",
|
||||
"spv.nonuniform5.frag",
|
||||
"spv.noWorkgroup.comp",
|
||||
"spv.nullInit.comp",
|
||||
"spv.offsets.frag",
|
||||
"spv.Operations.frag",
|
||||
"spv.paramMemory.frag",
|
||||
"spv.paramMemory.420.frag",
|
||||
"spv.precision.frag",
|
||||
"spv.precisionArgs.frag",
|
||||
"spv.precisionNonESSamp.frag",
|
||||
"spv.precisionTexture.frag",
|
||||
"spv.prepost.frag",
|
||||
"spv.privateVariableTypes.frag",
|
||||
"spv.qualifiers.vert",
|
||||
@@ -391,6 +443,7 @@ INSTANTIATE_TEST_CASE_P(
|
||||
"spv.texture.vert",
|
||||
"spv.textureBuffer.vert",
|
||||
"spv.image.frag",
|
||||
"spv.imageAtomic64.frag",
|
||||
"spv.types.frag",
|
||||
"spv.uint.frag",
|
||||
"spv.uniformArray.frag",
|
||||
@@ -411,9 +464,15 @@ INSTANTIATE_TEST_CASE_P(
|
||||
"spv.specConstant.comp",
|
||||
"spv.specConstantComposite.vert",
|
||||
"spv.specConstantOperations.vert",
|
||||
"spv.specConstant.float16.comp",
|
||||
"spv.specConstant.int16.comp",
|
||||
"spv.specConstant.int8.comp",
|
||||
"spv.storageBuffer.vert",
|
||||
"spv.terminate.frag",
|
||||
"spv.subgroupUniformControlFlow.vert",
|
||||
"spv.precise.tese",
|
||||
"spv.precise.tesc",
|
||||
"spv.viewportindex.tese",
|
||||
"spv.volatileAtomic.comp",
|
||||
"spv.vulkan100.subgroupArithmetic.comp",
|
||||
"spv.vulkan100.subgroupPartitioned.comp",
|
||||
@@ -423,6 +482,9 @@ INSTANTIATE_TEST_CASE_P(
|
||||
"spv.samplerlessTextureFunctions.frag",
|
||||
"spv.smBuiltins.vert",
|
||||
"spv.smBuiltins.frag",
|
||||
"spv.builtin.PrimitiveShadingRateEXT.vert",
|
||||
"spv.builtin.ShadingRateEXT.frag",
|
||||
"spv.atomicAdd.bufferReference.comp"
|
||||
})),
|
||||
FileNameAsCustomTestSuffix
|
||||
);
|
||||
@@ -430,7 +492,7 @@ INSTANTIATE_TEST_CASE_P(
|
||||
// Cases with deliberately unreachable code.
|
||||
// By default the compiler will aggressively eliminate
|
||||
// unreachable merges and continues.
|
||||
INSTANTIATE_TEST_CASE_P(
|
||||
INSTANTIATE_TEST_SUITE_P(
|
||||
GlslWithDeadCode, CompileVulkanToSpirvDeadCodeElimTest,
|
||||
::testing::ValuesIn(std::vector<std::string>({
|
||||
"spv.dead-after-continue.vert",
|
||||
@@ -445,7 +507,7 @@ INSTANTIATE_TEST_CASE_P(
|
||||
);
|
||||
|
||||
// clang-format off
|
||||
INSTANTIATE_TEST_CASE_P(
|
||||
INSTANTIATE_TEST_SUITE_P(
|
||||
Glsl, CompileVulkanToDebugSpirvTest,
|
||||
::testing::ValuesIn(std::vector<std::string>({
|
||||
"spv.pp.line.frag",
|
||||
@@ -454,7 +516,7 @@ INSTANTIATE_TEST_CASE_P(
|
||||
);
|
||||
|
||||
// clang-format off
|
||||
INSTANTIATE_TEST_CASE_P(
|
||||
INSTANTIATE_TEST_SUITE_P(
|
||||
Glsl, CompileVulkan1_1ToSpirvTest,
|
||||
::testing::ValuesIn(std::vector<std::string>({
|
||||
"spv.1.3.8bitstorage-ubo.vert",
|
||||
@@ -466,11 +528,13 @@ INSTANTIATE_TEST_CASE_P(
|
||||
"spv.vulkan110.int16.frag",
|
||||
"spv.int32.frag",
|
||||
"spv.explicittypes.frag",
|
||||
"spv.float16NoRelaxed.vert",
|
||||
"spv.float32.frag",
|
||||
"spv.float64.frag",
|
||||
"spv.memoryScopeSemantics.comp",
|
||||
"spv.memoryScopeSemantics_Error.comp",
|
||||
"spv.multiView.frag",
|
||||
"spv.queueFamilyScope.comp",
|
||||
"spv.RayGenShader11.rgen",
|
||||
"spv.subgroup.frag",
|
||||
"spv.subgroup.geom",
|
||||
@@ -510,26 +574,76 @@ INSTANTIATE_TEST_CASE_P(
|
||||
);
|
||||
|
||||
// clang-format off
|
||||
INSTANTIATE_TEST_CASE_P(
|
||||
INSTANTIATE_TEST_SUITE_P(
|
||||
Glsl, CompileToSpirv14Test,
|
||||
::testing::ValuesIn(std::vector<std::string>({
|
||||
"spv.1.4.LoopControl.frag",
|
||||
"spv.1.4.NonWritable.frag",
|
||||
"spv.1.4.OpEntryPoint.frag",
|
||||
"spv.1.4.OpEntryPoint.opaqueParams.vert",
|
||||
"spv.1.4.OpSelect.frag",
|
||||
"spv.1.4.OpCopyLogical.comp",
|
||||
"spv.1.4.OpCopyLogicalBool.comp",
|
||||
"spv.1.4.OpCopyLogical.funcall.frag",
|
||||
"spv.1.4.funcall.array.frag",
|
||||
"spv.1.4.load.bool.array.interface.block.frag",
|
||||
"spv.1.4.image.frag",
|
||||
"spv.1.4.sparseTexture.frag",
|
||||
"spv.1.4.texture.frag",
|
||||
"spv.1.4.constructComposite.comp",
|
||||
"spv.ext.AnyHitShader.rahit",
|
||||
"spv.ext.AnyHitShader_Errors.rahit",
|
||||
"spv.ext.ClosestHitShader.rchit",
|
||||
"spv.ext.ClosestHitShader_Subgroup.rchit",
|
||||
"spv.ext.ClosestHitShader_Errors.rchit",
|
||||
"spv.ext.IntersectShader.rint",
|
||||
"spv.ext.IntersectShader_Errors.rint",
|
||||
"spv.ext.MissShader.rmiss",
|
||||
"spv.ext.MissShader_Errors.rmiss",
|
||||
"spv.ext.RayPrimCull_Errors.rgen",
|
||||
"spv.ext.RayCallable.rcall",
|
||||
"spv.ext.RayCallable_Errors.rcall",
|
||||
"spv.ext.RayConstants.rgen",
|
||||
"spv.ext.RayGenShader.rgen",
|
||||
"spv.ext.RayGenShader_Errors.rgen",
|
||||
"spv.ext.RayGenShader11.rgen",
|
||||
"spv.ext.RayGenShaderArray.rgen",
|
||||
"spv.ext.RayGenSBTlayout.rgen",
|
||||
"spv.ext.RayGenSBTlayout140.rgen",
|
||||
"spv.ext.RayGenSBTlayout430.rgen",
|
||||
"spv.ext.RayGenSBTlayoutscalar.rgen",
|
||||
"spv.ext.World3x4.rahit",
|
||||
"spv.ext.AccelDecl.frag",
|
||||
"spv.ext.RayQueryDecl.frag",
|
||||
|
||||
// SPV_KHR_workgroup_memory_explicit_layout depends on SPIR-V 1.4.
|
||||
"spv.WorkgroupMemoryExplicitLayout.SingleBlock.comp",
|
||||
"spv.WorkgroupMemoryExplicitLayout.MultiBlock.comp",
|
||||
"spv.WorkgroupMemoryExplicitLayout.8BitAccess.comp",
|
||||
"spv.WorkgroupMemoryExplicitLayout.16BitAccess.comp",
|
||||
"spv.WorkgroupMemoryExplicitLayout.NonBlock.comp",
|
||||
"spv.WorkgroupMemoryExplicitLayout.MixBlockNonBlock_Errors.comp",
|
||||
"spv.WorkgroupMemoryExplicitLayout.std140.comp",
|
||||
"spv.WorkgroupMemoryExplicitLayout.std430.comp",
|
||||
"spv.WorkgroupMemoryExplicitLayout.scalar.comp",
|
||||
})),
|
||||
FileNameAsCustomTestSuffix
|
||||
);
|
||||
|
||||
// clang-format off
|
||||
INSTANTIATE_TEST_CASE_P(
|
||||
INSTANTIATE_TEST_SUITE_P(
|
||||
Glsl, CompileToSpirv16Test,
|
||||
::testing::ValuesIn(std::vector<std::string>({
|
||||
"spv.1.6.conditionalDiscard.frag",
|
||||
"spv.1.6.helperInvocation.frag",
|
||||
"spv.1.6.specConstant.comp",
|
||||
})),
|
||||
FileNameAsCustomTestSuffix
|
||||
);
|
||||
|
||||
|
||||
// clang-format off
|
||||
INSTANTIATE_TEST_SUITE_P(
|
||||
Hlsl, HlslIoMap,
|
||||
::testing::ValuesIn(std::vector<IoMapData>{
|
||||
{ "spv.register.autoassign.frag", "main_ep", 5, 10, 0, 20, 30, true, false },
|
||||
@@ -549,7 +663,7 @@ INSTANTIATE_TEST_CASE_P(
|
||||
);
|
||||
|
||||
// clang-format off
|
||||
INSTANTIATE_TEST_CASE_P(
|
||||
INSTANTIATE_TEST_SUITE_P(
|
||||
Hlsl, GlslIoMap,
|
||||
::testing::ValuesIn(std::vector<IoMapData>{
|
||||
{ "spv.glsl.register.autoassign.frag", "main", 5, 10, 0, 20, 30, true, false },
|
||||
@@ -559,17 +673,23 @@ INSTANTIATE_TEST_CASE_P(
|
||||
);
|
||||
|
||||
// clang-format off
|
||||
INSTANTIATE_TEST_CASE_P(
|
||||
INSTANTIATE_TEST_SUITE_P(
|
||||
Glsl, CompileOpenGLToSpirvTest,
|
||||
::testing::ValuesIn(std::vector<std::string>({
|
||||
"spv.460.frag",
|
||||
"spv.460.vert",
|
||||
"spv.460.comp",
|
||||
"spv.atomic.comp",
|
||||
"spv.atomicFloat.comp",
|
||||
"spv.atomicFloat_Error.comp",
|
||||
"spv.glFragColor.frag",
|
||||
"spv.rankShift.comp",
|
||||
"spv.specConst.vert",
|
||||
"spv.specTexture.frag",
|
||||
"spv.OVR_multiview.vert",
|
||||
"spv.uniformInitializer.frag",
|
||||
"spv.uniformInitializerSpecConstant.frag",
|
||||
"spv.uniformInitializerStruct.frag",
|
||||
"spv.xfbOffsetOnBlockMembersAssignment.vert",
|
||||
"spv.xfbOffsetOnStructMembersAssignment.vert",
|
||||
"spv.xfbOverlapOffsetCheckWithBlockAndMember.vert",
|
||||
@@ -578,7 +698,7 @@ INSTANTIATE_TEST_CASE_P(
|
||||
FileNameAsCustomTestSuffix
|
||||
);
|
||||
|
||||
INSTANTIATE_TEST_CASE_P(
|
||||
INSTANTIATE_TEST_SUITE_P(
|
||||
Glsl, VulkanSemantics,
|
||||
::testing::ValuesIn(std::vector<std::string>({
|
||||
"vulkan.frag",
|
||||
@@ -590,7 +710,7 @@ INSTANTIATE_TEST_CASE_P(
|
||||
FileNameAsCustomTestSuffix
|
||||
);
|
||||
|
||||
INSTANTIATE_TEST_CASE_P(
|
||||
INSTANTIATE_TEST_SUITE_P(
|
||||
Glsl, OpenGLSemantics,
|
||||
::testing::ValuesIn(std::vector<std::string>({
|
||||
"glspv.esversion.vert",
|
||||
@@ -602,7 +722,7 @@ INSTANTIATE_TEST_CASE_P(
|
||||
FileNameAsCustomTestSuffix
|
||||
);
|
||||
|
||||
INSTANTIATE_TEST_CASE_P(
|
||||
INSTANTIATE_TEST_SUITE_P(
|
||||
Glsl, VulkanAstSemantics,
|
||||
::testing::ValuesIn(std::vector<std::string>({
|
||||
"vulkan.ast.vert",
|
||||
@@ -610,7 +730,7 @@ INSTANTIATE_TEST_CASE_P(
|
||||
FileNameAsCustomTestSuffix
|
||||
);
|
||||
|
||||
INSTANTIATE_TEST_CASE_P(
|
||||
INSTANTIATE_TEST_SUITE_P(
|
||||
Glsl, CompileVulkanToSpirvTestAMD,
|
||||
::testing::ValuesIn(std::vector<std::string>({
|
||||
"spv.16bitxfb.vert",
|
||||
@@ -626,7 +746,7 @@ INSTANTIATE_TEST_CASE_P(
|
||||
FileNameAsCustomTestSuffix
|
||||
);
|
||||
|
||||
INSTANTIATE_TEST_CASE_P(
|
||||
INSTANTIATE_TEST_SUITE_P(
|
||||
Glsl, CompileVulkanToSpirvTestNV,
|
||||
::testing::ValuesIn(std::vector<std::string>({
|
||||
"spv.sampleMaskOverrideCoverage.frag",
|
||||
@@ -638,6 +758,7 @@ INSTANTIATE_TEST_CASE_P(
|
||||
"spv.multiviewPerViewAttributes.vert",
|
||||
"spv.multiviewPerViewAttributes.tesc",
|
||||
"spv.atomicInt64.comp",
|
||||
"spv.atomicStoreInt64.comp",
|
||||
"spv.shadingRate.frag",
|
||||
"spv.RayGenShader.rgen",
|
||||
"spv.RayGenShaderArray.rgen",
|
||||
@@ -674,7 +795,18 @@ INSTANTIATE_TEST_CASE_P(
|
||||
FileNameAsCustomTestSuffix
|
||||
);
|
||||
|
||||
INSTANTIATE_TEST_CASE_P(
|
||||
INSTANTIATE_TEST_SUITE_P(
|
||||
Glsl, CompileVulkanToSpirv14TestNV,
|
||||
::testing::ValuesIn(std::vector<std::string>({
|
||||
"spv.RayGenShaderMotion.rgen",
|
||||
"spv.IntersectShaderMotion.rint",
|
||||
"spv.AnyHitShaderMotion.rahit",
|
||||
"spv.ClosestHitShaderMotion.rchit",
|
||||
"spv.MissShaderMotion.rmiss",
|
||||
})),
|
||||
FileNameAsCustomTestSuffix
|
||||
);
|
||||
INSTANTIATE_TEST_SUITE_P(
|
||||
Glsl, CompileUpgradeTextureToSampledTextureAndDropSamplersTest,
|
||||
::testing::ValuesIn(std::vector<std::string>({
|
||||
"spv.texture.sampler.transform.frag",
|
||||
|
||||
Reference in New Issue
Block a user