intel/compiler: Lower FIND_[LAST_]LIVE_CHANNEL in IR on Gfx8+

This allows the software scoreboarding pass, scheduler, and so on
to handle the individual instructions and handle them, rather than
trusting in the generator to do scoreboarding correctly when expanding
the virtual instruction to multiple actual instructions.

By using SHADER_OPCODE_READ_SR_REG, we also correctly handle the
software scoreboarding workaround when reading DMask/VMask.

Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17530>
This commit is contained in:
Kenneth Graunke
2022-06-06 02:35:09 -07:00
committed by Marge Bot
parent 6401d768b9
commit 49ee3ae9e8
2 changed files with 74 additions and 0 deletions

View File

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