diff options
-rw-r--r-- | gcc/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/rtl.h | 1 | ||||
-rw-r--r-- | gcc/rtlanal.c | 76 |
3 files changed, 5 insertions, 77 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 87cb7051c8c..396c031aea3 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,5 +1,10 @@ 2006-03-04 Kazu Hirata <kazu@codesourcery.com> + * rtlanal.c (insns_safe_to_move_p): Remove. + * rtl.h: Remove the prototype for insns_safe_to_move_p. + +2006-03-04 Kazu Hirata <kazu@codesourcery.com> + * expmed.c (expand_mult_add): Remove. * expr.h: Remove the prototype for expand_mult_add. diff --git a/gcc/rtl.h b/gcc/rtl.h index 409734d4b88..a6cd5808202 100644 --- a/gcc/rtl.h +++ b/gcc/rtl.h @@ -1734,7 +1734,6 @@ extern rtx regno_use_in (unsigned int, rtx); extern int auto_inc_p (rtx); extern int in_expr_list_p (rtx, rtx); extern void remove_node_from_expr_list (rtx, rtx *); -extern int insns_safe_to_move_p (rtx, rtx, rtx *); extern int loc_mentioned_in_p (rtx *, rtx); extern rtx find_first_parameter_load (rtx, rtx); extern bool keep_with_call_p (rtx); diff --git a/gcc/rtlanal.c b/gcc/rtlanal.c index bbf7e71bf73..dc3b5adde5a 100644 --- a/gcc/rtlanal.c +++ b/gcc/rtlanal.c @@ -2927,82 +2927,6 @@ auto_inc_p (rtx x) return 0; } -/* Return 1 if the sequence of instructions beginning with FROM and up - to and including TO is safe to move. If NEW_TO is non-NULL, and - the sequence is not already safe to move, but can be easily - extended to a sequence which is safe, then NEW_TO will point to the - end of the extended sequence. - - For now, this function only checks that the region contains whole - exception regions, but it could be extended to check additional - conditions as well. */ - -int -insns_safe_to_move_p (rtx from, rtx to, rtx *new_to) -{ - int eh_region_count = 0; - int past_to_p = 0; - rtx r = from; - - /* By default, assume the end of the region will be what was - suggested. */ - if (new_to) - *new_to = to; - - while (r) - { - if (NOTE_P (r)) - { - switch (NOTE_LINE_NUMBER (r)) - { - case NOTE_INSN_EH_REGION_BEG: - ++eh_region_count; - break; - - case NOTE_INSN_EH_REGION_END: - if (eh_region_count == 0) - /* This sequence of instructions contains the end of - an exception region, but not he beginning. Moving - it will cause chaos. */ - return 0; - - --eh_region_count; - break; - - default: - break; - } - } - else if (past_to_p) - /* If we've passed TO, and we see a non-note instruction, we - can't extend the sequence to a movable sequence. */ - return 0; - - if (r == to) - { - if (!new_to) - /* It's OK to move the sequence if there were matched sets of - exception region notes. */ - return eh_region_count == 0; - - past_to_p = 1; - } - - /* It's OK to move the sequence if there were matched sets of - exception region notes. */ - if (past_to_p && eh_region_count == 0) - { - *new_to = r; - return 1; - } - - /* Go to the next instruction. */ - r = NEXT_INSN (r); - } - - return 0; -} - /* Return nonzero if IN contains a piece of rtl that has the address LOC. */ int loc_mentioned_in_p (rtx *loc, rtx in) |