intel/fs: Move packHalf2x16 handling to lower_pack()
authorKenneth Graunke <kenneth@whitecape.org>
Wed, 8 Mar 2023 04:41:55 +0000 (20:41 -0800)
committerMarge Bot <emma+marge@anholt.net>
Thu, 9 Mar 2023 23:26:17 +0000 (23:26 +0000)
commitc590a3eadfd67c4694dd4a7013ce957a51289a56
treed32ec166106df8a9ce25504297c331a4876da506
parentf5e5705c91562dd8e36c82de928944d1e202e995
intel/fs: Move packHalf2x16 handling to lower_pack()

This mainly lets the software scoreboarding pass correctly mark the
instructions, without needing to resort to fragile manual handling in
the generator.

We can also make small improvements.  On Gfx 8LP-12.0, we no longer have
the restrictions about DWord alignment, so we can simply write each half
into its intended location, rather than writing it to the low DWord and
then shifting it in place.

Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Reviewed-by: Sagar Ghuge <sagar.ghuge@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21783>
src/intel/compiler/brw_fs.h
src/intel/compiler/brw_fs_generator.cpp
src/intel/compiler/brw_fs_lower_pack.cpp