]> Git Repo - binutils.git/blobdiff - ld/ld.1
Add support for ARM-PE.
[binutils.git] / ld / ld.1
diff --git a/ld/ld.1 b/ld/ld.1
index 3b6393434c99cf307acb7d92df65502a32c68013..feacea53bdce5cb9babd8c26258a5817f5fccecf 100644 (file)
--- a/ld/ld.1
+++ b/ld/ld.1
@@ -42,6 +42,7 @@ ld \- the GNU linker
 .RB "[\|" "\-e\ "\c
 .I entry\c
 \&\|] 
+.RB "[\|" \-embedded\-relocs "\|]"
 .RB "[\|" \-F "\|]" 
 .RB "[\|" "\-F\ "\c
 .I format\c
@@ -70,6 +71,7 @@ ld \- the GNU linker
 \&\|] 
 .RB "[\|" \-n | \-N "\|]" 
 .RB "[\|" \-noinhibit-exec "\|]" 
+.RB "[\|" \-no\-keep\-memory "\|]" 
 .RB "[\|" "\-oformat\ "\c
 .I output-format\c
 \&\|] 
@@ -81,6 +83,10 @@ ld \- the GNU linker
 .RB "[\|" \-S "\|]" 
 .RB "[\|" \-s "\|]" 
 .RB "[\|" \-sort\-common "\|]" 
+.RB "[\|" \-split\-by\-reloc\ "\c
+.I count\c
+\&\|]
+.RB "[\|" \-split\-by\-file "\|]" 
 .RB "[\|" "\-T\ "\c
 .I commandfile\c
 \&\|]  
@@ -99,9 +105,11 @@ ld \- the GNU linker
 \&]
 .RB "[\|" \-V "\|]"
 .RB "[\|" \-v "\|]"
+.RB "[\|" \-\-verbose "\|]"
 .RB "[\|" \-\-version "\|]"
 .RB "[\|" \-warn\-common "\|]" 
 .RB "[\|" \-warn\-once "\|]" 
+.RB "[\|" \-\-whole\-archive "\|]" 
 .RB "[\|" \-X "\|]" 
 .RB "[\|" \-x "\|]" 
 .ad b
@@ -425,6 +433,16 @@ program, rather than the default entry point.  for a
 discussion of defaults and other ways of specifying the
 entry point.
 
+.TP
+.B \-embedded\-relocs
+This option is only meaningful when linking MIPS embedded PIC code,
+generated by the
+.B \-membedded\-pic
+option to the GNU compiler and assembler.  It causes the linker to
+create a table which may be used at runtime to relocate any data which
+was statically initialized to pointer values.  See the code in
+testsuite/ld-empic for details.
+
 .TP
 .B \-F
 .TP
@@ -549,8 +567,10 @@ common storage allocation.
 Emulate the
 .I emulation
 linker.  You can list the available emulations with the
+.I \-\-verbose
+or
 .I \-V
-option.  This option overrides the compiled-in default, which is the
+options.  This option overrides the compiled-in default, which is the
 system for which you configured
 .BR ld .
 
@@ -584,6 +604,14 @@ Normally, the linker will not produce an output file if it encounters
 errors during the link process.  With this flag, you can specify that
 you wish the output file retained even after non-fatal errors.
 
+.TP
+.B \-no\-keep\-memory
+The linker normally optimizes for speed over memory usage by caching
+the symbol tables of input files in memory.  This option tells the
+linker to instead optimize for memory usage, by rereading the symbol
+tables as necessary.  This may be required if the linker runs out of
+memory space while linking a large executable.
+
 .TP
 .BI "\-o " "output"\c
 \&
@@ -686,6 +714,28 @@ the two bytes, then all the four bytes, and then everything else.
 This is to prevent gaps between symbols due to
 alignment constraints.  This option disables that sorting.
 
+.TP
+.B \-split\-by\-reloc\ \fIcount
+Trys to creates extra sections in the output file so that no single
+output section in the file contains more than
+.I count
+relocations.
+This is useful when generating huge relocatable for downloading into
+certain real time kernels with the COFF object file format; since COFF
+cannot represent more than 65535 relocations in a single section.
+Note that this will fail to work with object file formats which do not
+support arbitrary sections.  The linker will not split up individual
+input sections for redistribution, so if a single input section
+contains more than
+.I count
+relocations one output section will contain that many relocations.
+
+.TP
+.B \-split\-by\-file
+Similar to
+.B \-split\-by\-reloc
+but creates a new output section for each input file.
+
 .TP
 .BI "\-Tbss " "org"\c
 .TP
@@ -753,17 +803,20 @@ turn serve as input to \c
 \&.
 
 .TP
-.B \-V
+.B \-\-verbose
 Display the version number for \c
 .B ld
 and list the supported emulations.
 Display which input files can and can not be opened.
 
 .TP
-.B \-v
+.B \-v, \-V
 Display the version number for \c
 .B ld\c
 \&.
+The
+.B \-V
+option also lists the supported emulations.
 
 .TP
 .B \-\-version
@@ -783,27 +836,24 @@ you to find potential problems from combining global symbols.
 Only warn once for each undefined symbol, rather than once per module
 which refers to it.
 
+.TP
+.B \-\-whole\-archive
+For each archive mentioned on the command line, include every object
+file in the archive in the link, rather than searching the archive for
+the required object files.  This is normally used to turn an archive
+file into a shared library, forcing every object to be included in the
+resulting shared library.
+
 .TP
 .B \-X 
-If \c
-.B \-s\c
-\& or \c
-.B \-S\c
-\& is also specified, delete only local symbols
-beginning with `\|\c
+Delete all temporary local symbols.  For most targets, this is all local
+symbols whose names begin with `\|\c
 .B L\c
 \|'.
 
 .TP
 .B \-x
-If \c
-.B \-s\c
-\& or \c
-.B \-S\c
-\& is also specified, delete all local symbols,
-not just those beginning with `\|\c
-.B L\c
-\|'.
+Delete all local symbols.
 
 .PP
 
This page took 0.026707 seconds and 4 git commands to generate.