OSDN Git Service

* doc/invoke.texi (RS/6000 and PowerPC Options): Rewrite -mrelocatable
authoramodra <amodra@138bc75d-0d04-0410-961f-82ee72b054a4>
Fri, 6 Aug 2010 02:46:44 +0000 (02:46 +0000)
committeramodra <amodra@138bc75d-0d04-0410-961f-82ee72b054a4>
Fri, 6 Aug 2010 02:46:44 +0000 (02:46 +0000)
and -mrelocatable-lib description.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@162929 138bc75d-0d04-0410-961f-82ee72b054a4

gcc/ChangeLog
gcc/doc/invoke.texi

index f6b5099..6640792 100644 (file)
@@ -1,3 +1,8 @@
+2010-08-06  Alan Modra  <amodra@gmail.com>
+
+       * doc/invoke.texi (RS/6000 and PowerPC Options): Rewrite -mrelocatable
+       and -mrelocatable-lib description.
+
 2010-08-05  Bernd Schmidt  <bernds@codesourcery.com>
 
        From Martin Thuresson  <martint@google.com>
 2010-08-05  Bernd Schmidt  <bernds@codesourcery.com>
 
        From Martin Thuresson  <martint@google.com>
index fb33b72..08d5f5f 100644 (file)
@@ -15418,20 +15418,25 @@ unaligned memory references will be handled by the system.
 @itemx -mno-relocatable
 @opindex mrelocatable
 @opindex mno-relocatable
 @itemx -mno-relocatable
 @opindex mrelocatable
 @opindex mno-relocatable
-On embedded PowerPC systems generate code that allows (does not allow)
-the program to be relocated to a different address at runtime.  If you
-use @option{-mrelocatable} on any module, all objects linked together must
-be compiled with @option{-mrelocatable} or @option{-mrelocatable-lib}.
+Generate code that allows (does not allow) a static executable to be
+relocated to a different address at runtime.  A simple embedded
+PowerPC system loader should relocate the entire contents of
+@code{.got2} and 4-byte locations listed in the @code{.fixup} section,
+a table of 32-bit addresses generated by this option.  For this to
+work, all objects linked together must be compiled with
+@option{-mrelocatable} or @option{-mrelocatable-lib}.
+@option{-mrelocatable} code aligns the stack to an 8 byte boundary.
 
 @item -mrelocatable-lib
 @itemx -mno-relocatable-lib
 @opindex mrelocatable-lib
 @opindex mno-relocatable-lib
 
 @item -mrelocatable-lib
 @itemx -mno-relocatable-lib
 @opindex mrelocatable-lib
 @opindex mno-relocatable-lib
-On embedded PowerPC systems generate code that allows (does not allow)
-the program to be relocated to a different address at runtime.  Modules
-compiled with @option{-mrelocatable-lib} can be linked with either modules
-compiled without @option{-mrelocatable} and @option{-mrelocatable-lib} or
-with modules compiled with the @option{-mrelocatable} options.
+Like @option{-mrelocatable}, @option{-mrelocatable-lib} generates a
+@code{.fixup} section to allow static executables to be relocated at
+runtime, but @option{-mrelocatable-lib} does not use the smaller stack
+alignment of @option{-mrelocatable}.  Objects compiled with
+@option{-mrelocatable-lib} may be linked with objects compiled with
+any combination of the @option{-mrelocatable} options.
 
 @item -mno-toc
 @itemx -mtoc
 
 @item -mno-toc
 @itemx -mtoc