aboutsummaryrefslogtreecommitdiff
path: root/gcc/rtl.def
diff options
context:
space:
mode:
authorSteven Bosscher <stevenb@suse.de>2004-06-03 12:07:47 +0000
committerSteven Bosscher <steven@gcc.gnu.org>2004-06-03 12:07:47 +0000
commit6ce2bcb71c2f66918a8287090589a9d9ea45ed74 (patch)
treea5c35a768c30f3209297293fe64b76eab30e93f8 /gcc/rtl.def
parent53ef271f84dcf405c5e58ea7b1ef2211f073d3c1 (diff)
downloadgcc-6ce2bcb71c2f66918a8287090589a9d9ea45ed74.zip
gcc-6ce2bcb71c2f66918a8287090589a9d9ea45ed74.tar.gz
gcc-6ce2bcb71c2f66918a8287090589a9d9ea45ed74.tar.bz2
basic-block.c (tail_recursion_label_list): Don't declare.
* basic-block.c (tail_recursion_label_list): Don't declare. (CLEANUP_PRE_SIBCALL): Remove. Renumber the other CLEANUP_* accordingly. * cfgbuild.c (find_label_refs): Remove. (find_basic_blocks_1): Don't handle CALL_PLACEHOLDER insns. * cfgcleanup.c (tail_recursion_label_p): Remove. (merge_blocks_move): Do not check for tail recursion. (try_optimize_cfg): Likewise. (cleanup_cfg): Never handle CLEANUP_PRE_SIBCALL. * cfgrtl.c (tail_recursion_label_list): Remove. * except.c (remove_unreachable_regions): Don't handle CALL_PLACEHOLDER insns. (convert_from_eh_region_ranges_1, can_throw_internal, can_throw_external): Likewise. * function.c (free_after_compilation): Don't clear x_tail_recursion_label. (fixup_var_refs_insns): Don't handle CALL_PLACEHOLDER insns. (identify_blocks_1): Don't recurse for CALL_PLACEHOLDER insns. (reorder_blocks_1): Likewise. * function.h (struct function): Remove x_tail_recursion_label member. Don't define tail_recursion_label. * jump.c (mark_all_labels): Don't handle CALL_PLACEHOLDER insns. * print-rtl.c (print_rtx): Likewise. * rtl.def (CALL_PLACEHOLDER): Remove. * rtl.h (sibcall_use_t): Remove enum. (optimize_sibling_and_tail_recursive_calls, replace_call_placeholder): Remove function prototypes. * stmt.c (tail_recursion_args): Remove. (optimize_tail_recursion): Remove. (expand_return): Don't check for possible tail recursion. * tree.h (optimize_tail_recursion): Remove prototype. From-SVN: r82597
Diffstat (limited to 'gcc/rtl.def')
-rw-r--r--gcc/rtl.def21
1 files changed, 0 insertions, 21 deletions
diff --git a/gcc/rtl.def b/gcc/rtl.def
index 3eecf1f..350e84f 100644
--- a/gcc/rtl.def
+++ b/gcc/rtl.def
@@ -1153,27 +1153,6 @@ DEF_RTL_EXPR(RANGE_VAR, "range_var", "eti", RTX_EXTRA)
0 is the live bitmap. Operand 1 is the original block number. */
DEF_RTL_EXPR(RANGE_LIVE, "range_live", "bi", RTX_EXTRA)
-/* A placeholder for a CALL_INSN which may be turned into a normal call,
- a sibling (tail) call or tail recursion.
-
- Immediately after RTL generation, this placeholder will be replaced
- by the insns to perform the call, sibcall or tail recursion.
-
- This RTX has 4 operands. The first three are lists of instructions to
- perform the call as a normal call, sibling call and tail recursion
- respectively. The latter two lists may be NULL, the first may never
- be NULL.
-
- The last operand is the tail recursion CODE_LABEL, which may be NULL if no
- potential tail recursive calls were found.
-
- The tail recursion label is needed so that we can clear LABEL_PRESERVE_P
- after we select a call method.
-
- This method of tail-call elimination is intended to be replaced by
- tree-based optimizations once front-end conversions are complete. */
-DEF_RTL_EXPR(CALL_PLACEHOLDER, "call_placeholder", "uuuu", RTX_EXTRA)
-
/* Describes a merge operation between two vector values.
Operands 0 and 1 are the vectors to be merged, operand 2 is a bitmask
that specifies where the parts of the result are taken from. Set bits