From 82d3433d2a5e2e7acf79f60e7c98c54835247b6b Mon Sep 17 00:00:00 2001 From: Boris Brezillon Date: Fri, 22 Apr 2022 14:54:55 +0200 Subject: [PATCH] microsoft/compiler: Set typed_uav_load_additional_formats when appropriate This flag should be set to true when the RWTexture is attached a vector, and we always declare a vec4 right now, so it should always be true. Might be worth reworking the dxil_module_get_res_type() to use a scalar when the image only has one component. Reviewed-by: Erik Faye-Lund Reviewed-by: Jesse Natalie Part-of: --- src/microsoft/compiler/nir_to_dxil.c | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/src/microsoft/compiler/nir_to_dxil.c b/src/microsoft/compiler/nir_to_dxil.c index 3eb4a595361..bdca79bf9ec 100644 --- a/src/microsoft/compiler/nir_to_dxil.c +++ b/src/microsoft/compiler/nir_to_dxil.c @@ -3670,8 +3670,12 @@ emit_image_load(struct ntd_context *ctx, nir_intrinsic_instr *intr) store_dest(ctx, &intr->dest, i, component, out_type); } - if (num_components > 1) - ctx->mod.feats.typed_uav_load_additional_formats = true; + /* FIXME: This flag should be set to true when the RWTexture is attached + * a vector, and we always declare a vec4 right now, so it should always be + * true. Might be worth reworking the dxil_module_get_res_type() to use a + * scalar when the image only has one component. + */ + ctx->mod.feats.typed_uav_load_additional_formats = true; return true; }