]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
haifa-sched.c (sched_analyze): Put all JUMP_INSNs on the last pending memory flush...
authorJeffrey A Law <law@cygnus.com>
Tue, 18 Aug 1998 21:57:14 +0000 (21:57 +0000)
committerJeff Law <law@gcc.gnu.org>
Tue, 18 Aug 1998 21:57:14 +0000 (15:57 -0600)
        * haifa-sched.c (sched_analyze): Put all JUMP_INSNs on the last
        pending memory flush list.

From-SVN: r21835

gcc/ChangeLog
gcc/haifa-sched.c

index 628d82648949aa49fedc2e64bfb88bd8fed5c33c..6f05e8c4b4fa32a522ea5864d7b994ad071478c1 100644 (file)
@@ -4,6 +4,9 @@ Tue Aug 18 13:05:59 BST 1998  Richard Earnshaw (rearnsha@arm.com)
 
 Tue Aug 18 10:32:11 1998  Jeffrey A Law  (law@cygnus.com)
 
+       * haifa-sched.c (sched_analyze): Put all JUMP_INSNs on the last
+       pending memory flush list.
+
        * regmove.c (fixup_match_2): Do not call reg_overlap_mentioned_p
        on notes.
 
index 23a7865468e0775059eb3613726d9057af659e46..0eebda9e38a5f3b2da4982489eadb22222305ebc 100644 (file)
@@ -3813,6 +3813,10 @@ sched_analyze (head, tail)
     {
       if (GET_CODE (insn) == INSN || GET_CODE (insn) == JUMP_INSN)
        {
+         /* Make each JUMP_INSN a scheduling barrier for memory references.  */
+         if (GET_CODE (insn) == JUMP_INSN)
+           last_pending_memory_flush
+             = alloc_INSN_LIST (insn, last_pending_memory_flush);
          sched_analyze_insn (PATTERN (insn), insn, loop_notes);
          loop_notes = 0;
        }