intel/compiler: Relax mixed type restriction for saturating immediates
authorIan Romanick <ian.d.romanick@intel.com>
Wed, 27 Jun 2018 02:21:43 +0000 (19:21 -0700)
committerIan Romanick <ian.d.romanick@intel.com>
Fri, 6 Jul 2018 23:20:10 +0000 (16:20 -0700)
commitf8e54d02f79057f679302c06847066edc3ae7aa7
tree371c9af31aa5f868e53c8841b0ec382d99d10026
parent9626ea497de8af5580ee3af76df79ad8083c5922
intel/compiler: Relax mixed type restriction for saturating immediates

At the time of commit 7bc6e455e23 (i965: Add support for saturating
immediates.) we thought mixed type saturates would be impossible.  We
were only thinking about type converting moves from D to F, for
example.  However, type converting moves w/saturate from F to DF are
definitely possible.  This change minimally relaxes the restriction to
allow cases that I have been able trigger via piglit tests.

Fixes new piglit tests:
 - arb_gpu_shader_fp64/execution/built-in-functions/fs-sign-sat-neg-abs.shader_test
 - arb_gpu_shader_fp64/execution/built-in-functions/vs-sign-sat-neg-abs.shader_test

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Cc: mesa-stable@lists.freedesktop.org
Reviewed-by: Caio Marcelo de Oliveira Filho <caio.oliveira@intel.com>
src/intel/compiler/brw_fs.cpp
src/intel/compiler/brw_vec4.cpp