mesa/src
Danylo Piliaiev 4890745b19 ir3: Do 16b tex dst folding only for floats
Folding signed or unsigned i32 -> i16 conversion into sampling
instruction causes it to behave differently with out-of-bounds
values. The conversion expects higher bits being masked, however
folded variant does clamp the value.

A concrete example is that:

 isaml.base0 (u16)(x)hr0.x

is not equal this:

 isaml.base0 (u32)(x)r0.w
 (sy)cov.u32u16 hr0.x, r0.w

Fixes misrendering in "Injustice 2".

Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/7869

Signed-off-by: Danylo Piliaiev <dpiliaiev@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20396>
2022-12-23 15:48:18 +01:00
..
amd nir/fold_16bit_tex_image: Add type granularity for dst folding 2022-12-23 15:48:18 +01:00
android_stub
asahi asahi: Identify seamful cube map bit 2022-12-17 18:10:28 +00:00
broadcom v3dv: be more careful when restoring dirty state after meta operations 2022-12-16 12:18:36 +00:00
c11 c11: Remove _MTX_INITIALIZER_NP for windows 2022-11-09 04:38:28 +00:00
compiler nir/fold_16bit_tex_image: Add type granularity for dst folding 2022-12-23 15:48:18 +01:00
drm-shim drm-shim: add __readlink_chk as readlink with overflow check 2022-12-08 21:05:15 +00:00
egl egl/wayland: Prefer back buffer with minimum buffer age 2022-12-16 10:30:47 +00:00
etnaviv tree-wide: Use __func__ instead of __FUNCTION__ in non-gallium code 2022-11-22 06:53:46 +00:00
freedreno ir3: Do 16b tex dst folding only for floats 2022-12-23 15:48:18 +01:00
gallium nir/fold_16bit_tex_image: Add type granularity for dst folding 2022-12-23 15:48:18 +01:00
gbm gbm: Don't look up the DRI2_FENCE extension. 2022-12-09 05:32:18 +00:00
getopt
glx glx: fix xshm check to init xshm_opcode. 2022-12-06 22:31:14 +00:00
gtest gtest: Fix maybe-uninitialized compiler warning 2022-06-29 21:02:18 +00:00
hgl
imagination pvr: Check depth/stencil attachment is tile-aligned 2022-12-08 14:53:13 +00:00
imgui
intel intel/blorp: Fix a hang caused by invalid dispatch enables on gfx7 2022-12-23 10:17:04 +00:00
loader loader/dri3: Simplify new buffer allocation in dri3_find_back 2022-12-16 10:30:47 +00:00
mapi mapi: update gles 1.1 extention packet link 2022-11-20 15:14:01 +00:00
mesa mesa: optimize _mesa_bytes_per_vertex_attrib using a hash-based translation 2022-12-18 14:35:59 -05:00
microsoft dzn: Swizzle SRV access to stencil 2022-12-16 18:40:47 +00:00
nouveau nir: Eliminate nir_op_i2b 2022-12-14 06:23:21 +00:00
panfrost panfrost: Add architecture description XML for v10 2022-12-17 20:33:39 +00:00
tool pps: make pps-producer RT only on freedreno 2022-11-15 21:21:42 +00:00
util util: Fixes os_get_option_cached with bool options_tbl_exited 2022-12-20 01:49:10 +00:00
virtio venus: fallback to passthrough pci bus info when not natively supported 2022-12-20 22:39:01 +00:00
vulkan vulkan: update headers/registry to 1.3.238 for video decode 2022-12-20 07:28:07 +10:00
meson.build meson: build radeon drm-shim also for r300 and r600 2022-11-16 14:37:47 +00:00