2013-01-16 Vladimir Makarov <vmakarov@redhat.com>
authorvmakarov <vmakarov@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 16 Jan 2013 18:27:58 +0000 (18:27 +0000)
committervmakarov <vmakarov@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 16 Jan 2013 18:27:58 +0000 (18:27 +0000)
PR rtl-optimization/56005
* sched-deps.c (sched_analyze_2): Check deps->readonly for adding
pending reads for prefetch.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@195247 138bc75d-0d04-0410-961f-82ee72b054a4

gcc/ChangeLog
gcc/sched-deps.c

index 2205dc4..41a4b42 100644 (file)
@@ -1,3 +1,9 @@
+2013-01-16  Vladimir Makarov  <vmakarov@redhat.com>
+
+       PR rtl-optimization/56005
+       * sched-deps.c (sched_analyze_2): Check deps->readonly for adding
+       pending reads for prefetch.
+
 2013-01-16  Ian Bolton  <ian.bolton@arm.com>
 
        * gcc/config/aarch64/aarch64.md
index 3f37aa0..2b40286 100644 (file)
@@ -2719,8 +2719,9 @@ sched_analyze_2 (struct deps_desc *deps, rtx x, rtx insn)
         to generate accurate dependencies for prefetch insns as
         prefetch has only the start address but it is better to have
         something than nothing.  */
-      add_insn_mem_dependence (deps, true, insn,
-                              gen_rtx_MEM (Pmode, XEXP (PATTERN (insn), 0)));
+      if (!deps->readonly)
+       add_insn_mem_dependence (deps, true, insn,
+                                gen_rtx_MEM (Pmode, XEXP (PATTERN (insn), 0)));
       break;
 
     case UNSPEC_VOLATILE: