diff options
author | Mike Pall <mike> | 2010-03-02 23:34:13 +0100 |
---|---|---|
committer | Mike Pall <mike> | 2010-03-02 23:34:13 +0100 |
commit | 32309583e584b565d78d6be8218023cd53732cfe (patch) | |
tree | 440e0065fea11016f5ec445e087a89f0c6e42c76 /src | |
parent | 20fa30b3889b611cb9e1bda72ee85b3e6c95db56 (diff) | |
download | luajit-32309583e584b565d78d6be8218023cd53732cfe.tar.gz luajit-32309583e584b565d78d6be8218023cd53732cfe.tar.bz2 luajit-32309583e584b565d78d6be8218023cd53732cfe.zip |
Improve register allocation on x64.
Diffstat (limited to 'src')
-rw-r--r-- | src/lj_asm.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/src/lj_asm.c b/src/lj_asm.c index 34357e95..14d7dbd4 100644 --- a/src/lj_asm.c +++ b/src/lj_asm.c | |||
@@ -791,6 +791,11 @@ static Reg ra_allocref(ASMState *as, IRRef ref, RegSet allow) | |||
791 | pick &= ~as->modset; | 791 | pick &= ~as->modset; |
792 | r = rset_pickbot(pick); /* Reduce conflicts with inverse allocation. */ | 792 | r = rset_pickbot(pick); /* Reduce conflicts with inverse allocation. */ |
793 | } else { | 793 | } else { |
794 | #if LJ_64 | ||
795 | /* We've got plenty of regs, so get callee-save regs if possible. */ | ||
796 | if ((pick & ~RSET_SCRATCH)) | ||
797 | pick &= ~RSET_SCRATCH; | ||
798 | #endif | ||
794 | r = rset_picktop(pick); | 799 | r = rset_picktop(pick); |
795 | } | 800 | } |
796 | } else { | 801 | } else { |