intel/fs: Introduce lowering pass to implement derivatives in terms of quad swizzles.

Unfortunately the funky Align1 regions used by the code generator in
order to implement derivatives efficiently aren't available to the
floating-point pipeline on XeHP.  We need to lower them into a number
of pipelined integer shuffle instructions followed by the
floating-point difference computation.

Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10000>
This commit is contained in:
Francisco Jerez
2019-01-10 20:23:53 -08:00
committed by Marge Bot
parent 635ed58e52
commit a0e0dfe174
2 changed files with 64 additions and 1 deletions

View File

@@ -196,6 +196,7 @@ public:
bool lower_minmax();
bool lower_simd_width();
bool lower_barycentrics();
bool lower_derivatives();
bool lower_scoreboard();
bool lower_sub_sat();
bool opt_combine_constants();