Add sparc64 support.

XXX - lint does not yet work - it undefines __GNUC__ and this breaks bfd.h.
This commit is contained in:
martin 2003-08-18 00:28:11 +00:00
parent 0fffc3d101
commit 17e3c1d4f1
8 changed files with 5790 additions and 0 deletions

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,520 @@
/* config.h. Generated automatically by configure. */
/* config.in. Generated automatically from configure.in by autoheader. */
/* Define if on AIX 3.
System headers sometimes define this.
We just want to avoid a redefinition error message. */
#ifndef _ALL_SOURCE
/* #undef _ALL_SOURCE */
#endif
/* Define if using alloca.c. */
/* #undef C_ALLOCA */
/* Define to empty if the keyword does not work. */
/* #undef const */
/* Define to one of _getb67, GETB67, getb67 for Cray-2 and Cray-YMP systems.
This function is required for alloca.c support on those systems. */
/* #undef CRAY_STACKSEG_END */
/* Define if you have alloca, as a function or macro. */
#define HAVE_ALLOCA 1
/* Define if you have <alloca.h> and it should be used (not on Ultrix). */
/* #undef HAVE_ALLOCA_H */
/* Define if the `long double' type works. */
#define HAVE_LONG_DOUBLE 1
/* Define if you have a working `mmap' system call. */
#define HAVE_MMAP 1
/* Define if you have <vfork.h>. */
/* #undef HAVE_VFORK_H */
/* Define as __inline if that's what the C compiler calls it. */
/* #undef inline */
/* Define to `long' if <sys/types.h> doesn't define. */
/* #undef off_t */
/* Define to `int' if <sys/types.h> doesn't define. */
/* #undef pid_t */
/* Define if you need to in order for stat and other things to work. */
/* #undef _POSIX_SOURCE */
/* Define as the return type of signal handlers (int or void). */
#define RETSIGTYPE void
/* Define if the `setpgrp' function takes no argument. */
/* #undef SETPGRP_VOID */
/* Define to `unsigned' if <sys/types.h> doesn't define. */
/* #undef size_t */
/* If using the C implementation of alloca, define if you know the
direction of stack growth for your system; otherwise it will be
automatically deduced at run-time.
STACK_DIRECTION > 0 => grows toward higher addresses
STACK_DIRECTION < 0 => grows toward lower addresses
STACK_DIRECTION = 0 => direction of growth unknown
*/
/* #undef STACK_DIRECTION */
/* Define if the `S_IS*' macros in <sys/stat.h> do not work properly. */
/* #undef STAT_MACROS_BROKEN */
/* Define if you have the ANSI C header files. */
#define STDC_HEADERS 1
/* Define vfork as fork if vfork does not work. */
/* #undef vfork */
/* Define if compiling on Solaris 7. */
/* #undef _MSE_INT_H */
/* Define if your struct reg has r_fs. */
/* #undef HAVE_STRUCT_REG_R_FS */
/* Define if your struct reg has r_gs. */
/* #undef HAVE_STRUCT_REG_R_GS */
/* Define if the pread64 function is available. */
/* #undef HAVE_PREAD64 */
/* Define if <link.h> exists and defines struct link_map which has
members with an ``l_'' prefix. (For Solaris, SVR4, and
SVR4-like systems.) */
#define HAVE_STRUCT_LINK_MAP_WITH_L_MEMBERS 1
/* Define if <link.h> exists and defines struct link_map which has
members with an ``lm_'' prefix. (For SunOS.) */
/* #undef HAVE_STRUCT_LINK_MAP_WITH_LM_MEMBERS */
/* Define if <link.h> exists and defines a struct so_map which has
members with an ``som_'' prefix. (Found on older *BSD systems.) */
/* #undef HAVE_STRUCT_SO_MAP_WITH_SOM_MEMBERS */
/* Define if <sys/link.h> has struct link_map32 */
/* #undef HAVE_STRUCT_LINK_MAP32 */
/* Define if <sys/link.h> has link_map32 (solaris sparc-64 target) */
/* #undef _SYSCALL32 */
/* Define if the prfpregset_t type is broken. */
/* #undef PRFPREGSET_T_BROKEN */
/* Define if you want to use new multi-fd /proc interface
(replaces HAVE_MULTIPLE_PROC_FDS as well as other macros). */
/* #undef NEW_PROC_API */
/* Define if ioctl argument PIOCSET is available. */
/* #undef HAVE_PROCFS_PIOCSET */
/* Define if the `long long' type works. */
#define CC_HAS_LONG_LONG 1
/* Define if the "ll" format works to print long long ints. */
#define PRINTF_HAS_LONG_LONG 1
/* Define if the "%Lg" format works to print long doubles. */
#define PRINTF_HAS_LONG_DOUBLE 1
/* Define if the "%Lg" format works to scan long doubles. */
#define SCANF_HAS_LONG_DOUBLE 1
/* Define if using Solaris thread debugging. */
/* #undef HAVE_THREAD_DB_LIB */
/* Define on a GNU/Linux system to work around problems in sys/procfs.h. */
/* #undef START_INFERIOR_TRAPS_EXPECTED */
/* #undef sys_quotactl */
/* Define if you have HPUX threads */
/* #undef HAVE_HPUX_THREAD_SUPPORT */
/* Define if you want to use the memory mapped malloc package (mmalloc). */
/* #undef USE_MMALLOC */
/* Define if the runtime uses a routine from mmalloc before gdb has a chance
to initialize mmalloc, and we want to force checking to be used anyway.
This may cause spurious memory corruption messages if the runtime tries
to explicitly deallocate that memory when gdb calls exit. */
/* #undef MMCHECK_FORCE */
/* Define if <proc_service.h> on solaris uses int instead of
size_t, and assorted other type changes. */
/* #undef PROC_SERVICE_IS_OLD */
/* If you want to specify a default CPU variant, define this to be its
name, as a C string. */
/* #undef TARGET_CPU_DEFAULT */
/* Define if the simulator is being linked in. */
#define WITH_SIM 1
/* Set to true if the save_state_t structure is present */
/* #undef HAVE_STRUCT_SAVE_STATE_T */
/* Set to true if the save_state_t structure has the ss_wide member */
/* #undef HAVE_STRUCT_MEMBER_SS_WIDE */
/* Define if <sys/ptrace.h> defines the PTRACE_GETREGS request. */
/* #undef HAVE_PTRACE_GETREGS */
/* Define if <sys/ptrace.h> defines the PTRACE_GETFPXREGS request. */
/* #undef HAVE_PTRACE_GETFPXREGS */
/* Define if <sys/ptrace.h> defines the PT_GETDBREGS request. */
/* #undef HAVE_PT_GETDBREGS */
/* Define if <sys/ptrace.h> defines the PT_GETXMMREGS request. */
/* #undef HAVE_PT_GETXMMREGS */
/* Define if gnu-regex.c included with GDB should be used. */
#define USE_INCLUDED_REGEX 1
/* BFD's default architecture. */
#define DEFAULT_BFD_ARCH bfd_sparc_arch
/* BFD's default target vector. */
#define DEFAULT_BFD_VEC bfd_elf64_sparc_vec
/* Multi-arch enabled. */
/* #undef GDB_MULTI_ARCH */
/* hostfile */
/* #undef GDB_XM_FILE */
/* targetfile */
#define GDB_TM_FILE config/sparc/tm-nbsd64.h
/* nativefile */
#define GDB_NM_FILE config/sparc/nm-nbsd.h
/* Define if you have the __argz_count function. */
/* #undef HAVE___ARGZ_COUNT */
/* Define if you have the __argz_next function. */
/* #undef HAVE___ARGZ_NEXT */
/* Define if you have the __argz_stringify function. */
/* #undef HAVE___ARGZ_STRINGIFY */
/* Define if you have the bcopy function. */
#define HAVE_BCOPY 1
/* Define if you have the btowc function. */
#define HAVE_BTOWC 1
/* Define if you have the bzero function. */
#define HAVE_BZERO 1
/* Define if you have the canonicalize_file_name function. */
/* #undef HAVE_CANONICALIZE_FILE_NAME */
/* Define if you have the dcgettext function. */
/* #undef HAVE_DCGETTEXT */
/* Define if you have the getcwd function. */
#define HAVE_GETCWD 1
/* Define if you have the getpagesize function. */
#define HAVE_GETPAGESIZE 1
/* Define if you have the isascii function. */
#define HAVE_ISASCII 1
/* Define if you have the munmap function. */
#define HAVE_MUNMAP 1
/* Define if you have the poll function. */
#define HAVE_POLL 1
/* Define if you have the putenv function. */
#define HAVE_PUTENV 1
/* Define if you have the realpath function. */
#define HAVE_REALPATH 1
/* Define if you have the sbrk function. */
#define HAVE_SBRK 1
/* Define if you have the setenv function. */
#define HAVE_SETENV 1
/* Define if you have the setlocale function. */
#define HAVE_SETLOCALE 1
/* Define if you have the setpgid function. */
#define HAVE_SETPGID 1
/* Define if you have the setpgrp function. */
#define HAVE_SETPGRP 1
/* Define if you have the sigaction function. */
#define HAVE_SIGACTION 1
/* Define if you have the sigprocmask function. */
#define HAVE_SIGPROCMASK 1
/* Define if you have the sigsetmask function. */
#define HAVE_SIGSETMASK 1
/* Define if you have the socketpair function. */
#define HAVE_SOCKETPAIR 1
/* Define if you have the stpcpy function. */
/* #undef HAVE_STPCPY */
/* Define if you have the strcasecmp function. */
#define HAVE_STRCASECMP 1
/* Define if you have the strchr function. */
#define HAVE_STRCHR 1
/* Define if you have the <argz.h> header file. */
/* #undef HAVE_ARGZ_H */
/* Define if you have the <asm/debugreg.h> header file. */
/* #undef HAVE_ASM_DEBUGREG_H */
/* Define if you have the <ctype.h> header file. */
#define HAVE_CTYPE_H 1
/* Define if you have the <curses.h> header file. */
#define HAVE_CURSES_H 1
/* Define if you have the <dirent.h> header file. */
#define HAVE_DIRENT_H 1
/* Define if you have the <limits.h> header file. */
#define HAVE_LIMITS_H 1
/* Define if you have the <link.h> header file. */
#define HAVE_LINK_H 1
/* Define if you have the <locale.h> header file. */
#define HAVE_LOCALE_H 1
/* Define if you have the <malloc.h> header file. */
#define HAVE_MALLOC_H 1
/* Define if you have the <memory.h> header file. */
#define HAVE_MEMORY_H 1
/* Define if you have the <ncurses.h> header file. */
/* #undef HAVE_NCURSES_H */
/* Define if you have the <ndir.h> header file. */
/* #undef HAVE_NDIR_H */
/* Define if you have the <nl_types.h> header file. */
#define HAVE_NL_TYPES_H 1
/* Define if you have the <nlist.h> header file. */
#define HAVE_NLIST_H 1
/* Define if you have the <objlist.h> header file. */
/* #undef HAVE_OBJLIST_H */
/* Define if you have the <poll.h> header file. */
#define HAVE_POLL_H 1
/* Define if you have the <proc_service.h> header file. */
/* #undef HAVE_PROC_SERVICE_H */
/* Define if you have the <ptrace.h> header file. */
/* #undef HAVE_PTRACE_H */
/* Define if you have the <sgtty.h> header file. */
#define HAVE_SGTTY_H 1
/* Define if you have the <stddef.h> header file. */
#define HAVE_STDDEF_H 1
/* Define if you have the <stdint.h> header file. */
#define HAVE_STDINT_H 1
/* Define if you have the <stdlib.h> header file. */
#define HAVE_STDLIB_H 1
/* Define if you have the <string.h> header file. */
#define HAVE_STRING_H 1
/* Define if you have the <sys/debugreg.h> header file. */
/* #undef HAVE_SYS_DEBUGREG_H */
/* Define if you have the <sys/dir.h> header file. */
#define HAVE_SYS_DIR_H 1
/* Define if you have the <sys/fault.h> header file. */
/* #undef HAVE_SYS_FAULT_H */
/* Define if you have the <sys/file.h> header file. */
#define HAVE_SYS_FILE_H 1
/* Define if you have the <sys/filio.h> header file. */
#define HAVE_SYS_FILIO_H 1
/* Define if you have the <sys/ioctl.h> header file. */
#define HAVE_SYS_IOCTL_H 1
/* Define if you have the <sys/ndir.h> header file. */
/* #undef HAVE_SYS_NDIR_H */
/* Define if you have the <sys/param.h> header file. */
#define HAVE_SYS_PARAM_H 1
/* Define if you have the <sys/poll.h> header file. */
#define HAVE_SYS_POLL_H 1
/* Define if you have the <sys/proc.h> header file. */
#define HAVE_SYS_PROC_H 1
/* Define if you have the <sys/procfs.h> header file. */
/* #undef HAVE_SYS_PROCFS_H */
/* Define if you have the <sys/ptrace.h> header file. */
#define HAVE_SYS_PTRACE_H 1
/* Define if you have the <sys/reg.h> header file. */
/* #undef HAVE_SYS_REG_H */
/* Define if you have the <sys/select.h> header file. */
#define HAVE_SYS_SELECT_H 1
/* Define if you have the <sys/syscall.h> header file. */
#define HAVE_SYS_SYSCALL_H 1
/* Define if you have the <sys/user.h> header file. */
#define HAVE_SYS_USER_H 1
/* Define if you have the <sys/wait.h> header file. */
#define HAVE_SYS_WAIT_H 1
/* Define if you have the <term.h> header file. */
/* #undef HAVE_TERM_H */
/* Define if you have the <termio.h> header file. */
/* #undef HAVE_TERMIO_H */
/* Define if you have the <termios.h> header file. */
#define HAVE_TERMIOS_H 1
/* Define if you have the <thread_db.h> header file. */
/* #undef HAVE_THREAD_DB_H */
/* Define if you have the <time.h> header file. */
#define HAVE_TIME_H 1
/* Define if you have the <unistd.h> header file. */
#define HAVE_UNISTD_H 1
/* Define if you have the <values.h> header file. */
/* #undef HAVE_VALUES_H */
/* Define if you have the <wait.h> header file. */
/* #undef HAVE_WAIT_H */
/* Define if you have the <wchar.h> header file. */
#define HAVE_WCHAR_H 1
/* Define if you have the <wctype.h> header file. */
#define HAVE_WCTYPE_H 1
/* Define if you have the dl library (-ldl). */
/* #undef HAVE_LIBDL */
/* Define if you have the m library (-lm). */
#define HAVE_LIBM 1
/* Define if you have the socket library (-lsocket). */
/* #undef HAVE_LIBSOCKET */
/* Define if you have the w library (-lw). */
/* #undef HAVE_LIBW */
/* Define if you have the stpcpy function */
/* #undef HAVE_STPCPY */
/* Define if your locale.h file contains LC_MESSAGES. */
#define HAVE_LC_MESSAGES 1
/* Define to 1 if NLS is requested */
#define ENABLE_NLS 1
/* Define as 1 if you have gettext and don't want to use GNU gettext. */
/* #undef HAVE_GETTEXT */
/* Name of this package. */
#define PACKAGE "gdb"
/* Define if sigsetjmp is available. */
#define HAVE_SIGSETJMP 1
/* Define if malloc is not declared in system header files. */
/* #undef NEED_DECLARATION_MALLOC */
/* Define if realloc is not declared in system header files. */
/* #undef NEED_DECLARATION_REALLOC */
/* Define if free is not declared in system header files. */
/* #undef NEED_DECLARATION_FREE */
/* Define if strerror is not declared in system header files. */
/* #undef NEED_DECLARATION_STRERROR */
/* Define if strdup is not declared in system header files. */
/* #undef NEED_DECLARATION_STRDUP */
/* Define if strstr is not declared in system header files. */
/* #undef NEED_DECLARATION_STRSTR */
/* Define if canonicalize_file_name is not declared in system header files. */
#define NEED_DECLARATION_CANONICALIZE_FILE_NAME 1
/* Define if <sys/procfs.h> has pstatus_t. */
/* #undef HAVE_PSTATUS_T */
/* Define if <sys/procfs.h> has prrun_t. */
/* #undef HAVE_PRRUN_T */
/* Define if <sys/procfs.h> has gregset_t. */
/* #undef HAVE_GREGSET_T */
/* Define if <sys/procfs.h> has fpregset_t. */
/* #undef HAVE_FPREGSET_T */
/* Define if <sys/procfs.h> has prgregset_t. */
/* #undef HAVE_PRGREGSET_T */
/* Define if <sys/procfs.h> has prfpregset_t. */
/* #undef HAVE_PRFPREGSET_T */
/* Define if <sys/procfs.h> has prgregset32_t. */
/* #undef HAVE_PRGREGSET32_T */
/* Define if <sys/procfs.h> has prfpregset32_t. */
/* #undef HAVE_PRFPREGSET32_T */
/* Define if <sys/procfs.h> has lwpid_t. */
/* #undef HAVE_LWPID_T */
/* Define if <sys/procfs.h> has psaddr_t. */
/* #undef HAVE_PSADDR_T */
/* Define if <sys/procfs.h> has prsysent_t. */
/* #undef HAVE_PRSYSENT_T */
/* Define if <sys/procfs.h> has pr_sigset_t. */
/* #undef HAVE_PR_SIGSET_T */
/* Define if <sys/procfs.h> has pr_sigaction64_t. */
/* #undef HAVE_PR_SIGACTION64_T */
/* Define if <sys/procfs.h> has pr_siginfo64_t. */
/* #undef HAVE_PR_SIGINFO64_T */

