mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-05-25 19:08:12 +02:00
poking around, it seems branches stall the pipelines so we don't need to do any dataflow analysis, but we do need to fall through for correctness. just keep going across block boundaries. this isn't optimal yet but it reduces a pile of A@1's already. Totals from 1389 (52.47% of 2647) affected shaders: CodeSize: 56385376 -> 56325776 (-0.11%); split: -0.13%, +0.03% -- this also fixes issues where the first instruction of a block is a SEND that has an unmet register dependency, since the old code was fundamentally broken. oops. lol. fixes dEQP-VK.compute.pipeline.workgroup_memory_explicit_layout.zero.uint8_t_array_to_uint_array_1 among many others. Signed-off-by: Alyssa Rosenzweig <alyssa.rosenzweig@intel.com> Reviewed-by: Kenneth Graunke <kenneth@whitecape.org> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41510> |
||
|---|---|---|
| .. | ||
| test | ||
| .clang-format | ||
| jay.h | ||
| jay_assign_accumulators.c | ||
| jay_assign_flags.c | ||
| jay_builder.h | ||
| jay_builder_opcodes.h.py | ||
| jay_extra_info.h.py | ||
| jay_from_nir.c | ||
| jay_insert_fp_mode.c | ||
| jay_ir.h | ||
| jay_liveness.c | ||
| jay_lower_post_ra.c | ||
| jay_lower_pre_ra.c | ||
| jay_lower_scoreboard.c | ||
| jay_lower_spill.c | ||
| jay_nir.c | ||
| jay_nir_algebraic.py | ||
| jay_opcodes.py | ||
| jay_opcodes_gen.py | ||
| jay_opt_dead_code.c | ||
| jay_opt_predicate.c | ||
| jay_opt_propagate.c | ||
| jay_print.c | ||
| jay_private.h | ||
| jay_prog_data.c | ||
| jay_register_allocate.c | ||
| jay_repair_ssa.c | ||
| jay_simd_width.c | ||
| jay_spill.c | ||
| jay_to_binary.c | ||
| jay_validate.c | ||
| jay_validate_ra.c | ||
| meson.build | ||
| README.md | ||
| register-file.md | ||
Xe2 compiler experiments.
Work-in-progress, not ready for users/benchmarks.
Jay is written by humans, not Large Language Models, due to our focus on delivering high quality software and nurturing healthy software teams. For information on the issues, see the notes of veteran Mesa developers like Erik Faye-Lund. Please respect our wishes and do not send Jay patches that are not human authored. Thank you!