This is the mail archive of the mailing list for the GCC project.

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [patch] (was: Undocumented source files)


On Thu, 28 Nov 2002, Joseph S. Myers wrote:

> OK subject to:

I checked in the below patch.

> "subpasses" (one word) (see list from the Chicago Manual of Style
> <>

That's interesting.  Up to now I thought that the english men were used to
write separate words, while the german ones were using abominations like
Bahnhofsvorstehergehilfenuniformknopf  ;-)

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 20:45: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
+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 subpasses:
+@itemize @bullet
 @cindex register class preference pass
 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
 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
+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
 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

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]