flow.c (verify_flow_info): Added two more sanity checks.
Tue May 2 00:20:30 2000 Jason Eckhardt <jle@cygnus.com> * flow.c (verify_flow_info): Added two more sanity checks. The first checks that the blocks are numbered consecutively. The second checks that n_basic_blocks is actually equal to the number of basic blocks in the insn chain. From-SVN: r33632
This commit is contained in:
parent
754ac8f7b2
commit
18ca529b19
@ -1,3 +1,10 @@
|
|||||||
|
Tue May 2 00:20:30 2000 Jason Eckhardt <jle@cygnus.com>
|
||||||
|
|
||||||
|
* flow.c (verify_flow_info): Added two more sanity checks. The
|
||||||
|
first checks that the blocks are numbered consecutively. The second
|
||||||
|
checks that n_basic_blocks is actually equal to the number of
|
||||||
|
basic blocks in the insn chain.
|
||||||
|
|
||||||
2000-05-03 Zack Weinberg <zack@wolery.cumb.org>
|
2000-05-03 Zack Weinberg <zack@wolery.cumb.org>
|
||||||
|
|
||||||
* cpplib.h: Add accessor macros for token lists.
|
* cpplib.h: Add accessor macros for token lists.
|
||||||
|
18
gcc/flow.c
18
gcc/flow.c
@ -6177,7 +6177,7 @@ verify_flow_info ()
|
|||||||
const rtx rtx_first = get_insns ();
|
const rtx rtx_first = get_insns ();
|
||||||
basic_block *bb_info;
|
basic_block *bb_info;
|
||||||
rtx x;
|
rtx x;
|
||||||
int i, err = 0;
|
int i, last_bb_num_seen, num_bb_notes, err = 0;
|
||||||
|
|
||||||
bb_info = (basic_block *) xcalloc (max_uid, sizeof (basic_block));
|
bb_info = (basic_block *) xcalloc (max_uid, sizeof (basic_block));
|
||||||
|
|
||||||
@ -6340,9 +6340,21 @@ verify_flow_info ()
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
last_bb_num_seen = -1;
|
||||||
|
num_bb_notes = 0;
|
||||||
x = rtx_first;
|
x = rtx_first;
|
||||||
while (x)
|
while (x)
|
||||||
{
|
{
|
||||||
|
if (GET_CODE (x) == NOTE
|
||||||
|
&& NOTE_LINE_NUMBER (x) == NOTE_INSN_BASIC_BLOCK)
|
||||||
|
{
|
||||||
|
basic_block bb = NOTE_BASIC_BLOCK (x);
|
||||||
|
num_bb_notes++;
|
||||||
|
if (bb->index != last_bb_num_seen + 1)
|
||||||
|
fatal ("Basic blocks not numbered consecutively");
|
||||||
|
last_bb_num_seen = bb->index;
|
||||||
|
}
|
||||||
|
|
||||||
if (!bb_info[INSN_UID (x)])
|
if (!bb_info[INSN_UID (x)])
|
||||||
{
|
{
|
||||||
switch (GET_CODE (x))
|
switch (GET_CODE (x))
|
||||||
@ -6378,6 +6390,10 @@ verify_flow_info ()
|
|||||||
x = NEXT_INSN (x);
|
x = NEXT_INSN (x);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (num_bb_notes != n_basic_blocks)
|
||||||
|
fatal ("number of bb notes in insn chain (%d) != n_basic_blocks (%d)",
|
||||||
|
num_bb_notes, n_basic_blocks);
|
||||||
|
|
||||||
if (err)
|
if (err)
|
||||||
abort ();
|
abort ();
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user