aboutsummaryrefslogtreecommitdiff
path: root/gdb/aix-thread.c
AgeCommit message (Collapse)AuthorFilesLines
2004-05-10Back out change. The NetBSD changes need Jason Thorpe's approval, butJim Blandy1-29/+13
he hasn't reviewed it yet.
2004-05-10* ppc-tdep.h (struct gdbarch_tdep): Change definition ofJim Blandy1-13/+29
ppc_fp0_regnum and ppc_fpscr_regnum: if they are -1, then this processor variant lacks those registers. (ppc_floating_point_unit_p): Change description to make it clear that this returns info about the ISA, not the ABI. * rs6000-tdep.c (ppc_floating_point_unit_p): Decide whether to return true or false by checking tdep->ppc_fp0_regnum and tdep->ppc_fpscr_regnum. The original code replicated the BFD arch/mach switching done in rs6000_gdbarch_init; it's better to keep that logic there, and just check the results here. (rs6000_gdbarch_init): On the E500, set tdep->ppc_fp0_regnum and tdep->ppc_fpscr_regnum to -1 to indicate that we have no floating-point registers. (ppc_supply_fpregset, ppc_collect_fpregset) (rs6000_push_dummy_call, rs6000_extract_return_value) (rs6000_store_return_value): Assert that we have floating-point registers. (rs6000_dwarf2_stab_reg_to_regnum): Add FIXME. (rs6000_frame_cache): Don't note the locations at which floating-point registers were saved if we have no fprs. * aix-thread.c (supply_fprs, fill_fprs): Assert that we have FP registers. (fetch_regs_user_thread, fetch_regs_kernel_thread) (store_regs_user_thread, store_regs_kernel_thread): Only call supply_fprs / fill_fprs if we actually have floating-point registers. (special_register_p): Check ppc_fpscr_regnum before matching against it. (supply_sprs64, supply_sprs32, fill_sprs64, fill_sprs32): Don't supply / collect fpscr if we don't have it. * ppc-bdm.c: #include "gdb_assert.h". (bdm_ppc_fetch_registers, bdm_ppc_store_registers): Assert that we have floating-point registers, since I can't test this code on FP-free systems to adapt it. * ppc-linux-nat.c (ppc_register_u_addr): Don't match against the fpscr and floating point register numbers if they don't exist. (fetch_register): Assert that we have floating-point registers before we reach the code that handles them. (store_register): Same. And use tdep instead of calling gdbarch_tdep again. (fill_fpregset): Don't try to collect FP registers and fpscr if we don't have them. (ppc_linux_sigtramp_cache): Don't record the saved locations of fprs and fpscr if we don't have them. (ppc_linux_supply_fpregset): Don't supply fp regs and fpscr if we don't have them. * ppcnbsd-nat.c: #include "gdb_assert.h". (getfpregs_supplies): Assert that we have floating-point registers. * ppcnbsd-tdep.c (ppcnbsd_supply_fpreg, ppcnbsd_fill_fpreg): Same. * ppcobsd-tdep.c: #include "gdb_assert.h". (ppcobsd_supply_gregset, ppcobsd_collect_gregset): Assert that we have floating-point registers. * rs6000-nat.c (regmap): Don't match against the fpscr and floating point register numbers if they don't exist. (fetch_inferior_registers, store_inferior_registers, fetch_core_registers): Only fetch / store / supply the floating-point registers and the fpscr if we have them. * Makefile.in (ppc-bdm.o, ppc-linux-nat.o, ppcnbsd-nat.o) (ppcobsd-tdep.o): Update dependencies.
2004-05-07* aix-thread.c (fetch_regs_kernel_thread, fill_gprs64,Jim Blandy1-8/+12
fill_gprs32, store_regs_kernel_thread): Use tdep->ppc_gp0_regnum to recognize gpr regnums, instead of assuming that tdep->ppc_fp0_regnum marks the end of the general-purpose registers.
2004-05-05* config/rs6000/tm-rs6000.h (FP0_REGNUM): Document that thisJim Blandy1-10/+18
should no longer be used in code specific to the RS6000 and its derivatives. * ppc-tdep.h (struct gdbarch_tdep): Add 'ppc_fp0_regnum' member. * rs6000-tdep.c (rs6000_gdbarch_init): Initialize tdep->ppc_fp0_regnum. (ppc_supply_fpregset, ppc_collect_fpregset) (rs6000_push_dummy_call, rs6000_extract_return_value) (rs6000_dwarf2_stab_reg_to_regnum, rs6000_store_return_value) (rs6000_frame_cache): Use tdep->ppc_fp0_regnum instead of FP0_REGNUM. * aix-thread.c (supply_fprs, fetch_regs_kernel_thread) (fill_gprs64, fill_gprs32, fill_fprs, store_regs_kernel_thread): Same. * ppc-bdm.c (bdm_ppc_fetch_registers, bdm_ppc_fetch_registers, bdm_ppc_store_registers): Same. * ppc-linux-nat.c (ppc_register_u_addr, fetch_register) (store_register, fill_fpregset): Same. * ppc-linux-tdep.c (ppc_linux_sigtramp_cache) (ppc_linux_supply_fpregset): Same. * ppcnbsd-nat.c (getfpregs_supplies): Same. * ppcnbsd-tdep.c (ppcnbsd_supply_fpreg, ppcnbsd_fill_fpreg): Same. * ppc-sysv-tdep.c (ppc_sysv_abi_push_dummy_call, do_ppc_sysv_return_value, ppc64_sysv_abi_push_dummy_call, ppc64_sysv_abi_return_value): Same. * rs6000-nat.c (regmap, fetch_inferior_registers) (store_inferior_registers, fetch_core_registers): Same.
2004-05-04* config/rs6000/tm-rs6000.h (FPLAST_REGNUM): Delete #definition.Jim Blandy1-3/+7
* ppc-tdep.h (ppc_num_fprs): New enum constant. * aix-thread.c (fetch_regs_kernel_thread, fill_fprs, store_regs_kernel_thread): Use FP0_REGNUM + ppc_num_fprs, not FPLAST_REGNUM. * ppc-bdm.c (bdm_ppc_fetch_registers, bdm_ppc_store_registers): Same. * ppc-linux-nat.c (ppc_register_u_addr): Same. * rs6000-nat.c (regmap, fetch_inferior_registers) (store_inferior_registers): Same.
2004-05-04* aix-thread.c (fill_fprs): Fix off-by-one error comparing regnoJim Blandy1-1/+1
with FPLAST_REGNUM.
2004-04-212004-04-21 Andrew Cagney <cagney@redhat.com>Andrew Cagney1-4/+5
* annotate.h (deprecated_annotate_starting_hook) (deprecated_annotate_stopped_hook) (deprecated_annotate_exited_hook) (deprecated_annotate_signal_hook) (deprecated_annotate_signalled_hook): Deprecate. * tracepoint.h (deprecated_create_tracepoint_hook) (deprecated_delete_tracepoint_hook) (deprecated_modify_tracepoint_hook) (deprecated_trace_find_hook) (deprecated_trace_start_stop_hook): Deprecate. * target.h (deprecated_target_new_objfile_hook): Deprecate. * remote.h (deprecated_target_resume_hook) (deprecated_target_wait_loop_hook): Deprecate. * gdbcore.h (deprecated_exec_file_display_hook) (deprecated_file_changed_hook): Deprecate. * frame.h (deprecated_selected_frame_level_changed_hook): Deprecate. * defs.h (deprecated_modify_breakpoint_hook) (deprecated_command_loop_hook, deprecated_show_load_progress) (deprecated_print_frame_info_listing_hook) (deprecated_query_hook, deprecated_warning_hook) (deprecated_flush_hook, deprecated_create_breakpoint_hook) (deprecated_delete_breakpoint_hook) (deprecated_interactive_hook, deprecated_registers_changed_hook) (deprecated_readline_begin_hook, deprecated_readline_hook) (deprecated_readline_end_hook, deprecated_register_changed_hook) (deprecated_memory_changed_hook, deprecated_init_ui_hook) (deprecated_context_hook, deprecated_target_wait_hook) (deprecated_attach_hook, deprecated_detach_hook) (deprecated_call_command_hook, deprecated_set_hook) (deprecated_error_hook, deprecated_error_begin_hook) (deprecated_ui_load_progress_hook): Deprecate. * valops.c, uw-thread.c, utils.c, tui/tui-io.c: Update. * tui/tui-hooks.c, tracepoint.c, top.c, thread-db.c: Update. * target.c, symfile.c, stack.c, sol-thread.c, rs6000-nat.c: Update. * remote.c, remote-mips.c, regcache.c, mi/mi-interp.c: Update. * main.c, interps.c, infcmd.c, hpux-thread.c, frame.c: Update. * exec.c, dsrec.c, d10v-tdep.c, corefile.c, complaints.c: Update. * cli/cli-script.c, cli/cli-setshow.c, breakpoint.c: Update. * annotate.c, aix-thread.c: Update.
2003-10-022003-10-02 Andrew Cagney <cagney@redhat.com>Andrew Cagney1-3/+3
* gdbarch.sh (DEPRECATED_REGISTER_RAW_SIZE): Rename REGISTER_RAW_SIZE. * gdbarch.h, gdbarch.c: Re-generate. * aix-thread.c, alpha-tdep.h, arm-tdep.c, core-sol2.c: Update. * cris-tdep.c, dve3900-rom.c, findvar.c, frame.c: Update. * hppa-tdep.c, hppab-nat.c, hppah-nat.c, hppam3-nat.c: Update. * hpux-thread.c, i386gnu-nat.c, ia64-aix-nat.c: Update. * ia64-linux-nat.c, ia64-tdep.c, infcmd.c, infptrace.c: Update. * infrun.c, irix5-nat.c, lynx-nat.c, mips-linux-tdep.c: Update. * mips-nat.c, mips-tdep.c, mipsv4-nat.c, mn10300-tdep.c: Update. * monitor.c, ns32k-tdep.c, ppc-linux-nat.c, regcache.c: Update. * remote-e7000.c, remote-mips.c, remote-sim.c: Update. * remote-vxmips.c, remote-vxsparc.c, remote.c: Update. * rom68k-rom.c, rs6000-nat.c, rs6000-tdep.c, s390-tdep.c: Update. * sh64-tdep.c, sparc-nat.c, sparc-tdep.c, stack.c: Update. * target.c, tracepoint.c, v850-tdep.c, v850ice.c, valops.c: Update. * vax-tdep.c, vax-tdep.h, x86-64-tdep.c, xstormy16-tdep.c: Update. * config/m68k/tm-delta68.h, config/m68k/tm-vx68.h: Update. * config/sparc/tm-sparc.h, config/sparc/tm-sparclynx.h: Update. 2003-10-02 Andrew Cagney <cagney@redhat.com> * gdbint.texinfo (Target Architecture Definition): Rename REGISTER_RAW_SIZE to DEPRECATED_REGISTER_RAW_SIZE. * gdb.texinfo (Packets, Stop Reply Packets): Ditto. * gdbint.texinfo (Target Architecture Definition): Rename 2003-10-02 Andrew Cagney <cagney@redhat.com> * mi-main.c: Rename REGISTER_RAW_SIZE to DEPRECATED_REGISTER_RAW_SIZE.
2002-08-22 * aix-thread.c (aix_thread_detach): Disable thread debugging onCorinna Vinschen1-1/+1
detach to allow reinitialization.
2002-07-27Delete disabled code.Kevin Buettner1-8/+0
2002-07-26 * aix-thread.c (special_register_p, supply_sprs64, supply_sprs32)Kevin Buettner1-13/+35
(fetch_regs_user_thread, fetch_regs_kernel_thread, fill_sprs64) (fill_sprs32, store_regs_user_thread, store_regs_kernel_thread): Add support for the fpscr register. * rs6000-nat.c (regmap, fetch_inferior_registers) (store_inferior_registers, fetch_core_registers): Likewise.
2002-07-23 * aix-thread.c (language.h): Include.Kevin Buettner1-23/+24
(ptrace_check, pdc_symbol_addrs, pdc_read_regs, pdc_write_regs) (pdc_read_data, pdc_write_data, pdc_alloc, pdc_realloc, pdc_dealloc): Print newlines at end of debug messages. (pdc_symbol_addrs, pdc_read_regs, pdc_write_regs, pdc_read_data) (pdc_write_data): Use local_hex_string() instead of %llx formats.
2002-07-23Don't rely on FIRST_UISA_SP_REGNUM or LAST_UISA_REGNUM.Kevin Buettner1-63/+93
2002-07-22 * aix-thread.c (ops): Rename to aix_thread_ops.Kevin Buettner1-78/+80
(base_ops): Rename to base_target. (ops_attach): Rename to aix_thread_attach. (ops_detach): Rename to aix_thread_detach. (ops_resume): Rename to aix_thread_detach. (ops_wait): Rename to aix_thread_wait. (ops_kill): Rename to aix_thread_kill. (init_ops): Rename to init_aix_thread_ops. (ops_fetch_register): Rename to aix_thread_fetch_register. (ops_store_register): Rename to aix_thread_store_register. (ops_mourn_inferior): Rename to aix_thread_mourn_inferior. (ops_thread_alive): Rename to aix_thread_thread_alive. (ops_extra_thread_info: Rename to aix_thread_extra_thread_info. (ops_pid_to_str): Rename to aix_thread_pid_to_str. (ops_xfer_memory): Rename to aix_thread_xfer_memory. (fetch_regs_lib): Rename to fetch_regs_user_thread. (fetch_regs_kern): Rename to fetch_regs_kernel_thread. (store_regs_lib): Rename to store_regs_user_thread. (store_regs_kern): Rename to store_regs_kernel_thread.
2002-07-22 * aix-thread.c (ops_prepare_to_store): Eliminate.Kevin Buettner1-53/+65
(init_ops): Don't initialize ops.prepare_to_store. (store_regs_kern): Pre-fetch register buffers from child, because some registers may not be in the cache. Copy regs from register cache only if they are cached. (store_regs_lib): Copy regs from register cache only if they are cached. (fill_sprs32, (fill_sprs64, fill_fprs, fill_gprs32, fill_gprs64): Ditto.
2002-07-22 * aix-thread.c (gdb_assert.h): Include.Kevin Buettner1-35/+131
(fill_sprs64, fill_sprs32): Add selected asserts to make sure that register sizes (from register cache) match size of buffer holding register data. (fill_sprs32): Change parameter types to match those in the ptrace() buffer. (store_regs_lib): Likewise, but for 32-bit temporary variables. (ops_prepare_to_store): Rename loop variable ``i'' to ``regno''. * aix-thread.c (supply_sprs64): Cosmetic change. (supply_sprs32): Cosmetic change. (fill_gprs64, fill_gprs32, fill_fprs, fill_sprs32): New funcs. (fill_sprs64): Use regcache_collect instead of read_register. (store_regs_lib): Use regcache_collect instead of read_register. Use fill_sprs32 instead of fill_sprs64, if debugging a 32-bit architecture. (store_regs_kern): Use fill_gprs64 etc. to pull the values out of the register cache, instead of passing a pointer into the register cache directly to ptrace. Use regcache_collect insteaad of read_register. (ops_prepare_to_store): Use target_read_registers instead of read_register_bytes.
2002-07-182002-07-17 Michael Snyder <msnyder@redhat.com>Michael Snyder1-214/+262
* aix-thread.c: Shorten some long lines. Bring comments into line with code spec.
2002-07-16 * aix-thread.c (ptrace_check): Use safe_strerror() instead ofKevin Buettner1-2/+2
strerror(). (pdc_realloc): Use xrealloc() instead of realloc().
2002-07-15 * aix-thread.c (PD_ERROR, CALL_BASE): Delete.Kevin Buettner1-25/+29
(ops_resume, ops_wait, fetch_regs_lib, store_regs_lib) (ops_xfer_memory, ops_kill): Don't use PD_ERROR or CALL_BASE macros.
2002-07-15 * aix-thread.c (ptrace_check): Eliminate goto.Kevin Buettner1-32/+44
(sync_threadlists): Eliminate gotos. Also, fix array overrun problem.
2002-07-15 * aix-thread.c (gdbcmd.h): Include.Kevin Buettner1-75/+71
(DEBUG, DBG, DBG2, dbg): Eliminate. (debug_aix_thread): New static global. (ptrace_check, pdc_symbol_addrs, pdc_read_regs, pdc_write_regs) (pdc_read_data, pdc_write_data, pdc_alloc, pdc_realloc, pdc_dealloc) (fetch_regs_lib, store_regs_lib, store_regs_kern): Rewrite invocations to DBG and DBG2 macros to test against ``debug_aix_thread'' and call fprintf_unfiltered(). (_initialize_aix_thread): Add new command "set debug aix-thread".
2002-07-13 From Nicholas Duffek (with minor changes by Martin Hunt,Kevin Buettner1-0/+1492
Louis Hamilton, and Kevin Buettner): * aix-thread.c: New file.