From: Rhys Perry Date: Tue, 13 Jun 2023 11:35:34 +0000 (+0100) Subject: nir/peephole_select: allow some invocation broadcast intrinsics X-Git-Tag: upstream/23.3.3~6436 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=48674a179985d05e91a1c7ca5783058ae9d113b1;p=platform%2Fupstream%2Fmesa.git nir/peephole_select: allow some invocation broadcast intrinsics fossil-db (navi21): Totals from 3 (0.00% of 133428) affected shaders: Instrs: 2074 -> 2083 (+0.43%) CodeSize: 10596 -> 10692 (+0.91%) Latency: 75754 -> 75946 (+0.25%) InvThroughput: 16900 -> 16975 (+0.44%) Copies: 312 -> 309 (-0.96%) Branches: 150 -> 132 (-12.00%) Signed-off-by: Rhys Perry Reviewed-by: Georg Lehmann Part-of: --- diff --git a/src/compiler/nir/nir_opt_peephole_select.c b/src/compiler/nir/nir_opt_peephole_select.c index 9e64f02..b6acee4 100644 --- a/src/compiler/nir/nir_opt_peephole_select.c +++ b/src/compiler/nir/nir_opt_peephole_select.c @@ -143,6 +143,14 @@ block_check_for_allowed_instrs(nir_block *block, unsigned *count, case nir_intrinsic_load_frag_shading_rate: case nir_intrinsic_is_sparse_texels_resident: case nir_intrinsic_sparse_residency_code_and: + case nir_intrinsic_read_invocation: + case nir_intrinsic_quad_broadcast: + case nir_intrinsic_quad_swap_horizontal: + case nir_intrinsic_quad_swap_vertical: + case nir_intrinsic_quad_swap_diagonal: + case nir_intrinsic_quad_swizzle_amd: + case nir_intrinsic_masked_swizzle_amd: + case nir_intrinsic_lane_permute_16_amd: if (!alu_ok) return false; break;