From: Eric Anholt Date: Sat, 15 Dec 2018 00:53:18 +0000 (-0800) Subject: nir: Fix clamping of uints for image store lowering. X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=708d8f4d0a557f509435e05696a4096a2900d748;p=mesa.git nir: Fix clamping of uints for image store lowering. I botched some copy-and-paste and clamped to signed int max instead of uint max. Fixes KHR-GL46.shader_image_load_store.multiple-uniforms on skl. Fixes: d3e046e76c06 ("nir: Pull some of intel's image load/store format conversion to nir_format.h") Reviewed-by: Jason Ekstrand --- diff --git a/src/compiler/nir/nir_format_convert.h b/src/compiler/nir/nir_format_convert.h index 9c8d0d21e0a..c5d69ba5a37 100644 --- a/src/compiler/nir/nir_format_convert.h +++ b/src/compiler/nir/nir_format_convert.h @@ -307,7 +307,7 @@ nir_format_clamp_uint(nir_builder *b, nir_ssa_def *f, const unsigned *bits) nir_const_value max; for (unsigned i = 0; i < f->num_components; i++) { assert(bits[i] < 32); - max.i32[i] = (1 << (bits[i] - 1)) - 1; + max.u32[i] = (1 << bits[i]) - 1; } return nir_umin(b, f, nir_build_imm(b, f->num_components, 32, max)); }