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/42509] [4.5 Regression] bootstrap failure in stage3 (integer overflow in preprocessor expression)



------- Comment #24 from rguenth at gcc dot gnu dot org  2010-04-02 15:20 -------
Alternative patch as suggested by Richard on IRC - it doesn't make sense to
retain MEM_EXPR w/o MEM_OFFSET.

Index: gcc/cfgcleanup.c
===================================================================
--- gcc/cfgcleanup.c    (revision 157942)
+++ gcc/cfgcleanup.c    (working copy)
@@ -891,18 +891,14 @@ merge_memattrs (rtx x, rtx y)
              set_mem_alias_set (y, 0);
            }

-         if (! mem_expr_equal_p (MEM_EXPR (x), MEM_EXPR (y)))
+         if (! mem_expr_equal_p (MEM_EXPR (x), MEM_EXPR (y))
+             || MEM_OFFSET (x) != MEM_OFFSET (y))
            {
              set_mem_expr (x, 0);
              set_mem_expr (y, 0);
              set_mem_offset (x, 0);
              set_mem_offset (y, 0);
            }
-         else if (MEM_OFFSET (x) != MEM_OFFSET (y))
-           {
-             set_mem_offset (x, 0);
-             set_mem_offset (y, 0);
-           }

          if (!MEM_SIZE (x))
            mem_size = NULL_RTX;


-- 

rguenth at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|rguenther at suse dot de    |jakub at gcc dot gnu dot
                   |                            |org, rguenth at gcc dot gnu
                   |                            |dot org


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


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