A move from a nonreg to a reg did not have the effect that all

registers clashing with the destination were erased. Erase added.
This commit is contained in:
sater 1984-08-02 16:31:25 +00:00
parent 93672962a1
commit ff9d23e4ec

View file

@ -57,6 +57,7 @@ move(tp1,tp2,ply,toplevel,maxcost) token_p tp1,tp2; unsigned maxcost; {
} else {
if (eqtoken(&machregs[tp2->t_att[0].ar].r_contents,tp1))
return(0);
erasereg(tp2->t_att[0].ar);
machregs[tp2->t_att[0].ar].r_contents = *tp1;
}
for (rp=machregs;rp<machregs+NREGS;rp++) {