mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2025-12-26 08:30:10 +01:00
aco/ra: initialize temp_in_scc earlier
We need to know if there's a temporary in SCC before the instruction, not
after.
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com>
Reviewed-by: Daniel Schürmann <daniel@schuermann.dev>
Fixes: 93c8ebfa78 ("aco: Initial commit of independent AMD compiler")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10459>
This commit is contained in:
parent
d517996ae5
commit
4e459df0fc
1 changed files with 2 additions and 1 deletions
|
|
@ -2270,6 +2270,8 @@ void register_allocation(Program *program, std::vector<IDSet>& 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<IDSet>& live_out_per_bloc
|
|||
if (!parallelcopy.empty()) {
|
||||
aco_ptr<Pseudo_instruction> pc;
|
||||
pc.reset(create_instruction<Pseudo_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++) {
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue