mirror of
https://github.com/pmret/papermario.git
synced 2024-11-18 00:42:34 +01:00
progress
This commit is contained in:
parent
842df936be
commit
241d761587
1
.gitignore
vendored
1
.gitignore
vendored
@ -9,3 +9,4 @@ papermario/build/
|
|||||||
.vscode/
|
.vscode/
|
||||||
.idea/
|
.idea/
|
||||||
.DS_Store
|
.DS_Store
|
||||||
|
venv/
|
||||||
|
@ -82,7 +82,7 @@ ranges:
|
|||||||
- [0xf79b0, 0xf99b0, "asm", "CODE_f79b0_len_2000", 0x002D3000] # frame:0x00000001 header: 0x0 trace: Tbl mapped:802d4f20
|
- [0xf79b0, 0xf99b0, "asm", "CODE_f79b0_len_2000", 0x002D3000] # frame:0x00000001 header: 0x0 trace: Tbl mapped:802d4f20
|
||||||
- [0xf99b0, 0xfb9b0, "asm", "CODE_f99b0_len_2000", 0x002D5000] # frame:0x00000001 header: 0x2000000 trace: Tbl mapped:802d6d94
|
- [0xf99b0, 0xfb9b0, "asm", "CODE_f99b0_len_2000", 0x002D5000] # frame:0x00000001 header: 0x2000000 trace: Tbl mapped:802d6d94
|
||||||
- [0xfb9b0, 0xfd9b0, "asm", "CODE_fb9b0_len_2000", 0x002D7000] # frame:0x00000001 header: 0x0 trace: Tbl mapped:802d8cec
|
- [0xfb9b0, 0xfd9b0, "asm", "CODE_fb9b0_len_2000", 0x002D7000] # frame:0x00000001 header: 0x0 trace: Tbl mapped:802d8cec
|
||||||
- [0xfd9b0, 0xfee30, "asm", "CODE_fd9b0_len_1480", 0x002D9000] # frame:0x00000001 header: D 0x44000000 trace: Tbl mapped:802d9ab0
|
- [0xfd9b0, 0x0fe650, "asm", "CODE_fd9b0_len_1480", 0x002D9000] # frame:0x00000001 header: D 0x44000000 trace: Tbl mapped:802d9ab0
|
||||||
- [0xfee30, 0x100e30, "asm", "CODE_fee30_len_2000", 0x002DBD40] # frame:0x00000001 header: 0x27000000 trace: Tbl mapped:802ddd34
|
- [0xfee30, 0x100e30, "asm", "CODE_fee30_len_2000", 0x002DBD40] # frame:0x00000001 header: 0x27000000 trace: Tbl mapped:802ddd34
|
||||||
- [0x100e30, 0x102610, "asm", "CODE_100e30_len_17e0", 0x002DDD40] # frame:0x00000001 header: 0x24000000 trace: Tbl mapped:802df354
|
- [0x100e30, 0x102610, "asm", "CODE_100e30_len_17e0", 0x002DDD40] # frame:0x00000001 header: 0x24000000 trace: Tbl mapped:802df354
|
||||||
- [0x102610, 0x104610, "asm", "CODE_102610_len_2000", 0x002E0D90] # frame:0x00000001 header: 0x3c000000 trace: Tbl mapped:802e13d4
|
- [0x102610, 0x104610, "asm", "CODE_102610_len_2000", 0x002E0D90] # frame:0x00000001 header: 0x3c000000 trace: Tbl mapped:802e13d4
|
||||||
|
BIN
oldbinutils/bin/mips-addr2line
Executable file
BIN
oldbinutils/bin/mips-addr2line
Executable file
Binary file not shown.
BIN
oldbinutils/bin/mips-ar
Executable file
BIN
oldbinutils/bin/mips-ar
Executable file
Binary file not shown.
BIN
oldbinutils/bin/mips-as
Executable file
BIN
oldbinutils/bin/mips-as
Executable file
Binary file not shown.
BIN
oldbinutils/bin/mips-c++filt
Executable file
BIN
oldbinutils/bin/mips-c++filt
Executable file
Binary file not shown.
BIN
oldbinutils/bin/mips-gasp
Executable file
BIN
oldbinutils/bin/mips-gasp
Executable file
Binary file not shown.
BIN
oldbinutils/bin/mips-ld
Executable file
BIN
oldbinutils/bin/mips-ld
Executable file
Binary file not shown.
BIN
oldbinutils/bin/mips-nintendo-nu64-as
Executable file
BIN
oldbinutils/bin/mips-nintendo-nu64-as
Executable file
Binary file not shown.
BIN
oldbinutils/bin/mips-nm
Executable file
BIN
oldbinutils/bin/mips-nm
Executable file
Binary file not shown.
BIN
oldbinutils/bin/mips-objcopy
Executable file
BIN
oldbinutils/bin/mips-objcopy
Executable file
Binary file not shown.
BIN
oldbinutils/bin/mips-objdump
Executable file
BIN
oldbinutils/bin/mips-objdump
Executable file
Binary file not shown.
BIN
oldbinutils/bin/mips-ranlib
Executable file
BIN
oldbinutils/bin/mips-ranlib
Executable file
Binary file not shown.
BIN
oldbinutils/bin/mips-size
Executable file
BIN
oldbinutils/bin/mips-size
Executable file
Binary file not shown.
BIN
oldbinutils/bin/mips-strings
Executable file
BIN
oldbinutils/bin/mips-strings
Executable file
Binary file not shown.
BIN
oldbinutils/bin/mips-strip
Executable file
BIN
oldbinutils/bin/mips-strip
Executable file
Binary file not shown.
154
oldbinutils/include/ansidecl.h
Normal file
154
oldbinutils/include/ansidecl.h
Normal file
@ -0,0 +1,154 @@
|
|||||||
|
/* ANSI and traditional C compatability macros
|
||||||
|
Copyright 1991, 1992, 1996 Free Software Foundation, Inc.
|
||||||
|
This file is part of the GNU C Library.
|
||||||
|
|
||||||
|
This program is free software; you can redistribute it and/or modify
|
||||||
|
it under the terms of the GNU General Public License as published by
|
||||||
|
the Free Software Foundation; either version 2 of the License, or
|
||||||
|
(at your option) any later version.
|
||||||
|
|
||||||
|
This program is distributed in the hope that it will be useful,
|
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
GNU General Public License for more details.
|
||||||
|
|
||||||
|
You should have received a copy of the GNU General Public License
|
||||||
|
along with this program; if not, write to the Free Software
|
||||||
|
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
|
||||||
|
|
||||||
|
/* ANSI and traditional C compatibility macros
|
||||||
|
|
||||||
|
ANSI C is assumed if __STDC__ is #defined.
|
||||||
|
|
||||||
|
Macro ANSI C definition Traditional C definition
|
||||||
|
----- ---- - ---------- ----------- - ----------
|
||||||
|
PTR `void *' `char *'
|
||||||
|
LONG_DOUBLE `long double' `double'
|
||||||
|
VOLATILE `volatile' `'
|
||||||
|
SIGNED `signed' `'
|
||||||
|
PTRCONST `void *const' `char *'
|
||||||
|
ANSI_PROTOTYPES 1 not defined
|
||||||
|
|
||||||
|
CONST is also defined, but is obsolete. Just use const.
|
||||||
|
|
||||||
|
obsolete -- DEFUN (name, arglist, args)
|
||||||
|
|
||||||
|
Defines function NAME.
|
||||||
|
|
||||||
|
ARGLIST lists the arguments, separated by commas and enclosed in
|
||||||
|
parentheses. ARGLIST becomes the argument list in traditional C.
|
||||||
|
|
||||||
|
ARGS list the arguments with their types. It becomes a prototype in
|
||||||
|
ANSI C, and the type declarations in traditional C. Arguments should
|
||||||
|
be separated with `AND'. For functions with a variable number of
|
||||||
|
arguments, the last thing listed should be `DOTS'.
|
||||||
|
|
||||||
|
obsolete -- DEFUN_VOID (name)
|
||||||
|
|
||||||
|
Defines a function NAME, which takes no arguments.
|
||||||
|
|
||||||
|
obsolete -- EXFUN (name, (prototype)) -- obsolete.
|
||||||
|
|
||||||
|
Replaced by PARAMS. Do not use; will disappear someday soon.
|
||||||
|
Was used in external function declarations.
|
||||||
|
In ANSI C it is `NAME PROTOTYPE' (so PROTOTYPE should be enclosed in
|
||||||
|
parentheses). In traditional C it is `NAME()'.
|
||||||
|
For a function that takes no arguments, PROTOTYPE should be `(void)'.
|
||||||
|
|
||||||
|
obsolete -- PROTO (type, name, (prototype) -- obsolete.
|
||||||
|
|
||||||
|
This one has also been replaced by PARAMS. Do not use.
|
||||||
|
|
||||||
|
PARAMS ((args))
|
||||||
|
|
||||||
|
We could use the EXFUN macro to handle prototype declarations, but
|
||||||
|
the name is misleading and the result is ugly. So we just define a
|
||||||
|
simple macro to handle the parameter lists, as in:
|
||||||
|
|
||||||
|
static int foo PARAMS ((int, char));
|
||||||
|
|
||||||
|
This produces: `static int foo();' or `static int foo (int, char);'
|
||||||
|
|
||||||
|
EXFUN would have done it like this:
|
||||||
|
|
||||||
|
static int EXFUN (foo, (int, char));
|
||||||
|
|
||||||
|
but the function is not external...and it's hard to visually parse
|
||||||
|
the function name out of the mess. EXFUN should be considered
|
||||||
|
obsolete; new code should be written to use PARAMS.
|
||||||
|
|
||||||
|
DOTS is also obsolete.
|
||||||
|
|
||||||
|
Examples:
|
||||||
|
|
||||||
|
extern int printf PARAMS ((const char *format, ...));
|
||||||
|
*/
|
||||||
|
|
||||||
|
#ifndef _ANSIDECL_H
|
||||||
|
|
||||||
|
#define _ANSIDECL_H 1
|
||||||
|
|
||||||
|
|
||||||
|
/* Every source file includes this file,
|
||||||
|
so they will all get the switch for lint. */
|
||||||
|
/* LINTLIBRARY */
|
||||||
|
|
||||||
|
|
||||||
|
#if defined (__STDC__) || defined (_AIX) || (defined (__mips) && defined (_SYSTYPE_SVR4)) || defined(_WIN32)
|
||||||
|
/* All known AIX compilers implement these things (but don't always
|
||||||
|
define __STDC__). The RISC/OS MIPS compiler defines these things
|
||||||
|
in SVR4 mode, but does not define __STDC__. */
|
||||||
|
|
||||||
|
#define PTR void *
|
||||||
|
#define PTRCONST void *CONST
|
||||||
|
#define LONG_DOUBLE long double
|
||||||
|
|
||||||
|
#define AND ,
|
||||||
|
#define NOARGS void
|
||||||
|
#define VOLATILE volatile
|
||||||
|
#define SIGNED signed
|
||||||
|
|
||||||
|
#define PARAMS(paramlist) paramlist
|
||||||
|
#define ANSI_PROTOTYPES 1
|
||||||
|
|
||||||
|
#define VPARAMS(ARGS) ARGS
|
||||||
|
#define VA_START(va_list,var) va_start(va_list,var)
|
||||||
|
|
||||||
|
/* These are obsolete. Do not use. */
|
||||||
|
#define CONST const
|
||||||
|
#define DOTS , ...
|
||||||
|
#define PROTO(type, name, arglist) type name arglist
|
||||||
|
#define EXFUN(name, proto) name proto
|
||||||
|
#define DEFUN(name, arglist, args) name(args)
|
||||||
|
#define DEFUN_VOID(name) name(void)
|
||||||
|
|
||||||
|
#else /* Not ANSI C. */
|
||||||
|
|
||||||
|
#define PTR char *
|
||||||
|
#define PTRCONST PTR
|
||||||
|
#define LONG_DOUBLE double
|
||||||
|
|
||||||
|
#define AND ;
|
||||||
|
#define NOARGS
|
||||||
|
#ifndef const /* some systems define it in header files for non-ansi mode */
|
||||||
|
#define const
|
||||||
|
#endif
|
||||||
|
#define VOLATILE
|
||||||
|
#define SIGNED
|
||||||
|
|
||||||
|
#define PARAMS(paramlist) ()
|
||||||
|
|
||||||
|
#define VPARAMS(ARGS) (va_alist) va_dcl
|
||||||
|
#define VA_START(va_list,var) va_start(va_list)
|
||||||
|
|
||||||
|
/* These are obsolete. Do not use. */
|
||||||
|
#define CONST
|
||||||
|
#define DOTS
|
||||||
|
#define PROTO(type, name, arglist) type name ()
|
||||||
|
#define EXFUN(name, proto) name()
|
||||||
|
#define DEFUN(name, arglist, args) name arglist args;
|
||||||
|
#define DEFUN_VOID(name) name()
|
||||||
|
|
||||||
|
#endif /* ANSI C. */
|
||||||
|
|
||||||
|
#endif /* ansidecl.h */
|
2796
oldbinutils/include/bfd.h
Normal file
2796
oldbinutils/include/bfd.h
Normal file
File diff suppressed because it is too large
Load Diff
507
oldbinutils/include/bfdlink.h
Normal file
507
oldbinutils/include/bfdlink.h
Normal file
@ -0,0 +1,507 @@
|
|||||||
|
/* bfdlink.h -- header file for BFD link routines
|
||||||
|
Copyright 1993, 94, 95, 96, 1997 Free Software Foundation, Inc.
|
||||||
|
Written by Steve Chamberlain and Ian Lance Taylor, Cygnus Support.
|
||||||
|
|
||||||
|
This file is part of BFD, the Binary File Descriptor library.
|
||||||
|
|
||||||
|
This program is free software; you can redistribute it and/or modify
|
||||||
|
it under the terms of the GNU General Public License as published by
|
||||||
|
the Free Software Foundation; either version 2 of the License, or
|
||||||
|
(at your option) any later version.
|
||||||
|
|
||||||
|
This program is distributed in the hope that it will be useful,
|
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
GNU General Public License for more details.
|
||||||
|
|
||||||
|
You should have received a copy of the GNU General Public License
|
||||||
|
along with this program; if not, write to the Free Software
|
||||||
|
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
|
||||||
|
|
||||||
|
#ifndef BFDLINK_H
|
||||||
|
#define BFDLINK_H
|
||||||
|
|
||||||
|
/* Which symbols to strip during a link. */
|
||||||
|
enum bfd_link_strip
|
||||||
|
{
|
||||||
|
strip_none, /* Don't strip any symbols. */
|
||||||
|
strip_debugger, /* Strip debugging symbols. */
|
||||||
|
strip_some, /* keep_hash is the list of symbols to keep. */
|
||||||
|
strip_all /* Strip all symbols. */
|
||||||
|
};
|
||||||
|
|
||||||
|
/* Which local symbols to discard during a link. This is irrelevant
|
||||||
|
if strip_all is used. */
|
||||||
|
enum bfd_link_discard
|
||||||
|
{
|
||||||
|
discard_none, /* Don't discard any locals. */
|
||||||
|
discard_l, /* Discard local temporary symbols. */
|
||||||
|
discard_all /* Discard all locals. */
|
||||||
|
};
|
||||||
|
|
||||||
|
/* These are the possible types of an entry in the BFD link hash
|
||||||
|
table. */
|
||||||
|
|
||||||
|
enum bfd_link_hash_type
|
||||||
|
{
|
||||||
|
bfd_link_hash_new, /* Symbol is new. */
|
||||||
|
bfd_link_hash_undefined, /* Symbol seen before, but undefined. */
|
||||||
|
bfd_link_hash_undefweak, /* Symbol is weak and undefined. */
|
||||||
|
bfd_link_hash_defined, /* Symbol is defined. */
|
||||||
|
bfd_link_hash_defweak, /* Symbol is weak and defined. */
|
||||||
|
bfd_link_hash_common, /* Symbol is common. */
|
||||||
|
bfd_link_hash_indirect, /* Symbol is an indirect link. */
|
||||||
|
bfd_link_hash_warning /* Like indirect, but warn if referenced. */
|
||||||
|
};
|
||||||
|
|
||||||
|
/* The linking routines use a hash table which uses this structure for
|
||||||
|
its elements. */
|
||||||
|
|
||||||
|
struct bfd_link_hash_entry
|
||||||
|
{
|
||||||
|
/* Base hash table entry structure. */
|
||||||
|
struct bfd_hash_entry root;
|
||||||
|
/* Type of this entry. */
|
||||||
|
enum bfd_link_hash_type type;
|
||||||
|
|
||||||
|
/* Undefined and common symbols are kept in a linked list through
|
||||||
|
this field. This field is not in the union because that would
|
||||||
|
force us to remove entries from the list when we changed their
|
||||||
|
type, which would force the list to be doubly linked, which would
|
||||||
|
waste more memory. When an undefined or common symbol is
|
||||||
|
created, it should be added to this list, the head of which is in
|
||||||
|
the link hash table itself. As symbols are defined, they need
|
||||||
|
not be removed from the list; anything which reads the list must
|
||||||
|
doublecheck the symbol type.
|
||||||
|
|
||||||
|
Weak symbols are not kept on this list.
|
||||||
|
|
||||||
|
Defined and defweak symbols use this field as a reference marker.
|
||||||
|
If the field is not NULL, or this structure is the tail of the
|
||||||
|
undefined symbol list, the symbol has been referenced. If the
|
||||||
|
symbol is undefined and becomes defined, this field will
|
||||||
|
automatically be non-NULL since the symbol will have been on the
|
||||||
|
undefined symbol list. */
|
||||||
|
struct bfd_link_hash_entry *next;
|
||||||
|
/* A union of information depending upon the type. */
|
||||||
|
union
|
||||||
|
{
|
||||||
|
/* Nothing is kept for bfd_hash_new. */
|
||||||
|
/* bfd_link_hash_undefined, bfd_link_hash_undefweak. */
|
||||||
|
struct
|
||||||
|
{
|
||||||
|
bfd *abfd; /* BFD symbol was found in. */
|
||||||
|
} undef;
|
||||||
|
/* bfd_link_hash_defined, bfd_link_hash_defweak. */
|
||||||
|
struct
|
||||||
|
{
|
||||||
|
bfd_vma value; /* Symbol value. */
|
||||||
|
asection *section; /* Symbol section. */
|
||||||
|
} def;
|
||||||
|
/* bfd_link_hash_indirect, bfd_link_hash_warning. */
|
||||||
|
struct
|
||||||
|
{
|
||||||
|
struct bfd_link_hash_entry *link; /* Real symbol. */
|
||||||
|
const char *warning; /* Warning (bfd_link_hash_warning only). */
|
||||||
|
} i;
|
||||||
|
/* bfd_link_hash_common. */
|
||||||
|
struct
|
||||||
|
{
|
||||||
|
/* The linker needs to know three things about common
|
||||||
|
symbols: the size, the alignment, and the section in
|
||||||
|
which the symbol should be placed. We store the size
|
||||||
|
here, and we allocate a small structure to hold the
|
||||||
|
section and the alignment. The alignment is stored as a
|
||||||
|
power of two. We don't store all the information
|
||||||
|
directly because we don't want to increase the size of
|
||||||
|
the union; this structure is a major space user in the
|
||||||
|
linker. */
|
||||||
|
bfd_size_type size; /* Common symbol size. */
|
||||||
|
struct bfd_link_hash_common_entry
|
||||||
|
{
|
||||||
|
unsigned int alignment_power; /* Alignment. */
|
||||||
|
asection *section; /* Symbol section. */
|
||||||
|
} *p;
|
||||||
|
} c;
|
||||||
|
} u;
|
||||||
|
};
|
||||||
|
|
||||||
|
/* This is the link hash table. It is a derived class of
|
||||||
|
bfd_hash_table. */
|
||||||
|
|
||||||
|
struct bfd_link_hash_table
|
||||||
|
{
|
||||||
|
/* The hash table itself. */
|
||||||
|
struct bfd_hash_table table;
|
||||||
|
/* The back end which created this hash table. This indicates the
|
||||||
|
type of the entries in the hash table, which is sometimes
|
||||||
|
important information when linking object files of different
|
||||||
|
types together. */
|
||||||
|
const bfd_target *creator;
|
||||||
|
/* A linked list of undefined and common symbols, linked through the
|
||||||
|
next field in the bfd_link_hash_entry structure. */
|
||||||
|
struct bfd_link_hash_entry *undefs;
|
||||||
|
/* Entries are added to the tail of the undefs list. */
|
||||||
|
struct bfd_link_hash_entry *undefs_tail;
|
||||||
|
};
|
||||||
|
|
||||||
|
/* Look up an entry in a link hash table. If FOLLOW is true, this
|
||||||
|
follows bfd_link_hash_indirect and bfd_link_hash_warning links to
|
||||||
|
the real symbol. */
|
||||||
|
extern struct bfd_link_hash_entry *bfd_link_hash_lookup
|
||||||
|
PARAMS ((struct bfd_link_hash_table *, const char *, boolean create,
|
||||||
|
boolean copy, boolean follow));
|
||||||
|
|
||||||
|
/* Look up an entry in the main linker hash table if the symbol might
|
||||||
|
be wrapped. This should only be used for references to an
|
||||||
|
undefined symbol, not for definitions of a symbol. */
|
||||||
|
|
||||||
|
extern struct bfd_link_hash_entry *bfd_wrapped_link_hash_lookup
|
||||||
|
PARAMS ((bfd *, struct bfd_link_info *, const char *, boolean, boolean,
|
||||||
|
boolean));
|
||||||
|
|
||||||
|
/* Traverse a link hash table. */
|
||||||
|
extern void bfd_link_hash_traverse
|
||||||
|
PARAMS ((struct bfd_link_hash_table *,
|
||||||
|
boolean (*) (struct bfd_link_hash_entry *, PTR),
|
||||||
|
PTR));
|
||||||
|
|
||||||
|
/* Add an entry to the undefs list. */
|
||||||
|
extern void bfd_link_add_undef
|
||||||
|
PARAMS ((struct bfd_link_hash_table *, struct bfd_link_hash_entry *));
|
||||||
|
|
||||||
|
/* This structure holds all the information needed to communicate
|
||||||
|
between BFD and the linker when doing a link. */
|
||||||
|
|
||||||
|
struct bfd_link_info
|
||||||
|
{
|
||||||
|
/* Function callbacks. */
|
||||||
|
const struct bfd_link_callbacks *callbacks;
|
||||||
|
/* true if BFD should generate a relocateable object file. */
|
||||||
|
boolean relocateable;
|
||||||
|
/* true if BFD should generate a "task linked" object file,
|
||||||
|
similar to relocatable but also with globals converted to statics. */
|
||||||
|
boolean task_link;
|
||||||
|
/* true if BFD should generate a shared object. */
|
||||||
|
boolean shared;
|
||||||
|
/* true if BFD should pre-bind symbols in a shared object. */
|
||||||
|
boolean symbolic;
|
||||||
|
/* true if shared objects should be linked directly, not shared. */
|
||||||
|
boolean static_link;
|
||||||
|
/* true if the output file should be in a traditional format. This
|
||||||
|
is equivalent to the setting of the BFD_TRADITIONAL_FORMAT flag
|
||||||
|
on the output file, but may be checked when reading the input
|
||||||
|
files. */
|
||||||
|
boolean traditional_format;
|
||||||
|
/* Which symbols to strip. */
|
||||||
|
enum bfd_link_strip strip;
|
||||||
|
/* Which local symbols to discard. */
|
||||||
|
enum bfd_link_discard discard;
|
||||||
|
/* true if symbols should be retained in memory, false if they
|
||||||
|
should be freed and reread. */
|
||||||
|
boolean keep_memory;
|
||||||
|
/* The list of input BFD's involved in the link. These are chained
|
||||||
|
together via the link_next field. */
|
||||||
|
bfd *input_bfds;
|
||||||
|
/* If a symbol should be created for each input BFD, this is section
|
||||||
|
where those symbols should be placed. It must be a section in
|
||||||
|
the output BFD. It may be NULL, in which case no such symbols
|
||||||
|
will be created. This is to support CREATE_OBJECT_SYMBOLS in the
|
||||||
|
linker command language. */
|
||||||
|
asection *create_object_symbols_section;
|
||||||
|
/* Hash table handled by BFD. */
|
||||||
|
struct bfd_link_hash_table *hash;
|
||||||
|
/* Hash table of symbols to keep. This is NULL unless strip is
|
||||||
|
strip_some. */
|
||||||
|
struct bfd_hash_table *keep_hash;
|
||||||
|
/* true if every symbol should be reported back via the notice
|
||||||
|
callback. */
|
||||||
|
boolean notice_all;
|
||||||
|
/* Hash table of symbols to report back via the notice callback. If
|
||||||
|
this is NULL, and notice_all is false, then no symbols are
|
||||||
|
reported back. */
|
||||||
|
struct bfd_hash_table *notice_hash;
|
||||||
|
/* Hash table of symbols which are being wrapped (the --wrap linker
|
||||||
|
option). If this is NULL, no symbols are being wrapped. */
|
||||||
|
struct bfd_hash_table *wrap_hash;
|
||||||
|
/* If a base output file is wanted, then this points to it */
|
||||||
|
PTR base_file;
|
||||||
|
};
|
||||||
|
|
||||||
|
/* This structures holds a set of callback functions. These are
|
||||||
|
called by the BFD linker routines. The first argument to each
|
||||||
|
callback function is the bfd_link_info structure being used. Each
|
||||||
|
function returns a boolean value. If the function returns false,
|
||||||
|
then the BFD function which called it will return with a failure
|
||||||
|
indication. */
|
||||||
|
|
||||||
|
struct bfd_link_callbacks
|
||||||
|
{
|
||||||
|
/* A function which is called when an object is added from an
|
||||||
|
archive. ABFD is the archive element being added. NAME is the
|
||||||
|
name of the symbol which caused the archive element to be pulled
|
||||||
|
in. */
|
||||||
|
boolean (*add_archive_element) PARAMS ((struct bfd_link_info *,
|
||||||
|
bfd *abfd,
|
||||||
|
const char *name));
|
||||||
|
/* A function which is called when a symbol is found with multiple
|
||||||
|
definitions. NAME is the symbol which is defined multiple times.
|
||||||
|
OBFD is the old BFD, OSEC is the old section, OVAL is the old
|
||||||
|
value, NBFD is the new BFD, NSEC is the new section, and NVAL is
|
||||||
|
the new value. OBFD may be NULL. OSEC and NSEC may be
|
||||||
|
bfd_com_section or bfd_ind_section. */
|
||||||
|
boolean (*multiple_definition) PARAMS ((struct bfd_link_info *,
|
||||||
|
const char *name,
|
||||||
|
bfd *obfd,
|
||||||
|
asection *osec,
|
||||||
|
bfd_vma oval,
|
||||||
|
bfd *nbfd,
|
||||||
|
asection *nsec,
|
||||||
|
bfd_vma nval));
|
||||||
|
/* A function which is called when a common symbol is defined
|
||||||
|
multiple times. NAME is the symbol appearing multiple times.
|
||||||
|
OBFD is the BFD of the existing symbol; it may be NULL if this is
|
||||||
|
not known. OTYPE is the type of the existing symbol, which may
|
||||||
|
be bfd_link_hash_defined, bfd_link_hash_defweak,
|
||||||
|
bfd_link_hash_common, or bfd_link_hash_indirect. If OTYPE is
|
||||||
|
bfd_link_hash_common, OSIZE is the size of the existing symbol.
|
||||||
|
NBFD is the BFD of the new symbol. NTYPE is the type of the new
|
||||||
|
symbol, one of bfd_link_hash_defined, bfd_link_hash_common, or
|
||||||
|
bfd_link_hash_indirect. If NTYPE is bfd_link_hash_common, NSIZE
|
||||||
|
is the size of the new symbol. */
|
||||||
|
boolean (*multiple_common) PARAMS ((struct bfd_link_info *,
|
||||||
|
const char *name,
|
||||||
|
bfd *obfd,
|
||||||
|
enum bfd_link_hash_type otype,
|
||||||
|
bfd_vma osize,
|
||||||
|
bfd *nbfd,
|
||||||
|
enum bfd_link_hash_type ntype,
|
||||||
|
bfd_vma nsize));
|
||||||
|
/* A function which is called to add a symbol to a set. ENTRY is
|
||||||
|
the link hash table entry for the set itself (e.g.,
|
||||||
|
__CTOR_LIST__). RELOC is the relocation to use for an entry in
|
||||||
|
the set when generating a relocateable file, and is also used to
|
||||||
|
get the size of the entry when generating an executable file.
|
||||||
|
ABFD, SEC and VALUE identify the value to add to the set. */
|
||||||
|
boolean (*add_to_set) PARAMS ((struct bfd_link_info *,
|
||||||
|
struct bfd_link_hash_entry *entry,
|
||||||
|
bfd_reloc_code_real_type reloc,
|
||||||
|
bfd *abfd, asection *sec, bfd_vma value));
|
||||||
|
/* A function which is called when the name of a g++ constructor or
|
||||||
|
destructor is found. This is only called by some object file
|
||||||
|
formats. CONSTRUCTOR is true for a constructor, false for a
|
||||||
|
destructor. This will use BFD_RELOC_CTOR when generating a
|
||||||
|
relocateable file. NAME is the name of the symbol found. ABFD,
|
||||||
|
SECTION and VALUE are the value of the symbol. */
|
||||||
|
boolean (*constructor) PARAMS ((struct bfd_link_info *,
|
||||||
|
boolean constructor,
|
||||||
|
const char *name, bfd *abfd, asection *sec,
|
||||||
|
bfd_vma value));
|
||||||
|
/* A function which is called to issue a linker warning. For
|
||||||
|
example, this is called when there is a reference to a warning
|
||||||
|
symbol. WARNING is the warning to be issued. SYMBOL is the name
|
||||||
|
of the symbol which triggered the warning; it may be NULL if
|
||||||
|
there is none. ABFD, SECTION and ADDRESS identify the location
|
||||||
|
which trigerred the warning; either ABFD or SECTION or both may
|
||||||
|
be NULL if the location is not known. */
|
||||||
|
boolean (*warning) PARAMS ((struct bfd_link_info *,
|
||||||
|
const char *warning, const char *symbol,
|
||||||
|
bfd *abfd, asection *section,
|
||||||
|
bfd_vma address));
|
||||||
|
/* A function which is called when a relocation is attempted against
|
||||||
|
an undefined symbol. NAME is the symbol which is undefined.
|
||||||
|
ABFD, SECTION and ADDRESS identify the location from which the
|
||||||
|
reference is made. In some cases SECTION may be NULL. */
|
||||||
|
boolean (*undefined_symbol) PARAMS ((struct bfd_link_info *,
|
||||||
|
const char *name, bfd *abfd,
|
||||||
|
asection *section, bfd_vma address));
|
||||||
|
/* A function which is called when a reloc overflow occurs. NAME is
|
||||||
|
the name of the symbol or section the reloc is against,
|
||||||
|
RELOC_NAME is the name of the relocation, and ADDEND is any
|
||||||
|
addend that is used. ABFD, SECTION and ADDRESS identify the
|
||||||
|
location at which the overflow occurs; if this is the result of a
|
||||||
|
bfd_section_reloc_link_order or bfd_symbol_reloc_link_order, then
|
||||||
|
ABFD will be NULL. */
|
||||||
|
boolean (*reloc_overflow) PARAMS ((struct bfd_link_info *,
|
||||||
|
const char *name,
|
||||||
|
const char *reloc_name, bfd_vma addend,
|
||||||
|
bfd *abfd, asection *section,
|
||||||
|
bfd_vma address));
|
||||||
|
/* A function which is called when a dangerous reloc is performed.
|
||||||
|
The canonical example is an a29k IHCONST reloc which does not
|
||||||
|
follow an IHIHALF reloc. MESSAGE is an appropriate message.
|
||||||
|
ABFD, SECTION and ADDRESS identify the location at which the
|
||||||
|
problem occurred; if this is the result of a
|
||||||
|
bfd_section_reloc_link_order or bfd_symbol_reloc_link_order, then
|
||||||
|
ABFD will be NULL. */
|
||||||
|
boolean (*reloc_dangerous) PARAMS ((struct bfd_link_info *,
|
||||||
|
const char *message,
|
||||||
|
bfd *abfd, asection *section,
|
||||||
|
bfd_vma address));
|
||||||
|
/* A function which is called when a reloc is found to be attached
|
||||||
|
to a symbol which is not being written out. NAME is the name of
|
||||||
|
the symbol. ABFD, SECTION and ADDRESS identify the location of
|
||||||
|
the reloc; if this is the result of a
|
||||||
|
bfd_section_reloc_link_order or bfd_symbol_reloc_link_order, then
|
||||||
|
ABFD will be NULL. */
|
||||||
|
boolean (*unattached_reloc) PARAMS ((struct bfd_link_info *,
|
||||||
|
const char *name,
|
||||||
|
bfd *abfd, asection *section,
|
||||||
|
bfd_vma address));
|
||||||
|
/* A function which is called when a symbol in notice_hash is
|
||||||
|
defined or referenced. NAME is the symbol. ABFD, SECTION and
|
||||||
|
ADDRESS are the value of the symbol. If SECTION is
|
||||||
|
bfd_und_section, this is a reference. */
|
||||||
|
boolean (*notice) PARAMS ((struct bfd_link_info *, const char *name,
|
||||||
|
bfd *abfd, asection *section, bfd_vma address));
|
||||||
|
};
|
||||||
|
|
||||||
|
/* The linker builds link_order structures which tell the code how to
|
||||||
|
include input data in the output file. */
|
||||||
|
|
||||||
|
/* These are the types of link_order structures. */
|
||||||
|
|
||||||
|
enum bfd_link_order_type
|
||||||
|
{
|
||||||
|
bfd_undefined_link_order, /* Undefined. */
|
||||||
|
bfd_indirect_link_order, /* Built from a section. */
|
||||||
|
bfd_fill_link_order, /* Fill with a 16 bit constant. */
|
||||||
|
bfd_data_link_order, /* Set to explicit data. */
|
||||||
|
bfd_section_reloc_link_order, /* Relocate against a section. */
|
||||||
|
bfd_symbol_reloc_link_order /* Relocate against a symbol. */
|
||||||
|
};
|
||||||
|
|
||||||
|
/* This is the link_order structure itself. These form a chain
|
||||||
|
attached to the section whose contents they are describing. */
|
||||||
|
|
||||||
|
struct bfd_link_order
|
||||||
|
{
|
||||||
|
/* Next link_order in chain. */
|
||||||
|
struct bfd_link_order *next;
|
||||||
|
/* Type of link_order. */
|
||||||
|
enum bfd_link_order_type type;
|
||||||
|
/* Offset within output section. */
|
||||||
|
bfd_vma offset;
|
||||||
|
/* Size within output section. */
|
||||||
|
bfd_size_type size;
|
||||||
|
/* Type specific information. */
|
||||||
|
union
|
||||||
|
{
|
||||||
|
struct
|
||||||
|
{
|
||||||
|
/* Section to include. If this is used, then
|
||||||
|
section->output_section must be the section the
|
||||||
|
link_order is attached to, section->output_offset must
|
||||||
|
equal the link_order offset field, and section->_raw_size
|
||||||
|
must equal the link_order size field. Maybe these
|
||||||
|
restrictions should be relaxed someday. */
|
||||||
|
asection *section;
|
||||||
|
} indirect;
|
||||||
|
struct
|
||||||
|
{
|
||||||
|
/* Value to fill with. */
|
||||||
|
unsigned int value;
|
||||||
|
} fill;
|
||||||
|
struct
|
||||||
|
{
|
||||||
|
/* Data to put into file. The size field gives the number
|
||||||
|
of bytes which this field points to. */
|
||||||
|
bfd_byte *contents;
|
||||||
|
} data;
|
||||||
|
struct
|
||||||
|
{
|
||||||
|
/* Description of reloc to generate. Used for
|
||||||
|
bfd_section_reloc_link_order and
|
||||||
|
bfd_symbol_reloc_link_order. */
|
||||||
|
struct bfd_link_order_reloc *p;
|
||||||
|
} reloc;
|
||||||
|
} u;
|
||||||
|
};
|
||||||
|
|
||||||
|
/* A linker order of type bfd_section_reloc_link_order or
|
||||||
|
bfd_symbol_reloc_link_order means to create a reloc against a
|
||||||
|
section or symbol, respectively. This is used to implement -Ur to
|
||||||
|
generate relocs for the constructor tables. The
|
||||||
|
bfd_link_order_reloc structure describes the reloc that BFD should
|
||||||
|
create. It is similar to a arelent, but I didn't use arelent
|
||||||
|
because the linker does not know anything about most symbols, and
|
||||||
|
any asymbol structure it creates will be partially meaningless.
|
||||||
|
This information could logically be in the bfd_link_order struct,
|
||||||
|
but I didn't want to waste the space since these types of relocs
|
||||||
|
are relatively rare. */
|
||||||
|
|
||||||
|
struct bfd_link_order_reloc
|
||||||
|
{
|
||||||
|
/* Reloc type. */
|
||||||
|
bfd_reloc_code_real_type reloc;
|
||||||
|
|
||||||
|
union
|
||||||
|
{
|
||||||
|
/* For type bfd_section_reloc_link_order, this is the section
|
||||||
|
the reloc should be against. This must be a section in the
|
||||||
|
output BFD, not any of the input BFDs. */
|
||||||
|
asection *section;
|
||||||
|
/* For type bfd_symbol_reloc_link_order, this is the name of the
|
||||||
|
symbol the reloc should be against. */
|
||||||
|
const char *name;
|
||||||
|
} u;
|
||||||
|
|
||||||
|
/* Addend to use. The object file should contain zero. The BFD
|
||||||
|
backend is responsible for filling in the contents of the object
|
||||||
|
file correctly. For some object file formats (e.g., COFF) the
|
||||||
|
addend must be stored into in the object file, and for some
|
||||||
|
(e.g., SPARC a.out) it is kept in the reloc. */
|
||||||
|
bfd_vma addend;
|
||||||
|
};
|
||||||
|
|
||||||
|
/* Allocate a new link_order for a section. */
|
||||||
|
extern struct bfd_link_order *bfd_new_link_order PARAMS ((bfd *, asection *));
|
||||||
|
|
||||||
|
/* These structures are used to describe version information for the
|
||||||
|
ELF linker. These structures could be manipulated entirely inside
|
||||||
|
BFD, but it would be a pain. Instead, the regular linker sets up
|
||||||
|
these structures, and then passes them into BFD. */
|
||||||
|
|
||||||
|
/* Regular expressions for a version. */
|
||||||
|
|
||||||
|
struct bfd_elf_version_expr
|
||||||
|
{
|
||||||
|
/* Next regular expression for this version. */
|
||||||
|
struct bfd_elf_version_expr *next;
|
||||||
|
/* Regular expression. */
|
||||||
|
const char *match;
|
||||||
|
};
|
||||||
|
|
||||||
|
/* Version dependencies. */
|
||||||
|
|
||||||
|
struct bfd_elf_version_deps
|
||||||
|
{
|
||||||
|
/* Next dependency for this version. */
|
||||||
|
struct bfd_elf_version_deps *next;
|
||||||
|
/* The version which this version depends upon. */
|
||||||
|
struct bfd_elf_version_tree *version_needed;
|
||||||
|
};
|
||||||
|
|
||||||
|
/* A node in the version tree. */
|
||||||
|
|
||||||
|
struct bfd_elf_version_tree
|
||||||
|
{
|
||||||
|
/* Next version. */
|
||||||
|
struct bfd_elf_version_tree *next;
|
||||||
|
/* Name of this version. */
|
||||||
|
const char *name;
|
||||||
|
/* Version number. */
|
||||||
|
unsigned int vernum;
|
||||||
|
/* Regular expressions for global symbols in this version. */
|
||||||
|
struct bfd_elf_version_expr *globals;
|
||||||
|
/* Regular expressions for local symbols in this version. */
|
||||||
|
struct bfd_elf_version_expr *locals;
|
||||||
|
/* List of versions which this version depends upon. */
|
||||||
|
struct bfd_elf_version_deps *deps;
|
||||||
|
/* Index of the version name. This is used within BFD. */
|
||||||
|
unsigned int name_indx;
|
||||||
|
/* Whether this version tree was used. This is used within BFD. */
|
||||||
|
int used;
|
||||||
|
};
|
||||||
|
|
||||||
|
#endif
|
BIN
oldbinutils/lib/libbfd.a
Normal file
BIN
oldbinutils/lib/libbfd.a
Normal file
Binary file not shown.
22
oldbinutils/lib/libbfd.la
Normal file
22
oldbinutils/lib/libbfd.la
Normal file
@ -0,0 +1,22 @@
|
|||||||
|
# libbfd.la - a libtool library file
|
||||||
|
# Generated by ltmain.sh - GNU libtool 1.2
|
||||||
|
|
||||||
|
# The name that we can dlopen(3).
|
||||||
|
dlname=''
|
||||||
|
|
||||||
|
# Names of this library.
|
||||||
|
library_names=''
|
||||||
|
|
||||||
|
# The name of the static archive.
|
||||||
|
old_library='libbfd.a'
|
||||||
|
|
||||||
|
# Libraries that this one depends upon.
|
||||||
|
dependency_libs=''
|
||||||
|
|
||||||
|
# Version information for libbfd.
|
||||||
|
current=0
|
||||||
|
age=0
|
||||||
|
revision=0
|
||||||
|
|
||||||
|
# Directory that this library needs to be installed in:
|
||||||
|
libdir='/opt/cross/lib'
|
BIN
oldbinutils/lib/libiberty.a
Normal file
BIN
oldbinutils/lib/libiberty.a
Normal file
Binary file not shown.
BIN
oldbinutils/lib/libopcodes.a
Normal file
BIN
oldbinutils/lib/libopcodes.a
Normal file
Binary file not shown.
22
oldbinutils/lib/libopcodes.la
Normal file
22
oldbinutils/lib/libopcodes.la
Normal file
@ -0,0 +1,22 @@
|
|||||||
|
# libopcodes.la - a libtool library file
|
||||||
|
# Generated by ltmain.sh - GNU libtool 1.2
|
||||||
|
|
||||||
|
# The name that we can dlopen(3).
|
||||||
|
dlname=''
|
||||||
|
|
||||||
|
# Names of this library.
|
||||||
|
library_names=''
|
||||||
|
|
||||||
|
# The name of the static archive.
|
||||||
|
old_library='libopcodes.a'
|
||||||
|
|
||||||
|
# Libraries that this one depends upon.
|
||||||
|
dependency_libs=''
|
||||||
|
|
||||||
|
# Version information for libopcodes.
|
||||||
|
current=0
|
||||||
|
age=0
|
||||||
|
revision=0
|
||||||
|
|
||||||
|
# Directory that this library needs to be installed in:
|
||||||
|
libdir='/opt/cross/lib'
|
127
oldbinutils/man/man1/mips-addr2line.1
Normal file
127
oldbinutils/man/man1/mips-addr2line.1
Normal file
@ -0,0 +1,127 @@
|
|||||||
|
.\" Copyright (c) 1997 Free Software Foundation
|
||||||
|
.\" See COPYING for conditions for redistribution
|
||||||
|
.TH addr2line 1 "27 March 1997" "Cygnus Solutions" "GNU Development Tools"
|
||||||
|
.de BP
|
||||||
|
.sp
|
||||||
|
.ti \-.2i
|
||||||
|
\(**
|
||||||
|
..
|
||||||
|
|
||||||
|
.SH NAME
|
||||||
|
addr2line \- convert addresses into file names and line numbers
|
||||||
|
|
||||||
|
.SH SYNOPSIS
|
||||||
|
.hy 0
|
||||||
|
.na
|
||||||
|
.TP
|
||||||
|
.B addr2line
|
||||||
|
.RB "[\|" "\-b\ "\c
|
||||||
|
.I bfdname\c
|
||||||
|
.RB " | " "\-\-target="\c
|
||||||
|
.I bfdname\c
|
||||||
|
\&\|]
|
||||||
|
.RB "[\|" \-C | \-\-demangle "\|]"
|
||||||
|
.RB "[\|" "\-e\ "\c
|
||||||
|
.I filename\c
|
||||||
|
.RB " | " "\-\-exe="\c
|
||||||
|
.I filename\c
|
||||||
|
\&\|]
|
||||||
|
.RB "[\|" \-f | \-\-functions "\|]"
|
||||||
|
.RB "[\|" \-s | \-\-basenames "\|]"
|
||||||
|
.RB "[\|" \-H | \-\-help "\|]"
|
||||||
|
.RB "[\|" \-V | \-\-version "\|]"
|
||||||
|
.RB "[\|" addr addr ... "\|]"
|
||||||
|
.ad b
|
||||||
|
.hy 1
|
||||||
|
.SH DESCRIPTION
|
||||||
|
\c
|
||||||
|
.B addr2line
|
||||||
|
translates program addresses into file names and line numbers. Given
|
||||||
|
an address and an executable, it uses the debugging information in the
|
||||||
|
executable to figure out which file name and line number are
|
||||||
|
associated with a given address.
|
||||||
|
|
||||||
|
The executable to use is specified with the
|
||||||
|
.B \-e
|
||||||
|
option. The default is
|
||||||
|
.B a.out\c
|
||||||
|
\&.
|
||||||
|
|
||||||
|
.B addr2line
|
||||||
|
has two modes of operation.
|
||||||
|
|
||||||
|
In the first, hexadecimal addresses are specified on the command line,
|
||||||
|
and
|
||||||
|
.B addr2line
|
||||||
|
displays the file name and line number for each address.
|
||||||
|
|
||||||
|
In the second,
|
||||||
|
.B addr2line
|
||||||
|
reads hexadecimal addresses from standard input, and prints the file
|
||||||
|
name and line number for each address on standard output. In this
|
||||||
|
mode,
|
||||||
|
.B addr2line
|
||||||
|
may be used in a pipe to convert dynamically chosen addresses.
|
||||||
|
|
||||||
|
The format of the output is FILENAME:LINENO. The file name and line
|
||||||
|
number for each address is printed on a separate line. If the
|
||||||
|
.B \-f
|
||||||
|
option is used, then each FILENAME:LINENO line is preceded by a
|
||||||
|
FUNCTIONNAME line which is the name of the function containing the
|
||||||
|
address.
|
||||||
|
|
||||||
|
If the file name or function name can not be determined,
|
||||||
|
.B addr2line
|
||||||
|
will print two question marks in their place. If the line number can
|
||||||
|
not be determined,
|
||||||
|
.B addr2line
|
||||||
|
will print 0.
|
||||||
|
|
||||||
|
.SH OPTIONS
|
||||||
|
.TP
|
||||||
|
.BI "\-b " "bfdname"\c
|
||||||
|
.TP
|
||||||
|
.BI "\-\-target=" "bfdname"
|
||||||
|
Specify the object-code format for the object files to be
|
||||||
|
\c
|
||||||
|
.I bfdname\c
|
||||||
|
\&.
|
||||||
|
|
||||||
|
.TP
|
||||||
|
.B \-C
|
||||||
|
.TP
|
||||||
|
.B \-\-demangle
|
||||||
|
Decode (\fIdemangle\fP) low-level symbol names into user-level names.
|
||||||
|
Besides removing any initial underscore prepended by the system, this
|
||||||
|
makes C++ function names readable.
|
||||||
|
|
||||||
|
.TP
|
||||||
|
.BI "\-e " "filename"\c
|
||||||
|
.TP
|
||||||
|
.BI "\-\-exe=" "filename"
|
||||||
|
Specify the name of the executable for which addresses should be
|
||||||
|
translated. The default file is
|
||||||
|
.B a.out\c
|
||||||
|
\&.
|
||||||
|
|
||||||
|
.TP
|
||||||
|
.B \-f
|
||||||
|
.TP
|
||||||
|
.B \-\-functions
|
||||||
|
Display function names as well as file and line number information.
|
||||||
|
|
||||||
|
.TP
|
||||||
|
.B \-s
|
||||||
|
.TP
|
||||||
|
.B \-\-basenames
|
||||||
|
Display only the base of each file name.
|
||||||
|
|
||||||
|
.SH "SEE ALSO"
|
||||||
|
.RB "`\|" binutils "\|'"
|
||||||
|
entry in
|
||||||
|
.B
|
||||||
|
info\c
|
||||||
|
\&;
|
||||||
|
.I
|
||||||
|
The GNU Binary Utilities\c
|
||||||
|
\&, Roland H. Pesch (October 1991).
|
509
oldbinutils/man/man1/mips-ar.1
Normal file
509
oldbinutils/man/man1/mips-ar.1
Normal file
@ -0,0 +1,509 @@
|
|||||||
|
.\" Copyright (c) 1991 Free Software Foundation
|
||||||
|
.\" See section COPYING for conditions for redistribution
|
||||||
|
.TH ar 1 "5 November 1991" "cygnus support" "GNU Development Tools"
|
||||||
|
.de BP
|
||||||
|
.sp
|
||||||
|
.ti \-.2i
|
||||||
|
\(**
|
||||||
|
..
|
||||||
|
|
||||||
|
.SH NAME
|
||||||
|
ar \- create, modify, and extract from archives.
|
||||||
|
|
||||||
|
.SH SYNOPSIS
|
||||||
|
.hy 0
|
||||||
|
.na
|
||||||
|
.BR ar " [\|" "-" "\|]"\c
|
||||||
|
.I {dmpqrtx}[abcilosSuvV] \c
|
||||||
|
[\|\c
|
||||||
|
.I membername\c
|
||||||
|
\&\|] \c
|
||||||
|
.I archive\c
|
||||||
|
\& \c
|
||||||
|
.I files\c
|
||||||
|
\&.\|.\|.
|
||||||
|
|
||||||
|
.ad b
|
||||||
|
.hy 1
|
||||||
|
.SH DESCRIPTION
|
||||||
|
The GNU \c
|
||||||
|
.B ar\c
|
||||||
|
\& program creates, modifies, and extracts from
|
||||||
|
archives. An \c
|
||||||
|
.I archive\c
|
||||||
|
\& is a single file holding a collection of
|
||||||
|
other files in a structure that makes it possible to retrieve
|
||||||
|
the original individual files (called \c
|
||||||
|
.I members\c
|
||||||
|
\& of the archive).
|
||||||
|
|
||||||
|
The original files' contents, mode (permissions), timestamp, owner, and
|
||||||
|
group are preserved in the archive, and may be reconstituted on
|
||||||
|
extraction.
|
||||||
|
|
||||||
|
GNU \c
|
||||||
|
.B ar\c
|
||||||
|
\& can maintain archives whose members have names of any
|
||||||
|
length; however, depending on how \c
|
||||||
|
.B ar\c
|
||||||
|
\& is configured on your
|
||||||
|
system, a limit on member-name length may be imposed (for compatibility
|
||||||
|
with archive formats maintained with other tools). If it exists, the
|
||||||
|
limit is often 15 characters (typical of formats related to a.out) or 16
|
||||||
|
characters (typical of formats related to coff).
|
||||||
|
|
||||||
|
\c
|
||||||
|
.B ar\c
|
||||||
|
\& is considered a binary utility because archives of this sort
|
||||||
|
are most often used as \c
|
||||||
|
.I libraries\c
|
||||||
|
\& holding commonly needed
|
||||||
|
subroutines.
|
||||||
|
|
||||||
|
\c
|
||||||
|
.B ar\c
|
||||||
|
\& will create an index to the symbols defined in relocatable
|
||||||
|
object modules in the archive when you specify the modifier `\|\c
|
||||||
|
.B s\c
|
||||||
|
\|'.
|
||||||
|
Once created, this index is updated in the archive whenever \c
|
||||||
|
.B ar\c
|
||||||
|
\&
|
||||||
|
makes a change to its contents (save for the `\|\c
|
||||||
|
.B q\c
|
||||||
|
\|' update operation).
|
||||||
|
An archive with such an index speeds up linking to the library, and
|
||||||
|
allows routines in the library to call each other without regard to
|
||||||
|
their placement in the archive.
|
||||||
|
|
||||||
|
You may use `\|\c
|
||||||
|
.B nm \-s\c
|
||||||
|
\|' or `\|\c
|
||||||
|
.B nm \-\-print\-armap\c
|
||||||
|
\|' to list this index
|
||||||
|
table. If an archive lacks the table, another form of \c
|
||||||
|
.B ar\c
|
||||||
|
\& called
|
||||||
|
\c
|
||||||
|
.B ranlib\c
|
||||||
|
\& can be used to add just the table.
|
||||||
|
|
||||||
|
\c
|
||||||
|
.B ar\c
|
||||||
|
\& insists on at least two arguments to execute: one
|
||||||
|
keyletter specifying the \c
|
||||||
|
.I operation\c
|
||||||
|
\& (optionally accompanied by other
|
||||||
|
keyletters specifying \c
|
||||||
|
.I modifiers\c
|
||||||
|
\&), and the archive name to act on.
|
||||||
|
|
||||||
|
Most operations can also accept further \c
|
||||||
|
.I files\c
|
||||||
|
\& arguments,
|
||||||
|
specifying particular files to operate on.
|
||||||
|
|
||||||
|
.SH OPTIONS
|
||||||
|
GNU \c
|
||||||
|
.B ar\c
|
||||||
|
\& allows you to mix the operation code \c
|
||||||
|
.I p\c
|
||||||
|
\& and modifier
|
||||||
|
flags \c
|
||||||
|
.I mod\c
|
||||||
|
\& in any order, within the first command-line argument.
|
||||||
|
|
||||||
|
If you wish, you may begin the first command-line argument with a
|
||||||
|
dash.
|
||||||
|
|
||||||
|
The \c
|
||||||
|
.I p\c
|
||||||
|
\& keyletter specifies what operation to execute; it may be
|
||||||
|
any of the following, but you must specify only one of them:
|
||||||
|
|
||||||
|
.TP
|
||||||
|
.B d
|
||||||
|
\c
|
||||||
|
.I Delete\c
|
||||||
|
\& modules from the archive. Specify the names of modules to
|
||||||
|
be deleted as \c
|
||||||
|
.I files\c
|
||||||
|
\&; the archive is untouched if you
|
||||||
|
specify no files to delete.
|
||||||
|
|
||||||
|
If you specify the `\|\c
|
||||||
|
.B v\c
|
||||||
|
\|' modifier, \c
|
||||||
|
.B ar\c
|
||||||
|
\& will list each module
|
||||||
|
as it is deleted.
|
||||||
|
|
||||||
|
.TP
|
||||||
|
.B m
|
||||||
|
Use this operation to \c
|
||||||
|
.I move\c
|
||||||
|
\& members in an archive.
|
||||||
|
|
||||||
|
The ordering of members in an archive can make a difference in how
|
||||||
|
programs are linked using the library, if a symbol is defined in more
|
||||||
|
than one member.
|
||||||
|
|
||||||
|
If no modifiers are used with \c
|
||||||
|
.B m\c
|
||||||
|
\&, any members you name in the
|
||||||
|
\c
|
||||||
|
.I files\c
|
||||||
|
\& arguments are moved to the \c
|
||||||
|
.I end\c
|
||||||
|
\& of the archive;
|
||||||
|
you can use the `\|\c
|
||||||
|
.B a\c
|
||||||
|
\|', `\|\c
|
||||||
|
.B b\c
|
||||||
|
\|', or `\|\c
|
||||||
|
.B i\c
|
||||||
|
\|' modifiers to move them to a
|
||||||
|
specified place instead.
|
||||||
|
|
||||||
|
.TP
|
||||||
|
.B p
|
||||||
|
\c
|
||||||
|
.I Print\c
|
||||||
|
\& the specified members of the archive, to the standard
|
||||||
|
output file. If the `\|\c
|
||||||
|
.B v\c
|
||||||
|
\|' modifier is specified, show the member
|
||||||
|
name before copying its contents to standard output.
|
||||||
|
|
||||||
|
If you specify no \c
|
||||||
|
.I files\c
|
||||||
|
\&, all the files in the archive are printed.
|
||||||
|
|
||||||
|
.TP
|
||||||
|
.B q
|
||||||
|
\c
|
||||||
|
.I Quick append\c
|
||||||
|
\&; add \c
|
||||||
|
.I files\c
|
||||||
|
\& to the end of \c
|
||||||
|
.I archive\c
|
||||||
|
\&,
|
||||||
|
without checking for replacement.
|
||||||
|
|
||||||
|
The modifiers `\|\c
|
||||||
|
.B a\c
|
||||||
|
\|', `\|\c
|
||||||
|
.B b\c
|
||||||
|
\|', and `\|\c
|
||||||
|
.B i\c
|
||||||
|
\|' do \c
|
||||||
|
.I not\c
|
||||||
|
\& affect this
|
||||||
|
operation; new members are always placed at the end of the archive.
|
||||||
|
|
||||||
|
The modifier `\|\c
|
||||||
|
.B v\c
|
||||||
|
\|' makes \c
|
||||||
|
.B ar\c
|
||||||
|
\& list each file as it is appended.
|
||||||
|
|
||||||
|
Since the point of this operation is speed, the archive's symbol table
|
||||||
|
index is not updated, even if it already existed; you can use `\|\c
|
||||||
|
.B ar s\c
|
||||||
|
\|' or
|
||||||
|
\c
|
||||||
|
.B ranlib\c
|
||||||
|
\& explicitly to update the symbol table index.
|
||||||
|
|
||||||
|
However, too many different systems assume quick append rebuilds the
|
||||||
|
index, so GNU
|
||||||
|
.B ar
|
||||||
|
implements `\|\c
|
||||||
|
.B q\c
|
||||||
|
\|' as a synonym for `\|\c
|
||||||
|
.B r\c
|
||||||
|
\|'.
|
||||||
|
|
||||||
|
.TP
|
||||||
|
.B r
|
||||||
|
Insert \c
|
||||||
|
.I files\c
|
||||||
|
\& into \c
|
||||||
|
.I archive\c
|
||||||
|
\& (with \c
|
||||||
|
.I replacement\c
|
||||||
|
\&). This
|
||||||
|
operation differs from `\|\c
|
||||||
|
.B q\c
|
||||||
|
\|' in that any previously existing members
|
||||||
|
are deleted if their names match those being added.
|
||||||
|
|
||||||
|
If one of the files named in \c
|
||||||
|
.I files\c
|
||||||
|
\& doesn't exist, \c
|
||||||
|
.B ar\c
|
||||||
|
\&
|
||||||
|
displays an error message, and leaves undisturbed any existing members
|
||||||
|
of the archive matching that name.
|
||||||
|
|
||||||
|
By default, new members are added at the end of the file; but you may
|
||||||
|
use one of the modifiers `\|\c
|
||||||
|
.B a\c
|
||||||
|
\|', `\|\c
|
||||||
|
.B b\c
|
||||||
|
\|', or `\|\c
|
||||||
|
.B i\c
|
||||||
|
\|' to request
|
||||||
|
placement relative to some existing member.
|
||||||
|
|
||||||
|
The modifier `\|\c
|
||||||
|
.B v\c
|
||||||
|
\|' used with this operation elicits a line of
|
||||||
|
output for each file inserted, along with one of the letters `\|\c
|
||||||
|
.B a\c
|
||||||
|
\|' or
|
||||||
|
`\|\c
|
||||||
|
.B r\c
|
||||||
|
\|' to indicate whether the file was appended (no old member
|
||||||
|
deleted) or replaced.
|
||||||
|
|
||||||
|
.TP
|
||||||
|
.B t
|
||||||
|
Display a \c
|
||||||
|
.I table\c
|
||||||
|
\& listing the contents of \c
|
||||||
|
.I archive\c
|
||||||
|
\&, or those
|
||||||
|
of the files listed in \c
|
||||||
|
.I files\c
|
||||||
|
\& that are present in the
|
||||||
|
archive. Normally only the member name is shown; if you also want to
|
||||||
|
see the modes (permissions), timestamp, owner, group, and size, you can
|
||||||
|
request that by also specifying the `\|\c
|
||||||
|
.B v\c
|
||||||
|
\|' modifier.
|
||||||
|
|
||||||
|
If you do not specify any \c
|
||||||
|
.I files\c
|
||||||
|
\&, all files in the archive
|
||||||
|
are listed.
|
||||||
|
|
||||||
|
If there is more than one file with the same name (say, `\|\c
|
||||||
|
.B fie\c
|
||||||
|
\|') in
|
||||||
|
an archive (say `\|\c
|
||||||
|
.B b.a\c
|
||||||
|
\|'), `\|\c
|
||||||
|
.B ar t b.a fie\c
|
||||||
|
\|' will list only the
|
||||||
|
first instance; to see them all, you must ask for a complete
|
||||||
|
listing\(em\&in our example, `\|\c
|
||||||
|
.B ar t b.a\c
|
||||||
|
\|'.
|
||||||
|
|
||||||
|
.TP
|
||||||
|
.B x
|
||||||
|
\c
|
||||||
|
.I Extract\c
|
||||||
|
\& members (named \c
|
||||||
|
.I files\c
|
||||||
|
\&) from the archive. You can
|
||||||
|
use the `\|\c
|
||||||
|
.B v\c
|
||||||
|
\|' modifier with this operation, to request that
|
||||||
|
\c
|
||||||
|
.B ar\c
|
||||||
|
\& list each name as it extracts it.
|
||||||
|
|
||||||
|
If you do not specify any \c
|
||||||
|
.I files\c
|
||||||
|
\&, all files in the archive
|
||||||
|
are extracted.
|
||||||
|
|
||||||
|
.PP
|
||||||
|
|
||||||
|
A number of modifiers (\c
|
||||||
|
.I mod\c
|
||||||
|
\&) may immediately follow the \c
|
||||||
|
.I p\c
|
||||||
|
\&
|
||||||
|
keyletter, to specify variations on an operation's behavior:
|
||||||
|
|
||||||
|
.TP
|
||||||
|
.B a
|
||||||
|
Add new files \c
|
||||||
|
.I after\c
|
||||||
|
\& an existing member of the
|
||||||
|
archive. If you use the modifier \c
|
||||||
|
.B a\c
|
||||||
|
\&, the name of an existing archive
|
||||||
|
member must be present as the \c
|
||||||
|
.I membername\c
|
||||||
|
\& argument, before the
|
||||||
|
\c
|
||||||
|
.I archive\c
|
||||||
|
\& specification.
|
||||||
|
|
||||||
|
.TP
|
||||||
|
.B b
|
||||||
|
Add new files \c
|
||||||
|
.I before\c
|
||||||
|
\& an existing member of the
|
||||||
|
archive. If you use the modifier \c
|
||||||
|
.B b\c
|
||||||
|
\&, the name of an existing archive
|
||||||
|
member must be present as the \c
|
||||||
|
.I membername\c
|
||||||
|
\& argument, before the
|
||||||
|
\c
|
||||||
|
.I archive\c
|
||||||
|
\& specification. (same as `\|\c
|
||||||
|
.B i\c
|
||||||
|
\|').
|
||||||
|
|
||||||
|
.TP
|
||||||
|
.B c
|
||||||
|
\c
|
||||||
|
.I Create\c
|
||||||
|
\& the archive. The specified \c
|
||||||
|
.I archive\c
|
||||||
|
\& is always
|
||||||
|
created if it didn't exist, when you request an update. But a warning is
|
||||||
|
issued unless you specify in advance that you expect to create it, by
|
||||||
|
using this modifier.
|
||||||
|
|
||||||
|
.TP
|
||||||
|
.B f
|
||||||
|
Truncate names in the archive.
|
||||||
|
.B ar
|
||||||
|
will normally permit file names of any length. This will cause it to
|
||||||
|
create archives which are not compatible with the native
|
||||||
|
.B ar
|
||||||
|
program on some systems. If this is a concern, the
|
||||||
|
.B f
|
||||||
|
modifier may be used to truncate file names when putting them in the
|
||||||
|
archive.
|
||||||
|
|
||||||
|
.TP
|
||||||
|
.B i
|
||||||
|
Insert new files \c
|
||||||
|
.I before\c
|
||||||
|
\& an existing member of the
|
||||||
|
archive. If you use the modifier \c
|
||||||
|
.B i\c
|
||||||
|
\&, the name of an existing archive
|
||||||
|
member must be present as the \c
|
||||||
|
.I membername\c
|
||||||
|
\& argument, before the
|
||||||
|
\c
|
||||||
|
.I archive\c
|
||||||
|
\& specification. (same as `\|\c
|
||||||
|
.B b\c
|
||||||
|
\|').
|
||||||
|
|
||||||
|
.TP
|
||||||
|
.B l
|
||||||
|
This modifier is accepted but not used.
|
||||||
|
|
||||||
|
.TP
|
||||||
|
.B o
|
||||||
|
Preserve the \c
|
||||||
|
.I original\c
|
||||||
|
\& dates of members when extracting them. If
|
||||||
|
you do not specify this modifier, files extracted from the archive
|
||||||
|
will be stamped with the time of extraction.
|
||||||
|
|
||||||
|
.TP
|
||||||
|
.B s
|
||||||
|
Write an object-file index into the archive, or update an existing one,
|
||||||
|
even if no other change is made to the archive. You may use this modifier
|
||||||
|
flag either with any operation, or alone. Running `\|\c
|
||||||
|
.B ar s\c
|
||||||
|
\|' on an
|
||||||
|
archive is equivalent to running `\|\c
|
||||||
|
.B ranlib\c
|
||||||
|
\|' on it.
|
||||||
|
|
||||||
|
.TP
|
||||||
|
.B S
|
||||||
|
Do not generate an archive symbol table. This can speed up building a
|
||||||
|
large library in several steps. The resulting archive can not be used
|
||||||
|
with the linker. In order to build a symbol table, you must omit the
|
||||||
|
`\|\c
|
||||||
|
.B S\c
|
||||||
|
\|' modifier on the last execution of `\|\c
|
||||||
|
.B ar\c
|
||||||
|
\|', or you must run `\|\c
|
||||||
|
.B ranlib\c
|
||||||
|
\|' on the archive.
|
||||||
|
|
||||||
|
.TP
|
||||||
|
.B u
|
||||||
|
Normally, \c
|
||||||
|
.B ar r\c
|
||||||
|
\&.\|.\|. inserts all files
|
||||||
|
listed into the archive. If you would like to insert \c
|
||||||
|
.I only\c
|
||||||
|
\& those
|
||||||
|
of the files you list that are newer than existing members of the same
|
||||||
|
names, use this modifier. The `\|\c
|
||||||
|
.B u\c
|
||||||
|
\|' modifier is allowed only for the
|
||||||
|
operation `\|\c
|
||||||
|
.B r\c
|
||||||
|
\|' (replace). In particular, the combination `\|\c
|
||||||
|
.B qu\c
|
||||||
|
\|' is
|
||||||
|
not allowed, since checking the timestamps would lose any speed
|
||||||
|
advantage from the operation `\|\c
|
||||||
|
.B q\c
|
||||||
|
\|'.
|
||||||
|
|
||||||
|
.TP
|
||||||
|
.B v
|
||||||
|
This modifier requests the \c
|
||||||
|
.I verbose\c
|
||||||
|
\& version of an operation. Many
|
||||||
|
operations display additional information, such as filenames processed,
|
||||||
|
when the modifier `\|\c
|
||||||
|
.B v\c
|
||||||
|
\|' is appended.
|
||||||
|
|
||||||
|
.TP
|
||||||
|
.B V
|
||||||
|
This modifier shows the version number of
|
||||||
|
.BR ar .
|
||||||
|
|
||||||
|
.PP
|
||||||
|
|
||||||
|
.SH "SEE ALSO"
|
||||||
|
.RB "`\|" binutils "\|'"
|
||||||
|
entry in
|
||||||
|
.B
|
||||||
|
info\c
|
||||||
|
\&;
|
||||||
|
.I
|
||||||
|
The GNU Binary Utilities\c
|
||||||
|
, Roland H. Pesch (October 1991).
|
||||||
|
.BR nm ( 1 )\c
|
||||||
|
\&,
|
||||||
|
.BR ranlib ( 1 )\c
|
||||||
|
\&.
|
||||||
|
|
||||||
|
.SH COPYING
|
||||||
|
Copyright (c) 1991 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.
|
302
oldbinutils/man/man1/mips-as.1
Normal file
302
oldbinutils/man/man1/mips-as.1
Normal file
@ -0,0 +1,302 @@
|
|||||||
|
.\" Copyright (c) 1991, 1992, 1996, 1997, 1998 Free Software Foundation
|
||||||
|
.\" See section COPYING for conditions for redistribution
|
||||||
|
.TH as 1 "29 March 1996" "cygnus support" "GNU Development Tools"
|
||||||
|
|
||||||
|
.SH NAME
|
||||||
|
GNU as \- the portable GNU assembler.
|
||||||
|
|
||||||
|
.SH SYNOPSIS
|
||||||
|
.na
|
||||||
|
.B as
|
||||||
|
.RB "[\|" \-a "[\|" dhlns "\|]" \c
|
||||||
|
\&\[\|\=\c
|
||||||
|
.I file\c
|
||||||
|
\&\|]\|]
|
||||||
|
.RB "[\|" \-D "\|]"
|
||||||
|
.RB "[\|" \-\-defsym\ SYM=VAL "\|]"
|
||||||
|
.RB "[\|" \-f "\|]"
|
||||||
|
.RB "[\|" \-\-gstabs "\|]"
|
||||||
|
.RB "[\|" \-I
|
||||||
|
.I path\c
|
||||||
|
\&\|]
|
||||||
|
.RB "[\|" \-K "\|]"
|
||||||
|
.RB "[\|" \-L "\|]"
|
||||||
|
.RB "[\|" \-M\ |\ \-\-mri "\|]"
|
||||||
|
.RB "[\|" \-o
|
||||||
|
.I objfile\c
|
||||||
|
\&\|]
|
||||||
|
.RB "[\|" \-R "\|]"
|
||||||
|
.RB "[\|" \-\-traditional\-format "\|]"
|
||||||
|
.RB "[\|" \-v "\|]"
|
||||||
|
.RB "[\|" \-w "\|]"
|
||||||
|
.RB "[\|" \-\^\- "\ |\ " \c
|
||||||
|
.I files\c
|
||||||
|
\&\|.\|.\|.\|]
|
||||||
|
|
||||||
|
.I i960-only options:
|
||||||
|
.br
|
||||||
|
.RB "[\|" \-ACA "\||\|" \-ACA_A "\||\|" \-ACB\c
|
||||||
|
.RB "\||\|" \-ACC "\||\|" \-AKA "\||\|" \-AKB\c
|
||||||
|
.RB "\||\|" \-AKC "\||\|" \-AMC "\|]"
|
||||||
|
.RB "[\|" \-b "\|]"
|
||||||
|
.RB "[\|" \-no-relax "\|]"
|
||||||
|
|
||||||
|
.I m680x0-only options:
|
||||||
|
.br
|
||||||
|
.RB "[\|" \-l "\|]"
|
||||||
|
.RB "[\|" \-mc68000 "\||\|" \-mc68010 "\||\|" \-mc68020 "\|]"
|
||||||
|
.ad b
|
||||||
|
|
||||||
|
.SH DESCRIPTION
|
||||||
|
GNU \c
|
||||||
|
.B as\c
|
||||||
|
\& is really a family of assemblers.
|
||||||
|
If you use (or have used) the GNU assembler on one architecture, you
|
||||||
|
should find a fairly similar environment when you use it on another
|
||||||
|
architecture. Each version has much in common with the others,
|
||||||
|
including object file formats, most assembler directives (often called
|
||||||
|
\c
|
||||||
|
.I pseudo-ops)\c
|
||||||
|
\& and assembler syntax.
|
||||||
|
|
||||||
|
For information on the syntax and pseudo-ops used by GNU \c
|
||||||
|
.B as\c
|
||||||
|
\&, see `\|\c
|
||||||
|
.B as\c
|
||||||
|
\|' entry in \c
|
||||||
|
.B info \c
|
||||||
|
(or the manual \c
|
||||||
|
.I
|
||||||
|
.I
|
||||||
|
Using as: The GNU Assembler\c
|
||||||
|
\&).
|
||||||
|
|
||||||
|
\c
|
||||||
|
.B as\c
|
||||||
|
\& is primarily intended to assemble the output of the GNU C
|
||||||
|
compiler \c
|
||||||
|
.B gcc\c
|
||||||
|
\& for use by the linker \c
|
||||||
|
.B ld\c
|
||||||
|
\&. Nevertheless,
|
||||||
|
we've tried to make \c
|
||||||
|
.B as\c
|
||||||
|
\& assemble correctly everything that the native
|
||||||
|
assembler would.
|
||||||
|
This doesn't mean \c
|
||||||
|
.B as\c
|
||||||
|
\& always uses the same syntax as another
|
||||||
|
assembler for the same architecture; for example, we know of several
|
||||||
|
incompatible versions of 680x0 assembly language syntax.
|
||||||
|
|
||||||
|
Each time you run \c
|
||||||
|
.B as\c
|
||||||
|
\& it assembles exactly one source
|
||||||
|
program. The source program is made up of one or more files.
|
||||||
|
(The standard input is also a file.)
|
||||||
|
|
||||||
|
If \c
|
||||||
|
.B as\c
|
||||||
|
\& is given no file names it attempts to read one input file
|
||||||
|
from the \c
|
||||||
|
.B as\c
|
||||||
|
\& standard input, which is normally your terminal. You
|
||||||
|
may have to type \c
|
||||||
|
.B ctl-D\c
|
||||||
|
\& to tell \c
|
||||||
|
.B as\c
|
||||||
|
\& there is no more program
|
||||||
|
to assemble. Use `\|\c
|
||||||
|
.B \-\^\-\c
|
||||||
|
\|' if you need to explicitly name the standard input file
|
||||||
|
in your command line.
|
||||||
|
|
||||||
|
.B as\c
|
||||||
|
\& may write warnings and error messages to the standard error
|
||||||
|
file (usually your terminal). This should not happen when \c
|
||||||
|
.B as\c
|
||||||
|
\& is
|
||||||
|
run automatically by a compiler. Warnings report an assumption made so
|
||||||
|
that \c
|
||||||
|
.B as\c
|
||||||
|
\& could keep assembling a flawed program; errors report a
|
||||||
|
grave problem that stops the assembly.
|
||||||
|
|
||||||
|
.SH OPTIONS
|
||||||
|
.TP
|
||||||
|
.BR \-a
|
||||||
|
Turn on assembly listings. There are various suboptions.
|
||||||
|
.B d
|
||||||
|
omits debugging directives.
|
||||||
|
.B h
|
||||||
|
includes the high level source code; this is only available if the
|
||||||
|
source file can be found, and the code was compiled with
|
||||||
|
.B \-g.
|
||||||
|
.B l
|
||||||
|
includes an assembly listing.
|
||||||
|
.B n
|
||||||
|
omits forms processing.
|
||||||
|
.B s
|
||||||
|
includes a symbol listing.
|
||||||
|
.B =
|
||||||
|
.I file
|
||||||
|
sets the listing file name; this must be the last suboption.
|
||||||
|
The default suboptions are
|
||||||
|
.B hls.
|
||||||
|
.TP
|
||||||
|
.B \-D
|
||||||
|
This option is accepted only for script compatibility with calls to
|
||||||
|
other assemblers; it has no effect on \c
|
||||||
|
.B as\c
|
||||||
|
\&.
|
||||||
|
.TP
|
||||||
|
.B \-\-defsym SYM=VALUE
|
||||||
|
Define the symbol SYM to be VALUE before assembling the input file.
|
||||||
|
VALUE must be an integer constant. As in C, a leading 0x indicates a
|
||||||
|
hexadecimal value, and a leading 0 indicates an octal value.
|
||||||
|
.TP
|
||||||
|
.B \-f
|
||||||
|
``fast''--skip preprocessing (assume source is compiler output).
|
||||||
|
.TP
|
||||||
|
.BI "\-I\ " path
|
||||||
|
Add
|
||||||
|
.I path
|
||||||
|
to the search list for
|
||||||
|
.B .include
|
||||||
|
directives.
|
||||||
|
.TP
|
||||||
|
.B \-\-gstabs
|
||||||
|
Generate stabs debugging information for each assembler line. This
|
||||||
|
may help debugging assembler code, if the debugger can handle it.
|
||||||
|
.TP
|
||||||
|
.B \-K
|
||||||
|
Issue warnings when difference tables altered for long displacements.
|
||||||
|
.TP
|
||||||
|
.B \-L
|
||||||
|
Keep (in symbol table) local symbols, starting with `\|\c
|
||||||
|
.B L\c
|
||||||
|
\|'
|
||||||
|
.TP
|
||||||
|
.B \-M, \-\-mri
|
||||||
|
Assemble in MRI compatibility mode.
|
||||||
|
.TP
|
||||||
|
.BI "\-o\ " objfile
|
||||||
|
Name the object-file output from \c
|
||||||
|
.B as
|
||||||
|
.TP
|
||||||
|
.B \-R
|
||||||
|
Fold data section into text section
|
||||||
|
.TP
|
||||||
|
.B \-\-traditional\-format
|
||||||
|
Use same format as native assembler, when possible.
|
||||||
|
.TP
|
||||||
|
.B \-v
|
||||||
|
Announce \c
|
||||||
|
.B as\c
|
||||||
|
\& version
|
||||||
|
.TP
|
||||||
|
.B \-W
|
||||||
|
Suppress warning messages
|
||||||
|
.TP
|
||||||
|
.IR "\-\^\-" "\ |\ " "files\|.\|.\|."
|
||||||
|
Source files to assemble, or standard input (\c
|
||||||
|
.BR "\-\^\-" ")"
|
||||||
|
.TP
|
||||||
|
.BI \-A var
|
||||||
|
.I
|
||||||
|
(When configured for Intel 960.)
|
||||||
|
Specify which variant of the 960 architecture is the target.
|
||||||
|
.TP
|
||||||
|
.B \-b
|
||||||
|
.I
|
||||||
|
(When configured for Intel 960.)
|
||||||
|
Add code to collect statistics about branches taken.
|
||||||
|
.TP
|
||||||
|
.B \-no-relax
|
||||||
|
.I
|
||||||
|
(When configured for Intel 960.)
|
||||||
|
Do not alter compare-and-branch instructions for long displacements;
|
||||||
|
error if necessary.
|
||||||
|
.TP
|
||||||
|
.B \-l
|
||||||
|
.I
|
||||||
|
(When configured for Motorola 68000).
|
||||||
|
.br
|
||||||
|
Shorten references to undefined symbols, to one word instead of two.
|
||||||
|
.TP
|
||||||
|
.BR "\-mc68000" "\||\|" "\-mc68010" "\||\|" "\-mc68020"
|
||||||
|
.I
|
||||||
|
(When configured for Motorola 68000).
|
||||||
|
.br
|
||||||
|
Specify what processor in the 68000 family is the target (default 68020)
|
||||||
|
|
||||||
|
.PP
|
||||||
|
Options may be in any order, and may be
|
||||||
|
before, after, or between file names. The order of file names is
|
||||||
|
significant.
|
||||||
|
|
||||||
|
`\|\c
|
||||||
|
.B \-\^\-\c
|
||||||
|
\|' (two hyphens) by itself names the standard input file
|
||||||
|
explicitly, as one of the files for \c
|
||||||
|
.B as\c
|
||||||
|
\& to assemble.
|
||||||
|
|
||||||
|
Except for `\|\c
|
||||||
|
.B \-\^\-\c
|
||||||
|
\|' any command line argument that begins with a
|
||||||
|
hyphen (`\|\c
|
||||||
|
.B \-\c
|
||||||
|
\|') is an option. Each option changes the behavior of
|
||||||
|
\c
|
||||||
|
.B as\c
|
||||||
|
\&. No option changes the way another option works. An
|
||||||
|
option is a `\|\c
|
||||||
|
.B \-\c
|
||||||
|
\|' followed by one or more letters; the case of
|
||||||
|
the letter is important. All options are optional.
|
||||||
|
|
||||||
|
The `\|\c
|
||||||
|
.B \-o\c
|
||||||
|
\|' option expects exactly one file name to follow. The file
|
||||||
|
name may either immediately follow the option's letter (compatible
|
||||||
|
with older assemblers) or it may be the next command argument (GNU
|
||||||
|
standard).
|
||||||
|
|
||||||
|
These two command lines are equivalent:
|
||||||
|
.br
|
||||||
|
.B
|
||||||
|
as\ \ \-o\ \ my\-object\-file.o\ \ mumble.s
|
||||||
|
.br
|
||||||
|
.B
|
||||||
|
as\ \ \-omy\-object\-file.o\ \ mumble.s
|
||||||
|
|
||||||
|
.SH "SEE ALSO"
|
||||||
|
.RB "`\|" as "\|'"
|
||||||
|
entry in
|
||||||
|
.B
|
||||||
|
info\c
|
||||||
|
\&;
|
||||||
|
.I
|
||||||
|
Using as: The GNU Assembler\c
|
||||||
|
\&;
|
||||||
|
.BR gcc "(" 1 "),"
|
||||||
|
.BR ld "(" 1 ")."
|
||||||
|
|
||||||
|
.SH COPYING
|
||||||
|
Copyright (c) 1991, 1992 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.
|
114
oldbinutils/man/man1/mips-c++filt.1
Normal file
114
oldbinutils/man/man1/mips-c++filt.1
Normal file
@ -0,0 +1,114 @@
|
|||||||
|
.\" 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 \- demangle C++ symbols
|
||||||
|
|
||||||
|
.SH SYNOPSIS
|
||||||
|
.hy 0
|
||||||
|
.na
|
||||||
|
.TP
|
||||||
|
.B c++filt
|
||||||
|
.RB "[\|" \-_ | \-\-strip-underscores "\|]"
|
||||||
|
.RB "[\|" "\-s {gnu,lucid,arm} " | " \-\-format={gnu,lucid,arm}" "\|]"
|
||||||
|
.RB "[\|" \-\-help "\|]"
|
||||||
|
.RB "[\|" \-\-version "\|]"
|
||||||
|
.RB "[\|" symbol "...\|]"
|
||||||
|
.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 (this process is known as
|
||||||
|
.I mangling\c
|
||||||
|
). 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.
|
||||||
|
.PP
|
||||||
|
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.
|
||||||
|
.PP
|
||||||
|
You can use
|
||||||
|
.B c++filt
|
||||||
|
to decipher individual symbols by specifying these symbols on the
|
||||||
|
command line.
|
||||||
|
.PP
|
||||||
|
If no
|
||||||
|
.B symbol
|
||||||
|
arguments are given,
|
||||||
|
.B c++filt
|
||||||
|
reads symbol names from the standard input and writes the demangled
|
||||||
|
names to the standard output. All results are printed on the standard
|
||||||
|
output.
|
||||||
|
.SH OPTIONS
|
||||||
|
.TP
|
||||||
|
.B \-_
|
||||||
|
.TP
|
||||||
|
.B \-\-strip\-underscores
|
||||||
|
On some systems, both the C and C++ compilers put an
|
||||||
|
underscore in front of every name. For example, the C name
|
||||||
|
.B foo
|
||||||
|
gets the low-level name
|
||||||
|
.BR _foo .
|
||||||
|
This option removes the leading underscore.
|
||||||
|
|
||||||
|
.TP
|
||||||
|
.B "\-s {gnu,lucid,arm}"
|
||||||
|
.TP
|
||||||
|
.B \-\-format={gnu,lucid,arm}
|
||||||
|
GNU
|
||||||
|
.B nm
|
||||||
|
can decode three different methods of mangling, used by different C++
|
||||||
|
compilers. This option selects which method it uses: the one used by
|
||||||
|
the GNU compiler, the one used by the Lucid compiler, or the one
|
||||||
|
specified by the C++ Annotated Reference Manual. The default is the
|
||||||
|
GNU style.
|
||||||
|
|
||||||
|
.TP
|
||||||
|
.B \-\-help
|
||||||
|
Print a summary of the options to
|
||||||
|
.B c++filt
|
||||||
|
and exit.
|
||||||
|
|
||||||
|
.TP
|
||||||
|
.B \-\-version
|
||||||
|
Print the version number of
|
||||||
|
.B c++filt
|
||||||
|
and exit.
|
||||||
|
|
||||||
|
.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.
|
1083
oldbinutils/man/man1/mips-ld.1
Normal file
1083
oldbinutils/man/man1/mips-ld.1
Normal file
File diff suppressed because it is too large
Load Diff
110
oldbinutils/man/man1/mips-nlmconv.1
Normal file
110
oldbinutils/man/man1/mips-nlmconv.1
Normal file
@ -0,0 +1,110 @@
|
|||||||
|
.\" Copyright (c) 1991, 1996 Free Software Foundation
|
||||||
|
.\" See section COPYING for conditions for redistribution
|
||||||
|
.TH nlmconv 1 "March 1996" "cygnus support" "GNU Development Tools"
|
||||||
|
.de BP
|
||||||
|
.sp
|
||||||
|
.ti \-.2i
|
||||||
|
\(**
|
||||||
|
..
|
||||||
|
|
||||||
|
.SH NAME
|
||||||
|
nlmconv \- converts object code into an NLM
|
||||||
|
|
||||||
|
.SH SYNOPSIS
|
||||||
|
.hy 0
|
||||||
|
.na
|
||||||
|
.TP
|
||||||
|
.B nlmconv
|
||||||
|
.RB "[\|" \-I\ \fIbfdname\fB\ |\ \-\-input\-target=\fIbfdname\fR "\|]"
|
||||||
|
.RB "[\|" \-O\ \fIbfdname\fB\ |\ \-\-output\-target=\fIbfdname\fR "\|]"
|
||||||
|
.RB "[\|" \-T\ \fIheaderfile\fB\ |\ \-\-header\-file=\fIheaderfile\fR "\|]"
|
||||||
|
.RB "[\|" \-V\ |\ \-\-version\fR "\|]"
|
||||||
|
.RB "[\|" \-\-help\fR "\|]"
|
||||||
|
.B infile
|
||||||
|
.B outfile
|
||||||
|
.SH DESCRIPTION
|
||||||
|
.B nlmconv
|
||||||
|
converts the relocatable object file
|
||||||
|
.B infile
|
||||||
|
into the NetWare Loadable Module
|
||||||
|
.BR outfile ,
|
||||||
|
optionally reading
|
||||||
|
.I headerfile
|
||||||
|
for NLM header information. For instructions on writing the NLM
|
||||||
|
command file language used in header files, see
|
||||||
|
.IR "The NetWare Tool Maker Specification Manual" ,
|
||||||
|
available from Novell, Inc.
|
||||||
|
.B nlmconv
|
||||||
|
currently works with i386 object files in
|
||||||
|
.BR COFF ,
|
||||||
|
.BR ELF ,
|
||||||
|
or
|
||||||
|
.B a.out
|
||||||
|
format, and with SPARC object files in
|
||||||
|
.B ELF
|
||||||
|
or
|
||||||
|
.B a.out
|
||||||
|
format.
|
||||||
|
.br
|
||||||
|
.B nlmconv
|
||||||
|
uses the GNU Binary File Descriptor library to read
|
||||||
|
.IR infile .
|
||||||
|
.SH OPTIONS
|
||||||
|
.TP
|
||||||
|
.B \-I \fIbfdname\fR, \fB\-\-input\-target=\fIbfdname
|
||||||
|
Consider the source file's object format to be
|
||||||
|
.IR bfdname ,
|
||||||
|
rather than attempting to deduce it.
|
||||||
|
.TP
|
||||||
|
.B \-O \fIbfdname\fR, \fB\-\-output\-target=\fIbfdname
|
||||||
|
Write the output file using the object format
|
||||||
|
.IR bfdname .
|
||||||
|
.B nlmconv
|
||||||
|
infers the output format based on the input format, e.g. for an i386
|
||||||
|
input file the output format is
|
||||||
|
.IR nlm32\-i386 .
|
||||||
|
.TP
|
||||||
|
.B \-T \fIheaderfile\fR, \fB\-\-header\-file=\fIheaderfile
|
||||||
|
Reads
|
||||||
|
.I headerfile
|
||||||
|
for NLM header information. For instructions on writing the NLM
|
||||||
|
command file language used in header files, see
|
||||||
|
.IR "The NetWare Tool Maker Specification Manual" ,
|
||||||
|
available from Novell, Inc.
|
||||||
|
.TP
|
||||||
|
.B \-V\fR, \fB\-\-version
|
||||||
|
Show the version number of
|
||||||
|
.B nlmconv
|
||||||
|
and exit.
|
||||||
|
.TP
|
||||||
|
.B \-h\fR, \fB\-\-help
|
||||||
|
Show a summary of the options to
|
||||||
|
.B nlmconv
|
||||||
|
and exit.
|
||||||
|
.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.
|
230
oldbinutils/man/man1/mips-nm.1
Normal file
230
oldbinutils/man/man1/mips-nm.1
Normal file
@ -0,0 +1,230 @@
|
|||||||
|
.\" Copyright (c) 1991 Free Software Foundation
|
||||||
|
.\" See section COPYING for conditions for redistribution
|
||||||
|
.TH nm 1 "5 November 1991" "cygnus support" "GNU Development Tools"
|
||||||
|
.de BP
|
||||||
|
.sp
|
||||||
|
.ti \-.2i
|
||||||
|
\(**
|
||||||
|
..
|
||||||
|
|
||||||
|
.SH NAME
|
||||||
|
nm \- list symbols from object files.
|
||||||
|
|
||||||
|
.SH SYNOPSIS
|
||||||
|
.hy 0
|
||||||
|
.na
|
||||||
|
.TP
|
||||||
|
.B nm
|
||||||
|
.RB "[\|" \-a | \-\-debug\-syms "\|]"
|
||||||
|
.RB "[\|" \-g | \-\-extern\-only "\|]"
|
||||||
|
.RB "[\|" \-B "\|]"
|
||||||
|
.RB "[\|" \-C | \-\-demangle "\|]"
|
||||||
|
.RB "[\|" \-D | \-\-dynamic "\|]"
|
||||||
|
.RB "[\|" \-s | \-\-print\-armap "\|]"
|
||||||
|
.RB "[\|" \-o | \-\-print\-file\-name "\|]"
|
||||||
|
.RB "[\|" \-n | \-\-numeric\-sort "\|]"
|
||||||
|
.RB "[\|" \-p | \-\-no\-sort "\|]"
|
||||||
|
.RB "[\|" \-r | \-\-reverse\-sort "\|]"
|
||||||
|
.RB "[\|" \-\-size\-sort "\|]"
|
||||||
|
.RB "[\|" \-u | \-\-undefined\-only "\|]"
|
||||||
|
.RB "[\|" \-l | \-\-line\-numbers "\|]"
|
||||||
|
.RB "[\|" \-\-help "\|]"
|
||||||
|
.RB "[\|" \-\-version "\|]"
|
||||||
|
.RB "[\|" "\-t \fIradix" | \-\-radix=\fIradix "\|]"
|
||||||
|
.RB "[\|" \-P | --portability "\|]"
|
||||||
|
.RB "[\|" "\-f \fIformat" | \-\-format=\fIformat "\|]"
|
||||||
|
.RB "[\|" "\-\-target=\fIbfdname" "\|]"
|
||||||
|
.RB "[\|" \c
|
||||||
|
.I objfile\c
|
||||||
|
\&.\|.\|.\|]
|
||||||
|
.ad b
|
||||||
|
.hy 1
|
||||||
|
.SH DESCRIPTION
|
||||||
|
GNU \c
|
||||||
|
.B nm\c
|
||||||
|
\& lists the symbols from object files \c
|
||||||
|
.I objfile\c
|
||||||
|
\&. If no object files are given as arguments, \c
|
||||||
|
.B nm\c
|
||||||
|
\& assumes `\|\c
|
||||||
|
.B a.out\c
|
||||||
|
\|'.
|
||||||
|
|
||||||
|
.SH OPTIONS
|
||||||
|
The long and short forms of options, shown here as alternatives, are
|
||||||
|
equivalent.
|
||||||
|
|
||||||
|
.TP
|
||||||
|
.B \-A
|
||||||
|
.TP
|
||||||
|
.B \-o
|
||||||
|
.TP
|
||||||
|
.B \-\-print\-file\-name
|
||||||
|
Precede each symbol by the name of the input file where it was found,
|
||||||
|
rather than identifying the input file once only before all of its
|
||||||
|
symbols.
|
||||||
|
|
||||||
|
.TP
|
||||||
|
.B \-a
|
||||||
|
.TP
|
||||||
|
.B \-\-debug\-syms
|
||||||
|
Display debugger-only symbols; normally these are not listed.
|
||||||
|
|
||||||
|
.TP
|
||||||
|
.B \-B
|
||||||
|
The same as
|
||||||
|
.B \-\-format=bsd
|
||||||
|
(for compatibility with the MIPS \fBnm\fP).
|
||||||
|
|
||||||
|
.TP
|
||||||
|
.B \-C
|
||||||
|
.TP
|
||||||
|
.B \-\-demangle
|
||||||
|
Decode (\fIdemangle\fP) low-level symbol names into user-level names.
|
||||||
|
Besides removing any initial underscore prepended by the system, this
|
||||||
|
makes C++ function names readable.
|
||||||
|
|
||||||
|
.TP
|
||||||
|
.B \-D
|
||||||
|
.TP
|
||||||
|
.B \-\-dynamic
|
||||||
|
Display the dynamic symbols rather than the normal symbols. This is
|
||||||
|
only meaningful for dynamic objects, such as certain types of shared
|
||||||
|
libraries.
|
||||||
|
|
||||||
|
.TP
|
||||||
|
.B "\-f \fIformat"
|
||||||
|
Use the output format \fIformat\fP, which can be ``bsd'',
|
||||||
|
``sysv'', or ``posix''. The default is ``bsd''.
|
||||||
|
Only the first character of \fIformat\fP is significant; it can be
|
||||||
|
either upper or lower case.
|
||||||
|
|
||||||
|
.TP
|
||||||
|
.B \-g
|
||||||
|
.TP
|
||||||
|
.B \-\-extern\-only
|
||||||
|
Display only external symbols.
|
||||||
|
|
||||||
|
.TP
|
||||||
|
.B \-n
|
||||||
|
.TP
|
||||||
|
.B \-v
|
||||||
|
.TP
|
||||||
|
.B \-\-numeric\-sort
|
||||||
|
Sort symbols numerically by their addresses, not alphabetically by their
|
||||||
|
names.
|
||||||
|
|
||||||
|
.TP
|
||||||
|
.B \-p
|
||||||
|
.TP
|
||||||
|
.B \-\-no\-sort
|
||||||
|
Don't bother to sort the symbols in any order; just print them in the
|
||||||
|
order encountered.
|
||||||
|
|
||||||
|
.TP
|
||||||
|
.B \-P
|
||||||
|
.TP
|
||||||
|
.B \-\-portability
|
||||||
|
Use the POSIX.2 standard output format instead of the default format.
|
||||||
|
Equivalent to ``\-f posix''.
|
||||||
|
|
||||||
|
.TP
|
||||||
|
.B \-s
|
||||||
|
.TP
|
||||||
|
.B \-\-print\-armap
|
||||||
|
When listing symbols from archive members, include the index: a mapping
|
||||||
|
(stored in the archive by \c
|
||||||
|
.B ar\c
|
||||||
|
\& or \c
|
||||||
|
.B ranlib\c
|
||||||
|
\&) of what modules
|
||||||
|
contain definitions for what names.
|
||||||
|
|
||||||
|
.TP
|
||||||
|
.B \-r
|
||||||
|
.TP
|
||||||
|
.B \-\-reverse\-sort
|
||||||
|
Reverse the sense of the sort (whether numeric or alphabetic); let the
|
||||||
|
last come first.
|
||||||
|
|
||||||
|
.TP
|
||||||
|
.B \-\-size\-sort
|
||||||
|
Sort symbols by size. The size is computed as the difference between
|
||||||
|
the value of the symbol and the value of the symbol with the next higher
|
||||||
|
value. The size of the symbol is printed, rather than the value.
|
||||||
|
|
||||||
|
.TP
|
||||||
|
.B "\-t \fIradix"
|
||||||
|
.TP
|
||||||
|
.B "\-\-radix=\fIradix"
|
||||||
|
Use \fIradix\fP as the radix for printing the symbol values. It must be
|
||||||
|
``d'' for decimal, ``o'' for octal, or ``x'' for hexadecimal.
|
||||||
|
|
||||||
|
.TP
|
||||||
|
.BI "\-\-target=" "bfdname"
|
||||||
|
Specify an object code format other than your system's default format.
|
||||||
|
See
|
||||||
|
.BR objdump ( 1 ),
|
||||||
|
for information on listing available formats.
|
||||||
|
|
||||||
|
.TP
|
||||||
|
.B \-u
|
||||||
|
.TP
|
||||||
|
.B \-\-undefined\-only
|
||||||
|
Display only undefined symbols (those external to each object file).
|
||||||
|
|
||||||
|
.TP
|
||||||
|
.B \-l
|
||||||
|
.TP
|
||||||
|
.B \-\-line\-numbers
|
||||||
|
For each symbol, use debugging information to try to find a filename and
|
||||||
|
line number. For a defined symbol, look for the line number of the
|
||||||
|
address of the symbol. For an undefined symbol, look for the line
|
||||||
|
number of a relocation entry which refers to the symbol. If line number
|
||||||
|
information can be found, print it after the other symbol information.
|
||||||
|
|
||||||
|
.TP
|
||||||
|
.B \-V
|
||||||
|
.TP
|
||||||
|
.B \-\-version
|
||||||
|
Show the version number of
|
||||||
|
.B nm
|
||||||
|
and exit.
|
||||||
|
|
||||||
|
.TP
|
||||||
|
.B \-\-help
|
||||||
|
Show a summary of the options to
|
||||||
|
.B nm
|
||||||
|
and exit.
|
||||||
|
|
||||||
|
.SH "SEE ALSO"
|
||||||
|
.RB "`\|" binutils "\|'"
|
||||||
|
entry in
|
||||||
|
.B
|
||||||
|
info\c
|
||||||
|
\&;
|
||||||
|
.I
|
||||||
|
The GNU Binary Utilities\c
|
||||||
|
\&, Roland H. Pesch (October 1991);
|
||||||
|
.BR ar "(" 1 "),"
|
||||||
|
.BR objdump ( 1 ),
|
||||||
|
.BR ranlib "(" 1 ")."
|
||||||
|
|
||||||
|
|
||||||
|
.SH COPYING
|
||||||
|
Copyright (c) 1991 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.
|
301
oldbinutils/man/man1/mips-objcopy.1
Normal file
301
oldbinutils/man/man1/mips-objcopy.1
Normal file
@ -0,0 +1,301 @@
|
|||||||
|
.\" Copyright (c) 1991, 93, 94, 95, 96, 1997 Free Software Foundation
|
||||||
|
.\" See section COPYING for conditions for redistribution
|
||||||
|
.TH objcopy 1 "October 1994" "cygnus support" "GNU Development Tools"
|
||||||
|
.de BP
|
||||||
|
.sp
|
||||||
|
.ti \-.2i
|
||||||
|
\(**
|
||||||
|
..
|
||||||
|
|
||||||
|
.SH NAME
|
||||||
|
objcopy \- copy and translate object files
|
||||||
|
|
||||||
|
.SH SYNOPSIS
|
||||||
|
.hy 0
|
||||||
|
.na
|
||||||
|
.TP
|
||||||
|
.B objcopy
|
||||||
|
.RB "[\|" \-F\ \fIbfdname\fR\ |\ \fB\-\-target=\fIbfdname\fR "\|]"
|
||||||
|
.RB "[\|" \-I\ \fIbfdname\fR\ |\ \fB\-\-input\-target=\fIbfdname\fR "\|]"
|
||||||
|
.RB "[\|" \-O\ \fIbfdname\fR\ |\ \fB\-\-output\-target=\fIbfdname\fR "\|]"
|
||||||
|
.RB "[\|" \-R\ \fIsectionname\fR\ |\ \fB\-\-remove\-section=\fIsectionname\fR "\|]"
|
||||||
|
.RB "[\|" \-S\fR\ |\ \fB\-\-strip\-all\fR "\|]"
|
||||||
|
.RB "[\|" \-g\fR\ |\ \fB\-\-strip\-debug\fR "\|]"
|
||||||
|
.RB "[\|" \-\-strip\-unneeded\fR "\|]"
|
||||||
|
.RB "[\|" \-K\ \fIsymbolname\fR\ |\ \fB\-\-keep\-symbol=\fIsymbolname\fR "\|]"
|
||||||
|
.RB "[\|" \-N\ \fIsymbolname\fR\ |\ \fB\-\-strip\-symbol=\fIsymbolname\fR "\|]"
|
||||||
|
.RB "[\|" \-L\ \fIsymbolname\fR\ |\ \fB\-\-localize\-symbol=\fIsymbolname\fR "\|]"
|
||||||
|
.RB "[\|" \-W\ \fIsymbolname\fR\ |\ \fB\-\-weaken\-symbol=\fIsymbolname\fR "\|]"
|
||||||
|
.RB "[\|" \-x\fR\ |\ \fB\-\-discard\-all\fR "\|]"
|
||||||
|
.RB "[\|" \-X\fR\ |\ \fB\-\-discard\-locals\fR "\|]"
|
||||||
|
.RB "[\|" \-b\ \fIbyte\fR\ |\ \fB\-\-byte=\fIbyte\fR "\|]"
|
||||||
|
.RB "[\|" \-i\ \fIinterleave\fR\ |\ \fB\-\-interleave=\fIinterleave\fR "\|]"
|
||||||
|
.RB "[\|" \-p\fR\ |\ \fB\-\-preserve\-dates\fR "\|]"
|
||||||
|
.RB "[\|" \-\-debugging "\|]"
|
||||||
|
.RB "[\|" \-\-gap\-fill=\fIval\fR "\|]"
|
||||||
|
.RB "[\|" \-\-pad\-to=\fIaddress\fR "\|]"
|
||||||
|
.RB "[\|" \-\-set\-start=\fIval\fR "\|]"
|
||||||
|
.RB "[\|" \-\-adjust\-start=\fIincr\fR "\|]"
|
||||||
|
.RB "[\|" \-\-adjust\-vma=\fIincr\fR "\|]"
|
||||||
|
.RB "[\|" \-\-adjust\-section\-vma=\fIsection{=,+,-}val\fR "\|]"
|
||||||
|
.RB "[\|" \-\-adjust\-warnings\fR "\|]"
|
||||||
|
.RB "[\|" \-\-no\-adjust\-warnings\fR "\|]"
|
||||||
|
.RB "[\|" \-\-set\-section\-flags=\fIsection=flags\fR "\|]"
|
||||||
|
.RB "[\|" \-\-add\-section=\fIsectionname=filename\fR "\|]"
|
||||||
|
.RB "[\|" \-\-change\-leading\-char\fR "\|]"
|
||||||
|
.RB "[\|" \-\-remove\-leading\-char\fR "\|]"
|
||||||
|
.RB "[\|" \-\-weaken\fR "\|]"
|
||||||
|
.RB "[\|" \-v\ |\ \-\-verbose\fR "\|]"
|
||||||
|
.RB "[\|" \-V\ |\ \-\-version\fR "\|]"
|
||||||
|
.RB "[\|" \-\-help\fR "\|]"
|
||||||
|
.B infile
|
||||||
|
.RB "[\|" outfile\fR "\|]"
|
||||||
|
.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.
|
||||||
|
.PP
|
||||||
|
.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.
|
||||||
|
.PP
|
||||||
|
.B objcopy
|
||||||
|
can be used to generate S-records by using an output target of
|
||||||
|
.B srec
|
||||||
|
(e.g., use
|
||||||
|
.B -O srec).
|
||||||
|
.PP
|
||||||
|
.B objcopy
|
||||||
|
can be used to generate a raw binary file by using an output target of
|
||||||
|
.B binary
|
||||||
|
(e.g., use
|
||||||
|
.B -O binary).
|
||||||
|
When
|
||||||
|
.B objcopy
|
||||||
|
generates a raw binary file, it will essentially produce a memory dump
|
||||||
|
of the contents of the input object file. All symbols and relocation
|
||||||
|
information will be discarded. The memory dump will start at the
|
||||||
|
virtual address of the lowest section copied into the output file.
|
||||||
|
.PP
|
||||||
|
When generating an S-record or a raw binary file, it may be helpful to
|
||||||
|
use
|
||||||
|
.B -S
|
||||||
|
to remove sections containing debugging information. In some cases
|
||||||
|
.B -R
|
||||||
|
will be useful to remove sections which contain information which is
|
||||||
|
not needed by the binary file.
|
||||||
|
.PP
|
||||||
|
.I infile
|
||||||
|
and
|
||||||
|
.I outfile
|
||||||
|
are 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.
|
||||||
|
|
||||||
|
.SH OPTIONS
|
||||||
|
.TP
|
||||||
|
.B \-I \fIbfdname\fR, \fB\-\-input\-target=\fIbfdname
|
||||||
|
Consider the source file's object format to be
|
||||||
|
.IR bfdname ,
|
||||||
|
rather than attempting to deduce it.
|
||||||
|
.TP
|
||||||
|
.B \-O \fIbfdname\fR, \fB\-\-output\-target=\fIbfdname
|
||||||
|
Write the output file using the object format
|
||||||
|
.IR bfdname .
|
||||||
|
.TP
|
||||||
|
.B \-F \fIbfdname\fR, \fB\-\-target=\fIbfdname
|
||||||
|
Use
|
||||||
|
.I bfdname
|
||||||
|
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 \-R \fIsectionname\fR, \fB\-\-remove-section=\fIsectionname
|
||||||
|
Remove the named section from the file. This option may be given more
|
||||||
|
than once. Note that using this option inappropriately may make the
|
||||||
|
output file unusable.
|
||||||
|
.TP
|
||||||
|
.B \-S\fR, \fB\-\-strip\-all
|
||||||
|
Do not copy relocation and symbol information from the source file.
|
||||||
|
.TP
|
||||||
|
.B \-g\fR, \fB\-\-strip\-debug
|
||||||
|
Do not copy debugging symbols from the source file.
|
||||||
|
.TP
|
||||||
|
.B \-\-strip\-unneeded
|
||||||
|
Strip all symbols that are not needed for relocation processing.
|
||||||
|
.TP
|
||||||
|
.B \-K \fIsymbolname\fR, \fB\-\-keep\-symbol=\fIsymbolname
|
||||||
|
Copy only symbol \fIsymbolname\fP from the source file. This option
|
||||||
|
may be given more than once.
|
||||||
|
.TP
|
||||||
|
.B \-N \fIsymbolname\fR, \fB\-\-strip\-symbol=\fIsymbolname
|
||||||
|
Do not copy symbol \fIsymbolname\fP from the source file. This option
|
||||||
|
may be given more than once.
|
||||||
|
.TP
|
||||||
|
.B \-L \fIsymbolname\fR, \fB\-\-localize\-symbol=\fIsymbolname
|
||||||
|
Make symbol \fIsymbolname\fP local to the file, so that it is not
|
||||||
|
visible externally. This option may be given more than once.
|
||||||
|
.TP
|
||||||
|
.B \-W \fIsymbolname\fR, \fB\-\-weaken\-symbol=\fIsymbolname
|
||||||
|
Make symbol \fIsymbolname\fP weak. This option may be given more than once.
|
||||||
|
.TP
|
||||||
|
.B \-x\fR, \fB \-\-discard\-all
|
||||||
|
Do not copy non-global symbols from the source file.
|
||||||
|
.TP
|
||||||
|
.B \-X\fR, \fB\-\-discard\-locals
|
||||||
|
Do not copy compiler-generated local symbols. (These usually start
|
||||||
|
with "L" or ".").
|
||||||
|
.TP
|
||||||
|
.B \-b \fIbyte\fR, \fB\-\-byte=\fIbyte
|
||||||
|
Keep only every \fIbyte\fPth byte of the input file (header data is
|
||||||
|
not affected). \fIbyte\fP can be in the range from 0 to the
|
||||||
|
interleave-1. This option is useful for creating files to program
|
||||||
|
ROMs. It is typically used with an srec output target.
|
||||||
|
.TP
|
||||||
|
.B \-i \fIinterleave\fR, \fB\-\-interleave=\fIinterleave
|
||||||
|
Only copy one out of every \fIinterleave\fP bytes. Which one to copy is
|
||||||
|
selected by the \fB\-b\fP or \fB\-\-byte\fP option. The default is 4.
|
||||||
|
The interleave is ignored if neither \fB\-b\fP nor \fB\-\-byte\fP is given.
|
||||||
|
.TP
|
||||||
|
.B \-p\fR, \fB\-\-preserve\-dates
|
||||||
|
Set the access and modification dates of the output file to be the same
|
||||||
|
as those of the input file.
|
||||||
|
.TP
|
||||||
|
.B \-\-debugging
|
||||||
|
Convert debugging information, if possible. This is not the default
|
||||||
|
because only certain debugging formats are supported, and the
|
||||||
|
conversion process can be time consuming.
|
||||||
|
.TP
|
||||||
|
.B \-\-gap\-fill=\fIval
|
||||||
|
Fill gaps between sections with \fIval\fP. This operation applies to
|
||||||
|
the \fIload address\fP (LMA) of the sections. It is done by increasing
|
||||||
|
the size of the section with the lower address, and filling in the extra
|
||||||
|
space created with \fIval\fP.
|
||||||
|
.TP
|
||||||
|
.B \-\-pad\-to=\fIaddress
|
||||||
|
Pad the output file up to the load address \fIaddress\fP. This is
|
||||||
|
done by increasing the size of the last section. The extra space is
|
||||||
|
filled in with the value specified by \fB\-\-gap\-fill\fP (default
|
||||||
|
zero).
|
||||||
|
.TP
|
||||||
|
.B \fB\-\-set\-start=\fIval
|
||||||
|
Set the start address of the new file to \fIval\fP. Not all object
|
||||||
|
file formats support setting the start address.
|
||||||
|
.TP
|
||||||
|
.B \fB\-\-adjust\-start=\fIincr
|
||||||
|
Adjust the start address by adding \fIincr\fP. Not all object file
|
||||||
|
formats support setting the start address.
|
||||||
|
.TP
|
||||||
|
.B \fB\-\-adjust\-vma=\fIincr
|
||||||
|
Adjust the address of all sections, as well as the start address, by
|
||||||
|
adding \fIincr\fP. Some object file formats do not permit section
|
||||||
|
addresses to be changed arbitrarily. Note that this does not relocate
|
||||||
|
the sections; if the program expects sections to be loaded at a
|
||||||
|
certain address, and this option is used to change the sections such
|
||||||
|
that they are loaded at a different address, the program may fail.
|
||||||
|
.TP
|
||||||
|
.B \fB\-\-adjust\-section\-vma=\fIsection{=,+,-}val
|
||||||
|
Set or adjust the address of the named \fIsection\fP. If \fI=\fP is
|
||||||
|
used, the section address is set to \fIval\fP. Otherwise, \fIval\fP
|
||||||
|
is added to or subtracted from the section address. See the comments
|
||||||
|
under \fB\-\-adjust\-vma\fP, above. If \fIsection\fP does not exist
|
||||||
|
in the input file, a warning will be issued, unless
|
||||||
|
\fB\-\-no\-adjust\-warnings\fP is used.
|
||||||
|
.TP
|
||||||
|
.B \fB\-\-adjust\-warnings
|
||||||
|
If \fB\-\-adjust\-section\-vma\fP is used, and the named section does
|
||||||
|
not exist, issue a warning. This is the default.
|
||||||
|
.TP
|
||||||
|
.B \fB\-\-no\-adjust\-warnings
|
||||||
|
Do not issue a warning if \fB\-\-adjust\-section\-vma\fP is used, even
|
||||||
|
if the named section does not exist.
|
||||||
|
.TP
|
||||||
|
.B \fB\-\-set\-section\-flags=\fIsection=flags
|
||||||
|
Set the flags for the named section. The \fIflags\fP argument is a
|
||||||
|
comma separated string of flag names. The recognized names are
|
||||||
|
\fIalloc\fP, \fIload\fP, \fIreadonly\fP, \fIcode\fP, \fIdata\fP, and
|
||||||
|
\fIrom\fP. Not all flags are meaningful for all object file
|
||||||
|
formats.
|
||||||
|
.TP
|
||||||
|
.B \fB\-\-add\-section=\fIsectionname=filename
|
||||||
|
Add a new section named \fIsectionname\fR while copying the file. The
|
||||||
|
contents of the new section are taken from the file \fIfilename\fR.
|
||||||
|
The size of the section will be the size of the file. This option
|
||||||
|
only works on file formats which can support sections with arbitrary
|
||||||
|
names.
|
||||||
|
.TP
|
||||||
|
.B \-\-change\-leading\-char
|
||||||
|
Some object file formats use special characters at the start of
|
||||||
|
symbols. The most common such character is underscore, which compilers
|
||||||
|
often add before every symbol. This option tells
|
||||||
|
.B objcopy
|
||||||
|
to change the leading character of every symbol when it converts
|
||||||
|
between object file formats. If the object file formats use the same
|
||||||
|
leading character, this option has no effect. Otherwise, it will add
|
||||||
|
a character, or remove a character, or change a character, as
|
||||||
|
appropriate.
|
||||||
|
.TP
|
||||||
|
.B \-\-remove\-leading\-char
|
||||||
|
If the first character of a global symbol is a special symbol leading
|
||||||
|
character used by the object file format, remove the character. The
|
||||||
|
most common symbol leading character is underscore. This option will
|
||||||
|
remove a leading underscore from all global symbols. This can be
|
||||||
|
useful if you want to link together objects of different file formats
|
||||||
|
with different conventions for symbol names. This is different from
|
||||||
|
@code{--change-leading-char} because it always changes the symbol name
|
||||||
|
when appropriate, regardless of the object file format of the output
|
||||||
|
.TP
|
||||||
|
.B \-\-weaken
|
||||||
|
Change all global symbols in the file to be weak.
|
||||||
|
.TP
|
||||||
|
.B \-v\fR, \fB\-\-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\fR, \fB\-\-version
|
||||||
|
Show the version number of
|
||||||
|
.B objcopy
|
||||||
|
and exit.
|
||||||
|
.TP
|
||||||
|
.B \-\-help
|
||||||
|
Show a summary of the options to
|
||||||
|
.B objcopy
|
||||||
|
and exit.
|
||||||
|
.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, 94, 95, 96, 1997 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.
|
402
oldbinutils/man/man1/mips-objdump.1
Normal file
402
oldbinutils/man/man1/mips-objdump.1
Normal file
@ -0,0 +1,402 @@
|
|||||||
|
.\" Copyright (c) 1991, 1996, 1997 Free Software Foundation
|
||||||
|
.\" See section COPYING for conditions for redistribution
|
||||||
|
.TH objdump 1 "5 November 1991" "cygnus support" "GNU Development Tools"
|
||||||
|
.de BP
|
||||||
|
.sp
|
||||||
|
.ti \-.2i
|
||||||
|
\(**
|
||||||
|
..
|
||||||
|
|
||||||
|
.SH NAME
|
||||||
|
objdump \- display information from object files.
|
||||||
|
|
||||||
|
.SH SYNOPSIS
|
||||||
|
.hy 0
|
||||||
|
.na
|
||||||
|
.TP
|
||||||
|
.B objdump
|
||||||
|
.RB "[\|" \-a | \-\-archive\-headers "\|]"
|
||||||
|
.RB "[\|" "\-b\ "\c
|
||||||
|
.I bfdname\c
|
||||||
|
.RB " | " "\-\-target="\c
|
||||||
|
.I bfdname\c
|
||||||
|
\&\|]
|
||||||
|
.RB "[\|" \-C | \-\-demangle "\|]"
|
||||||
|
.RB "[\|" \-\-debugging "\|]"
|
||||||
|
.RB "[\|" \-d | \-\-disassemble "\|]"
|
||||||
|
.RB "[\|" \-D | \-\-disassemble-all "\|]"
|
||||||
|
.RB "[\|" \-\-disassemble\-zeroes "\|]"
|
||||||
|
.RB "[\|" \-EB | \-EL | \-\-endian=\c
|
||||||
|
.I {big|little}\c
|
||||||
|
\&\|]
|
||||||
|
.RB "[\|" \-f | \-\-file\-headers "\|]"
|
||||||
|
.RB "[\|" \-h | \-\-section\-headers
|
||||||
|
.RB "| " \-\-headers "\|]"
|
||||||
|
.RB "[\|" \-i | \-\-info "\|]"
|
||||||
|
.RB "[\|" "\-j\ "\c
|
||||||
|
.I section\c
|
||||||
|
.RB " | " "\-\-section="\c
|
||||||
|
.I section\c
|
||||||
|
\&\|]
|
||||||
|
.RB "[\|" \-l | \-\-line\-numbers "\|]"
|
||||||
|
.RB "[\|" "\-m\ "\c
|
||||||
|
.I machine\c
|
||||||
|
.RB " | " "\-\-architecture="\c
|
||||||
|
.I machine\c
|
||||||
|
\&\|]
|
||||||
|
.RB "[\|" \-\-prefix\-addresses "\|]"
|
||||||
|
.RB "[\|" \-r | \-\-reloc "\|]"
|
||||||
|
.RB "[\|" \-R | \-\-dynamic\-reloc "\|]"
|
||||||
|
.RB "[\|" \-s | \-\-full\-contents "\|]"
|
||||||
|
.RB "[\|" \-S | \-\-source "\|]"
|
||||||
|
.RB "[\|" \-\-[no\-]show\-raw\-insn "\|]"
|
||||||
|
.RB "[\|" \-\-stabs "\|]"
|
||||||
|
.RB "[\|" \-t | \-\-syms "\|]"
|
||||||
|
.RB "[\|" \-T | \-\-dynamic\-syms "\|]"
|
||||||
|
.RB "[\|" \-x | \-\-all\-headers "\|]"
|
||||||
|
.RB "[\|" "\-\-start\-address="\c
|
||||||
|
.I address\c
|
||||||
|
\&\|]
|
||||||
|
.RB "[\|" "\-\-stop\-address="\c
|
||||||
|
.I address\c
|
||||||
|
\&\|]
|
||||||
|
.RB "[\|" "\-\-adjust\-vma="\c
|
||||||
|
.I offset\c
|
||||||
|
\&\|]
|
||||||
|
.RB "[\|" \-\-version "\|]"
|
||||||
|
.RB "[\|" \-\-help "\|]"
|
||||||
|
.I objfile\c
|
||||||
|
\&.\|.\|.
|
||||||
|
.ad b
|
||||||
|
.hy 1
|
||||||
|
.SH DESCRIPTION
|
||||||
|
\c
|
||||||
|
.B objdump\c
|
||||||
|
\& displays information about one or more object files.
|
||||||
|
The options control what particular information to display. This
|
||||||
|
information is mostly useful to programmers who are working on the
|
||||||
|
compilation tools, as opposed to programmers who just want their
|
||||||
|
program to compile and work.
|
||||||
|
.PP
|
||||||
|
.IR "objfile" .\|.\|.
|
||||||
|
are the object files to be examined. When you specify archives,
|
||||||
|
\c
|
||||||
|
.B objdump\c
|
||||||
|
\& shows information on each of the member object files.
|
||||||
|
|
||||||
|
.SH OPTIONS
|
||||||
|
Where long and short forms of an option are shown together, they are
|
||||||
|
equivalent. At least one option besides
|
||||||
|
.B \-l
|
||||||
|
(\fB\-\-line\-numbers\fP) must be given.
|
||||||
|
|
||||||
|
.TP
|
||||||
|
.B \-a
|
||||||
|
.TP
|
||||||
|
.B \-\-archive\-headers
|
||||||
|
If any files from \c
|
||||||
|
.I objfile\c
|
||||||
|
\& are archives, display the archive
|
||||||
|
header information (in a format similar to `\|\c
|
||||||
|
.B ls \-l\c
|
||||||
|
\|'). Besides the
|
||||||
|
information you could list with `\|\c
|
||||||
|
.B ar tv\c
|
||||||
|
\|', `\|\c
|
||||||
|
.B objdump \-a\c
|
||||||
|
\|' shows
|
||||||
|
the object file format of each archive member.
|
||||||
|
|
||||||
|
.TP
|
||||||
|
.BI "\-\-adjust\-vma=" "offset"
|
||||||
|
When dumping information, first add
|
||||||
|
.I offset
|
||||||
|
to all the section addresses. This is useful if the section addresses
|
||||||
|
do not correspond to the symbol table, which can happen when putting
|
||||||
|
sections at particular addresses when using a format which can not
|
||||||
|
represent section addresses, such as a.out.
|
||||||
|
|
||||||
|
.TP
|
||||||
|
.BI "\-b " "bfdname"\c
|
||||||
|
.TP
|
||||||
|
.BI "\-\-target=" "bfdname"
|
||||||
|
Specify the object-code format for the object files to be
|
||||||
|
\c
|
||||||
|
.I bfdname\c
|
||||||
|
\&. This may not be necessary; \c
|
||||||
|
.I objdump\c
|
||||||
|
\& can
|
||||||
|
automatically recognize many formats. For example,
|
||||||
|
.sp
|
||||||
|
.br
|
||||||
|
objdump\ \-b\ oasys\ \-m\ vax\ \-h\ fu.o
|
||||||
|
.br
|
||||||
|
.sp
|
||||||
|
display summary information from the section headers (`\|\c
|
||||||
|
.B \-h\c
|
||||||
|
\|') of
|
||||||
|
`\|\c
|
||||||
|
.B fu.o\c
|
||||||
|
\|', which is explicitly identified (`\|\c
|
||||||
|
.B \-m\c
|
||||||
|
\|') as a Vax object
|
||||||
|
file in the format produced by Oasys compilers. You can list the
|
||||||
|
formats available with the `\|\c
|
||||||
|
.B \-i\c
|
||||||
|
\|' option.
|
||||||
|
|
||||||
|
.TP
|
||||||
|
.B \-C
|
||||||
|
.TP
|
||||||
|
.B \-\-demangle
|
||||||
|
Decode (\fIdemangle\fP) low-level symbol names into user-level names.
|
||||||
|
Besides removing any initial underscore prepended by the system, this
|
||||||
|
makes C++ function names readable.
|
||||||
|
|
||||||
|
.TP
|
||||||
|
.B \-\-debugging
|
||||||
|
Display debugging information. This attempts to parse debugging
|
||||||
|
information stored in the file and print it out using a C like syntax.
|
||||||
|
Only certain types of debugging information have been implemented.
|
||||||
|
|
||||||
|
.TP
|
||||||
|
.B \-d
|
||||||
|
.TP
|
||||||
|
.B \-\-disassemble
|
||||||
|
Display the assembler mnemonics for the machine
|
||||||
|
instructions from \c
|
||||||
|
.I objfile\c
|
||||||
|
\&.
|
||||||
|
This option only disassembles those sections which are
|
||||||
|
expected to contain instructions.
|
||||||
|
|
||||||
|
.TP
|
||||||
|
.B \-D
|
||||||
|
.TP
|
||||||
|
.B \-\-disassemble-all
|
||||||
|
Like \fB\-d\fP, but disassemble the contents of all sections, not just
|
||||||
|
those expected to contain instructions.
|
||||||
|
|
||||||
|
.TP
|
||||||
|
.B \-\-prefix\-addresses
|
||||||
|
When disassembling, print the complete address on each line. This is
|
||||||
|
the older disassembly format.
|
||||||
|
|
||||||
|
.TP
|
||||||
|
.B \-\-disassemble\-zeroes
|
||||||
|
Normally the disassembly output will skip blocks of zeroes. This
|
||||||
|
option directs the disassembler to disassemble those blocks, just like
|
||||||
|
any other data.
|
||||||
|
|
||||||
|
.TP
|
||||||
|
.B \-EB
|
||||||
|
.TP
|
||||||
|
.B \-EL
|
||||||
|
.TP
|
||||||
|
.BI "\-\-endian=" "{big|little}"
|
||||||
|
Specify the endianness of the object files. This only affects
|
||||||
|
disassembly. This can be useful when disassembling a file format which
|
||||||
|
does not describe endianness information, such as S-records.
|
||||||
|
|
||||||
|
.TP
|
||||||
|
.B \-f
|
||||||
|
.TP
|
||||||
|
.B \-\-file\-headers
|
||||||
|
Display summary information from the overall header of
|
||||||
|
each file in \c
|
||||||
|
.I objfile\c
|
||||||
|
\&.
|
||||||
|
|
||||||
|
.TP
|
||||||
|
.B \-h
|
||||||
|
.TP
|
||||||
|
.B \-\-section\-headers
|
||||||
|
.TP
|
||||||
|
.B \-\-headers
|
||||||
|
Display summary information from the section headers of the
|
||||||
|
object file.
|
||||||
|
|
||||||
|
.TP
|
||||||
|
.B \-\-help
|
||||||
|
Print a summary of the options to
|
||||||
|
.B objdump
|
||||||
|
and exit.
|
||||||
|
|
||||||
|
.TP
|
||||||
|
.B \-i
|
||||||
|
.TP
|
||||||
|
.B \-\-info
|
||||||
|
Display a list showing all architectures and object formats available
|
||||||
|
for specification with \c
|
||||||
|
.B \-b\c
|
||||||
|
\& or \c
|
||||||
|
.B \-m\c
|
||||||
|
\&.
|
||||||
|
|
||||||
|
.TP
|
||||||
|
.BI "\-j " "name"\c
|
||||||
|
.TP
|
||||||
|
.BI "\-\-section=" "name"
|
||||||
|
Display information only for section \c
|
||||||
|
.I name\c
|
||||||
|
\&.
|
||||||
|
|
||||||
|
.TP
|
||||||
|
.B \-l
|
||||||
|
.TP
|
||||||
|
.B \-\-line\-numbers
|
||||||
|
Label the display (using debugging information) with the filename
|
||||||
|
and source line numbers corresponding to the object code shown.
|
||||||
|
Only useful with \fB\-d\fP, \fB\-D\fP, or \fB\-r\fP.
|
||||||
|
|
||||||
|
.TP
|
||||||
|
.BI "\-m " "machine"\c
|
||||||
|
.TP
|
||||||
|
.BI "\-\-architecture=" "machine"
|
||||||
|
Specify the architecture to use when disassembling object files. This
|
||||||
|
can be useful when disassembling object files which do not describe
|
||||||
|
architecture information, such as S-records. You can list the available
|
||||||
|
architectures with the \fB\-i\fP option.
|
||||||
|
|
||||||
|
.TP
|
||||||
|
.B \-r
|
||||||
|
.TP
|
||||||
|
.B \-\-reloc
|
||||||
|
Print the relocation entries of the file. If used with \fB\-d\fP or
|
||||||
|
\fB\-d\fP, the relocations are printed interspersed with the
|
||||||
|
disassembly.
|
||||||
|
|
||||||
|
.TP
|
||||||
|
.B \-R
|
||||||
|
.TP
|
||||||
|
.B \-\-dynamic\-reloc
|
||||||
|
Print the dynamic relocation entries of the file. This is only
|
||||||
|
meaningful for dynamic objects, such as certain types of shared
|
||||||
|
libraries.
|
||||||
|
|
||||||
|
.TP
|
||||||
|
.B \-s
|
||||||
|
.TP
|
||||||
|
.B \-\-full\-contents
|
||||||
|
Display the full contents of any sections requested.
|
||||||
|
|
||||||
|
.TP
|
||||||
|
.B \-S
|
||||||
|
.TP
|
||||||
|
.B \-\-source
|
||||||
|
Display source code intermixed with disassembly, if possible. Implies
|
||||||
|
\fB-d\fP.
|
||||||
|
|
||||||
|
.TP
|
||||||
|
.B \-\-show\-raw\-insn
|
||||||
|
When disassembling instructions, print the instruction in hex as well as
|
||||||
|
in symbolic form. This is the default except when
|
||||||
|
.B \-\-prefix\-addresses
|
||||||
|
is used.
|
||||||
|
|
||||||
|
.TP
|
||||||
|
.B \-\-no\-show\-raw\-insn
|
||||||
|
When disassembling instructions, do not print the instruction bytes.
|
||||||
|
This is the default when
|
||||||
|
.B \-\-prefix\-addresses
|
||||||
|
is used.
|
||||||
|
|
||||||
|
.TP
|
||||||
|
.B \-\-stabs
|
||||||
|
Display the contents of the .stab, .stab.index, and .stab.excl
|
||||||
|
sections from an ELF file. This is only useful on systems (such as
|
||||||
|
Solaris 2.0) in which .stab debugging symbol-table entries are carried
|
||||||
|
in an ELF section. In most other file formats, debugging symbol-table
|
||||||
|
entries are interleaved with linkage symbols, and are visible in the
|
||||||
|
\-\-syms output.
|
||||||
|
|
||||||
|
.TP
|
||||||
|
.BI "\-\-start\-address=" "address"
|
||||||
|
Start displaying data at the specified address. This affects the output
|
||||||
|
of the
|
||||||
|
.B \-d\c
|
||||||
|
,
|
||||||
|
.B \-r
|
||||||
|
and
|
||||||
|
.B \-s
|
||||||
|
options.
|
||||||
|
|
||||||
|
.TP
|
||||||
|
.BI "\-\-stop\-address=" "address"
|
||||||
|
Stop displaying data at the specified address. This affects the output
|
||||||
|
of the
|
||||||
|
.B \-d\c
|
||||||
|
,
|
||||||
|
.B \-r
|
||||||
|
and
|
||||||
|
.B \-s
|
||||||
|
options.
|
||||||
|
|
||||||
|
.TP
|
||||||
|
.B \-t
|
||||||
|
.TP
|
||||||
|
.B \-\-syms
|
||||||
|
Symbol Table. Print the symbol table entries of the file.
|
||||||
|
This is similar to the information provided by the `\|\c
|
||||||
|
.B nm\c
|
||||||
|
\|' program.
|
||||||
|
|
||||||
|
.TP
|
||||||
|
.B \-T
|
||||||
|
.TP
|
||||||
|
.B \-\-dynamic\-syms
|
||||||
|
Dynamic Symbol Table. Print the dynamic symbol table entries of the
|
||||||
|
file. This is only meaningful for dynamic objects, such as certain
|
||||||
|
types of shared libraries. This is similar to the information
|
||||||
|
provided by the `\|\c
|
||||||
|
.B nm\c
|
||||||
|
\|' program when given the
|
||||||
|
.B \-D (\-\-dynamic)
|
||||||
|
option.
|
||||||
|
|
||||||
|
.TP
|
||||||
|
.B \-\-version
|
||||||
|
Print the version number of
|
||||||
|
.B objdump
|
||||||
|
and exit.
|
||||||
|
|
||||||
|
.TP
|
||||||
|
.B \-x
|
||||||
|
.TP
|
||||||
|
.B \-\-all\-headers
|
||||||
|
Display all available header information, including the symbol table and
|
||||||
|
relocation entries. Using `\|\c
|
||||||
|
.B \-x\c
|
||||||
|
\|' is equivalent to specifying all of
|
||||||
|
`\|\c
|
||||||
|
.B \-a \-f \-h \-r \-t\c
|
||||||
|
\|'.
|
||||||
|
|
||||||
|
.SH "SEE ALSO"
|
||||||
|
.RB "`\|" binutils "\|'"
|
||||||
|
entry in
|
||||||
|
.B
|
||||||
|
info\c
|
||||||
|
\&;
|
||||||
|
.I
|
||||||
|
The GNU Binary Utilities\c
|
||||||
|
\&, Roland H. Pesch (October 1991);
|
||||||
|
.BR nm "(" 1 ")."
|
||||||
|
|
||||||
|
.SH COPYING
|
||||||
|
Copyright (c) 1991, 92, 93, 94, 95, 1996 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.
|
83
oldbinutils/man/man1/mips-ranlib.1
Normal file
83
oldbinutils/man/man1/mips-ranlib.1
Normal file
@ -0,0 +1,83 @@
|
|||||||
|
.\" Copyright (c) 1991 Free Software Foundation
|
||||||
|
.\" See section COPYING for conditions for redistribution
|
||||||
|
.TH ranlib 1 "5 November 1991" "cygnus support" "GNU Development Tools"
|
||||||
|
.de BP
|
||||||
|
.sp
|
||||||
|
.ti \-.2i
|
||||||
|
\(**
|
||||||
|
..
|
||||||
|
|
||||||
|
.SH NAME
|
||||||
|
ranlib \- generate index to archive.
|
||||||
|
|
||||||
|
.SH SYNOPSIS
|
||||||
|
.hy 0
|
||||||
|
.na
|
||||||
|
.B ranlib \c
|
||||||
|
.RB "[\|" \-v | \-V "\|]"
|
||||||
|
.I archive\c
|
||||||
|
\&
|
||||||
|
.ad b
|
||||||
|
.hy 1
|
||||||
|
.SH DESCRIPTION
|
||||||
|
.B ranlib
|
||||||
|
generates an index to the contents of an archive, and
|
||||||
|
stores it in the archive. The index lists each symbol defined by a
|
||||||
|
member of an archive that is a relocatable object file.
|
||||||
|
.PP
|
||||||
|
You may use
|
||||||
|
.RB ` "nm \-s" '
|
||||||
|
or
|
||||||
|
.RB ` "nm \-\-print-armap" '
|
||||||
|
to list this index.
|
||||||
|
.PP
|
||||||
|
An archive with such an index speeds up linking to the library, and
|
||||||
|
allows routines in the library to call each other without regard to
|
||||||
|
their placement in the archive.
|
||||||
|
.PP
|
||||||
|
The GNU
|
||||||
|
.B ranlib
|
||||||
|
program is another form of GNU
|
||||||
|
.BR ar ;
|
||||||
|
running
|
||||||
|
.B ranlib
|
||||||
|
is completely equivalent to executing
|
||||||
|
.RB ` "ar \-s" '.
|
||||||
|
|
||||||
|
.SH OPTIONS
|
||||||
|
.TP
|
||||||
|
.B \-v
|
||||||
|
Print the version number of
|
||||||
|
.B ranlib
|
||||||
|
and exit.
|
||||||
|
|
||||||
|
.SH "SEE ALSO"
|
||||||
|
.RB "`\|" binutils "\|'"
|
||||||
|
entry in
|
||||||
|
.B
|
||||||
|
info\c
|
||||||
|
\&;
|
||||||
|
.I
|
||||||
|
The GNU Binary Utilities\c
|
||||||
|
\&, Roland H. Pesch (October 1991);
|
||||||
|
.BR ar "(" 1 "),"
|
||||||
|
.BR nm "(" 1 ")."
|
||||||
|
|
||||||
|
|
||||||
|
.SH COPYING
|
||||||
|
Copyright (c) 1991 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.
|
161
oldbinutils/man/man1/mips-size.1
Normal file
161
oldbinutils/man/man1/mips-size.1
Normal file
@ -0,0 +1,161 @@
|
|||||||
|
.\" Copyright (c) 1991 Free Software Foundation
|
||||||
|
.\" See section COPYING for conditions for redistribution
|
||||||
|
.TH size 1 "5 November 1991" "cygnus support" "GNU Development Tools"
|
||||||
|
.de BP
|
||||||
|
.sp
|
||||||
|
.ti \-.2i
|
||||||
|
\(**
|
||||||
|
..
|
||||||
|
|
||||||
|
.SH NAME
|
||||||
|
size \- list section sizes and total size.
|
||||||
|
|
||||||
|
.SH SYNOPSIS
|
||||||
|
.hy 0
|
||||||
|
.na
|
||||||
|
.TP
|
||||||
|
.B size
|
||||||
|
.RB "[\|" \-A \||\| \-B \||\| \c
|
||||||
|
.BI "\-\-format=" compatibility\c
|
||||||
|
\&\|]
|
||||||
|
.RB "[\|" \-\-help "\|]"
|
||||||
|
.RB "[\|" \-d \||\| \-o \||\| \-x\c
|
||||||
|
\||\|\c
|
||||||
|
.BI "\-\-radix=" number\c
|
||||||
|
\&\|]
|
||||||
|
.RB "[\|" \c
|
||||||
|
.BI "\-\-target=" bfdname\c
|
||||||
|
\&\|]
|
||||||
|
.RB "[\|" \-V \||\| \-\-version "\|]"
|
||||||
|
.I objfile\c
|
||||||
|
\&.\|.\|.
|
||||||
|
.ad b
|
||||||
|
.hy 1
|
||||||
|
.SH DESCRIPTION
|
||||||
|
The GNU \c
|
||||||
|
.B size\c
|
||||||
|
\& utility lists the section sizes\(em\&and the total
|
||||||
|
size\(em\&for each of the object files
|
||||||
|
.I objfile
|
||||||
|
in its argument list.
|
||||||
|
By default, one line of output is generated for each object file or each
|
||||||
|
module in an archive.
|
||||||
|
|
||||||
|
.SH OPTIONS
|
||||||
|
.TP
|
||||||
|
.B \-A
|
||||||
|
.TP
|
||||||
|
.B \-B
|
||||||
|
.TP
|
||||||
|
.BI "\-\-format " "compatibility"
|
||||||
|
Using one of these options, you can choose whether the output from GNU
|
||||||
|
\c
|
||||||
|
.B size\c
|
||||||
|
\& resembles output from System V \c
|
||||||
|
.B size\c
|
||||||
|
\& (using `\|\c
|
||||||
|
.B \-A\c
|
||||||
|
\|',
|
||||||
|
or `\|\c
|
||||||
|
.B \-\-format=sysv\c
|
||||||
|
\|'), or Berkeley \c
|
||||||
|
.B size\c
|
||||||
|
\& (using `\|\c
|
||||||
|
.B \-B\c
|
||||||
|
\|', or
|
||||||
|
`\|\c
|
||||||
|
.B \-\-format=berkeley\c
|
||||||
|
\|'). The default is the one-line format similar to
|
||||||
|
Berkeley's.
|
||||||
|
|
||||||
|
.TP
|
||||||
|
.B \-\-help
|
||||||
|
Show a summary of acceptable arguments and options.
|
||||||
|
|
||||||
|
.TP
|
||||||
|
.B \-d
|
||||||
|
.TP
|
||||||
|
.B \-o
|
||||||
|
.TP
|
||||||
|
.B \-x
|
||||||
|
.TP
|
||||||
|
.BI "\-\-radix " "number"
|
||||||
|
Using one of these options, you can control whether the size of each
|
||||||
|
section is given in decimal (`\|\c
|
||||||
|
.B \-d\c
|
||||||
|
\|', or `\|\c
|
||||||
|
.B \-\-radix 10\c
|
||||||
|
\|'); octal
|
||||||
|
(`\|\c
|
||||||
|
.B \-o\c
|
||||||
|
\|', or `\|\c
|
||||||
|
.B \-\-radix 8\c
|
||||||
|
\|'); or hexadecimal (`\|\c
|
||||||
|
.B \-x\c
|
||||||
|
\|', or
|
||||||
|
`\|\c
|
||||||
|
.B \-\-radix 16\c
|
||||||
|
\|'). In `\|\c
|
||||||
|
.B \-\-radix \c
|
||||||
|
.I number\c
|
||||||
|
\&\c
|
||||||
|
\|', only the three
|
||||||
|
values (8, 10, 16) are supported. The total size is always given in two
|
||||||
|
radices; decimal and hexadecimal for `\|\c
|
||||||
|
.B \-d\c
|
||||||
|
\|' or `\|\c
|
||||||
|
.B \-x\c
|
||||||
|
\|' output, or
|
||||||
|
octal and hexadecimal if you're using `\|\c
|
||||||
|
.B \-o\c
|
||||||
|
\|'.
|
||||||
|
|
||||||
|
.TP
|
||||||
|
.BI "\-\-target " "bfdname"
|
||||||
|
You can specify a particular object-code format for \c
|
||||||
|
.I objfile\c
|
||||||
|
\& as
|
||||||
|
\c
|
||||||
|
.I bfdname\c
|
||||||
|
\&. This may not be necessary; \c
|
||||||
|
.I size\c
|
||||||
|
\& can
|
||||||
|
automatically recognize many formats. See
|
||||||
|
.BR objdump ( 1 )
|
||||||
|
for information
|
||||||
|
on listing available formats.
|
||||||
|
|
||||||
|
.TP
|
||||||
|
.B \-V
|
||||||
|
.TP
|
||||||
|
.B \-\-version
|
||||||
|
Display version number information on \c
|
||||||
|
.B size\c
|
||||||
|
\& itself.
|
||||||
|
|
||||||
|
.SH "SEE ALSO"
|
||||||
|
.RB "`\|" binutils "\|'"
|
||||||
|
entry in
|
||||||
|
.BR info ;
|
||||||
|
.IR "The GNU Binary Utilities" ,
|
||||||
|
Roland H. Pesch (October 1991);
|
||||||
|
.BR ar "(" 1 "),"
|
||||||
|
.BR objdump ( 1 ).
|
||||||
|
|
||||||
|
.SH COPYING
|
||||||
|
Copyright (c) 1991 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.
|
151
oldbinutils/man/man1/mips-strings.1
Normal file
151
oldbinutils/man/man1/mips-strings.1
Normal file
@ -0,0 +1,151 @@
|
|||||||
|
.\" Copyright (c) 1993 Free Software Foundation
|
||||||
|
.\" See section COPYING for conditions for redistribution
|
||||||
|
.TH strings 1 "25 June 1993" "cygnus support" "GNU Development Tools"
|
||||||
|
.de BP
|
||||||
|
.sp
|
||||||
|
.ti \-.2i
|
||||||
|
\(**
|
||||||
|
..
|
||||||
|
|
||||||
|
.SH NAME
|
||||||
|
strings \- print the strings of printable characters in files
|
||||||
|
|
||||||
|
.SH SYNOPSIS
|
||||||
|
.hy 0
|
||||||
|
.na
|
||||||
|
.TP
|
||||||
|
.B strings
|
||||||
|
.RB "[\|" \-a | \-\c
|
||||||
|
.RB | \-\-all "\|]"
|
||||||
|
.RB "[\|" \-f | \-\-print\-file\-name "\|]"
|
||||||
|
.RB "[\|" \-o "\|]"
|
||||||
|
.RB "[\|" \-\-help "\|]"
|
||||||
|
.RB "[\|" \-v | \-\-version "\|]"
|
||||||
|
.RB "[\|" \-n
|
||||||
|
.I min\-len\c
|
||||||
|
.RI | \-min\-len\c
|
||||||
|
.RB | "\-\-bytes="\c
|
||||||
|
.I min\-len\c
|
||||||
|
\&\|]
|
||||||
|
.RB "[\|" \-t
|
||||||
|
.I {o,x,d}\c
|
||||||
|
.RB "[\|" "\-\-target=\fIbfdname" "\|]"
|
||||||
|
.RB | "\-\-radix="\c
|
||||||
|
.I {o,x,d}\c
|
||||||
|
\&\|]
|
||||||
|
.I file\c
|
||||||
|
.ad b
|
||||||
|
.hy 1
|
||||||
|
.SH DESCRIPTION
|
||||||
|
For each
|
||||||
|
.I file
|
||||||
|
given, GNU \c
|
||||||
|
.B strings
|
||||||
|
prints the printable character sequences that are at least 4
|
||||||
|
characters long (or the number given with the options below) and are
|
||||||
|
followed by an unprintable character. By default, it only prints the
|
||||||
|
strings from the initialized and loaded sections of object files; for
|
||||||
|
other types of files, it prints the strings from the whole file.
|
||||||
|
|
||||||
|
.PP
|
||||||
|
.B strings
|
||||||
|
is mainly useful for determining the contents of non-text files.
|
||||||
|
|
||||||
|
.SH OPTIONS
|
||||||
|
The long and short forms of options, shown here as alternatives, are
|
||||||
|
equivalent.
|
||||||
|
|
||||||
|
.TP
|
||||||
|
.B \-a
|
||||||
|
.TP
|
||||||
|
.B \-\-all
|
||||||
|
.TP
|
||||||
|
.B \-
|
||||||
|
Do not scan only the initialized and loaded sections of object files;
|
||||||
|
scan the whole files.
|
||||||
|
|
||||||
|
.TP
|
||||||
|
.B \-f
|
||||||
|
.TP
|
||||||
|
.B \-\-print\-file\-name
|
||||||
|
Print the name of the file before each string.
|
||||||
|
|
||||||
|
.TP
|
||||||
|
.B \-\-help
|
||||||
|
Print a summary of the options to
|
||||||
|
.B strings
|
||||||
|
on the standard output and exit.
|
||||||
|
|
||||||
|
.TP
|
||||||
|
.B \-v
|
||||||
|
.TP
|
||||||
|
.B \-\-version
|
||||||
|
Print the version number
|
||||||
|
of
|
||||||
|
.B strings
|
||||||
|
on the standard output and exit.
|
||||||
|
|
||||||
|
.TP
|
||||||
|
.B "\-n \fImin\-len\fP"
|
||||||
|
.TP
|
||||||
|
.B "\-\fImin\-len\fP"
|
||||||
|
.TP
|
||||||
|
.B "\-bytes=\fImin\-len\fP"
|
||||||
|
Print sequences of characters that are at least
|
||||||
|
.I min\-len
|
||||||
|
characters long, instead of the default 4.
|
||||||
|
|
||||||
|
.TP
|
||||||
|
.BR "\-t " {o,x,d}
|
||||||
|
.TP
|
||||||
|
.BR "\-\-radix=" {o,x,d}
|
||||||
|
Print the offset within the file before each string. The single
|
||||||
|
character argument specifies the radix of the offset\(emoctal,
|
||||||
|
hexadecimal, or decimal.
|
||||||
|
|
||||||
|
.TP
|
||||||
|
.BI "\-\-target=" "bfdname"
|
||||||
|
Specify an object code format other than your system's default format.
|
||||||
|
See
|
||||||
|
.BR objdump ( 1 ),
|
||||||
|
for information on listing available formats.
|
||||||
|
|
||||||
|
.TP
|
||||||
|
.B \-o
|
||||||
|
Like
|
||||||
|
.BR "\-t o" .
|
||||||
|
|
||||||
|
.PP
|
||||||
|
|
||||||
|
.SH "SEE ALSO"
|
||||||
|
.RB "`\|" binutils "\|'"
|
||||||
|
entry in
|
||||||
|
.B
|
||||||
|
info\c
|
||||||
|
\&;
|
||||||
|
.I
|
||||||
|
The GNU Binary Utilities\c
|
||||||
|
\&, Roland H. Pesch (October 1991);
|
||||||
|
.BR ar ( 1 ),
|
||||||
|
.BR nm ( 1 ),
|
||||||
|
.BR objdump ( 1 ),
|
||||||
|
.BR ranlib ( 1 ).
|
||||||
|
|
||||||
|
|
||||||
|
.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.
|
185
oldbinutils/man/man1/mips-strip.1
Normal file
185
oldbinutils/man/man1/mips-strip.1
Normal file
@ -0,0 +1,185 @@
|
|||||||
|
.\" Copyright (c) 1991, 92, 93, 94, 95, 96, 1997 Free Software Foundation
|
||||||
|
.\" See section COPYING for conditions for redistribution
|
||||||
|
.TH strip 1 "5 November 1991" "cygnus support" "GNU Development Tools"
|
||||||
|
.de BP
|
||||||
|
.sp
|
||||||
|
.ti \-.2i
|
||||||
|
\(**
|
||||||
|
..
|
||||||
|
|
||||||
|
.SH NAME
|
||||||
|
strip \- Discard symbols from object files.
|
||||||
|
|
||||||
|
.SH SYNOPSIS
|
||||||
|
.hy 0
|
||||||
|
.na
|
||||||
|
.TP
|
||||||
|
.B strip
|
||||||
|
.RB "[\|" \-F\ \fIbfdname\fR\ |\ \fB\-\-target=\fIbfdname\fP "\|]"
|
||||||
|
.RB "[\|" \-I\ \fIbfdname\fR\ |\ \fB\-\-input\-target=\fIbfdname\fP "\|]"
|
||||||
|
.RB "[\|" \-O\ \fIbfdname\fR\ |\ \fB\-\-output\-target=\fIbfdname\fP "\|]"
|
||||||
|
.RB "[\|" \-R\ \fIsectionname\fR\ |\ \fB\-\-remove\-section=\fIsectionname\fP "\|]"
|
||||||
|
.RB "[\|" \-s\fR\ |\ \fB\-\-strip\-all "\|]"
|
||||||
|
.RB "[\|" \-S\fR\ |\ \fB\-g\fR\ |\ \fB\-\-strip\-debug "\|]"
|
||||||
|
.RB "[\|" \-\-strip\-unneeded\fR "\|]"
|
||||||
|
.RB "[\|" \-x\fR\ |\ \fB\-\-discard\-all "\|]"
|
||||||
|
.RB "[\|" \-X\fR\ |\ \fB\-\-discard\-locals "\|]"
|
||||||
|
.RB "[\|" \-K\ \fIsymbolname\fR\ |\ \fB\-\-keep\-symbol=\fIsymbolname\fR "\|]"
|
||||||
|
.RB "[\|" \-N\ \fIsymbolname\fR\ |\ \fB\-\-strip\-symbol=\fIsymbolname\fR "\|]"
|
||||||
|
.RB "[\|" \-o\ \fIfile\f\R "\|]"
|
||||||
|
.RB "[\|" \-p\fR\ |\ \fB\-\-preserve\-dates "\|]"
|
||||||
|
.RB "[\|" \-v\fR\ |\ \fB\-\-verbose "\|]"
|
||||||
|
.RB "[\|" \-V\fR\ |\ \fB\-\-version "\|]"
|
||||||
|
.RB "[\|" \-V\fR\ |\ \fB\-\-help "\|]"
|
||||||
|
.I objfile\c
|
||||||
|
\&.\|.\|.
|
||||||
|
|
||||||
|
.SH DESCRIPTION
|
||||||
|
GNU
|
||||||
|
.B strip
|
||||||
|
discards all symbols from the object files
|
||||||
|
.IR objfile .
|
||||||
|
The list of object files may include archives.
|
||||||
|
At least one object file must be given.
|
||||||
|
|
||||||
|
.P
|
||||||
|
.B strip
|
||||||
|
modifies the files named in its argument,
|
||||||
|
rather than writing modified copies under different names.
|
||||||
|
|
||||||
|
.SH OPTIONS
|
||||||
|
.TP
|
||||||
|
.B "\-F \fIbfdname"
|
||||||
|
.TP
|
||||||
|
.B "\-\-target=\fIbfdname"
|
||||||
|
Treat the original \fIobjfile\fP as a file with the object
|
||||||
|
code format \fIbfdname\fP, and rewrite it in the same format.
|
||||||
|
|
||||||
|
.TP
|
||||||
|
.B \-\-help
|
||||||
|
Show a summary of the options to
|
||||||
|
.B strip
|
||||||
|
and exit.
|
||||||
|
|
||||||
|
.TP
|
||||||
|
.B "\-I \fIbfdname
|
||||||
|
.TP
|
||||||
|
.B "\-\-input\-target=\fIbfdname"
|
||||||
|
Treat the original \fIobjfile\fP as a file with the object
|
||||||
|
code format \fIbfdname\fP.
|
||||||
|
|
||||||
|
.TP
|
||||||
|
.B "\-O \fIbfdname\fP"
|
||||||
|
.TP
|
||||||
|
.B "\-\-output\-target=\fIbfdname"
|
||||||
|
Replace \fIobjfile\fP with a file in the output format \fIbfdname\fP.
|
||||||
|
|
||||||
|
.TP
|
||||||
|
.B "\-R \fIsectionname\fP"
|
||||||
|
.TP
|
||||||
|
.B "\-\-remove\-section=\fIsectionname"
|
||||||
|
Remove the named section from the file. This option may be given more
|
||||||
|
than once. Note that using this option inappropriately may make the
|
||||||
|
object file unusable.
|
||||||
|
|
||||||
|
.TP
|
||||||
|
.B \-s
|
||||||
|
.TP
|
||||||
|
.B \-\-strip\-all
|
||||||
|
Remove all symbols.
|
||||||
|
|
||||||
|
.TP
|
||||||
|
.B \-S
|
||||||
|
.TP
|
||||||
|
.B \-g
|
||||||
|
.TP
|
||||||
|
.B \-\-strip\-debug
|
||||||
|
Remove debugging symbols only.
|
||||||
|
|
||||||
|
.TP
|
||||||
|
.B \-\-strip\-unneeded
|
||||||
|
Strip all symbols that are not needed for relocation processing.
|
||||||
|
|
||||||
|
.TP
|
||||||
|
.B \-N \fIsymbolname\fR
|
||||||
|
.TP
|
||||||
|
.B \-\-strip\-symbol=\fIsymbolname
|
||||||
|
Remove symbol \fIsymbolname\fP from the source file. This option
|
||||||
|
may be given more than once, and may be combined with other strip
|
||||||
|
options.
|
||||||
|
|
||||||
|
.TP
|
||||||
|
.B \-o \fIfile\fR
|
||||||
|
Put the stripped output in \fIfile\fR, rather than replacing the
|
||||||
|
existing file. When this argument is used, only one \fIobjfile\fR
|
||||||
|
argument may be specified.
|
||||||
|
|
||||||
|
.TP
|
||||||
|
.B \-p
|
||||||
|
.TP
|
||||||
|
.B \-\-preserve-dates
|
||||||
|
Preserve the access and modification dates of the file.
|
||||||
|
|
||||||
|
.TP
|
||||||
|
.B \-x
|
||||||
|
.TP
|
||||||
|
.B \-\-discard\-all
|
||||||
|
Remove non-global symbols.
|
||||||
|
|
||||||
|
.TP
|
||||||
|
.B \-X
|
||||||
|
.TP
|
||||||
|
.B \-\-discard\-locals
|
||||||
|
Remove compiler-generated local symbols.
|
||||||
|
(These usually start with ``L'' or ``.''.)
|
||||||
|
|
||||||
|
.TP
|
||||||
|
.B \-K \fIsymbolname\fR, \fB\-\-keep\-symbol=\fIsymbolname
|
||||||
|
Copy only symbol \fIsymbolname\fP from the source file. This option
|
||||||
|
may be given more than once.
|
||||||
|
|
||||||
|
.TP
|
||||||
|
.B \-N \fIsymbolname\fR, \fB\-\-strip\-symbol=\fIsymbolname
|
||||||
|
Do not copy symbol \fIsymbolname\fP from the source file. This option
|
||||||
|
may be given more than once, and may be combined with strip options
|
||||||
|
other than \fB\-K\fR.
|
||||||
|
|
||||||
|
.TP
|
||||||
|
.B \-v
|
||||||
|
.TP
|
||||||
|
.B \-\-verbose
|
||||||
|
Verbose output: list all object files modified. In the case of
|
||||||
|
archives,
|
||||||
|
.B "strip \-V"
|
||||||
|
lists all members of the archive.
|
||||||
|
|
||||||
|
.TP
|
||||||
|
.B \-V
|
||||||
|
.TP
|
||||||
|
.B \-\-version
|
||||||
|
Show the version number for \fBstrip\fP and exit.
|
||||||
|
|
||||||
|
.SH "SEE ALSO"
|
||||||
|
.RB "`\|" binutils "\|'"
|
||||||
|
entry in
|
||||||
|
.BR info ;
|
||||||
|
.IR "The GNU Binary Utilities" ,
|
||||||
|
Roland H. Pesch (October 1991).
|
||||||
|
|
||||||
|
.SH COPYING
|
||||||
|
Copyright (c) 1991 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.
|
BIN
oldbinutils/mips/bin/ar
Executable file
BIN
oldbinutils/mips/bin/ar
Executable file
Binary file not shown.
BIN
oldbinutils/mips/bin/as
Executable file
BIN
oldbinutils/mips/bin/as
Executable file
Binary file not shown.
BIN
oldbinutils/mips/bin/ld
Executable file
BIN
oldbinutils/mips/bin/ld
Executable file
Binary file not shown.
BIN
oldbinutils/mips/bin/nm
Executable file
BIN
oldbinutils/mips/bin/nm
Executable file
Binary file not shown.
BIN
oldbinutils/mips/bin/ranlib
Executable file
BIN
oldbinutils/mips/bin/ranlib
Executable file
Binary file not shown.
BIN
oldbinutils/mips/bin/strip
Executable file
BIN
oldbinutils/mips/bin/strip
Executable file
Binary file not shown.
141
oldbinutils/mips/lib/ldscripts/elf32ebmip.x
Normal file
141
oldbinutils/mips/lib/ldscripts/elf32ebmip.x
Normal file
@ -0,0 +1,141 @@
|
|||||||
|
OUTPUT_FORMAT("elf32-bigmips", "elf32-bigmips",
|
||||||
|
"elf32-littlemips")
|
||||||
|
OUTPUT_ARCH(mips)
|
||||||
|
ENTRY(_start)
|
||||||
|
SEARCH_DIR(/opt/cross/mips/lib);
|
||||||
|
/* Do we need any of these for elf?
|
||||||
|
__DYNAMIC = 0; */
|
||||||
|
SECTIONS
|
||||||
|
{
|
||||||
|
/* Read-only sections, merged into text segment: */
|
||||||
|
. = 0x0400000;
|
||||||
|
.interp : { *(.interp) }
|
||||||
|
.reginfo : { *(.reginfo) }
|
||||||
|
.hash : { *(.hash) }
|
||||||
|
.dynsym : { *(.dynsym) }
|
||||||
|
.dynstr : { *(.dynstr) }
|
||||||
|
.gnu.version : { *(.gnu.version) }
|
||||||
|
.gnu.version_d : { *(.gnu.version_d) }
|
||||||
|
.gnu.version_r : { *(.gnu.version_r) }
|
||||||
|
.rel.text :
|
||||||
|
{ *(.rel.text) *(.rel.gnu.linkonce.t*) }
|
||||||
|
.rela.text :
|
||||||
|
{ *(.rela.text) *(.rela.gnu.linkonce.t*) }
|
||||||
|
.rel.data :
|
||||||
|
{ *(.rel.data) *(.rel.gnu.linkonce.d*) }
|
||||||
|
.rela.data :
|
||||||
|
{ *(.rela.data) *(.rela.gnu.linkonce.d*) }
|
||||||
|
.rel.rodata :
|
||||||
|
{ *(.rel.rodata) *(.rel.gnu.linkonce.r*) }
|
||||||
|
.rela.rodata :
|
||||||
|
{ *(.rela.rodata) *(.rela.gnu.linkonce.r*) }
|
||||||
|
.rel.got : { *(.rel.got) }
|
||||||
|
.rela.got : { *(.rela.got) }
|
||||||
|
.rel.ctors : { *(.rel.ctors) }
|
||||||
|
.rela.ctors : { *(.rela.ctors) }
|
||||||
|
.rel.dtors : { *(.rel.dtors) }
|
||||||
|
.rela.dtors : { *(.rela.dtors) }
|
||||||
|
.rel.init : { *(.rel.init) }
|
||||||
|
.rela.init : { *(.rela.init) }
|
||||||
|
.rel.fini : { *(.rel.fini) }
|
||||||
|
.rela.fini : { *(.rela.fini) }
|
||||||
|
.rel.bss : { *(.rel.bss) }
|
||||||
|
.rela.bss : { *(.rela.bss) }
|
||||||
|
.rel.plt : { *(.rel.plt) }
|
||||||
|
.rela.plt : { *(.rela.plt) }
|
||||||
|
.init : { *(.init) } =0
|
||||||
|
.plt : { *(.plt) }
|
||||||
|
.text :
|
||||||
|
{
|
||||||
|
_ftext = . ;
|
||||||
|
*(.text)
|
||||||
|
*(.stub)
|
||||||
|
/* .gnu.warning sections are handled specially by elf32.em. */
|
||||||
|
*(.gnu.warning)
|
||||||
|
*(.gnu.linkonce.t*)
|
||||||
|
*(.mips16.fn.*) *(.mips16.call.*)
|
||||||
|
} =0
|
||||||
|
_etext = .;
|
||||||
|
PROVIDE (etext = .);
|
||||||
|
.fini : { *(.fini) } =0
|
||||||
|
.rodata : { *(.rodata) *(.gnu.linkonce.r*) }
|
||||||
|
.rodata1 : { *(.rodata1) }
|
||||||
|
/* Adjust the address for the data segment. We want to adjust up to
|
||||||
|
the same address within the page on the next page up. */
|
||||||
|
. = ALIGN(0x40000) + (. & (0x40000 - 1));
|
||||||
|
.data :
|
||||||
|
{
|
||||||
|
_fdata = . ;
|
||||||
|
*(.data)
|
||||||
|
*(.gnu.linkonce.d*)
|
||||||
|
CONSTRUCTORS
|
||||||
|
}
|
||||||
|
.data1 : { *(.data1) }
|
||||||
|
.ctors :
|
||||||
|
{
|
||||||
|
*(.ctors)
|
||||||
|
}
|
||||||
|
.dtors :
|
||||||
|
{
|
||||||
|
*(.dtors)
|
||||||
|
}
|
||||||
|
_gp = ALIGN(16) + 0x7ff0;
|
||||||
|
.got : { *(.got.plt) *(.got) }
|
||||||
|
.dynamic : { *(.dynamic) }
|
||||||
|
/* We want the small data sections together, so single-instruction offsets
|
||||||
|
can access them all, and initialized data all before uninitialized, so
|
||||||
|
we can shorten the on-disk segment size. */
|
||||||
|
.sdata : { *(.sdata) }
|
||||||
|
.lit8 : { *(.lit8) }
|
||||||
|
.lit4 : { *(.lit4) }
|
||||||
|
_edata = .;
|
||||||
|
PROVIDE (edata = .);
|
||||||
|
__bss_start = .;
|
||||||
|
_fbss = .;
|
||||||
|
.sbss : { *(.sbss) *(.scommon) }
|
||||||
|
.bss :
|
||||||
|
{
|
||||||
|
*(.dynbss)
|
||||||
|
*(.bss)
|
||||||
|
*(COMMON)
|
||||||
|
}
|
||||||
|
. = ALIGN(32 / 8);
|
||||||
|
_end = . ;
|
||||||
|
PROVIDE (end = .);
|
||||||
|
/* Stabs debugging sections. */
|
||||||
|
.stab 0 : { *(.stab) }
|
||||||
|
.stabstr 0 : { *(.stabstr) }
|
||||||
|
.stab.excl 0 : { *(.stab.excl) }
|
||||||
|
.stab.exclstr 0 : { *(.stab.exclstr) }
|
||||||
|
.stab.index 0 : { *(.stab.index) }
|
||||||
|
.stab.indexstr 0 : { *(.stab.indexstr) }
|
||||||
|
.comment 0 : { *(.comment) }
|
||||||
|
/* DWARF debug sections.
|
||||||
|
Symbols in the DWARF debugging sections are relative to the beginning
|
||||||
|
of the section so we begin them at 0. */
|
||||||
|
/* DWARF 1 */
|
||||||
|
.debug 0 : { *(.debug) }
|
||||||
|
.line 0 : { *(.line) }
|
||||||
|
/* GNU DWARF 1 extensions */
|
||||||
|
.debug_srcinfo 0 : { *(.debug_srcinfo) }
|
||||||
|
.debug_sfnames 0 : { *(.debug_sfnames) }
|
||||||
|
/* DWARF 1.1 and DWARF 2 */
|
||||||
|
.debug_aranges 0 : { *(.debug_aranges) }
|
||||||
|
.debug_pubnames 0 : { *(.debug_pubnames) }
|
||||||
|
/* DWARF 2 */
|
||||||
|
.debug_info 0 : { *(.debug_info) }
|
||||||
|
.debug_abbrev 0 : { *(.debug_abbrev) }
|
||||||
|
.debug_line 0 : { *(.debug_line) }
|
||||||
|
.debug_frame 0 : { *(.debug_frame) }
|
||||||
|
.debug_str 0 : { *(.debug_str) }
|
||||||
|
.debug_loc 0 : { *(.debug_loc) }
|
||||||
|
.debug_macinfo 0 : { *(.debug_macinfo) }
|
||||||
|
/* SGI/MIPS DWARF 2 extensions */
|
||||||
|
.debug_weaknames 0 : { *(.debug_weaknames) }
|
||||||
|
.debug_funcnames 0 : { *(.debug_funcnames) }
|
||||||
|
.debug_typenames 0 : { *(.debug_typenames) }
|
||||||
|
.debug_varnames 0 : { *(.debug_varnames) }
|
||||||
|
/* These must appear regardless of . */
|
||||||
|
.gptab.sdata : { *(.gptab.data) *(.gptab.sdata) }
|
||||||
|
.gptab.sbss : { *(.gptab.bss) *(.gptab.sbss) }
|
||||||
|
}
|
141
oldbinutils/mips/lib/ldscripts/elf32ebmip.xbn
Normal file
141
oldbinutils/mips/lib/ldscripts/elf32ebmip.xbn
Normal file
@ -0,0 +1,141 @@
|
|||||||
|
OUTPUT_FORMAT("elf32-bigmips", "elf32-bigmips",
|
||||||
|
"elf32-littlemips")
|
||||||
|
OUTPUT_ARCH(mips)
|
||||||
|
ENTRY(_start)
|
||||||
|
SEARCH_DIR(/opt/cross/mips/lib);
|
||||||
|
/* Do we need any of these for elf?
|
||||||
|
__DYNAMIC = 0; */
|
||||||
|
SECTIONS
|
||||||
|
{
|
||||||
|
/* Read-only sections, merged into text segment: */
|
||||||
|
. = 0x0400000;
|
||||||
|
.interp : { *(.interp) }
|
||||||
|
.reginfo : { *(.reginfo) }
|
||||||
|
.hash : { *(.hash) }
|
||||||
|
.dynsym : { *(.dynsym) }
|
||||||
|
.dynstr : { *(.dynstr) }
|
||||||
|
.gnu.version : { *(.gnu.version) }
|
||||||
|
.gnu.version_d : { *(.gnu.version_d) }
|
||||||
|
.gnu.version_r : { *(.gnu.version_r) }
|
||||||
|
.rel.text :
|
||||||
|
{ *(.rel.text) *(.rel.gnu.linkonce.t*) }
|
||||||
|
.rela.text :
|
||||||
|
{ *(.rela.text) *(.rela.gnu.linkonce.t*) }
|
||||||
|
.rel.data :
|
||||||
|
{ *(.rel.data) *(.rel.gnu.linkonce.d*) }
|
||||||
|
.rela.data :
|
||||||
|
{ *(.rela.data) *(.rela.gnu.linkonce.d*) }
|
||||||
|
.rel.rodata :
|
||||||
|
{ *(.rel.rodata) *(.rel.gnu.linkonce.r*) }
|
||||||
|
.rela.rodata :
|
||||||
|
{ *(.rela.rodata) *(.rela.gnu.linkonce.r*) }
|
||||||
|
.rel.got : { *(.rel.got) }
|
||||||
|
.rela.got : { *(.rela.got) }
|
||||||
|
.rel.ctors : { *(.rel.ctors) }
|
||||||
|
.rela.ctors : { *(.rela.ctors) }
|
||||||
|
.rel.dtors : { *(.rel.dtors) }
|
||||||
|
.rela.dtors : { *(.rela.dtors) }
|
||||||
|
.rel.init : { *(.rel.init) }
|
||||||
|
.rela.init : { *(.rela.init) }
|
||||||
|
.rel.fini : { *(.rel.fini) }
|
||||||
|
.rela.fini : { *(.rela.fini) }
|
||||||
|
.rel.bss : { *(.rel.bss) }
|
||||||
|
.rela.bss : { *(.rela.bss) }
|
||||||
|
.rel.plt : { *(.rel.plt) }
|
||||||
|
.rela.plt : { *(.rela.plt) }
|
||||||
|
.init : { *(.init) } =0
|
||||||
|
.plt : { *(.plt) }
|
||||||
|
.text :
|
||||||
|
{
|
||||||
|
_ftext = . ;
|
||||||
|
*(.text)
|
||||||
|
*(.stub)
|
||||||
|
/* .gnu.warning sections are handled specially by elf32.em. */
|
||||||
|
*(.gnu.warning)
|
||||||
|
*(.gnu.linkonce.t*)
|
||||||
|
*(.mips16.fn.*) *(.mips16.call.*)
|
||||||
|
} =0
|
||||||
|
_etext = .;
|
||||||
|
PROVIDE (etext = .);
|
||||||
|
.fini : { *(.fini) } =0
|
||||||
|
.rodata : { *(.rodata) *(.gnu.linkonce.r*) }
|
||||||
|
.rodata1 : { *(.rodata1) }
|
||||||
|
/* Adjust the address for the data segment. We want to adjust up to
|
||||||
|
the same address within the page on the next page up. */
|
||||||
|
. = .;
|
||||||
|
.data :
|
||||||
|
{
|
||||||
|
_fdata = . ;
|
||||||
|
*(.data)
|
||||||
|
*(.gnu.linkonce.d*)
|
||||||
|
CONSTRUCTORS
|
||||||
|
}
|
||||||
|
.data1 : { *(.data1) }
|
||||||
|
.ctors :
|
||||||
|
{
|
||||||
|
*(.ctors)
|
||||||
|
}
|
||||||
|
.dtors :
|
||||||
|
{
|
||||||
|
*(.dtors)
|
||||||
|
}
|
||||||
|
_gp = ALIGN(16) + 0x7ff0;
|
||||||
|
.got : { *(.got.plt) *(.got) }
|
||||||
|
.dynamic : { *(.dynamic) }
|
||||||
|
/* We want the small data sections together, so single-instruction offsets
|
||||||
|
can access them all, and initialized data all before uninitialized, so
|
||||||
|
we can shorten the on-disk segment size. */
|
||||||
|
.sdata : { *(.sdata) }
|
||||||
|
.lit8 : { *(.lit8) }
|
||||||
|
.lit4 : { *(.lit4) }
|
||||||
|
_edata = .;
|
||||||
|
PROVIDE (edata = .);
|
||||||
|
__bss_start = .;
|
||||||
|
_fbss = .;
|
||||||
|
.sbss : { *(.sbss) *(.scommon) }
|
||||||
|
.bss :
|
||||||
|
{
|
||||||
|
*(.dynbss)
|
||||||
|
*(.bss)
|
||||||
|
*(COMMON)
|
||||||
|
}
|
||||||
|
. = ALIGN(32 / 8);
|
||||||
|
_end = . ;
|
||||||
|
PROVIDE (end = .);
|
||||||
|
/* Stabs debugging sections. */
|
||||||
|
.stab 0 : { *(.stab) }
|
||||||
|
.stabstr 0 : { *(.stabstr) }
|
||||||
|
.stab.excl 0 : { *(.stab.excl) }
|
||||||
|
.stab.exclstr 0 : { *(.stab.exclstr) }
|
||||||
|
.stab.index 0 : { *(.stab.index) }
|
||||||
|
.stab.indexstr 0 : { *(.stab.indexstr) }
|
||||||
|
.comment 0 : { *(.comment) }
|
||||||
|
/* DWARF debug sections.
|
||||||
|
Symbols in the DWARF debugging sections are relative to the beginning
|
||||||
|
of the section so we begin them at 0. */
|
||||||
|
/* DWARF 1 */
|
||||||
|
.debug 0 : { *(.debug) }
|
||||||
|
.line 0 : { *(.line) }
|
||||||
|
/* GNU DWARF 1 extensions */
|
||||||
|
.debug_srcinfo 0 : { *(.debug_srcinfo) }
|
||||||
|
.debug_sfnames 0 : { *(.debug_sfnames) }
|
||||||
|
/* DWARF 1.1 and DWARF 2 */
|
||||||
|
.debug_aranges 0 : { *(.debug_aranges) }
|
||||||
|
.debug_pubnames 0 : { *(.debug_pubnames) }
|
||||||
|
/* DWARF 2 */
|
||||||
|
.debug_info 0 : { *(.debug_info) }
|
||||||
|
.debug_abbrev 0 : { *(.debug_abbrev) }
|
||||||
|
.debug_line 0 : { *(.debug_line) }
|
||||||
|
.debug_frame 0 : { *(.debug_frame) }
|
||||||
|
.debug_str 0 : { *(.debug_str) }
|
||||||
|
.debug_loc 0 : { *(.debug_loc) }
|
||||||
|
.debug_macinfo 0 : { *(.debug_macinfo) }
|
||||||
|
/* SGI/MIPS DWARF 2 extensions */
|
||||||
|
.debug_weaknames 0 : { *(.debug_weaknames) }
|
||||||
|
.debug_funcnames 0 : { *(.debug_funcnames) }
|
||||||
|
.debug_typenames 0 : { *(.debug_typenames) }
|
||||||
|
.debug_varnames 0 : { *(.debug_varnames) }
|
||||||
|
/* These must appear regardless of . */
|
||||||
|
.gptab.sdata : { *(.gptab.data) *(.gptab.sdata) }
|
||||||
|
.gptab.sbss : { *(.gptab.bss) *(.gptab.sbss) }
|
||||||
|
}
|
141
oldbinutils/mips/lib/ldscripts/elf32ebmip.xn
Normal file
141
oldbinutils/mips/lib/ldscripts/elf32ebmip.xn
Normal file
@ -0,0 +1,141 @@
|
|||||||
|
OUTPUT_FORMAT("elf32-bigmips", "elf32-bigmips",
|
||||||
|
"elf32-littlemips")
|
||||||
|
OUTPUT_ARCH(mips)
|
||||||
|
ENTRY(_start)
|
||||||
|
SEARCH_DIR(/opt/cross/mips/lib);
|
||||||
|
/* Do we need any of these for elf?
|
||||||
|
__DYNAMIC = 0; */
|
||||||
|
SECTIONS
|
||||||
|
{
|
||||||
|
/* Read-only sections, merged into text segment: */
|
||||||
|
. = 0x0400000;
|
||||||
|
.interp : { *(.interp) }
|
||||||
|
.reginfo : { *(.reginfo) }
|
||||||
|
.hash : { *(.hash) }
|
||||||
|
.dynsym : { *(.dynsym) }
|
||||||
|
.dynstr : { *(.dynstr) }
|
||||||
|
.gnu.version : { *(.gnu.version) }
|
||||||
|
.gnu.version_d : { *(.gnu.version_d) }
|
||||||
|
.gnu.version_r : { *(.gnu.version_r) }
|
||||||
|
.rel.text :
|
||||||
|
{ *(.rel.text) *(.rel.gnu.linkonce.t*) }
|
||||||
|
.rela.text :
|
||||||
|
{ *(.rela.text) *(.rela.gnu.linkonce.t*) }
|
||||||
|
.rel.data :
|
||||||
|
{ *(.rel.data) *(.rel.gnu.linkonce.d*) }
|
||||||
|
.rela.data :
|
||||||
|
{ *(.rela.data) *(.rela.gnu.linkonce.d*) }
|
||||||
|
.rel.rodata :
|
||||||
|
{ *(.rel.rodata) *(.rel.gnu.linkonce.r*) }
|
||||||
|
.rela.rodata :
|
||||||
|
{ *(.rela.rodata) *(.rela.gnu.linkonce.r*) }
|
||||||
|
.rel.got : { *(.rel.got) }
|
||||||
|
.rela.got : { *(.rela.got) }
|
||||||
|
.rel.ctors : { *(.rel.ctors) }
|
||||||
|
.rela.ctors : { *(.rela.ctors) }
|
||||||
|
.rel.dtors : { *(.rel.dtors) }
|
||||||
|
.rela.dtors : { *(.rela.dtors) }
|
||||||
|
.rel.init : { *(.rel.init) }
|
||||||
|
.rela.init : { *(.rela.init) }
|
||||||
|
.rel.fini : { *(.rel.fini) }
|
||||||
|
.rela.fini : { *(.rela.fini) }
|
||||||
|
.rel.bss : { *(.rel.bss) }
|
||||||
|
.rela.bss : { *(.rela.bss) }
|
||||||
|
.rel.plt : { *(.rel.plt) }
|
||||||
|
.rela.plt : { *(.rela.plt) }
|
||||||
|
.init : { *(.init) } =0
|
||||||
|
.plt : { *(.plt) }
|
||||||
|
.text :
|
||||||
|
{
|
||||||
|
_ftext = . ;
|
||||||
|
*(.text)
|
||||||
|
*(.stub)
|
||||||
|
/* .gnu.warning sections are handled specially by elf32.em. */
|
||||||
|
*(.gnu.warning)
|
||||||
|
*(.gnu.linkonce.t*)
|
||||||
|
*(.mips16.fn.*) *(.mips16.call.*)
|
||||||
|
} =0
|
||||||
|
_etext = .;
|
||||||
|
PROVIDE (etext = .);
|
||||||
|
.fini : { *(.fini) } =0
|
||||||
|
.rodata : { *(.rodata) *(.gnu.linkonce.r*) }
|
||||||
|
.rodata1 : { *(.rodata1) }
|
||||||
|
/* Adjust the address for the data segment. We want to adjust up to
|
||||||
|
the same address within the page on the next page up. */
|
||||||
|
. = ALIGN(0x40000) + (. & (0x40000 - 1));
|
||||||
|
.data :
|
||||||
|
{
|
||||||
|
_fdata = . ;
|
||||||
|
*(.data)
|
||||||
|
*(.gnu.linkonce.d*)
|
||||||
|
CONSTRUCTORS
|
||||||
|
}
|
||||||
|
.data1 : { *(.data1) }
|
||||||
|
.ctors :
|
||||||
|
{
|
||||||
|
*(.ctors)
|
||||||
|
}
|
||||||
|
.dtors :
|
||||||
|
{
|
||||||
|
*(.dtors)
|
||||||
|
}
|
||||||
|
_gp = ALIGN(16) + 0x7ff0;
|
||||||
|
.got : { *(.got.plt) *(.got) }
|
||||||
|
.dynamic : { *(.dynamic) }
|
||||||
|
/* We want the small data sections together, so single-instruction offsets
|
||||||
|
can access them all, and initialized data all before uninitialized, so
|
||||||
|
we can shorten the on-disk segment size. */
|
||||||
|
.sdata : { *(.sdata) }
|
||||||
|
.lit8 : { *(.lit8) }
|
||||||
|
.lit4 : { *(.lit4) }
|
||||||
|
_edata = .;
|
||||||
|
PROVIDE (edata = .);
|
||||||
|
__bss_start = .;
|
||||||
|
_fbss = .;
|
||||||
|
.sbss : { *(.sbss) *(.scommon) }
|
||||||
|
.bss :
|
||||||
|
{
|
||||||
|
*(.dynbss)
|
||||||
|
*(.bss)
|
||||||
|
*(COMMON)
|
||||||
|
}
|
||||||
|
. = ALIGN(32 / 8);
|
||||||
|
_end = . ;
|
||||||
|
PROVIDE (end = .);
|
||||||
|
/* Stabs debugging sections. */
|
||||||
|
.stab 0 : { *(.stab) }
|
||||||
|
.stabstr 0 : { *(.stabstr) }
|
||||||
|
.stab.excl 0 : { *(.stab.excl) }
|
||||||
|
.stab.exclstr 0 : { *(.stab.exclstr) }
|
||||||
|
.stab.index 0 : { *(.stab.index) }
|
||||||
|
.stab.indexstr 0 : { *(.stab.indexstr) }
|
||||||
|
.comment 0 : { *(.comment) }
|
||||||
|
/* DWARF debug sections.
|
||||||
|
Symbols in the DWARF debugging sections are relative to the beginning
|
||||||
|
of the section so we begin them at 0. */
|
||||||
|
/* DWARF 1 */
|
||||||
|
.debug 0 : { *(.debug) }
|
||||||
|
.line 0 : { *(.line) }
|
||||||
|
/* GNU DWARF 1 extensions */
|
||||||
|
.debug_srcinfo 0 : { *(.debug_srcinfo) }
|
||||||
|
.debug_sfnames 0 : { *(.debug_sfnames) }
|
||||||
|
/* DWARF 1.1 and DWARF 2 */
|
||||||
|
.debug_aranges 0 : { *(.debug_aranges) }
|
||||||
|
.debug_pubnames 0 : { *(.debug_pubnames) }
|
||||||
|
/* DWARF 2 */
|
||||||
|
.debug_info 0 : { *(.debug_info) }
|
||||||
|
.debug_abbrev 0 : { *(.debug_abbrev) }
|
||||||
|
.debug_line 0 : { *(.debug_line) }
|
||||||
|
.debug_frame 0 : { *(.debug_frame) }
|
||||||
|
.debug_str 0 : { *(.debug_str) }
|
||||||
|
.debug_loc 0 : { *(.debug_loc) }
|
||||||
|
.debug_macinfo 0 : { *(.debug_macinfo) }
|
||||||
|
/* SGI/MIPS DWARF 2 extensions */
|
||||||
|
.debug_weaknames 0 : { *(.debug_weaknames) }
|
||||||
|
.debug_funcnames 0 : { *(.debug_funcnames) }
|
||||||
|
.debug_typenames 0 : { *(.debug_typenames) }
|
||||||
|
.debug_varnames 0 : { *(.debug_varnames) }
|
||||||
|
/* These must appear regardless of . */
|
||||||
|
.gptab.sdata : { *(.gptab.data) *(.gptab.sdata) }
|
||||||
|
.gptab.sbss : { *(.gptab.bss) *(.gptab.sbss) }
|
||||||
|
}
|
122
oldbinutils/mips/lib/ldscripts/elf32ebmip.xr
Normal file
122
oldbinutils/mips/lib/ldscripts/elf32ebmip.xr
Normal file
@ -0,0 +1,122 @@
|
|||||||
|
OUTPUT_FORMAT("elf32-bigmips", "elf32-bigmips",
|
||||||
|
"elf32-littlemips")
|
||||||
|
OUTPUT_ARCH(mips)
|
||||||
|
ENTRY(_start)
|
||||||
|
/* For some reason, the Solaris linker makes bad executables
|
||||||
|
if gld -r is used and the intermediate file has sections starting
|
||||||
|
at non-zero addresses. Could be a Solaris ld bug, could be a GNU ld
|
||||||
|
bug. But for now assigning the zero vmas works. */
|
||||||
|
SECTIONS
|
||||||
|
{
|
||||||
|
/* Read-only sections, merged into text segment: */
|
||||||
|
.interp 0 : { *(.interp) }
|
||||||
|
.reginfo : { *(.reginfo) }
|
||||||
|
.hash 0 : { *(.hash) }
|
||||||
|
.dynsym 0 : { *(.dynsym) }
|
||||||
|
.dynstr 0 : { *(.dynstr) }
|
||||||
|
.gnu.version 0 : { *(.gnu.version) }
|
||||||
|
.gnu.version_d 0 : { *(.gnu.version_d) }
|
||||||
|
.gnu.version_r 0 : { *(.gnu.version_r) }
|
||||||
|
.rel.text 0 :
|
||||||
|
{ *(.rel.text) }
|
||||||
|
.rela.text 0 :
|
||||||
|
{ *(.rela.text) }
|
||||||
|
.rel.data 0 :
|
||||||
|
{ *(.rel.data) }
|
||||||
|
.rela.data 0 :
|
||||||
|
{ *(.rela.data) }
|
||||||
|
.rel.rodata 0 :
|
||||||
|
{ *(.rel.rodata) }
|
||||||
|
.rela.rodata 0 :
|
||||||
|
{ *(.rela.rodata) }
|
||||||
|
.rel.got 0 : { *(.rel.got) }
|
||||||
|
.rela.got 0 : { *(.rela.got) }
|
||||||
|
.rel.ctors 0 : { *(.rel.ctors) }
|
||||||
|
.rela.ctors 0 : { *(.rela.ctors) }
|
||||||
|
.rel.dtors 0 : { *(.rel.dtors) }
|
||||||
|
.rela.dtors 0 : { *(.rela.dtors) }
|
||||||
|
.rel.init 0 : { *(.rel.init) }
|
||||||
|
.rela.init 0 : { *(.rela.init) }
|
||||||
|
.rel.fini 0 : { *(.rel.fini) }
|
||||||
|
.rela.fini 0 : { *(.rela.fini) }
|
||||||
|
.rel.bss 0 : { *(.rel.bss) }
|
||||||
|
.rela.bss 0 : { *(.rela.bss) }
|
||||||
|
.rel.plt 0 : { *(.rel.plt) }
|
||||||
|
.rela.plt 0 : { *(.rela.plt) }
|
||||||
|
.init 0 : { *(.init) } =0
|
||||||
|
.plt 0 : { *(.plt) }
|
||||||
|
.text 0 :
|
||||||
|
{
|
||||||
|
*(.text)
|
||||||
|
*(.stub)
|
||||||
|
/* .gnu.warning sections are handled specially by elf32.em. */
|
||||||
|
*(.gnu.warning)
|
||||||
|
} =0
|
||||||
|
.fini 0 : { *(.fini) } =0
|
||||||
|
.rodata 0 : { *(.rodata) }
|
||||||
|
.rodata1 0 : { *(.rodata1) }
|
||||||
|
/* Adjust the address for the data segment. We want to adjust up to
|
||||||
|
the same address within the page on the next page up. */
|
||||||
|
.data 0 :
|
||||||
|
{
|
||||||
|
*(.data)
|
||||||
|
}
|
||||||
|
.data1 0 : { *(.data1) }
|
||||||
|
.ctors 0 :
|
||||||
|
{
|
||||||
|
*(.ctors)
|
||||||
|
}
|
||||||
|
.dtors 0 :
|
||||||
|
{
|
||||||
|
*(.dtors)
|
||||||
|
}
|
||||||
|
.got 0 : { *(.got.plt) *(.got) }
|
||||||
|
.dynamic 0 : { *(.dynamic) }
|
||||||
|
/* We want the small data sections together, so single-instruction offsets
|
||||||
|
can access them all, and initialized data all before uninitialized, so
|
||||||
|
we can shorten the on-disk segment size. */
|
||||||
|
.sdata 0 : { *(.sdata) }
|
||||||
|
.sbss 0 : { *(.sbss) *(.scommon) }
|
||||||
|
.bss 0 :
|
||||||
|
{
|
||||||
|
*(.dynbss)
|
||||||
|
*(.bss)
|
||||||
|
*(COMMON)
|
||||||
|
}
|
||||||
|
/* Stabs debugging sections. */
|
||||||
|
.stab 0 : { *(.stab) }
|
||||||
|
.stabstr 0 : { *(.stabstr) }
|
||||||
|
.stab.excl 0 : { *(.stab.excl) }
|
||||||
|
.stab.exclstr 0 : { *(.stab.exclstr) }
|
||||||
|
.stab.index 0 : { *(.stab.index) }
|
||||||
|
.stab.indexstr 0 : { *(.stab.indexstr) }
|
||||||
|
.comment 0 : { *(.comment) }
|
||||||
|
/* DWARF debug sections.
|
||||||
|
Symbols in the DWARF debugging sections are relative to the beginning
|
||||||
|
of the section so we begin them at 0. */
|
||||||
|
/* DWARF 1 */
|
||||||
|
.debug 0 : { *(.debug) }
|
||||||
|
.line 0 : { *(.line) }
|
||||||
|
/* GNU DWARF 1 extensions */
|
||||||
|
.debug_srcinfo 0 : { *(.debug_srcinfo) }
|
||||||
|
.debug_sfnames 0 : { *(.debug_sfnames) }
|
||||||
|
/* DWARF 1.1 and DWARF 2 */
|
||||||
|
.debug_aranges 0 : { *(.debug_aranges) }
|
||||||
|
.debug_pubnames 0 : { *(.debug_pubnames) }
|
||||||
|
/* DWARF 2 */
|
||||||
|
.debug_info 0 : { *(.debug_info) }
|
||||||
|
.debug_abbrev 0 : { *(.debug_abbrev) }
|
||||||
|
.debug_line 0 : { *(.debug_line) }
|
||||||
|
.debug_frame 0 : { *(.debug_frame) }
|
||||||
|
.debug_str 0 : { *(.debug_str) }
|
||||||
|
.debug_loc 0 : { *(.debug_loc) }
|
||||||
|
.debug_macinfo 0 : { *(.debug_macinfo) }
|
||||||
|
/* SGI/MIPS DWARF 2 extensions */
|
||||||
|
.debug_weaknames 0 : { *(.debug_weaknames) }
|
||||||
|
.debug_funcnames 0 : { *(.debug_funcnames) }
|
||||||
|
.debug_typenames 0 : { *(.debug_typenames) }
|
||||||
|
.debug_varnames 0 : { *(.debug_varnames) }
|
||||||
|
/* These must appear regardless of . */
|
||||||
|
.gptab.sdata : { *(.gptab.data) *(.gptab.sdata) }
|
||||||
|
.gptab.sbss : { *(.gptab.bss) *(.gptab.sbss) }
|
||||||
|
}
|
140
oldbinutils/mips/lib/ldscripts/elf32ebmip.xs
Normal file
140
oldbinutils/mips/lib/ldscripts/elf32ebmip.xs
Normal file
@ -0,0 +1,140 @@
|
|||||||
|
OUTPUT_FORMAT("elf32-bigmips", "elf32-bigmips",
|
||||||
|
"elf32-littlemips")
|
||||||
|
OUTPUT_ARCH(mips)
|
||||||
|
ENTRY(_start)
|
||||||
|
SEARCH_DIR(/opt/cross/mips/lib);
|
||||||
|
/* Do we need any of these for elf?
|
||||||
|
__DYNAMIC = 0; */
|
||||||
|
SECTIONS
|
||||||
|
{
|
||||||
|
/* Read-only sections, merged into text segment: */
|
||||||
|
. = 0x5ffe0000 + SIZEOF_HEADERS;
|
||||||
|
.reginfo : { *(.reginfo) }
|
||||||
|
.hash : { *(.hash) }
|
||||||
|
.dynsym : { *(.dynsym) }
|
||||||
|
.dynstr : { *(.dynstr) }
|
||||||
|
.gnu.version : { *(.gnu.version) }
|
||||||
|
.gnu.version_d : { *(.gnu.version_d) }
|
||||||
|
.gnu.version_r : { *(.gnu.version_r) }
|
||||||
|
.rel.text :
|
||||||
|
{ *(.rel.text) *(.rel.gnu.linkonce.t*) }
|
||||||
|
.rela.text :
|
||||||
|
{ *(.rela.text) *(.rela.gnu.linkonce.t*) }
|
||||||
|
.rel.data :
|
||||||
|
{ *(.rel.data) *(.rel.gnu.linkonce.d*) }
|
||||||
|
.rela.data :
|
||||||
|
{ *(.rela.data) *(.rela.gnu.linkonce.d*) }
|
||||||
|
.rel.rodata :
|
||||||
|
{ *(.rel.rodata) *(.rel.gnu.linkonce.r*) }
|
||||||
|
.rela.rodata :
|
||||||
|
{ *(.rela.rodata) *(.rela.gnu.linkonce.r*) }
|
||||||
|
.rel.got : { *(.rel.got) }
|
||||||
|
.rela.got : { *(.rela.got) }
|
||||||
|
.rel.ctors : { *(.rel.ctors) }
|
||||||
|
.rela.ctors : { *(.rela.ctors) }
|
||||||
|
.rel.dtors : { *(.rel.dtors) }
|
||||||
|
.rela.dtors : { *(.rela.dtors) }
|
||||||
|
.rel.init : { *(.rel.init) }
|
||||||
|
.rela.init : { *(.rela.init) }
|
||||||
|
.rel.fini : { *(.rel.fini) }
|
||||||
|
.rela.fini : { *(.rela.fini) }
|
||||||
|
.rel.bss : { *(.rel.bss) }
|
||||||
|
.rela.bss : { *(.rela.bss) }
|
||||||
|
.rel.plt : { *(.rel.plt) }
|
||||||
|
.rela.plt : { *(.rela.plt) }
|
||||||
|
.init : { *(.init) } =0
|
||||||
|
.plt : { *(.plt) }
|
||||||
|
.text :
|
||||||
|
{
|
||||||
|
_ftext = . ;
|
||||||
|
*(.text)
|
||||||
|
*(.stub)
|
||||||
|
/* .gnu.warning sections are handled specially by elf32.em. */
|
||||||
|
*(.gnu.warning)
|
||||||
|
*(.gnu.linkonce.t*)
|
||||||
|
*(.mips16.fn.*) *(.mips16.call.*)
|
||||||
|
} =0
|
||||||
|
_etext = .;
|
||||||
|
PROVIDE (etext = .);
|
||||||
|
.fini : { *(.fini) } =0
|
||||||
|
.rodata : { *(.rodata) *(.gnu.linkonce.r*) }
|
||||||
|
.rodata1 : { *(.rodata1) }
|
||||||
|
/* Adjust the address for the data segment. We want to adjust up to
|
||||||
|
the same address within the page on the next page up. */
|
||||||
|
. = ALIGN(0x40000) + (. & (0x40000 - 1));
|
||||||
|
.data :
|
||||||
|
{
|
||||||
|
_fdata = . ;
|
||||||
|
*(.data)
|
||||||
|
*(.gnu.linkonce.d*)
|
||||||
|
CONSTRUCTORS
|
||||||
|
}
|
||||||
|
.data1 : { *(.data1) }
|
||||||
|
.ctors :
|
||||||
|
{
|
||||||
|
*(.ctors)
|
||||||
|
}
|
||||||
|
.dtors :
|
||||||
|
{
|
||||||
|
*(.dtors)
|
||||||
|
}
|
||||||
|
_gp = ALIGN(16) + 0x7ff0;
|
||||||
|
.got : { *(.got.plt) *(.got) }
|
||||||
|
.dynamic : { *(.dynamic) }
|
||||||
|
/* We want the small data sections together, so single-instruction offsets
|
||||||
|
can access them all, and initialized data all before uninitialized, so
|
||||||
|
we can shorten the on-disk segment size. */
|
||||||
|
.sdata : { *(.sdata) }
|
||||||
|
.lit8 : { *(.lit8) }
|
||||||
|
.lit4 : { *(.lit4) }
|
||||||
|
_edata = .;
|
||||||
|
PROVIDE (edata = .);
|
||||||
|
__bss_start = .;
|
||||||
|
_fbss = .;
|
||||||
|
.sbss : { *(.sbss) *(.scommon) }
|
||||||
|
.bss :
|
||||||
|
{
|
||||||
|
*(.dynbss)
|
||||||
|
*(.bss)
|
||||||
|
*(COMMON)
|
||||||
|
}
|
||||||
|
. = ALIGN(32 / 8);
|
||||||
|
_end = . ;
|
||||||
|
PROVIDE (end = .);
|
||||||
|
/* Stabs debugging sections. */
|
||||||
|
.stab 0 : { *(.stab) }
|
||||||
|
.stabstr 0 : { *(.stabstr) }
|
||||||
|
.stab.excl 0 : { *(.stab.excl) }
|
||||||
|
.stab.exclstr 0 : { *(.stab.exclstr) }
|
||||||
|
.stab.index 0 : { *(.stab.index) }
|
||||||
|
.stab.indexstr 0 : { *(.stab.indexstr) }
|
||||||
|
.comment 0 : { *(.comment) }
|
||||||
|
/* DWARF debug sections.
|
||||||
|
Symbols in the DWARF debugging sections are relative to the beginning
|
||||||
|
of the section so we begin them at 0. */
|
||||||
|
/* DWARF 1 */
|
||||||
|
.debug 0 : { *(.debug) }
|
||||||
|
.line 0 : { *(.line) }
|
||||||
|
/* GNU DWARF 1 extensions */
|
||||||
|
.debug_srcinfo 0 : { *(.debug_srcinfo) }
|
||||||
|
.debug_sfnames 0 : { *(.debug_sfnames) }
|
||||||
|
/* DWARF 1.1 and DWARF 2 */
|
||||||
|
.debug_aranges 0 : { *(.debug_aranges) }
|
||||||
|
.debug_pubnames 0 : { *(.debug_pubnames) }
|
||||||
|
/* DWARF 2 */
|
||||||
|
.debug_info 0 : { *(.debug_info) }
|
||||||
|
.debug_abbrev 0 : { *(.debug_abbrev) }
|
||||||
|
.debug_line 0 : { *(.debug_line) }
|
||||||
|
.debug_frame 0 : { *(.debug_frame) }
|
||||||
|
.debug_str 0 : { *(.debug_str) }
|
||||||
|
.debug_loc 0 : { *(.debug_loc) }
|
||||||
|
.debug_macinfo 0 : { *(.debug_macinfo) }
|
||||||
|
/* SGI/MIPS DWARF 2 extensions */
|
||||||
|
.debug_weaknames 0 : { *(.debug_weaknames) }
|
||||||
|
.debug_funcnames 0 : { *(.debug_funcnames) }
|
||||||
|
.debug_typenames 0 : { *(.debug_typenames) }
|
||||||
|
.debug_varnames 0 : { *(.debug_varnames) }
|
||||||
|
/* These must appear regardless of . */
|
||||||
|
.gptab.sdata : { *(.gptab.data) *(.gptab.sdata) }
|
||||||
|
.gptab.sbss : { *(.gptab.bss) *(.gptab.sbss) }
|
||||||
|
}
|
123
oldbinutils/mips/lib/ldscripts/elf32ebmip.xu
Normal file
123
oldbinutils/mips/lib/ldscripts/elf32ebmip.xu
Normal file
@ -0,0 +1,123 @@
|
|||||||
|
OUTPUT_FORMAT("elf32-bigmips", "elf32-bigmips",
|
||||||
|
"elf32-littlemips")
|
||||||
|
OUTPUT_ARCH(mips)
|
||||||
|
ENTRY(_start)
|
||||||
|
/* For some reason, the Solaris linker makes bad executables
|
||||||
|
if gld -r is used and the intermediate file has sections starting
|
||||||
|
at non-zero addresses. Could be a Solaris ld bug, could be a GNU ld
|
||||||
|
bug. But for now assigning the zero vmas works. */
|
||||||
|
SECTIONS
|
||||||
|
{
|
||||||
|
/* Read-only sections, merged into text segment: */
|
||||||
|
.interp 0 : { *(.interp) }
|
||||||
|
.reginfo : { *(.reginfo) }
|
||||||
|
.hash 0 : { *(.hash) }
|
||||||
|
.dynsym 0 : { *(.dynsym) }
|
||||||
|
.dynstr 0 : { *(.dynstr) }
|
||||||
|
.gnu.version 0 : { *(.gnu.version) }
|
||||||
|
.gnu.version_d 0 : { *(.gnu.version_d) }
|
||||||
|
.gnu.version_r 0 : { *(.gnu.version_r) }
|
||||||
|
.rel.text 0 :
|
||||||
|
{ *(.rel.text) }
|
||||||
|
.rela.text 0 :
|
||||||
|
{ *(.rela.text) }
|
||||||
|
.rel.data 0 :
|
||||||
|
{ *(.rel.data) }
|
||||||
|
.rela.data 0 :
|
||||||
|
{ *(.rela.data) }
|
||||||
|
.rel.rodata 0 :
|
||||||
|
{ *(.rel.rodata) }
|
||||||
|
.rela.rodata 0 :
|
||||||
|
{ *(.rela.rodata) }
|
||||||
|
.rel.got 0 : { *(.rel.got) }
|
||||||
|
.rela.got 0 : { *(.rela.got) }
|
||||||
|
.rel.ctors 0 : { *(.rel.ctors) }
|
||||||
|
.rela.ctors 0 : { *(.rela.ctors) }
|
||||||
|
.rel.dtors 0 : { *(.rel.dtors) }
|
||||||
|
.rela.dtors 0 : { *(.rela.dtors) }
|
||||||
|
.rel.init 0 : { *(.rel.init) }
|
||||||
|
.rela.init 0 : { *(.rela.init) }
|
||||||
|
.rel.fini 0 : { *(.rel.fini) }
|
||||||
|
.rela.fini 0 : { *(.rela.fini) }
|
||||||
|
.rel.bss 0 : { *(.rel.bss) }
|
||||||
|
.rela.bss 0 : { *(.rela.bss) }
|
||||||
|
.rel.plt 0 : { *(.rel.plt) }
|
||||||
|
.rela.plt 0 : { *(.rela.plt) }
|
||||||
|
.init 0 : { *(.init) } =0
|
||||||
|
.plt 0 : { *(.plt) }
|
||||||
|
.text 0 :
|
||||||
|
{
|
||||||
|
*(.text)
|
||||||
|
*(.stub)
|
||||||
|
/* .gnu.warning sections are handled specially by elf32.em. */
|
||||||
|
*(.gnu.warning)
|
||||||
|
} =0
|
||||||
|
.fini 0 : { *(.fini) } =0
|
||||||
|
.rodata 0 : { *(.rodata) }
|
||||||
|
.rodata1 0 : { *(.rodata1) }
|
||||||
|
/* Adjust the address for the data segment. We want to adjust up to
|
||||||
|
the same address within the page on the next page up. */
|
||||||
|
.data 0 :
|
||||||
|
{
|
||||||
|
*(.data)
|
||||||
|
CONSTRUCTORS
|
||||||
|
}
|
||||||
|
.data1 0 : { *(.data1) }
|
||||||
|
.ctors 0 :
|
||||||
|
{
|
||||||
|
*(.ctors)
|
||||||
|
}
|
||||||
|
.dtors 0 :
|
||||||
|
{
|
||||||
|
*(.dtors)
|
||||||
|
}
|
||||||
|
.got 0 : { *(.got.plt) *(.got) }
|
||||||
|
.dynamic 0 : { *(.dynamic) }
|
||||||
|
/* We want the small data sections together, so single-instruction offsets
|
||||||
|
can access them all, and initialized data all before uninitialized, so
|
||||||
|
we can shorten the on-disk segment size. */
|
||||||
|
.sdata 0 : { *(.sdata) }
|
||||||
|
.sbss 0 : { *(.sbss) *(.scommon) }
|
||||||
|
.bss 0 :
|
||||||
|
{
|
||||||
|
*(.dynbss)
|
||||||
|
*(.bss)
|
||||||
|
*(COMMON)
|
||||||
|
}
|
||||||
|
/* Stabs debugging sections. */
|
||||||
|
.stab 0 : { *(.stab) }
|
||||||
|
.stabstr 0 : { *(.stabstr) }
|
||||||
|
.stab.excl 0 : { *(.stab.excl) }
|
||||||
|
.stab.exclstr 0 : { *(.stab.exclstr) }
|
||||||
|
.stab.index 0 : { *(.stab.index) }
|
||||||
|
.stab.indexstr 0 : { *(.stab.indexstr) }
|
||||||
|
.comment 0 : { *(.comment) }
|
||||||
|
/* DWARF debug sections.
|
||||||
|
Symbols in the DWARF debugging sections are relative to the beginning
|
||||||
|
of the section so we begin them at 0. */
|
||||||
|
/* DWARF 1 */
|
||||||
|
.debug 0 : { *(.debug) }
|
||||||
|
.line 0 : { *(.line) }
|
||||||
|
/* GNU DWARF 1 extensions */
|
||||||
|
.debug_srcinfo 0 : { *(.debug_srcinfo) }
|
||||||
|
.debug_sfnames 0 : { *(.debug_sfnames) }
|
||||||
|
/* DWARF 1.1 and DWARF 2 */
|
||||||
|
.debug_aranges 0 : { *(.debug_aranges) }
|
||||||
|
.debug_pubnames 0 : { *(.debug_pubnames) }
|
||||||
|
/* DWARF 2 */
|
||||||
|
.debug_info 0 : { *(.debug_info) }
|
||||||
|
.debug_abbrev 0 : { *(.debug_abbrev) }
|
||||||
|
.debug_line 0 : { *(.debug_line) }
|
||||||
|
.debug_frame 0 : { *(.debug_frame) }
|
||||||
|
.debug_str 0 : { *(.debug_str) }
|
||||||
|
.debug_loc 0 : { *(.debug_loc) }
|
||||||
|
.debug_macinfo 0 : { *(.debug_macinfo) }
|
||||||
|
/* SGI/MIPS DWARF 2 extensions */
|
||||||
|
.debug_weaknames 0 : { *(.debug_weaknames) }
|
||||||
|
.debug_funcnames 0 : { *(.debug_funcnames) }
|
||||||
|
.debug_typenames 0 : { *(.debug_typenames) }
|
||||||
|
.debug_varnames 0 : { *(.debug_varnames) }
|
||||||
|
/* These must appear regardless of . */
|
||||||
|
.gptab.sdata : { *(.gptab.data) *(.gptab.sdata) }
|
||||||
|
.gptab.sbss : { *(.gptab.bss) *(.gptab.sbss) }
|
||||||
|
}
|
@ -7,13 +7,13 @@ BUILD_DIR = build
|
|||||||
|
|
||||||
##################### Compiler Options #######################
|
##################### Compiler Options #######################
|
||||||
CROSS = mips-linux-gnu-
|
CROSS = mips-linux-gnu-
|
||||||
AS = $(CROSS)as
|
AS = ../oldbinutils/bin/mips-nintendo-nu64-as
|
||||||
CC = $(CROSS)gcc
|
CC = $(CROSS)gcc
|
||||||
LD = $(CROSS)ld
|
LD = ../oldbinutils/bin/mips-ld
|
||||||
OBJDUMP = $(CROSS)objdump
|
OBJDUMP = ../oldbinutils/bin/mips-objdump
|
||||||
OBJCOPY = $(CROSS)objcopy
|
OBJCOPY = ../oldbinutils/bin/mips-objcopy
|
||||||
|
|
||||||
ASFLAGS = -EB -mtune=vr4300 -march=vr4300
|
ASFLAGS = -EB -mcpu=vr4300
|
||||||
CFLAGS = -Wall -O2 -mtune=vr4300 -march=vr4300 -G 0 -c
|
CFLAGS = -Wall -O2 -mtune=vr4300 -march=vr4300 -G 0 -c
|
||||||
LDFLAGS = -T undefined_syms.txt -T $(LD_SCRIPT) -Map $(BUILD_DIR)/sm64.map
|
LDFLAGS = -T undefined_syms.txt -T $(LD_SCRIPT) -Map $(BUILD_DIR)/sm64.map
|
||||||
|
|
||||||
|
23
papermario/fix_asm.py
Executable file
23
papermario/fix_asm.py
Executable file
@ -0,0 +1,23 @@
|
|||||||
|
#!/usr/bin/python3
|
||||||
|
|
||||||
|
import os
|
||||||
|
import re
|
||||||
|
|
||||||
|
script_dir = os.path.dirname(os.path.realpath(__file__))
|
||||||
|
asm_dir = script_dir + "/asm/"
|
||||||
|
|
||||||
|
regs = ["zero", "at", "v0", "v1", "a0", "a1", "a2", "a3", "t0", "t1", "t2", "t3", "t4", "t5", "t6", "t7", "s0",
|
||||||
|
"s1", "s2", "s3", "s4", "s5", "s6", "s7", "t8", "t9", "k0", "k1", "gp", "sp", "fp", "ra"]
|
||||||
|
|
||||||
|
for root, dirs, files in os.walk(asm_dir):
|
||||||
|
for file in files:
|
||||||
|
if file.endswith(".s"):
|
||||||
|
with open(os.path.join(root, file)) as f:
|
||||||
|
file_text_orig = f.read()
|
||||||
|
file_text = file_text_orig
|
||||||
|
for reg in regs:
|
||||||
|
regex = re.compile("\\$" + reg)
|
||||||
|
file_text = re.sub(regex, "$" + str(regs.index(reg)), file_text)
|
||||||
|
if file_text != file_text_orig:
|
||||||
|
with open(os.path.join(root, file), "w") as f:
|
||||||
|
f.write(file_text)
|
Loading…
Reference in New Issue
Block a user