nir: Un-inline nir_builder_alu_instr_finish_and_insert()
This function is big and I don't think it will won't get meaningfully constant-propagated during inlining without LTO. Move it to a .c file so we just have one copy, saving 2.8MB from libnir.a on an amd64 release build. text data bss total filename before: 18953406 7768312 687260 27408978 build-release/driver-symlinks/iris_dri.so 9734366 5542453 481692 15758511 build-release/lib/libvulkan_intel.so 28687772 13310765 1168952 43167489 (TOTALS) after: 15478350 7767864 687260 23933474 build-release/driver-symlinks/iris_dri.so 6810366 5541685 481692 12833743 build-release/lib/libvulkan_intel.so 22288716 13309549 1168952 36767217 (TOTALS) No statistically significant performance difference on iris shader-db, n=8. Reviewed-by: Matt Turner <mattst88@gmail.com> Acked-by: Jason Ekstrand <jason@jlekstrand.net> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13889>
This commit is contained in:
@@ -95,6 +95,7 @@ nir_intrinsics_c = custom_target(
|
||||
files_libnir = files(
|
||||
'nir.c',
|
||||
'nir.h',
|
||||
'nir_builder.c',
|
||||
'nir_builder.h',
|
||||
'nir_builtin_builder.c',
|
||||
'nir_builtin_builder.h',
|
||||
|
Reference in New Issue
Block a user