Add sparc64 support.
XXX - lint does not yet work - it undefines __GNUC__ and this breaks bfd.h.
This commit is contained in:
parent
0fffc3d101
commit
17e3c1d4f1
File diff suppressed because it is too large
Load Diff
|
@ -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 */
|
||||
|
|
@ -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
|
|
@ -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 ();
|
||||
}
|
|
@ -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 */
|
|
@ -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 */
|
|
@ -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";
|
|
@ -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
|
Loading…
Reference in New Issue