Merge vk-gl-cts/vulkan-cts-1.3.0 into vk-gl-cts/vulkan-cts-1.3.1
Change-Id: Icc350abe29e7c1545a65d99884a281cd63239fc4
diff --git a/external/vulkancts/modules/vulkan/memory/vktMemoryExternalMemoryHostTests.cpp b/external/vulkancts/modules/vulkan/memory/vktMemoryExternalMemoryHostTests.cpp
index e23046a..d5d3e50 100644
--- a/external/vulkancts/modules/vulkan/memory/vktMemoryExternalMemoryHostTests.cpp
+++ b/external/vulkancts/modules/vulkan/memory/vktMemoryExternalMemoryHostTests.cpp
@@ -335,6 +335,11 @@
// Verify image format properties before proceeding.
verifyFormatProperties(m_testParams.m_format, tiling, usageFlags);
+ VkFormatProperties formatProperties;
+ m_vki.getPhysicalDeviceFormatProperties(m_physicalDevice, m_testParams.m_format, &formatProperties);
+ if ((formatProperties.linearTilingFeatures & VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT) != VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT)
+ TCU_THROW(NotSupportedError, "Format does not support linear tiling for color attachment");
+
// Create image with external host memory.
m_image = createImage(m_testParams.m_format, tiling, usageFlags);
diff --git a/external/vulkancts/modules/vulkan/memory_model/vktMemoryModelSharedLayoutCase.cpp b/external/vulkancts/modules/vulkan/memory_model/vktMemoryModelSharedLayoutCase.cpp
index be47515..3432110 100644
--- a/external/vulkancts/modules/vulkan/memory_model/vktMemoryModelSharedLayoutCase.cpp
+++ b/external/vulkancts/modules/vulkan/memory_model/vktMemoryModelSharedLayoutCase.cpp
@@ -362,6 +362,7 @@
const vk::VkDevice device = m_context.getDevice();
const vk::VkQueue queue = m_context.getUniversalQueue();
const deUint32 queueFamilyIndex = m_context.getUniversalQueueFamilyIndex();
+ vk::Allocator& allocator = m_context.getDefaultAllocator();
const deUint32 bufferSize = 4;
// Create descriptor set
@@ -378,12 +379,12 @@
};
vk::Move<vk::VkBuffer> buffer (vk::createBuffer(vk, device, ¶ms));
-
- de::MovePtr<vk::Allocation> bufferAlloc (vk::bindBuffer (m_context.getDeviceInterface(), m_context.getDevice(),
- m_context.getDefaultAllocator(), *buffer, vk::MemoryRequirement::HostVisible));
+ vk::VkMemoryRequirements requirements = getBufferMemoryRequirements(vk, device, *buffer);
+ de::MovePtr<vk::Allocation> bufferAlloc (allocator.allocate(requirements, vk::MemoryRequirement::HostVisible));
+ VK_CHECK(vk.bindBufferMemory(device, *buffer, bufferAlloc->getMemory(), bufferAlloc->getOffset()));
deMemset(bufferAlloc->getHostPtr(), 0, bufferSize);
- flushMappedMemoryRange(vk, device, bufferAlloc->getMemory(), bufferAlloc->getOffset(), bufferSize);
+ flushMappedMemoryRange(vk, device, bufferAlloc->getMemory(), bufferAlloc->getOffset(), requirements.size);
vk::DescriptorSetLayoutBuilder setLayoutBuilder;
vk::DescriptorPoolBuilder poolBuilder;
diff --git a/external/vulkancts/modules/vulkan/pipeline/vktPipelineDepthTests.cpp b/external/vulkancts/modules/vulkan/pipeline/vktPipelineDepthTests.cpp
index f782c9b..749f04d 100644
--- a/external/vulkancts/modules/vulkan/pipeline/vktPipelineDepthTests.cpp
+++ b/external/vulkancts/modules/vulkan/pipeline/vktPipelineDepthTests.cpp
@@ -305,6 +305,7 @@
"void main (void)\n"
"{\n"
" gl_Position = position;\n"
+ " gl_PointSize = 1.0f;\n"
"}\n");
}
}
diff --git a/external/vulkancts/modules/vulkan/texture/vktTextureCompressedFormatTests.cpp b/external/vulkancts/modules/vulkan/texture/vktTextureCompressedFormatTests.cpp
index 65a2b14..9ad6857 100644
--- a/external/vulkancts/modules/vulkan/texture/vktTextureCompressedFormatTests.cpp
+++ b/external/vulkancts/modules/vulkan/texture/vktTextureCompressedFormatTests.cpp
@@ -272,7 +272,7 @@
const ParameterType& m_testParameters;
const tcu::CompressedTexFormat m_compressedFormat;
TestTexture3DSp m_texture3D;
- TextureRenderer m_renderer3D;
+ TextureRenderer m_renderer2D;
};
Compressed3DTestInstance::Compressed3DTestInstance (Context& context,
@@ -281,9 +281,9 @@
, m_testParameters (testParameters)
, m_compressedFormat (mapVkCompressedFormat(testParameters.format))
, m_texture3D (TestTexture3DSp(new pipeline::TestTexture3D(m_compressedFormat, testParameters.width, testParameters.height, testParameters.depth)))
- , m_renderer3D (context, testParameters.sampleCount, testParameters.width, testParameters.height, testParameters.depth, makeComponentMappingRGBA(), VK_IMAGE_TYPE_3D, VK_IMAGE_VIEW_TYPE_3D)
+ , m_renderer2D (context, testParameters.sampleCount, testParameters.width, testParameters.height, 1, makeComponentMappingRGBA(), VK_IMAGE_TYPE_2D, VK_IMAGE_VIEW_TYPE_2D)
{
- m_renderer3D.add3DTexture (m_texture3D, testParameters.aspectMask, testParameters.backingMode);
+ m_renderer2D.add3DTexture (m_texture3D, testParameters.aspectMask, testParameters.backingMode);
VkPhysicalDeviceFeatures physicalFeatures;
context.getInstanceInterface().getPhysicalDeviceFeatures(context.getPhysicalDevice(), &physicalFeatures);
@@ -312,12 +312,12 @@
tcu::TestStatus Compressed3DTestInstance::iterate (void)
{
tcu::TestLog& log = m_context.getTestContext().getLog();
- const pipeline::TestTexture3D& texture = m_renderer3D.get3DTexture(0);
+ const pipeline::TestTexture3D& texture = m_renderer2D.get3DTexture(0);
const tcu::TextureFormat textureFormat = texture.getTextureFormat();
const tcu::TextureFormatInfo formatInfo = tcu::getTextureFormatInfo(textureFormat);
ReferenceParams sampleParams (TEXTURETYPE_3D);
- tcu::Surface rendered (m_renderer3D.getRenderWidth(), m_renderer3D.getRenderHeight());
+ tcu::Surface rendered (m_renderer2D.getRenderWidth(), m_renderer2D.getRenderHeight());
vector<float> texCoord;
// Setup params for reference.
@@ -376,10 +376,10 @@
// Render texture.
z = ((float)sliceNdx + 0.5f) / (float)m_testParameters.depth;
computeQuadTexCoord3D(texCoord, tcu::Vec3(0.0f, 0.0f, z), tcu::Vec3(1.0f, 1.0f, z), tcu::IVec3(0,1,2));
- m_renderer3D.renderQuad(rendered, 0, &texCoord[0], sampleParams);
+ m_renderer2D.renderQuad(rendered, 0, &texCoord[0], sampleParams);
// Compute reference.
- tcu::Surface referenceFrame (m_renderer3D.getRenderWidth(), m_renderer3D.getRenderHeight());
+ tcu::Surface referenceFrame (m_renderer2D.getRenderWidth(), m_renderer2D.getRenderHeight());
sampleTexture(tcu::SurfaceAccess(referenceFrame, pixelFormat), m_texture3D->getTexture(), &texCoord[0], sampleParams);
// Compare and log.