View File

@ -0,0 +1,195 @@
# $NetBSD: defs.mk,v 1.1 2003/08/18 00:28:11 martin Exp $
#
G_GDB_OBJS=\
annotate.o \
arch-utils.o \
ax-gdb.o \
ax-general.o \
bcache.o \
blockframe.o \
breakpoint.o \
buildsym.o \
builtin-regs.o \
c-exp.tab.o \
c-lang.o \
c-typeprint.o \
c-valprint.o \
cli-cmds.o \
cli-decode.o \
cli-dump.o \
cli-out.o \
cli-script.o \
cli-setshow.o \
cli-utils.o \
coffread.o \
complaints.o \
completer.o \
copying.o \
corefile.o \
corelow.o \
cp-abi.o \
cp-valprint.o \
dbxread.o \
dcache.o \
demangle.o \
doublest.o \
dwarf2read.o \
dwarfread.o \
elfread.o \
environ.o \
eval.o \
event-loop.o \
event-top.o \
exec.o \
expprint.o \
f-exp.tab.o \
f-lang.o \
f-typeprint.o \
f-valprint.o \
findvar.o \
fork-child.o \
frame.o \
gdb-events.o \
gdb.o \
gdbarch.o \
gdbtypes.o \
gnu-v2-abi.o \
gnu-v3-abi.o \
hpacc-abi.o \
inf-loop.o \
infcmd.o \
inflow.o \
infptrace.o \
infrun.o \
inftarg.o \
init.o \
jv-exp.tab.o \
jv-lang.o \
jv-typeprint.o \
jv-valprint.o \
kod-cisco.o \
kod.o \
language.o \
linespec.o \
m2-exp.tab.o \
m2-lang.o \
m2-typeprint.o \
m2-valprint.o \
macrocmd.o \
macroexp.o \
macroscope.o \
macrotab.o \
main.o \
maint.o \
mdebugread.o \
mem-break.o \
memattr.o \
mi-cmd-break.o \
mi-cmd-disas.o \
mi-cmd-stack.o \
mi-cmd-var.o \
mi-cmds.o \
mi-console.o \
mi-getopt.o \
mi-main.o \
mi-out.o \
mi-parse.o \
minsyms.o \
mipsread.o \
nbsd-tdep.o \
nlmread.o \
objfiles.o \
osabi.o \
p-exp.tab.o \
p-lang.o \
p-typeprint.o \
p-valprint.o \
parse.o \
printcmd.o \
regcache.o \
remote-utils.o \
remote.o \
scm-exp.o \
scm-lang.o \
scm-valprint.o \
ser-pipe.o \
ser-tcp.o \
ser-unix.o \
serial.o \
signals.o \
solib-svr4.o \
solib.o \
source.o \
sparc-tdep.o \
sparc64nbsd-nat.o \
sparcnbsd-tdep.o \
stabsread.o \
stack.o \
std-regs.o \
symfile.o \
symmisc.o \
symtab.o \
target.o \
thread.o \
top.o \
tracepoint.o \
typeprint.o \
ui-file.o \
ui-out.o \
utils.o \
valarith.o \
valops.o \
valprint.o \
values.o \
varobj.o \
version.o \
wrapper.o
G_BFD_CPPFLAGS=-DDEFAULT_VECTOR=bfd_elf64_sparc_vec -DSELECT_VECS='&bfd_elf64_sparc_vec,&bfd_elf32_sparc_vec,&sunos_big_vec,&bfd_elf64_little_generic_vec,&bfd_elf64_big_generic_vec,&bfd_elf32_little_generic_vec,&bfd_elf32_big_generic_vec' -DSELECT_ARCHITECTURES='&bfd_sparc_arch' -DHAVE_bfd_elf64_sparc_vec -DHAVE_bfd_elf32_sparc_vec -DHAVE_sunos_big_vec -DHAVE_bfd_elf64_little_generic_vec -DHAVE_bfd_elf64_big_generic_vec -DHAVE_bfd_elf32_little_generic_vec -DHAVE_bfd_elf32_big_generic_vec
G_BFD_OBJS=\
aout32.o \
archive.o \
archive64.o \
archures.o \
bfd.o \
binary.o \
cache.o \
coffgen.o \
corefile.o \
cpu-sparc.o \
dwarf1.o \
dwarf2.o \
elf-eh-frame.o \
elf-strtab.o \
elf.o \
elf32-gen.o \
elf32-sparc.o \
elf32.o \
elf64-gen.o \
elf64-sparc.o \
elf64.o \
elflink.o \
format.o \
hash.o \
ihex.o \
init.o \
libbfd.o \
linker.o \
merge.o \
netbsd-core.o \
opncls.o \
reloc.o \
section.o \
srec.o \
stab-syms.o \
stabs.o \
sunos.o \
syms.o \
targets.o \
tekhex.o
G_OPCODES_OBJS=\
dis-buf.o \
disassemble.o \
sparc-dis.o \
sparc-opc.o

