summaryrefslogtreecommitdiffstats
path: root/src/amd/vulkan/radv_device.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/amd/vulkan/radv_device.c')
-rw-r--r--src/amd/vulkan/radv_device.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/amd/vulkan/radv_device.c b/src/amd/vulkan/radv_device.c
index 65727571a3a..41f8242754c 100644
--- a/src/amd/vulkan/radv_device.c
+++ b/src/amd/vulkan/radv_device.c
@@ -307,6 +307,12 @@ radv_physical_device_init(struct radv_physical_device *device,
device->has_scissor_bug = device->rad_info.family == CHIP_VEGA10 ||
device->rad_info.family == CHIP_RAVEN;
+ /* Out-of-order primitive rasterization. */
+ device->has_out_of_order_rast = device->rad_info.chip_class >= VI &&
+ device->rad_info.max_se >= 2;
+ device->out_of_order_rast_allowed = device->has_out_of_order_rast &&
+ (device->instance->perftest_flags & RADV_PERFTEST_OUT_OF_ORDER);
+
radv_physical_device_init_mem_types(device);
radv_fill_device_extension_table(device, &device->supported_extensions);
@@ -391,6 +397,7 @@ static const struct debug_control radv_perftest_options[] = {
{"sisched", RADV_PERFTEST_SISCHED},
{"localbos", RADV_PERFTEST_LOCAL_BOS},
{"binning", RADV_PERFTEST_BINNING},
+ {"outoforderrast", RADV_PERFTEST_OUT_OF_ORDER},
{NULL, 0}
};