From ed1db00021b18efad27df0fd0c348abb3fa3317a Mon Sep 17 00:00:00 2001 From: "H.J. Lu" Date: Wed, 30 Jun 2010 09:47:25 +0000 Subject: [PATCH] re PR bootstrap/44721 (Failed to bootstrap (ICE in extract_insn, at recog.c:2127)) 2010-06-30 H.J. Lu PR target/44721 * config/i386/i386.md (peephole2 for arithmetic ops with memory): Fix last commit. From-SVN: r161594 --- gcc/ChangeLog | 6 ++++++ gcc/config/i386/i386.md | 9 ++++++--- 2 files changed, 12 insertions(+), 3 deletions(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index bd7f730d6c2..4d3dd575720 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2010-06-30 H.J. Lu + + PR target/44721 + * config/i386/i386.md (peephole2 for arithmetic ops with memory): + Fix last commit. + 2010-06-30 Nick Clifton * config/rx/rx-modes.def: New file. diff --git a/gcc/config/i386/i386.md b/gcc/config/i386/i386.md index 7003f5225f3..c450c384a5b 100644 --- a/gcc/config/i386/i386.md +++ b/gcc/config/i386/i386.md @@ -17558,7 +17558,7 @@ ;; leal (%edx,%eax,4), %eax (define_peephole2 - [(match_scratch:SI 5 "r") + [(match_scratch:P 5 "r") (parallel [(set (match_operand 0 "register_operand" "") (ashift (match_operand 1 "register_operand" "") (match_operand 2 "const_int_operand" ""))) @@ -17587,9 +17587,12 @@ operands[1] = gen_rtx_PLUS (Pmode, base, gen_rtx_MULT (Pmode, index, GEN_INT (scale))); - if (mode != Pmode) - operands[1] = gen_rtx_SUBREG (mode, operands[1], 0); operands[5] = base; + if (mode != Pmode) + { + operands[1] = gen_rtx_SUBREG (mode, operands[1], 0); + operands[5] = gen_rtx_SUBREG (mode, operands[5], 0); + } operands[0] = dest; }) -- 2.30.2