View File

@ -0,0 +1,172 @@
/* Do not modify this file. */
/* It is created automatically by the Makefile. */
#include "defs.h"
#include "call-cmds.h"
extern initialize_file_ftype _initialize_gdbtypes;
extern initialize_file_ftype _initialize_blockframe;
extern initialize_file_ftype _initialize_breakpoint;
extern initialize_file_ftype _initialize_regcache;
extern initialize_file_ftype _initialize_source;
extern initialize_file_ftype _initialize_values;
extern initialize_file_ftype _initialize_valops;
extern initialize_file_ftype _initialize_valarith;
extern initialize_file_ftype _initialize_valprint;
extern initialize_file_ftype _initialize_printcmd;
extern initialize_file_ftype _initialize_symtab;
extern initialize_file_ftype _initialize_symfile;
extern initialize_file_ftype _initialize_symmisc;
extern initialize_file_ftype _initialize_infcmd;
extern initialize_file_ftype _initialize_infrun;
extern initialize_file_ftype _initialize_stack;
extern initialize_file_ftype _initialize_thread;
extern initialize_file_ftype _initialize_macrocmd;
extern initialize_file_ftype _initialize_event_loop;
extern initialize_file_ftype _initialize_gdbarch;
extern initialize_file_ftype _initialize_gdbarch_utils;
extern initialize_file_ftype _initialize_gdb_osabi;
extern initialize_file_ftype _initialize_copying;
extern initialize_file_ftype _initialize_sparc_tdep;
extern initialize_file_ftype _initialize_sparnbsd_tdep;
extern initialize_file_ftype _initialize_corelow;
extern initialize_file_ftype _initialize_solib;
extern initialize_file_ftype _initialize_svr4_solib;
extern initialize_file_ftype _initialize_ser_hardwire;
extern initialize_file_ftype _initialize_ser_pipe;
extern initialize_file_ftype _initialize_ser_tcp;
extern initialize_file_ftype _initialize_kernel_u_addr;
extern initialize_file_ftype _initialize_infptrace;
extern initialize_file_ftype _initialize_inftarg;
extern initialize_file_ftype _initialize_remote;
extern initialize_file_ftype _initialize_dcache;
extern initialize_file_ftype _initialize_sr_support;
extern initialize_file_ftype _initialize_tracepoint;
extern initialize_file_ftype _initialize_ax_gdb;
extern initialize_file_ftype _initialize_mem;
extern initialize_file_ftype _initialize_parse;
extern initialize_file_ftype _initialize_language;
extern initialize_file_ftype _initialize_frame_reg;
extern initialize_file_ftype _initialize_signals;
extern initialize_file_ftype _initialize_kod;
extern initialize_file_ftype _initialize_gdb_events;
extern initialize_file_ftype _initialize_exec;
extern initialize_file_ftype _initialize_maint_cmds;
extern initialize_file_ftype _initialize_demangler;
extern initialize_file_ftype _initialize_dbxread;
extern initialize_file_ftype _initialize_coffread;
extern initialize_file_ftype _initialize_elfread;
extern initialize_file_ftype _initialize_mipsread;
extern initialize_file_ftype _initialize_stabsread;
extern initialize_file_ftype _initialize_core;
extern initialize_file_ftype _initialize_c_language;
extern initialize_file_ftype _initialize_f_language;
extern initialize_file_ftype _initialize_ui_out;
extern initialize_file_ftype _initialize_cli_out;
extern initialize_file_ftype _initialize_varobj;
extern initialize_file_ftype _initialize_java_language;
extern initialize_file_ftype _initialize_m2_language;
extern initialize_file_ftype _initialize_pascal_language;
extern initialize_file_ftype _initialize_pascal_valprint;
extern initialize_file_ftype _initialize_scheme_language;
extern initialize_file_ftype _initialize_complaints;
extern initialize_file_ftype _initialize_typeprint;
extern initialize_file_ftype _initialize_cp_valprint;
extern initialize_file_ftype _initialize_f_valprint;
extern initialize_file_ftype _initialize_nlmread;
extern initialize_file_ftype _initialize_serial;
extern initialize_file_ftype _initialize_mdebugread;
extern initialize_file_ftype _initialize_gnu_v2_abi;
extern initialize_file_ftype _initialize_gnu_v3_abi;
extern initialize_file_ftype _initialize_hpacc_abi;
extern initialize_file_ftype _initialize_annotate;
extern initialize_file_ftype _initialize_inflow;
extern initialize_file_ftype _initialize_cli_dump;
extern initialize_file_ftype _initialize_mi_out;
extern initialize_file_ftype _initialize_mi_cmds;
extern initialize_file_ftype _initialize_mi_main;
extern initialize_file_ftype _initialize_mi_parse;
void
initialize_all_files (void)
{
_initialize_gdbtypes ();
_initialize_blockframe ();
_initialize_breakpoint ();
_initialize_regcache ();
_initialize_source ();
_initialize_values ();
_initialize_valops ();
_initialize_valarith ();
_initialize_valprint ();
_initialize_printcmd ();
_initialize_symtab ();
_initialize_symfile ();
_initialize_symmisc ();
_initialize_infcmd ();
_initialize_infrun ();
_initialize_stack ();
_initialize_thread ();
_initialize_macrocmd ();
_initialize_event_loop ();
_initialize_gdbarch ();
_initialize_gdbarch_utils ();
_initialize_gdb_osabi ();
_initialize_copying ();
_initialize_sparc_tdep ();
_initialize_sparnbsd_tdep ();
_initialize_corelow ();
_initialize_solib ();
_initialize_svr4_solib ();
_initialize_ser_hardwire ();
_initialize_ser_pipe ();
_initialize_ser_tcp ();
_initialize_kernel_u_addr ();
_initialize_infptrace ();
_initialize_inftarg ();
_initialize_remote ();
_initialize_dcache ();
_initialize_sr_support ();
_initialize_tracepoint ();
_initialize_ax_gdb ();
_initialize_mem ();
_initialize_parse ();
_initialize_language ();
_initialize_frame_reg ();
_initialize_signals ();
_initialize_kod ();
_initialize_gdb_events ();
_initialize_exec ();
_initialize_maint_cmds ();
_initialize_demangler ();
_initialize_dbxread ();
_initialize_coffread ();
_initialize_elfread ();
_initialize_mipsread ();
_initialize_stabsread ();
_initialize_core ();
_initialize_c_language ();
_initialize_f_language ();
_initialize_ui_out ();
_initialize_cli_out ();
_initialize_varobj ();
_initialize_java_language ();
_initialize_m2_language ();
_initialize_pascal_language ();
_initialize_pascal_valprint ();
_initialize_scheme_language ();
_initialize_complaints ();
_initialize_typeprint ();
_initialize_cp_valprint ();
_initialize_f_valprint ();
_initialize_nlmread ();
_initialize_serial ();
_initialize_mdebugread ();
_initialize_gnu_v2_abi ();
_initialize_gnu_v3_abi ();
_initialize_hpacc_abi ();
_initialize_annotate ();
_initialize_inflow ();
_initialize_cli_dump ();
_initialize_mi_out ();
_initialize_mi_cmds ();
_initialize_mi_main ();
_initialize_mi_parse ();
}

