aboutsummaryrefslogtreecommitdiff
path: root/layers
diff options
context:
space:
mode:
authorMark Lobodzinski <mark@lunarg.com>2015-05-29 09:32:35 -0500
committerMark Lobodzinski <mark@lunarg.com>2015-06-02 09:03:26 -0500
commit2dcdfd74f9efadad415fe0abbfecebc57a256ccc (patch)
tree1a006f4f2b060fa23cf212e53c56956a579a06f1 /layers
parent3ee11a2b2cb98bcc6af65eb87b867a27ad7c5715 (diff)
downloadusermoji-2dcdfd74f9efadad415fe0abbfecebc57a256ccc.tar.xz
vulkan.h: V97 -- Remove multiple allocations. Bug# 13948.
Remove multiple memory allocation requirements from API, and supporting changes in driver, demos, layers, and tests.
Diffstat (limited to 'layers')
-rw-r--r--layers/glave_snapshot.c12
-rw-r--r--layers/mem_tracker.cpp8
-rw-r--r--layers/param_checker.cpp12
3 files changed, 15 insertions, 17 deletions
diff --git a/layers/glave_snapshot.c b/layers/glave_snapshot.c
index 120656d6..150821a9 100644
--- a/layers/glave_snapshot.c
+++ b/layers/glave_snapshot.c
@@ -723,30 +723,30 @@ VK_LAYER_EXPORT VkResult VKAPI vkGetObjectInfo(VkDevice device, VkObjectType obj
return result;
}
-VK_LAYER_EXPORT VkResult VKAPI vkBindObjectMemory(VkQueue queue, VkObjectType objType, VkObject object, uint32_t allocationIdx, VkGpuMemory mem, VkGpuSize offset)
+VK_LAYER_EXPORT VkResult VKAPI vkBindObjectMemory(VkQueue queue, VkObjectType objType, VkObject object, VkGpuMemory mem, VkGpuSize offset)
{
loader_platform_thread_lock_mutex(&objLock);
ll_increment_use_count((void*)object, ll_get_obj_type(object));
loader_platform_thread_unlock_mutex(&objLock);
- VkResult result = nextTable.BindObjectMemory(queue, objType, object, allocationIdx, mem, offset);
+ VkResult result = nextTable.BindObjectMemory(queue, objType, object, mem, offset);
return result;
}
-VK_LAYER_EXPORT VkResult VKAPI vkBindObjectMemoryRange(VkQueue queue, VkObjectType objType, VkObject object, uint32_t allocationIdx, VkGpuSize rangeOffset, VkGpuSize rangeSize, VkGpuMemory mem, VkGpuSize memOffset)
+VK_LAYER_EXPORT VkResult VKAPI vkBindObjectMemoryRange(VkQueue queue, VkObjectType objType, VkObject object, VkGpuSize rangeOffset, VkGpuSize rangeSize, VkGpuMemory mem, VkGpuSize memOffset)
{
loader_platform_thread_lock_mutex(&objLock);
ll_increment_use_count((void*)object, ll_get_obj_type(object));
loader_platform_thread_unlock_mutex(&objLock);
- VkResult result = nextTable.BindObjectMemoryRange(queue, objType, object, allocationIdx, rangeOffset, rangeSize, mem, memOffset);
+ VkResult result = nextTable.BindObjectMemoryRange(queue, objType, object, rangeOffset, rangeSize, mem, memOffset);
return result;
}
-VK_LAYER_EXPORT VkResult VKAPI vkBindImageMemoryRange(VkImage image, uint32_t allocationIdx, const VkImageMemoryBindInfo* pBindInfo, VkGpuMemory mem, VkGpuSize memOffset)
+VK_LAYER_EXPORT VkResult VKAPI vkBindImageMemoryRange(VkImage image, const VkImageMemoryBindInfo* pBindInfo, VkGpuMemory mem, VkGpuSize memOffset)
{
loader_platform_thread_lock_mutex(&objLock);
ll_increment_use_count((void*)image, VK_OBJECT_TYPE_IMAGE);
loader_platform_thread_unlock_mutex(&objLock);
- VkResult result = nextTable.BindImageMemoryRange(image, allocationIdx, pBindInfo, mem, memOffset);
+ VkResult result = nextTable.BindImageMemoryRange(image, pBindInfo, mem, memOffset);
return result;
}
diff --git a/layers/mem_tracker.cpp b/layers/mem_tracker.cpp
index 8635aeee..bbdb4f5d 100644
--- a/layers/mem_tracker.cpp
+++ b/layers/mem_tracker.cpp
@@ -608,7 +608,7 @@ static bool32_t clearObjectBinding(
sprintf(str, "Attempting to clear mem binding for object %p: devices, queues, command buffers, "
"shaders and memory objects do not have external memory requirements and it is "
"unneccessary to call bind/unbindObjectMemory on them.", object);
- layerCbMsg(VK_DBG_MSG_WARNING, VK_VALIDATION_LEVEL_0, object, 0, MEMTRACK_INVALID_OBJECT, "MEM", str);
+ layerCbMsg(VK_DBG_MSG_UNKNOWN, VK_VALIDATION_LEVEL_0, object, 0, MEMTRACK_INVALID_OBJECT, "MEM", str);
} else {
if (!pObjInfo->pMemObjInfo || pObjInfo->pMemObjInfo->pObjBindings.size() <= 0) {
char str[1024];
@@ -1214,11 +1214,10 @@ VK_LAYER_EXPORT VkResult VKAPI vkBindObjectMemory(
VkDevice device,
VkObjectType objType,
VkObject object,
- uint32_t allocationIdx,
VkDeviceMemory mem,
VkDeviceSize offset)
{
- VkResult result = nextTable.BindObjectMemory(device, objType, object, allocationIdx, mem, offset);
+ VkResult result = nextTable.BindObjectMemory(device, objType, object, mem, offset);
loader_platform_thread_lock_mutex(&globalLock);
// Track objects tied to memory
if (VK_FALSE == updateObjectBinding(object, mem)) {
@@ -1235,13 +1234,12 @@ VK_LAYER_EXPORT VkResult VKAPI vkBindObjectMemory(
VK_LAYER_EXPORT VkResult VKAPI vkQueueBindSparseBufferMemory(
VkQueue queue,
VkBuffer buffer,
- uint32_t allocationIdx,
VkDeviceSize rangeOffset,
VkDeviceSize rangeSize,
VkDeviceMemory mem,
VkDeviceSize memOffset)
{
- VkResult result = nextTable.QueueBindSparseBufferMemory(queue, buffer, allocationIdx, rangeOffset, rangeSize, mem, memOffset);
+ VkResult result = nextTable.QueueBindSparseBufferMemory(queue, buffer, rangeOffset, rangeSize, mem, memOffset);
loader_platform_thread_lock_mutex(&globalLock);
// Track objects tied to memory
if (VK_FALSE == updateObjectBinding(buffer, mem)) {
diff --git a/layers/param_checker.cpp b/layers/param_checker.cpp
index 32ca5425..7e12283a 100644
--- a/layers/param_checker.cpp
+++ b/layers/param_checker.cpp
@@ -516,21 +516,21 @@ VK_LAYER_EXPORT VkResult VKAPI vkGetObjectInfo(VkDevice device, VkObjectType obj
return result;
}
-VK_LAYER_EXPORT VkResult VKAPI vkBindObjectMemory(VkDevice device, VkObjectType objType, VkObject object, uint32_t allocationIdx, VkDeviceMemory mem, VkDeviceSize offset)
+VK_LAYER_EXPORT VkResult VKAPI vkBindObjectMemory(VkDevice device, VkObjectType objType, VkObject object, VkDeviceMemory mem, VkDeviceSize offset)
{
- VkResult result = nextTable.BindObjectMemory(device, objType, object, allocationIdx, mem, offset);
+ VkResult result = nextTable.BindObjectMemory(device, objType, object, mem, offset);
return result;
}
-VK_LAYER_EXPORT VkResult VKAPI vkQueueBindSparseBufferMemory(VkQueue queue, VkBuffer buffer, uint32_t allocationIdx, VkDeviceSize rangeOffset, VkDeviceSize rangeSize, VkDeviceMemory mem, VkDeviceSize memOffset)
+VK_LAYER_EXPORT VkResult VKAPI vkQueueBindSparseBufferMemory(VkQueue queue, VkBuffer buffer, VkDeviceSize rangeOffset, VkDeviceSize rangeSize, VkDeviceMemory mem, VkDeviceSize memOffset)
{
- VkResult result = nextTable.QueueBindSparseBufferMemory(queue, buffer, allocationIdx, rangeOffset, rangeSize, mem, memOffset);
+ VkResult result = nextTable.QueueBindSparseBufferMemory(queue, buffer, rangeOffset, rangeSize, mem, memOffset);
return result;
}
-VK_LAYER_EXPORT VkResult VKAPI vkQueueBindSparseImageMemory(VkQueue queue, VkImage image, uint32_t allocationIdx, const VkImageMemoryBindInfo* pBindInfo, VkDeviceMemory mem, VkDeviceSize memOffset)
+VK_LAYER_EXPORT VkResult VKAPI vkQueueBindSparseImageMemory(VkQueue queue, VkImage image, const VkImageMemoryBindInfo* pBindInfo, VkDeviceMemory mem, VkDeviceSize memOffset)
{
char str[1024];
if (!pBindInfo) {
@@ -541,7 +541,7 @@ VK_LAYER_EXPORT VkResult VKAPI vkQueueBindSparseImageMemory(VkQueue queue, VkIma
sprintf(str, "Parameter pBindInfo to function BindImageMemoryRange contains an invalid value.");
layerCbMsg(VK_DBG_MSG_ERROR, VK_VALIDATION_LEVEL_0, NULL, 0, 1, "PARAMCHECK", str);
}
- VkResult result = nextTable.QueueBindSparseImageMemory(queue, image, allocationIdx, pBindInfo, mem, memOffset);
+ VkResult result = nextTable.QueueBindSparseImageMemory(queue, image, pBindInfo, mem, memOffset);
return result;
}