From bd9c33e16ab06c1eab398a41dad5472ec3100b72 Mon Sep 17 00:00:00 2001 From: Alyssa Rosenzweig Date: Sun, 23 Apr 2023 23:13:08 -0400 Subject: [PATCH] agx: Defeature fsub MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit All has_fsub does is fuse fsubs (they're unfused otherwise), no point doing that if we're going to just going to lower. shader-db is mostly noise. total instructions in shared programs: 1487217 -> 1487035 (-0.01%) instructions in affected programs: 22658 -> 22476 (-0.80%) helped: 85 HURT: 2 helped stats (abs) min: 1.0 max: 12.0 x̄: 2.19 x̃: 1 helped stats (rel) min: 0.38% max: 2.46% x̄: 0.87% x̃: 0.65% HURT stats (abs) min: 1.0 max: 3.0 x̄: 2.00 x̃: 2 HURT stats (rel) min: 0.58% max: 1.08% x̄: 0.83% x̃: 0.83% 95% mean confidence interval for instructions value: -2.51 -1.67 95% mean confidence interval for instructions %-change: -0.97% -0.70% Instructions are helped. total bytes in shared programs: 10189996 -> 10189288 (<.01%) bytes in affected programs: 158132 -> 157424 (-0.45%) helped: 85 HURT: 2 helped stats (abs) min: 4.0 max: 48.0 x̄: 8.75 x̃: 4 helped stats (rel) min: 0.22% max: 1.44% x̄: 0.51% x̃: 0.38% HURT stats (abs) min: 6.0 max: 30.0 x̄: 18.00 x̃: 18 HURT stats (rel) min: 0.90% max: 0.91% x̄: 0.91% x̃: 0.91% 95% mean confidence interval for bytes value: -9.98 -6.30 95% mean confidence interval for bytes %-change: -0.56% -0.39% Bytes are helped. total halfregs in shared programs: 462536 -> 462556 (<.01%) halfregs in affected programs: 131 -> 151 (15.27%) helped: 1 HURT: 4 helped stats (abs) min: 2.0 max: 2.0 x̄: 2.00 x̃: 2 helped stats (rel) min: 28.57% max: 28.57% x̄: 28.57% x̃: 28.57% HURT stats (abs) min: 4.0 max: 8.0 x̄: 5.50 x̃: 5 HURT stats (rel) min: 12.77% max: 36.36% x̄: 25.01% x̃: 25.45% 95% mean confidence interval for halfregs value: -0.65 8.65 95% mean confidence interval for halfregs %-change: -18.64% 47.23% Inconclusive result (value mean confidence interval includes 0). Signed-off-by: Alyssa Rosenzweig Part-of: --- src/asahi/compiler/agx_compile.c | 2 -- src/asahi/compiler/agx_compile.h | 1 - 2 files changed, 3 deletions(-) diff --git a/src/asahi/compiler/agx_compile.c b/src/asahi/compiler/agx_compile.c index 43de92b..3bc3d99 100644 --- a/src/asahi/compiler/agx_compile.c +++ b/src/asahi/compiler/agx_compile.c @@ -1087,8 +1087,6 @@ agx_emit_alu(agx_builder *b, nir_alu_instr *instr) case nir_op_fsqrt: return agx_fmul_to(b, dst, s0, agx_srsqrt(b, s0)); - case nir_op_fsub: - return agx_fadd_to(b, dst, s0, agx_neg(s1)); case nir_op_fabs: return agx_fmov_to(b, dst, agx_abs(s0)); case nir_op_fneg: diff --git a/src/asahi/compiler/agx_compile.h b/src/asahi/compiler/agx_compile.h index b870d5f..dfc4a66 100644 --- a/src/asahi/compiler/agx_compile.h +++ b/src/asahi/compiler/agx_compile.h @@ -200,7 +200,6 @@ static const nir_shader_compiler_options agx_nir_options = { .vectorize_io = true, .use_interpolated_input_intrinsics = true, .lower_rotate = true, - .has_fsub = true, .has_isub = true, .use_scoped_barrier = true, .max_unroll_iterations = 32, -- 2.7.4