mesa/src
Ian Romanick a4079f1cb2 nir: Lower flrp with Boolean interpolator to bcsel
On Intel platforms that don't set lower_flrp, using bcsel instead of
flrp seems to be a small amount worse.  On those platforms, the use of
flrp, bcsel, and multiply of b2f is still an active area of research.
In review, Matt suggested this is because bcsel turns into CMP+SEL, and
because of the flag register we can't schedule instructions well.

shader-db results:

G4X / Ironlake
total instructions in shared programs: 4016538 -> 4012279 (-0.11%)
instructions in affected programs: 161556 -> 157297 (-2.64%)
helped: 1077
HURT: 1

total cycles in shared programs: 84328296 -> 84315862 (-0.01%)
cycles in affected programs: 4174570 -> 4162136 (-0.30%)
helped: 926
HURT: 53

Unsurprisingly, no changes on later platforms.

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Matt Turner <mattst88@gmail.com>
2016-03-22 14:42:42 -07:00
..
compiler nir: Lower flrp with Boolean interpolator to bcsel 2016-03-22 14:42:42 -07:00
egl egl: support EGL_LARGEST_PBUFFER in eglCreatePbufferSurface(...) 2016-03-18 07:35:32 +02:00
gallium tgsi: drop unused set_exec/kill_mask interfaces. 2016-03-22 13:07:05 +10:00
gbm gbm: do not wrap header inclusion in extern "C" 2016-03-09 17:16:50 +00:00
getopt getopt: Make code more portable. 2011-01-12 16:54:21 +00:00
glx glx: update to updated version of EXT_create_context_es2_profile 2016-02-03 15:44:51 -05:00
gtest mesa: Enable subdir-objects globally. 2015-06-26 12:55:25 +01:00
hgl glapi/hgl: Drop extern "C" as it was added to glapi 2015-05-13 15:26:29 -04:00
loader dri: add backbuffer use flag 2016-03-09 15:02:25 +01:00
mapi glapi: remove the final function offset tags 2016-03-09 17:16:51 +00:00
mesa i965: Have NIR lower flrp on pre-GEN6 vec4 backend 2016-03-22 14:42:42 -07:00
util util/sha: do not wrap header inclusion in extern "C" 2016-03-09 17:16:50 +00:00
Makefile.am glsl: move to compiler/ 2016-01-26 16:08:33 +00:00
SConscript glsl: move to compiler/ 2016-01-26 16:08:33 +00:00