[PATCH] Fix PR32586, restore combining of conversions in SCCVN

Richard Guenther rguenther@suse.de
Fri Sep 7 21:32:00 GMT 2007


On Fri, 7 Sep 2007, Eric Botcazou wrote:

> > I declare it bad memory in the machine I tested on.  I cannot reproduce
> > it on two others and thus have re-applied the SCCVN patch.
> 
> The aliasing issue in raise-gcc.c comes from a glitch on our side.  But
>    http://gcc.gnu.org/ml/gcc/2007-09/msg00094.html

On the "bad" machine I can reproduce the miscompare the difference is

--- stage2-gcc/cfgloopmanip.s	2007-09-07 21:58:09.000000000 +0200
+++ stage3-gcc/cfgloopmanip.s	2007-09-07 21:58:30.000000000 +0200
@@ -1,5 +1,5 @@
 
-stage2-gcc/cfgloopmanip.o:     file format elf32-i386
+stage3-gcc/cfgloopmanip.o:     file format elf32-i386
 
 Disassembly of section .text:
 
@@ -3839,8 +3839,8 @@
     351f:	89 c1                	mov    %eax,%ecx
     3521:	e9 6b ff ff ff       	jmp    3491 <force_single_succ_latches+0x51>
     3526:	31 db                	xor    %ebx,%ebx
-    3528:	3b 1e                	cmp    (%esi),%ebx
-    352a:	72 14                	jb     3540 <force_single_succ_latches+0x100>
+    3528:	39 1e                	cmp    %ebx,(%esi)
+    352a:	77 14                	ja     3540 <force_single_succ_latches+0x100>
     352c:	89 34 24             	mov    %esi,(%esp)
     352f:	e8 fc ff ff ff       	call   3530 <force_single_succ_latches+0xf0>
     3534:	8b 3d 00 00 00 00    	mov    0x0,%edi
@@ -3880,8 +3880,8 @@
     359b:	83 c2 04             	add    $0x4,%edx
     359e:	85 c0                	test   %eax,%eax
     35a0:	75 b8                	jne    355a <force_single_succ_latches+0x11a>
-    35a2:	3b 1e                	cmp    (%esi),%ebx
-    35a4:	73 86                	jae    352c <force_single_succ_latches+0xec>
+    35a2:	39 1e                	cmp    %ebx,(%esi)
+    35a4:	76 86                	jbe    352c <force_single_succ_latches+0xec>
     35a6:	8b 47 18             	mov    0x18(%edi),%eax
     35a9:	8b 0a                	mov    (%edx),%ecx
     35ab:	8b 40 04             	mov    0x4(%eax),%eax



More information about the Gcc-patches mailing list