diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/lj_asm_x86.h | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/src/lj_asm_x86.h b/src/lj_asm_x86.h index 4465efa2..2bf9d939 100644 --- a/src/lj_asm_x86.h +++ b/src/lj_asm_x86.h | |||
| @@ -485,7 +485,8 @@ static Reg asm_fuseload(ASMState *as, IRRef ref, RegSet allow) | |||
| 485 | asm_fusexref(as, ir->op1, xallow); | 485 | asm_fusexref(as, ir->op1, xallow); |
| 486 | return RID_MRM; | 486 | return RID_MRM; |
| 487 | } | 487 | } |
| 488 | } else if (ir->o == IR_VLOAD && !(LJ_GC64 && irt_isaddr(ir->t))) { | 488 | } else if (ir->o == IR_VLOAD && IR(ir->op1)->o == IR_AREF && |
| 489 | !(LJ_GC64 && irt_isaddr(ir->t))) { | ||
| 489 | asm_fuseahuref(as, ir->op1, xallow); | 490 | asm_fuseahuref(as, ir->op1, xallow); |
| 490 | as->mrm.ofs += 8 * ir->op2; | 491 | as->mrm.ofs += 8 * ir->op2; |
| 491 | return RID_MRM; | 492 | return RID_MRM; |
