d3d12: Don't use VLAs

Fixes: 739283da ("d3d12: Improve planar resource support to handle video requirements")
Reviewed-by: Sil Vilerino <sivileri@microsoft.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16588>
This commit is contained in:
Jesse Natalie
2022-05-18 09:13:14 -07:00
parent 9e9c8df3f0
commit 4b34869d9d

View File

@@ -722,6 +722,8 @@ void d3d12_resource_get_planes_info(pipe_resource *pres,
}
}
static constexpr unsigned d3d12_max_planes = 3;
/**
* Get stride and offset for the given pipe resource without the need to get
* a winsys_handle.
@@ -736,10 +738,10 @@ d3d12_resource_get_info(struct pipe_screen *pscreen,
struct d3d12_resource* res = d3d12_resource(pres);
unsigned num_planes = util_format_get_num_planes(res->overall_format);
pipe_resource* planes[num_planes];
unsigned int strides[num_planes];
unsigned int layer_strides[num_planes];
unsigned int offsets[num_planes];
pipe_resource *planes[d3d12_max_planes];
unsigned int strides[d3d12_max_planes];
unsigned int layer_strides[d3d12_max_planes];
unsigned int offsets[d3d12_max_planes];
unsigned staging_res_size = 0;
d3d12_resource_get_planes_info(
pres,
@@ -1444,10 +1446,10 @@ d3d12_transfer_map(struct pipe_context *pctx,
/* Get planes information*/
unsigned num_planes = util_format_get_num_planes(res->overall_format);
pipe_resource* planes[num_planes];
unsigned int strides[num_planes];
unsigned int layer_strides[num_planes];
unsigned int offsets[num_planes];
pipe_resource *planes[d3d12_max_planes];
unsigned int strides[d3d12_max_planes];
unsigned int layer_strides[d3d12_max_planes];
unsigned int offsets[d3d12_max_planes];
unsigned staging_res_size = 0;
d3d12_resource_get_planes_info(
@@ -1597,10 +1599,10 @@ d3d12_transfer_unmap(struct pipe_context *pctx,
/* Get planes information*/
unsigned num_planes = util_format_get_num_planes(res->overall_format);
pipe_resource* planes[num_planes];
unsigned int strides[num_planes];
unsigned int layer_strides[num_planes];
unsigned int offsets[num_planes];
pipe_resource *planes[d3d12_max_planes];
unsigned int strides[d3d12_max_planes];
unsigned int layer_strides[d3d12_max_planes];
unsigned int offsets[d3d12_max_planes];
unsigned staging_res_size = 0;
d3d12_resource_get_planes_info(