mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-01-03 11:30:21 +01:00
nir/lower-atomics-to-ssbo: don't set num_components
Of the possible intrinsics generated, only load_ssbo is vectorized (and store_ssbo is never generated) Signed-off-by: Rob Clark <robdclark@chromium.org> Reviewed-by: Jason Ekstrand <jason@jlekstrand.net> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5371>
This commit is contained in:
parent
f70d6030e3
commit
2e5b5d9584
1 changed files with 8 additions and 7 deletions
|
|
@ -127,10 +127,16 @@ lower_instr(nir_intrinsic_instr *instr, unsigned ssbo_offset, nir_builder *b)
|
|||
break;
|
||||
}
|
||||
|
||||
if (new_instr->intrinsic == nir_intrinsic_load_ssbo ||
|
||||
new_instr->intrinsic == nir_intrinsic_store_ssbo)
|
||||
if (new_instr->intrinsic == nir_intrinsic_load_ssbo) {
|
||||
nir_intrinsic_set_align(new_instr, 4, 0);
|
||||
|
||||
/* we could be replacing an intrinsic with fixed # of dest
|
||||
* num_components with one that has variable number. So
|
||||
* best to take this from the dest:
|
||||
*/
|
||||
new_instr->num_components = instr->dest.ssa.num_components;
|
||||
}
|
||||
|
||||
nir_ssa_dest_init(&new_instr->instr, &new_instr->dest,
|
||||
instr->dest.ssa.num_components,
|
||||
instr->dest.ssa.bit_size, NULL);
|
||||
|
|
@ -145,11 +151,6 @@ lower_instr(nir_intrinsic_instr *instr, unsigned ssbo_offset, nir_builder *b)
|
|||
nir_ssa_def_rewrite_uses(&instr->dest.ssa, nir_src_for_ssa(&new_instr->dest.ssa));
|
||||
}
|
||||
|
||||
/* we could be replacing an intrinsic with fixed # of dest num_components
|
||||
* with one that has variable number. So best to take this from the dest:
|
||||
*/
|
||||
new_instr->num_components = instr->dest.ssa.num_components;
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue