Commit graph

223883 commits

Author SHA1 Message Date
Gert Wollny
08f801d6db r600/sfn: Pin alu sources as well when registers are pinned
Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
Assisted-by: Copilot (auto mode)
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41945>
2026-06-07 21:36:58 +00:00
Gert Wollny
2643e12396 r600/sfn: rename pin_dest_to_chan to pin_registers
Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
Assisted-by: Copilot (auto mode)
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41945>
2026-06-07 21:36:58 +00:00
Gert Wollny
d49e0074c2 r600/sfn: Add pin_to_chan method to Register and use it
Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
Assisted-by: Copilot (auto mode)
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41945>
2026-06-07 21:36:58 +00:00
Gert Wollny
3a8a224a74 r600/sfn: Drop unused AssemblerVisitor members
Assisted-by: Copilot (auto mode)
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41945>
2026-06-07 21:36:58 +00:00
Gert Wollny
a1ba561c6b r600/sfn: Move ds_opcode_map ownership to fill_bytecode
Assisted-by: Copilot (auto mode)
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41945>
2026-06-07 21:36:58 +00:00
Gert Wollny
1d7068df22 r600/sfn: Move opcode_map to fill_bytecode, pass EAluOp to emit_bytecode_alu
Assisted-by: Copilot (auto mode)
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41945>
2026-06-07 21:36:58 +00:00
Gert Wollny
3c0dc36453 r600/sfn: Make emit_alu_op return success status
Assisted-by: Copilot (auto mode)
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41945>
2026-06-07 21:36:58 +00:00
Gert Wollny
072ddf18d8 r600/sfn: Move LDS ALU emission to fill_bytecode
Assisted-by: Copilot (auto mode)
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41945>
2026-06-07 21:36:57 +00:00
Gert Wollny
3f61b19b01 r600/sfn: Extract ALU dst state update into AssemblerVisitor
Assisted-by: Copilot (auto mode)
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41945>
2026-06-07 21:36:57 +00:00
Gert Wollny
800d4d0934 r600/sfn: Handle dst write checks before mova setup split
Assisted-by: Copilot (auto mode)
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41945>
2026-06-07 21:36:57 +00:00
Gert Wollny
b6c1e1319a r600/sfn: Extract ALU bytecode emission helper
Assisted-by: Copilot (auto mode)
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41945>
2026-06-07 21:36:57 +00:00
Gert Wollny
3c2e75573e r600/sfn: Validate ALU dst writes in emit_alu_op
Assisted-by: Copilot (auto mode)
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41945>
2026-06-07 21:36:57 +00:00
Gert Wollny
021cbaba7d r600/sfn: Simplify m_last_addr tracking in emit_alu_op
Assisted-by: Copilot (auto mode)
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41945>
2026-06-07 21:36:57 +00:00
Gert Wollny
e55dbc7882 r600/sfn: Move last_addr handling out of fill_alu_dst
Assisted-by: Copilot (auto mode)
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41945>
2026-06-07 21:36:57 +00:00
Gert Wollny
685c01b112 r600/sfn: minor reordering of operations in assembler
Assisted-by: Copilot (auto mode)
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41945>
2026-06-07 21:36:57 +00:00
Gert Wollny
c11c704f8a r600/sfn: drop unused literals tracking in assembler
Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
Assisted-by: Copilot (auto mode)
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41945>
2026-06-07 21:36:57 +00:00
Gert Wollny
0a209a9723 r600/sfn: Move prepare_alu_dst/copy_dst to sfn_fill_bytecode.cpp, rename to fill_alu_dst
Assisted-by: Copilot (auto mode)
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41945>
2026-06-07 21:36:57 +00:00
Gert Wollny
f3cfcdae45 r600/sfn: Move prepare_alu_src to sfn_fill_bytecode.cpp, rename to fill_alu_src_operands
Assisted-by: Copilot (auto mode)
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41945>
2026-06-07 21:36:57 +00:00
Gert Wollny
dfc387eb4e r600/sfn: Move copy_src to sfn_fill_bytecode.cpp, rename to fill_alu_src
Assisted-by: Copilot (auto mode)
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41945>
2026-06-07 21:36:57 +00:00
Gert Wollny
b03343c7ec r600/sfn: Move lds_queue_read decrement out of prepare_alu_src to caller
Assisted-by: Copilot (auto mode)
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41945>
2026-06-07 21:36:57 +00:00
Gert Wollny
4f38659f9e r600/sfn: use local opcode consistently in emit_alu_op
Assisted-by: Copilot (auto mode)
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41945>
2026-06-07 21:36:57 +00:00
Gert Wollny
d0fe966735 r600/sfn: use opcode switch in ALU post-emit update
Assisted-by: Copilot (auto mode)
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41945>
2026-06-07 21:36:57 +00:00
Gert Wollny
f2b8ebdc11 r600/sfn: return LDS opcode properties as tuple
Assisted-by: Copilot (auto mode)
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41945>
2026-06-07 21:36:57 +00:00
Gert Wollny
7861687c1f r600/sfn: extract and decouple ALU post-emit state update
Assisted-by: Copilot (auto mode)
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41945>
2026-06-07 21:36:57 +00:00
Gert Wollny
e6c6319e44 r600/sfn: extract emitting the bytecode of Rat Instr too
Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
Assisted-by: Copilot (auto mode)
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41945>
2026-06-07 21:36:57 +00:00
Gert Wollny
71533bd54f r600/sfn: simplify fill bytecode
Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
Assisted-by: Copilot (auto mode)
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41945>
2026-06-07 21:36:57 +00:00
Gert Wollny
f44ed15a9d r600/sfn: Drop index register handler in assembler
It is no longer used.

Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
Assisted-by: Copilot (auto mode)
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41945>
2026-06-07 21:36:57 +00:00
Gert Wollny
563833962f r600/sfn: extract some byte code emission from assembler
Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
Assisted-by: Copilot (auto mode)
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41945>
2026-06-07 21:36:57 +00:00
Gert Wollny
79820b61e2 r600/sfn: use c++ pattern for zero-init of structs
Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
Assisted-by: Copilot (auto mode)
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41945>
2026-06-07 21:36:57 +00:00
Gert Wollny
dbad0340f3 r600/sfn: de-duplicate emit_wait_ack
Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
Assisted-by: Copilot (auto mode)
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41945>
2026-06-07 21:36:57 +00:00
Gert Wollny
e802668037 r600/sfn: Refactor AssemblerVisitor emit_alu_op
Move some parts out to helper methods and reorder some
instructions.

Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
Assisted-by: Copilot (auto mode)
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41945>
2026-06-07 21:36:57 +00:00
Gert Wollny
68bab95e6a r600/sfn: Make some member variables references
They should never be nullptr.

Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
Assisted-by: Copilot (auto mode)
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41945>
2026-06-07 21:36:57 +00:00
Gert Wollny
7bab7c95f3 r600/sfn: Fix typo with AssemberVisitor
Assisted-by: Copilot (auto mode)
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41945>
2026-06-07 21:36:57 +00:00
Gert Wollny
8496727a74 r600/sfn: refactor CopyPropBackVisitor::visit(AluInstr*)
Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
Assisted-by: Copilot (auto mode)
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41945>
2026-06-07 21:36:57 +00:00
Gert Wollny
dc726457e2 r600/sfn: extract logging from CopyPropFwdVisitor::visit(AluInstr*)
Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
Assisted-by: Copilot (auto mode)
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41945>
2026-06-07 21:36:57 +00:00
Gert Wollny
5bef7e168a r600/sfn: refactor CopyPropFwdVisitor::visit(AluInsr*)
v2: drop now unused local variable

Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
Assisted-by: Copilot (auto mode)
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41945>
2026-06-07 21:36:57 +00:00
Gert Wollny
8dbf11c501 r600/sfn: refactor CopyPropFwdVisitor::propagate_to
Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
Assisted-by: Copilot (auto mode)
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41945>
2026-06-07 21:36:57 +00:00
Gert Wollny
00801796ae r600/sfn: deduplicate fixpoint loop for optimizers
Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
Assisted-by: Copilot (auto mode)
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41945>
2026-06-07 21:36:57 +00:00
Gert Wollny
0f97e4aa79 r600/sfn: deduplicate optimizer logging code
Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
Assisted-by: Copilot (auto mode)
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41945>
2026-06-07 21:36:57 +00:00
Gert Wollny
1b6526da17 r600/sfn: deduplicate some code in DCE
Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
Assisted-by: Copilot (auto mode)
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41945>
2026-06-07 21:36:57 +00:00
Gert Wollny
4c21894460 r600/sfn: extract check and report for unscheduled instructions
Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
Assisted-by: Copilot (auto mode)
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41945>
2026-06-07 21:36:57 +00:00
Gert Wollny
6d681cdb98 r600/sfn: Move exports emission to helper
Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
Assisted-by: Copilot (auto mode)
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41945>
2026-06-07 21:36:57 +00:00
Gert Wollny
bdcc1afd80 r600/sfn: refactor BlockScheduler::schedule_block
Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
Assisted-by: Copilot (auto mode)
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41945>
2026-06-07 21:36:57 +00:00
Gert Wollny
8de22efe5c r600/sfn: extract kcache check out of schedule_alu_to_group_vec
Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
Assisted-by: Copilot (auto mode)
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41945>
2026-06-07 21:36:57 +00:00
Gert Wollny
3fcd2f106a r600/sfn: Move tracking of kcache reservation to AluScheduleContext
Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
Assisted-by: Copilot (auto mode)
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41945>
2026-06-07 21:36:57 +00:00
Gert Wollny
39d7251568 r600/sfn: move tracking of kcache reservation failure to scheduler
Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
Assisted-by: Copilot (auto mode)
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41945>
2026-06-07 21:36:57 +00:00
Gert Wollny
dfb0e209e9 r600/sfn: make try_kcache_reservation const
Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
Assisted-by: Copilot (auto mode)
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41945>
2026-06-07 21:36:57 +00:00
Gert Wollny
141e06caca r600/sfn: split kcache evaluation into try and commit
Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
Assisted-by: Copilot (auto mode)
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41945>
2026-06-07 21:36:57 +00:00
Gert Wollny
81d359de55 r600/sfn: simplify ALU scheduling failure handling
Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
Assisted-by: Copilot (auto mode)
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41945>
2026-06-07 21:36:57 +00:00
Gert Wollny
033dd489de r600/sfn: collaps no_schedule and scheduled
Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
Assisted-by: Copilot (auto mode)
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41945>
2026-06-07 21:36:57 +00:00