From 498e51cabb8bd8e5d002f10685c6387e0ae0baba Mon Sep 17 00:00:00 2001 From: Adam Nemet Date: Thu, 12 Mar 2009 01:02:16 +0000 Subject: [PATCH] gimplify.c (gimplify_call_expr): Don't set CALL_CANNOT_INLINE_P for functions for which the parameter types are... * gimplify.c (gimplify_call_expr): Don't set CALL_CANNOT_INLINE_P for functions for which the parameter types are unknown. testsuite/ * gcc.dg/inline-33.c: New test. From-SVN: r144801 --- gcc/ChangeLog | 5 +++++ gcc/gimplify.c | 6 +----- gcc/testsuite/ChangeLog | 4 ++++ gcc/testsuite/gcc.dg/inline-33.c | 20 ++++++++++++++++++++ 4 files changed, 30 insertions(+), 5 deletions(-) create mode 100644 gcc/testsuite/gcc.dg/inline-33.c diff --git a/gcc/ChangeLog b/gcc/ChangeLog index c4cccf25b44..45380b9acb4 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2009-03-11 Adam Nemet + + * gimplify.c (gimplify_call_expr): Don't set CALL_CANNOT_INLINE_P + for functions for which the parameter types are unknown. + 2009-03-11 Jakub Jelinek PR target/39137 diff --git a/gcc/gimplify.c b/gcc/gimplify.c index b0c65920d81..8ed42636642 100644 --- a/gcc/gimplify.c +++ b/gcc/gimplify.c @@ -2355,11 +2355,7 @@ gimplify_call_expr (tree *expr_p, gimple_seq *pre_p, bool want_value) else if (parms) p = parms; else - { - if (nargs != 0) - CALL_CANNOT_INLINE_P (*expr_p) = 1; - p = NULL_TREE; - } + p = NULL_TREE; for (i = 0; i < nargs && p; i++, p = TREE_CHAIN (p)) ; diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 66e0fe31896..75f76d8a157 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,7 @@ +2009-03-11 Adam Nemet + + * gcc.dg/inline-33.c: New test. + 2009-03-11 Nathan Froyd * gcc.dg/vect/vect-82.c: Combine dg-do and diff --git a/gcc/testsuite/gcc.dg/inline-33.c b/gcc/testsuite/gcc.dg/inline-33.c new file mode 100644 index 00000000000..c830c7df634 --- /dev/null +++ b/gcc/testsuite/gcc.dg/inline-33.c @@ -0,0 +1,20 @@ +/* { dg-do compile } */ +/* { dg-options "-O3 -fdump-tree-optimized" } */ + +int i; + +int foo (); + +main () +{ + return foo (i); +} + +int foo (i) + int i; +{ + return bar(i); +} + +/* { dg-final { scan-tree-dump-times "bar" 2 "optimized" } } */ +/* { dg-final { cleanup-tree-dump "optimized" } } */