@item U
The symbol is undefined.
+@item V
+The symbol is a weak object. When a weak defined symbol is linked with
+a normal defined symbol, the normal defined symbol is used with no error.
+When a weak undefined symbol is linked and the symbol is not defined,
+the value of the weak symbol becomes zero with no error.
+
@item W
-The symbol is weak. When a weak defined symbol is linked with a normal
-defined symbol, the normal defined symbol is used with no error. When a
-weak undefined symbol is linked and the symbol is not defined, the value
-of the weak symbol becomes zero with no error.
+The symbol is a weak symbol that has not been specifically tagged as a
+weak object symbol. When a weak defined symbol is linked with a normal
+defined symbol, the normal defined symbol is used with no error.
+When a weak undefined symbol is linked and the symbol is not defined,
+the value of the weak symbol becomes zero with no error.
@item -
The symbol is a stabs symbol in an a.out object file. In this case, the
[ --gap-fill=@var{val} ] [ --pad-to=@var{address} ]
[ --set-start=@var{val} ] [ --adjust-start=@var{incr} ]
[ --change-addresses=@var{incr} ]
- [ --change-section-address=@var{section}@{=,+,-@}@var{val} ]
- [ --change-section-lma=@var{section}@{=,+,-@}@var{val} ]
- [ --change-section-vma=@var{section}@{=,+,-@}@var{val} ]
+ [ --change-section-address @var{section}@{=,+,-@}@var{val} ]
+ [ --change-section-lma @var{section}@{=,+,-@}@var{val} ]
+ [ --change-section-vma @var{section}@{=,+,-@}@var{val} ]
[ --change-warnings ] [ --no-change-warnings ]
- [ --set-section-flags=@var{section}=@var{flags} ]
- [ --add-section=@var{sectionname}=@var{filename} ]
+ [ --set-section-flags @var{section}=@var{flags} ]
+ [ --add-section @var{sectionname}=@var{filename} ]
[ --change-leading-char ] [ --remove-leading-char ]
- [ --weaken ]
+ [ --redefine-sym @var{old}=@var{new} ] [ --weaken ]
[ -v | --verbose ] [ -V | --version ] [ --help ]
@var{infile} [@var{outfile}]
@end smallexample
when appropriate, regardless of the object file format of the output
file.
+@item --redefine-sym @var{old}=@var{new}
+Change the name of a symbol @var{old}, to @var{new}. This can be useful
+when one is trying link two things together for which you have no
+source, and there are name collisions.
+
@item --weaken
Change all global symbols in the file to be weak. This can be useful
when building an object which will be linked against other objects using
[ -z | --disassemble-zeroes ]
[ -EB | -EL | --endian=@{big | little @} ]
[ -f | --file-headers ]
+ [ --file-start-context ]
[ -g | --debugging ]
[ -h | --section-headers | --headers ]
[ -i | --info ]
Display summary information from the overall header of
each of the @var{objfile} files.
+@item --file-start-context
+@cindex source code context
+Specify that when displaying interlisted source code/disassembly
+(assumes '-S') from a file that has not yet been displayed, extend the
+context to the start of the file.
+
@item -h
@itemx --section-header
@itemx --header
If the target is an ARM architecture then this switch can be used to
select which register name set is used during disassembler. Specifying
-@samp{--disassembler-options=reg-name-std} (the default) will select the
-register names as used in ARM's instruction set documentation, but with
-register 13 called 'sp', register 14 called 'lr' and register 15 called
-'pc'. Specifying @samp{--disassembler-options=reg-names-apcs} will
-select the name set used by the ARM Procedure Call Standard, whilst
-specifying @samp{--disassembler-options=reg-names-raw} will just use
-@samp{r} followed by the register number.
+@samp{-M reg-name-std} (the default) will select the register names as
+used in ARM's instruction set documentation, but with register 13 called
+'sp', register 14 called 'lr' and register 15 called 'pc'. Specifying
+@samp{-M reg-names-apcs} will select the name set used by the ARM
+Procedure Call Standard, whilst specifying @samp{-M reg-names-raw} will
+just use @samp{r} followed by the register number.
+
+There are also two variants on the APCS register naming scheme enabled
+by @samp{-M reg-names-atpcs} and @samp{-M reg-names-special-atpcs} which
+use the ARM/Thumb Procedure Call Standard naming conventions. (Eiuther
+with the normal register name sor the special register names).
This option can also be used for ARM architectures to force the
disassembler to interpret all instructions as THUMB instructions by
@var{val} should be a hexadecimal language code. The low eight bits are
the language, and the high eight bits are the sublanguage.
+@item --use-temp-file
+Use a temporary file to instead of using popen to read the output of
+the preprocessor. Use this option if the popen implementation is buggy
+on the host (eg., certain non-English language versions of Windows 95 and
+Windows 98 are known to have buggy popen where the output will instead
+go the console).
+
+@item --no-use-temp-file
+Use popen, not a temporary file, to read the output of the preprocessor.
+This is the default behaviour.
+
@item --help
Prints a usage summary.