Fix hint-based register allocation in ra_dest().

This commit is contained in:
Mike Pall 2011-11-14 23:52:26 +01:00
parent 71d00a56db
commit 87456f73f5

View File

@ -625,7 +625,7 @@ static Reg ra_dest(ASMState *as, IRIns *ir, RegSet allow)
ra_free(as, dest); ra_free(as, dest);
ra_modified(as, dest); ra_modified(as, dest);
} else { } else {
if (ra_hashint(dest) && rset_test(as->freeset, ra_gethint(dest))) { if (ra_hashint(dest) && rset_test((as->freeset&allow), ra_gethint(dest))) {
dest = ra_gethint(dest); dest = ra_gethint(dest);
ra_modified(as, dest); ra_modified(as, dest);
RA_DBGX((as, "dest $r", dest)); RA_DBGX((as, "dest $r", dest));