* NEWS: Document target described register support for PowerPC.
[deliverable/binutils-gdb.git] / gdb / ChangeLog
index 21d2bc4a5ba754827c071de8cfbdaf36793172ec..38a3993053ec8c1aebf11c8a1e232578a2ca7b1c 100644 (file)
@@ -1,3 +1,191 @@
+2007-10-15  Daniel Jacobowitz  <dan@codesourcery.com>
+
+       * NEWS: Document target described register support for PowerPC.
+       * ppc-tdep.h: Remove ppc_spr constants.
+       (struct gdbarch_tdep): Remove regs, ppc_sr0_regnum, and
+       ppc_builtin_type_vec128 members.
+       (PPC_R0_REGNUM, PPC_F0_REGNUM, PPC_PC_REGNUM, PPC_MSR_REGNUM)
+       (PPC_CR_REGNUM, PPC_LR_REGNUM, PPC_CTR_REGNUM, PPC_XER_REGNUM)
+       (PPC_FPSCR_REGNUM, PPC_MQ_REGNUM, PPC_SPE_UPPER_GP0_REGNUM)
+       (PPC_SPE_ACC_REGNUM, PPC_SPE_FSCR_REGNUM, PPC_VR0_REGNUM)
+       (PPC_VSCR_REGNUM, PPC_VRSAVE_REGNUM, PPC_NUM_REGS): New constants.
+       * rs6000-tdep.c: Include preparsed descriptions.
+       (init_sim_regno_table): Do not iterate over pseudo registers.
+       Look up segment registers by name.  Use sim_spr_register_name
+       for SPRs.
+       (rs6000_register_sim_regno): Call init_sim_regno_table here.
+       (rs6000_builtin_type_vec128): Delete.
+       (rs6000_register_name): Only handle SPE pseudo registers and upper
+       halves.  Call tdesc_register_name for everything else.
+       (rs6000_register_type): Delete.  Replace with...
+       (rs6000_pseudo_register_type): ...this new function.  Only handle
+       SPE pseudo registers.
+       (rs6000_register_reggroup_p): Delete.  Replace with...
+       (rs6000_pseudo_register_reggroup_p): ...this new function.  Only
+       handle SPE pseudo registers.
+       (rs6000_convert_register_p): Use ppc_fp0_regnum instead of
+       "struct reg".
+       (rs6000_register_to_value, rs6000_value_to_register): Remove check
+       of reg->fpr.
+       (e500_register_reggroup_p): Delete.
+       (STR, R, R4, R8, R16, F, P8, R32, R64, R0, A4, S, S4, SN4, S64)
+       (COMMON_UISA_REGS, PPC_UISA_SPRS, PPC_UISA_NOFP_SPRS)
+       (PPC_SEGMENT_REGS, PPC_OEA_SPRS, PPC_ALTIVEC_REGS, PPC_SPE_GP_REGS)
+       (PPC_SPE_UPPER_GP_REGS, PPC_EV_PSEUDO_REGS): Delete macros.
+       (registers_powerpc, registers_403, registers_403GC, registers_505)
+       (registers_860, registers_601, registers_602, registers_603)
+       (registers_604, registers_750, registers_7400, registers_e500): Delete
+       variables.
+       (struct variant): Delete nregs, npregs, num_tot_regs, and regs.  Add
+       tdesc.
+       (tot_num_registers, num_registers, num_pseudo_registers): Delete.
+       (variants): Delete outdated comment.  Use standard target descriptions
+       instead of "struct reg" arrays.
+       (init_variants): Delete.
+       (rs6000_gdbarch_init): Do not guess word size from the BFD
+       architecture if we have a target description.  Select a variant
+       before creating a new architecture.  Use the variant's target
+       description if the target did not define a register layout.
+       Validate target-supplied registers.  Reject mismatches.  Use
+       fixed register numbers and new constants instead of magic
+       numbers.  Call set_gdbarch_ps_regnum.  Call tdesc_use_registers.
+       (_initialize_rs6000_tdep): Initialize the preparsed target
+       descriptions.
+       * target-descriptions.c (tdesc_predefined_types): Add int128 and
+       uint128.
+       (tdesc_find_register_early): New function.
+       (tdesc_numbered_register): Use it.
+       (tdesc_register_size): New function.
+       (tdesc_use_registers): Take a target_desc argument.  Do not use
+       gdbarch_target_desc.
+       * target-descriptions.h (tdesc_use_registers): Update prototype
+       and comment.
+       (tdesc_register_size): New prototype.
+       * Makefile.in (powerpc_32_c, powerpc_403_c, powerpc_403gc_c)
+       (powerpc_505_c, powerpc_601_c, powerpc_602_c, powerpc_603_c)
+       (powerpc_604_c, powerpc_64_c, powerpc_7400_c, powerpc_750_c)
+       (powerpc_860_c, powerpc_e500_c, rs6000_c): New macros.
+       (rs6000-tdep.o): Update.
+       * arm-tdep.c (arm_gdbarch_init): Update call to tdesc_use_registers.
+       * m68k-tdep.c (m68k_gdbarch_init): Likewise.
+       * mips-tdep.c (mips_gdbarch_init): Likewise.
+
+2007-10-15  Daniel Jacobowitz  <dan@codesourcery.com>
+
+       * features/rs6000/powerpc-32.c, features/rs6000/powerpc-403.c,
+       features/rs6000/powerpc-403gc.c, features/rs6000/powerpc-505.c,
+       features/rs6000/powerpc-601.c, features/rs6000/powerpc-602.c,
+       features/rs6000/powerpc-603.c, features/rs6000/powerpc-604.c,
+       features/rs6000/powerpc-64.c, features/rs6000/powerpc-7400.c,
+       features/rs6000/powerpc-750.c, features/rs6000/powerpc-860.c,
+       features/rs6000/powerpc-e500.c, features/rs6000/rs6000.c: New
+       generated files.
+
+2007-10-15  Daniel Jacobowitz  <dan@codesourcery.com>
+
+       * features/rs6000/power-altivec.xml, features/rs6000/power-core.xml,
+       features/rs6000/power-fpu.xml, features/rs6000/power-oea.xml,
+       features/rs6000/power-spe.xml, features/rs6000/power64-core.xml: New
+       feature descriptions for standard PowerPC register sets.
+
+       * features/rs6000/powerpc-32.xml, features/rs6000/powerpc-403.xml,
+       features/rs6000/powerpc-403gc.xml, features/rs6000/powerpc-505.xml,
+       features/rs6000/powerpc-601.xml, features/rs6000/powerpc-602.xml,
+       features/rs6000/powerpc-603.xml, features/rs6000/powerpc-604.xml,
+       features/rs6000/powerpc-64.xml, features/rs6000/powerpc-7400.xml,
+       features/rs6000/powerpc-750.xml, features/rs6000/powerpc-860.xml,
+       features/rs6000/powerpc-e500.xml, features/rs6000/rs6000.xml: New
+       target descriptions for PowerPC processors.
+
+2007-10-15  Daniel Jacobowitz  <dan@codesourcery.com>
+
+       * target-descriptions.c (tdesc_predefined_types): New.
+       (tdesc_named_type): Use it.
+       (tdesc_type_id, maint_print_c_tdesc_cmd): New functions.
+       (_intialize_target_descriptions): Register "maint print c-tdesc".
+       * features/Makefile (XMLTOC, CFILES, GDB): New macros.
+       (cfiles, %.c): New rules.
+       * features/arm-with-iwmmxt.c, features/mips-linux.c,
+       features/mips64-linux.c: New generated files.
+
+       * arm-linux-nat.c: Include preparsed description instead of
+       "xml-support.h".
+       (super_xfer_partial, arm_linux_xfer_partial): Remove.
+       (arm_linux_read_description): New function.
+       (_initialize_arm_linux_nat): Set to_read_description instead of
+       to_xfer_partial.  Initialize preparsed description.
+       * config/arm/linux.mh (TDEP_XML): Delete.
+       * mips-linux-nat.c: Include preparsed descriptions instead of
+       "xml-support.h".
+       (super_xfer_partial, mips_linux_xfer_partial): Remove.
+       (mips_linux_read_description): New function.
+       (_initialize_mips_linux_nat): Set to_read_description instead of
+       to_xfer_partial.  Initialize preparsed description.
+       * config/mips/linux.mh (TDEP_XML): Delete.
+       * Makefile.in (XMLFILES): Remove $(TDEP_XML).
+       (features_headers, arm_with_iwmmxt_c, mips_linux_c)
+       (mips64_linux_c): New macros.
+       (arm-linux-nat.o, mips-linux-nat.o): Update.
+
+2007-10-15  Pierre Muller  <muller@ics.u-strasbg.fr>
+
+       * cp-abi.c (set_cp_abi_as_auto_default): ARI fix:
+       Replace xasprintf by xstrprintf.
+       symfile-mem.c (add_vsyscall_page): Ditto.
+
+2007-10-12  Ulrich Weigand  <uweigand@de.ibm.com>
+
+       * ia64-linux-nat.c (ia64_register_addr): Add gdbarch parameter,
+       replacing use of global current_gdbarch.
+       (ia64_cannot_fetch_register, ia64_cannot_store_register): Likewise.
+       (ia64_linux_fetch_register, ia64_linux_store_register): Update callers.
+
+       * ia64-tdep.c (SIGCONTEXT_REGISTER_ADDRESS): Remove macro.
+       (ia64_sigtramp_frame_init_saved_regs): Add next_frame parameter,
+       replace uses of SIGCONTEXT_REGISTER_ADDRESS.
+       (ia64_sigtramp_frame_cache): Update caller.
+
+2007-10-12  Ulrich Weigand  <uweigand@de.ibm.com>
+
+       * gdbarch.sh (deprecated_use_struct_convention): Remove.
+       (extract_return_value, store_return_value): Remove.
+       (return_value): Remove default implementation.
+       * gdbarch.c, gdbarch.h: Regenerate.
+
+       * stack.c (return_command): Remove compatibility hack.
+       * arch-utils.c (legacy_return_value): Remove.
+       * arch-utils.h (legacy_return_value): Likewise.
+
+       * arch-utils.c (always_use_struct_convention): Remove.
+       * arch-utils.h (always_use_struct_convention): Likewise.
+       * value.c (generic_use_struct_convention): Remove.
+       * defs.h (generic_use_struct_convention): Likewise.
+
+2007-10-12  Ulrich Weigand  <uweigand@de.ibm.com>
+
+       * avr-tdep.c (avr_return_value): New function.
+       (avr_gdbarch_init): Call set_gdbarch_return_value instead of
+       set_gdbarch_extract_return_value.
+
+       * fvr-tdep.c (frv_return_value): New function.
+       (frv_gdbarch_init): Call set_gdbarch_return_value instead of
+       set_gdbarch_extract_return_value, set_gdbarch_store_return_value,
+       and set_gdbarch_deprecated_use_struct_convention.
+
+       * ia64-tdep.c (ia64_use_struct_convention): Make static.
+       Add check for structure, union, or array types.
+       (ia64_extract_return_value): Make static.
+       (ia64_store_return_value): Make static.  Support multi-word values.
+       (ia64_return_value): New function.
+       (ia64_gdbarch_init): Call set_gdbarch_return_value instead of
+       set_gdbarch_extract_return_value, set_gdbarch_store_return_value,
+       and set_gdbarch_deprecated_use_struct_convention.
+
+2007-10-12  Joel Brobecker  <brobecker@adacore.com>
+
+       * solib-target.c (solib_target_parse_libraries)
+       [HAVEHAVE_LIBEXPAT not defined]: Fix thinko in return type.
+
 2007-10-12  Jim Blandy  <jimb@codesourcery.com>
 
        * serial.h (struct serial_ops): Document read_prim to return zero
This page took 0.024887 seconds and 4 git commands to generate.