From ecd3da07e1aff06fee8fff48022a6fb3a438b805 Mon Sep 17 00:00:00 2001 From: Tristan Gingold Date: Tue, 14 Sep 2021 19:11:48 +0200 Subject: ortho_code-x86-insns: handle OE_ADD R_I_Off + R_I. Fix #1864 --- src/ortho/mcode/ortho_code-x86-insns.adb | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'src/ortho/mcode') diff --git a/src/ortho/mcode/ortho_code-x86-insns.adb b/src/ortho/mcode/ortho_code-x86-insns.adb index ae69f29e7..182e79381 100644 --- a/src/ortho/mcode/ortho_code-x86-insns.adb +++ b/src/ortho/mcode/ortho_code-x86-insns.adb @@ -1767,6 +1767,13 @@ package body Ortho_Code.X86.Insns is | R_Any64 | Regs_R64 => Set_Expr_Reg (Stmt, R_Sib); + when R_I => + Num := Get_Insn_Num; + Free_Insn_Regs (Right); + Set_Expr_Reg + (Right, Alloc_Reg (R_Any32, Right, Num)); + Link_Stmt (Right); + Set_Expr_Reg (Stmt, R_Sib); when others => Error_Gen_Insn (Stmt, R_R); end case; -- cgit v1.2.3