aco: create pseudo instructions with correct struct

Cc: mesa-stable
Reviewed-by: Timur Kristóf <timur.kristof@gmail.com>
Reviewed-by: Daniel Schürmann <daniel@schuermann.dev>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27855>
(cherry picked from commit b0554ab0a1)
This commit is contained in:
Georg Lehmann 2024-02-28 18:21:49 +01:00 committed by Eric Engestrom
parent 68cf272b8a
commit 77a4e8b7a4
3 changed files with 4 additions and 4 deletions

View file

@ -1004,7 +1004,7 @@
"description": "aco: create pseudo instructions with correct struct",
"nominated": true,
"nomination_type": 0,
"resolution": 0,
"resolution": 1,
"main_sha": null,
"because_sha": null,
"notes": null

View file

@ -79,7 +79,7 @@ setup_reduce_temp(Program* program)
* Here, the linear vgpr is used before any phi copies, so this isn't necessary.
*/
if (inserted_at >= 0) {
aco_ptr<Instruction> end{create_instruction<Instruction>(
aco_ptr<Instruction> end{create_instruction<Pseudo_instruction>(
aco_opcode::p_end_linear_vgpr, Format::PSEUDO, vtmp_inserted_at >= 0 ? 2 : 1, 0)};
end->operands[0] = Operand(reduceTmp);
if (vtmp_inserted_at >= 0)

View file

@ -96,9 +96,9 @@ struct ra_ctx {
renames(program->blocks.size()), policy(policy_)
{
pseudo_dummy.reset(
create_instruction<Instruction>(aco_opcode::p_parallelcopy, Format::PSEUDO, 0, 0));
create_instruction<Pseudo_instruction>(aco_opcode::p_parallelcopy, Format::PSEUDO, 0, 0));
phi_dummy.reset(
create_instruction<Instruction>(aco_opcode::p_linear_phi, Format::PSEUDO, 0, 0));
create_instruction<Pseudo_instruction>(aco_opcode::p_linear_phi, Format::PSEUDO, 0, 0));
sgpr_limit = get_addr_sgpr_from_waves(program, program->min_waves);
vgpr_limit = get_addr_vgpr_from_waves(program, program->min_waves);
}