PR tree-optimization/15366
* common.opt: Add -finline-functions-called-once.
Put -fearly-inlining in alphabetically ordered place.
* doc/invoke.texi: Document new option.
* ipa-inline.c (cgraph_decide_inlining): Honour
flag_inline_functions_called_once.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@103722
138bc75d-0d04-0410-961f-
82ee72b054a4
+2005-09-01 Richard Guenther <rguenther@suse.de>
+
+ PR tree-optimization/15366
+ * common.opt: Add -finline-functions-called-once.
+ Put -fearly-inlining in alphabetically ordered place.
+ * doc/invoke.texi: Document new option.
+ * ipa-inline.c (cgraph_decide_inlining): Honour
+ flag_inline_functions_called_once.
+
2005-09-01 Jakub Jelinek <jakub@redhat.com>
PR rtl-optimization/23478
Common Report Var(flag_dump_unnumbered) VarExists
Suppress output of instruction numbers and line number notes in debugging dumps
+fearly-inlining
+Common Report Var(flag_early_inlining) Init(1)
+Perform early inlining
+
feliminate-dwarf2-dups
Common Report Var(flag_eliminate_dwarf2_dups)
Perform DWARF2 duplicate elimination
Common Report Var(flag_inline_functions)
Integrate simple functions into their callers
-fearly-inlining
-Common Report Var(flag_early_inlining) Init(1)
-Perform early inlining
+finline-functions-called-once
+Common Report Var(flag_inline_functions_called_once) Init(1)
+Integrate functions called once into their callers
finline-limit-
Common RejectNegative Joined UInteger
-fforce-addr -ffunction-sections @gol
-fgcse -fgcse-lm -fgcse-sm -fgcse-las -fgcse-after-reload @gol
-floop-optimize -fcrossjumping -fif-conversion -fif-conversion2 @gol
--finline-functions -finline-limit=@var{n} -fkeep-inline-functions @gol
+-finline-functions -finline-functions-called-once @gol
+-finline-limit=@var{n} -fkeep-inline-functions @gol
-fkeep-static-consts -fmerge-constants -fmerge-all-constants @gol
-fmodulo-sched -fno-branch-count-reg @gol
-fno-default-inline -fno-defer-pop -floop-optimize2 -fmove-loop-invariants @gol
Enabled at level @option{-O3}.
+@item -finline-functions-called-once
+@opindex finline-functions-called-once
+Consider all @code{static} functions called once for inlining into their
+caller even if they are not marked @code{inline}. If a call to a given
+function is integrated, then the function is not output as assembler code
+in its own right.
+
+Enabled if @option{-funit-at-a-time} is enabled.
+
@item -fearly-inlining
@opindex fearly-inlining
Inline functions marked by @code{always_inline} and functions whose body seems
}
if (!flag_really_no_inline)
- {
- cgraph_decide_inlining_of_small_functions ();
+ cgraph_decide_inlining_of_small_functions ();
+ if (!flag_really_no_inline
+ && flag_inline_functions_called_once)
+ {
if (dump_file)
fprintf (dump_file, "\nDeciding on functions called once:\n");