This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: PATCH: PR2912
- To: Mark Mitchell <mark at codesourcery dot com>
- Subject: Re: PATCH: PR2912
- From: Richard Henderson <rth at redhat dot com>
- Date: Fri, 25 May 2001 11:24:50 -0700
- Cc: gcc-patches at gcc dot gnu dot org
- References: <20010525021457S.mitchell@codesourcery.com>
On Fri, May 25, 2001 at 02:14:57AM -0700, Mark Mitchell wrote:
> This patch fixes the problem with the new x86 peepholes.
Here is a more proper fix, as discussed in the gcc@gcc thread.
Applied everywhere.
r~
Index: i386.md
===================================================================
RCS file: /cvs/gcc/gcc/gcc/config/i386/i386.md,v
retrieving revision 1.204.2.12
diff -u -p -r1.204.2.12 i386.md
--- i386.md 2001/05/25 09:06:05 1.204.2.12
+++ i386.md 2001/05/25 18:00:26
@@ -11592,7 +11592,7 @@
(set (reg 17)
(compare (match_dup 7) (match_dup 8)))
]
- ""
+ "peep2_reg_dead_p (4, operands[7]) && peep2_reg_dead_p (4, operands[8])"
[(parallel[
(set (reg:CC 17)
(compare:CC (mem:BLK (match_dup 4))
@@ -11602,9 +11602,7 @@
(use (reg:SI 19))
(clobber (match_dup 0))
(clobber (match_dup 1))
- (clobber (match_dup 2))])
- (clobber (match_dup 7))
- (clobber (match_dup 8))]
+ (clobber (match_dup 2))])]
"")
;; ...and this one handles cmpstr*_1.
@@ -11629,7 +11627,7 @@
(set (reg 17)
(compare (match_dup 7) (match_dup 8)))
]
- ""
+ "peep2_reg_dead_p (4, operands[7]) && peep2_reg_dead_p (4, operands[8])"
[(parallel[
(set (reg:CC 17)
(if_then_else:CC (ne (match_dup 6)
@@ -11642,9 +11640,7 @@
(use (reg:SI 19))
(clobber (match_dup 0))
(clobber (match_dup 1))
- (clobber (match_dup 2))])
- (clobber (match_dup 7))
- (clobber (match_dup 8))]
+ (clobber (match_dup 2))])]
"")