mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-05-19 02:48:07 +02:00
If there is a 4-byte hole between 2 loads, drivers can now optionally
vectorize the loads by including the hole between them, e.g.:
4B load + 4B hole + 8B load --> 16B load
All vectorize callbacks already reject all holes, but AMD will want to
allow it.
radeonsi+ACO with the new vectorization callback:
TOTALS FROM AFFECTED SHADERS (25248/58918)
VGPRs: 871116 -> 871872 (0.09 %)
Spilled SGPRs: 397 -> 407 (2.52 %)
Code Size: 43074536 -> 42496352 (-1.34 %) bytes
Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Reviewed-by: Rhys Perry <pendingchaos02@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29398>
|
||
|---|---|---|
| .. | ||
| algebraic_parser_test.py | ||
| algebraic_tests.cpp | ||
| builder_tests.cpp | ||
| comparison_pre_tests.cpp | ||
| control_flow_tests.cpp | ||
| core_tests.cpp | ||
| dce_tests.cpp | ||
| format_convert_tests.cpp | ||
| load_store_vectorizer_tests.cpp | ||
| loop_analyze_tests.cpp | ||
| loop_unroll_tests.cpp | ||
| lower_alu_width_tests.cpp | ||
| mod_analysis_tests.cpp | ||
| negative_equal_tests.cpp | ||
| nir_opt_varyings_test.h | ||
| nir_test.h | ||
| opt_if_tests.cpp | ||
| opt_loop_tests.cpp | ||
| opt_peephole_select.cpp | ||
| opt_shrink_vectors_tests.cpp | ||
| opt_varyings_tests_bicm_binary_alu.cpp | ||
| opt_varyings_tests_dead_input.cpp | ||
| opt_varyings_tests_dead_output.cpp | ||
| opt_varyings_tests_dedup.cpp | ||
| opt_varyings_tests_prop_const.cpp | ||
| opt_varyings_tests_prop_ubo.cpp | ||
| opt_varyings_tests_prop_uniform.cpp | ||
| opt_varyings_tests_prop_uniform_expr.cpp | ||
| range_analysis_tests.cpp | ||
| serialize_tests.cpp | ||
| vars_tests.cpp | ||