basic-block.h (dump_bb_data): Remove declaration.
* basic-block.h (dump_bb_data): Remove declaration. * flow.c (dump_bb_data): Remove function. * sbitmap.c (sbitmap_intersect_of_predsucc): Delete function. (sbitmap_union_of_predsucc): Likewise. From-SVN: r30530
This commit is contained in:
parent
b71a2ff8fc
commit
38e90e6c3b
4 changed files with 5 additions and 170 deletions
|
@ -1,5 +1,10 @@
|
|||
Sun Nov 14 23:11:05 1999 Jeffrey A Law (law@cygnus.com)
|
||||
|
||||
* basic-block.h (dump_bb_data): Remove declaration.
|
||||
* flow.c (dump_bb_data): Remove function.
|
||||
* sbitmap.c (sbitmap_intersect_of_predsucc): Delete function.
|
||||
(sbitmap_union_of_predsucc): Likewise.
|
||||
|
||||
* gcse.c (delete_null_pointer_checks_1): Kill unused s_preds
|
||||
argument. All callers changed.
|
||||
(delete_null_pointer_checks_1): No longer need to compute the
|
||||
|
|
|
@ -247,8 +247,6 @@ extern void compute_bb_for_insn PROTO ((int));
|
|||
extern void set_block_for_insn PROTO ((rtx, basic_block));
|
||||
extern void set_block_num PROTO ((rtx, int));
|
||||
|
||||
extern void dump_bb_data PROTO ((FILE *, int_list_ptr *,
|
||||
int_list_ptr *, int));
|
||||
extern void free_bb_mem PROTO ((void));
|
||||
extern void free_basic_block_vars PROTO ((int));
|
||||
|
||||
|
|
48
gcc/flow.c
48
gcc/flow.c
|
@ -5261,54 +5261,6 @@ compute_preds_succs (s_preds, s_succs, num_preds, num_succs)
|
|||
num_preds, num_succs);
|
||||
}
|
||||
|
||||
void
|
||||
dump_bb_data (file, preds, succs, live_info)
|
||||
FILE *file;
|
||||
int_list_ptr *preds;
|
||||
int_list_ptr *succs;
|
||||
int live_info;
|
||||
{
|
||||
int bb;
|
||||
int_list_ptr p;
|
||||
|
||||
fprintf (file, "BB data\n\n");
|
||||
for (bb = 0; bb < n_basic_blocks; bb++)
|
||||
{
|
||||
fprintf (file, "BB %d, start %d, end %d\n", bb,
|
||||
INSN_UID (BLOCK_HEAD (bb)), INSN_UID (BLOCK_END (bb)));
|
||||
fprintf (file, " preds:");
|
||||
for (p = preds[bb]; p != NULL; p = p->next)
|
||||
{
|
||||
int pred_bb = INT_LIST_VAL (p);
|
||||
if (pred_bb == ENTRY_BLOCK)
|
||||
fprintf (file, " entry");
|
||||
else
|
||||
fprintf (file, " %d", pred_bb);
|
||||
}
|
||||
fprintf (file, "\n");
|
||||
fprintf (file, " succs:");
|
||||
for (p = succs[bb]; p != NULL; p = p->next)
|
||||
{
|
||||
int succ_bb = INT_LIST_VAL (p);
|
||||
if (succ_bb == EXIT_BLOCK)
|
||||
fprintf (file, " exit");
|
||||
else
|
||||
fprintf (file, " %d", succ_bb);
|
||||
}
|
||||
if (live_info)
|
||||
{
|
||||
int regno;
|
||||
fprintf (file, "\nRegisters live at start:");
|
||||
for (regno = 0; regno < max_regno; regno++)
|
||||
if (REGNO_REG_SET_P (BASIC_BLOCK (bb)->global_live_at_start, regno))
|
||||
fprintf (file, " %d", regno);
|
||||
fprintf (file, "\n");
|
||||
}
|
||||
fprintf (file, "\n");
|
||||
}
|
||||
fprintf (file, "\n");
|
||||
}
|
||||
|
||||
/* Free basic block data storage. */
|
||||
|
||||
void
|
||||
|
|
120
gcc/sbitmap.c
120
gcc/sbitmap.c
|
@ -318,126 +318,6 @@ sbitmap_a_and_b_or_c (dst, a, b, c)
|
|||
return changed;
|
||||
}
|
||||
|
||||
/* Set the bitmap DST to the intersection of SRC of all predecessors or
|
||||
successors of block number BB (PRED_SUCC says which). */
|
||||
|
||||
void
|
||||
sbitmap_intersect_of_predsucc (dst, src, bb, pred_succ)
|
||||
sbitmap dst;
|
||||
sbitmap *src;
|
||||
int bb;
|
||||
int_list_ptr *pred_succ;
|
||||
{
|
||||
int_list_ptr ps;
|
||||
int ps_bb;
|
||||
int set_size = dst->size;
|
||||
|
||||
ps = pred_succ[bb];
|
||||
|
||||
/* It is possible that there are no predecessors(/successors).
|
||||
This can happen for example in unreachable code. */
|
||||
|
||||
if (ps == NULL)
|
||||
{
|
||||
/* In APL-speak this is the `and' reduction of the empty set and thus
|
||||
the result is the identity for `and'. */
|
||||
sbitmap_ones (dst);
|
||||
return;
|
||||
}
|
||||
|
||||
/* Set result to first predecessor/successor. */
|
||||
|
||||
for ( ; ps != NULL; ps = ps->next)
|
||||
{
|
||||
ps_bb = INT_LIST_VAL (ps);
|
||||
if (ps_bb == ENTRY_BLOCK || ps_bb == EXIT_BLOCK)
|
||||
continue;
|
||||
sbitmap_copy (dst, src[ps_bb]);
|
||||
/* Break out since we're only doing first predecessor. */
|
||||
break;
|
||||
}
|
||||
if (ps == NULL)
|
||||
return;
|
||||
|
||||
/* Now do the remaining predecessors/successors. */
|
||||
|
||||
for (ps = ps->next; ps != NULL; ps = ps->next)
|
||||
{
|
||||
int i;
|
||||
sbitmap_ptr p,r;
|
||||
|
||||
ps_bb = INT_LIST_VAL (ps);
|
||||
if (ps_bb == ENTRY_BLOCK || ps_bb == EXIT_BLOCK)
|
||||
continue;
|
||||
|
||||
p = src[ps_bb]->elms;
|
||||
r = dst->elms;
|
||||
|
||||
for (i = 0; i < set_size; i++)
|
||||
*r++ &= *p++;
|
||||
}
|
||||
}
|
||||
|
||||
/* Set the bitmap DST to the union of SRC of all predecessors/successors of
|
||||
block number BB. */
|
||||
|
||||
void
|
||||
sbitmap_union_of_predsucc (dst, src, bb, pred_succ)
|
||||
sbitmap dst;
|
||||
sbitmap *src;
|
||||
int bb;
|
||||
int_list_ptr *pred_succ;
|
||||
{
|
||||
int_list_ptr ps;
|
||||
int ps_bb;
|
||||
int set_size = dst->size;
|
||||
|
||||
ps = pred_succ[bb];
|
||||
|
||||
/* It is possible that there are no predecessors(/successors).
|
||||
This can happen for example in unreachable code. */
|
||||
|
||||
if (ps == NULL)
|
||||
{
|
||||
/* In APL-speak this is the `or' reduction of the empty set and thus
|
||||
the result is the identity for `or'. */
|
||||
sbitmap_zero (dst);
|
||||
return;
|
||||
}
|
||||
|
||||
/* Set result to first predecessor/successor. */
|
||||
|
||||
for ( ; ps != NULL; ps = ps->next)
|
||||
{
|
||||
ps_bb = INT_LIST_VAL (ps);
|
||||
if (ps_bb == ENTRY_BLOCK || ps_bb == EXIT_BLOCK)
|
||||
continue;
|
||||
sbitmap_copy (dst, src[ps_bb]);
|
||||
/* Break out since we're only doing first predecessor. */
|
||||
break;
|
||||
}
|
||||
if (ps == NULL)
|
||||
return;
|
||||
|
||||
/* Now do the remaining predecessors/successors. */
|
||||
|
||||
for (ps = ps->next; ps != NULL; ps = ps->next)
|
||||
{
|
||||
int i;
|
||||
sbitmap_ptr p,r;
|
||||
|
||||
ps_bb = INT_LIST_VAL (ps);
|
||||
if (ps_bb == ENTRY_BLOCK || ps_bb == EXIT_BLOCK)
|
||||
continue;
|
||||
|
||||
p = src[ps_bb]->elms;
|
||||
r = dst->elms;
|
||||
|
||||
for (i = 0; i < set_size; i++)
|
||||
*r++ |= *p++;
|
||||
}
|
||||
}
|
||||
|
||||
/* Set the bitmap DST to the intersection of SRC of successors of
|
||||
block number BB, using the new flow graph structures. */
|
||||
|
||||
|
|
Loading…
Add table
Reference in a new issue