intel/perf: Reduce code size
This series implements a number of code size optimizations for the intel/perf query code.
It cuts 725 KiB from iris_dri.so
(4.8%) and libvulkan_intel.so
(8.3%). It reduces the size of meson-generated_.._intel_perf_metrics.c.o
by 48%.
text data bss dec hex filename
1538720 0 0 1538720 177aa0 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
14751700 365708 210004 15327412 e9e0b4 iris_dri.so (before)
14009332 365708 210004 14585044 de8cd4 iris_dri.so (after)
text data bss dec hex filename
8744913 214264 22820 8981997 890ded libvulkan_intel.so (before)
8002609 214264 22820 8239693 7dba4d libvulkan_intel.so (after)
I suspect, but did not confirm, that it improves compile tiles of the generated source file src/intel/perf/intel_perf_metrics.c
because the file's size drops from 248951 lines, ~12 MiB to 136143 lines, ~6.1 MiB (both down ~45%).
Fixes: #4899 (closed) Fixes: #5700 (closed)
cc: @anholt, @llandwerlin
Edited by Matt Turner