This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Bootstrap miscomparison on mainline with checking disabled



On May 19, 2004, at 12:35, law@redhat.com wrote:


In message <1084983955.3630.262.camel@localhost.localdomain>, Diego Novillo wri
tes:
On Wed, 2004-05-19 at 12:08, law@redhat.com wrote:

It is the phiopt changes.  I've got a handle on it.
jeff

Thanks.  I wonder if they may be also related to the number of
regressions we got on ppc.  The --enable-checking bootstrap on
powerpc-unknown-linux-gnu worked fine, but we are getting these
regressions.

I don't think these regressions are due to the phiopt changes, though.
Most of the new failures are link errors for symbols not found.  Like
gcc.c-torture/execute/20001130-1.c
It's possible if the stage1 compiler mis-compiled the stage2 compiler in
a fun an interesting way.


I've got a fix going through testing now.

I also have a fix, it looks like the following, does yours looks the same also?
Index: tree-ssa-phiopt.c
===================================================================
RCS file: /cvs/gcc/gcc/gcc/tree-ssa-phiopt.c,v
retrieving revision 2.6
diff -u -p -r2.6 tree-ssa-phiopt.c
--- tree-ssa-phiopt.c 19 May 2004 03:35:10 -0000 2.6
+++ tree-ssa-phiopt.c 19 May 2004 16:37:43 -0000
@@ -461,11 +461,12 @@ value_replacement (basic_block bb, tree
|| (operand_equal_p (arg1, TREE_OPERAND (cond, 0), 0)
&& operand_equal_p (arg0, TREE_OPERAND (cond, 1), 0)))
{
- edge e;
+ edge e, e1;
tree arg;


       e = (TREE_CODE (cond) == NE_EXPR ? true_edge : false_edge);
-      if (PHI_ARG_EDGE (phi, 0) == e)
+      e1 = (TREE_CODE (cond) == NE_EXPR ? false_edge : true_edge);
+      if (PHI_ARG_EDGE (phi, 0) == e || PHI_ARG_EDGE (phi, 1) == e1)
 	arg = arg0;
       else
 	arg = arg1;


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]