aboutsummaryrefslogtreecommitdiff
path: root/ld/ld.texinfo
diff options
context:
space:
mode:
authorIan Lance Taylor <ian@airs.com>1995-03-10 20:02:51 +0000
committerIan Lance Taylor <ian@airs.com>1995-03-10 20:02:51 +0000
commit01bc8f35b54955e9ddbb673b43961aa436336a2e (patch)
treef059abb3c105ed88f2d0778f08b8938997445ca8 /ld/ld.texinfo
parent6e9cac5f320724c90dadc85283f40499bc4b13c8 (diff)
downloadgdb-01bc8f35b54955e9ddbb673b43961aa436336a2e.zip
gdb-01bc8f35b54955e9ddbb673b43961aa436336a2e.tar.gz
gdb-01bc8f35b54955e9ddbb673b43961aa436336a2e.tar.bz2
* ldlex.l: Return -lFILENAME as the token LNAME.
* ldgram.y: Add token LNAME. (input_list): Treat LNAME like NAME, but pass it to lang_add_input_file as lang_input_file_is_l_enum. * ld.texinfo: Document using -lFILENAME in INPUT.
Diffstat (limited to 'ld/ld.texinfo')
-rw-r--r--ld/ld.texinfo64
1 files changed, 52 insertions, 12 deletions
diff --git a/ld/ld.texinfo b/ld/ld.texinfo
index b33094a..28eeff0 100644
--- a/ld/ld.texinfo
+++ b/ld/ld.texinfo
@@ -170,7 +170,7 @@ ld [ -o @var{output} ] @var{objfile}@dots{}
[ -A@var{architecture} ] [ -b @var{input-format} ] [ -Bstatic ]
[ -c @var{MRI-commandfile} ] [ -d | -dc | -dp ]
[ -defsym @var{symbol}=@var{expression} ]
- [ -dynamic-linker @var{file} ]
+ [ -dynamic-linker @var{file} ] [ -embedded-relocs ]
[ -e @var{entry} ] [ -F ] [ -F @var{format} ]
[ -format @var{input-format} ] [ -g ] [ -G @var{size} ] [ -help ]
[ -i ] [ -l@var{archive} ] [ -L@var{searchdir} ] [ -M ]
@@ -181,9 +181,10 @@ ld [ -o @var{output} ] @var{objfile}@dots{}
[ -sort-common ] [ -stats ] [ -T @var{commandfile} ]
[ -Ttext @var{org} ] [ -Tdata @var{org} ]
[ -Tbss @var{org} ] [ -t ] [ -traditional-format ]
- [ -u @var{symbol}] [-V] [-v] [ -version ]
- [ -warn-common ] [ -y @var{symbol} ] [ -X ] [-x ]
+ [ -u @var{symbol}] [-V] [-v] [ -verbose] [ -version ]
+ [ -warn-common ] [ -warn-once ] [ -y @var{symbol} ] [ -X ] [-x ]
[ -( [ archives ] -) ] [ --start-group [ archives ] --end-group ]
+ [ -split-by-reloc @var{count} ] [-split-by-file]
@end smallexample
This plethora of command-line options may seem intimidating, but in
@@ -360,6 +361,15 @@ linker is normally correct; don't use this unless you know what you are
doing.
@end ifset
+@cindex MIPS embedded PIC code
+@kindex -embedded-relocs
+@item -embedded-relocs
+This option is only meaningful when linking MIPS embedded PIC code,
+generated by the -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.
+
@cindex entry point, from command line
@kindex -e @var{entry}
@item -e @var{entry}
@@ -452,8 +462,8 @@ common storage allocation.
@item -m@var{emulation}
@itemx -m @var{emulation}
Emulate the @var{emulation} linker. You can list the available
-emulations with the @samp{-V} option. The
-default depends on how your @code{ld} was configured.
+emulations with the @samp{--verbose} or @samp{-V} options. The default
+depends on how your @code{ld} was configured.
@kindex -N
@cindex read/write from cmd line
@@ -607,6 +617,24 @@ one byte symbols, then all 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.
+@item -split-by-reloc @var{count}
+@kindex split
+Trys to creates extra sections in the output file so that no single output section
+in the file contains more than @var{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 @var{count} relocations one output section will contain that
+many relocations.
+
+@item -split-by-file
+@kindex split
+Similar to -split-by-reloc but creates a new output section for each
+input file.
+
@item -stats
Compute and display statistics about the operation of the linker,
such as execution time and memory usage.
@@ -678,16 +706,19 @@ with @samp{-Ur}; once the constructor table has been built, it cannot
be added to. Use @samp{-Ur} only for the last partial link, and
@samp{-r} for the others.
-@kindex -V
+@kindex --verbose
@cindex version
-@item -V
+@item --verbose
Display the version number for @code{ld} and list the linker emulations
supported. Display which input files can and cannot be opened.
@kindex -v
+@kindex -V
@cindex version
@item -v
-Display the version number for @code{ld}.
+@itemx -V
+Display the version number for @code{ld}. The @code{-V} option also
+lists the supported emulations.
@item -version
@kindex -version
@@ -778,18 +809,24 @@ encountered in a different order.
@end smallexample
@end enumerate
+@kindex -warn-once
+@cindex warnings, on undefined symbols
+@cindex undefined symbols, warnings on
+@item -warn-once
+Only warn once for each undefined symbol, rather than once per module
+which refers to it.
+
@kindex -X
@cindex local symbols, deleting
@cindex L, deleting symbols beginning
@item -X
-If @samp{-s} or @samp{-S} is also specified, delete only local symbols
-beginning with @samp{L}.
+Delete all temporary local symbols. For most targets, this is all local
+symbols whose names begin with @samp{L}.
@kindex -x
@cindex deleting local symbols
@item -x
-If @samp{-s} or @samp{-S} is also specified, delete all local symbols,
-not just those beginning with @samp{L}.
+Delete all local symbols.
@item -y @var{symbol}
@kindex -y @var{symbol}
@@ -2050,6 +2087,9 @@ search path, just as for files you specify on the command line.
See the description of @samp{-L} in @ref{Options,,Command Line
Options}.
+If you use @samp{-l@var{file}}, @code{ld} will transform the name to
+@code{lib@var{file}.a} as with the command line argument @samp{-l}.
+
@kindex GROUP ( @var{files} )
@cindex grouping input files
@item GROUP ( @var{file}, @var{file}, @dots{} )