mirror of
https://github.com/darlinghq/darling-gdb.git
synced 2024-11-25 21:19:54 +00:00
9b280a7f53
* breakpoint.c (fixup_breakpoints): Re-kludge to IBM6000_TARGET. * buildsym.c, rs6000-xdep.c, rs6000-tdep.c, tm-rs6000.h, xcoffexec.c, xcoffread.c: Rename aixcoff to xcoff everywhere. * printcmd.c (print_frame_args): Remove an RS/6000 dependency. * stabsread.c (define_symbol): Remove RS/6000 dependencies. * tm-rs6000.h (ATTACH_DETACH): Remove: host-dependent. (PTRACE_ATTACH, PTRACE_DETACH): Remove: host-dep. (NO_SINGLE_STEP): Add, target-dependent. (loadinfotextindex): Lowercase, remove "aix_". * xm-rs6000.h: Add <sys/ptrace.h> for infptrace.c. (NO_SINGLE_STEP): Remove, target-dependent. * xcoffexec.c (vmap_symtab): Cleanup #if 0'd code. * xcoffread.c: Only build file if RS/6000 native GDB. (build_function_symbol): Remove #if 0'd code. * rs6000-tdep.c: Cleanup. Add static fn protos. Use CORE_ADDR for addresses throughout. Make void fns void. (pop_dummy_frame): Add FIXME about bogosity of design here. (rs6000_struct_return_address): Ditto. (frameless_function_invocation, frame_get_cache_fsr, frame_initial_stack_address, xcoff_relocate_symtab, xcoff_init_loadinfo, free_loadinfo, xcoff_add_toc_to_loadinfo, add_text_to_loadinfo, find_toc_address): Move from xdep file. Use CORE_ADDRs. Change identifiers to lowercase. * rs6000-xdep.c: Make whole file conditional on native RS/6000, supplying dummy routines if non-native. Add prototype for static exec_one_dummy_insn. Move a mess of functions to rs6000-tdep.c (as above). Remove #if 0'd code. * config/rs6000.mh (XDEPFILES): Move xcoffexec.o to target side. (XM_CLIBS): Add -lm to circumvent AIX 3.2 libc ldexp bug. * config/rs6000.mt (TDEPFILES): Adopt xcoffexec.o.
81 lines
2.3 KiB
C
81 lines
2.3 KiB
C
/* Parameters for hosting on an RS6000, for GDB, the GNU debugger.
|
|
Copyright (C) 1986, 1987, 1989, 1991 Free Software Foundation, Inc.
|
|
Contributed by IBM Corporation.
|
|
|
|
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., 675 Mass Ave, Cambridge, MA 02139, USA. */
|
|
|
|
#include <sys/select.h>
|
|
#include <sys/ptrace.h>
|
|
|
|
/* Big end is at the low address */
|
|
|
|
#define HOST_BYTE_ORDER BIG_ENDIAN
|
|
|
|
#define HAVE_TERMIO 1
|
|
#define USG 1
|
|
#define HAVE_SIGSETMASK 1
|
|
|
|
/* AIX declares the mem functions */
|
|
|
|
#undef MEM_FNS_DECLARED
|
|
#define MEM_FNS_DECLARED 1
|
|
|
|
/* This system requires that we open a terminal with O_NOCTTY for it to
|
|
not become our controlling terminal. */
|
|
|
|
#define USE_O_NOCTTY
|
|
|
|
/* Get rid of any system-imposed stack limit if possible. */
|
|
|
|
#define SET_STACK_LIMIT_HUGE
|
|
|
|
/* Brain death inherited from PC's pervades. */
|
|
#undef NULL
|
|
#define NULL 0
|
|
|
|
/* The IBM compiler requires this in order to properly compile alloca(). */
|
|
#pragma alloca
|
|
|
|
/* There is no vfork. */
|
|
|
|
#define vfork fork
|
|
|
|
/* Do implement the attach and detach commands. */
|
|
|
|
#define ATTACH_DETACH
|
|
|
|
/* Override copies of {fetch,store}_inferior_registers in infptrace.c. */
|
|
|
|
#define FETCH_INFERIOR_REGISTERS
|
|
|
|
/* Setpgrp() takes arguments, unlike ordinary Sys V's. */
|
|
|
|
#define SETPGRP_ARGS 1
|
|
|
|
/* Flag for machine-specific stuff in shared files. FIXME */
|
|
#define IBM6000_HOST
|
|
|
|
/* /usr/include/stdlib.h always uses void* and void,
|
|
even when __STDC__ isn't defined. */
|
|
#define MALLOC_INCOMPATIBLE
|
|
extern void *malloc PARAMS ((size_t size));
|
|
extern void *realloc PARAMS ((void *ptr, size_t size));
|
|
extern void free PARAMS ((void *));
|
|
|
|
/* AIX doesn't have strdup, so we need to declare it for libiberty */
|
|
extern char *strdup PARAMS ((char *));
|