aboutsummaryrefslogtreecommitdiff
path: root/gcc/emit-rtl.c
diff options
context:
space:
mode:
authorRichard Sandiford <rdsandiford@googlemail.com>2011-05-29 17:40:05 +0000
committerRichard Sandiford <rsandifo@gcc.gnu.org>2011-05-29 17:40:05 +0000
commit65f3dedbd51ea84b4db65e481b0cfd81aa183437 (patch)
treefbeaf02efa3bfee2fcf860e47c2a245d85ca03a5 /gcc/emit-rtl.c
parent61e374ab766ee2ed03093656f04ca7e8228a3450 (diff)
downloadgcc-65f3dedbd51ea84b4db65e481b0cfd81aa183437.zip
gcc-65f3dedbd51ea84b4db65e481b0cfd81aa183437.tar.gz
gcc-65f3dedbd51ea84b4db65e481b0cfd81aa183437.tar.bz2
emit-rtl.c (try_split): Use a loop to search for NOTE_INSN_CALL_ARG_LOCATIONs.
gcc/ * emit-rtl.c (try_split): Use a loop to search for NOTE_INSN_CALL_ARG_LOCATIONs. gcc/testsuite/ From Ryan Mansfield * gcc.dg/pr48826.c: New test. From-SVN: r174401
Diffstat (limited to 'gcc/emit-rtl.c')
-rw-r--r--gcc/emit-rtl.c11
1 files changed, 5 insertions, 6 deletions
diff --git a/gcc/emit-rtl.c b/gcc/emit-rtl.c
index 988072b..f760a1b 100644
--- a/gcc/emit-rtl.c
+++ b/gcc/emit-rtl.c
@@ -3494,16 +3494,15 @@ try_split (rtx pat, rtx trial, int last)
we must move any following NOTE_INSN_CALL_ARG_LOCATION note
so that it comes immediately after the new call. */
if (NEXT_INSN (insn))
- {
- next = NEXT_INSN (trial);
- if (next
- && NOTE_P (next)
- && NOTE_KIND (next) == NOTE_INSN_CALL_ARG_LOCATION)
+ for (next = NEXT_INSN (trial);
+ next && NOTE_P (next);
+ next = NEXT_INSN (next))
+ if (NOTE_KIND (next) == NOTE_INSN_CALL_ARG_LOCATION)
{
remove_insn (next);
add_insn_after (next, insn, NULL);
+ break;
}
- }
}
}