Răsfoiți Sursa

Fix hint-based register allocation in ra_dest().

Mike Pall 14 ani în urmă
părinte
comite
87456f73f5
1 a modificat fișierele cu 1 adăugiri și 1 ștergeri
  1. 1 1
      src/lj_asm.c

+ 1 - 1
src/lj_asm.c

@@ -625,7 +625,7 @@ static Reg ra_dest(ASMState *as, IRIns *ir, RegSet allow)
     ra_free(as, dest);
     ra_modified(as, dest);
   } 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);
       ra_modified(as, dest);
       RA_DBGX((as, "dest           $r", dest));