diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/lj_asm.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/lj_asm.c b/src/lj_asm.c index 382f2aa0..ba34bff8 100644 --- a/src/lj_asm.c +++ b/src/lj_asm.c | |||
@@ -1307,7 +1307,7 @@ static Reg asm_fuseload(ASMState *as, IRRef ref, RegSet allow) | |||
1307 | } | 1307 | } |
1308 | } | 1308 | } |
1309 | if (!(as->freeset & allow) && | 1309 | if (!(as->freeset & allow) && |
1310 | (allow == RSET_EMPTY || ra_hasspill(ir->s) || ref < as->loopref)) | 1310 | (allow == RSET_EMPTY || ra_hasspill(ir->s) || iscrossref(as, ref))) |
1311 | goto fusespill; | 1311 | goto fusespill; |
1312 | return ra_allocref(as, ref, allow); | 1312 | return ra_allocref(as, ref, allow); |
1313 | } | 1313 | } |