mesa/src/intel
Jason Ekstrand 2fca325ea6 Revert "i965/fs: Merge CMP and SEL into CSEL on Gen8+"
This reverts commit 52c7df1643.  The pass,
while clearly useful for some shaders, has at least three bugs that I
was able to find fairly quickly:

 1. It doesn't work for type-converting MOVs because f > 0 is not the
    same as f2i(f) > 0

 2. CSEL is a 3src instruction and only supports one source type; it
    doesn't take this into account and tries to create instructions
    which do a F compare and a D select.  This is especially nasty to
    debug because you don't see that in the dumped assembly because we
    don't properly assert that types are the same in codegen.

 3. While you can handle 2, in theory, by reinterpreting types, you
    can't do that in the presence of source modifiers.  This pass
    doesn't even attempt to detect that.

Those are just the ones I found with the one almost trival shader I was
debugging.  There very likely may be more and.  Best thing to do for now
is just shut it off until someone has the time to figure out how to do
this properly and write tests to ensure it's correct.

Fixes: 3cb085e6d61a "i965/fs: Merge CMP and SEL into CSEL on Gen8+"
Reviewed-by: Brian Paul <brianp@vmware.com>
2019-11-20 20:47:32 +00:00
..
blorp intel: Add workaround for stencil state. 2019-11-19 21:43:09 +00:00
common intel/gen_decoder: Fix unused-but-set-variable warning 2019-11-07 11:32:55 +11:00
compiler Revert "i965/fs: Merge CMP and SEL into CSEL on Gen8+" 2019-11-20 20:47:32 +00:00
dev intel/dev: flag the Elkhart Lake platform 2019-11-15 13:14:30 +00:00
genxml genxml: Mark everything in genX_pack.h always_inline 2019-11-18 18:35:14 +00:00
isl intel/isl: Add MOCS settings to isl_device. 2019-11-12 20:41:52 +00:00
perf intel/perf: add EHL performance query support 2019-11-15 13:14:30 +00:00
tools intel/dump_gpu: handle context create extended ioctl 2019-10-30 21:58:31 +02:00
vulkan nir: move data.image.access to data.access 2019-11-19 18:20:05 -05:00
Android.blorp.mk intel: android: remove libdrm_intel requirement 2017-03-30 19:07:23 +01:00
Android.common.mk android: static link with libexpat with Android O+ 2019-03-25 10:11:57 +02:00
Android.compiler.mk android: fix build issues with brw_nir_trig_workarounds.c 2017-10-04 07:39:05 +03:00
Android.dev.mk drm-uapi: use local files, not system libdrm 2019-02-14 11:20:00 +00:00
Android.genxml.mk intel/genxml: generate pack files for gen12 on android builds 2019-08-28 13:38:33 -07:00
Android.isl.mk intel/isl: build android libmesa_isl for gen12 2019-08-28 13:38:33 -07:00
Android.mk i965: extract performance query metrics 2019-04-17 14:10:42 +01:00
Android.perf.mk i965: extract performance query metrics 2019-04-17 14:10:42 +01:00
Android.vulkan.mk anv: implement VK_INTEL_performance_query 2019-10-23 05:41:15 +00:00
Makefile.perf.am i965: extract performance query metrics 2019-04-17 14:10:42 +01:00
Makefile.sources anv: Rework push constant handling 2019-11-18 18:35:14 +00:00
meson.build i965: extract performance query metrics 2019-04-17 14:10:42 +01:00