Commit d9a3a085 by Sean Risser

Enable occlusionQueryPrecise

Swiftshader already counts all the fragments for this feature, it just needed to be enabled in VkPhysicalDevice.cpp. The occlusion_query tests that remain unsupported require VK_EXT_host_query_reset. This is unsupported in SwiftShader as of now, though it is required for Vulkan 1.2 conformance. Bug: b/148241855 Tests: dEQP-VK.query_pool.occlusion_query.* Change-Id: Ib03df4225ed49865c648368ebf0547bfc3d117f7 Reviewed-on: https://swiftshader-review.googlesource.com/c/SwiftShader/+/47148Reviewed-by: 's avatarNicolas Capens <nicolascapens@google.com> Kokoro-Result: kokoro <noreply+kokoro@google.com> Tested-by: 's avatarSean Risser <srisser@google.com>
parent 08a3cc4c
...@@ -91,7 +91,7 @@ const VkPhysicalDeviceFeatures &PhysicalDevice::getFeatures() const ...@@ -91,7 +91,7 @@ const VkPhysicalDeviceFeatures &PhysicalDevice::getFeatures() const
VK_FALSE, // textureCompressionASTC_LDR VK_FALSE, // textureCompressionASTC_LDR
#endif #endif
VK_TRUE, // textureCompressionBC VK_TRUE, // textureCompressionBC
VK_FALSE, // occlusionQueryPrecise VK_TRUE, // occlusionQueryPrecise
VK_FALSE, // pipelineStatisticsQuery VK_FALSE, // pipelineStatisticsQuery
VK_TRUE, // vertexPipelineStoresAndAtomics VK_TRUE, // vertexPipelineStoresAndAtomics
VK_TRUE, // fragmentStoresAndAtomics VK_TRUE, // fragmentStoresAndAtomics
......
...@@ -192,7 +192,8 @@ void QueryPool::begin(uint32_t query, VkQueryControlFlags flags) ...@@ -192,7 +192,8 @@ void QueryPool::begin(uint32_t query, VkQueryControlFlags flags)
{ {
ASSERT(query < count); ASSERT(query < count);
if(flags != 0) // Only accept flags with valid bits set.
if(flags & ~(VK_QUERY_CONTROL_PRECISE_BIT))
{ {
UNSUPPORTED("vkCmdBeginQuery::flags %d", int(flags)); UNSUPPORTED("vkCmdBeginQuery::flags %d", int(flags));
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment