diff options
author | Doug Evans <dje@gnu.org> | 1993-04-23 18:17:39 +0000 |
---|---|---|
committer | Doug Evans <dje@gnu.org> | 1993-04-23 18:17:39 +0000 |
commit | a34a369b38e7400cc11a39d997b672355bfa3009 (patch) | |
tree | cf5d01715fbac51c3c50f94a3d77cfb07d0bab24 | |
parent | c9d28865eb6fe69dc440d9f6c37431dfc91fc4f9 (diff) | |
download | gcc-a34a369b38e7400cc11a39d997b672355bfa3009.zip gcc-a34a369b38e7400cc11a39d997b672355bfa3009.tar.gz gcc-a34a369b38e7400cc11a39d997b672355bfa3009.tar.bz2 |
(emit_reload_insns): Advance following_insn if it is a clobber,
not if the next insn is a clobber.
From-SVN: r4198
-rw-r--r-- | gcc/reload1.c | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/gcc/reload1.c b/gcc/reload1.c index ce8211f..0fccda4 100644 --- a/gcc/reload1.c +++ b/gcc/reload1.c @@ -5209,14 +5209,14 @@ emit_reload_insns (insn) && GET_CODE (PATTERN (PREV_INSN (before_insn))) == USE) before_insn = PREV_INSN (before_insn); - /* If this insn is followed by any CLOBBER insns made by find_reloads, + /* If INSN is followed by any CLOBBER insns made by find_reloads, put our reloads after them since they may otherwise be misinterpreted. */ - while (NEXT_INSN (following_insn) != 0 - && GET_CODE (NEXT_INSN (following_insn)) == INSN - && GET_MODE (NEXT_INSN (following_insn)) == DImode - && GET_CODE (PATTERN (NEXT_INSN (following_insn))) == CLOBBER) + while (GET_CODE (following_insn) == INSN + && GET_MODE (following_insn) == DImode + && GET_CODE (PATTERN (following_insn)) == CLOBBER + && NEXT_INSN (following_insn) != 0) following_insn = NEXT_INSN (following_insn); /* Now output the instructions to copy the data into and out of the |