aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGeoff Keating <geoffk@cygnus.com>2000-03-24 23:52:16 +0000
committerGeoffrey Keating <geoffk@gcc.gnu.org>2000-03-24 23:52:16 +0000
commit02ce8f4ef350fa87a6448f8f6c252c6f2af9cb7c (patch)
treed6d013c28be6c7e2e8abe0d03688f48fde659671
parent3477addf36f2f875671418b3cd2e933b749630a8 (diff)
downloadgcc-02ce8f4ef350fa87a6448f8f6c252c6f2af9cb7c.zip
gcc-02ce8f4ef350fa87a6448f8f6c252c6f2af9cb7c.tar.gz
gcc-02ce8f4ef350fa87a6448f8f6c252c6f2af9cb7c.tar.bz2
flow.c (propagate_block): When we delete an ADDR_VEC, also delete the BARRIER following it if there is one.
* flow.c (propagate_block): When we delete an ADDR_VEC, also delete the BARRIER following it if there is one. From-SVN: r32733
-rw-r--r--gcc/ChangeLog5
-rw-r--r--gcc/flow.c8
2 files changed, 13 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 2522508..dfd53dd 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,8 @@
+2000-03-24 Geoff Keating <geoffk@cygnus.com>
+
+ * flow.c (propagate_block): When we delete an ADDR_VEC,
+ also delete the BARRIER following it if there is one.
+
2000-03-24 Richard Henderson <rth@cygnus.com>
* builtins.c (expand_builtin_bzero): Convert `length' argument
diff --git a/gcc/flow.c b/gcc/flow.c
index cbf4a0e..69de658 100644
--- a/gcc/flow.c
+++ b/gcc/flow.c
@@ -3328,6 +3328,14 @@ propagate_block (bb, old, significant, flags)
PUT_CODE (next, NOTE);
NOTE_LINE_NUMBER (next) = NOTE_INSN_DELETED;
NOTE_SOURCE_FILE (next) = 0;
+
+ if ((next = next_nonnote_insn (label)) != NULL
+ && GET_CODE (next) == BARRIER)
+ {
+ PUT_CODE (next, NOTE);
+ NOTE_LINE_NUMBER (next) = NOTE_INSN_DELETED;
+ NOTE_SOURCE_FILE (next) = 0;
+ }
}
}
}