diff --git a/gcc/ChangeLog b/gcc/ChangeLog index ed873d7350d..70befba1129 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,12 @@ +2007-04-06 Daniel Berlin + + * langhooks-def.h (LANG_HOOKS_INITIALIZER): Remove + LANG_HOOKS_SAFE_FROM_P. + * expr.c (safe_from_p): Remove langhook call. + * langhooks.h (lang_hooks): Remove safe_from_p. + (lhd_safe_from_p): Remove prototype. + * langhooks.c (lhd_safe_from_p): Remove. + 2007-04-06 Jan Hubicka * cgraphunit.c (decide_is_function_needed): Do not keep always_inline diff --git a/gcc/expr.c b/gcc/expr.c index 77cc44a83d3..24dfbf5bd27 100644 --- a/gcc/expr.c +++ b/gcc/expr.c @@ -6302,12 +6302,6 @@ safe_from_p (rtx x, tree exp, int top_p) && ! safe_from_p (x, TREE_OPERAND (exp, i), 0)) return 0; - /* If this is a language-specific tree code, it may require - special handling. */ - if ((unsigned int) TREE_CODE (exp) - >= (unsigned int) LAST_AND_UNUSED_TREE_CODE - && !lang_hooks.safe_from_p (x, exp)) - return 0; break; case tcc_type: diff --git a/gcc/langhooks-def.h b/gcc/langhooks-def.h index 572990039a2..004b3c56f42 100644 --- a/gcc/langhooks-def.h +++ b/gcc/langhooks-def.h @@ -49,7 +49,6 @@ extern tree lhd_return_tree (tree); extern tree lhd_return_null_tree_v (void); extern tree lhd_return_null_tree (tree); extern tree lhd_do_nothing_iii_return_null_tree (int, int, int); -extern int lhd_safe_from_p (rtx, tree); extern tree lhd_staticp (tree); extern void lhd_print_tree_nothing (FILE *, tree, int); extern const char *lhd_decl_printable_name (tree, int); @@ -110,7 +109,6 @@ extern void lhd_omp_firstprivatize_type_sizes (struct gimplify_omp_ctx *, #define LANG_HOOKS_EXPAND_CONSTANT lhd_return_tree #define LANG_HOOKS_EXPAND_EXPR lhd_expand_expr #define LANG_HOOKS_EXPAND_DECL lhd_expand_decl -#define LANG_HOOKS_SAFE_FROM_P lhd_safe_from_p #define LANG_HOOKS_FINISH_INCOMPLETE_DECL lhd_do_nothing_t #define LANG_HOOKS_STATICP lhd_staticp #define LANG_HOOKS_DUP_LANG_SPECIFIC_DECL lhd_do_nothing_t @@ -296,7 +294,6 @@ extern tree lhd_make_node (enum tree_code); LANG_HOOKS_EXPAND_CONSTANT, \ LANG_HOOKS_EXPAND_EXPR, \ LANG_HOOKS_EXPAND_DECL, \ - LANG_HOOKS_SAFE_FROM_P, \ LANG_HOOKS_FINISH_INCOMPLETE_DECL, \ LANG_HOOKS_MARK_ADDRESSABLE, \ LANG_HOOKS_STATICP, \ diff --git a/gcc/langhooks.c b/gcc/langhooks.c index 1ba6ec224cf..919f05dea7d 100644 --- a/gcc/langhooks.c +++ b/gcc/langhooks.c @@ -117,14 +117,6 @@ lhd_print_tree_nothing (FILE * ARG_UNUSED (file), { } -/* Called from safe_from_p. */ - -int -lhd_safe_from_p (rtx ARG_UNUSED (x), tree ARG_UNUSED (exp)) -{ - return 1; -} - /* Called from staticp. */ tree diff --git a/gcc/langhooks.h b/gcc/langhooks.h index b7116103f85..f0220fc91c3 100644 --- a/gcc/langhooks.h +++ b/gcc/langhooks.h @@ -315,15 +315,6 @@ struct lang_hooks 1 if handled, 0 otherwise. */ int (*expand_decl) (tree); - /* Hook called by safe_from_p for language-specific tree codes. It is - up to the language front-end to install a hook if it has any such - codes that safe_from_p needs to know about. Since same_from_p will - recursively explore the TREE_OPERANDs of an expression, this hook - should not reexamine those pieces. This routine may recursively - call safe_from_p; it should always pass `0' as the TOP_P - parameter. */ - int (*safe_from_p) (rtx, tree); - /* Function to finish handling an incomplete decl at the end of compilation. Default hook is does nothing. */ void (*finish_incomplete_decl) (tree);