aboutsummaryrefslogtreecommitdiff
path: root/gdb/regformats
AgeCommit message (Collapse)AuthorFilesLines
2009-01-03 Updated copyright notices for most files.Joel Brobecker2-2/+2
2008-11-19gdb/Bob Wilson1-32/+2
* xtensa-config.c (rmap): Remove entries for ar32 through ar63. Add threadptr, scompare1, mmid, epc5, epc6, epc7, eps5, eps6, eps7, excsave5, excsave6, excsave7, cpenable, and vecbase registers. (xtensa_submask0, xtensa_submask1, xtensa_submask2) (xtensa_submask3, xtensa_submask4, xtensa_submask5, xtensa_submask6) (xtensa_submask7, xtensa_submask8, xtensa_submask9, xtensa_submask10) (xtensa_submask11, xtensa_submask12, xtensa_submask13, xtensa_submask14) (xtensa_submask15): Adjust register numbers. * xtensa-xtregs.c (XTENSA_ELF_XTREG_SIZE): Change to 4. (xtensa_regmap_table): Add entry for scompare1. * regformats/reg-xtensa.dat: Remove ar32 through ar63. Add threadptr and scompare1. gdb/gdbserver/ * xtensa-xtregs.c (XTENSA_ELF_XTREG_SIZE): Change to 4. (xtensa_regmap_table): Add entry for scompare1.
2008-11-18gdb/Thiago Jung Bauermann6-0/+662
* features/Makefile (rs6000/powerpc-isa205-32l-expedite, rs6000/powerpc-isa205-altivec32l-expedite, powerpc-isa205-vsx32l-expedite, rs6000/powerpc-isa205-64l-expedite, rs6000/powerpc-isa205-altivec64l-expedite, powerpc-isa205-vsx64l-expedite): New variables. * regformats/rs6000/powerpc-isa205-32l.dat: Generate. * regformats/rs6000/powerpc-isa205-altivec32l.dat: Generate. * regformats/rs6000/powerpc-isa205-vsx32l.dat: Generate. * regformats/rs6000/powerpc-isa205-64l.dat: Generate. * regformats/rs6000/powerpc-isa205-altivec64l.dat: Generate. * regformats/rs6000/powerpc-isa205-vsx64l.dat: Generate. gdbserver/ * Makefile.in (powerpc-isa205-32l.o, powerpc-isa205-32l.c, powerpc-isa205-altivec32l.o, powerpc-isa205-altivec32l.c, powerpc-isa205-vsx32l.o, powerpc-isa205-vsx32l.c, powerpc-isa205-64l.o, powerpc-isa205-64l.c, powerpc-isa205-altivec64l.o, powerpc-isa205-altivec64l.c, powerpc-isa205-vsx64l.o, powerpc-isa205-vsx64l.c): New targets. * configure.srv (powerpc*-*-linux*): Add ISA 2.05 object files and XML target descriptions. * linux-ppc-low.c (ppc_arch_setup): Init registers with 64-bit FPSCR when inferior is running on an ISA 2.05 or later processor. Add special case to return offset for full 64-bit slot of FPSCR when in 32-bits.
2008-11-142008-11-14 Daniel Gutson <dgutson@codesourcery.com>Daniel Jacobowitz1-0/+91
* configure.tgt (sparc64-*-linux*): Added gdbserver support. * regformats/reg-sparc64.dat: New file. gdbserver/ 2008-11-14 Daniel Gutson <dgutson@codesourcery.com> * Makefile.in (SFILES, clean): Added sparc64 files. (reg-sparc64.o, reg-sparc64.c): New. * configure.srv (sparc*-*-linux*): New configuration. * linux-low.c (regsets_fetch_inferior_registers): Swap ptrace syscall arguments for SPARC. (regsets_store_inferior_registers): Likewise. * linux-sparc-low.c: New file.
2008-08-15 * rs6000-tdep: Include "features/rs6000/powerpc-vsx32.c".Luis Machado2-0/+286
Include "features/rs6000/powerpc-vsx64.c". (ppc_supply_vsxregset): New function. (ppc_collect_vsxregset): New function. (IS_VSX_PSEUDOREG): New macro. (IS_EFP_PSEUDOREG): New macro. (vsx_register_p): New function. (ppc_vsx_support_p): New function. (rs6000_builtin_type_vec128): New function. (rs6000_register_name): Hide upper halves of vs0~vs31. Return correct names for VSX registers and EFPR registers. (rs6000_pseudo_register_type): Return correct types for VSX and EFPR registers. (rs6000_pseudo_register_reggroup_p): Return correct group for VSX and EFPR registers. (ppc_pseudo_register_read): Rename to dfp_pseudo_register_read. (ppc_pseudo_register_write): Rename to dfp_pseudo_register_write. (vsx_pseudo_register_read): New function. (vsx_pseudo_register_write): New function. (efpr_pseudo_register_read): New function. (efpr_pseudo_register_write): New function. (rs6000_pseudo_register_read): Call new VSX and EFPR read functions. (rs6000_pseudo_register_write): Call new VSX and EFPR write functions. (rs6000_gdbarch_init): Declare have_vsx. Initialize new upper half VSX registers. Initialize VSX-related and EFPR-related pseudo-registers variables. Adjust the number of pseudo registers accordingly. * ppc-linux-nat.c: Define PTRACE_GETVSXREGS, PTRACE_SETVSXREGS and SIZEOF_VSRREGS. (gdb_vsxregset_t): New type. (have_ptrace_getsetvsxregs): New variable. (fetch_vsx_register): New function. (fetch_register): Handle VSX registers. (fetch_vsx_registers): New function. (fetch_ppc_registers): Handle VSX registers. (store_ppc_registers): Handle VSX registers. (store_vsx_register): New function. (store_register): Handle VSX registers. (store_vsx_registers): New function. (ppc_linux_read_description): Handle VSX-enabled inferiors. (gdb_vsxregset_t): New type. (supply_vsxregset): New function. (fill_vsxregset): New function. * ppc-tdep.h (vsx_register_p): New prototype. (vsx_support_p): New prototype. (ppc_vsr0_regnum): New variable. (ppc_vsr0_upper_regnum): Likewise. (ppc_efpr0_regnum): Likewise. (ppc_builtin_type_vec128): New type. (ppc_num_vsrs): New constant. (ppc_num_vshrs): New constant. (ppc_num_efprs): Likewise. Define POWERPC_VEC_VSX PPC_VSR0_UPPER_REGNUM and PPC_VSR31_UPPER_REGNUM. (ppc_supply_vsxregset): New prototype. (ppc_collect_vsxregset): New prototype. * ppc-linux-tdep.c: Include "features/rs6000/powerpc-vsx32l.c" Include "features/rs6000/powerpc-vsx64l.c". (_initialize_ppc_linux_tdep): Initialize VSX-enabled targets. (ppc_linux_regset_sections): Add new ".reg-ppc-vsx" field. (ppc32_linux_vsxregset): New 32-bit VSX-enabled regset. (ppc_linux_regset_from_core_section): Handle VSX core section. (ppc_linux_core_read_description): Support VSX-enabled core files. * ppc-linux-tdep.h: Declare *tdesc_powerpc_vsx32l Declare tdesc_powerpc_vsx64l * corelow.c (get_core_register_section): Support VSX-enabled core files. * features/rs6000/power-vsx.xml: New VSX descriptions. * features/rs6000/powerpc-vsx32.xml: New file. * features/rs6000/powerpc-vsx32l.xml: New file. * features/rs6000/powerpc-vsx64.xml: New file. * features/rs6000/powerpc-vsx64l.xml: New file. * features/rs6000/powerpc-vsx32.c: New file (generated). * features/rs6000/powerpc-vsx32l.c: New file (generated). * features/rs6000/powerpc-vsx64.c: New file (generated). * features/rs6000/powerpc-vsx64l.c: New file (generated). * features/Makefile: Updated with new descriptions. * regformats/rs6000/powerpc-vsx32l.dat: New file (generated). * regformats/rs6000/powerpc-vsx64l.dat: New file (generated). * testsuite/gdb.arch/vsx-regs.c: New source file. * testsuite/gdb.arch/vsx-regs.exp: New testcase. * testsuite/lib/gdb.exp (skip_vsx_tests): New function.
2008-05-03ChangeLog:Ulrich Weigand5-17/+25
* Makefile.in (ppc_linux_tdep_h): New macro. (powerpc_32l_c, powerpc_altivec32_c, powerpc_altivec32l_c): Likewise. (powerpc_64l_c, powerpc_altivec64_c, powerpc_altivec64l_c): Likewise. (powerpc_e500l_c): Likewise. (ppc-linux-nat.o): Update dependencies. (ppc-linux-tdep.o): Update dependencies. (rs6000-tdep.o): Update dependencies. * ppc-tdep.h (ppc_linux_memory_remove_breakpoint): Remove. (ppc_linux_svr4_fetch_link_map_offsets): Remove. (ppc_linux_gregset, ppc_linux_fpregset): Move to ppc-linux-tdep.h (ppc_supply_reg, ppc_collect_reg): Add prototypes. (tdesc_powerpc_e500): Remove. * rs6000.c: Include "features/rs6000/powerpc-altivec32.c" and "features/rs6000/powerpc-altivec64.c". (ppc_supply_reg, ppc_collect_reg): Make global. (variants): Use tdesc_powerpc_32 for "powerpc" and tdesc_powerpc_altivec64 for "powerpc64". (_initialize_rs6000_tdep): Initialize AltiVec descriptions. * ppc-linux-tdep.h: New file. * ppc-linux-tdep.c: Include "ppc-linux-tdep.c". Include "features/rs6000/powerpc-32l.c". Include "features/rs6000/powerpc-altivec32l.c". Include "features/rs6000/powerpc-64l.c". Include "features/rs6000/powerpc-altivec64l.c". Include "features/rs6000/powerpc-e500l.c". (ppc_linux_supply_gregset): New function. (ppc_linux_collect_gregset): Handle orig_r3 and trap registers. (ppc32_linux_gregset): Use ppc_linux_supply_gregset. (ppc64_linux_gregset): Likewise. (ppc_linux_sigtramp_cache): Handle orig_r3 and trap registers. (ppc_linux_trap_reg_p): New function. (ppc_linux_write_pc): New function. (ppc_linux_core_read_description): New function. (ppc_linux_init_abi): Install ppc_linux_write_pc and ppc_linux_core_read_description. Install orig_r3 and trap registers if present in the target description. (_initialize_ppc_linux_tdep): Initialize Linux target descriptions. * ppc-linux-nat.c: Include "ppc-linux-tdep.h". (PT_ORIG_R3, PT_TRAP): Define if necessary. (ppc_register_u_addr): Handle orig_r3 and trap registers. (fetch_ppc_registers): Likewise. (store_ppc_registers): Likewise. (store_register): Likewise. (ppc_linux_read_description): Check whether AltiVec is supported. Check whether inferior is 32-bit or 64-bit. Return the appropriate Linux target description. * features/Makefile (WHICH): Use rs6000/powerpc-32l and rs6000/powerpc-altivec32l instead of rs6000/powerpc-32. Use rs6000/powerpc-64l and rs6000/powerpc-altivec64l instead of rs6000/powerpc-64. Use rs6000/powerpc-e500l instead of rs6000/powerpc-e500. Update -expedite variables accordingly. * features/rs6000/power-spe.xml: Use regnum 73 for "acc". * features/rs6000/powerpc-32.xml: Do not include power-altivec.xml. * features/rs6000/powerpc-64.xml: Do not include power-altivec.xml. * features/rs6000/powerpc-e500.c: Regenerate. * features/rs6000/powerpc-32.c: Regenerate. * features/rs6000/powerpc-64.c: Regenerate. * features/rs6000/power-linux.xml: New file. * features/rs6000/power64-linux.xml: New file. * features/rs6000/powerpc-32l.xml: New file. * features/rs6000/powerpc-altivec32l.xml: New file. * features/rs6000/powerpc-64l.xml: New file. * features/rs6000/powerpc-altivec64l.xml: New file. * features/rs6000/powerpc-e500l.xml: New file. * features/rs6000/powerpc-32l.c: New (generated) file. * features/rs6000/powerpc-altivec32l.c: New (generated) file. * features/rs6000/powerpc-64l.c: New (generated) file. * features/rs6000/powerpc-altivec64l.c: New (generated) file. * features/rs6000/powerpc-e500l.xml: New (generated) file. * regformats/reg-ppc.dat: Remove. * regformats/reg-ppc64.dat: Remove. * regformats/rs6000/powerpc-32.dat: Remove. * regformats/rs6000/powerpc-64.dat: Remove. * regformats/rs6000/powerpc-e500.dat: Remove. * regformats/rs6000/powerpc-32l.dat: New (generated) file. * regformats/rs6000/powerpc-altivec32l.dat: New (generated) file. * regformats/rs6000/powerpc-64l.dat: New (generated) file. * regformats/rs6000/powerpc-altivec64l.dat: New (generated) file. * regformats/rs6000/powerpc-e500l.dat: New (generated) file. gdbserver/ChangeLog: * configure.srv (powerpc*-*-linux*): Set srv_regobj to powerpc-32l.o, powerpc-altivec32l.o, powerpc-e500l.o, powerpc-64l.o, and powerpc-altivec64l.o. Remove rs6000/powerpc-32.xml, rs6000/powerpc-64.xml, and rs6000/powerpc-e500.xml; add rs6000/powerpc-32l.xml, rs6000/powerpc-altivec32l.xml, rs6000/powerpc-e500l.xml, rs6000/powerpc-64l.xml, rs6000/powerpc-altivec64l.xml, rs6000/power-linux.xml, and rs6000/power64-linux.xml to srv_xmlfiles. * Makefile.in (reg-ppc.o, reg-ppc.c): Remove, replace by ... (powerpc-32l.o, powerpc-32l.c): ... these new rules. (powerpc-32.o, powerpc-32.c): Remove, replace by ... (powerpc-altivec32l.o, powerpc-altivec32l.c): ... these new rules. (powerpc-e500.o, powerpc-e500.c): Remove, replace by ... (powerpc-e500l.o, powerpc-e500l.c): ... these new rules. (reg-ppc64.o, reg-ppc64.c): Remove, replace by ... (powerpc-64l.o, powerpc-64l.c): ... these new rules. (powerpc-64.o, powerpc-64.c): Remove, replace by ... (powerpc-altivec64l.o, powerpc-altivec64l.c): ... these new rules. (clean): Update. * linux-ppc-low.c (init_registers_ppc): Remove, replace by ... (init_registers_powerpc_32l): ... this new prototype. (init_registers_powerpc_32): Remove, replace by ... (init_registers_powerpc_altivec32l): ... this new prototype. (init_registers_powerpc_e500): Remove, replace by ... (init_registers_powerpc_e500l): ... this new prototype. (init_registers_ppc64): Remove, replace by ... (init_registers_powerpc_64l): ... this new prototype. (init_registers_powerpc_64): Remove, replace by ... (init_registers_powerpc_altivec64l): ... this new prototype. (ppc_num_regs): Set to 73. (PT_ORIG_R3, PT_TRAP): Define if necessary. (ppc_regmap, ppc_regmap_e500): Add values for orig_r3 and trap. (ppc_cannot_store_register): Handle orig_r3 and trap. (ppc_arch_setup): Update init_registers_... calls. (ppc_fill_gregset): Handle orig_r3 and trap. * inferiors.c (clear_inferiors): Reset current_inferior.
2008-03-27ChangeLog:Ulrich Weigand3-3/+3
* features/Makefile (%.dat): Set xmltarget to the base filename of the XML source, without subdirectory. * regformats/rs6000/powerpc-32.dat: Regenerate. * regformats/rs6000/powerpc-64.dat: Regenerate. * regformats/rs6000/powerpc-e500.dat: Regenerate. gdbserver/ChangeLog: * server.c (get_features_xml): Fix inverted condition. (handle_query): Always support qXfer:feature:read.
2008-02-28ChangeLog:Ulrich Weigand2-2/+2
* regformats/reg-ppc.dat: Rename "ps" to "msr". * regformats/reg-ppc64.dat: Likewise. gdbserver/ChangeLog: * configure.srv [powerpc64-*-linux*]: Add all files mentioned for powerpc-*-linux* to srv_regobj and reg_xmlfiles. * linux-ppc-low.c (ppc_get_pc): Support bi-arch operation. (ppc_set_pc): Likewise. (ppc_arch_setup): New function. (ppc_fill_gregset): Call ppc_collect_ptrace_register instead of collect_register. (the_low_target): Use ppc_arch_setup as arch_setup initializer.
2008-02-28ChangeLog:Ulrich Weigand12-0/+24
* features/Makefile (%.dat): Emit xmltarget statement. * regformats/regdat.sh: Support xmltarget and xmlarch statments. Generate code to set gdbserver_xmltarget in init_registers_${name}. * regformats/arm-with-iwmmxt.dat: Regenerate. * regformats/mips64-linux.dat: Regenerate. * regformats/mips-linux.dat: Regenerate. * regformats/rs6000/powerpc-32.dat: Regenerate. * regformats/rs6000/powerpc-64.dat: Regenerate. * regformats/rs6000/powerpc-e500.dat: Regenerate. * regformats/reg-arm.dat: Add xmlarch statement. * regformats/reg-i386.dat: Likewise. * regformats/reg-i386-linux.dat: Likewise. * regformats/reg-x86-64-linux.dat: Likewise. * regformats/reg-spu.dat: Likewise. gdbserver/ChangeLog: * regcache.h (gdbserver_xmltarget): Add extern declaration. * server.c (gdbserver_xmltarget): Define. (get_features_xml): Use it to replace "target.xml" and arch_string. * configure.srv: Remove srv_xmltarget. Add XML files that were mentioned there to srv_xmlfiles instead. Remove conditional tests on gdb_cv_arm_iwmmxt, gdb_cv_ppc_altivec, gdb_cv_ppc_spe; set srv_xmlfiles and srv_regobj to include all possible choices. * configure.ac (srv_xmltarget): Remove. (srv_xmlfiles): Do not add "target.xml". (gdb_cv_arm_iwmmxt, gdb_cv_ppc_altivec, gdb_cv_ppc_spe): Remove checks for supplementary target information. * configure: Regenerate. * Makefile.in (XML_TARGET): Remove. (target.xml): Remove rule. (clean): Do not clean up target.xml. (.PRECIOUS): Do not mention target.xml. * target.h (struct target_ops): Remove arch_string member. * linux-low.c (linux_arch_string): Remove. (linux_target_ops): Remove arch_string initializer. * linux-low.h (struct linux_target_ops): Remove arch_string member. * linux-i386-low.c (the_low_target): Remove arch_string initializer. * linux-x86-64-low.c (the_low_target): Remove arch_string initializer. * spu-low.c (spu_arch_string): Remove. (spu_target_ops): Remove arch_string initializer. * win32-low.c (win32_arch_string): Remove. (win32_target_ops): Remove arch_string initializer. * win32-low.h (struct win32_target_ops): Remove arch_string member. * win32-arm-low.c (the_low_target): Remove arch_string initializer. * win32-i368-low.c (the_low_target): Remove arch_string initializer.
2008-02-27gdb/ChangeLog:Ulrich Weigand4-4/+4
* regformats/regdat.sh: Rename init_registers function in generated file to init_registers_${name}. * regformats/reg-crisv32.dat: Set "name" to crisv32. * regformats/reg-ppc64.dat: Set "name" to ppc64. * regformats/reg-s390x.dat: Set "name" to s390x. gdbserver/ChangeLog: * server.h (init_registers): Remove prototype. * linux-low.h (struct linux_target_ops): Add arch_setup field. * linux-low.c (initialize_low): Call the_low_target.arch_setup () instead of init_registers (). * linux-arm-low.c (init_registers_arm): Add prototype. (init_registers_arm_with_iwmmxt): Likewise. (the_low_target): Add initializer for arch_setup field. * linux-cris-low.c (init_registers_cris): Add prototype. (the_low_target): Add initializer for arch_setup field. * linux-crisv32-low.c (init_registers_crisv32): Add prototype. (the_low_target): Add initializer for arch_setup field. * linux-i386-low.c (init_registers_i386_linux): Add prototype. (the_low_target): Add initializer for arch_setup field. * linux-ia64-low.c (init_registers_ia64): Add prototype. (the_low_target): Add initializer for arch_setup field. * linux-m32r-low.c (init_registers_m32r): Add prototype. (the_low_target): Add initializer for arch_setup field. * linux-m68k-low.c (init_registers_m68k): Add prototype. (the_low_target): Add initializer for arch_setup field. * linux-mips-low.c (init_registers_mips_linux): Add prototype. (init_registers_mips64_linux): Likewise. (the_low_target): Add initializer for arch_setup field. * linux-ppc-low.c (init_registers_ppc): Add prototype. (init_registers_powerpc_32, init_registers_powerpc_e500): Likewise. (the_low_target): Add initializer for arch_setup field. * linux-ppc64-low.c (init_registers_ppc64): Add prototype. (init_registers_powerpc_64): Likewise. (the_low_target): Add initializer for arch_setup field. * linux-s390-low.c (init_registers_s390): Add prototype. (init_registers_s390x): Likewise. (the_low_target): Add initializer for arch_setup field. * linux-sh-low.c (init_registers_sh): Add prototype. (the_low_target): Add initializer for arch_setup field. * linux-x86-64-low.c (init_registers_x86_64_linux): Add prototype. (the_low_target): Add initializer for arch_setup field. * linux-xtensa-low.c (init_registers_xtensa): Add prototype. (the_low_target): Add initializer for arch_setup field. * win32-low.h (struct win32_target_ops): Add arch_setup field. * win32-low.c (initialize_low): Call the_low_target.arch_setup () instead of init_registers (). * win32-arm-low.c (init_registers_arm): Add prototype. (the_low_target): Add initializer for arch_setup field. * win32-i386-low.c (init_registers_i386): Add prototype. (the_low_target): Add initializer for arch_setup field. * spu-low.c (init_registers_spu): Add prototype. (initialize_low): Call initialie_registers_spu () instead of initialize_registers ().
2008-02-112008-02-11 Maxim Grigoriev <maxim2405@gmail.com>Maxim Grigoriev1-0/+77
* NEWS (New native configurations): Xtensa GNU/Linux. (New targets): Xtensa GNU/Linux. * Makefile.in (ALL_TARGET_OBS): Add xtensa-linux-nat.o and xtensa-linux-tdep.o (ALLDEPFILES): Add xtensa-linux-tdep.c and xtensa-linux-nat.c (xtensa-linux-nat.o, xtensa-linux-tdep.o): New dependencies. * configure.tgt (xtensa*-*-linux*): New entry. * xtensa-config.c (xtensa_tdep): New variable. (xtensa_config_byte_order, xtensa_config_tdep): Removed. (rmap): Change format based on new macro XTREG. (XTENSA_CONFIG_INSTANTIATE): Use new macro defined in xtensa-tdep.h. * xtensa-linux-nat.c: New. * xtensa-linux-tdep.c: New. * xtensa-xtregs.c: New. * xtensa-tdep.h (xtensa_elf_gregset_t): Update. (XTENSA_ELF_NGREG, XTREG, XTREG_END, XTENSA_GDBARCH_TDEP_INSTANTIATE) (XCHAL_NUM_CONTEXTS, XCHAL_HAVE_EXCEPTIONS): New macros. (xtensa_register_t): New field coprocessor. (XTENSA_REGISTER_FLAGS_PRIVILEGED): Name spelling corrected. * xtensa-tdep.c (xtensa_config_tdep, xtensa_config_byte_order): Removed. (xtensa_pseudo_register_read, xtensa_pseudo_register_write): Update to handle privileged registers. (xtensa_supply_gregset) Remove exccause and excvaddr registers. (xtensa_push_dummy_call): Set windowstart register correctly. (call0_analyze_prologue): Initialize xtensa_default_isa. (xtensa_derive_tdep): New. (xtensa_gdbarch_init): Get rid of xtensa_config_byte_order and xtensa_config_tdep, use XCHAL_HAVE_BE and xtensa_tdep instead. Call xtensa_derive_tdep(). * config/xtensa/linux.mh: New. * regformats/reg-xtensa.dat: New.
2008-01-01 Updated copyright notices for most files.Daniel Jacobowitz2-2/+2
2007-10-15 * Makefile.in (clean): Remove new files.Daniel Jacobowitz3-0/+292
(powerpc-32.o, powerpc-32.c, powerpc-e500.o, powerpc-e500.c) (powerpc-64.o, powerpc-64.c): New rules. * configure.srv: Use alternate register sets for powerpc64-*-linux* with AltiVec, powerpc-*-linux* with AltiVec, and powerpc-*-linux* with SPE. * linux-ppc-low.c (ppc_regmap): Do not fetch the FP registers for SPE targets. (ppc_cannot_store_register): Do not check for FPSCR for SPE targets. (PTRACE_GETVRREGS, PTRACE_SETVRREGS, SIZEOF_VRREGS, ppc_fill_vrregset) (ppc_store_vrregset, PTRACE_GETEVRREGS, PTRACE_SETEVRREGS) (struct gdb_evrregset_t, ppc_fill_evrregset, ppc_store_evrregset): New. (target_regsets): Add AltiVec and SPE register sets. * configure.ac: Check for AltiVec and SPE. * linux-ppc64-low.c (PTRACE_GETVRREGS, PTRACE_SETVRREGS, SIZEOF_VRREGS) (ppc_fill_vrregset, ppc_store_vrregset): New. (target_regsets): Add AltiVec register set. * configure: Regenerated. * features/Makefile (WHICH): Add PowerPC register definitions. (rs6000/powerpc-32-expedite, rs6000/powerpc-e500-expedite) (rs6000/powerpc-64-expedite): New macros. ($(outdir)/%.dat): Handle subdirectories. * regformats/rs6000/powerpc-32.dat, regformats/rs6000/powerpc-64.dat, regformats/rs6000/powerpc-e500.dat: New generated files.
2007-08-23 * config/djgpp/djconfig.sh: Switch license to GPLv3.Joel Brobecker1-3/+2
* copyright.sh: Likewise. * gdb-events.sh: Likewise. * gdb_gcore.sh: Likewise. * gdb_mbuild.sh: Likewise. * gdbarch.sh: Likewise. * observer.sh: Likewise. * features/feature_to_c.sh: Likewise. * regformats/regdat.sh: Likewise.
2007-08-23 Switch the license of all .c files to GPLv3.Joel Brobecker1-4/+2
Switch the license of all .h files to GPLv3. Switch the license of all .cc files to GPLv3.
2007-07-24 * regformats/reg-spu.dat: Fix order of npc, id registers.Ulrich Weigand1-1/+1
2007-06-13Check in missed deletions.Daniel Jacobowitz2-224/+0
2007-06-13 * features/Makefile: Generate regformats for mips-linux andDaniel Jacobowitz2-0/+152
mips64-linux. * features/sort-regs.xsl: Correct typo. * regformats/reg-mips.dat, regformats/reg-mips64.dat: Delete. * regformats/mips-linux.dat, regformats/mips64-linux.dat: New generated files. * Makefile.in (clean): Clean new files instead of deleted ones. (reg-mips.o, reg-mips.c, reg-mips64.o, reg-mips64.c): Delete. (mips-linux.o, mips-linux.c, mips64-linux.o, mips64-linux.c): New rules. * configure.srv: Specify XML files and new regformats for MIPS and MIPS64 GNU/Linux. * linux-mips-low.c (mips_num_regs): Set to only used registers. (mips_regmap): Do not fetch $0. Remove unused registers. Add an entry for the restart register. (mips_cannot_fetch_register, mips_cannot_store_register) (mips_reinsert_addr, mips_fill_fpregset, mips_store_fpregset): Update register names to match the XML descriptions. (mips_fill_gregset, mips_store_gregset): Likewise. Handle the restart register instead of $0.
2007-02-26 * arm-tdep.c (arm_scan_prologue): Do not record FPA register savesDaniel Jacobowitz1-22/+22
if there are no FPA registers. (arm_dwarf_reg_to_regnum): New function. (arm_register_type, arm_register_name): Return minimal values for unsupported registers. (arm_register_sim_regno): Handle iWMMXt registers. (arm_gdbarch_init): Record missing FPA registers if indicated by a target description. Recognize iWMMXt registers. Only register "info float" for FPA. Use ARM_NUM_REGS. Register arm_dwarf_reg_to_regnum. * arm-tdep.h (enum gdb_regnum): Add ARM_NUM_REGS and iWMMXt constants. (struct gdbarch_tdep): Add have_fpa_registers. * features/xscale-iwmmxt.xml: Update capitalization. * regformats/arm-with-iwmmxt.dat: Regenerated. * src/gdb/doc/gdb.texinfo (Standard Target Features): Mention case insensitivity. (ARM Features): Describe org.gnu.gdb.xscale.iwmmxt. * gdb.arch/iwmmxt-regs.c, gdb.arch/iwmmxt-regs.exp: Update register capitalization.
2007-02-08 * features/Makefile, features/arm-with-iwmmxt.xml,Daniel Jacobowitz1-0/+51
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.
2007-01-09Copyright updates for 2007.Daniel Jacobowitz2-2/+2
2006-11-28gdb/gdbserver/Daniel Jacobowitz1-0/+112
* Makefile.in (clean): Remove reg-mips64.c. (reg-mips64.c, reg-mips64.o): New rules. * configure.srv: Handle mips64. Include regset support for mips. * linux-mips-low.c (union mips_register): New. (mips_get_pc, mips_set_pc, mips_reinsert_addr): Use it. (mips_breakpoint, mips_breakpoint_at): Use int. (mips_collect_register, mips_supply_register) (mips_collect_register_32bit, mips_supply_register_32bit) (mips_fill_gregset, mips_store_gregset, mips_fill_fpregset) (mips_store_fpregset, target_regsets): New. * thread-db.c (thread_db_get_tls_address): Use uintptr_t. gdb/ * regformats/reg-mips64.dat: New file.
2006-11-22ChangeLog:Ulrich Weigand1-0/+132
* configure.tgt: Enable gdbserver for SPU target. * configure.ac: Build gdbserver when gdb_native is yes. * configure: Regenerate. * regformats/reg-spu.dat: New file. gdbserver/ChangeLog: * configure.srv: Add target "spu*-*-*". * Makefile.in (clean): Remove reg-spu.c. (reg-spu.c, reg-spu.o, spu-low.o): Add dependencies. * spu-low.c: New file.
2006-08-19gdb/Daniel Jacobowitz1-0/+60
* Makefile.in (amd64_linux_tdep_h): New. (amd64-linux-nat.o, amd64-linux-tdep.o): Update. * amd64-linux-nat.c (amd64_linux_gregset64_reg_offset): Add ORIG_RAX. (_initialize_amd64_linux_nat): Set amd64_native_gregset64_num_regs. * amd64-linux-tdep.c (amd64_linux_register_name) (amd64_linux_register_type, amd64_linux_register_reggroup_p) (amd64_linux_write_pc): New. (amd64_linux_init_abi): Use them, and update num_regs. * amd64-linux-tdep.h: New file. * amd64-tdep.c (amd64_register_name, amd64_register_type): Make public. * amd64-tdep.h (amd64_register_name, amd64_register_type): New prototypes. * regformats/reg-x86-64-linux.dat: New file. gdb/testsuite/ * Makefile.in (clean): Clean reg-x86-64-linux.c. (reg-x86-64-linux.o, reg-x86-64-linux.c): New. * configure.srv (x86_64-*-linux*): Use reg-x86-64-linux.o. * linux-x86-64-low.c (x86_64_regmap): Include ORIG_RAX. (x86_64_fill_gregset, x86_64_store_gregset): Skip floating point registers.
2005-10-25 * regformats/reg-ia64.dat: Remove NAT registers.Andreas Schwab1-128/+0
gdbserver: * server.c (main): Allocate mem_buf with PBUFSIZ bytes. * linux-ia64-low.c (ia64_regmap): Remove NAT registers. (ia64_num_regs): Reduce to 462.
2005-05-28gdb/Daniel Jacobowitz1-0/+76
* configure.tgt (powerpc64-*-linux*): Enable gdbserver. * regformats/reg-ppc64.dat: New file. gdbserver/ * Makefile.in (SFILES): Add linux-ppc64-low.c. (linux-ppc64-low.o, reg-ppc64.c, reg-ppc64.o): New targets. * configure.srv: Add powerpc64-*-linux*. * linux-ppc64-low.c: New file.
2005-04-152005-04-15 Kei Sakamoto <sakamoto.kei@renesas.com>Kazuhiro Inaoka1-0/+27
* regformats/reg-m32r.dat: New file.
2005-02-012005-02-01 Orjan Friberg <orjanf@axis.com>Orjan Friberg2-0/+89
* regformats/reg-cris.dat: New file with register definitions for CRIS. * regformats/reg-crisv32.dat: Ditto for CRISv32.
2004-02-182004-02-17 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>Jim Blandy2-32/+0
Committed by Jim Blandy <jimb@redhat.com>. * config/s390/nm-linux.h: Update comments. Do not include "solib.h". (KERNEL_U_ADDR, REGISTER_U_ADDR, U_REGS_OFFSET): Remove. (FETCH_INFERIOR_REGISTERS): Define. * config/s390/s390.mh (NATDEPFILES): Remove core-aout.o and core-regset.o. * config/s390/s390x.mt: Remove. * config/s390/tm-s390.h: Remove. * config/s390/tm-linux.h: Do not include "s390/tm-s390.h". (TARGET_ELF64): Remove. (SKIP_TRAMPOLINE_CODE): Do not undefine. * configure.tgt [s390-*-*, s390x-*-*]: Merge into single s390*-*-* case; always set gdb_target to s390. * regformats/reg-s390.dat: Remove control registers. * regformats/reg-s390x.dat: Likewise. * s390-tdep.h: New file. * s390-nat.c: Do not include <asm/processor.h> or <value.h>. Include "inferior.h" and "s390-tdep.h". Remove private definition of offsetof. (s390_register_u_addr): Remove. (regmap_gregset, regmap_fpregset): Define. (supply_gregset, fill_gregset): Reimplement. (supply_fpregset, fill_fpregset): Likewise. (s390_inferior_tid): New function. (fetch_regs, store_regs, fetch_fpregs, store_fpregs): Likewise. (fetch_inferior_registers, store_inferior_registers): Likewise. * s390-tdep.c: Do not define S390_TDEP. Include "defs.h" instead of <defs.h>. Include "reggroups.h", "regset.h", and "s390-tdep.h". Global replace of S390_GP0_REGNUM by S390_R0_REGNUM. Global replace of S390_FP0_REGNUM by S390_F0_REGNUM. (struct gdbarch_tdep): Define. (struct s390_register_info): Define. (s390_register_info): New variable. (s390_register_name): Reimplement. (s390_register_type): New function. (s390_register_raw_size, s390x_register_raw_size): Remove. (s390_cannot_fetch_register): Remove. (s390_register_byte): Remove. (s390_register_virtual_type, s390x_register_virtual_type): Remove. (s390_dwarf_regmap): New variable. (s390_dwarf_reg_to_regnum): New function. (s390_stab_reg_to_regnum): Remove. (s390_pseudo_register_read, s390_pseudo_register_write): New functions. (s390x_pseudo_register_read, s390x_pseudo_register_write): Likewise. (s390_convert_register_p): Likewise. (s390_register_to_value, s390_value_to_register): Likewise. (s390_register_reggroup_p): Likewise. (s390_regmap_gregset, s390x_regmap_gregset, s390_regmap_fpregset, s390_gregset, s390x_gregset, s390_fpregset): New variables. (s390_supply_regset, s390_regset_from_core_section): New functions. (GDB_TARGET_IS_ESAME): Move here from tm-s390.h. (S390_FPR_SIZE): Likewise. (S390_GPR_SIZE): Likewise. Redefine in terms of GDB_TARGET_IS_ESAME. Global replace of DEPRECATED_REGISTER_SIZE by S390_GPR_SIZE. (S390_NUM_GPRS): Move here from tm-s390.h. (S390_NUM_FPRS): Likewise. (s390_in_function_epilogue_p): New function. (s390_is_sigreturn): Replace S390_PSW_ADDR_SIZE by S390_GPR_SIZE. Replace S390_PC_REGNUM by S390_PSWA_REGNUM. (s390_gdbarch_init): Allocate and set up gdbarch_tdep structure. Replace s390_stab_reg_to_regnum by s390_dwarf_reg_to_regnum. Replace S390_FP_REGNUM by S390_SP_REGNUM. Remove calls to: set_gdbarch_deprecated_max_register_raw_size, set_gdbarch_deprecated_max_register_virtual_size, set_gdbarch_deprecated_register_byte, set_gdbarch_cannot_fetch_register, set_gdbarch_cannot_store_register, set_gdbarch_deprecated_register_size, set_gdbarch_deprecated_register_raw_size, set_gdbarch_deprecated_register_virtual_size, set_gdbarch_deprecated_register_virtual_type, set_gdbarch_deprecated_register_bytes. Add calls to: set_gdbarch_num_pseudo_regs, set_gdbarch_register_type, set_gdbarch_convert_register_p, set_gdbarch_register_to_value, set_gdbarch_value_to_register, set_gdbarch_register_reggroup_p, set_gdbarch_regset_from_core_section, set_gdbarch_pseudo_register_read, set_gdbarch_pseudo_register_write, set_gdbarch_in_function_epilogue_p. * Makefile.in (s390-nat.o, s390-tdep.o): Update dependencies. (s390_tdep_h): New variable.
2004-01-10* x86-64-tdep.c (amd64_register_info): Add %cs and %ss. AdjustMark Kettenis1-0/+2
register numbers in comments. * x86-64-tdep.h: Update copyright year. (X86_64_ST0_REGNUM, X86_64_XMM0_REGNUM, X86_64_XMM1_REGNUM): Adjust for addition of %cs and %ss. * amd64fbsd-nat.c: Update copyright year. (reg_offset): Add register offsets for %cs and %ss. * amd64fbsd-tdep.c: Update copyright year. (amd64fbsd_r_reg_offset): Add register offsets for %cs and %ss. (amd64fbsd_sc_reg_offset): Likewise. * x86-64-linux-nat.c: Update copyright year. (x86_64_linux_gregset64_reg_offset): Add register offsets for %cs and %ss. * amd64nbsd-nat.c: Update copyright year. (amd64nbsd32_r_reg_offset): Add register offsets for %cs and %ss. * amd64nbsd-tdep.c: Update copyright year. (amd64nbsd_r_reg_offset): Add register offsets for %cs and %ss. * x86-64-linux-tdep.c: Update copyright year. (user_to_gdb_regmap): Add mapping for %cs and %ss. (x86_64_linux_sc_reg_offset): Adjust for addition of %cs and %ss. * regformats/reg-x86-64.dat: Add %cs and %ss.
2003-01-04 * regformats/reg-m68k.dat: Remove fpcode and fpflags.Daniel Jacobowitz1-2/+0
2002-04-112002-04-11 Daniel Jacobowitz <drow@mvista.com>Daniel Jacobowitz1-1/+1
* gdbserver/linux-low.c (usr_store_inferior_registers): Support registers which are allowed to fail to store. * gdbserver/linux-low.h (linux_target_ops): Likewise. * gdbserver/linux-ppc-low.c (ppc_regmap): Support FPSCR. (ppc_cannot_store_register): FPSCR may not be storable. * regformats/reg-ppc.dat: Support FPSCR.
2002-03-27 * x86-64-tdep.h (X86_64_NUM_REGS, X86_64_NUM_GREGS): Delete #defines.Michal Ludvig1-2/+6
(x86_64_num_regs, x86_64_num_gregs): Added extern variables. * x86-64-linux-nat.c (x86_64_regmap): Swapped RBX <> RDX, added DS, ES, FS, GS. (x86_64_linux_dr_get_status, supply_gregset), (fill_gregset): Changed X86_64_NUM_GREGS to x86_64_num_gregs. * x86-64-tdep.c (x86_64_register_raw_size_table): Delete. (x86_64_register_info_table): Add. (X86_64_NUM_REGS, X86_64_NUM_GREGS): Add. (x86_64_register_raw_size, x86_64_register_virtual_type), (x86_64_register_name, _initialize_x86_64_tdep): Changed to reflect new general x86_64_register_info_table. (i386_gdbarch_init): gdbarch_register_bytes is now set dynamicaly during initialization. * regformats/reg-x86-64.dat: Synced with changes to registers above. * gdbserver/linux-x86-64-low.c: Ditto.
2002-02-282002-02-27 Daniel Jacobowitz <drow@mvista.com>Daniel Jacobowitz2-0/+138
* gdbserver/linux-s390-low.c: New file. * regformats/reg-s390.dat: New file. * regformats/reg-s390x.dat: New file. * gdbserver/configure.srv: Add S/390. * gdbserver/Makefile.in: Add S/390. * configure.tgt: Enable gdbserver for S/390.
2002-02-272002-02-27 Daniel Jacobowitz <drow@mvista.com>Daniel Jacobowitz1-0/+53
* gdbserver/acconfig.h: New file. * gdbserver/i387-fp.c: New file. * gdbserver/i387-fp.h: New file. * gdbserver/linux-x86-64.c: New file. * regformats/reg-x86-64.dat: New file. * configure.tgt: Add x86_64-*-linux* gdbserver support. & gdbserver/configure.srv: Add x86_64-*-linux* and regset support. * gdbserver/configure.in: Add support for regsets. * gdbserver/config.in: Regenerate. * gdbserver/configure: Regenerate. * gdbserver/Makefile.in: Likewise. Add $(linux_low_h). * gdbserver/linux-low.h: New file. * gdbserver/linux-low.c: Include "linux-low.h". Add support for regsets. * gdbserver/linux-arm-low.c: Include "linux-low.h". * gdbserver/linux-ia64-low.c: Include "linux-low.h". * gdbserver/linux-m68k-low.c: Include "linux-low.h". * gdbserver/linux-mips-low.c: Include "linux-low.h". * gdbserver/linux-ppc-low.c: Include "linux-low.h". * gdbserver/linux-sh-low.c: Include "linux-low.h". * gdbserver/linux-i386-low.c: Include "linux-low.h". Include "i387-fp.h". Add PTRACE_GETREGS and friends. * gdbserver/regcache.c (supply_register): New function. (supply_register_by_name): New function. (collect_register): New function. (collect_register_by_name): New function.
2002-02-272002-02-27 Daniel Jacobowitz <drow@mvista.com>Daniel Jacobowitz1-0/+44
* regformats/reg-i386-linux.dat: New file, with $orig_eax. * gdbserver/Makefile.in: Add rules for reg-i386-linux.o. * gdbserver/configure.srv: Change i386-*-linux* to use reg-i386-linux.o.
2002-02-142002-02-14 Daniel Jacobowitz <drow@mvista.com>Daniel Jacobowitz2-0/+22
* gdbserver/Makefile.in: Add regformats directory to INCLUDE_CFLAGS, and remove unused $(INCLUDE_DIR). Add regcache.c to OBS. Add generated register protocol files to clean target. Update dependencies for new objects, obsolete old target code. * gdbserver/linux-low.c: Remove all platform-specific code to new files. Remove various dead code. Update to use regcache functionality. * gdbserver/remote-utils.c (fromhex): Add return statement to quiet warning. (putpkt): Dynamically allocate buf2 because PBUFSIZ is no longer constant. (input_interrupt): Add integer parameter to match prototype of a signal handler. (outreg): Use register_data (). (prepare_resume_reply): Use gdbserver_expedite_regs. * gdbserver/server.c (main): Dynamically allocate own_buf because PBUFSIZ is no longer constant. Use registers_to_string () and registers_from_string (). * gdbserver/server.h: No longer include "defs.h". Add prototypes for error (), fatal (), and warning (). Update definition of PBUFSIZ to use regcache functionality. Add include guard. * gdbserver/utils.c (fatal): Add missing ``const''. (warning): New function. * regformats/regdat.sh: Include "regcache.h" in generated files. Provide init_registers () function. * regformats/regdef.h: Add prototype for set_register_cache (). Add include guard. * gdbserver/linux-arm-low.c: New file. * gdbserver/linux-i386-low.c: New file. * gdbserver/linux-ia64-low.c: New file. * gdbserver/linux-m68k-low.c: New file. * gdbserver/linux-mips-low.c: New file. * gdbserver/linux-ppc-low.c: New file. * gdbserver/linux-sh-low.c: New file. * gdbserver/regcache.c: New file. * gdbserver/regcache.h: New file. * gdbserver/low-linux.c: Removed obsolete file.
2002-02-042002-02-04 Daniel Jacobowitz <drow@mvista.com>Daniel Jacobowitz1-1/+1
* regformats/regdat.sh: Add braces to the definition of expedite_regs_${arch}.
2002-02-042002-02-04 Daniel Jacobowitz <drow@mvista.com>Daniel Jacobowitz1-0/+5
* regformats/regdef.h (struct reg): Add comment describing the requirements for offset and size fields.
2002-02-012002-02-01 Daniel Jacobowitz <drow@mvista.com>Daniel Jacobowitz9-0/+1147
* regformats/reg-arm.dat: New file. * regformats/reg-i386.dat: New file. * regformats/reg-ia64.dat: New file. * regformats/reg-m68k.dat: New file. * regformats/reg-mips.dat: New file. * regformats/reg-ppc.dat: New file. * regformats/reg-sh.dat: New file. * regformats/regdef.h: New file. * regformats/regdat.sh: New file.