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

login
register
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

Comments

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



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



Thanks,

  -Tom



2013-03-29  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.

Patch

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