summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMatt Turner <mattst88@gmail.com>2022-03-03 15:30:37 -0800
committerMatt Turner <mattst88@gmail.com>2022-05-09 12:43:36 -0400
commitbb738a5db37f5a5f3472519075001b682c19a4ba (patch)
tree51359746344fc53180d381f745b943aa5c5b2f5f
parent2ebf4b15907448db6a768ae57017bc06ce648caf (diff)
intel/perf: Destination array calculation into function
Cuts 119 KiB from iris_dri.so and libvulkan_intel.so. text data bss dec hex filename 917511 0 0 917511 e0007 meson-generated_.._intel_perf_metrics.c.o (before) 796986 0 0 796986 c293a meson-generated_.._intel_perf_metrics.c.o (after) text data bss dec hex filename 14130948 365708 210004 14706660 e067e4 iris_dri.so (before) 14009332 365708 210004 14585044 de8cd4 iris_dri.so (after) text data bss dec hex filename 8124225 214264 22820 8361309 7f955d libvulkan_intel.so (before) 8002609 214264 22820 8239693 7dba4d libvulkan_intel.so (after) Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com> (cherry picked from commit 8860ff33105bc756b077a3fefaced892cd867dc8) Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16405>
-rw-r--r--src/intel/perf/gen_perf.py9
1 files changed, 5 insertions, 4 deletions
diff --git a/src/intel/perf/gen_perf.py b/src/intel/perf/gen_perf.py
index 0666f629163..bdd1de27f1b 100644
--- a/src/intel/perf/gen_perf.py
+++ b/src/intel/perf/gen_perf.py
@@ -466,8 +466,7 @@ def output_counter_report(set, counter, counter_to_idx, current_offset):
current_offset = pot_align(current_offset, sizeof(c_type))
- c("counter = &query->counters[query->n_counters++];\n")
- c("intel_perf_query_add_counter(counter, " + idx + ", " +
+ c("intel_perf_query_add_counter(query, " + idx + ", " +
str(current_offset) + ", " +
set.max_values[counter.get('symbol_name')] + ", (oa_counter_read_func)" +
set.read_funcs[counter.get('symbol_name')] + ");\n")
@@ -812,10 +811,11 @@ def main():
const struct intel_perf_query_info *query,
const struct intel_perf_query_result *results);
static void ATTRIBUTE_NOINLINE
- intel_perf_query_add_counter(struct intel_perf_query_counter *dest,
+ intel_perf_query_add_counter(struct intel_perf_query_info *query,
int counter_idx, size_t offset,
uint64_t raw_max, oa_counter_read_func oa_counter_read_uint64)
{
+ struct intel_perf_query_counter *dest = &query->counters[query->n_counters++];
const struct intel_perf_query_counter_data *counter = &counters[counter_idx];
dest->name = &name[counter->name_idx];
@@ -870,7 +870,8 @@ def main():
offset = output_counter_report(set, counter, counter_to_idx, offset)
- c("\nquery->data_size = counter->offset + intel_perf_query_counter_get_size(counter);\n")
+ c("\ncounter = &query->counters[query->n_counters - 1];\n")
+ c("query->data_size = counter->offset + intel_perf_query_counter_get_size(counter);\n")
c_outdent(3)
c("}");