diff options
author | Jan Hubicka <jh@suse.cz> | 2007-09-04 18:07:50 +0200 |
---|---|---|
committer | Jan Hubicka <hubicka@gcc.gnu.org> | 2007-09-04 16:07:50 +0000 |
commit | 4d4b8cb9c0f82c22252018b1b25cd8b3c63166b3 (patch) | |
tree | 75c149d77b7daa8ab6ece4c2f7b9b97094602534 /gcc/doc | |
parent | 4c5bae34c163fa87e5c137e71d4be728d4b21291 (diff) | |
download | gcc-4d4b8cb9c0f82c22252018b1b25cd8b3c63166b3.zip gcc-4d4b8cb9c0f82c22252018b1b25cd8b3c63166b3.tar.gz gcc-4d4b8cb9c0f82c22252018b1b25cd8b3c63166b3.tar.bz2 |
re PR middle-end/29478 (optimization generates warning for casts)
* gcc.dg/tree-ssa/loadpre8.c: Disable inlining.
* gcc.dg/tree-ssa/pr27236.c: Likewise.
* gcc.dg/tree-ssa/predcom-1.c: Likewise.
* gcc.dg/tree-ssa/predcom-2.c: Likewise.
* gcc.dg/tree-ssa/flatten-2.c: Avoid overactive tail call ellim.
* gcc.dg/tree-ssa/loadpre5.c: Likewise.
* gcc.dg/vect/costmodel/i386/costmodel-fast-math-vect-pr29925.c:
Likewise.
* invoke.texi (-finline-small-functions): Document.
* ipa-inline.c (cgraph_default_inline_p): Do not use DECL_INLINE
when deciding what is inlinable.
(cgraph_decide_recursive_inlining): Handle flag_inline_functions.
(cgraph_decide_inlining_of_small_function): Handle new flags.
(cgraph_decide_inlining_incrementally): Likewise.
* opts.c (decode_options): Enable flag_inline_small_functions at -O2
* common.opt (finline-small-functions): New.
* Makefile.in (build/gengtype.o-warn): Work around PR29478
From-SVN: r128092
Diffstat (limited to 'gcc/doc')
-rw-r--r-- | gcc/doc/invoke.texi | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/gcc/doc/invoke.texi b/gcc/doc/invoke.texi index 774f2f3..9164078 100644 --- a/gcc/doc/invoke.texi +++ b/gcc/doc/invoke.texi @@ -328,7 +328,7 @@ Objective-C and Objective-C++ Dialects}. -fgcse -fgcse-lm -fgcse-sm -fgcse-las -fgcse-after-reload @gol -fcrossjumping -fif-conversion -fif-conversion2 @gol -finline-functions -finline-functions-called-once @gol --finline-limit=@var{n} -fkeep-inline-functions @gol +-finline-small-functions -finline-limit=@var{n} -fkeep-inline-functions @gol -fkeep-static-consts -fmerge-constants -fmerge-all-constants @gol -fmodulo-sched -fmodulo-sched-allow-regmoves -fno-branch-count-reg @gol -fno-default-inline -fno-defer-pop -fmove-loop-invariants @gol @@ -5033,6 +5033,7 @@ compilation time. -ftree-fre @gol -ftree-ch @gol -funit-at-a-time @gol +-finline-small-functions @gol -fmerge-constants} @option{-O} also turns on @option{-fomit-frame-pointer} on machines @@ -5172,6 +5173,15 @@ Don't pay attention to the @code{inline} keyword. Normally this option is used to keep the compiler from expanding any functions inline. Note that if you are not optimizing, no functions can be expanded inline. +@item -finline-small-functions +@opindex finline-small-functions +Integrate functions into their callers when their body is smaller than expected +function call code (so overall size of program gets smaller). The compiler +heuristically decides which functions are simple enough to be worth integrating +in this way. + +Enabled at level @option{-O2}. + @item -finline-functions @opindex finline-functions Integrate all simple functions into their callers. The compiler |