summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPiotr Byszewski <piotr.byszewski@mobica.com>2023-03-16 18:20:06 +0100
committerPiotr Byszewski <piotr.byszewski@mobica.com>2023-03-16 18:20:06 +0100
commit0987bea323f5dc2240cb93f34020b417e028240c (patch)
treefd5ce39cc099461115b489e0ce3652ee0a1f3651
parent58368d1cc51ca22a457f6df133212da65d0dfe32 (diff)
parent9cd188eecece27788d9f5199751e6eab77b49825 (diff)
downloadVK-GL-CTS-0987bea323f5dc2240cb93f34020b417e028240c.tar.gz
VK-GL-CTS-0987bea323f5dc2240cb93f34020b417e028240c.tar.bz2
VK-GL-CTS-0987bea323f5dc2240cb93f34020b417e028240c.zip
Merge vk-gl-cts/vulkan-cts-1.2.8 into vk-gl-cts/vulkan-cts-1.3.0
Change-Id: I358abfad8a9129de0a9c13f1d58aac8e28ed873a
-rw-r--r--external/vulkancts/modules/vulkan/pipeline/vktPipelineCacheTests.cpp3
-rw-r--r--external/vulkancts/modules/vulkan/pipeline/vktPipelineMultisampleTests.cpp18
-rw-r--r--external/vulkancts/modules/vulkan/ray_tracing/vktRayTracingBuildLargeTests.cpp2
-rw-r--r--external/vulkancts/modules/vulkan/renderpass/vktRenderPassTests.cpp14
4 files changed, 22 insertions, 15 deletions
diff --git a/external/vulkancts/modules/vulkan/pipeline/vktPipelineCacheTests.cpp b/external/vulkancts/modules/vulkan/pipeline/vktPipelineCacheTests.cpp
index f1a10dcd6..63ac22624 100644
--- a/external/vulkancts/modules/vulkan/pipeline/vktPipelineCacheTests.cpp
+++ b/external/vulkancts/modules/vulkan/pipeline/vktPipelineCacheTests.cpp
@@ -659,10 +659,11 @@ void GraphicsCacheTest::initPrograms (SourceCollections& programCollection) cons
{
case VK_SHADER_STAGE_VERTEX_BIT:
programCollection.glslSources.add("color_vert" + missSuffix) << glu::VertexSource(
- "#version 310 es\n"
+ "#version 450\n"
"layout(location = 0) in vec4 position;\n"
"layout(location = 1) in vec4 color;\n"
"layout(location = 0) out highp vec4 vtxColor;\n"
+ "out gl_PerVertex { vec4 gl_Position; };\n"
"void main (void)\n"
"{\n"
" gl_Position = position;\n"
diff --git a/external/vulkancts/modules/vulkan/pipeline/vktPipelineMultisampleTests.cpp b/external/vulkancts/modules/vulkan/pipeline/vktPipelineMultisampleTests.cpp
index 3c4dbb55a..647026f11 100644
--- a/external/vulkancts/modules/vulkan/pipeline/vktPipelineMultisampleTests.cpp
+++ b/external/vulkancts/modules/vulkan/pipeline/vktPipelineMultisampleTests.cpp
@@ -1701,18 +1701,22 @@ void SampleMaskWithConservativeTest::checkSupport(Context& context) const
if (m_useFragmentShadingRate && !checkFragmentShadingRateRequirements(context, m_rasterizationSamples))
TCU_THROW(NotSupportedError, "Required FragmentShadingRate not supported");
- if (m_enablePostDepthCoverage)
- context.requireDeviceFunctionality("VK_EXT_post_depth_coverage");
-
context.requireDeviceFunctionality("VK_EXT_conservative_rasterization");
- const VkPhysicalDeviceConservativeRasterizationPropertiesEXT conservativeRasterizationProperties = context.getConservativeRasterizationPropertiesEXT();
- const deUint32 subPixelPrecisionBits = context.getDeviceProperties().limits.subPixelPrecisionBits;
- const deUint32 subPixelPrecision = 1 << subPixelPrecisionBits;
- const float primitiveOverestimationSizeMult = float(subPixelPrecision) * conservativeRasterizationProperties.primitiveOverestimationSize;
+ const auto& conservativeRasterizationProperties = context.getConservativeRasterizationPropertiesEXT();
+ const deUint32 subPixelPrecisionBits = context.getDeviceProperties().limits.subPixelPrecisionBits;
+ const deUint32 subPixelPrecision = (1 << subPixelPrecisionBits);
+ const float primitiveOverestimationSizeMult = float(subPixelPrecision) * conservativeRasterizationProperties.primitiveOverestimationSize;
DE_ASSERT(subPixelPrecisionBits < sizeof(deUint32) * 8);
+ if (m_enablePostDepthCoverage)
+ {
+ context.requireDeviceFunctionality("VK_EXT_post_depth_coverage");
+ if (!conservativeRasterizationProperties.conservativeRasterizationPostDepthCoverage)
+ TCU_THROW(NotSupportedError, "conservativeRasterizationPostDepthCoverage not supported");
+ }
+
context.getTestContext().getLog()
<< tcu::TestLog::Message
<< "maxExtraPrimitiveOverestimationSize=" << conservativeRasterizationProperties.maxExtraPrimitiveOverestimationSize << '\n'
diff --git a/external/vulkancts/modules/vulkan/ray_tracing/vktRayTracingBuildLargeTests.cpp b/external/vulkancts/modules/vulkan/ray_tracing/vktRayTracingBuildLargeTests.cpp
index 6a04ad93e..e92b32b08 100644
--- a/external/vulkancts/modules/vulkan/ray_tracing/vktRayTracingBuildLargeTests.cpp
+++ b/external/vulkancts/modules/vulkan/ray_tracing/vktRayTracingBuildLargeTests.cpp
@@ -397,7 +397,7 @@ de::MovePtr<BufferWithMemory> RayTracingBuildLargeTestInstance::runTest (const d
const VkImageMemoryBarrier preImageBarrier = makeImageMemoryBarrier(0u, VK_ACCESS_TRANSFER_WRITE_BIT,
VK_IMAGE_LAYOUT_UNDEFINED, VK_IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL,
**image, imageSubresourceRange);
- const VkImageMemoryBarrier postImageBarrier = makeImageMemoryBarrier(VK_ACCESS_TRANSFER_WRITE_BIT, VK_ACCESS_ACCELERATION_STRUCTURE_READ_BIT_KHR | VK_ACCESS_ACCELERATION_STRUCTURE_WRITE_BIT_KHR,
+ const VkImageMemoryBarrier postImageBarrier = makeImageMemoryBarrier(VK_ACCESS_TRANSFER_WRITE_BIT, VK_ACCESS_SHADER_READ_BIT | VK_ACCESS_SHADER_WRITE_BIT,
VK_IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL, VK_IMAGE_LAYOUT_GENERAL,
**image, imageSubresourceRange);
const VkMemoryBarrier postTraceMemoryBarrier = makeMemoryBarrier(VK_ACCESS_SHADER_WRITE_BIT, VK_ACCESS_TRANSFER_READ_BIT);
diff --git a/external/vulkancts/modules/vulkan/renderpass/vktRenderPassTests.cpp b/external/vulkancts/modules/vulkan/renderpass/vktRenderPassTests.cpp
index 074a28290..ffb011b51 100644
--- a/external/vulkancts/modules/vulkan/renderpass/vktRenderPassTests.cpp
+++ b/external/vulkancts/modules/vulkan/renderpass/vktRenderPassTests.cpp
@@ -1987,6 +1987,8 @@ Move<VkPipeline> createSubpassPipeline (const DeviceInterface& vk,
? VK_TRUE
: VK_FALSE;
+ VkStencilOp stencilOp = writeStencil ? VK_STENCIL_OP_REPLACE : VK_STENCIL_OP_KEEP;
+
const VkPipelineDepthStencilStateCreateInfo depthStencilState =
{
VK_STRUCTURE_TYPE_PIPELINE_DEPTH_STENCIL_STATE_CREATE_INFO, // sType
@@ -1998,18 +2000,18 @@ Move<VkPipeline> createSubpassPipeline (const DeviceInterface& vk,
VK_FALSE, // depthBoundsEnable
writeStencil, // stencilTestEnable
{
- VK_STENCIL_OP_REPLACE, // stencilFailOp
- VK_STENCIL_OP_REPLACE, // stencilPassOp
- VK_STENCIL_OP_REPLACE, // stencilDepthFailOp
+ stencilOp, // stencilFailOp
+ stencilOp, // stencilPassOp
+ stencilOp, // stencilDepthFailOp
VK_COMPARE_OP_ALWAYS, // stencilCompareOp
~0u, // stencilCompareMask
~0u, // stencilWriteMask
((stencilIndex % 2) == 0) ? ~0x0u : 0x0u // stencilReference
}, // front
{
- VK_STENCIL_OP_REPLACE, // stencilFailOp
- VK_STENCIL_OP_REPLACE, // stencilPassOp
- VK_STENCIL_OP_REPLACE, // stencilDepthFailOp
+ stencilOp, // stencilFailOp
+ stencilOp, // stencilPassOp
+ stencilOp, // stencilDepthFailOp
VK_COMPARE_OP_ALWAYS, // stencilCompareOp
~0u, // stencilCompareMask
~0u, // stencilWriteMask