X-Git-Url: http://nsz.repo.hu/git/?a=blobdiff_plain;f=ir%2Fbe%2Fia32%2Fia32_intrinsics.c;h=572fd0ca5658928e302285ac21310388590a070b;hb=e86f1bc36650e0978d66ffb5fcd347a525840655;hp=2dd97f396bc01e455a3910180527614d04fa55a5;hpb=e1397b01aceb38b6bb62c319007146af3b922f39;p=libfirm diff --git a/ir/be/ia32/ia32_intrinsics.c b/ir/be/ia32/ia32_intrinsics.c index 2dd97f396..572fd0ca5 100644 --- a/ir/be/ia32/ia32_intrinsics.c +++ b/ir/be/ia32/ia32_intrinsics.c @@ -570,13 +570,13 @@ static int map_Mul(ir_node *call, void *ctx) { /* handle the often used case of 32x32=64 mul */ if (is_sign_extend(a_l, a_h) && is_sign_extend(b_l, b_h)) { mul = new_bd_ia32_l_IMul(dbg, block, a_l, b_l); - h_res = new_rd_Proj(dbg, block, mul, h_mode, pn_ia32_l_Mul_EDX); - l_res = new_rd_Proj(dbg, block, mul, l_mode, pn_ia32_l_Mul_EAX); + h_res = new_rd_Proj(dbg, block, mul, h_mode, pn_ia32_l_IMul_res_high); + l_res = new_rd_Proj(dbg, block, mul, l_mode, pn_ia32_l_IMul_res_low); } else { /* note that zero extension is handled hare efficiently */ mul = new_bd_ia32_l_Mul(dbg, block, a_l, b_l); - pEDX = new_rd_Proj(dbg, block, mul, h_mode, pn_ia32_l_Mul_EDX); - l_res = new_rd_Proj(dbg, block, mul, l_mode, pn_ia32_l_Mul_EAX); + pEDX = new_rd_Proj(dbg, block, mul, h_mode, pn_ia32_l_Mul_res_high); + l_res = new_rd_Proj(dbg, block, mul, l_mode, pn_ia32_l_Mul_res_low); b_l = new_rd_Conv(dbg, block, b_l, h_mode); mul = new_rd_Mul( dbg, block, a_h, b_l, h_mode);