mirror of
https://github.com/espressif/binutils-gdb.git
synced 2025-06-23 11:39:26 +08:00
Introduce more blanks in examples; minor formatting cleanup.
This commit is contained in:
@ -49,8 +49,8 @@ original English.
|
|||||||
@title Using ld
|
@title Using ld
|
||||||
@subtitle The GNU linker
|
@subtitle The GNU linker
|
||||||
@sp 1
|
@sp 1
|
||||||
@subtitle Second Edition---@code{ld} version 2.0
|
@subtitle @code{ld} version 2
|
||||||
@subtitle January 1992
|
@subtitle August 1992
|
||||||
@author Steve Chamberlain and Roland Pesch
|
@author Steve Chamberlain and Roland Pesch
|
||||||
@author Cygnus Support
|
@author Cygnus Support
|
||||||
@page
|
@page
|
||||||
@ -200,17 +200,17 @@ line:
|
|||||||
|
|
||||||
@smallexample
|
@smallexample
|
||||||
ld [-o @var{output} ] @var{objfiles}@dots{}
|
ld [-o @var{output} ] @var{objfiles}@dots{}
|
||||||
[ -A@var{architecture} ] [ -b @var{input-format} ] [ -Bstatic ]
|
[ -A@var{architecture} ] [ -b @var{input-format} ] [ -Bstatic ]
|
||||||
[ -c @var{MRI-commandfile} ] [ -d | -dc | -dp ]
|
[ -c @var{MRI-commandfile} ] [ -d | -dc | -dp ]
|
||||||
[ -defsym @var{symbol} = @var{expression} ]
|
[ -defsym @var{symbol} = @var{expression} ]
|
||||||
[ -e @var{entry} ] [ -F ] [ -F @var{format} ]
|
[ -e @var{entry} ] [ -F ] [ -F @var{format} ]
|
||||||
[ -format @var{input-format} ] [ -g ] [ -i ]
|
[ -format @var{input-format} ] [ -g ] [ -i ]
|
||||||
[ -l@var{ar} ] [ -L@var{searchdir} ] [ -M | -m ]
|
[ -l@var{ar} ] [ -L@var{searchdir} ] [ -M | -m ]
|
||||||
[ -n | -N ] [ -noinhibit-exec ] [ -R @var{filename} ] [ -relax ]
|
[ -n | -N ] [ -noinhibit-exec ] [ -R @var{filename} ] [ -relax ]
|
||||||
[ -r | -Ur ] [ -S ] [ -s ] [ -T @var{commandfile} ]
|
[ -r | -Ur ] [ -S ] [ -s ] [ -T @var{commandfile} ]
|
||||||
[ -Ttext @var{textorg} ] [ -Tdata @var{dataorg} ] [ -Tbss @var{bssorg} ]
|
[ -Ttext @var{textorg} ] [ -Tdata @var{dataorg} ] [ -Tbss @var{bssorg} ]
|
||||||
[ -t ] [ -u @var{sym}] [-v] [ -X ] [ -x ]
|
[ -t ] [ -u @var{sym}] [-v] [ -X ] [ -x ]
|
||||||
[ @{ @var{script} @} ]
|
[ @{ @var{script} @} ]
|
||||||
@end smallexample
|
@end smallexample
|
||||||
|
|
||||||
This plethora of command-line options may seem intimidating, but in
|
This plethora of command-line options may seem intimidating, but in
|
||||||
@ -322,7 +322,7 @@ specified (@code{-r}). The script command
|
|||||||
@code{FORCE_COMMON_ALLOCATION} has the same effect.
|
@code{FORCE_COMMON_ALLOCATION} has the same effect.
|
||||||
|
|
||||||
@cindex symbols, from command line
|
@cindex symbols, from command line
|
||||||
@kindex -defsym @var{symbol}=@var{exp}
|
@kindex -defsym @var{symbol} = @var{exp}
|
||||||
@item -defsym @var{symbol} = @var{expression}
|
@item -defsym @var{symbol} = @var{expression}
|
||||||
Create a global symbol in the output file, containing the absolute
|
Create a global symbol in the output file, containing the absolute
|
||||||
address given by @var{expression}. You may use this option as many
|
address given by @var{expression}. You may use this option as many
|
||||||
@ -1040,7 +1040,7 @@ result of an expression is required, but the value is not available,
|
|||||||
then an error results. For example, a script like the following
|
then an error results. For example, a script like the following
|
||||||
@example
|
@example
|
||||||
SECTIONS @{ @dots{}
|
SECTIONS @{ @dots{}
|
||||||
text 9+this_isnt_constant:
|
text 9+this_isnt_constant :
|
||||||
@{ @dots{}
|
@{ @dots{}
|
||||||
@}
|
@}
|
||||||
@dots{} @}
|
@dots{} @}
|
||||||
@ -1072,12 +1072,12 @@ example the @code{symbol_1} and @code{symbol_2} are assigned identical
|
|||||||
values:
|
values:
|
||||||
@example
|
@example
|
||||||
SECTIONS@{ @dots{}
|
SECTIONS@{ @dots{}
|
||||||
.output1:
|
.output1 :
|
||||||
@{
|
@{
|
||||||
start_of_output_1 = ABSOLUTE(.);
|
start_of_output_1 = ABSOLUTE(.);
|
||||||
@dots{}
|
@dots{}
|
||||||
@}
|
@}
|
||||||
.output:
|
.output :
|
||||||
@{
|
@{
|
||||||
symbol_1 = ADDR(.output1);
|
symbol_1 = ADDR(.output1);
|
||||||
symbol_2 = start_of_output_1;
|
symbol_2 = start_of_output_1;
|
||||||
@ -1092,7 +1092,7 @@ returns the result of the current location counter (@code{.}) aligned to
|
|||||||
the next @var{exp} boundary. @var{exp} must be an expression whose
|
the next @var{exp} boundary. @var{exp} must be an expression whose
|
||||||
value is a power of two. This is equivalent to
|
value is a power of two. This is equivalent to
|
||||||
@example
|
@example
|
||||||
(. + @var{exp} -1) & ~(@var{exp}-1)
|
(. + @var{exp} - 1) & ~(@var{exp} - 1)
|
||||||
@end example
|
@end example
|
||||||
|
|
||||||
@code{ALIGN} doesn't change the value of the location counter---it just
|
@code{ALIGN} doesn't change the value of the location counter---it just
|
||||||
@ -1127,7 +1127,7 @@ to set a global symbol @code{begin} to the first location in the
|
|||||||
existed, its value is preserved:
|
existed, its value is preserved:
|
||||||
@smallexample
|
@smallexample
|
||||||
SECTIONS@{ @dots{}
|
SECTIONS@{ @dots{}
|
||||||
.text: @{
|
.text : @{
|
||||||
begin = DEFINED(begin) ? begin : . ;
|
begin = DEFINED(begin) ? begin : . ;
|
||||||
@dots{}
|
@dots{}
|
||||||
@}
|
@}
|
||||||
@ -1153,9 +1153,9 @@ SECTIONS@{ @dots{}
|
|||||||
.output @{
|
.output @{
|
||||||
.start = . ;
|
.start = . ;
|
||||||
@dots{}
|
@dots{}
|
||||||
.end = .;
|
.end = . ;
|
||||||
@}
|
@}
|
||||||
symbol_1 = .end - .start;
|
symbol_1 = .end - .start ;
|
||||||
symbol_2 = SIZEOF(.output);
|
symbol_2 = SIZEOF(.output);
|
||||||
@dots{} @}
|
@dots{} @}
|
||||||
|
|
||||||
@ -1194,7 +1194,7 @@ you wish. The syntax is:
|
|||||||
@example
|
@example
|
||||||
MEMORY
|
MEMORY
|
||||||
@{
|
@{
|
||||||
@var{name} (@var{attr}): ORIGIN = @var{origin}, LENGTH = @var{len}
|
@var{name} (@var{attr}) : ORIGIN = @var{origin}, LENGTH = @var{len}
|
||||||
@dots{}
|
@dots{}
|
||||||
@}
|
@}
|
||||||
@end example
|
@end example
|
||||||
@ -1213,17 +1213,17 @@ attribute list is valid. Valid attribute lists must be made up of the
|
|||||||
characters ``@code{LIRWX}''. If you omit the attribute list, you may
|
characters ``@code{LIRWX}''. If you omit the attribute list, you may
|
||||||
omit the parentheses around it as well.
|
omit the parentheses around it as well.
|
||||||
@item @var{origin}
|
@item @var{origin}
|
||||||
@kindex ORIGIN=
|
@kindex ORIGIN =
|
||||||
@kindex o=
|
@kindex o =
|
||||||
@kindex org=
|
@kindex org =
|
||||||
is the start address of the region in physical memory. It is expressed as
|
is the start address of the region in physical memory. It is expressed as
|
||||||
an expression, which must evaluate to a constant before
|
an expression, which must evaluate to a constant before
|
||||||
memory allocation is performed. The keyword @code{ORIGIN} may be
|
memory allocation is performed. The keyword @code{ORIGIN} may be
|
||||||
abbreviated to @code{org} or @code{o}.
|
abbreviated to @code{org} or @code{o}.
|
||||||
@item @var{len}
|
@item @var{len}
|
||||||
@kindex LENGTH=
|
@kindex LENGTH =
|
||||||
@kindex len=
|
@kindex len =
|
||||||
@kindex l=
|
@kindex l =
|
||||||
is the size in bytes of the region (an expression).
|
is the size in bytes of the region (an expression).
|
||||||
The keyword @code{LENGTH} may be abbreviated to @code{len} or @code{l}.
|
The keyword @code{LENGTH} may be abbreviated to @code{len} or @code{l}.
|
||||||
@end table
|
@end table
|
||||||
@ -1235,8 +1235,8 @@ starting at @code{0x40000000} for four megabytes:
|
|||||||
@example
|
@example
|
||||||
MEMORY
|
MEMORY
|
||||||
@{
|
@{
|
||||||
rom : ORIGIN= 0, LENGTH = 256K
|
rom : ORIGIN = 0, LENGTH = 256K
|
||||||
ram : org= 0x40000000, l = 4M
|
ram : org = 0x40000000, l = 4M
|
||||||
@}
|
@}
|
||||||
@end example
|
@end example
|
||||||
|
|
||||||
@ -1344,7 +1344,7 @@ output section; @emph{all} sections from that file are placed in the
|
|||||||
current section definition. To specify a list of particular files by
|
current section definition. To specify a list of particular files by
|
||||||
name:
|
name:
|
||||||
@example
|
@example
|
||||||
.data: @{ afile.o bfile.o cfile.o @}
|
.data : @{ afile.o bfile.o cfile.o @}
|
||||||
@end example
|
@end example
|
||||||
@noindent
|
@noindent
|
||||||
The example also illustrates that multiple statements can be included in
|
The example also illustrates that multiple statements can be included in
|
||||||
@ -1404,7 +1404,7 @@ unallocated input files; its effect is exactly the same as that of
|
|||||||
|
|
||||||
@item @var{filename}@code{( COMMON )}
|
@item @var{filename}@code{( COMMON )}
|
||||||
@itemx [ COMMON ]
|
@itemx [ COMMON ]
|
||||||
@kindex [COMMON]
|
@kindex [ COMMON ]
|
||||||
@cindex uninitialized data
|
@cindex uninitialized data
|
||||||
@cindex commons in output
|
@cindex commons in output
|
||||||
Specify where in your output file to place uninitialized data
|
Specify where in your output file to place uninitialized data
|
||||||
@ -1544,7 +1544,7 @@ definition, the value is relative to the beginning of the section
|
|||||||
SECTIONS @{
|
SECTIONS @{
|
||||||
abs = 14 ;
|
abs = 14 ;
|
||||||
@dots{}
|
@dots{}
|
||||||
.data: @{ @dots{} rel = 14 ; @dots{} @}
|
.data : @{ @dots{} rel = 14 ; @dots{} @}
|
||||||
abs2 = 14 + ADDR(.data);
|
abs2 = 14 + ADDR(.data);
|
||||||
@dots{}
|
@dots{}
|
||||||
@}
|
@}
|
||||||
@ -1700,7 +1700,7 @@ For example, if your input object files use some other symbol-name
|
|||||||
convention for the entry point, you can just assign the value of
|
convention for the entry point, you can just assign the value of
|
||||||
whatever symbol contains the start address to @code{start}:
|
whatever symbol contains the start address to @code{start}:
|
||||||
@example
|
@example
|
||||||
start = other_symbol;
|
start = other_symbol ;
|
||||||
@end example
|
@end example
|
||||||
|
|
||||||
@node Other Commands, , Entry Point, Commands
|
@node Other Commands, , Entry Point, Commands
|
||||||
|
Reference in New Issue
Block a user