diff options
author | Enkovich Ilya <ilya.enkovich@intel.com> | 2011-12-21 11:52:27 +0000 |
---|---|---|
committer | Kirill Yukhin <kyukhin@gcc.gnu.org> | 2011-12-21 11:52:27 +0000 |
commit | 26cd9add744f5649af087552808b388c3109b53a (patch) | |
tree | 5a0567e5d4418bbaeb05479b5f83eb010f0605fb /gcc/doc/invoke.texi | |
parent | 76f734d8f50612486c0eb696468582fce0128f92 (diff) | |
download | gcc-26cd9add744f5649af087552808b388c3109b53a.zip gcc-26cd9add744f5649af087552808b388c3109b53a.tar.gz gcc-26cd9add744f5649af087552808b388c3109b53a.tar.bz2 |
re PR target/50038 (redundant zero extensions)
gcc/
2011-12-21 Enkovich Ilya <ilya.enkovich@intel.com>
PR target/50038
* implicit-zee.c: Delete.
* ree.c: New file.
* Makefile.in: Replace implicit-zee.c with ree.c.
* config/i386/i386.c (ix86_option_override_internal): Rename
flag_zee to flag_ree.
* common.opt (fzee): Ignored.
(free): New.
* passes.c (init_optimization_passes): Replace pass_implicit_zee
with pass_ree.
* tree-pass.h (pass_implicit_zee): Delete.
(pass_ree): New.
* timevar.def (TV_ZEE): Delete.
(TV_REE): New.
* doc/invoke.texi: Add -free description.
gcc/testsuite/
2011-12-21 Enkovich Ilya <ilya.enkovich@intel.com>
PR target/50038
From-SVN: r182574
Diffstat (limited to 'gcc/doc/invoke.texi')
-rw-r--r-- | gcc/doc/invoke.texi | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/gcc/doc/invoke.texi b/gcc/doc/invoke.texi index 36c37e0..9942755 100644 --- a/gcc/doc/invoke.texi +++ b/gcc/doc/invoke.texi @@ -385,7 +385,7 @@ Objective-C and Objective-C++ Dialects}. -fprofile-correction -fprofile-dir=@var{path} -fprofile-generate @gol -fprofile-generate=@var{path} @gol -fprofile-use -fprofile-use=@var{path} -fprofile-values @gol --freciprocal-math -fregmove -frename-registers -freorder-blocks @gol +-freciprocal-math -free -fregmove -frename-registers -freorder-blocks @gol -freorder-blocks-and-partition -freorder-functions @gol -frerun-cse-after-loop -freschedule-modulo-scheduled-loops @gol -frounding-math -fsched2-use-superblocks -fsched-pressure @gol @@ -6709,6 +6709,14 @@ Perform a number of minor optimizations that are relatively expensive. Enabled at levels @option{-O2}, @option{-O3}, @option{-Os}. +@item -free +@opindex free +Attempt to remove redundant extension instructions. This is especially +helpful for the x86-64 architecture which implicitly zero-extends in 64-bit +registers after writing to their lower 32-bit half. + +Enabled for x86 at levels @option{-O2}, @option{-O3}. + @item -foptimize-register-move @itemx -fregmove @opindex foptimize-register-move |