]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
cselib.c (cselib_init): Use special MEM rtx form for callmem.
authorSteven Bosscher <steven@gcc.gnu.org>
Thu, 30 Nov 2006 07:24:03 +0000 (07:24 +0000)
committerSteven Bosscher <steven@gcc.gnu.org>
Thu, 30 Nov 2006 07:24:03 +0000 (07:24 +0000)
* cselib.c (cselib_init): Use special MEM rtx form for callmem.
* alias.c (canon_true_dependence): Update comment.

From-SVN: r119358

gcc/ChangeLog
gcc/alias.c
gcc/cselib.c

index dd83c8e84ccb8bbc3d78c4021617393a8058fa0e..9a5419e9f779691979412c4d72958eefd6023f42 100644 (file)
@@ -1,3 +1,8 @@
+2006-11-30  Steven Bosscher  <steven@gcc.gnu.org>
+
+       * cselib.c (cselib_init): Use special MEM rtx form for callmem.
+       * alias.c (canon_true_dependence): Update comment.
+
 2006-11-30  Steven Bosscher  <steven@gcc.gnu.org>
 
        * cgraphunit.c (cgraph_finalize_compilation_unit): Add a newline
index a3634ac1f93fe8c30ff56fe9b7a9f165cb43d419..7a36284cb3af36c02cbb7c49942ed55d295242e0 100644 (file)
@@ -2151,7 +2151,7 @@ true_dependence (rtx mem, enum machine_mode mem_mode, rtx x,
     return 1;
 
   /* (mem:BLK (scratch)) is a special mechanism to conflict with everything.
-     This is used in epilogue deallocation functions.  */
+     This is used in epilogue deallocation functions, and in cselib.  */
   if (GET_MODE (x) == BLKmode && GET_CODE (XEXP (x, 0)) == SCRATCH)
     return 1;
   if (GET_MODE (mem) == BLKmode && GET_CODE (XEXP (mem, 0)) == SCRATCH)
index 4070da7c01f06b7f94895086eb5f8c8b18f11c14..460538857214d7e5d789327521358a061df7b51a 100644 (file)
@@ -1473,9 +1473,11 @@ cselib_init (bool record_memory)
                                       sizeof (cselib_val), 10);
   value_pool = create_alloc_pool ("value", RTX_CODE_SIZE (VALUE), 100);
   cselib_record_memory = record_memory;
-  /* This is only created once.  */
+
+  /* (mem:BLK (scratch)) is a special mechanism to conflict with everything,
+     see canon_true_dependence.  This is only created once.  */
   if (! callmem)
-    callmem = gen_rtx_MEM (BLKmode, const0_rtx);
+    callmem = gen_rtx_MEM (BLKmode, gen_rtx_SCRATCH (VOIDmode));
 
   cselib_nregs = max_reg_num ();