aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorHans-Peter Nilsson <hp@bitrange.com>2004-10-20 00:23:16 +0000
committerHans-Peter Nilsson <hp@gcc.gnu.org>2004-10-20 00:23:16 +0000
commit9524880c99719df9b760d9a3b62fca2dfaaebf46 (patch)
treee75e4f0aa1a4648195bdf85e2f1dbbaa94779077 /gcc
parenta47498de5390897528edf49ff8e7988a0e973243 (diff)
downloadgcc-9524880c99719df9b760d9a3b62fca2dfaaebf46.zip
gcc-9524880c99719df9b760d9a3b62fca2dfaaebf46.tar.gz
gcc-9524880c99719df9b760d9a3b62fca2dfaaebf46.tar.bz2
cfgrtl.c (rtl_verify_flow_info_1): When checking insns in a bb, don't inspect BLOCK_FOR_INSN for barriers.
* cfgrtl.c (rtl_verify_flow_info_1): When checking insns in a bb, don't inspect BLOCK_FOR_INSN for barriers. * emit-rtl.c (emit_barrier_before): Revert last change. (emit_barrier_after, emit_barrier): Ditto. From-SVN: r89308
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog5
-rw-r--r--gcc/cfgrtl.c5
-rw-r--r--gcc/emit-rtl.c3
3 files changed, 7 insertions, 6 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 561d864..fc8dd26 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,5 +1,10 @@
2004-10-20 Hans-Peter Nilsson <hp@bitrange.com>
+ * cfgrtl.c (rtl_verify_flow_info_1): When checking insns in a bb,
+ don't inspect BLOCK_FOR_INSN for barriers.
+ * emit-rtl.c (emit_barrier_before): Revert last change.
+ (emit_barrier_after, emit_barrier): Ditto.
+
* doc/extend.texi (Extended Asm): Warn and provide example
solution for using a call-clobbered asm register.
(Local Reg Vars): Similar. Cross-reference example.
diff --git a/gcc/cfgrtl.c b/gcc/cfgrtl.c
index 5361cd9..9a96658 100644
--- a/gcc/cfgrtl.c
+++ b/gcc/cfgrtl.c
@@ -2075,9 +2075,8 @@ rtl_verify_flow_info_1 (void)
for (x = BB_HEAD (bb); x != NEXT_INSN (BB_END (bb)); x = NEXT_INSN (x))
/* We may have a barrier inside a basic block before dead code
- elimination. They always have a NULL BLOCK_FOR_INSN. */
- if (BLOCK_FOR_INSN (x) != bb
- && !(BARRIER_P (x) && BLOCK_FOR_INSN (x) == NULL))
+ elimination. There is no BLOCK_FOR_INSN field in a barrier. */
+ if (!BARRIER_P (x) && BLOCK_FOR_INSN (x) != bb)
{
debug_rtx (x);
if (! BLOCK_FOR_INSN (x))
diff --git a/gcc/emit-rtl.c b/gcc/emit-rtl.c
index d81d71c..ec7bec3 100644
--- a/gcc/emit-rtl.c
+++ b/gcc/emit-rtl.c
@@ -4057,7 +4057,6 @@ emit_barrier_before (rtx before)
rtx insn = rtx_alloc (BARRIER);
INSN_UID (insn) = cur_insn_uid++;
- BLOCK_FOR_INSN (insn) = NULL;
add_insn_before (insn, before);
return insn;
@@ -4273,7 +4272,6 @@ emit_barrier_after (rtx after)
rtx insn = rtx_alloc (BARRIER);
INSN_UID (insn) = cur_insn_uid++;
- BLOCK_FOR_INSN (insn) = NULL;
add_insn_after (insn, after);
return insn;
@@ -4670,7 +4668,6 @@ emit_barrier (void)
{
rtx barrier = rtx_alloc (BARRIER);
INSN_UID (barrier) = cur_insn_uid++;
- BLOCK_FOR_INSN (barrier) = NULL;
add_insn (barrier);
return barrier;
}