diff options
Diffstat (limited to 'contrib/gcc/langhooks.c')
-rw-r--r-- | contrib/gcc/langhooks.c | 24 |
1 files changed, 22 insertions, 2 deletions
diff --git a/contrib/gcc/langhooks.c b/contrib/gcc/langhooks.c index 4ad9ae3..c0ee16c 100644 --- a/contrib/gcc/langhooks.c +++ b/contrib/gcc/langhooks.c @@ -28,6 +28,7 @@ Boston, MA 02111-1307, USA. */ #include "rtl.h" #include "insn-config.h" #include "integrate.h" +#include "flags.h" #include "langhooks.h" #include "langhooks-def.h" @@ -153,8 +154,12 @@ lhd_tree_inlining_walk_subtrees (tp,subtrees,func,data,htab) int lhd_tree_inlining_cannot_inline_tree_fn (fnp) - tree *fnp ATTRIBUTE_UNUSED; + tree *fnp; { + if (flag_really_no_inline + && lookup_attribute ("always_inline", DECL_ATTRIBUTES (*fnp)) == NULL) + return 1; + return 0; } @@ -164,8 +169,11 @@ lhd_tree_inlining_cannot_inline_tree_fn (fnp) int lhd_tree_inlining_disregard_inline_limits (fn) - tree fn ATTRIBUTE_UNUSED; + tree fn; { + if (lookup_attribute ("always_inline", DECL_ATTRIBUTES (fn)) != NULL) + return 1; + return 0; } @@ -261,6 +269,18 @@ lhd_tree_inlining_end_inlining (fn) { } +/* lang_hooks.tree_inlining.convert_parm_for_inlining performs any + language-specific conversion before assigning VALUE to PARM. */ + +tree +lhd_tree_inlining_convert_parm_for_inlining (parm, value, fndecl) + tree parm ATTRIBUTE_UNUSED; + tree value; + tree fndecl ATTRIBUTE_UNUSED; +{ + return value; +} + /* lang_hooks.tree_dump.dump_tree: Dump language-specific parts of tree nodes. Returns non-zero if it does not want the usual dumping of the second argument. */ |