View File

@ -0,0 +1,35 @@
/* Native-dependent definitions for Sparc running NetBSD, for GDB.
Copyright 1986, 1987, 1989, 1992, 1994, 1996, 1999, 2000, 2002
Free Software Foundation, Inc.
This file is part of GDB.
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 NM_NBSD_H
#define NM_NBSD_H
#include "regcache.h"
/* Get generic NetBSD native definitions. */
#include "config/nm-nbsd.h"
/* Before storing, we need to read all the registers. */
#define CHILD_PREPARE_TO_STORE() read_register_bytes (0, NULL, REGISTER_BYTES)
#endif /* NM_NBSD_H */

View File

@ -0,0 +1,27 @@
/* Macro definitions for UltraSPARC running under NetBSD.
Copyright 1994, 2002 Free Software Foundation, Inc.
This file is part of GDB.
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 TM_NBSD64_H
#define TM_NBSD64_H
#include "sparc/tm-sp64.h" /* sets GDB_MULTI_ARCH */
#include "solib.h"
#endif /* TM_NBSD64_H */

View File

@ -0,0 +1,7 @@
/* This file is automatically generated. DO NOT EDIT! */
/* Generated from: NetBSD: toolchain2netbsd,v 1.14 2002/01/22 13:13:00 mrg Exp */
#include "version.h"
const char version[] = "5.3nb1";
const char host_name[] = "sparc64--netbsdelf";
const char target_name[] = "sparc64--netbsdelf";

