Improve register allocation on x64.

This commit is contained in:
Mike Pall 2010-03-02 23:34:13 +01:00
parent 20fa30b388
commit 32309583e5

View File

@ -791,6 +791,11 @@ static Reg ra_allocref(ASMState *as, IRRef ref, RegSet allow)
pick &= ~as->modset;
r = rset_pickbot(pick); /* Reduce conflicts with inverse allocation. */
} else {
#if LJ_64
/* We've got plenty of regs, so get callee-save regs if possible. */
if ((pick & ~RSET_SCRATCH))
pick &= ~RSET_SCRATCH;
#endif
r = rset_picktop(pick);
}
} else {