fb1e4ffce3
features/gdbserver-regs.xsl, features/number-regs.xsl, features/sort-regs.xsl, features/xscale-iwmmxt.xml: New files. * regformats/arm-with-iwmmxt.dat: Generate. * NEWS: Mention iWMMXt. * gdb.arch/iwmmxt-regs.c, gdb.arch/iwmmxt-regs.exp: New. * Makefile.in (OBS): Add $(XML_BUILTIN). (XML_DIR, XML_TARGET, XML_FILES, XML_BUILTIN): New. (clean): Update. (target.xml, xml-builtin.c, stamp-xml, arm-with-iwmmxt.o) (arm-with-iwmmxt.c): New. * config.in, configure: Regenerate. * configure.ac: Check for iWMMXt. Handle srv_xmltarget, srv_xmlbuiltin, and srv_xmlfiles. Define USE_XML. * configure.srv: Mention srv_xmltarget and srv_xmlfiles. (arm*-*-linux*): Add iWMMXt and regset support. * linux-arm-low.c (PTRACE_GETWMMXREGS, PTRACE_SETWMMXREGS): Define. (arm_fill_gregset, arm_store_gregset, arm_fill_wmmxregset) (arm_store_wmmxregset, target_regsets): New. * server.c (get_features_xml): Take annex argument. Check builtin XML documents. (handle_query): Handle multiple annexes.
137 lines
4.1 KiB
Text
137 lines
4.1 KiB
Text
# Mappings from configuration triplets to gdbserver build options.
|
|
# This is invoked from the autoconf-generated configure script, to
|
|
# produce the appropriate Makefile substitutions.
|
|
|
|
# This file sets the following shell variables:
|
|
# srv_regobj The register protocol appropriate for this target.
|
|
# srv_tgtobj Any other target-specific modules appropriate
|
|
# for this target.
|
|
# srv_xmltarget The XML source file to use for target.xml, if any.
|
|
# srv_xmlfiles Any other XML files which should be available for
|
|
# gdbserver in this configuration.
|
|
#
|
|
# In addition, on GNU/Linux the following shell variables will be set:
|
|
# srv_linux_regsets Set to "yes" if ptrace(PTRACE_GETREGS) and friends
|
|
# may be available on this platform; unset otherwise.
|
|
# They will only be used if <sys/ptrace.h> defines
|
|
# PTRACE_GETREGS.
|
|
# srv_linux_usrregs Set to "yes" if we can get at registers via
|
|
# PTRACE_PEEKUSR / PTRACE_POKEUSR.
|
|
|
|
# Input is taken from the "${target}" variable.
|
|
|
|
case "${target}" in
|
|
arm*-*-linux*) srv_tgtobj="linux-low.o linux-arm-low.o"
|
|
srv_linux_usrregs=yes
|
|
srv_linux_regsets=yes
|
|
srv_linux_thread_db=yes
|
|
if test $gdb_cv_arm_iwmmxt = yes; then
|
|
srv_regobj=arm-with-iwmmxt.o
|
|
srv_xmltarget=arm-with-iwmmxt.xml
|
|
srv_xmlfiles="arm-core.xml xscale-iwmmxt.xml"
|
|
else
|
|
srv_regobj=reg-arm.o
|
|
fi
|
|
;;
|
|
crisv32-*-linux*) srv_regobj=reg-crisv32.o
|
|
srv_tgtobj="linux-low.o linux-crisv32-low.o"
|
|
srv_linux_regsets=yes
|
|
srv_linux_thread_db=yes
|
|
;;
|
|
cris-*-linux*) srv_regobj=reg-cris.o
|
|
srv_tgtobj="linux-low.o linux-cris-low.o"
|
|
srv_linux_usrregs=yes
|
|
srv_linux_thread_db=yes
|
|
;;
|
|
i[34567]86-*-cygwin*) srv_regobj=reg-i386.o
|
|
srv_tgtobj="win32-i386-low.o"
|
|
;;
|
|
i[34567]86-*-linux*) srv_regobj=reg-i386-linux.o
|
|
srv_tgtobj="linux-low.o linux-i386-low.o i387-fp.o"
|
|
srv_linux_usrregs=yes
|
|
srv_linux_regsets=yes
|
|
srv_linux_thread_db=yes
|
|
;;
|
|
i[34567]86-*-mingw*) srv_regobj=reg-i386.o
|
|
srv_tgtobj="win32-i386-low.o"
|
|
srv_mingw=yes
|
|
;;
|
|
ia64-*-linux*) srv_regobj=reg-ia64.o
|
|
srv_tgtobj="linux-low.o linux-ia64-low.o"
|
|
srv_linux_usrregs=yes
|
|
;;
|
|
m32r*-*-linux*) srv_regobj=reg-m32r.o
|
|
srv_tgtobj="linux-low.o linux-m32r-low.o"
|
|
srv_linux_usrregs=yes
|
|
srv_linux_thread_db=yes
|
|
;;
|
|
m68*-*-linux*) srv_regobj=reg-m68k.o
|
|
srv_tgtobj="linux-low.o linux-m68k-low.o"
|
|
srv_linux_usrregs=yes
|
|
srv_linux_regsets=yes
|
|
srv_linux_thread_db=yes
|
|
;;
|
|
m68*-*-uclinux*) srv_regobj=reg-m68k.o
|
|
srv_tgtobj="linux-low.o linux-m68k-low.o"
|
|
srv_linux_usrregs=yes
|
|
srv_linux_regsets=yes
|
|
srv_linux_thread_db=yes
|
|
;;
|
|
mips*64*-*-linux*) srv_regobj=reg-mips64.o
|
|
srv_tgtobj="linux-low.o linux-mips-low.o"
|
|
srv_linux_regsets=yes
|
|
srv_linux_usrregs=yes
|
|
srv_linux_thread_db=yes
|
|
;;
|
|
mips*-*-linux*) srv_regobj=reg-mips.o
|
|
srv_tgtobj="linux-low.o linux-mips-low.o"
|
|
srv_linux_regsets=yes
|
|
srv_linux_usrregs=yes
|
|
srv_linux_thread_db=yes
|
|
;;
|
|
powerpc64-*-linux*) srv_regobj=reg-ppc64.o
|
|
srv_tgtobj="linux-low.o linux-ppc64-low.o"
|
|
srv_linux_usrregs=yes
|
|
srv_linux_regsets=yes
|
|
srv_linux_thread_db=yes
|
|
;;
|
|
powerpc-*-linux*) srv_regobj=reg-ppc.o
|
|
srv_tgtobj="linux-low.o linux-ppc-low.o"
|
|
srv_linux_usrregs=yes
|
|
srv_linux_regsets=yes
|
|
srv_linux_thread_db=yes
|
|
;;
|
|
s390-*-linux*) srv_regobj=reg-s390.o
|
|
srv_tgtobj="linux-low.o linux-s390-low.o"
|
|
srv_linux_usrregs=yes
|
|
srv_linux_regsets=yes
|
|
srv_linux_thread_db=yes
|
|
;;
|
|
s390x-*-linux*) srv_regobj=reg-s390x.o
|
|
srv_tgtobj="linux-low.o linux-s390-low.o"
|
|
srv_linux_usrregs=yes
|
|
srv_linux_regsets=yes
|
|
srv_linux_thread_db=yes
|
|
;;
|
|
sh*-*-linux*) srv_regobj=reg-sh.o
|
|
srv_tgtobj="linux-low.o linux-sh-low.o"
|
|
srv_linux_usrregs=yes
|
|
srv_linux_thread_db=yes
|
|
;;
|
|
spu*-*-*) srv_regobj=reg-spu.o
|
|
srv_tgtobj="spu-low.o"
|
|
;;
|
|
x86_64-*-linux*) srv_regobj=reg-x86-64-linux.o
|
|
srv_tgtobj="linux-low.o linux-x86-64-low.o i387-fp.o"
|
|
srv_linux_regsets=yes
|
|
srv_linux_thread_db=yes
|
|
;;
|
|
xscale*-*-linux*) srv_regobj=reg-arm.o
|
|
srv_tgtobj="linux-low.o linux-arm-low.o"
|
|
srv_linux_usrregs=yes
|
|
srv_linux_thread_db=yes
|
|
;;
|
|
*) echo "Error: target not supported by gdbserver."
|
|
exit 1
|
|
;;
|
|
esac
|