summaryrefslogtreecommitdiff
path: root/gcc/rtl.c
diff options
context:
space:
mode:
authorsteven <steven@138bc75d-0d04-0410-961f-82ee72b054a4>2004-07-27 19:09:32 +0000
committersteven <steven@138bc75d-0d04-0410-961f-82ee72b054a4>2004-07-27 19:09:32 +0000
commit011e6b51aaaaa628b204812a1714ada9e8092c87 (patch)
tree3d2deb55bb0ac08950644e984c159ecbcc49e955 /gcc/rtl.c
parent9d167a28e3dd31e6748679cdb766610d53fbe6dc (diff)
downloadgcc-011e6b51aaaaa628b204812a1714ada9e8092c87.tar.gz
* cfgexpand.c (tree_expand_cfg): Fix comment.
* calls.c (expand_call): Ignore rtx_equal_function_value_matters. * function.c (purge_single_hard_subreg_set, purge_hard_subreg_sets): Remove. (prepare_function_start): Don't set rtx_equal_function_value_matters. * integrate.c (copy_rtx_and_substitute): Don't test for it. * passes.c (rest_of_compilation): Don't call purge_hard_subreg_sets. Don't set rtx_equal_function_value_matters. Don't register RTL hooks here again. Update leading comment. * rtl.c (rtx_equal_function_value_matters): Remove. (rtx_equal_p): Don't test for it. * simplify-rtx.c (simplify_binary_operation, simplify_subreg): Likewise. * rtl.h (enum insn_note): Remove NOTE_INSN_LOOP_END_TOP_COND. * rtl.c (note_insn_name): Likewise. * emit-rtl.c (remove_unnecessary_notes): Don't handle it. * final.c (final_scan_insn): Likewise. * except.c (finish_eh_generation): Don't call cfg_cleanup from here. * passes.c (rest_of_handle_eh): Do it here. * stmt.c (struct nesting): Remove struct nesting block member. (struct stmt_status): Remove x_block_start_count field. (current_block_start_count): Remove. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@85228 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/rtl.c')
-rw-r--r--gcc/rtl.c14
1 files changed, 2 insertions, 12 deletions
diff --git a/gcc/rtl.c b/gcc/rtl.c
index 533b2f12274..74c85351abe 100644
--- a/gcc/rtl.c
+++ b/gcc/rtl.c
@@ -116,7 +116,7 @@ const char * const note_insn_name[NOTE_INSN_MAX - NOTE_INSN_BIAS] =
"NOTE_INSN_BLOCK_BEG", "NOTE_INSN_BLOCK_END",
"NOTE_INSN_LOOP_BEG", "NOTE_INSN_LOOP_END",
"NOTE_INSN_LOOP_CONT", "NOTE_INSN_LOOP_VTOP",
- "NOTE_INSN_LOOP_END_TOP_COND", "NOTE_INSN_FUNCTION_END",
+ "NOTE_INSN_FUNCTION_END",
"NOTE_INSN_PROLOGUE_END", "NOTE_INSN_EPILOGUE_BEG",
"NOTE_INSN_DELETED_LABEL", "NOTE_INSN_FUNCTION_BEG",
"NOTE_INSN_EH_REGION_BEG", "NOTE_INSN_EH_REGION_END",
@@ -318,9 +318,6 @@ shallow_copy_rtx_stat (rtx orig MEM_STAT_DECL)
return copy;
}
-/* This is 1 until after the rtl generation pass. */
-int rtx_equal_function_value_matters;
-
/* Nonzero when we are generating CONCATs. */
int generating_concat_p;
@@ -355,14 +352,7 @@ rtx_equal_p (rtx x, rtx y)
switch (code)
{
case REG:
- /* Until rtl generation is complete, don't consider a reference
- to the return register of the current function the same as
- the return from a called function. This eases the job of
- function integration. Once the distinction is no longer
- needed, they can be considered equivalent. */
- return (REGNO (x) == REGNO (y)
- && (! rtx_equal_function_value_matters
- || REG_FUNCTION_VALUE_P (x) == REG_FUNCTION_VALUE_P (y)));
+ return (REGNO (x) == REGNO (y));
case LABEL_REF:
return XEXP (x, 0) == XEXP (y, 0);