mirror of
https://github.com/Motorhead1991/qemu.git
synced 2025-08-08 10:13:56 -06:00
target/xtensa: fix break_dependency for repeated resources
break_dependency incorrectly handles the case of dependency on an opcode that references the same register multiple times. E.g. the following instruction is translated incorrectly: { or a2, a3, a3 ; or a3, a2, a2 } This happens because resource indices of both dependency graph nodes are incremented, and a copy for the second instance of the same register in the ending node is not done. Only increment resource index of the ending node of the dependency. Add test. Signed-off-by: Max Filippov <jcmvbkbc@gmail.com>
This commit is contained in:
parent
62a172e6a7
commit
b9ec52188f
2 changed files with 17 additions and 1 deletions
|
@ -1041,7 +1041,6 @@ static bool break_dependency(struct slot_prop *a,
|
|||
copy[n].resource = b->in[j].resource;
|
||||
copy[n].arg = b->arg + index;
|
||||
++n;
|
||||
++i;
|
||||
++j;
|
||||
rv = true;
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue