diff options
author | Doug Evans <devans@cygnus.com> | 1998-05-20 00:24:32 +0000 |
---|---|---|
committer | Jeff Law <law@gcc.gnu.org> | 1998-05-19 18:24:32 -0600 |
commit | 7506f49132276e0bd064a169dca106b6436bde7c (patch) | |
tree | 934ca7a916b884debf2659218bd495fc6afaa368 /gcc/invoke.texi | |
parent | d392d163c58a6f9dcc2e68ae20ffde4c1bd69be5 (diff) | |
download | gcc-7506f49132276e0bd064a169dca106b6436bde7c.zip gcc-7506f49132276e0bd064a169dca106b6436bde7c.tar.gz gcc-7506f49132276e0bd064a169dca106b6436bde7c.tar.bz2 |
* Global CSE and constant/copy propagation.
* Makefile.in (OBJS): Add gcse.o
(STAGESTUFF): Add *.gcse.
(gcse.o): Add dependencies.
(mostlyclean): Remove *.gcse and */*.gcse.
* gcse.c: New file.
* loop.c (loop_optimize): Move call to init_alias_analysis.
* recog.c (validate_replace_src): New function.
* toplev.c (gcse_dump): New global variable.
(flag_gcse, gcse_time): Likewise.
(compile_file): Initialize gcse_time and clean out the gcse dump
file if necessary.
(rest_of_compilation): Call gcse_main as requested. Dump RTL
after gcse if requested.
(main): Enable gcse for -O2 and above. Handle -dG. Enable gcse
dumps for -da.
* gcc.texi: Add gcse related internal documentation.
* invoke.texi: Note new command line options for gcse.
* tm.texi: Document AVOID_CCMODE_COPIES.
* mips.h (AVOID_CCMODE_COPIES): Define.
Co-Authored-By: Jeffrey A Law <law@cygnus.com>
From-SVN: r19901
Diffstat (limited to 'gcc/invoke.texi')
-rw-r--r-- | gcc/invoke.texi | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/gcc/invoke.texi b/gcc/invoke.texi index 894ffe7..2289f3c 100644 --- a/gcc/invoke.texi +++ b/gcc/invoke.texi @@ -149,7 +149,7 @@ in the following sections. -fcaller-saves -fcse-follow-jumps -fcse-skip-blocks -fdelayed-branch -fexpensive-optimizations -ffast-math -ffloat-store -fforce-addr -fforce-mem --ffunction-sections -finline-functions +-ffunction-sections -fgcse -finline-functions -fkeep-inline-functions -fno-default-inline -fno-defer-pop -fno-function-cse -fno-inline -fno-peephole -fomit-frame-pointer -fregmove @@ -1986,6 +1986,8 @@ Dump after purging ADDRESSOF, to @file{@var{file}.addressof}. Dump after flow analysis, to @file{@var{file}.flow}. @item g Dump after global register allocation, to @file{@var{file}.greg}. +@item G +Dump after GCSE, to @file{@var{file}.gcse}. @item j Dump after first jump optimization, to @file{@var{file}.jump}. @item J @@ -2299,6 +2301,10 @@ performed. @item -frerun-loop-opt Run the loop optimizer twice. +@item -fgcse +Perform a global common subexpression elimination pass. +This pass also performs global constant and copy propagation. + @item -fexpensive-optimizations Perform a number of minor optimizations that are relatively expensive. |