From: Georg Lehmann Date: Tue, 7 Mar 2023 13:07:23 +0000 (+0100) Subject: aco: use integer access for neg_lo/neg_hi X-Git-Tag: upstream/23.3.3~11885 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=a47c3f84fb28a65bc74a922ef7f6eea28f1845d3;p=platform%2Fupstream%2Fmesa.git aco: use integer access for neg_lo/neg_hi Reviewed-by: Rhys Perry Part-of: --- diff --git a/src/amd/compiler/aco_instruction_selection.cpp b/src/amd/compiler/aco_instruction_selection.cpp index 1b6f877..e94303e 100644 --- a/src/amd/compiler/aco_instruction_selection.cpp +++ b/src/amd/compiler/aco_instruction_selection.cpp @@ -1038,8 +1038,7 @@ emit_idot_instruction(isel_context* ctx, nir_alu_instr* instr, aco_opcode op, Te VALU_instruction& vop3p = bld.vop3p(op, Definition(dst), src[0], src[1], src[2], 0x0, 0x7)->valu(); vop3p.clamp = clamp; - u_foreach_bit (i, neg_lo) - vop3p.neg_lo[i] = true; + vop3p.neg_lo = neg_lo; } void diff --git a/src/amd/compiler/aco_optimizer.cpp b/src/amd/compiler/aco_optimizer.cpp index e5c5681..7e4a6e3 100644 --- a/src/amd/compiler/aco_optimizer.cpp +++ b/src/amd/compiler/aco_optimizer.cpp @@ -3741,17 +3741,15 @@ propagate_swizzles(VALU_instruction* instr, uint8_t opsel_lo, uint8_t opsel_hi) assert((opsel_hi & 1) == opsel_hi); uint8_t tmp_lo = instr->opsel_lo; uint8_t tmp_hi = instr->opsel_hi; - bool neg_lo[3] = {instr->neg_lo[0], instr->neg_lo[1], instr->neg_lo[2]}; - bool neg_hi[3] = {instr->neg_hi[0], instr->neg_hi[1], instr->neg_hi[2]}; + uint8_t neg_lo = instr->neg_lo; + uint8_t neg_hi = instr->neg_hi; if (opsel_lo == 1) { instr->opsel_lo = tmp_hi; - for (unsigned i = 0; i < 3; i++) - instr->neg_lo[i] = neg_hi[i]; + instr->neg_lo = neg_hi; } if (opsel_hi == 0) { instr->opsel_hi = tmp_lo; - for (unsigned i = 0; i < 3; i++) - instr->neg_hi[i] = neg_lo[i]; + instr->neg_hi = neg_lo; } }