aboutsummaryrefslogtreecommitdiffstats
path: root/src/intel/compiler/brw_fs.h
diff options
context:
space:
mode:
authorRafael Antognolli <[email protected]>2018-10-23 09:03:32 -0700
committerRafael Antognolli <[email protected]>2019-04-22 16:54:00 -0700
commit9ea90aae1e778c56381c63fc43cfe6a29a25c45f (patch)
tree931024a3c7be49669f483e8ea49c876960ea12c2 /src/intel/compiler/brw_fs.h
parentc0504569eac5e5c305e9f0c240e248aca9d8891f (diff)
intel/fs: Add a lowering pass for linear interpolation.
On gen11, instead of using a PLN instruction, we convert FS_OPCODE_LINTERP to 2 or 4 multiply adds. That is done in the fs_generator code. This patch adds a lowering pass that does the same thing at the fs_visitor. It also drops the usage of NF types, since we don't need the extra precision and it lets us skip the accumulator. With all that, some optimizations will still be run on the generated code, and we should get better scheduling. v2: Update comment about saturation and conditional mod (Matt) Reviewed-by: Matt Turner <[email protected]>
Diffstat (limited to 'src/intel/compiler/brw_fs.h')
-rw-r--r--src/intel/compiler/brw_fs.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/src/intel/compiler/brw_fs.h b/src/intel/compiler/brw_fs.h
index e8af99e1705..f05a9e0625a 100644
--- a/src/intel/compiler/brw_fs.h
+++ b/src/intel/compiler/brw_fs.h
@@ -167,6 +167,7 @@ public:
bool lower_pack();
bool lower_regioning();
bool lower_logical_sends();
+ bool lower_linterp();
bool lower_integer_multiplication();
bool lower_minmax();
bool lower_simd_width();