turnip: Add "unaligned_store" debug option to better test gmem stores
Unaligned store is incredibly rare in CTS, we have to force it to actually test it. Signed-off-by: Danylo Piliaiev <dpiliaiev@igalia.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15532>
This commit is contained in:
parent
e255305e84
commit
6c18602164
|
@ -2947,6 +2947,10 @@ tu_store_gmem_attachment(struct tu_cmd_buffer *cmd,
|
|||
(x2 % phys_dev->info->gmem_align_w && x2 != iview->view.width) ||
|
||||
y1 % phys_dev->info->gmem_align_h || (y2 % phys_dev->info->gmem_align_h && need_y2_align);
|
||||
|
||||
/* Unaligned store is incredibly rare in CTS, we have to force it to test. */
|
||||
if (unlikely(cmd->device->physical_device->instance->debug_flags & TU_DEBUG_UNALIGNED_STORE))
|
||||
unaligned = true;
|
||||
|
||||
/* D32_SFLOAT_S8_UINT is quite special format: it has two planes,
|
||||
* one for depth and other for stencil. When resolving a MSAA
|
||||
* D32_SFLOAT_S8_UINT to S8_UINT, we need to take that into account.
|
||||
|
|
|
@ -337,6 +337,7 @@ static const struct debug_control tu_debug_options[] = {
|
|||
{ "syncdraw", TU_DEBUG_SYNCDRAW },
|
||||
{ "dontcare_as_load", TU_DEBUG_DONT_CARE_AS_LOAD },
|
||||
{ "rast_order", TU_DEBUG_RAST_ORDER },
|
||||
{ "unaligned_store", TU_DEBUG_UNALIGNED_STORE },
|
||||
{ NULL, 0 }
|
||||
};
|
||||
|
||||
|
|
|
@ -267,6 +267,7 @@ enum tu_debug_flags
|
|||
TU_DEBUG_DONT_CARE_AS_LOAD = 1 << 12,
|
||||
TU_DEBUG_GMEM = 1 << 13,
|
||||
TU_DEBUG_RAST_ORDER = 1 << 14,
|
||||
TU_DEBUG_UNALIGNED_STORE = 1 << 15,
|
||||
};
|
||||
|
||||
struct tu_instance
|
||||
|
|
Loading…
Reference in New Issue