-fuse-caller-save - Add documentation
authorvries <vries@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 28 May 2014 09:43:41 +0000 (09:43 +0000)
committervries <vries@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 28 May 2014 09:43:41 +0000 (09:43 +0000)
2014-05-28  Radovan Obradovic  <robradovic@mips.com>
            Tom de Vries  <tom@codesourcery.com>

* doc/invoke.texi (@item Optimization Options): Add -fuse-caller-save to
gccoptlist.
(@item -fuse-caller-save): New item.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@211009 138bc75d-0d04-0410-961f-82ee72b054a4

gcc/ChangeLog
gcc/doc/invoke.texi

index e6ddd99..ba42f56 100644 (file)
@@ -1,6 +1,13 @@
 2014-05-28  Radovan Obradovic  <robradovic@mips.com>
             Tom de Vries  <tom@codesourcery.com>
 
+       * doc/invoke.texi (@item Optimization Options): Add -fuse-caller-save to
+       gccoptlist.
+       (@item -fuse-caller-save): New item.
+
+2014-05-28  Radovan Obradovic  <robradovic@mips.com>
+            Tom de Vries  <tom@codesourcery.com>
+
        * opts.c (default_options_table): Add OPT_LEVELS_2_PLUS entry with
        OPT_fuse_caller_save.
 
index fcdcb1d..7f13779 100644 (file)
@@ -429,8 +429,8 @@ Objective-C and Objective-C++ Dialects}.
 -ftree-vectorize -ftree-vrp @gol
 -funit-at-a-time -funroll-all-loops -funroll-loops @gol
 -funsafe-loop-optimizations -funsafe-math-optimizations -funswitch-loops @gol
--fvariable-expansion-in-unroller -fvect-cost-model -fvpt -fweb @gol
--fwhole-program -fwpa -fuse-ld=@var{linker} -fuse-linker-plugin @gol
+-fuse-caller-save -fvariable-expansion-in-unroller -fvect-cost-model -fvpt @gol
+-fweb -fwhole-program -fwpa -fuse-ld=@var{linker} -fuse-linker-plugin @gol
 --param @var{name}=@var{value}
 -O  -O0  -O1  -O2  -O3  -Os -Ofast -Og}
 
@@ -7741,6 +7741,14 @@ and then tries to find ways to combine them.
 
 Enabled by default at @option{-O1} and higher.
 
+@item -fuse-caller-save
+Use caller save registers for allocation if those registers are not used by
+any called function.  In that case it is not necessary to save and restore
+them around calls.  This is only possible if called functions are part of
+same compilation unit as current function and they are compiled before it.
+
+Enabled at levels @option{-O2}, @option{-O3}, @option{-Os}.
+
 @item -fconserve-stack
 @opindex fconserve-stack
 Attempt to minimize stack usage.  The compiler attempts to use less