mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2025-12-30 14:20:11 +01:00
nir/opt_algebraic: Add an option to lower uclz.
Signed-off-by: Georg Lehmann <dadschoorse@gmail.com> Reviewed-by: Ian Romanick <ian.d.romanick@intel.com> Reviewed-by: Rhys Perry <pendingchaos02@gmail.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18951>
This commit is contained in:
parent
049b60cf4b
commit
7505be3497
2 changed files with 7 additions and 0 deletions
|
|
@ -3507,6 +3507,11 @@ typedef struct nir_shader_compiler_options {
|
|||
*/
|
||||
bool lower_mul_32x16;
|
||||
|
||||
/**
|
||||
* Set if uclz should be lowered to find_msb_rev.
|
||||
*/
|
||||
bool lower_uclz;
|
||||
|
||||
/**
|
||||
* Should IO be re-vectorized? Some scalar ISAs still operate on vec4's
|
||||
* for IO purposes and would prefer loads/stores be vectorized.
|
||||
|
|
|
|||
|
|
@ -1889,6 +1889,8 @@ optimizations.extend([
|
|||
('ufind_msb_rev', 'value')),
|
||||
'options->lower_find_msb_to_reverse'),
|
||||
|
||||
(('uclz', a), ('umin', 32, ('ufind_msb_rev', a)), 'options->lower_uclz'),
|
||||
|
||||
(('find_lsb', 'value'),
|
||||
('ufind_msb', ('iand', 'value', ('ineg', 'value'))),
|
||||
'options->lower_find_lsb'),
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue