mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2025-12-24 00:10:10 +01:00
zink: slightly rework memoryTypeIndex selection to pre-determine heap
should be no functional changes Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22479>
This commit is contained in:
parent
085c9efbf3
commit
561b64cf55
1 changed files with 3 additions and 4 deletions
|
|
@ -1066,8 +1066,7 @@ resource_object_create(struct zink_screen *screen, const struct pipe_resource *t
|
||||||
alignment = MAX2(alignment, screen->info.props.limits.minMemoryMapAlignment);
|
alignment = MAX2(alignment, screen->info.props.limits.minMemoryMapAlignment);
|
||||||
obj->alignment = alignment;
|
obj->alignment = alignment;
|
||||||
|
|
||||||
mai.memoryTypeIndex = zink_mem_type_idx_from_bits(screen, heap, reqs.memoryTypeBits);
|
if (zink_mem_type_idx_from_bits(screen, heap, reqs.memoryTypeBits) == UINT32_MAX) {
|
||||||
if (mai.memoryTypeIndex == UINT32_MAX) {
|
|
||||||
/* not valid based on reqs; demote to more compatible type */
|
/* not valid based on reqs; demote to more compatible type */
|
||||||
switch (heap) {
|
switch (heap) {
|
||||||
case ZINK_HEAP_DEVICE_LOCAL_VISIBLE:
|
case ZINK_HEAP_DEVICE_LOCAL_VISIBLE:
|
||||||
|
|
@ -1079,9 +1078,9 @@ resource_object_create(struct zink_screen *screen, const struct pipe_resource *t
|
||||||
default:
|
default:
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
mai.memoryTypeIndex = zink_mem_type_idx_from_bits(screen, heap, reqs.memoryTypeBits);
|
assert(zink_mem_type_idx_from_bits(screen, heap, reqs.memoryTypeBits) != UINT32_MAX);
|
||||||
assert(mai.memoryTypeIndex != UINT32_MAX);
|
|
||||||
}
|
}
|
||||||
|
mai.memoryTypeIndex = zink_mem_type_idx_from_bits(screen, heap, reqs.memoryTypeBits);
|
||||||
assert(reqs.memoryTypeBits & BITFIELD_BIT(mai.memoryTypeIndex));
|
assert(reqs.memoryTypeBits & BITFIELD_BIT(mai.memoryTypeIndex));
|
||||||
|
|
||||||
retry:
|
retry:
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue