From: Mike Pall Date: Wed, 27 Jul 2022 09:32:33 +0000 (+0200) Subject: x86/x64: Limit VLOAD fusion to simple cases. X-Git-Tag: v2.1.ROLLING~53 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=e1339aed3db2fb8488a170383fc456fe04879709;p=thirdparty%2FLuaJIT.git x86/x64: Limit VLOAD fusion to simple cases. Reported by ccagml. --- 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) asm_fusexref(as, ir->op1, xallow); return RID_MRM; } - } else if (ir->o == IR_VLOAD && !(LJ_GC64 && irt_isaddr(ir->t))) { + } else if (ir->o == IR_VLOAD && IR(ir->op1)->o == IR_AREF && + !(LJ_GC64 && irt_isaddr(ir->t))) { asm_fuseahuref(as, ir->op1, xallow); as->mrm.ofs += 8 * ir->op2; return RID_MRM;