Procházet zdrojové kódy

ARM: Fix register allocation for ldrd-optimized HREFK.

Mike Pall před 13 roky
rodič
revize
0522f74f69
1 změnil soubory, kde provedl 2 přidání a 1 odebrání
  1. 2 1
      src/lj_asm_arm.h

+ 2 - 1
src/lj_asm_arm.h

@@ -656,7 +656,8 @@ static void asm_hrefk(ASMState *as, IRIns *ir)
   }
   asm_guardcc(as, CC_NE);
   if (!irt_ispri(irkey->t)) {
-    RegSet even = (as->freeset & (as->freeset >> 1) & allow & RSET_GPREVEN);
+    RegSet even = (as->freeset & allow);
+    even = even & (even >> 1) & RSET_GPREVEN;
     if (even) {
       key = ra_scratch(as, even);
       if (rset_test(as->freeset, key+1)) {