From 08ad992164608b882e7532ae82db721062091737 Mon Sep 17 00:00:00 2001 From: Jeffrey Osier Date: Thu, 3 Jun 1993 01:31:51 +0000 Subject: [PATCH] * c++filt.1, objcopy.1: new man pages --- binutils/ChangeLog | 12 +++++ binutils/c++filt.1 | 88 +++++++++++++++++++++++++++++++++ binutils/objcopy.1 | 142 +++++++++++++++++++++++++++++++++++++++++++++++++++++ 3 files changed, 242 insertions(+) create mode 100644 binutils/c++filt.1 create mode 100644 binutils/objcopy.1 diff --git a/binutils/ChangeLog b/binutils/ChangeLog index 7071e4e..059fe04 100644 --- a/binutils/ChangeLog +++ b/binutils/ChangeLog @@ -1,3 +1,15 @@ +Wed Jun 2 18:30:24 1993 Jeffrey Osier (jeffrey@cygnus.com) + + * c++filt.1, objcopy.1: new man pages + +Fri May 28 15:01:24 1993 Per Bothner (bothner@rtl.cygnus.com) + + * Makefile.in (install): Also install ar and ranlib in + $(tooldir)/bin; needed for building libgcc.a. + * objdump.c (objdump_print_address): Fix the check + "coincidental" label matches by dis-allowing undefined + or com symbols. + Thu May 27 16:58:31 1993 Jeffrey Osier (jeffrey@cygnus.com) * biutils.texi: revised c++filt chapter diff --git a/binutils/c++filt.1 b/binutils/c++filt.1 new file mode 100644 index 0000000..1fc8241 --- /dev/null +++ b/binutils/c++filt.1 @@ -0,0 +1,88 @@ +.\" Copyright (c) 1991 Free Software Foundation +.\" See section COPYING for conditions for redistribution +.TH c++filt 1 "June 1993" "cygnus support" "GNU Development Tools" +.de BP +.sp +.ti \-.2i +\(** +.. + +.SH NAME +c++filt\(em\&demangles C++ symbols + +.SH SYNOPSIS +.B c++filt +[ +.B -_ +] + +.SH DESCRIPTION +The C++ language provides function overloading, which means that you can +write many functions with the same name (providing each takes parameters +of different types). All C++ function names are encoded into a +low-level assembly label (in some circles this is described as +@dfn{mangling}). The +.B c++filt +program does the inverse mapping: it decodes (\fIdemangles\fR) +low-level names into user-level names so that the linker can keep +these overloaded functions from clashing. + +Every alphanumeric word (consisting of letters, digits, underscores, +dollars, or periods) seen in the input is a potential label. If the +label decodes into a C++ name, the C++ name replaces the low-level +name in the output. + +A typical use of +.B c++filt +is to pipe the output of +.B nm +though it, using +.B c++filt +as a filter: +.RS +.B nm \fIobjfile\fB | c++filt +.RE + +You can also use +.B c++filt +to decipher individual symbols by specifying these symbols on the +command line. + +All results are printed on the standard output. + +Note that on some systems, both the C and C++ compilers put an +underscore in front of every name. (I.e. the C name +.B foo +gets the low-level name +.BR _foo .) +To remove the leading underscore, specify the option +.B -_ +on the command line. + +.SH "SEE ALSO" +.RB "`\|" binutils "\|'" +entry in +.B +info\c +\&; +.I +The GNU Binary Utilities\c +\&, Roland H. Pesch (June 1993). + +.SH COPYING +Copyright (c) 1993 Free Software Foundation, Inc. +.PP +Permission is granted to make and distribute verbatim copies of +this manual provided the copyright notice and this permission notice +are preserved on all copies. +.PP +Permission is granted to copy and distribute modified versions of this +manual under the conditions for verbatim copying, provided that the +entire resulting derived work is distributed under the terms of a +permission notice identical to this one. +.PP +Permission is granted to copy and distribute translations of this +manual into another language, under the above conditions for modified +versions, except that this permission notice may be included in +translations approved by the Free Software Foundation instead of in +the original English. diff --git a/binutils/objcopy.1 b/binutils/objcopy.1 new file mode 100644 index 0000000..2323e7e --- /dev/null +++ b/binutils/objcopy.1 @@ -0,0 +1,142 @@ +.\" Copyright (c) 1991 Free Software Foundation +.\" See section COPYING for conditions for redistribution +.TH objcopy 1 "June 1993" "cygnus support" "GNU Development Tools" +.de BP +.sp +.ti \-.2i +\(** +.. + +.SH NAME +objcopy\(em\&copies and translates object files + +.SH SYNOPSIS +.hy 0 +.na +.B objcopy +.RS +[ +.B -F \fIformat\fB | --format=\fIformat\fB +] +.br +[ +.B -I \fIformat\fB | --input-format=\fIformat\fB +] +.br +[ +.B -O \fIformat\fB | --output-format=\fIformat\fB +] +.br +[ +.B -S | --strip-all +] [ +.B -g | --strip-debug +] +.br +[ +.B -x | --discard-all +] [ +.B -X | --discard-locals +] +.br +[ +.B -v | --verbose +] [ +.B -V | --version +] +.br +.I infile +[ +.I outfile +] +.RE +.SH DESCRIPTION +The GNU +.B objcopy +utility copies the contents of an object file to another. +.B objcopy +uses the GNU BFD Library to read and write the object files. It can +write the destination object file in a format different from that of +the source object file. The exact behavior of +.B objcopy +is controlled by command-line options. + +.B objcopy +creates temporary files to do its translations and deletes them +afterward. +.B objcopy +uses BFD to do all its translation work; it knows about all the +formats BFD knows about, and thus is able to recognize most formats +without being told explicitly. + +.SH OPTIONS +.TP 0.5i +.I infile\fR,\fI outfile +The source and output files respectively. If you do not specify +.IR outfile , +.B objcopy +creates a temporary file and destructively renames the result with the +name of the input file. +.TP +.B -I \fIformat\fB, --input-format=\fIformat\fB +Consider the source file's object format to be +.IR format , +rather than attempting to deduce it. +.TP +.B -O \fIformat\fB, --output-format=\fIformat\fB +Write the output file using the object format +.IR format . +.TP +.B -F \fIformat\fB, --format=\fIformat\fB +Use +.I format +as the object format for both the input and the output file; i.e. +simply transfer data from source to destination with no translation. +.TP +.B -S, --strip-all +Do not copy relocation and symbol information from the source file. +.TP +.B -g, --strip-debug +Do not copy debugging symbols from the source file. +.TP +.B -x, --discard-all +Do not copy non-global symbols from the source file. +.TP +.B -X, --discard-locals +Do not copy compiler-generated local symbols. (These usually start +with "L" or "."). +.TP +.B -v, --verbose +Verbose output: list all object files modified. In the case of +archives, "\fBobjcopy -V\fR" lists all members of the archive. +.TP +.B -V, --version +Show the version number of +.BR objcopy . +.SH "SEE ALSO" +.RB "`\|" binutils "\|'" +entry in +.B +info\c +\&; +.I +The GNU Binary Utilities\c +\&, Roland H. Pesch (June 1993). + +.SH COPYING +Copyright (c) 1993 Free Software Foundation, Inc. +.PP +Permission is granted to make and distribute verbatim copies of +this manual provided the copyright notice and this permission notice +are preserved on all copies. +.PP +Permission is granted to copy and distribute modified versions of this +manual under the conditions for verbatim copying, provided that the +entire resulting derived work is distributed under the terms of a +permission notice identical to this one. +.PP +Permission is granted to copy and distribute translations of this +manual into another language, under the above conditions for modified +versions, except that this permission notice may be included in +translations approved by the Free Software Foundation instead of in +the original English. -- 2.7.4