From 8f7fd2da87a58c0dea0ee3916e7a88d606ba2d20 Mon Sep 17 00:00:00 2001 From: Harsha Jagasia Date: Sat, 16 Jan 2010 14:46:19 +0000 Subject: [PATCH] re PR target/42664 (ICE on compilation of polyhedron benchmarks with -mfma4) Fix PR42664. 2010-01-16 Harsha Jagasia PR target/42664 * config/i386/i386.c (ix86_fixup_binary_operands): Revert FMA4 fixup of operands. From-SVN: r155964 --- gcc/ChangeLog | 6 ++++++ gcc/config/i386/i386.c | 10 ---------- 2 files changed, 6 insertions(+), 10 deletions(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index f73bb9139fa..3173213702e 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2010-01-16 Harsha Jagasia + + PR target/42664 + * config/i386/i386.c (ix86_fixup_binary_operands): + Revert FMA4 fixup of operands. + 2010-01-16 Ralf Wildenhues PR gcc/42525 diff --git a/gcc/config/i386/i386.c b/gcc/config/i386/i386.c index 1926c504ad1..6b1c9b9c61f 100644 --- a/gcc/config/i386/i386.c +++ b/gcc/config/i386/i386.c @@ -13387,16 +13387,6 @@ ix86_fixup_binary_operands (enum rtx_code code, enum machine_mode mode, if (MEM_P (src1) && !rtx_equal_p (dst, src1)) src1 = force_reg (mode, src1); - /* In order for the multiply-add patterns to get matched, we need - to aid combine by forcing all operands into registers to start. */ - if (optimize && TARGET_FMA4) - { - if (MEM_P (src2)) - src2 = force_reg (GET_MODE (src2), src2); - else if (MEM_P (src1)) - src1 = force_reg (GET_MODE (src1), src1); - } - operands[1] = src1; operands[2] = src2; return dst; -- 2.30.2