mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-05-08 06:58:05 +02:00
ac/nir: add ACCESS_CAN_REORDER to lowered load_global_constant
fossil-db (navi21): Totals from 39 (0.05% of 79395) affected shaders: Instrs: 2619146 -> 2619273 (+0.00%); split: -0.00%, +0.01% CodeSize: 14158064 -> 14158304 (+0.00%) Latency: 17277051 -> 17274098 (-0.02%); split: -0.02%, +0.00% InvThroughput: 4242241 -> 4241746 (-0.01%); split: -0.01%, +0.00% SClause: 56514 -> 57561 (+1.85%); split: -0.02%, +1.87% Signed-off-by: Rhys Perry <pendingchaos02@gmail.com> Reviewed-by: Georg Lehmann <dadschoorse@gmail.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31904>
This commit is contained in:
parent
0c7830eb85
commit
bd88c8733a
1 changed files with 6 additions and 2 deletions
|
|
@ -70,9 +70,13 @@ static bool
|
|||
process_instr(nir_builder *b, nir_intrinsic_instr *intrin, void *_)
|
||||
{
|
||||
nir_intrinsic_op op;
|
||||
unsigned access = 0;
|
||||
switch (intrin->intrinsic) {
|
||||
case nir_intrinsic_load_global:
|
||||
case nir_intrinsic_load_global_constant:
|
||||
access |= ACCESS_NON_WRITEABLE |
|
||||
(nir_intrinsic_access(intrin) & ACCESS_VOLATILE ? 0 : ACCESS_CAN_REORDER);
|
||||
FALLTHROUGH;
|
||||
case nir_intrinsic_load_global:
|
||||
op = nir_intrinsic_load_global_amd;
|
||||
break;
|
||||
case nir_intrinsic_global_atomic:
|
||||
|
|
@ -120,7 +124,7 @@ process_instr(nir_builder *b, nir_intrinsic_instr *intrin, void *_)
|
|||
new_intrin->src[addr_src_idx] = nir_src_for_ssa(addr);
|
||||
|
||||
if (nir_intrinsic_has_access(intrin))
|
||||
nir_intrinsic_set_access(new_intrin, nir_intrinsic_access(intrin));
|
||||
nir_intrinsic_set_access(new_intrin, nir_intrinsic_access(intrin) | access);
|
||||
if (nir_intrinsic_has_align_mul(intrin))
|
||||
nir_intrinsic_set_align_mul(new_intrin, nir_intrinsic_align_mul(intrin));
|
||||
if (nir_intrinsic_has_align_offset(intrin))
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue