summaryrefslogtreecommitdiff
path: root/gcc/reg-notes.def
diff options
context:
space:
mode:
authorsteven <steven@138bc75d-0d04-0410-961f-82ee72b054a4>2008-06-17 05:57:04 +0000
committersteven <steven@138bc75d-0d04-0410-961f-82ee72b054a4>2008-06-17 05:57:04 +0000
commit1e5b92fa15f6677249b1fc9e240955537ae33bd2 (patch)
tree8e1097fff4f927ebe993aa6e075eafcfd576b7bf /gcc/reg-notes.def
parenteef5de2707b8cf19f2fbd51990b3f384c6a63cef (diff)
downloadgcc-1e5b92fa15f6677249b1fc9e240955537ae33bd2.tar.gz
Remove libcall notes.
* see.c (see_analyse_one_def): Do not look for REG_LIBCALL and REG_RETVAL notes. (see_update_relevancy): Likewise. * fwprop.c (try_fwprop_subst): Likewise. * rtlanal.c (noop_move_p): Likewise. * builtins.c (expand_buitlin_mathfn): Don't try to add REG_EQUAL notes to non-existing libcall blocks. * cse.c (cse_insn): Change prototype. Don't update libcall notes. Remove orig_set. (cse_extended_basic_block): Don't track libcall and no-conflict notes. (dead_libcall_p): Remove. (delete_trivially_dead_insns): Don't use it. * web.c (union_defs): Remove comment about keeping nops. * gcse.c (hash_scan_insn): Don't take libcall pointers. (compute_hash_table_work): Don't track libcall notes. (do_local_cprop): Don't take libcall pointers. Don't update libcall notes. (adjust_libcall_notes): Deleted. (local_cprop_pass): Remove stack for nested libcalls (which shouldn't ever have existed in the first place). (replace_store_insn): Don't try to remove libcall notes. * lower-subreg.c (move_libcall_note, move_retval_note): Deleted. (resolve_reg_notes): Don't call them. (resolve_simple_move): Likewise. (decompose_multiword_subregs): Remove block handling REG_RETVAL notes. Don't remove REG_RETVAL notes. * emit-rtl.c (try_split): Don't update libcall notes. (emit_copy_of_insn_after): Dito. * cselib.c (cselib_current_insn_in_libcall): Remove. (cselib_process_insn): Don't set/clear it. (new_elt_loc_list): Don't record it. (cselib_init): Don't initialize it. * cselib.c (struct elt_loc_list): Remove in_libcall field. * loop-invariant.c (find_invariant_insn): Don't look for libcall notes. * sched-deps.c (sched_analyze_insn): Don't group libcall blocks. (sched_analyze): Don't set up deps->libcall_block_tail_insn. (init_deps): Don't initialize it. * sched-int.h (struct deps): Rremove libcall_block_tail_insn field. * combine.c (delete_noop_moves): Don't update libcall notes. (can_combine_p): Remove now pointless #if 0 block. (try_combine): Remove another obsolete #if 0 block. (distribute_notes): Don't distribute libcall notes. * reg-notes.def (REG_LIBCALL, REG_RETVAL): Remove. * dce.c (libcall_dead_p): Remove. (delete_unmarked_insns): Don't handle libcall blocks. (preserve_libcall_for_dce): Remove. (prescan_insns_for_dce): Don't special-case libcall block insns. * reload1 (reload): Don't handle libcall notes. * doc/rtl.texi (REG_LIBCALL, REG_RETVAL, REG_LIBCALL_ID): Remove documentation. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@136861 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/reg-notes.def')
-rw-r--r--gcc/reg-notes.def16
1 files changed, 1 insertions, 15 deletions
diff --git a/gcc/reg-notes.def b/gcc/reg-notes.def
index c9cc1c7819b..5a5325f01ae 100644
--- a/gcc/reg-notes.def
+++ b/gcc/reg-notes.def
@@ -52,23 +52,9 @@ REG_NOTE (EQUIV)
/* Like REG_EQUIV except that the destination is only momentarily
equal to the specified rtx. Therefore, it cannot be used for
- substitution; but it can be used for cse. Together with a
- REG_RETVAL note, it means that the insn sets the full contents of
- the libcall value. */
+ substitution; but it can be used for cse. */
REG_NOTE (EQUAL)
-/* This insn copies the return-value of a library call out of the hard
- reg for return values. This note is actually an INSN_LIST and it
- points to the first insn involved in setting up arguments for the
- call. flow.c uses this to delete the entire library call when its
- result is dead. */
-REG_NOTE (RETVAL)
-
-/* The inverse of REG_RETVAL: it goes on the first insn of the library
- call and points at the one that has the REG_RETVAL. This note is
- also an INSN_LIST. */
-REG_NOTE (LIBCALL)
-
/* The register is always nonnegative during the containing loop.
This is used in branches so that decrement and branch instructions
terminating on zero can be matched. There must be an insn pattern