From c66d42b9eda5b414c18f867d0ff8134b6229f9c9 Mon Sep 17 00:00:00 2001 From: Rhys Perry Date: Wed, 24 May 2023 18:43:13 +0100 Subject: [PATCH] aco: add VOPD statistic MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Rhys Perry Reviewed-by: Georg Lehmann Reviewed-by: Daniel Schürmann Part-of: --- src/amd/compiler/aco_interface.cpp | 1 + src/amd/compiler/aco_shader_info.h | 1 + src/amd/compiler/aco_statistics.cpp | 2 ++ 3 files changed, 4 insertions(+) diff --git a/src/amd/compiler/aco_interface.cpp b/src/amd/compiler/aco_interface.cpp index b405fbd82cb..9c428048046 100644 --- a/src/amd/compiler/aco_interface.cpp +++ b/src/amd/compiler/aco_interface.cpp @@ -59,6 +59,7 @@ static const std::array statist ret[aco_statistic_salu] = aco_compiler_statistic_info{"SALU", "Number of SALU instructions"}; ret[aco_statistic_vmem] = aco_compiler_statistic_info{"VMEM", "Number of VMEM instructions"}; ret[aco_statistic_smem] = aco_compiler_statistic_info{"SMEM", "Number of SMEM instructions"}; + ret[aco_statistic_vopd] = aco_compiler_statistic_info{"VOPD", "Number of VOPD instructions"}; return ret; }(); diff --git a/src/amd/compiler/aco_shader_info.h b/src/amd/compiler/aco_shader_info.h index e6ff2c8a5f7..bfe8071dee2 100644 --- a/src/amd/compiler/aco_shader_info.h +++ b/src/amd/compiler/aco_shader_info.h @@ -228,6 +228,7 @@ enum aco_statistic { aco_statistic_salu, aco_statistic_vmem, aco_statistic_smem, + aco_statistic_vopd, aco_num_statistics }; diff --git a/src/amd/compiler/aco_statistics.cpp b/src/amd/compiler/aco_statistics.cpp index e454c2de93b..5eb202b8ba7 100644 --- a/src/amd/compiler/aco_statistics.cpp +++ b/src/amd/compiler/aco_statistics.cpp @@ -540,6 +540,8 @@ collect_preasm_stats(Program* program) if (instr->isSALU() && !instr->isSOPP() && instr_info.classes[(int)instr->opcode] != instr_class::waitcnt) program->statistics[aco_statistic_salu]++; + if (instr->isVOPD()) + program->statistics[aco_statistic_vopd]++; if ((instr->isVMEM() || instr->isScratch() || instr->isGlobal()) && !instr->operands.empty()) {