diff --git a/.pick_status.json b/.pick_status.json index d1b62591797..2a8ea84133d 100644 --- a/.pick_status.json +++ b/.pick_status.json @@ -76,7 +76,7 @@ "description": "aco/ra: initialize temp_in_scc earlier", "nominated": true, "nomination_type": 1, - "resolution": 0, + "resolution": 1, "master_sha": null, "because_sha": "93c8ebfa780ebd1495095e794731881aef29e7d3" }, diff --git a/src/amd/compiler/aco_register_allocation.cpp b/src/amd/compiler/aco_register_allocation.cpp index 2923f7465f5..3b71c39e438 100644 --- a/src/amd/compiler/aco_register_allocation.cpp +++ b/src/amd/compiler/aco_register_allocation.cpp @@ -2270,6 +2270,8 @@ void register_allocation(Program *program, std::vector& live_out_per_bloc assert(!is_phi(instr)); + bool temp_in_scc = register_file[scc]; + /* handle operands */ for (unsigned i = 0; i < instr->operands.size(); ++i) { auto& operand = instr->operands[i]; @@ -2484,7 +2486,6 @@ void register_allocation(Program *program, std::vector& live_out_per_bloc if (!parallelcopy.empty()) { aco_ptr pc; pc.reset(create_instruction(aco_opcode::p_parallelcopy, Format::PSEUDO, parallelcopy.size(), parallelcopy.size())); - bool temp_in_scc = register_file[scc]; bool sgpr_operands_alias_defs = false; uint64_t sgpr_operands[4] = {0, 0, 0, 0}; for (unsigned i = 0; i < parallelcopy.size(); i++) {