reload1.c (reload_as_needed): Allow a USE in asm reloads.
authorAlan Modra <amodra@bigpond.net.au>
Fri, 28 Mar 2003 23:21:21 +0000 (23:21 +0000)
committerAlan Modra <amodra@gcc.gnu.org>
Fri, 28 Mar 2003 23:21:21 +0000 (09:51 +1030)
* reload1.c (reload_as_needed): Allow a USE in asm reloads.

* loop.c: (find_mem_in_note_1, find_mem_in_note): Comment.

From-SVN: r64991

gcc/ChangeLog
gcc/loop.c
gcc/reload1.c

index 757f7c0282a7493e21554691a8da19f3e5359e21..b345fd7dfed25574379e75361d179c9783f1badd 100644 (file)
@@ -1,3 +1,9 @@
+2003-03-29  Alan Modra  <amodra@bigpond.net.au>
+
+       * reload1.c (reload_as_needed): Allow a USE in asm reloads.
+
+       * loop.c: (find_mem_in_note_1, find_mem_in_note): Comment.
+
 2003-03-28  Nathanael Nerode  <neroden@gcc.gnu.org>
 
        * configure.in: Clarify comments.
index 7feb77de562aca7a0d33044ca6d286fb787a225a..35ed161f8d63e1dd90327c5504db147159af7981 100644 (file)
@@ -10400,6 +10400,8 @@ try_swap_copy_prop (loop, replacement, regno)
     }
 }
 
+/* Worker function for find_mem_in_note, called via for_each_rtx.  */
+
 static int
 find_mem_in_note_1 (x, data)
      rtx *x;
@@ -10414,6 +10416,8 @@ find_mem_in_note_1 (x, data)
   return 0;
 }
 
+/* Returns the first MEM found in NOTE by depth-first search.  */
+
 static rtx
 find_mem_in_note (note)
      rtx note;
index de995a0ee4b769818f71f59dfd233535066c7af2..1ae89902b9d92dd5bf6f52cfd770fbc577b3e77a 100644 (file)
@@ -3940,6 +3940,7 @@ reload_as_needed (live_known)
              if (asm_noperands (PATTERN (insn)) >= 0)
                for (p = NEXT_INSN (prev); p != next; p = NEXT_INSN (p))
                  if (p != insn && INSN_P (p)
+                     && GET_CODE (PATTERN (p)) != USE
                      && (recog_memoized (p) < 0
                          || (extract_insn (p), ! constrain_operands (1))))
                    {