Patchwork [09/10] -fuse-caller-save - Add documentation

mail settings
Submitter Tom de Vries
Date March 29, 2013, 1:06 p.m.
Message ID <20130329130613.410664213AB@build1-lucid-cs>
Download mbox | patch
Permalink /patch/232405/
State New
Headers show


Tom de Vries - March 29, 2013, 1:06 p.m.

This patch adds the documentation of -fuse-caller-save.



2013-03-29  Radovan Obradovic  <>

            Tom de Vries  <>

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


	(@item -fuse-caller-save): New item.


diff --git a/gcc/doc/invoke.texi b/gcc/doc/invoke.texi

index 475dcf0..efb8a1a 100644

--- a/gcc/doc/invoke.texi

+++ b/gcc/doc/invoke.texi

@@ -421,8 +421,8 @@  Objective-C and Objective-C++ Dialects}.

 -ftree-ter -ftree-vect-loop-version -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}


@@ -7382,6 +7382,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