This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
[middle-end, patch 6/9] Add compiler a option to turn on indirect inlining
- From: Martin Jambor <mjambor at suse dot cz>
- To: GCC Patches <gcc-patches at gcc dot gnu dot org>
- Cc: Jan Hubicka <jh at suse dot cz>, Kenneth Zadeck <zadeck at naturalbridge dot com>, Razya Ladelsky <RAZYA at il dot ibm dot com>
- Date: Fri, 04 Jul 2008 22:38:53 +0200
- Subject: [middle-end, patch 6/9] Add compiler a option to turn on indirect inlining
- References: <20080704203847.084359119@virgil.suse.cz>
This patch adds an option to turn on inlining of indirect calls. The
option is also automatically on for when compiling with -O3.
2008-07-04 Martin Jambor <mjambor@suse.cz>
* opts.c (decode_options): Set flag_indirect_inlining when
optimize >= 3
* common.opt (flag_indirect_inlining): New flag.
Index: iinln/gcc/common.opt
===================================================================
--- iinln.orig/gcc/common.opt
+++ iinln/gcc/common.opt
@@ -567,6 +567,10 @@ finhibit-size-directive
Common Report Var(flag_inhibit_size_directive)
Do not generate .size directives
+findirect-inlining
+Common Report Var(flag_indirect_inlining)
+Perform indirect inlining
+
; Nonzero means that functions declared `inline' will be treated
; as `static'. Prevents generation of zillions of copies of unused
; static inline functions; instead, `inlines' are written out
Index: iinln/gcc/opts.c
===================================================================
--- iinln.orig/gcc/opts.c
+++ iinln/gcc/opts.c
@@ -912,6 +912,7 @@ decode_options (unsigned int argc, const
{
flag_predictive_commoning = 1;
flag_inline_functions = 1;
+ flag_indirect_inlining = 1;
flag_unswitch_loops = 1;
flag_gcse_after_reload = 1;
flag_tree_vectorize = 1;
--