mirror of
https://sourceware.org/git/binutils-gdb.git
synced 2024-12-21 04:42:53 +08:00
abf516c693
This patch implements removal of Cell/B.E. support, including - Support for the spu-*-* target - Support for native stand-alone SPU debugging - Support for integrated debugging of combined PPU/SPU applications - Remote debugging (gdbserver) support for all the above. The patch also removes the TARGET_OBJECT_SPU target object type, as this is available only on Cell/B.E. targets, including - Native Linux support - Core file support (including core file generation) - Remote target support, including removal of the qXfer:spu:read and qXfer:spu:write remote protocal packets and associated support in gdbserver. gdb/ChangeLog 2019-09-20 Ulrich Weigand <uweigand@de.ibm.com> * NEWS: Mention that Cell/B.E. debugging support was removed. * MAINTAINERS: Remove spu target. * config/djgpp/fnchange.lst: Remove entries for removed files. * Makefile.in (ALL_TARGET_OBS): Remove solib-spu.o, spu-multiarch.o, and spu-tdep.o. (HFILES_NO_SRCDIR): Remove solib-spu.h and spu-tdep.h. (ALLDEPFILES): Remove solib-spu.c, spu-linux-nat.c, spu-multiarch.c, and spu-tdep.c. * spu-linux-nat.c: Remove file. * spu-multiarch.c: Remove file. * spu-tdep.c: Remove file. * spu-tdep.h: Remove file. * solib-spu.c: Remove file. * solib-spu.h: Remove file. * configure.host (powerpc64*-*-linux*): Remove Cell/B.E. support. * configure.nat (spu-linux): Remove. * configure.tgt (powerpc*-*-linux*): Remove solib-spu.o and solib-multiarch.o from gdb_target_obs. (spu*-*-*): Remove. * arch/ppc-linux-common.h (struct ppc_linux_features): Remove "cell" feature flag. (ppc_linux_no_features): Update. * arch/ppc-linux-common.c (ppc_linux_match_description): Remove Cell/B.E. support. * arch/ppc-linux-tdesc.h (tdesc_powerpc_cell32l): Remove declaration. (tdesc_powerpc_cell64l): Likewise. * nat/ppc-linux.h (PPC_FEATURE_CELL): Remove. * ppc-linux-nat.c (ppc_linux_nat_target::read_description): Remove Cell/B.E. support. * ppc-linux-tdep.h: Do not include "solib-spu.h" or "spu-tdep.h". Do not include "features/rs6000/powerpc-cell32l.c" or "features/rs6000/powerpc-cell64l.c". (ppc_linux_spu_section): Remove. (ppc_linux_core_read_description): Remove Cell/B.E. support. (spe_context_objfile, spe_context_lm_addr, spe_context_offset, spe_context_cache_ptid, spe_context_cache_ptid): Remove. (ppc_linux_spe_context_lookup): Remove. (ppc_linux_spe_context_inferior_created): Remove. (ppc_linux_spe_context_solib_loaded): Remove. (ppc_linux_spe_context_solib_unloaded): Remove. (ppc_linux_spe_context): Remove. (struct ppu2spu_cache): Remove. (ppu2spu_prev_arch, ppu2spu_this_id, ppu2spu_prev_register): Remove. (struct ppu2spu_data): Remove. (ppu2spu_unwind_register, ppu2spu_sniffer, ppu2spu_dealloc_cache, ppu2spu_unwind): Remove. (ppc_linux_init_abi): Remove Cell/B.E. support. * rs6000-tdep.h (rs6000_gdbarch_init): Remove Cell/B.E. support. * features/Makefile (rs6000/powerpc-cell32l-expedite): Remove. (rs6000/powerpc-cell64l-expedite): Likewise (WHICH): Remove rs6000/powerpc-cell32l and rs6000/powerpc-cell64l. (XMLTOC): Remove rs6000/powerpc-cell32l.xml and rs6000/powerpc-cell64l.xml. * features/rs6000/powerpc-cell32l.xml: Remove. * features/rs6000/powerpc-cell64l.xml: Likewise. * features/rs6000/powerpc-cell32l.c: Remove generated file. * features/rs6000/powerpc-cell64l.c: Likewise. * regformats/rs6000/powerpc-cell32l.dat: Remove generated file. * regformats/rs6000/powerpc-cell64l.dat: Likewise. * regformats/reg-spu.dat: Remove. * target.h (enum target_object): Remove TARGET_OBJECT_SPU. * corelow.c (struct spuid_list): Remove. (add_to_spuid_list): Remove. (core_target::xfer_partial): Remove support for TARGET_OBJECT_SPU. * remote.c (PACKET_qXfer_spu_read, PACKET_qXfer_spu_write): Remove. (remote_protocol_features): Remove associated entries. (_initialize_remote): No longer initialize them. (remote_target::xfer_partial): Remove support for TARGET_OBJECT_SPU. * linux-nat.c (SPUFS_MAGIC): Remove. (linux_proc_xfer_spu): Remove. (spu_enumerate_spu_ids): Remove. (linux_nat_target::xfer_partial): Remove support for TARGET_OBJECT_SPU. * linux-tdep.c (-linux_spu_make_corefile_notes): Remove. (linux_make_corefile_notes): No longer call it. * regcache.c (cooked_read_test): Remove bfd_arch_spu special case. (cooked_write_test): Likewise. gdb/doc/ChangeLog 2019-09-20 Ulrich Weigand <uweigand@de.ibm.com> * doc/gdb.texinfo (Remote Configuration): Remove documentation for qXfer:spu:read and qXfer:spu:write. (General Query Packets): Likewise. (Cell Broadband Engine SPU architecture): Remove subsection. gdb/gdbserver/ChangeLog 2019-09-20 Ulrich Weigand <uweigand@de.ibm.com> * configure.srv (ipa_ppc_linux_regobj): Remove powerpc-cell32l-ipa.o and powerpc-cell64l-ipa.o. (powerpc*-*-linux*): Remove powerpc-cell32l.o and powerpc-cell64l.o from srv_regobj. Remove rs6000/powerpc-cell32l.xml and rs6000/powerpc-cell64l.xml from srv_xmlfiles. (spu*-*-*): Remove. * spu-low.c: Remove file. * linux-ppc-low.c (INSTR_SC, NR_spu_run): Remove. (parse_spufs_run): Remove. (ppc_get_pc): Remove Cell/B.E. support. (ppc_set_pc): Likewise. (ppc_breakpoint_at): Likewise. (ppc_arch_setup): Likewise. (ppc_get_ipa_tdesc_idx): Do not handle tdesc_powerpc_cell64l or tdesc_powerpc_cell32l. (initialize_low_arch): Do not call init_registers_powerpc_cell64l or init_registers_powerpc_cell32l. * linux-ppc-ipa.c (get_ipa_tdesc): Do not handle PPC_TDESC_CELL. (initialize_low_tracepoint): Do not call init_registers_powerpc_cell64l or init_registers_powerpc_cell32l. * linux-ppc-tdesc-init.h (PPC_TDESC_CELL): Mark as unused. (init_registers_powerpc_cell32l): Remove prototype. (init_registers_powerpc_cell64l): Likewise. * target.h (struct target_ops): Remove qxfer_spu member. * server.c (handle_qxfer_spu): Remove. (qxfer_packets): Remove entry for "spu". (handle_query): No longer support qXfer:spu:read or qXfer:spu:write. * linux-low.c (SPUFS_MAGIC): Remove. (spu_enumerate_spu_ids): Remove. (linux_qxfer_spu): Remove. (linux_target_ops): Remove qxfer_spu member. * lynx-low.c (lynx_target_ops): Remove qxfer_spu member. * nto-low.c (nto_target_ops): Remove qxfer_spu member. * win32-low.c (win32_target_ops): Remove qxfer_spu member. gdb/testsuite/ChangeLog 2019-09-20 Ulrich Weigand <uweigand@de.ibm.com> * gdb.arch/spu-info.exp: Remove file. * gdb.arch/spu-info.c: Remove file. * gdb.arch/spu-ls.exp: Remove file. * gdb.arch/spu-ls.c: Remove file. * gdb.asm/asm-source.exp: Remove support for spu*-*-*. * gdb.asm/spu.inc: Remove file. * gdb.base/dump.exp: Remove support for spu*-*-*. * gdb.base/stack-checking.exp: Likewise. * gdb.base/overlays.exp: Likewise. * gdb.base/ovlymgr.c: Likewise. * gdb.base/spu.ld: Remove file. * gdb.cp/bs15503.exp: Remove support for spu*-*-*. * gdb.cp/cpexprs.exp: Likewise. * gdb.cp/exception.exp: Likewise. * gdb.cp/gdb2495.exp: Likewise. * gdb.cp/mb-templates.exp: Likewise. * gdb.cp/pr9167.exp: Likewise. * gdb.cp/userdef.exp: Likewise. * gdb.xml/tdesc-regs.exp: Remove support for spu*-*-*. * gdb.cell: Remove directory. * lib/cell.exp: Remove file.
813 lines
20 KiB
Plaintext
813 lines
20 KiB
Plaintext
# Mappings from configurations to GDB target definitions. This is
|
|
# invoked from the autoconf generated configure script.
|
|
|
|
# This file sets the following shell variables:
|
|
# gdb_target_obs target-specific object files to use
|
|
# gdb_sim simulator library for target
|
|
# gdb_osabi default OS ABI to use with target
|
|
# build_gdbserver set to "yes" if gdbserver supports target
|
|
# gdb_have_gcore set to "true"/"false" if this target can run gcore
|
|
|
|
# NOTE: Every file added to a gdb_target_obs variable for any target here
|
|
# must also be added to either ALL_TARGET_OBS or ALL_64_TARGET_OBS
|
|
# in Makefile.in!
|
|
|
|
case $targ in
|
|
*-*-irix* | \
|
|
alpha*-*-osf* | \
|
|
alpha*-*-freebsd* | \
|
|
alpha*-*-kfreebsd*-gnu | \
|
|
d10v-*-* | \
|
|
hppa*-*-hiux* | \
|
|
i[34567]86-ncr-* | \
|
|
m68*-cisco*-* | \
|
|
m68*-tandem-* | \
|
|
m68*-*-os68k* | \
|
|
mips*-*-pe | \
|
|
rs6000-*-lynxos* | \
|
|
sh*-*-pe | \
|
|
hppa*-*-hpux* | \
|
|
ia64-*-hpux* | \
|
|
*-*-vxworks* | \
|
|
mt-*-* | \
|
|
null)
|
|
echo "*** Configuration $targ is obsolete." >&2
|
|
echo "*** Support has been REMOVED." >&2
|
|
exit 1
|
|
;;
|
|
esac
|
|
|
|
x86_tobjs="x86-tdep.o"
|
|
i386_tobjs="i386-tdep.o arch/i386.o i387-tdep.o ${x86_tobjs}"
|
|
amd64_tobjs="amd64-tdep.o arch/amd64.o ${x86_tobjs}"
|
|
|
|
# Here are three sections to get a list of target specific object
|
|
# files according to target triplet $TARG.
|
|
|
|
# 1. Get the objects per cpu in $TARG.
|
|
|
|
case "${targ}" in
|
|
aarch64*-*-*)
|
|
cpu_obs="aarch32-tdep.o aarch64-tdep.o arch/aarch32.o \
|
|
arch/aarch64-insn.o arch/aarch64.o ravenscar-thread.o \
|
|
aarch64-ravenscar-thread.o";;
|
|
|
|
alpha*-*-*)
|
|
# Target: Alpha
|
|
cpu_obs="alpha-tdep.o"
|
|
;;
|
|
|
|
arc*-*-*)
|
|
# Target: Unidentified ARC target
|
|
cpu_obs="arc-tdep.o"
|
|
;;
|
|
|
|
arm*-*-*)
|
|
cpu_obs="aarch32-tdep.o arch/aarch32.o arch/arm.o \
|
|
arch/arm-get-next-pcs.o arm-tdep.o";;
|
|
|
|
hppa*-*-*)
|
|
# Target: HP PA-RISC
|
|
cpu_obs="hppa-tdep.o"
|
|
;;
|
|
|
|
i[34567]86-*-*)
|
|
cpu_obs="${i386_tobjs}"
|
|
if test "x$enable_64_bit_bfd" = "xyes"; then
|
|
cpu_obs="${amd64_tobjs} ${cpu_obs}"
|
|
fi
|
|
;;
|
|
|
|
ia64*-*-*)
|
|
# Target: Intel IA-64
|
|
cpu_obs="ia64-tdep.o"
|
|
;;
|
|
|
|
riscv*-*-*)
|
|
cpu_obs="riscv-tdep.o arch/riscv.o";;
|
|
|
|
x86_64-*-*)
|
|
cpu_obs="${i386_tobjs} ${amd64_tobjs}";;
|
|
|
|
xtensa*)
|
|
# Target: Tensilica Xtensa processors
|
|
cpu_obs="xtensa-tdep.o xtensa-config.o solib-svr4.o"
|
|
;;
|
|
|
|
esac
|
|
|
|
# 2. Get the objects per os in $TARG.
|
|
|
|
case "${targ}" in
|
|
*-*-freebsd* | *-*-kfreebsd*-gnu)
|
|
os_obs="fbsd-tdep.o solib-svr4.o";;
|
|
*-*-netbsd* | *-*-knetbsd*-gnu)
|
|
os_obs="nbsd-tdep.o solib-svr4.o";;
|
|
*-*-openbsd*)
|
|
os_obs="obsd-tdep.o solib-svr4.o";;
|
|
esac
|
|
|
|
# 3. Get the rest of objects.
|
|
|
|
case "${targ}" in
|
|
aarch64*-*-elf | aarch64*-*-rtems*)
|
|
# Target: AArch64 embedded system
|
|
gdb_target_obs="aarch64-newlib-tdep.o"
|
|
;;
|
|
|
|
aarch64*-*-freebsd*)
|
|
# Target: FreeBSD/aarch64
|
|
gdb_target_obs="aarch64-fbsd-tdep.o"
|
|
;;
|
|
|
|
aarch64*-*-linux*)
|
|
# Target: AArch64 linux
|
|
gdb_target_obs="aarch64-linux-tdep.o arch/aarch64.o\
|
|
arch/arm.o arch/arm-linux.o arch/arm-get-next-pcs.o \
|
|
arm-tdep.o arm-linux-tdep.o \
|
|
glibc-tdep.o linux-tdep.o solib-svr4.o \
|
|
symfile-mem.o linux-record.o"
|
|
build_gdbserver=yes
|
|
;;
|
|
|
|
alpha*-*-linux*)
|
|
# Target: Little-endian Alpha running Linux
|
|
gdb_target_obs="alpha-mdebug-tdep.o alpha-linux-tdep.o \
|
|
linux-tdep.o solib-svr4.o"
|
|
;;
|
|
alpha*-*-netbsd* | alpha*-*-knetbsd*-gnu)
|
|
# Target: NetBSD/alpha
|
|
gdb_target_obs="alpha-mdebug-tdep.o alpha-bsd-tdep.o \
|
|
alpha-nbsd-tdep.o"
|
|
;;
|
|
alpha*-*-openbsd*)
|
|
# Target: OpenBSD/alpha
|
|
gdb_target_obs="alpha-mdebug-tdep.o alpha-bsd-tdep.o \
|
|
alpha-nbsd-tdep.o alpha-obsd-tdep.o nbsd-tdep.o"
|
|
;;
|
|
|
|
am33_2.0*-*-linux*)
|
|
# Target: Matsushita mn10300 (AM33) running Linux
|
|
gdb_target_obs="mn10300-tdep.o mn10300-linux-tdep.o linux-tdep.o \
|
|
solib-svr4.o"
|
|
;;
|
|
|
|
arc*-*-elf32)
|
|
# Target: baremetal ARC elf32 (newlib) target
|
|
gdb_target_obs="arc-newlib-tdep.o"
|
|
;;
|
|
|
|
arm*-wince-pe | arm*-*-mingw32ce*)
|
|
# Target: ARM based machine running Windows CE (win32)
|
|
gdb_target_obs="arm-wince-tdep.o windows-tdep.o"
|
|
build_gdbserver=yes
|
|
;;
|
|
arm*-*-linux*)
|
|
# Target: ARM based machine running GNU/Linux
|
|
gdb_target_obs="arch/arm-linux.o arm-linux-tdep.o glibc-tdep.o \
|
|
solib-svr4.o symfile-mem.o linux-tdep.o linux-record.o"
|
|
build_gdbserver=yes
|
|
;;
|
|
arm*-*-freebsd*)
|
|
# Target: FreeBSD/arm
|
|
gdb_target_obs="arm-fbsd-tdep.o"
|
|
;;
|
|
arm*-*-netbsd* | arm*-*-knetbsd*-gnu)
|
|
# Target: NetBSD/arm
|
|
gdb_target_obs="arm-nbsd-tdep.o"
|
|
;;
|
|
arm*-*-openbsd*)
|
|
# Target: OpenBSD/arm
|
|
gdb_target_obs="arm-bsd-tdep.o arm-obsd-tdep.o"
|
|
;;
|
|
arm*-*-symbianelf*)
|
|
# Target: SymbianOS/arm
|
|
gdb_target_obs="arm-symbian-tdep.o"
|
|
;;
|
|
arm*-*-*)
|
|
# Target: ARM embedded system
|
|
gdb_target_obs="arm-pikeos-tdep.o"
|
|
gdb_sim=../sim/arm/libsim.a
|
|
;;
|
|
|
|
avr-*-*)
|
|
# Target: AVR
|
|
gdb_target_obs="avr-tdep.o"
|
|
gdb_sim=../sim/avr/libsim.a
|
|
;;
|
|
|
|
bfin-*-*linux*)
|
|
# Target: Blackfin Linux
|
|
gdb_target_obs="bfin-tdep.o bfin-linux-tdep.o linux-tdep.o"
|
|
gdb_sim=../sim/bfin/libsim.a
|
|
build_gdbserver=yes
|
|
;;
|
|
bfin-*-*)
|
|
# Target: Blackfin processor
|
|
gdb_target_obs="bfin-tdep.o"
|
|
gdb_sim=../sim/bfin/libsim.a
|
|
;;
|
|
|
|
cris*)
|
|
# Target: CRIS
|
|
gdb_target_obs="cris-tdep.o cris-linux-tdep.o linux-tdep.o solib-svr4.o"
|
|
;;
|
|
|
|
csky*-*-linux*)
|
|
# Target: CSKY running GNU/Linux
|
|
gdb_target_obs="csky-tdep.o csky-linux-tdep.o glibc-tdep.o \
|
|
linux-tdep.o solib-svr4.o"
|
|
;;
|
|
|
|
csky*-*-*)
|
|
# Target: CSKY bare metal
|
|
gdb_target_obs="csky-tdep.o"
|
|
;;
|
|
|
|
frv-*-*)
|
|
# Target: Fujitsu FRV processor
|
|
gdb_target_obs="frv-tdep.o frv-linux-tdep.o linux-tdep.o solib-frv.o"
|
|
gdb_sim=../sim/frv/libsim.a
|
|
;;
|
|
|
|
moxie-*-elf | moxie-*-moxiebox | moxie-*-rtems*)
|
|
gdb_target_obs="moxie-tdep.o"
|
|
gdb_sim=../sim/moxie/libsim.a
|
|
;;
|
|
|
|
h8300-*-*)
|
|
# Target: H8300 processor
|
|
gdb_target_obs="h8300-tdep.o"
|
|
gdb_sim=../sim/h8300/libsim.a
|
|
;;
|
|
|
|
hppa*-*-linux*)
|
|
# Target: HP PA-RISC running Linux
|
|
gdb_target_obs="hppa-linux-tdep.o glibc-tdep.o \
|
|
linux-tdep.o solib-svr4.o symfile-mem.o"
|
|
;;
|
|
hppa*-*-netbsd*)
|
|
# Target: NetBSD/hppa
|
|
gdb_target_obs="hppa-bsd-tdep.o hppa-nbsd-tdep.o solib-svr4.o"
|
|
;;
|
|
hppa*-*-openbsd*)
|
|
# Target: OpenBSD/hppa
|
|
gdb_target_obs="hppa-bsd-tdep.o hppa-obsd-tdep.o solib-svr4.o"
|
|
;;
|
|
|
|
i[34567]86-*-darwin*)
|
|
# Target: Darwin/i386
|
|
gdb_target_obs="i386-darwin-tdep.o solib-darwin.o"
|
|
if test "x$enable_64_bit_bfd" = "xyes"; then
|
|
# Target: GNU/Linux x86-64
|
|
gdb_target_obs="amd64-darwin-tdep.o ${gdb_target_obs}"
|
|
fi
|
|
;;
|
|
i[34567]86-*-dicos*)
|
|
# Target: DICOS/i386
|
|
gdb_target_obs="dicos-tdep.o i386-dicos-tdep.o"
|
|
;;
|
|
i[34567]86-*-freebsd* | i[34567]86-*-kfreebsd*-gnu)
|
|
# Target: FreeBSD/i386
|
|
gdb_target_obs="i386-bsd-tdep.o i386-fbsd-tdep.o "
|
|
;;
|
|
i[34567]86-*-netbsd* | i[34567]86-*-knetbsd*-gnu)
|
|
# Target: NetBSD/i386
|
|
gdb_target_obs="i386-bsd-tdep.o i386-nbsd-tdep.o "
|
|
;;
|
|
i[34567]86-*-openbsd*)
|
|
# Target: OpenBSD/i386
|
|
gdb_target_obs="i386-bsd-tdep.o i386-obsd-tdep.o bsd-uthread.o"
|
|
;;
|
|
i[34567]86-*-nto*)
|
|
# Target: Intel 386 running qnx6.
|
|
gdb_target_obs="solib-svr4.o \
|
|
i386-nto-tdep.o nto-tdep.o"
|
|
build_gdbserver=yes
|
|
;;
|
|
i[34567]86-*-solaris2* | x86_64-*-solaris2*)
|
|
# Target: Solaris x86_64
|
|
gdb_target_obs="${i386_tobjs} ${amd64_tobjs} \
|
|
amd64-sol2-tdep.o i386-sol2-tdep.o sol2-tdep.o \
|
|
solib-svr4.o"
|
|
;;
|
|
i[34567]86-*-linux*)
|
|
# Target: Intel 386 running GNU/Linux
|
|
gdb_target_obs="i386-linux-tdep.o \
|
|
glibc-tdep.o \
|
|
solib-svr4.o symfile-mem.o \
|
|
linux-tdep.o linux-record.o"
|
|
if test "x$enable_64_bit_bfd" = "xyes"; then
|
|
# Target: GNU/Linux x86-64
|
|
gdb_target_obs="amd64-linux-tdep.o ${gdb_target_obs}"
|
|
fi
|
|
build_gdbserver=yes
|
|
;;
|
|
i[34567]86-*-gnu*)
|
|
# Target: Intel 386 running the GNU Hurd
|
|
gdb_target_obs="i386-gnu-tdep.o solib-svr4.o"
|
|
;;
|
|
i[34567]86-*-cygwin*)
|
|
# Target: Intel 386 running win32
|
|
gdb_target_obs="i386-cygwin-tdep.o windows-tdep.o"
|
|
build_gdbserver=yes
|
|
;;
|
|
i[34567]86-*-mingw32*)
|
|
# Target: Intel 386 running win32
|
|
gdb_target_obs="i386-cygwin-tdep.o windows-tdep.o"
|
|
build_gdbserver=yes
|
|
;;
|
|
i[34567]86-*-go32* | i[34567]86-*-msdosdjgpp*)
|
|
# Target: i386 running DJGPP/go32.
|
|
gdb_target_obs="i386-go32-tdep.o"
|
|
;;
|
|
|
|
ia64-*-linux*)
|
|
# Target: Intel IA-64 running GNU/Linux
|
|
gdb_target_obs="ia64-linux-tdep.o linux-tdep.o \
|
|
solib-svr4.o symfile-mem.o"
|
|
build_gdbserver=yes
|
|
;;
|
|
ia64-*-*vms*)
|
|
# Target: Intel IA-64 running OpenVMS
|
|
gdb_target_obs="ia64-vms-tdep.o"
|
|
;;
|
|
|
|
iq2000-*-*)
|
|
gdb_target_obs="iq2000-tdep.o"
|
|
gdb_sim=../sim/iq2000/libsim.a
|
|
;;
|
|
|
|
lm32-*-*)
|
|
gdb_target_obs="lm32-tdep.o"
|
|
gdb_sim=../sim/lm32/libsim.a
|
|
;;
|
|
|
|
m32c-*-*)
|
|
# Target: Renesas M32C family
|
|
gdb_target_obs="m32c-tdep.o"
|
|
# There may also be a SID / CGEN simulator for this,
|
|
# but we do have DJ Delorie's mini-sim.
|
|
gdb_sim=../sim/m32c/libsim.a
|
|
;;
|
|
|
|
m32r*-*-linux*)
|
|
# Target: Renesas M32R running GNU/Linux
|
|
gdb_target_obs="m32r-tdep.o m32r-linux-tdep.o \
|
|
glibc-tdep.o solib-svr4.o symfile-mem.o \
|
|
linux-tdep.o"
|
|
gdb_sim=../sim/m32r/libsim.a
|
|
build_gdbserver=yes
|
|
;;
|
|
m32r*-*-*)
|
|
# Target: Renesas m32r processor
|
|
gdb_target_obs="m32r-tdep.o"
|
|
gdb_sim=../sim/m32r/libsim.a
|
|
;;
|
|
|
|
m68hc11*-*-*|m6811*-*-*)
|
|
# Target: Motorola 68HC11 processor
|
|
gdb_target_obs="m68hc11-tdep.o"
|
|
gdb_sim=../sim/m68hc11/libsim.a
|
|
;;
|
|
|
|
m68*-*-aout* | m68*-*-coff* | m68*-*-elf* | m68*-*-rtems* | m68*-*-uclinux* | \
|
|
fido-*-elf*)
|
|
# Target: Motorola m68k embedded
|
|
gdb_target_obs="m68k-tdep.o"
|
|
;;
|
|
m68*-*-linux*)
|
|
# Target: Motorola m68k with a.out and ELF
|
|
gdb_target_obs="m68k-tdep.o m68k-linux-tdep.o solib-svr4.o \
|
|
linux-tdep.o glibc-tdep.o symfile-mem.o"
|
|
build_gdbserver=yes
|
|
;;
|
|
m68*-*-netbsd* | m68*-*-knetbsd*-gnu)
|
|
# Target: NetBSD/m68k
|
|
gdb_target_obs="m68k-tdep.o m68k-bsd-tdep.o"
|
|
;;
|
|
m68*-*-openbsd*)
|
|
# Target: OpenBSD/m68k
|
|
gdb_target_obs="m68k-tdep.o m68k-bsd-tdep.o"
|
|
;;
|
|
|
|
mep-*-*)
|
|
# Target: Toshiba Media Processor (MEP)
|
|
gdb_target_obs="mep-tdep.o"
|
|
# No sim needed. Target uses SID.
|
|
;;
|
|
|
|
microblaze*-linux-*|microblaze*-*-linux*)
|
|
# Target: Xilinx MicroBlaze running Linux
|
|
gdb_target_obs="microblaze-tdep.o microblaze-linux-tdep.o solib-svr4.o \
|
|
symfile-mem.o linux-tdep.o"
|
|
gdb_sim=../sim/microblaze/libsim.a
|
|
;;
|
|
microblaze*-*-*)
|
|
# Target: Xilinx MicroBlaze running standalone
|
|
gdb_target_obs="microblaze-tdep.o"
|
|
gdb_sim=../sim/microblaze/libsim.a
|
|
;;
|
|
|
|
mips*-*-linux*)
|
|
# Target: Linux/MIPS
|
|
gdb_target_obs="mips-tdep.o mips-linux-tdep.o glibc-tdep.o \
|
|
solib-svr4.o symfile-mem.o linux-tdep.o"
|
|
gdb_sim=../sim/mips/libsim.a
|
|
build_gdbserver=yes
|
|
;;
|
|
mips*-*-netbsd* | mips*-*-knetbsd*-gnu)
|
|
# Target: MIPS running NetBSD
|
|
gdb_target_obs="mips-tdep.o mips-nbsd-tdep.o"
|
|
gdb_sim=../sim/mips/libsim.a
|
|
;;
|
|
mips*-*-freebsd*)
|
|
# Target: MIPS running FreeBSD
|
|
gdb_target_obs="mips-tdep.o mips-fbsd-tdep.o"
|
|
gdb_sim=../sim/mips/libsim.a
|
|
;;
|
|
mips64*-*-openbsd*)
|
|
# Target: OpenBSD/mips64
|
|
gdb_target_obs="mips-tdep.o mips64-obsd-tdep.o"
|
|
;;
|
|
mips*-sde*-elf*)
|
|
# Target: MIPS SDE
|
|
gdb_target_obs="mips-tdep.o mips-sde-tdep.o"
|
|
gdb_sim=../sim/mips/libsim.a
|
|
;;
|
|
mips*-*-elf)
|
|
# Target: MIPS ELF
|
|
gdb_target_obs="mips-tdep.o"
|
|
gdb_sim=../sim/mips/libsim.a
|
|
;;
|
|
mips*-*-*)
|
|
# Target: MIPS
|
|
gdb_target_obs="mips-tdep.o"
|
|
gdb_sim=../sim/mips/libsim.a
|
|
;;
|
|
|
|
mn10300-*-*)
|
|
# Target: Matsushita mn10300
|
|
gdb_target_obs="mn10300-tdep.o"
|
|
gdb_sim=../sim/mn10300/libsim.a
|
|
;;
|
|
|
|
msp430*-*-elf)
|
|
gdb_target_obs="msp430-tdep.o"
|
|
gdb_sim=../sim/msp430/libsim.a
|
|
;;
|
|
|
|
nds32*-*-elf)
|
|
# Target: AndesTech NDS32 core
|
|
gdb_target_obs="nds32-tdep.o"
|
|
;;
|
|
|
|
nios2*-*-linux*)
|
|
# Target: Altera Nios II running Linux
|
|
gdb_target_obs="nios2-tdep.o nios2-linux-tdep.o solib-svr4.o \
|
|
symfile-mem.o glibc-tdep.o linux-tdep.o"
|
|
;;
|
|
|
|
nios2*-*-*)
|
|
# Target: Altera Nios II bare-metal
|
|
gdb_target_obs="nios2-tdep.o"
|
|
;;
|
|
|
|
or1k*-*-linux*)
|
|
# Target: OpenCores OpenRISC 1000 32-bit running Linux
|
|
gdb_target_obs="or1k-tdep.o or1k-linux-tdep.o solib-svr4.o \
|
|
symfile-mem.o glibc-tdep.o linux-tdep.o"
|
|
gdb_sim=../sim/or1k/libsim.a
|
|
build_gdbserver=yes
|
|
;;
|
|
|
|
or1k-*-* | or1knd-*-*)
|
|
# Target: OpenCores OpenRISC 1000 32-bit implementation bare metal
|
|
gdb_target_obs="or1k-tdep.o"
|
|
gdb_sim=../sim/or1k/libsim.a
|
|
;;
|
|
|
|
powerpc*-*-freebsd*)
|
|
# Target: FreeBSD/powerpc
|
|
gdb_target_obs="rs6000-tdep.o ppc-sysv-tdep.o ppc64-tdep.o \
|
|
ppc-fbsd-tdep.o \
|
|
ravenscar-thread.o ppc-ravenscar-thread.o"
|
|
;;
|
|
|
|
powerpc-*-netbsd* | powerpc-*-knetbsd*-gnu)
|
|
# Target: NetBSD/powerpc
|
|
gdb_target_obs="rs6000-tdep.o ppc-sysv-tdep.o ppc-nbsd-tdep.o \
|
|
ravenscar-thread.o ppc-ravenscar-thread.o"
|
|
gdb_sim=../sim/ppc/libsim.a
|
|
;;
|
|
powerpc-*-openbsd*)
|
|
# Target: OpenBSD/powerpc
|
|
gdb_target_obs="rs6000-tdep.o ppc-sysv-tdep.o ppc-obsd-tdep.o \
|
|
ravenscar-thread.o ppc-ravenscar-thread.o"
|
|
;;
|
|
powerpc-*-aix* | rs6000-*-* | powerpc64-*-aix*)
|
|
# Target: PowerPC running AIX
|
|
gdb_target_obs="rs6000-tdep.o rs6000-aix-tdep.o xcoffread.o \
|
|
ppc-sysv-tdep.o solib-aix.o \
|
|
ravenscar-thread.o ppc-ravenscar-thread.o"
|
|
;;
|
|
powerpc*-*-linux*)
|
|
# Target: PowerPC running Linux
|
|
gdb_target_obs="rs6000-tdep.o ppc-linux-tdep.o ppc-sysv-tdep.o \
|
|
ppc64-tdep.o solib-svr4.o \
|
|
glibc-tdep.o symfile-mem.o linux-tdep.o \
|
|
ravenscar-thread.o ppc-ravenscar-thread.o \
|
|
linux-record.o \
|
|
arch/ppc-linux-common.o"
|
|
gdb_sim=../sim/ppc/libsim.a
|
|
build_gdbserver=yes
|
|
;;
|
|
powerpc-*-lynx*178)
|
|
# Target: PowerPC running Lynx178.
|
|
gdb_target_obs="rs6000-tdep.o rs6000-lynx178-tdep.o \
|
|
xcoffread.o ppc-sysv-tdep.o \
|
|
ravenscar-thread.o ppc-ravenscar-thread.o"
|
|
;;
|
|
powerpc*-*-*)
|
|
# Target: PowerPC running eabi
|
|
gdb_target_obs="rs6000-tdep.o ppc-sysv-tdep.o solib-svr4.o \
|
|
ravenscar-thread.o ppc-ravenscar-thread.o"
|
|
gdb_sim=../sim/ppc/libsim.a
|
|
;;
|
|
|
|
s390*-*-linux*)
|
|
# Target: S390 running Linux
|
|
gdb_target_obs="s390-linux-tdep.o s390-tdep.o solib-svr4.o \
|
|
linux-tdep.o linux-record.o symfile-mem.o"
|
|
build_gdbserver=yes
|
|
;;
|
|
|
|
riscv*-*-freebsd*)
|
|
# Target: FreeBSD/riscv
|
|
gdb_target_obs="riscv-fbsd-tdep.o"
|
|
;;
|
|
|
|
riscv*-*-linux*)
|
|
# Target: Linux/RISC-V
|
|
gdb_target_obs="riscv-linux-tdep.o glibc-tdep.o \
|
|
linux-tdep.o solib-svr4.o symfile-mem.o linux-record.o"
|
|
;;
|
|
|
|
riscv*-*-*)
|
|
# Target: RISC-V architecture
|
|
gdb_target_obs=""
|
|
;;
|
|
|
|
rl78-*-elf)
|
|
# Target: Renesas rl78
|
|
gdb_target_obs="rl78-tdep.o"
|
|
gdb_sim=../sim/rl78/libsim.a
|
|
;;
|
|
|
|
rx-*-elf)
|
|
# Target: Renesas RX
|
|
gdb_target_obs="rx-tdep.o"
|
|
gdb_sim=../sim/rx/libsim.a
|
|
;;
|
|
|
|
score-*-*)
|
|
# Target: S+core embedded system
|
|
gdb_target_obs="score-tdep.o"
|
|
build_gdbserver=yes
|
|
;;
|
|
|
|
sh*-*-linux*)
|
|
# Target: GNU/Linux Super-H
|
|
gdb_target_obs="sh-tdep.o sh-linux-tdep.o \
|
|
solib-svr4.o symfile-mem.o \
|
|
glibc-tdep.o linux-tdep.o"
|
|
gdb_sim=../sim/sh/libsim.a
|
|
build_gdbserver=yes
|
|
;;
|
|
sh*-*-netbsdelf* | sh*-*-knetbsd*-gnu)
|
|
# Target: NetBSD/sh
|
|
gdb_target_obs="sh-tdep.o sh-nbsd-tdep.o"
|
|
gdb_sim=../sim/sh/libsim.a
|
|
;;
|
|
sh*-*-openbsd*)
|
|
# Target: OpenBSD/sh
|
|
gdb_target_obs="sh-tdep.o sh-nbsd-tdep.o"
|
|
;;
|
|
sh*)
|
|
# Target: Embedded Renesas Super-H processor
|
|
gdb_target_obs="sh-tdep.o"
|
|
gdb_sim=../sim/sh/libsim.a
|
|
;;
|
|
|
|
sparc-*-linux*)
|
|
# Target: GNU/Linux SPARC
|
|
gdb_target_obs="sparc-tdep.o sparc-sol2-tdep.o sol2-tdep.o \
|
|
sparc-linux-tdep.o solib-svr4.o symfile-mem.o \
|
|
linux-tdep.o \
|
|
ravenscar-thread.o sparc-ravenscar-thread.o"
|
|
if test "x$enable_64_bit_bfd" = "xyes"; then
|
|
# Target: GNU/Linux UltraSPARC
|
|
gdb_target_obs="sparc64-tdep.o sparc64-sol2-tdep.o \
|
|
sparc64-linux-tdep.o ${gdb_target_obs}"
|
|
fi
|
|
build_gdbserver=yes
|
|
;;
|
|
sparc64-*-linux*)
|
|
# Target: GNU/Linux UltraSPARC
|
|
gdb_target_obs="sparc64-tdep.o sparc64-sol2-tdep.o sol2-tdep.o \
|
|
sparc64-linux-tdep.o sparc-tdep.o sparc-sol2-tdep.o \
|
|
sparc-linux-tdep.o solib-svr4.o linux-tdep.o \
|
|
ravenscar-thread.o sparc-ravenscar-thread.o"
|
|
build_gdbserver=yes
|
|
;;
|
|
sparc*-*-freebsd* | sparc*-*-kfreebsd*-gnu)
|
|
# Target: FreeBSD/sparc64
|
|
gdb_target_obs="sparc-tdep.o sparc64-tdep.o sparc64-fbsd-tdep.o \
|
|
ravenscar-thread.o sparc-ravenscar-thread.o"
|
|
;;
|
|
sparc-*-netbsd* | sparc-*-knetbsd*-gnu)
|
|
# Target: NetBSD/sparc
|
|
gdb_target_obs="sparc-tdep.o sparc-nbsd-tdep.o \
|
|
ravenscar-thread.o sparc-ravenscar-thread.o"
|
|
;;
|
|
sparc64-*-netbsd* | sparc64-*-knetbsd*-gnu)
|
|
# Target: NetBSD/sparc64
|
|
gdb_target_obs="sparc64-tdep.o sparc64-nbsd-tdep.o sparc-tdep.o \
|
|
sparc-nbsd-tdep.o \
|
|
ravenscar-thread.o sparc-ravenscar-thread.o"
|
|
;;
|
|
sparc-*-openbsd*)
|
|
# Target: OpenBSD/sparc
|
|
gdb_target_obs="sparc-tdep.o sparc-nbsd-tdep.o sparc-obsd-tdep.o \
|
|
nbsd-tdep.o bsd-uthread.o \
|
|
ravenscar-thread.o sparc-ravenscar-thread.o"
|
|
;;
|
|
sparc64-*-openbsd*)
|
|
# Target: OpenBSD/sparc64
|
|
gdb_target_obs="sparc64-tdep.o sparc64-nbsd-tdep.o sparc64-obsd-tdep.o \
|
|
sparc-tdep.o sparc-nbsd-tdep.o sparc-obsd-tdep.o \
|
|
nbsd-tdep.o bsd-uthread.o \
|
|
ravenscar-thread.o sparc-ravenscar-thread.o"
|
|
;;
|
|
sparc-*-solaris2* | sparcv9-*-solaris2* | sparc64-*-solaris2*)
|
|
# Target: Solaris UltraSPARC
|
|
gdb_target_obs="sparc64-tdep.o sparc64-sol2-tdep.o sparc-tdep.o \
|
|
sparc-sol2-tdep.o sol2-tdep.o solib-svr4.o \
|
|
ravenscar-thread.o sparc-ravenscar-thread.o"
|
|
;;
|
|
sparc-*-*)
|
|
# Target: SPARC
|
|
gdb_target_obs="sparc-tdep.o \
|
|
ravenscar-thread.o sparc-ravenscar-thread.o"
|
|
gdb_sim=../sim/erc32/libsim.a
|
|
;;
|
|
sparc64-*-*)
|
|
# Target: UltraSPARC
|
|
gdb_target_obs="sparc-tdep.o sparc64-tdep.o \
|
|
ravenscar-thread.o sparc-ravenscar-thread.o"
|
|
;;
|
|
|
|
s12z-*-*)
|
|
# Target: Freescale S12z
|
|
gdb_target_obs="s12z-tdep.o"
|
|
;;
|
|
|
|
tic6x-*-*linux)
|
|
# Target: GNU/Linux TI C6x
|
|
gdb_target_obs="tic6x-tdep.o tic6x-linux-tdep.o solib-dsbt.o \
|
|
glibc-tdep.o linux-tdep.o"
|
|
;;
|
|
|
|
tic6x-*-*)
|
|
# Target: TI C6X
|
|
gdb_target_obs="tic6x-tdep.o"
|
|
;;
|
|
|
|
tilegx-*-linux*)
|
|
# Target: TILE-Gx
|
|
gdb_target_obs="tilegx-tdep.o tilegx-linux-tdep.o solib-svr4.o \
|
|
symfile-mem.o glibc-tdep.o linux-tdep.o"
|
|
build_gdbserver=yes
|
|
;;
|
|
|
|
xstormy16-*-*)
|
|
# Target: Sanyo Xstormy16a processor
|
|
gdb_target_obs="xstormy16-tdep.o"
|
|
# No simulator libraries are needed -- target uses SID.
|
|
;;
|
|
|
|
ft32-*-elf)
|
|
gdb_target_obs="ft32-tdep.o"
|
|
gdb_sim=../sim/ft32/libsim.a
|
|
;;
|
|
|
|
v850*-*-elf | v850*-*-rtems*)
|
|
# Target: NEC V850 processor
|
|
gdb_target_obs="v850-tdep.o"
|
|
gdb_sim=../sim/v850/libsim.a
|
|
;;
|
|
|
|
vax-*-netbsd* | vax-*-knetbsd*-gnu)
|
|
# Target: NetBSD/vax
|
|
gdb_target_obs="vax-tdep.o solib-svr4.o"
|
|
;;
|
|
vax-*-openbsd*)
|
|
# Target: OpenBSD/vax
|
|
gdb_target_obs="vax-tdep.o"
|
|
;;
|
|
vax-*-*)
|
|
# Target: VAX
|
|
gdb_target_obs="vax-tdep.o"
|
|
;;
|
|
|
|
x86_64-*-darwin*)
|
|
# Target: Darwin/x86-64
|
|
gdb_target_obs="${i386_tobjs} \
|
|
i386-darwin-tdep.o amd64-darwin-tdep.o \
|
|
solib-darwin.o"
|
|
;;
|
|
|
|
x86_64-*-dicos*)
|
|
# Target: DICOS/x86-64
|
|
gdb_target_obs="${i386_tobjs} \
|
|
dicos-tdep.o i386-dicos-tdep.o amd64-dicos-tdep.o"
|
|
;;
|
|
x86_64-*-elf*)
|
|
gdb_target_obs="${i386_tobjs}"
|
|
;;
|
|
x86_64-*-linux*)
|
|
# Target: GNU/Linux x86-64
|
|
gdb_target_obs="amd64-linux-tdep.o ${i386_tobjs} \
|
|
i386-linux-tdep.o glibc-tdep.o \
|
|
solib-svr4.o symfile-mem.o linux-tdep.o linux-record.o"
|
|
build_gdbserver=yes
|
|
;;
|
|
x86_64-*-freebsd* | x86_64-*-kfreebsd*-gnu)
|
|
# Target: FreeBSD/amd64
|
|
gdb_target_obs="amd64-fbsd-tdep.o ${i386_tobjs} \
|
|
i386-bsd-tdep.o i386-fbsd-tdep.o"
|
|
;;
|
|
x86_64-*-mingw* | x86_64-*-cygwin*)
|
|
# Target: MingW/amd64
|
|
gdb_target_obs="amd64-windows-tdep.o \
|
|
${i386_tobjs} i386-cygwin-tdep.o \
|
|
windows-tdep.o"
|
|
build_gdbserver=yes
|
|
;;
|
|
x86_64-*-netbsd* | x86_64-*-knetbsd*-gnu)
|
|
# Target: NetBSD/amd64
|
|
gdb_target_obs="amd64-nbsd-tdep.o ${i386_tobjs}"
|
|
;;
|
|
x86_64-*-openbsd*)
|
|
# Target: OpenBSD/amd64
|
|
gdb_target_obs="amd64-obsd-tdep.o ${i386_tobjs} \
|
|
i386-bsd-tdep.o i386-obsd-tdep.o \
|
|
bsd-uthread.o"
|
|
;;
|
|
x86_64-*-rtems*)
|
|
gdb_target_obs="${amd64_tobjs} ${i386_tobjs} i386-bsd-tdep.o"
|
|
;;
|
|
xtensa*-*-*linux*)
|
|
# Target: GNU/Linux Xtensa
|
|
gdb_target_obs="xtensa-linux-tdep.o symfile-mem.o linux-tdep.o"
|
|
build_gdbserver=yes
|
|
;;
|
|
|
|
esac
|
|
|
|
# Put them together.
|
|
|
|
gdb_target_obs="${cpu_obs} ${os_obs} ${gdb_target_obs}"
|
|
|
|
# map target onto default OS ABI
|
|
|
|
case "${targ}" in
|
|
*-*-freebsd* | *-*-kfreebsd*-gnu)
|
|
gdb_osabi=GDB_OSABI_FREEBSD ;;
|
|
*-*-linux* | *-*-uclinux*)
|
|
gdb_osabi=GDB_OSABI_LINUX ;;
|
|
*-*-nto*) gdb_osabi=GDB_OSABI_QNXNTO ;;
|
|
m68*-*-openbsd* | m88*-*-openbsd* | vax-*-openbsd*) ;;
|
|
*-*-openbsd*) gdb_osabi=GDB_OSABI_OPENBSD ;;
|
|
*-*-solaris*) gdb_osabi=GDB_OSABI_SOLARIS ;;
|
|
*-*-*-gnu*) ;; # prevent non-GNU kernels to match the Hurd rule below
|
|
*-*-gnu*) gdb_osabi=GDB_OSABI_HURD ;;
|
|
*-*-mingw32ce*) gdb_osabi=GDB_OSABI_WINCE ;;
|
|
*-*-mingw* | *-*-cygwin*)
|
|
gdb_osabi=GDB_OSABI_CYGWIN ;;
|
|
*-*-dicos*) gdb_osabi=GDB_OSABI_DICOS ;;
|
|
*-*-symbianelf*)
|
|
gdb_osabi=GDB_OSABI_SYMBIAN ;;
|
|
powerpc-*-aix* | rs6000-*-* | powerpc64-*-aix*)
|
|
gdb_osabi=GDB_OSABI_AIX ;;
|
|
esac
|
|
|
|
# Check whether this target supports gcore.
|
|
# Such target has to call set_gdbarch_find_memory_regions.
|
|
gdb_have_gcore=false
|
|
for t in x ${gdb_target_obs}; do
|
|
if test "$t" = linux-tdep.o; then
|
|
gdb_have_gcore=true
|
|
fi
|
|
done
|