aboutsummaryrefslogtreecommitdiff
path: root/gcc/c-objc-common.c
diff options
context:
space:
mode:
authorRichard Henderson <rth@redhat.com>2004-12-18 20:42:14 -0800
committerRichard Henderson <rth@gcc.gnu.org>2004-12-18 20:42:14 -0800
commit4744afba0fa727eb34cc673ce51f17648a5731e3 (patch)
treef75b535fe61fe21974e49ac55426cc11e7fe84be /gcc/c-objc-common.c
parentca6af4f857cf2b93e89e99bad1dd2598c0b74f02 (diff)
downloadgcc-4744afba0fa727eb34cc673ce51f17648a5731e3.zip
gcc-4744afba0fa727eb34cc673ce51f17648a5731e3.tar.gz
gcc-4744afba0fa727eb34cc673ce51f17648a5731e3.tar.bz2
re PR middle-end/16417 (crappy code (gcc.c-torture/compile/20020210-1.c) in arguments causes ICE)
PR middle-end/16417 * c-decl.c (store_parm_decls): Clarify get_pending_sizes insertion comment. * c-objc-common.c (c_cannot_inline_tree_fn): Remove pending sizes checks. * c-tree.h (struct lang_decl): Remove pending_sizes. * function.c: Include tree-gimple.h (assign_parm_setup_reg): Remove callee-copies code. (gimplify_parm_type, gimplify_parameters): New functions. (expand_pending_sizes): Remove. (expand_function_start): Don't call it. * gimplify.c (gimplify_expr): Examine DECL_VALUE_EXPR for PARM_DECL. (gimplify_body): Add do_parms argument. Use gimplify_parameters. (gimplify_function_tree): Setup cfun. Update gimplify_body call. * tree-gimple.h (gimplify_body): Update decl. * tree-inline.c (initialize_inlined_parameters): Update gimplify_body call. * tree.h (gimplify_parameters): Declare. * Makefile.in (function.o): Depend on TREE_GIMPLE_H. From-SVN: r92373
Diffstat (limited to 'gcc/c-objc-common.c')
-rw-r--r--gcc/c-objc-common.c30
1 files changed, 0 insertions, 30 deletions
diff --git a/gcc/c-objc-common.c b/gcc/c-objc-common.c
index d9e8b93..35bcf9e 100644
--- a/gcc/c-objc-common.c
+++ b/gcc/c-objc-common.c
@@ -68,7 +68,6 @@ int
c_cannot_inline_tree_fn (tree *fnp)
{
tree fn = *fnp;
- tree t;
bool do_warning = (warn_inline
&& DECL_INLINE (fn)
&& DECL_DECLARED_INLINE_P (fn)
@@ -101,35 +100,6 @@ c_cannot_inline_tree_fn (tree *fnp)
goto cannot_inline;
}
- /* If a function has pending sizes, we must not defer its
- compilation, and we can't inline it as a tree. */
- if (fn == current_function_decl)
- {
- t = get_pending_sizes ();
- put_pending_sizes (t);
-
- if (t)
- {
- if (do_warning)
- warning ("%Jfunction %qF can never be inlined because it has "
- "pending sizes", fn, fn);
- goto cannot_inline;
- }
- }
-
- if (!DECL_FILE_SCOPE_P (fn))
- {
- /* If a nested function has pending sizes, we may have already
- saved them. */
- if (DECL_LANG_SPECIFIC (fn)->pending_sizes)
- {
- if (do_warning)
- warning ("%Jnested function %qF can never be inlined because it "
- "has possibly saved pending sizes", fn, fn);
- goto cannot_inline;
- }
- }
-
return 0;
cannot_inline: