This is the mail archive of the gcc-bugs@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]

[Bug middle-end/37053] [4.3/4.4 regression] ICE in reload_cse_simplify_operands, at postreload.c:395



------- Comment #5 from schwab at suse dot de  2008-09-16 21:00 -------
Reverting this change in commutative_operand_precedence fixes the testcase:

     case RTX_OBJ:
       /* Complex expressions should be the first, so decrease priority
-         of objects.  */
-      return -1;
+         of objects.  Prefer pointer objects over non pointer objects.  */
+      if ((REG_P (op) && REG_POINTER (op))
+         || (MEM_P (op) && MEM_POINTER (op)))
+       return -1;
+      return -2;

     case RTX_COMM_ARITH:
       /* Prefer operands that are themselves commutative to be first.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=37053


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