aboutsummaryrefslogtreecommitdiff
path: root/gcc/c-common.c
diff options
context:
space:
mode:
authorRichard Kenner <kenner@vlsi1.ultra.nyu.edu>2004-06-26 21:11:23 +0000
committerRichard Kenner <kenner@gcc.gnu.org>2004-06-26 17:11:23 -0400
commit350fae6628af14c2e760694d39baec5f7858057c (patch)
treeec365de72a39a5ef2d0a252b8496e9199f69fb3d /gcc/c-common.c
parent6573a10434b3aa2784f052d6ffc3905d8490464e (diff)
downloadgcc-350fae6628af14c2e760694d39baec5f7858057c.zip
gcc-350fae6628af14c2e760694d39baec5f7858057c.tar.gz
gcc-350fae6628af14c2e760694d39baec5f7858057c.tar.bz2
c-common.c (c_safe_from_p, [...]): Deleted.
2004-06-26 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> * c-common.c (c_safe_from_p, c_walk_subtrees): Deleted. * c-common.def (DECL_STMT): Remove. * c-common.h (DECL_STMT_DECL): Deleted. (COMPOUNT_LITERAL_EXPR_DECL): Use DECL_EXPR_DECL. (c_safe_from_p, c_walk_subtrees): Deleted. * c-decl.c, c-parse.in, c-pretty-print.c: DECL_STMT now DECL_EXPR. * c-dump.c (c_dump_tree, case DECL_STMT): Deleted. * c-gimplify.c (gimplify_decl_stmt): Deleted. (gimplify_compound_literal_expr): Use DECL_EXPR_DECL and gimplify_and_add. (c_gimplify_expr, case DECL_EXPR): New case. (c_gimplify_expr, case DECL_STMT): Deleted. * c-lang.c (LANG_HOOKS_SAFE_FROM_P): Likewise. (LANG_HOOKS_TREE_INLINING_WALK_SUBTREES): Likewise. * expr.c (safe_from_p, case 's'): New case. * gimplify.c (gimplify_decl_expr): New function. (gimplify_expr, case DECL_EXPR): New case. * tree-inline.c (walk_tree): Walk into all fields of a type and decl only if they are in a DECL_EXPR. (mark_local_for_remap_r): Minor code cleanup. * tree-outof-ssa.c (discover_nonconstant_array_refs_r): Add else. * tree.c (has_cleanups, case DECL_EXPR): New case. * tree.def (DECL_EXPR): New code. * tree.h (DECL_EXPR_DECL): New macro. * objc/objc-lang.c (LANG_HOOKS_SAFE_FROM_P): Deleted. From-SVN: r83721
Diffstat (limited to 'gcc/c-common.c')
-rw-r--r--gcc/c-common.c69
1 files changed, 0 insertions, 69 deletions
diff --git a/gcc/c-common.c b/gcc/c-common.c
index 0edbd5f..f48ac09 100644
--- a/gcc/c-common.c
+++ b/gcc/c-common.c
@@ -3718,28 +3718,6 @@ c_expand_expr (tree exp, rtx target, enum machine_mode tmode,
}
}
-/* Hook used by safe_from_p to handle language-specific tree codes. */
-
-int
-c_safe_from_p (rtx target, tree exp)
-{
- /* We can see statements here when processing the body of a
- statement-expression. For a declaration statement declaring a
- variable, look at the variable's initializer. */
- if (TREE_CODE (exp) == DECL_STMT)
- {
- tree decl = DECL_STMT_DECL (exp);
-
- if (TREE_CODE (decl) == VAR_DECL
- && DECL_INITIAL (decl)
- && !safe_from_p (target, DECL_INITIAL (decl), /*top_p=*/0))
- return 0;
- }
-
- /* Assume everything else is safe. */
- return 1;
-}
-
/* Hook used by unsafe_for_reeval to handle language-specific tree codes. */
int
@@ -5125,53 +5103,6 @@ check_function_arguments_recurse (void (*callback)
(*callback) (ctx, param, param_num);
}
-/* C implementation of lang_hooks.tree_inlining.walk_subtrees. Tracks the
- locus from EXPR_LOCUS and handles DECL_STMT specially. */
-
-tree
-c_walk_subtrees (tree *tp, int *walk_subtrees_p ATTRIBUTE_UNUSED,
- walk_tree_fn func, void *data, void *htab)
-{
- enum tree_code code = TREE_CODE (*tp);
- location_t save_locus;
- tree result;
-
-#define WALK_SUBTREE(NODE) \
- do \
- { \
- result = walk_tree (&(NODE), func, data, htab); \
- if (result) goto out; \
- } \
- while (0)
-
- if (code != DECL_STMT)
- return NULL_TREE;
-
- /* Set input_location here so we get the right instantiation context
- if we call instantiate_decl from inlinable_function_p. */
- save_locus = input_location;
- if (EXPR_LOCUS (*tp))
- input_location = *EXPR_LOCUS (*tp);
-
- /* Walk the DECL_INITIAL and DECL_SIZE. We don't want to walk
- into declarations that are just mentioned, rather than
- declared; they don't really belong to this part of the tree.
- And, we can see cycles: the initializer for a declaration can
- refer to the declaration itself. */
- WALK_SUBTREE (DECL_INITIAL (DECL_STMT_DECL (*tp)));
- WALK_SUBTREE (DECL_SIZE (DECL_STMT_DECL (*tp)));
- WALK_SUBTREE (DECL_SIZE_UNIT (DECL_STMT_DECL (*tp)));
- WALK_SUBTREE (TREE_CHAIN (*tp));
- *walk_subtrees_p = 0;
-
- /* We didn't find what we were looking for. */
- out:
- input_location = save_locus;
- return result;
-
-#undef WALK_SUBTREE
-}
-
/* Function to help qsort sort FIELD_DECLs by name order. */
int