[patch] (was: Undocumented source files)
Michael Matz
matz@suse.de
Fri Nov 29 13:32:00 GMT 2002
Hi,
On Fri, 22 Nov 2002, Joseph S. Myers wrote:
> ra-build.c
> ra-colorize.c
> ra-debug.c
> ra-rewrite.c
> ra.[ch]
These are mentioned with the below patch (which also intends the register
allocation passes one level and adds a general remark). Ok?
(Tested with makeinfo and visual inspection of the output)
Ciao,
Michael.
--
* doc/passes.texi: Mention the other register allocator
Index: passes.texi
===================================================================
RCS file: /cvs/gcc/gcc/gcc/doc/passes.texi,v
retrieving revision 1.10
diff -u -p -r1.10 passes.texi
--- passes.texi 7 Aug 2002 18:32:10 -0000 1.10
+++ passes.texi 28 Nov 2002 15:09:41 -0000
@@ -459,13 +459,20 @@ The option @option{-dS} causes a debuggi
pass is run for the first time. The dump file's name is made by
appending @samp{.sched} to the input file name.
+@cindex register allocation
+@item
+Register allocation. These passes make sure that all occurences of pseudo
+registers are eliminated, either by allocating them to a hard register,
+replacing them by an equivalent expression (e.g. a constant) or by placing
+them on the stack. This is done in several sub passes:
+
+@itemize @bullet
@cindex register class preference pass
@item
Register class preferencing. The RTL code is scanned to find out
which register class is best for each pseudo register. The source
file is @file{regclass.c}.
-@cindex register allocation
@cindex local register allocation
@item
Local register allocation (@file{local-alloc.c}). This pass allocates
@@ -484,6 +491,17 @@ Global register allocation (@file{global
allocates hard registers for the remaining pseudo registers (those
whose life spans are not contained in one basic block).
+@cindex graph coloring register allocation
+@opindex fnew-ra
+@opindex dl
+@item
+Graph coloring register allocator. The files @file{ra.c}, @file{ra-build.c},
+@file{ra-colorize.c}, @file{ra-debug.c}, @file{ra-rewrite.c} together with
+the header @file{ra.h} contain another register allocator, which is used
+when the option @option{-fnew-ra} is given. In that case it is run instead
+of the above mentioned local and global register allocation passes, and the
+option @option{-dl} causes a debugging dump of its work.
+
@cindex reloading
@item
Reloading. This pass renumbers pseudo registers with the hardware
@@ -505,6 +523,7 @@ Source files are @file{reload.c} and @fi
The option @option{-dg} causes a debugging dump of the RTL code after
this pass. This dump file's name is made by appending @samp{.greg} to
the input file name.
+@end itemize
@cindex instruction scheduling
@cindex scheduling, instruction
More information about the Gcc-patches
mailing list