View File

@ -0,0 +1,725 @@
/* Target definitions for 64-bit ELF
Copyright 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002
Free Software Foundation, Inc.
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. */
/* This structure contains everything that BFD knows about a target.
It includes things like its byte order, name, what routines to call
to do various operations, etc. Every BFD points to a target structure
with its "xvec" member.
There are two such structures here: one for big-endian machines and
one for little-endian machines. */
#define bfd_elf64_close_and_cleanup _bfd_elf_close_and_cleanup
#define bfd_elf64_bfd_free_cached_info _bfd_generic_bfd_free_cached_info
#ifndef bfd_elf64_get_section_contents
#define bfd_elf64_get_section_contents _bfd_generic_get_section_contents
#endif
#define bfd_elf64_canonicalize_dynamic_symtab _bfd_elf_canonicalize_dynamic_symtab
#define bfd_elf64_canonicalize_reloc _bfd_elf_canonicalize_reloc
#ifndef bfd_elf64_find_nearest_line
#define bfd_elf64_find_nearest_line _bfd_elf_find_nearest_line
#endif
#define bfd_elf64_read_minisymbols _bfd_elf_read_minisymbols
#define bfd_elf64_minisymbol_to_symbol _bfd_elf_minisymbol_to_symbol
#define bfd_elf64_get_dynamic_symtab_upper_bound _bfd_elf_get_dynamic_symtab_upper_bound
#define bfd_elf64_get_lineno _bfd_elf_get_lineno
#ifndef bfd_elf64_get_reloc_upper_bound
#define bfd_elf64_get_reloc_upper_bound _bfd_elf_get_reloc_upper_bound
#endif
#ifndef bfd_elf64_get_symbol_info
#define bfd_elf64_get_symbol_info _bfd_elf_get_symbol_info
#endif
#define bfd_elf64_get_symtab _bfd_elf_get_symtab
#define bfd_elf64_get_symtab_upper_bound _bfd_elf_get_symtab_upper_bound
#if 0 /* done in elf-bfd.h */
#define bfd_elf64_link_record_dynamic_symbol _bfd_elf_link_record_dynamic_symbol
#endif
#define bfd_elf64_make_empty_symbol _bfd_elf_make_empty_symbol
#define bfd_elf64_new_section_hook _bfd_elf_new_section_hook
#define bfd_elf64_set_arch_mach _bfd_elf_set_arch_mach
#ifndef bfd_elf64_set_section_contents
#define bfd_elf64_set_section_contents _bfd_elf_set_section_contents
#endif
#define bfd_elf64_sizeof_headers _bfd_elf_sizeof_headers
#define bfd_elf64_write_object_contents _bfd_elf_write_object_contents
#define bfd_elf64_write_corefile_contents _bfd_elf_write_corefile_contents
#define bfd_elf64_get_section_contents_in_window \
_bfd_generic_get_section_contents_in_window
#ifndef elf_backend_got_symbol_offset
#define elf_backend_got_symbol_offset (bfd_vma) 0
#endif
#ifndef elf_backend_can_refcount
#define elf_backend_can_refcount 0
#endif
#ifndef elf_backend_want_got_plt
#define elf_backend_want_got_plt 0
#endif
#ifndef elf_backend_plt_readonly
#define elf_backend_plt_readonly 0
#endif
#ifndef elf_backend_want_plt_sym
#define elf_backend_want_plt_sym 0
#endif
#ifndef elf_backend_plt_not_loaded
#define elf_backend_plt_not_loaded 0
#endif
#ifndef elf_backend_plt_alignment
#define elf_backend_plt_alignment 2
#endif
#ifndef elf_backend_want_dynbss
#define elf_backend_want_dynbss 1
#endif
#ifndef elf_backend_want_p_paddr_set_to_zero
#define elf_backend_want_p_paddr_set_to_zero 0
#endif
#define bfd_elf64_bfd_debug_info_start bfd_void
#define bfd_elf64_bfd_debug_info_end bfd_void
#define bfd_elf64_bfd_debug_info_accumulate \
(void (*) PARAMS ((bfd*, struct sec *))) bfd_void
#ifndef bfd_elf64_bfd_get_relocated_section_contents
#define bfd_elf64_bfd_get_relocated_section_contents \
bfd_generic_get_relocated_section_contents
#endif
#ifndef bfd_elf64_bfd_relax_section
#define bfd_elf64_bfd_relax_section bfd_generic_relax_section
#endif
#ifndef elf_backend_can_gc_sections
#define elf_backend_can_gc_sections 0
#endif
#ifndef elf_backend_can_refcount
#define elf_backend_can_refcount 0
#endif
#ifndef elf_backend_want_got_sym
#define elf_backend_want_got_sym 1
#endif
#ifndef elf_backend_gc_mark_hook
#define elf_backend_gc_mark_hook NULL
#endif
#ifndef elf_backend_gc_sweep_hook
#define elf_backend_gc_sweep_hook NULL
#endif
#ifndef bfd_elf64_bfd_gc_sections
#define bfd_elf64_bfd_gc_sections _bfd_elf64_gc_sections
#endif
#ifndef bfd_elf64_bfd_merge_sections
#define bfd_elf64_bfd_merge_sections \
_bfd_elf_merge_sections
#endif
#ifndef bfd_elf64_bfd_discard_group
#define bfd_elf64_bfd_discard_group bfd_elf_discard_group
#endif
#ifndef bfd_elf64_bfd_make_debug_symbol
#define bfd_elf64_bfd_make_debug_symbol \
((asymbol *(*) PARAMS ((bfd *, void *, unsigned long))) bfd_nullvoidptr)
#endif
#ifndef bfd_elf64_bfd_copy_private_symbol_data
#define bfd_elf64_bfd_copy_private_symbol_data \
_bfd_elf_copy_private_symbol_data
#endif
#ifndef bfd_elf64_bfd_copy_private_section_data
#define bfd_elf64_bfd_copy_private_section_data \
_bfd_elf_copy_private_section_data
#endif
#ifndef bfd_elf64_bfd_copy_private_bfd_data
#define bfd_elf64_bfd_copy_private_bfd_data \
_bfd_elf_copy_private_bfd_data
#endif
#ifndef bfd_elf64_bfd_print_private_bfd_data
#define bfd_elf64_bfd_print_private_bfd_data \
_bfd_elf_print_private_bfd_data
#endif
#ifndef bfd_elf64_bfd_merge_private_bfd_data
#define bfd_elf64_bfd_merge_private_bfd_data \
((boolean (*) PARAMS ((bfd *, bfd *))) bfd_true)
#endif
#ifndef bfd_elf64_bfd_set_private_flags
#define bfd_elf64_bfd_set_private_flags \
((boolean (*) PARAMS ((bfd *, flagword))) bfd_true)
#endif
#ifndef bfd_elf64_bfd_is_local_label_name
#define bfd_elf64_bfd_is_local_label_name _bfd_elf_is_local_label_name
#endif
#ifndef bfd_elf64_get_dynamic_reloc_upper_bound
#define bfd_elf64_get_dynamic_reloc_upper_bound \
_bfd_elf_get_dynamic_reloc_upper_bound
#endif
#ifndef bfd_elf64_canonicalize_dynamic_reloc
#define bfd_elf64_canonicalize_dynamic_reloc \
_bfd_elf_canonicalize_dynamic_reloc
#endif
#ifndef bfd_elf64_bfd_link_hash_table_free
#define bfd_elf64_bfd_link_hash_table_free _bfd_generic_link_hash_table_free
#endif
#ifdef elf_backend_relocate_section
#ifndef bfd_elf64_bfd_link_hash_table_create
#define bfd_elf64_bfd_link_hash_table_create _bfd_elf_link_hash_table_create
#endif
#else /* ! defined (elf_backend_relocate_section) */
/* If no backend relocate_section routine, use the generic linker.
Note - this will prevent the port from being able to use some of
the other features of the ELF linker, because the generic hash structure
does not have the fields needed by the ELF linker. In particular it
means that linking directly to S-records will not work. */
#ifndef bfd_elf64_bfd_link_hash_table_create
#define bfd_elf64_bfd_link_hash_table_create \
_bfd_generic_link_hash_table_create
#endif
#ifndef bfd_elf64_bfd_link_add_symbols
#define bfd_elf64_bfd_link_add_symbols _bfd_generic_link_add_symbols
#endif
#ifndef bfd_elf64_bfd_final_link
#define bfd_elf64_bfd_final_link _bfd_generic_final_link
#endif
#endif /* ! defined (elf_backend_relocate_section) */
#ifndef bfd_elf64_bfd_link_just_syms
#define bfd_elf64_bfd_link_just_syms _bfd_elf_link_just_syms
#endif
#ifndef bfd_elf64_bfd_link_split_section
#define bfd_elf64_bfd_link_split_section _bfd_generic_link_split_section
#endif
#ifndef bfd_elf64_archive_p
#define bfd_elf64_archive_p bfd_generic_archive_p
#endif
#ifndef bfd_elf64_write_archive_contents
#define bfd_elf64_write_archive_contents _bfd_write_archive_contents
#endif
#ifndef bfd_elf64_mkobject
#define bfd_elf64_mkobject bfd_elf_mkobject
#endif
#ifndef bfd_elf64_mkcorefile
#define bfd_elf64_mkcorefile bfd_elf_mkcorefile
#endif
#ifndef bfd_elf64_mkarchive
#define bfd_elf64_mkarchive _bfd_generic_mkarchive
#endif
#ifndef elf_symbol_leading_char
#define elf_symbol_leading_char 0
#endif
#ifndef elf_info_to_howto
#define elf_info_to_howto 0
#endif
#ifndef elf_info_to_howto_rel
#define elf_info_to_howto_rel 0
#endif
#ifndef ELF_MAXPAGESIZE
#error ELF_MAXPAGESIZE is not defined
#define ELF_MAXPAGESIZE 1
#endif
#ifndef elf_backend_collect
#define elf_backend_collect false
#endif
#ifndef elf_backend_type_change_ok
#define elf_backend_type_change_ok false
#endif
#ifndef elf_backend_sym_is_global
#define elf_backend_sym_is_global 0
#endif
#ifndef elf_backend_object_p
#define elf_backend_object_p 0
#endif
#ifndef elf_backend_symbol_processing
#define elf_backend_symbol_processing 0
#endif
#ifndef elf_backend_symbol_table_processing
#define elf_backend_symbol_table_processing 0
#endif
#ifndef elf_backend_get_symbol_type
#define elf_backend_get_symbol_type 0
#endif
#ifndef elf_backend_section_processing
#define elf_backend_section_processing 0
#endif
#ifndef elf_backend_section_from_shdr
#define elf_backend_section_from_shdr 0
#endif
#ifndef elf_backend_section_flags
#define elf_backend_section_flags 0
#endif
#ifndef elf_backend_section_from_phdr
#define elf_backend_section_from_phdr 0
#endif
#ifndef elf_backend_fake_sections
#define elf_backend_fake_sections 0
#endif
#ifndef elf_backend_section_from_bfd_section
#define elf_backend_section_from_bfd_section 0
#endif
#ifndef elf_backend_add_symbol_hook
#define elf_backend_add_symbol_hook 0
#endif
#ifndef elf_backend_link_output_symbol_hook
#define elf_backend_link_output_symbol_hook 0
#endif
#ifndef elf_backend_create_dynamic_sections
#define elf_backend_create_dynamic_sections 0
#endif
#ifndef elf_backend_check_relocs
#define elf_backend_check_relocs 0
#endif
#ifndef elf_backend_adjust_dynamic_symbol
#define elf_backend_adjust_dynamic_symbol 0
#endif
#ifndef elf_backend_always_size_sections
#define elf_backend_always_size_sections 0
#endif
#ifndef elf_backend_size_dynamic_sections
#define elf_backend_size_dynamic_sections 0
#endif
#ifndef elf_backend_relocate_section
#define elf_backend_relocate_section 0
#endif
#ifndef elf_backend_finish_dynamic_symbol
#define elf_backend_finish_dynamic_symbol 0
#endif
#ifndef elf_backend_finish_dynamic_sections
#define elf_backend_finish_dynamic_sections 0
#endif
#ifndef elf_backend_begin_write_processing
#define elf_backend_begin_write_processing 0
#endif
#ifndef elf_backend_final_write_processing
#define elf_backend_final_write_processing 0
#endif
#ifndef elf_backend_additional_program_headers
#define elf_backend_additional_program_headers 0
#endif
#ifndef elf_backend_modify_segment_map
#define elf_backend_modify_segment_map 0
#endif
#ifndef elf_backend_ecoff_debug_swap
#define elf_backend_ecoff_debug_swap 0
#endif
#ifndef elf_backend_got_header_size
#define elf_backend_got_header_size 0
#endif
#ifndef elf_backend_plt_header_size
#define elf_backend_plt_header_size 0
#endif
#ifndef elf_backend_post_process_headers
#define elf_backend_post_process_headers NULL
#endif
#ifndef elf_backend_print_symbol_all
#define elf_backend_print_symbol_all NULL
#endif
#ifndef elf_backend_output_arch_syms
#define elf_backend_output_arch_syms NULL
#endif
#ifndef elf_backend_copy_indirect_symbol
#define elf_backend_copy_indirect_symbol _bfd_elf_link_hash_copy_indirect
#endif
#ifndef elf_backend_hide_symbol
#define elf_backend_hide_symbol _bfd_elf_link_hash_hide_symbol
#endif
#ifndef elf_backend_emit_relocs
#define elf_backend_emit_relocs NULL
#endif
#ifndef elf_backend_count_relocs
#define elf_backend_count_relocs NULL
#endif
#ifndef elf_backend_grok_prstatus
#define elf_backend_grok_prstatus NULL
#endif
#ifndef elf_backend_grok_psinfo
#define elf_backend_grok_psinfo NULL
#endif
#ifndef elf_backend_sprintf_vma
#define elf_backend_sprintf_vma _bfd_elf_sprintf_vma
#endif
#ifndef elf_backend_fprintf_vma
#define elf_backend_fprintf_vma _bfd_elf_fprintf_vma
#endif
#ifndef elf_backend_reloc_type_class
#define elf_backend_reloc_type_class _bfd_elf_reloc_type_class
#endif
#ifndef elf_backend_discard_info
#define elf_backend_discard_info NULL
#endif
#ifndef elf_backend_ignore_discarded_relocs
#define elf_backend_ignore_discarded_relocs NULL
#endif
#ifndef elf_backend_write_section
#define elf_backend_write_section NULL
#endif
#ifndef elf_backend_set_nonloadable_filepos
#define elf_backend_set_nonloadable_filepos NULL
#endif
#ifndef elf_backend_is_contained_by_filepos
#define elf_backend_is_contained_by_filepos NULL
#endif
#ifndef elf_backend_copy_private_bfd_data_p
#define elf_backend_copy_private_bfd_data_p NULL
#endif
#ifndef elf_backend_mips_irix_compat
#define elf_backend_mips_irix_compat NULL
#endif
#ifndef elf_backend_mips_rtype_to_howto
#define elf_backend_mips_rtype_to_howto NULL
#endif
/* Previously, backends could only use SHT_REL or SHT_RELA relocation
sections, but not both. They defined USE_REL to indicate SHT_REL
sections, and left it undefined to indicated SHT_RELA sections.
For backwards compatibility, we still support this usage. */
#ifndef USE_REL
#define USE_REL 0
#else
#undef USE_REL
#define USE_REL 1
#endif
/* Use these in new code. */
#ifndef elf_backend_may_use_rel_p
#define elf_backend_may_use_rel_p USE_REL
#endif
#ifndef elf_backend_may_use_rela_p
#define elf_backend_may_use_rela_p !USE_REL
#endif
#ifndef elf_backend_default_use_rela_p
#define elf_backend_default_use_rela_p !USE_REL
#endif
#ifndef elf_backend_rela_normal
#define elf_backend_rela_normal 0
#endif
#ifndef ELF_MACHINE_ALT1
#define ELF_MACHINE_ALT1 0
#endif
#ifndef ELF_MACHINE_ALT2
#define ELF_MACHINE_ALT2 0
#endif
#ifndef elf_backend_size_info
#define elf_backend_size_info _bfd_elf64_size_info
#endif
#ifndef elf_backend_sign_extend_vma
#define elf_backend_sign_extend_vma 0
#endif
extern const struct elf_size_info _bfd_elf64_size_info;
#ifndef INCLUDED_TARGET_FILE
static const struct elf_backend_data elf64_bed =
{
ELF_ARCH, /* arch */
ELF_MACHINE_CODE, /* elf_machine_code */
ELF_MAXPAGESIZE, /* maxpagesize */
elf_info_to_howto,
elf_info_to_howto_rel,
elf_backend_sym_is_global,
elf_backend_object_p,
elf_backend_symbol_processing,
elf_backend_symbol_table_processing,
elf_backend_get_symbol_type,
elf_backend_section_processing,
elf_backend_section_from_shdr,
elf_backend_section_flags,
elf_backend_section_from_phdr,
elf_backend_fake_sections,
elf_backend_section_from_bfd_section,
elf_backend_add_symbol_hook,
elf_backend_link_output_symbol_hook,
elf_backend_create_dynamic_sections,
elf_backend_check_relocs,
elf_backend_adjust_dynamic_symbol,
elf_backend_always_size_sections,
elf_backend_size_dynamic_sections,
elf_backend_relocate_section,
elf_backend_finish_dynamic_symbol,
elf_backend_finish_dynamic_sections,
elf_backend_begin_write_processing,
elf_backend_final_write_processing,
elf_backend_additional_program_headers,
elf_backend_modify_segment_map,
elf_backend_gc_mark_hook,
elf_backend_gc_sweep_hook,
elf_backend_post_process_headers,
elf_backend_print_symbol_all,
elf_backend_output_arch_syms,
elf_backend_copy_indirect_symbol,
elf_backend_hide_symbol,
elf_backend_emit_relocs,
elf_backend_count_relocs,
elf_backend_grok_prstatus,
elf_backend_grok_psinfo,
elf_backend_sprintf_vma,
elf_backend_fprintf_vma,
elf_backend_reloc_type_class,
elf_backend_discard_info,
elf_backend_ignore_discarded_relocs,
elf_backend_write_section,
elf_backend_set_nonloadable_filepos,
elf_backend_is_contained_by_filepos,
elf_backend_copy_private_bfd_data_p,
elf_backend_mips_irix_compat,
elf_backend_mips_rtype_to_howto,
elf_backend_ecoff_debug_swap,
ELF_MACHINE_ALT1,
ELF_MACHINE_ALT2,
&elf_backend_size_info,
elf_backend_got_symbol_offset,
elf_backend_got_header_size,
elf_backend_plt_header_size,
elf_backend_collect,
elf_backend_type_change_ok,
elf_backend_may_use_rel_p,
elf_backend_may_use_rela_p,
elf_backend_default_use_rela_p,
elf_backend_rela_normal,
elf_backend_sign_extend_vma,
elf_backend_want_got_plt,
elf_backend_plt_readonly,
elf_backend_want_plt_sym,
elf_backend_plt_not_loaded,
elf_backend_plt_alignment,
elf_backend_can_gc_sections,
elf_backend_can_refcount,
elf_backend_want_got_sym,
elf_backend_want_dynbss,
elf_backend_want_p_paddr_set_to_zero
};
#endif
/* Forward declaration for use when initialising alternative_target field. */
#ifdef TARGET_LITTLE_SYM
extern const bfd_target TARGET_LITTLE_SYM;
#endif
#ifdef TARGET_BIG_SYM
const bfd_target TARGET_BIG_SYM =
{
/* name: identify kind of target */
TARGET_BIG_NAME,
/* flavour: general indication about file */
bfd_target_elf_flavour,
/* byteorder: data is big endian */
BFD_ENDIAN_BIG,
/* header_byteorder: header is also big endian */
BFD_ENDIAN_BIG,
/* object_flags: mask of all file flags */
(HAS_RELOC | EXEC_P | HAS_LINENO | HAS_DEBUG | HAS_SYMS | HAS_LOCALS
| DYNAMIC | WP_TEXT | D_PAGED),
/* section_flags: mask of all section flags */
(SEC_HAS_CONTENTS | SEC_ALLOC | SEC_LOAD | SEC_RELOC | SEC_READONLY
| SEC_CODE | SEC_DATA | SEC_DEBUGGING | SEC_EXCLUDE | SEC_SORT_ENTRIES
| SEC_ARCH_BIT_0 | SEC_SMALL_DATA | SEC_MERGE | SEC_STRINGS | SEC_GROUP),
/* leading_symbol_char: is the first char of a user symbol
predictable, and if so what is it */
elf_symbol_leading_char,
/* ar_pad_char: pad character for filenames within an archive header
FIXME: this really has nothing to do with ELF, this is a characteristic
of the archiver and/or os and should be independently tunable */
'/',
/* ar_max_namelen: maximum number of characters in an archive header
FIXME: this really has nothing to do with ELF, this is a characteristic
of the archiver and should be independently tunable. The System V ABI,
Chapter 7 (Formats & Protocols), Archive section sets this as 15. */
15,
/* Routines to byte-swap various sized integers from the data sections */
bfd_getb64, bfd_getb_signed_64, bfd_putb64,
bfd_getb32, bfd_getb_signed_32, bfd_putb32,
bfd_getb16, bfd_getb_signed_16, bfd_putb16,
/* Routines to byte-swap various sized integers from the file headers */
bfd_getb64, bfd_getb_signed_64, bfd_putb64,
bfd_getb32, bfd_getb_signed_32, bfd_putb32,
bfd_getb16, bfd_getb_signed_16, bfd_putb16,
/* bfd_check_format: check the format of a file being read */
{ _bfd_dummy_target, /* unknown format */
bfd_elf64_object_p, /* assembler/linker output (object file) */
bfd_elf64_archive_p, /* an archive */
bfd_elf64_core_file_p /* a core file */
},
/* bfd_set_format: set the format of a file being written */
{ bfd_false,
bfd_elf64_mkobject,
bfd_elf64_mkarchive,
bfd_elf64_mkcorefile
},
/* bfd_write_contents: write cached information into a file being written */
{ bfd_false,
bfd_elf64_write_object_contents,
bfd_elf64_write_archive_contents,
bfd_elf64_write_corefile_contents,
},
BFD_JUMP_TABLE_GENERIC (bfd_elf64),
BFD_JUMP_TABLE_COPY (bfd_elf64),
BFD_JUMP_TABLE_CORE (bfd_elf64),
#ifdef bfd_elf64_archive_functions
BFD_JUMP_TABLE_ARCHIVE (bfd_elf64_archive),
#else
BFD_JUMP_TABLE_ARCHIVE (_bfd_archive_coff),
#endif
BFD_JUMP_TABLE_SYMBOLS (bfd_elf64),
BFD_JUMP_TABLE_RELOCS (bfd_elf64),
BFD_JUMP_TABLE_WRITE (bfd_elf64),
BFD_JUMP_TABLE_LINK (bfd_elf64),
BFD_JUMP_TABLE_DYNAMIC (bfd_elf64),
/* Alternative endian target. */
#ifdef TARGET_LITTLE_SYM
& TARGET_LITTLE_SYM,
#else
NULL,
#endif
/* backend_data: */
(PTR) &elf64_bed
};
#endif
#ifdef TARGET_LITTLE_SYM
const bfd_target TARGET_LITTLE_SYM =
{
/* name: identify kind of target */
TARGET_LITTLE_NAME,
/* flavour: general indication about file */
bfd_target_elf_flavour,
/* byteorder: data is little endian */
BFD_ENDIAN_LITTLE,
/* header_byteorder: header is also little endian */
BFD_ENDIAN_LITTLE,
/* object_flags: mask of all file flags */
(HAS_RELOC | EXEC_P | HAS_LINENO | HAS_DEBUG | HAS_SYMS | HAS_LOCALS
| DYNAMIC | WP_TEXT | D_PAGED),
/* section_flags: mask of all section flags */
(SEC_HAS_CONTENTS | SEC_ALLOC | SEC_LOAD | SEC_RELOC | SEC_READONLY
| SEC_CODE | SEC_DATA | SEC_DEBUGGING | SEC_EXCLUDE | SEC_SORT_ENTRIES
| SEC_ARCH_BIT_0 | SEC_SMALL_DATA | SEC_MERGE | SEC_STRINGS | SEC_GROUP),
/* leading_symbol_char: is the first char of a user symbol
predictable, and if so what is it */
elf_symbol_leading_char,
/* ar_pad_char: pad character for filenames within an archive header
FIXME: this really has nothing to do with ELF, this is a characteristic
of the archiver and/or os and should be independently tunable */
'/',
/* ar_max_namelen: maximum number of characters in an archive header
FIXME: this really has nothing to do with ELF, this is a characteristic
of the archiver and should be independently tunable. The System V ABI,
Chapter 7 (Formats & Protocols), Archive section sets this as 15. */
15,
/* Routines to byte-swap various sized integers from the data sections */
bfd_getl64, bfd_getl_signed_64, bfd_putl64,
bfd_getl32, bfd_getl_signed_32, bfd_putl32,
bfd_getl16, bfd_getl_signed_16, bfd_putl16,
/* Routines to byte-swap various sized integers from the file headers */
bfd_getl64, bfd_getl_signed_64, bfd_putl64,
bfd_getl32, bfd_getl_signed_32, bfd_putl32,
bfd_getl16, bfd_getl_signed_16, bfd_putl16,
/* bfd_check_format: check the format of a file being read */
{ _bfd_dummy_target, /* unknown format */
bfd_elf64_object_p, /* assembler/linker output (object file) */
bfd_elf64_archive_p, /* an archive */
bfd_elf64_core_file_p /* a core file */
},
/* bfd_set_format: set the format of a file being written */
{ bfd_false,
bfd_elf64_mkobject,
bfd_elf64_mkarchive,
bfd_elf64_mkcorefile
},
/* bfd_write_contents: write cached information into a file being written */
{ bfd_false,
bfd_elf64_write_object_contents,
bfd_elf64_write_archive_contents,
bfd_elf64_write_corefile_contents,
},
BFD_JUMP_TABLE_GENERIC (bfd_elf64),
BFD_JUMP_TABLE_COPY (bfd_elf64),
BFD_JUMP_TABLE_CORE (bfd_elf64),
#ifdef bfd_elf64_archive_functions
BFD_JUMP_TABLE_ARCHIVE (bfd_elf64_archive),
#else
BFD_JUMP_TABLE_ARCHIVE (_bfd_archive_coff),
#endif
BFD_JUMP_TABLE_SYMBOLS (bfd_elf64),
BFD_JUMP_TABLE_RELOCS (bfd_elf64),
BFD_JUMP_TABLE_WRITE (bfd_elf64),
BFD_JUMP_TABLE_LINK (bfd_elf64),
BFD_JUMP_TABLE_DYNAMIC (bfd_elf64),
/* Alternative endian target. */
#ifdef TARGET_BIG_SYM
& TARGET_BIG_SYM,
#else
NULL,
#endif
/* backend_data: */
(PTR) &elf64_bed
};
#endif