Commit Graph

1601 Commits

Author SHA1 Message Date
Nick Hudson f01be29bbc * Makefile.in (amd64nbsd-nat.o): New dependency.
* amd64nbsd-nat.c: Include "nbsd-nat.h".
        (_initialize_amd64nbsd_nat): Update target vector to use
        nbsd_pid_to_exec_file.
        * config/i386/nbsd64.mh (NATDEPFILES): Add nbsd-nat.o.
2008-03-16 08:50:43 +00:00
Vladimir Prus 8e8901c5c2 Implement -thread-info.
* gdbthread.h (print_thread_info): Declare.

        * thread.c (print_thread_info): New, extracted
        from info_threads_command and adjusted to
        work for CLI and MI.
        (info_threads_command): Use print_thread_info.
	* Makefile.in: Update dependencies.

        * mi/mi-cmds.c (mi_cmds): Specify a handler
        for -thread-info.
        * mi/mi-cmds.h (mi_cmd_thread_info): Declare.
        * mi/mi-main.c (mi_cmd_thread_info): New.
        (mi_cmd_list_features): Include 'thread-info'.
2008-03-15 13:53:25 +00:00
Vladimir Prus 32c1e744c1 Async mode fixes.
* Makefile.in (infcmd.o, inf-loop.o): Update dependencies.
        * breakpoint.c (bpstat_do_actions): In async mode,
        don't jump to top expecting stop_bpstat to be already
        updated.
        * event-loop.c (start_event_loop): Call async_enable_stdin
        on exception.
        * event-top.c (async_enable_stdin): Do nothing if sync_execution
        is not set.
        (command_handler): Do not setup continuation here.
        (command_line_handler_continuation): Move to...
        * top.c (command_line_handler_continuation): ... here.
        (execute_command): In async mode, register continuation.
        Don't check frame's language in running in async mode.
        * exceptions.c (throw_exception): Don't do exec_error_cleanups.
        * inf-loop.c (complete_execution): Inline into...
        (inferior_event_handler): ... here.  Clear target_executing before
        doing any cleanups.  Don't try to show prompt if the target was
        resumed.
        * infcmd.c (signal_command): Add support for async mode.
        (finish_command): Only add continuation if the target was
        successfully resumed.
        * remote.c (init_async_opts): Register to_get_thread_local_address
        handler.
        * mi/mi-interp.c (mi_cmd_interpreter_exec): Don't mess
        with sync_execution.
        * tui/tui-interp.c (tui_command_loop): Call async_enable_stdin
        on exception.
2008-03-14 18:57:44 +00:00
Vladimir Prus 683f2885af Implement MI notification for new threads.
* doc/observer.texi (new_thread): Document.
        * observer.sh: Forward declare struct thread_info.
        * thread.c (add_thread): Notify observer.

        * interps.h (interp_init_ftype): New parameter
        top_level.
        (interp_set): Likewise.
        (top_level_interpreter_data): Declare.
        * interps.c (interp_set): New parameter top_level.
        Pass it to interpreter's init function.  Remember
        top level interpreter.
        (interpreter_exec_cmd): Adjust.
        (top_level_interpreter_data): New.
        * main.c (captured_main): Pass 1 for top_level
        parameter of interp_set.
	* cli/cli-interp.c (cli_interpreter_init): New
        parameter top_level.
        * tui/tui-interp.c (tui_init): New parameter top_level.

        * mi/mi-interp.c (mi_new_thread): New.
        (mi_interpreter_init): If top level, register
        observer for new threads.

        * Makefile.in (mi-interp.o, thread.o): Update dependencies.
2008-03-14 17:21:08 +00:00
Daniel Jacobowitz 8defab1af7 * breakpoint.h (breakpoint_restore_shadows): New
declaration.
	* breakpoint.c (breakpoint_restore_shadows): New.
	(read_memory_nobpt): Delete.
	* gdbcore.h (read_memory_nobpt): Delete declaration.
	* target.c (memory_xfer_partial): Call
	breakpoint_restore_shadows.
	(restore_show_memory_breakpoints)
	(make_show_memory_beakpoints_cleanup): New.
	(show_memory_breakpoints): New.
	* target.h (make_show_memory_beakpoints_cleanup): Declare.
	* ppc-linux-tdep.c (ppc_linux_memory_remove_breakpoint):
	Make sure we see memory breakpoints when checking if
	breakpoint is still there.
	* alpha-tdep.c, alphanbsd-tdep.c, frame.c, frv-tdep.c,
	hppa-linux-tdep.c, hppa-tdep.c, i386-linux-nat.c, i386-tdep.c,
	m68klinux-tdep.c, mips-tdep.c, mn10300-tdep.c, s390-tdep.c,
	sparc-tdep.c: Use target_read_memory instead of read_memory_nobpt.
2008-03-13 12:22:14 +00:00
Daniel Jacobowitz ccd213ac7e * Makefile.in (fork-child.o): Update.
* NEWS: Document "set exec-wrapper" and the gdbserver --wrapper
	argument.  Gather all gdbserver features together.
	* fork-child.c (exec_wrapper): New variable.
	(fork_inferior): Use it.
	(startup_inferior): Skip an extra trap if using "set exec-wrapper".
	(unset_exec_wrapper_command, _initialize_fork_child): New.

	* gdb.texinfo (Starting): Document "set exec-wrapper".
	(Server): Document gdbserver --wrapper.

	* server.c (wrapper_argv): New.
	(start_inferior): Handle wrapper_argv.  If set, expect an extra
	trap.
	(gdbserver_usage): Document --wrapper.
	(main): Parse --wrapper.
2008-03-10 23:14:06 +00:00
Daniel Jacobowitz b803fb0f0f * Makefile.in (mingw-hdep.o, posix-hdep.o, remote-fileio.o): Update.
* event-loop.c (call_async_signal_handler): New.
	* event-loop.h (call_async_signal_handler)
	(gdb_call_async_signal_handler): Declare.
	(mark_async_signal_handler): Add comments.
	* event-top.c (handle_sigint): Use gdb_call_async_signal_handler.
	* mingw-hdep.c (sigint_event, sigint_handler): New.
	(gdb_select): Use them.  Wait for the readline signal handler
	to finish.
	(gdb_call_async_signal_handler, _initialize_mingw_hdep): New functions.
	* posix-hdep.c (gdb_call_async_signal_handler): New function.
	* remote-fileio.c (sigint_fileio_token, async_remote_fileio_interrupt):
	New.
	(remote_fileio_ctrl_c_signal_handler): Use
	gdb_call_async_signal_handler.
	(initialize_remote_fileio): Initialize sigint_fileio_token.
	* remote.c (initialize_sigint_signal_handler, handle_remote_sigint): Do
	not initialize tokens here.
	(handle_remote_sigint_twice): Likewise.  Reinstall
	handle_remote_sigint.
	(async_remote_interrupt_twice): Just call interrupt_query.
	(cleanup_sigint_signal_handler): Do not delete tokens.
	(remote_interrupt, remote_interrupt_twice): Use
	gdb_call_async_signal_handler.
	(interrupt_query): Reinstall the default signal handler.
	(_initialize_remote): Initialize tokens here.
2008-03-05 17:21:10 +00:00
Daniel Jacobowitz c03374d554 * Makefile.in (i386-nat.o): Update.
* amd64-linux-nat.c (_initialize_amd64_linux_nat): Call
	i386_use_watchpoints.
	* i386-linux-nat.c (_initialize_i386_linux_nat): Call
	i386_use_watchpoints.
	* i386-nat.c (i386_stopped_data_address): Take two arguments.
	(i386_stopped_by_watchpoint): Update call.
	(i386_can_use_hw_breakpoint, i386_use_watchpoints): New.
	* config/i386/nm-i386.h: Conditionalize definitions on
	! I386_WATCHPOINTS_IN_TARGET_VECTOR.
	(i386_use_watchpoints): Declare.
	(i386_stopped_data_address): Update.
	* config/i386/nm-linux.h (I386_WATCHPOINTS_IN_TARGET_VECTOR): Define.
	* config/i386/nm-linux64.h (I386_WATCHPOINTS_IN_TARGET_VECTOR): Define.
2008-03-01 04:39:36 +00:00
Daniel Jacobowitz e25c958c98 * configure.tgt (sh-*-linux*): Match sh*. Add glibc-tdep.o.
* sh-linux-tdep.c (sh_linux_init_abi): Use glibc_skip_solib_resolver
	and svr4_fetch_objfile_link_map.
	* Makefile.in (sh-linux-tdep.o): Update.
2008-02-27 01:06:21 +00:00
Markus Deuling 07ea644b36 2008-02-20 Markus Deuling <deuling@de.ibm.com>
Mark Kettenis  <kettenis@gnu.org>

	* alpha-tdep.c (alpha_heuristic_unwind_cache): Replace saved_regs by
	trad_frame_saved_reg.
	(trad-frame.h): New include.

	(alpha_heuristic_frame_unwind_cache): Use trad_frame_alloc_saved_regs
	instead of frame_obstack_zalloc.
	(alpha_heuristic_frame_prev_register): Use trad_frame_get_prev_register.

	* Makefile.in (alpha-tdep.o): Add dependency to trad_frame_h.
2008-02-20 15:45:20 +00:00
Markus Deuling f6fbcbf926 * Makefile.in (ALL_TARGET_OBS): Remove dependency to xtensa-linux-nat.o. 2008-02-14 04:49:12 +00:00
Maxim Grigoriev 94a0e87711 2008-02-11 Maxim Grigoriev <maxim2405@gmail.com>
* 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-02-11 21:58:41 +00:00
Eli Zaretskii f90c07ac03 * corelow.c (core_open): Use IS_ABSOLUTE_PATH.
(filenames.h): New include.
	* Makefile.in (corelow.o): Add dependency for filenames.h.
2008-02-09 13:45:33 +00:00
Doug Evans 776592bf17 * breakpoint.c: #include "hashtab.h".
(ambiguous_names_p): New fn.
	(update_breakpoint_locations): When restoring bp enable status, don't
	compare function names if any functions have same name.
	* Makefile.in (breakpoint.o): Add hashtab.h dependency.

	* gdb.cp/mb-inline.exp: New.
	* gdb.cp/mb-inline.h: New.
	* gdb.cp/mb-inline1.cc: New.
	* gdb.cp/mb-inline2.cc: New.
2008-02-08 00:42:07 +00:00
Joel Brobecker 2ba95b9b76 * ada-lang.c: #include "vec.h".
(struct string_vector, new_string_vector, string_vector_append):
        Delete.
        (char_ptr): New typedef.
        (DEF_VEC_P (char_ptr)): New VEC type.
        (symbol_completion_add): Update profile to take the new VEC type
        instead of the old string_vector structure. Update code accordingly.
        (ada_make_symbol_completion_list): Use the new VEC type instead of
        the old string_vector structure, and update the code accordingly.
        * Makefile.in (ada-lang.o): Add dependency on vec.h.
2008-02-07 19:06:51 +00:00
Vladimir Prus d56d46f5c7 Use vector for varobj_list_children interface.
* gdb/varobj.c (varobj_list_children): Return vector
        of varobjs.
        * gdb/varobj.h (varobj_list_children): Adjust
        prototype.
        (varobj_p): Declare.  Declare vector thereof.
        * mi/mi-cmd-var.c (mi_cmd_var_list_children): Adjust
        for varobj_list_children change.
	* Makefile.in (varobj_h): Update dependencies.
2008-01-30 07:17:31 +00:00
Daniel Jacobowitz e85a822c15 * Makefile.in (symfile.o): Update.
* NEWS: Mention exec tracing support.
	* inf-ttrace.c (inf_ttrace_wait): Return TARGET_WAITKIND_EXECD for
	exec events.
	* infcmd.c (kill_if_already_running, detach_command)
	(disconnect_command): Replace SOLIB_RESTART with no_shared_libraries.
	* infrun.c (MAY_FOLLOW_EXEC, may_follow_exec): Delete.
	(follow_exec): Do not check may_follow_exec.  Do not mourn and push
	targets.  Apply the sysroot path to the loaded executable.  Use
	no_shared_libraries.
	* linux-nat.c (linux_child_follow_fork): Print fork following
	messages if verbose.
	(kill_wait_callback): Kill again before waiting a second time.
	* symfile.c (symbol_file_clear): Replace SOLIB_RESTART with
	no_shared_libraries.

	* gdb.base/foll-exec.exp: Update header.  Skip on remote targets.
	Run on GNU/Linux.
	(do_exec_tests): Check for systems which do not support catchpoints.
	Do not match START.
	* gdb.base/foll-fork.exp: Update header.  Skip on remote targets.
	Run on GNU/Linux.  Enable verbose output.
	(check_fork_catchpoints): New.
	(explicit_fork_child_follow, catch_fork_child_follow)
	(tcatch_fork_parent_follow): Update expected messages.
	(do_fork_tests): Use check_fork_catchpoints.
	* gdb.base/foll-vfork.exp: Update header.  Skip on remote targets.
	Run on GNU/Linux.  Enable verbose output.
	(check_vfork_catchpoints): New.
	(vfork_parent_follow_to_bp, tcatch_vfork_then_child_follow): Update
	expected messages.
	(do_vfork_and_exec_tests): Use check_fork_catchpoints.
2008-01-29 22:47:20 +00:00
Joel Brobecker b4d5ed91ae * nto-tdep.h: Remove #include "defs.h".
* nto-tdep.c: Add #include "defs.h".
        * Makefile.in (nto_tdep_h): Update dependencies.
        (nto-tdep.o): Likewise.
2008-01-29 21:26:04 +00:00
Nick Hudson af5ca30dc3 Add NetBSD/hppa target and host support.
* hppabsd-tdep.c (hppabsd_supply_gregset): Move to ...
	(hppabsd_gregset): Move to ...
	(hppabsd_regset_from_core_section): Rename
	hppaobsd_regset_from_core_section and move to ...
	(hppabsd_find_global_pointer): Update comment.
	(hppabsd_init_abi): Make global. Do not register
	hppabsd_regset_from_core_section.
	(hppabsd_core_osabi_sniffer): Rename hppaobsd_core_osabi_sniffer and
	move to ...
	(_initialize_hppabsd_tdep): Move to ...
	* hppaobsd-tdep.c: ... here. New file.
	* hppnbsd-tdep.c: New file.
	* hppnbsd-nat.c: New file.
        * Makefile.in (ALL_TARGET_OBS): Add hppanbsd-tdep.o and hppaobsd-tdep.o.
	(ALLDEPFILES): Add hppabsd-nat.c and hppabsd-tdep.c.
        (hppabsd-nat.o, hppabsd-tdep.o): New dependencies.
        (hppabsd-tdep.o, hppaobsd-tdep.o): Update dependencies.
	* configure.host (hppa*-*-netbsd*): New entry.
	* configure.tgt (hppa*-*-netbsd*): New entry.
	(hppa*-*-openbsd*): Update.
	* NEWS (New native configuration): Mention NetBSD/hppa.
	(New targets): Mention NetBSD/hppa.
2008-01-19 15:03:50 +00:00
Markus Deuling ed49a04fe1 * exec.c: #include "arch-utils.h"
(print_section_info): Use gdbarch_from_bfd to get at the
	current architecture. Replace current_gdbarch. Fix indention.
	Replace deprecated_print_address_numeric by paddress.
	* Makefile.in (exec.o) Add dependency to arch-utils.h.

	* valprint.c (val_print_string): Replace
	deprecated_print_address_numeric.
	* tracepoint.c (trace_mention, scope_info): Likewise.
	* symmisc.c (dump_msymbols, dump_psymtab, dump_symtab_1, print_symbol)
	(print_symbol, print_partial_symbols, maintenance_info_psymtabs)
	(maintenance_check_symtabs): Likewise.
	* symfile.c (list_overlays_command): Likewise.
	* stack.c (frame_info, print_block_frame_labels): Likewise.
	* printcmd.c (print_address, print_address_demangle)
	(address_info): Likewise.
	* corefile.c (memory_error): Likewise.
	* infcmd.c (jump_command): Likewise.
	* breakpoint.c (insert_bp_location, describe_other_breakpoints)
	(mention, delete_breakpoint): Likewise.
	* c-valprint.c (print_function_pointer_address, c_val_print): Likewise.
	* dwarf2read.c (dump_die): Likewise.
	* ada-valprint.c (ada_val_print_1): Likewise.
	* f-valprint.c (f_val_print): Likewise.
	* linux-fork.c (info_forks_command): Likewise.
	* m32r-com.c (m32r_load_section, m32r_load)
	(m32r_upload_command): Likewise.

	* ui-out.c (ui_out_field_core_addr): Remove unnecessary comment.
2008-01-11 13:34:15 +00:00
Joel Brobecker a93c0eb695 * ada-lang.c (ada_convert_actual): Renames convert_actual.
Make non-static.
        (ada_convert_actuals): Delete.
        * ada-lang.h (ada_convert_actual): Add declaration.
        (ada_convert_actuals): Remove declaration.
        * infcall.c: #include "ada-lang.h".
        (value_arg_coerce): Add new parameter sp.  Update function
        documetnation.  Add handling of Ada function call parameters.
        * Makefile.in (infcall.o): Update dependencies.
2008-01-08 19:28:09 +00:00
Thiago Jung Bauermann 4ef30785ea * Makefile.in (dfp.o): Depend on expression.h, gdbtypes.h and value.h.
(valarith.o): Depend on dfp.h.
	(valops.o): Likewise.
	* dfp.c: Include expression.h, gdbtypes.h, value.h and dfp.h.
	(set_decnumber_context): New function.
	(decimal_check_errors): Likewise.
	(decimal_from_number): Likewise.
	(decimal_to_number): Likewise.
	(decimal_from_string): Use set_decnumber_context and
	decimal_check_errors.
	(decimal_from_integral): New function.
	(decimal_from_floating): Likewise.
	(decimal_to_double): Likewise.
	(promote_decimal): Likewise.
	(decimal_binop): Likewise.
	(decimal_is_zero): Likewise.
	(decimal_compare): Likewise.
	(decimal_convert): Likewise.
	* dfp.h (decimal_from_integral): New prototype.
	(decimal_from_floating): Likewise.
	(decimal_to_double): Likewise.
	(decimal_binop): Likewise.
	(decimal_is_zero): Likewise.
	(decimal_compare): Likewise.
	(decimal_convert): Likewise.
	* eval.c (evaluate_subexp_standard): Remove expect_type argument from
	call to value_from_decfloat.
	* valarith.c: Include dfp.h.
	(value_args_as_decimal): New function.
	(value_binop): Add if block to handle TYPE_CODE_DECFLOAT values.
	(value_logical_not): Likewise.
	(value_equal): Likewise.
	(value_less): Likewise.
	(value_pos): Likewise.
	(value_neg): Formatting fix.
	* valops.c: Include dfp.h.
	(value_cast): Add if block to handle TYPE_CODE_DECFLOAT values.
	* value.c (unpack_long): Add case to handle TYPE_CODE_DECFLOAT.
	(unpack_double): Add if block to handle TYPE_CODE_DECFLOAT.
	(value_from_decfloat): Remove expect_type argument.
	* value.h (value_from_decfloat): Update prototype.
2008-01-07 22:33:57 +00:00
Daniel Jacobowitz 9b254dd1ce Updated copyright notices for most files. 2008-01-01 22:53:26 +00:00
Mark Kettenis 70f13f6b00 * i386nbsd-tdep.c: Include "trad-frame.h" and "tramp-frame.h"
(sigtramp_retcode, i386nbsd_sigtramp_offset, i386nbsd_sigtramp_p):
Remove
(i386nbsd_mc_reg_offset): New array.
(i386nbsd_sigtramp_cache_init): New function.
(i386nbsd_sigtramp_sc16, i386nbsd_sigtramp_sc2, i386nbsd_sigtramp_si2)
(i386nbsd_sigtramp_si31, i386nbsd_sigtramp_si4): New signal trampoline
frame descriptions.
(i386nbsd_init_abi): Override ABI sigcontext defaults and register
new signal frame unwinders
* Makefile.in (i386nbsd-tdep.o): Update dependencies.
* tramp-frame.h (struct tramp_frame): Allow for 48 instructions
2007-12-29 17:01:41 +00:00
Joel Brobecker 3463063964 * rs6000-tdep.h: Remove defs.h #include.
* Makefile.in (rs6000_tdep_h): Update dependencies.
2007-12-21 04:59:00 +00:00
Joel Brobecker 10d00faca9 * symtab.h: Remove "defs.h" #include.
* Makefile.in (symtab_h): Update dependencies.
2007-12-20 05:36:14 +00:00
Joel Brobecker 67cd94cafd * symtab.h: #include "defs.h".
(enum language): Remove opaque declaration.
        * Makefile.in (symtab_h): Update dependencies.
2007-12-19 13:21:32 +00:00
Maciej W. Rozycki 9544c605b6 * utils.c (string_to_core_addr): If the executable format
indicates that addresses should be sign-extended and there are
only 8 hex digits in the address, then do so.
* Makefile.in (utils.o): Depend on $(gdbcore_h).
2007-12-17 17:49:29 +00:00
Pierre Muller 2c6474365f 2007-12-06 Pierre Muller <muller@ics.u-strasbg.fr>
* win32-nat.c: Allow compilation if CORE_ADDR is 8 byte long.
	Add "gdb_stdint.h" dependency required for uintptr_t type use.
	(handle_output_debug_string): Use uintptr_t typecast.
	(handle_exception): Ditto.
	(win32_xfer_memory): Ditto.
	* Makefile.in (win32-nat.o): Add dependency to gdb_stdint header.
2007-12-06 11:17:03 +00:00
Jim Blandy 801e3a5b56 Support lexical blocks and function bodies that occupy
non-contiguous address ranges.
* addrmap.c, addrmap.h: New files.
* block.h (struct addrmap): New forward declaration.
(struct blockvector): New member, 'map'.
(BLOCKVECTOR_MAP): New accessor macro.
* block.c: #include "addrmap.h"
(blockvector_for_pc_sect): If the blockvector we've found has
an address map, use it instead of searching the blocks.
* buildsym.c: #include "addrmap.h"
(pending_addrmap_obstack, pending_addrmap_interesting): New static
variables.
(really_free_pendings): If we have a pending addrmap, free it too.
(record_block_range): New function.
(make_blockvector): If we have an interesting pending addrmap,
record it in the new blockvector.
(start_symtab, buildsym_init): Assert that there is no pending
addrmap now; we should have cleaned up any addrmaps we'd built
previously.
(end_symtab): If there is a pending addrmap left over that didn't
get included in the blockvector, free it.
* buildsym.h (struct addrmap): New forward declaration.
(record_block_range): New prototype.
* objfiles.c: #include "addrmap.h".
(objfile_relocate): Relocate the blockvector's address map, if
present.
* dwarf2read.c (dwarf2_record_block_ranges): New function.
(read_func_scope, read_lexical_block_scope): Call it.
* Makefile.in (SFILES): Add addrmap.c.
(addrmap_h): New header dependency variable.
(COMMON_OBS): Add addrmap.o.
(addrmap.o): New rule.l
(block.o, objfiles.o, buildsym.o): Depend on $(addrmap_h).

* block.c (blockvector_for_pc, blockvector_for_pc_sect): Return a
pointer to the block, not its index in the blockvector.
(block_for_pc_sect): Use the returned block, instead of looking it
up ourselves.
* block.h (blockvector_for_pc, blockvector_for_pc_sect): Update
declarations.
* breakpoint.c (resolve_sal_pc): Use returned block, instead of
looking it up ourselves.
* stack.c (print_frame_label_vars): Disable function, which
depends on the block's index.

* buildsym.c (finish_block): Return the block we've built.
* buildsym.h (finish_block): Update prototype.

* defs.h (CORE_ADDR_MAX): New constant.
2007-12-04 23:43:57 +00:00
Daniel Jacobowitz a6b151f187 * remote.c (remote_cmdlist): New variable.
(PACKET_vFile_open, PACKET_vFile_pread, PACKET_vFile_pwrite)
	(PACKET_vFile_close, PACKET_vFile_unlink): New constants.
	(remote_buffer_add_string, remote_buffer_add_bytes)
	(remote_buffer_add_int, remote_hostio_parse_result)
	(remote_hostio_send_command, remote_hostio_open, remote_hostio_pwrite)
	(remote_hostio_pread, remote_hostio_close, remote_hostio_unlink)
	(remote_fileio_errno_to_host, remote_hostio_error, fclose_cleanup)
	(remote_hostio_close_cleanup, remote_file_put, remote_file_get)
	(remote_file_delete, remote_put_command, remote_get_command)
	(remote_delete_command, remote_command): New functions.
	(_initialize_remote): Register new packets and commands.
	* Makefile.in (gdb_fileio_h): New variable.
	(remote.o): Update.
	(SUBDIR_MI_OBS): Add mi-cmd-target.o.
	(SUBDIR_MI_SRCS): Add mi/mi-cmd-target.c.
	(mi-cmd-target.o): New rule.
	* mi/mi-cmd-target.c: New file.
	* mi/mi-cmds.c (mi_cmds): Add target-file-delete, target-file-get,
	and target-file-put.
	* mi/mi-cmds.h (mi_cmd_target_file_get, mi_cmd_target_file_put)
	(mi_cmd_target_file_delete): Declare.
	* remote.h (remote_file_put, remote_file_get, remote_file_delete):
	Declare.
	* NEWS: Describe new file transfer support.

	* gdb.texinfo (Debugging Programs with Multiple Processes): Correct
	formatting.
	(Remote Debugging): Add File Transfer section.
	(Remote Configuration): Document Host I/O packets.
	(GDB/MI): Add GDB/MI File Transfer Commands section.
	(Remote Protocol): Add Host I/O Packets section.
	(Packets): Add vFile.

	* Makefile.in (OBS): Add hostio.o.
	(hostio.o): New rule.
	* server.h (handle_vFile): Declare.
	* hostio.c: New file.
	* server.c (handle_v_requests): Take packet_len and new_packet_len
	for binary packets.  Call handle_vFile.
	(main): Update call to handle_v_requests.

	* gdb.server/file-transfer.exp, gdb.server/transfer.txt,
	gdb.mi/mi-file-transfer.exp: New.
2007-11-30 21:50:19 +00:00
Ulrich Weigand c0993dbe92 * Makefile.in (ALL_TARGET_OBS): Remove object files that require
64-bit CORE_ADDR and BFD support, move them to ...
	(ALL_64_TARGET_OBS): ... this new variable.
	* configure.ac: Check for --enable-64-bit-bfd option.  Only add
	64-bit targets with --enable-targets=all if BFD supports 64-bit.
	* configure: Regenerate.

	* i386-cygwin-tdep.c (i386_cygwin_osabi_sniffer): Do not claim
	all elf32-i386 executables, only cygwin core files.
2007-11-27 17:06:12 +00:00
Ulrich Weigand d0c678e6de * configure.ac (--enable-targets): New configure option.
Collect gdb_target_obs of multiple targets into TARGET_OBS.
	Call configure.tgt multiple times, using $targ as operand.
	* configure.tgt: Operate on $targ instead of $target.
	* configure: Regenerate.
	* Makefile.in (ALL_TARGET_OBS): Define.

	* NEWS: Mention --enable-targets option.
2007-11-17 01:02:01 +00:00
Ulrich Weigand ec20a626bd * amd64fsdb-tdep.c (amd64fbsd_sigtramp_start_addr): Use ULL suffix.
(amd64fbsd_sigtramp_end_addr): Likewise.

	* iq2000-tdep.c (iq2000_pointer_to_address): Fix argument type.
	(iq2000_address_to_pointer): Likewise.
	(iq2000_frame_prev_register): Likewise.
	(iq2000_extract_return_value): Use regcache_cooked_read_unsigned
	instead of regcache_cooked_read into CORE_ADDR variable.
	(iq2000_return_value): Fix argument types.

	* m32r-rom.c (m32r_load_section): Fix printf argument type.
	(m32r_load): Likewise.

	* m68kbsd-tdep.c: Include "gdbtypes.h".
	* Makefile.in: Update dependencies.

	* mn10300-tdep.c (mn10300_frame_unwind_cache): Fix aliasing violation.

	* nto-tdep.c (LM_ADDR): Do not refer to no-longer-existing
	lmo->l_addr_size element.

	* remote-m32r-sdi.c (m32r_xfer_memory): Use paddr to print address.
	(m32r_insert_breakpoint): Likewise.
	(m32r_remove_breakpoint): Likewise.
	(m32r_insert_watchpoint): Likewise.
	(m32r_remove_watchpoint): Likewise.
	(m32r_load): Fix printf argument type.

	* xtensa-tdep.c (xtensa_regset_from_core_section): Fix printf
	argument type.
	(xtensa_frame_this_id): Do not cast pointers to "int" for output.
	(xtensa_frame_prev_register): Likewise.
	(xtensa_push_dummy_call): Likewise.
2007-11-17 00:55:29 +00:00
Ulrich Weigand a4ce5b0d02 * config/alpha/alpha-linux.mt: Remove file.
* config/alpha/alpha.mt: Remove file.
	* config/alpha/alpha-osf1.mt: Remove file.
	* config/alpha/fbsd.mt: Remove file.
	* config/alpha/nbsd.mt: Remove file.
	* config/alpha/obsd.mt: Remove file.
	* config/arm/embed.mt: Remove file.
	* config/arm/linux.mt: Remove file.
	* config/arm/nbsd.mt: Remove file.
	* config/arm/obsd.mt: Remove file.
	* config/arm/wince.mt: Remove file.
	* config/avr/avr.mt: Remove file.
	* config/cris/cris.mt: Remove file.
	* config/frv/frv.mt: Remove file.
	* config/h8300/h8300.mt: Remove file.
	* config/i386/cygwin.mt: Remove file.
	* config/i386/fbsd64.mt: Remove file.
	* config/i386/fbsd.mt: Remove file.
	* config/i386/i386gnu.mt: Remove file.
	* config/i386/i386.mt: Remove file.
	* config/i386/i386sol2.mt: Remove file.
	* config/i386/linux64.mt: Remove file.
	* config/i386/linux.mt: Remove file.
	* config/i386/mingw.mt: Remove file.
	* config/i386/nbsd64.mt: Remove file.
	* config/i386/nbsd.mt: Remove file.
	* config/i386/nto.mt: Remove file.
	* config/i386/obsd64.mt: Remove file.
	* config/i386/obsd.mt: Remove file.
	* config/i386/sol2-64.mt: Remove file.
	* config/ia64/ia64.mt: Remove file.
	* config/ia64/linux.mt: Remove file.
	* config/iq2000/iq2000.mt: Remove file.
	* config/m32c/m32c.mt: Remove file.
	* config/m32r/linux.mt: Remove file.
	* config/m32r/m32r.mt: Remove file.
	* config/m68hc11/m68hc11.mt: Remove file.
	* config/m68k/linux.mt: Remove file.
	* config/m68k/monitor.mt: Remove file.
	* config/m68k/nbsd.mt: Remove file.
	* config/m68k/obsd.mt: Remove file.
	* config/m88k/obsd.mt: Remove file.
	* config/mep/mep.mt: Remove file.
	* config/mips/embed.mt: Remove file.
	* config/mips/irix5.mt: Remove file.
	* config/mips/irix6.mt: Remove file.
	* config/mips/linux.mt: Remove file.
	* config/mips/nbsd.mt: Remove file.
	* config/mips/obsd64.mt: Remove file.
	* config/mn10300/linux.mt: Remove file.
	* config/mn10300/mn10300.mt: Remove file.
	* config/mt/mt.mt: Remove file.
	* config/pa/hppahpux.mt: Remove file.
	* config/pa/hppa.mt: Remove file.
	* config/pa/linux.mt: Remove file.
	* config/pa/obsd.mt: Remove file.
	* config/powerpc/aix.mt: Remove file.
	* config/powerpc/linux.mt: Remove file.
	* config/powerpc/nbsd.mt: Remove file.
	* config/powerpc/obsd.mt: Remove file.
	* config/powerpc/ppc-eabi.mt: Remove file.
	* config/s390/s390.mt: Remove file.
	* config/score/embed.mt: Remove file.
	* config/sh/embed.mt: Remove file.
	* config/sh/linux.mt: Remove file.
	* config/sh/nbsd.mt: Remove file.
	* config/sh/obsd.mt: Remove file.
	* config/sh/sh64.mt: Remove file.
	* config/sparc/embed.mt: Remove file.
	* config/sparc/fbsd.mt: Remove file.
	* config/sparc/linux64.mt: Remove file.
	* config/sparc/linux.mt: Remove file.
	* config/sparc/nbsd64.mt: Remove file.
	* config/sparc/nbsd.mt: Remove file.
	* config/sparc/obsd64.mt: Remove file.
	* config/sparc/obsd.mt: Remove file.
	* config/sparc/sol2-64.mt: Remove file.
	* config/sparc/sol2.mt: Remove file.
	* config/sparc/sparc64.mt: Remove file.
	* config/sparc/sparc.mt: Remove file.
	* config/spu/spu.mt: Remove file.
	* config/v850/v850.mt: Remove file.
	* config/vax/nbsd.mt: Remove file.
	* config/vax/obsd.mt: Remove file.
	* config/vax/vax.mt: Remove file.
	* config/xstormy16/xstormy16.mt: Remove file.
	* config/xtensa/xtensa.mt: Remove file.

	* configure.tgt (gdb_target_cpu): Remove.  Do not set anywhere.
	(gdb_target): Likewise.
	(gdb_target_obs): Document.  Set for every target to contents
	of TDEPFILES in former .mt makefile fragment.

	* configure.ac (TARGET_OBS): Define.
	(target_makefile_frag, gdb_target_cpu): Do not define.
	* configure: Regenerate.

	* Makefile.in (MT_FLAGS): Remove.
	(GLOBAL_CFLAGS): Update.
	(TARGET_OBS): Substitute from configure.
	(DEPFILES): Remove TDEPFILES, add TARGET_OBS.
	(@target_makefile_frag@): Remove.

doc/ChangeLog:

	* Makefile.in (Makefile): Do not depend on target_makefile_frag.

testsuite/ChangeLog:

	* Makefile.in (Makefile): Do not depend on target_makefile_frag.
	(target_cpu): Remove.
2007-11-17 00:54:18 +00:00
Ulrich Weigand 9b624dbeed * config/arm/embed.mt (SIM_OBS, SIM): Remove.
* config/avr/avr.mt (SIM_OBS, SIM): Remove.
	* config/frv/frv.mt (SIM_OBS, SIM): Remove.
	* config/h8300/h8300.mt (SIM_OBS, SIM): Remove.
	* config/iq2000/iq2000.mt (SIM_OBS, SIM): Remove.
	* config/m32c/m32c.mt (SIM_OBS, SIM): Remove.
	* config/m32r/linux.mt (SIM_OBS, SIM): Remove.
	* config/m32r/m32r.mt (SIM_OBS, SIM): Remove.
	* config/m68hc11/m68hc11.mt (SIM_OBS, SIM): Remove.
	* config/mips/embed.mt (SIM_OBS, SIM): Remove.
	* config/mips/linux.mt (SIM_OBS, SIM): Remove.
	* config/mips/nbsd.mt (SIM_OBS, SIM): Remove.
	* config/mn10300/mn10300.mt (SIM_OBS, SIM): Remove.
	* config/powerpc/linux.mt (SIM_OBS, SIM): Remove.
	* config/powerpc/nbsd.mt (SIM_OBS, SIM): Remove.
	* config/powerpc/ppc-sim.mt: Remove file.
	* config/sh/embed.mt (SIM_OBS, SIM): Remove.
	* config/sh/linux.mt (SIM_OBS, SIM): Remove.
	* config/sh/nbsd.mt (SIM_OBS, SIM): Remove.
	* config/sh/sh64.mt (SIM_OBS, SIM): Remove.
	* config/sparc/embed.mt (SIM_OBS, SIM): Remove.
	* config/v850/v850.mt (SIM_OBS, SIM): Remove.
	* config/xstormy16/xstormy16.mt (SIM_OBS, SIM): Remove.

	* configure.tgt (gdb_sim): Document variable.
	(arm*-*-* | thumb*-*-* | strongarm*-*-* | xscale-*-*): Set it.
	(avr-*-*): Likewise.
	(frv-*-*): Likewise.
	(h8300-*-*): Likewise.
	(iq2000-*-*): Likewise.
	(m32c-*-*): Likewise.
	(m32r*-*-linux*): Likewise.
	(m32r*-*-*): Likewise.
	(m68hc11*-*-*|m6811*-*-*): Likewise.
	(mips*-*-*): Likewise.
	(mips*-*-linux*): Likewise.
	(mips*-*-netbsd* | mips*-*-knetbsd*-gnu): Likewise.
	(mn10300-*-*): Likewise.
	(powerpc-*-linux* | powerpc64-*-linux*): Likewise.
	(powerpc-*-netbsd* | powerpc-*-knetbsd*-gnu): Likewise.
	(powerpc*-*-*): Use ppc-eabi target.  Conditionally set gdb_sim.
	(sh*): Set gdb_sim.
	(sh-*-linux*): Likewise.
	(sh*-*-netbsdelf* | sh*-*-knetbsd*-gnu): Likewise.
	(sh64-*-elf*): Likewise.
	(sparc-*-rtems*): Likewise.
	(v850*-*-elf): Likewise.
	(xstormy16-*-*): Likewise.

	* configure.ac (IGNORE_SIM, IGNORE_SIM_OBS): Do not set.
	(SIM, SIM_OBS): Set depending on ${ignore_sim} and ${gdb_sim}.
	* configure: Regenerate.
	* Makefile.in (SIM, SIM_OBS): Substitute from configure.
	(@IGNORE_SIM@, @IGNORE_SIM_OBS@): Remove.
2007-11-17 00:44:38 +00:00
Ulrich Weigand db985757a9 * configure.ac (hostfile, targetfile): Remove.
(GDB_XM_FILE, GDB_TM_FILE): Do not define.
	(xm_h, tm_h): Likewise.
	(DEPRECATED_TM_FILE, XM_FILE): Do not substitute into Makefile.
	* configure, config.in: Regenerate.

	* Makefile.in (xm_h, tm_h): Remove.  Update dependencies.
	(TAGS): Do not consider DEPRECATED_TM_FILE or XM_FILE.
	(clean, local-maintainer-clean): Do not remove xm.h or tm.h.
	* defs.h: Do not include "xm.h" or "tm.h".

	* gdbarch.sh (verify_gdbarch): Do not dump GDB_XM_FILE or GDB_TM_FILE.
	* gdbarch.c: Regenerate.

	* config/score/embed.mt: Remove obsolete comment.
2007-11-17 00:41:17 +00:00
Vladimir Prus d6e956e5c2 Prevent clear_command from directly modifying breakpoint list.
* Makefile.in (breakpoint_h): Update dependency.
	* breakpoint.c (clear_command): Do not remove
	breakpoints from breakpoint_chain.  Collect breakpoints
	to delete in a vector.
	* breakpoint.h (breakpoint_p): New typedef for pointer to
	breakpoint.  Register vector of breakpoint_p.
2007-11-15 06:28:19 +00:00
Daniel Jacobowitz 55eddb0f7a * ppc-sysv-tdep.c (ppc_sysv_abi_push_dummy_call): Check the selected
soft float and vector ABIs.  Support the generic vector ABI for
	AltiVec types.
	(do_ppc_sysv_return_value): Likewise.  Correct argument types and
	casts.
	(ppc64_sysv_abi_push_dummy_call): Assert that floating point is
	supported.
	* ppc-tdep.h (enum powerpc_vector_abi): New.
	(struct gdbarch_tdep): Add soft_float and vector_abi.
	* rs6000-tdep.c (setpowerpccmdlist, showpowerpccmdlist)
	(powerpc_soft_float_global, powerpc_vector_strings)
	(powerpc_vector_abi_global, powerpc_vector_abi_string): New.
	(rs6000_gdbarch_init): Check for soft-float and vector ABI markings.
	(set_powerpc_command, show_powerpc_command, powerpc_set_soft_float)
	(powerpc_set_vector_abi): New.
	(_initialize_rs6000_tdep): Register "set powerpc" and "show powerpc"
	commands.
	* Makefile.in (elf_ppc_h): New.
	(rs6000-tdep.o): Update.

	* gdb.texinfo (PowerPC): Document "set powerpc vector-abi" and "set
	powerpc soft-float".

	* gdb.arch/altivec-abi.exp: Run multiple times for GCC on GNU/Linux.
	Test "set powerpc vector-abi".  Skip auto-detection tests for old
	toolchains.
2007-10-30 19:35:35 +00:00
Thiago Jung Bauermann 9b913628cf 2007-10-25 Wu Zhou <woodzltc@cn.ibm.com>
Thiago Jung Bauermann  <bauerman@br.ibm.com>

	* Makefile.in (LIBDECNUMBER_DIR, LIBDECNUMBER, LIBDECNUMBER_SRC
	LIBDECNUMBER_CFLAGS): New macros for libdecnumber.
	(INTERNAL_CFLAGS_BASE): Add LIBDECNUMBER_CFLAGS in.
	(INSTALLED_LIBS): Add -ldecnumber in.
	(CLIBS): Add LIBDECNUMBER in.
	(decimal128_h, decimal64_h, decimal32_h): New macros for decimal
	headers.
	(dfp_h): New macros for decimal floating point.
	(dfp.o): New target.
	(COMMON_OBS): Add dfp.o in.
	(c-exp.o): Add dfp_h as dependency.
	(valprint.o): Add dfp_h as dependency.
	(value.o): Add dfp_h as dependency.
	* dfp.h: New header file for decimal floating point support in
	GDB.
	* dfp.c: New source file for decimal floating point support in
	GDB.  Implement decimal_from_string and decimal_to_string based
	on libdecnumber API.
	* configure.ac: Add AC_C_BIGENDIAN test.
	* config.in, configure: Regenerate.
2007-10-25 17:52:32 +00:00
Maciej W. Rozycki ad84214454 PR exp/1926
* infcmd.c (registers_info): Check for a user register before
calling target's gdbarch_print_registers_info().  If found to be
so, extract the implicit value of user register and call
print_scalar_formatted().
* Makefile.in: (infcmd.o): Add $(user_regs_h).
2007-10-25 11:30:55 +00:00
Ulrich Weigand 8d00578918 * solib-svr4.c (legacy_svr4_fetch_link_map_offsets_hook): Remove.
(solib_svr4_init): Initialize fetch_link_map_offsets to NULL.
	* solib-svr4.h (legacy_svr4_fetch_link_map_offsets_hook): Remove.
	* solib-legacy.c: Remove file.

	* config/alpha/alpha-linux.mt (TDEPFILES): Remove solib-legacy.o.
	* config/arm/linux.mt (TDEPFILES): Likewise.
	* config/i386/i386gnu.mh (NATDEPFILES): Likewise.
	* config/ia64/linux.mt (TDEPFILES): Likewise.
	* config/m32r/linux.mt (TDEPFILES): Likewise.
	* config/powerpc/linux.mt (TDEPFILES): Likewise.
	* config/s390/s390.mt (TDEPFILES): Likewise.

	* alpha-linux-tdep.c (alpha_linux_init_abi): Call
	set_solib_svr4_fetch_link_map_offsets.
	* i386gnu-tdep.c (i386gnu_init_abi): Likewise.
	* ia64-linux-tdep.c (ia64_linux_init_abi): Likewise.

	* i386gnu-tdep.c: Include "solib-svr4.h".
	* Makefile.in: Update dependencies.
2007-10-24 21:21:16 +00:00
Ulrich Weigand 59215afbea * i386-nto-tdep.c: Include "solib.h".
(i386nto_init_abi): Use set_solib_ops instead of overwriting
	current_target_so_ops members.
	* solist.h (TARGET_SO_RELOCATE_SECTION_ADDRESSES): Remove.
	(TARGET_SO_FIND_AND_OPEN_SOLIB): Remove.
	(TARGET_SO_IN_DYNSYM_RESOLVE_CODE): Remove.
	* Makefile.in: Update dependencies.
2007-10-24 21:18:52 +00:00
Ulrich Weigand 8d46538969 * arm-wince-tdep.c: Include "solib.h" and "solib-target.h".
(arm_wince_init_abi): Call set_solib_ops.
	* i386-cygwin-tdep.c: Include "solib.h" and "solib-target.h".
	(i386_cygwin_init_abi): Call set_solib_ops.
	* solib-target.c: Include "solib-target.h".
	(solib_target_so_ops): Make global.
	(_initialize_solib_target): Do not set current_target_so_ops.
	* solib-target.h: New file.
	* Makefile.in: Update dependencies.
2007-10-24 21:16:30 +00:00
Ulrich Weigand 734598d921 * mips-irix-tdep.c: Include "gdb_string.h", "solib.h", "solib-irix.h".
(mips_irix_init_abi): Call set_solib_ops.
	* solib-irix.c: Include "solib.h" and "solib-irix.h".
	(irix_so_ops): Make global.
	(_initialize_irix_solib): Do not set current_target_so_ops.
	* solib-irix.h: New file.
	* Makefile.in: Update dependencies.
2007-10-24 21:15:35 +00:00
Ulrich Weigand d542061a79 * configure.tgt: Remove hppa*64*-*-hpux11* special case.
* config/pa/hppa64.mt: Delete file.
	* config/pa/hppahpux.mt (MT_CFLAGS): Remove.
	(TDEPFILES): Move somread.o to ...
	* config/pa/hpux.mh (NATDEPFILES): ... here.

	* configure.ac: Add check for elf_hp.h header.
	Search libdl and libxpdl for dlgetmodinfo.
	* config.in, configure: Regenerate.
	* solib-pa64.c: Conditionalize compilation on #ifdef HAVE_ELF_HP_H
	instead of #ifndef PA_SOM_ONLY.  Include "solib.h".
	(pa64_solib_select): Take gdbarch instead of tdep argument.  Call
	set_solib_ops instead of modifying current_target_so_ops.
	* solib-pa64.h (pa64_solib_select): Update prototype.
	* solib-som.c: Remove include of "som.h".  Include "solib.h".
	(som_solib_select): Take gdbarch instead of tdep argument.  Call
	set_solib_ops instead of modifying current_target_so_ops.
	* solib-som.h (som_solib_select): Update prototype.
	* hppa-hpux-tdep.c (hppa_hpux_som_init_abi): Pass gdbarch instead
	of tdep to som_solib_select call.
	(hppa_hpux_elf_init_abi): Pass gdbarch instead of tdep to
	pa64_solib_select call.
	* Makefile.in: Update dependencies.
2007-10-24 21:14:17 +00:00
Ulrich Weigand 917630e4a0 * frv-tdep.c: Include "solib.h".
(frv_gdbarch_init): Call set_solib_ops.
	* frv-tdep.h (struct target_so_ops): Add forward reference.
	(frv_so_ops): Add extern declaration.
	* solib-frv.c (frv_so_ops): Make global.
	(_initialize_frv_solib): Do not set current_target_so_ops.
	* Makefile.in: Update dependencies.
2007-10-24 21:08:23 +00:00
Daniel Jacobowitz f88e9fd315 * cp-support.c: Include "safe-ctype.h".
(cp_already_canonical): New function.
	(cp_canonicalize_string): Use it.  Return NULL for already canonical
	strings.
	(mangled_name_to_comp): Update call to cp_demangled_name_to_comp.
	(cp_func_name, remove_params): Likewise.
	(cp_find_first_component_aux): Use ISSPACE.
	* cp-support.h (cp_demangled_name_to_comp): Correct comment.  Remove
	MEMORY_P argument.
	* cp-name-parser.y (ALLOC_CHUNK): Define.
	(struct demangle_info): Add PREV and NEXT.  Increase the size of
	COMPS.
	(d_grab): Convert to a function.
	(allocate_info): Rewrite.
	(cp_demangled_name_to_comp): Remove MEMORY argument.  Do not use
	strlen.  Update call to allocate_info.  Do not free it on failure.
	(main): Update calls to cp_demangled_name_to_comp.
	* Makefile.in (cp-support.o): Update.
2007-10-22 14:37:36 +00:00
Daniel Jacobowitz 7cc46491b1 * 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.

	* gdb.texinfo (Predefined Target Types): Add int128
	and uint128.
	(Standard Target Features): Add PowerPC features.

	* gdb.xml/tdesc-regs.exp: Add PowerPC support.

	* sim-ppc.h (sim_spr_register_name): New prototype.

	* gdb-sim.c (regnum2spr): Rename to...
	(sim_spr_register_name): ... this.  Make global.
2007-10-15 19:45:31 +00:00
Daniel Jacobowitz 81adfcedc8 * 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.

	* gdb.texinfo (Maintenance Commands): Document "maint print c-tdesc".
2007-10-15 19:19:18 +00:00
Ulrich Weigand 62f6180c25 * alpha-mdebug-tdep.c: Include "gdb_string.h".
(find_proc_desc): Add fix-up code for setjmp procedure descriptor.
	* mdebugread.c (parse_procedure): Remove setjmp fix-up code.
	* Makefile.in (alpha-mdebug-tdep.o): Update dependencies.

	* config/alpha/alpha.mt (DEPRECATED_TM_FILE): Remove.
	* config/alpha/alpha-linux.mt (DEPRECATED_TM_FILE): Remove.
	* config/alpha/alpha-osf1.mt (DEPRECATED_TM_FILE): Remove.
	* config/alpha/fbsd.mt (DEPRECATED_TM_FILE): Remove.
	* config/alpha/tm-alpha.h: Remove file.
2007-10-12 16:13:20 +00:00
Pierre Muller cd6c7346a6 2007-10-09 Pierre Muller <muller@ics.u-strasbg.fr>
* p-lang.h (pascal_main_name): Add declaration.
        * p-lang.c (GPC_P_INITIALIZE, GPC_MAIN_PROGRAM_NAME_1)
        (GPC_MAIN_PROGRAM_NAME_2): New constants.
        (pascal_main_name): New function.
        * symtab.c: Include p-lang.h.
        (find_main_name): Add call to pascal_main_name.
        * Makefile.in (symtab.o): Add dependency on p-lang.h.
2007-10-09 06:59:27 +00:00
Pierre Muller 91c066694a 2007-10-08 Pierre Muller <muller@ics.u-strasbg.fr>
* linux-fork.c: ARI fix: include "gdb_dirent.h" instead of <dirent.h>.
	Makefile.in (linux-fork.o): Add gdb_dirent.h dependency.
2007-10-08 15:09:04 +00:00
Pierre Muller cdf430071a 2007-10-08 Pierre Muller <muller@ics.u-strasbg.fr>
* linux-fork.c: ARI fix: include "gdb_wait.h" instead of <sys/wait.h>.
	Makefile.in (linux-fork.o): Add gdb_wait.h dependency.
2007-10-08 07:43:43 +00:00
Daniel Jacobowitz daddc3c15f * arm-linux-tdep.c (arm_linux_software_single_step): New.
(arm_linux_init_abi): Use it.
	* arm-tdep.c (arm_get_next_pc): Make global.  Handle all-ones
	condition correctly.
	* arm-tdep.h (arm_get_next_pc): Declare.
	* Makefile.in (arm-linux-tdep.o): Update.
2007-09-27 18:48:33 +00:00
Joel Brobecker 8d4e36bad1 * solib-svr4.c: Add include of "auxv.h".
(enable_break): Use the AT_BASE auxiliary entry if available.
        * Makefile.in (solib-svr4.o): Update dependencies.
2007-09-17 19:32:53 +00:00
Jerome Guitton eff4f95e29 * dwarf2loc.c (dwarf_expr_frame_base): Guard against NULL.
* Makefile.in (dwarf2loc.o): Depend on gdb_assert.h.
2007-09-17 14:53:05 +00:00
Michael Snyder fcd776e547 2007-09-04 Michael Snyder <msnyder@access-company.com>
* expprint.c (print_subexp_standard): Check strchr for null.
	* Makefile.in (expprint.o): Depend on gdb_assert.h.
2007-09-05 00:14:02 +00:00
Michael Snyder 8fb822e099 2007-09-04 Michael Snyder <msnyder@access-company.com>
* stabsread.c (patch_block_status): Guard against null.
	* Makefile.in (stabsread.o): Depend on gdb_assert.h.
2007-09-05 00:01:41 +00:00
Pedro Alves de1b3c3d02 * infcmd.c (post_create_inferior): Update comment.
(run_command_1): Always call post_create_inferior with 0 as
	from_tty.

	* i386-cygwin-tdep.h: New.
	* i386-cygwin-tdep.c: Include "i386-cygwin-tdep.h".
	(win32_xfer_shared_library): Make it extern.

	* win32-nat.c: Include gdb_obstack.h and xml-support.h and
	i386-cygwin-tdep.h.
	(win32_so_ops): Delete.
	(get_relocated_section_addrs): Delete.
	(solib_symbols_add): Delete.
	(register_loaded_dll): Delete.
	(win32_make_so): New.
	(handle_load_dll): Use win32_make_so.
	(win32_free_so): Free the passed in so.
	(win32_relocate_section_addresses): Delete.
	(win32_solib_create_inferior_hook): Delete.
	(handle_unload_dll): Don't add PE offset here.  Free so with
	win32_free_so instead of free_so.
	(win32_special_symbol_handling): Delete.
	(get_win32_debug_event): Remove unneeded calls.  Set state to
	TARGET_WAITKIND_LOADED on a dll unload.
	(do_initial_win32_stuff): Clear cygwin_load_start and
	cygwin_load_end.
	(map_code_section_args): Delete.
	(dll_code_sections_add): Delete.
	(core_section_load_dll_symbols): Delete.
	(win32_xfer_shared_libraries): New.
	(win32_current_sos): Delete.
	(win32_xfer_partial): New.
	(open_symbol_file_object): Delete.
	(in_dynsym_resolve_code): Delete.
	(init_win32_ops): Set win32_xfer_partial as to_xfer_partial member
	of win32_ops.  Remove win32_so_ops settings.  Don't set
	current_target_so_ops here.

	* Makefile.in (i386_cygwin_tdep_h): New variable.
	(i386-cygwin-tdep.o): Update dependencies.
	(win32-nat.o): Update dependencies.
2007-09-04 01:12:18 +00:00
Pedro Alves de58486143 * gdbarch.sh (core_xfer_shared_libraries): New.
* corelow.c (core_xfer_partial): Handle TARGET_OBJECT_LIBRARIES.

	* gdb_obstack.h (obstack_grow_str, obstack_grow_str0): New.

	* xml-support.c (gdb_xml_parse): Debug output tweaks.
	(xml_escape_text): New.
	* xml-support.h (xml_escape_text): Declare.

	* config/i386/cygwin.mh (NATDEPFILES): Move corelow.o to ...
	* config/i386/cygwin.mt (TDEPFILES): ... here.

	* win32-nat.c: (fetch_elf_core_registers): Delete.
	(win32_elf_core_fn): Delete.
	(_initialize_core_win32): Delete.

	* i386-cygwin-tdep.c: Include "regset.h", "gdb_objstack.h",
	"xml-support.h" and "gdbcore.h".
	(i386_win32_gregset_reg_offset): New.
	(I386_WIN32_SIZEOF_GREGSET): New.
	(i386_win32_regset_from_core_section): New.
	(win32_xfer_shared_library): New.
	(struct cpms_data): New.
	(core_process_module_section): New.
	(win32_core_xfer_shared_libraries): New.
	(i386_cygwin_skip_trampoline_code): Register gregset_reg_offset,
	gregset_num_regs, sizeof_gregset members of tdep.  Register
	regset_from_core_section and core_xfer_shared_libraries callbacks.

	* Makefile.in (i386-cygwin-tdep.o): Update dependencies.
	* gdbarch.h, gdbarch.c: Regenerate.
2007-09-03 23:06:35 +00:00
Pedro Alves 6dc134122f * arm-tdep.h (arm_skip_stub): Declare.
* arm-wince-tdep.c: Don't include "solib-svr4.h".  Include
	"gdbcore.h".
	(arm_pe_skip_trampoline_code): New function.
	(arm_wince_init_abi): Register arm_pe_skip_trampoline_code as
	gdbarch_skip_trampoline_code callback.
	* Makefile.in (arm-wince-tdep.o): Update dependencies.
2007-09-03 22:24:24 +00:00
Andreas Schwab 6a30b0a545 * configure.ac: Accept --with-system-readline.
(READLINE, READLINE_DEPS, READLINE_CFLAGS): Define and substitute.
	* configure: Regenerate.
	* Makefile.in (READLINE, READLINE_DEPS, READLINE_CFLAGS): Use
	substituted values.
	(CDEPS): Use $(READLINE_DEPS) instead of $(READLINE).
2007-09-03 19:00:16 +00:00
Jan Kratochvil 77069918ac * Makefile.in (symfile.o): Update dependencies.
* symfile.c (symbol_file_add_with_addrs_or_offsets): Initialize the
	DEBUGFILE variable.  FIND_SEPARATE_DEBUG_FILE called only if !PSYMTABS.
	(struct build_id): New structure.
	(build_id_bfd_get, build_id_verify, build_id_to_debug_filename): New.
	(find_separate_debug_file): New variable BUILD_ID.
	Call BUILD_ID_BFD_GET with BUILD_ID_TO_DEBUG_FILENAME as the first try.
2007-09-01 08:18:15 +00:00
Joel Brobecker 4de6a07ed0 * Makefile.in (copying.c): Use the top-level COPYING3 as the file
that contains the GDB license.
        * copying.awk: Adjust to the GPLv3 wording.
        * copying.c: Regenerate.
2007-08-23 20:33:48 +00:00
Joel Brobecker adee02064a * Makefile.in (i386nbsd-nat.o): Add missing dependency. 2007-08-10 17:52:09 +00:00
Joel Brobecker 271a27b8c3 * Makefile.in: Minor cleanup throughout; add some missing variables,
add some missing rules, remove some rules that are no longer needed,
        and fix the dependencies in several rules.
2007-08-10 17:26:45 +00:00
Ludovic Courtès d4310edb35 Re-instated Guile/Scheme support. 2007-08-09 23:01:17 +00:00
Maciej W. Rozycki c80a96a874 gdb/:
* Makefile.in (MAKEHTMLFLAGS): Also search the current directory
for include files.

gdb/doc/:
* Makefile.in (MAKEHTMLFLAGS): Also search the current directory
for include files.
2007-07-26 10:34:00 +00:00
Maciej W. Rozycki 5b31182830 * Makefile.in (MAKEHTMLFLAGS): Remove "-glossary". 2007-07-25 15:25:14 +00:00
Ulrich Weigand 3a40aaa0eb 2007-07-03 Markus Deuling <deuling@de.ibm.com>
* cp-namespace.c (lookup_symbol_file): Add block to
	lookup_symbol_global call.
	* Makefile.in (solist_h): Add dependency on symtab header.
	(symtab.o): Add dependency on solist header.
	* solib.c (solib_global_lookup): New function.
	* solib-svr4.c (scan_dyntag): Likewise.
	(elf_locate_base): Call helper routine scan_dyntag.
	(elf_lookup_lib_symbol): New function.
	(_initialize_svr4_solib): Add elf_lookup_lib_symbol to svr4_so_ops.
	* solist.h (symtab.h): New include.
	(struct target_so_ops): New member lookup_lib_global_symbol.
	(solib_global_lookup): New prototype.
	* symtab.c: New include solist.h.
	(lookup_objfile_from_block): New function.
	(lookup_global_symbol_from_objfile): New function.
	(basic_lookup_symbol_nonlocal): Add block to lookup_symbol_global call.
	(lookup_symbol_global): Call library-specific lookup procedure.
	* symtab.h (lookup_global_symbol_from_objfile): New prototype.

	* NEWS: Document framework.

testsuite/

	* gdb.base/solib-symbol.exp: New file (testcase multiple symbol lookup).
	* gdb.base/solib-symbol-lib.c: Likewise.
	* gdb.base/solib-symbol-main.c: Likewise.
2007-07-03 12:14:44 +00:00
Daniel Jacobowitz cfa9d6d991 * Makefile.in (XMLFILES): Add library-list.dtd.
(ALLDEPFILES): Add solib-target.o.
	(solib-target.o): New rule.
	* remote.c (PACKET_qXfer_libraries): New constant.
	(remote_protocol_features): Add qXfer:libraries:read.
	(remote_wait): Recognize library stop replies.
	(remote_async_wait): Likewise.  Fix typo.
	(remote_xfer_partial): Handle TARGET_OBJECT_LIBRARIES.
	(init_remote_async_ops): Fix typo.
	(_initialize_remote): Register "set remote library-info-packet".
	* solib-som.c (som_current_sos): Set addr_low and addr_high.
	* solib-target.c: New file.
	* solib.c (solib_map_sections): Use addr_low and addr_high instead
	of textsection.
	(info_sharedlibrary_command): Likewise.
	(solib_add_library, solib_remove_library): New.
	* solist.h (struct so_list): Replace textsection with addr_low and
	addr_high.
	* target.h (enum target_object): Add TARGET_OBJECT_LIBRARIES.
	* NEWS: Describe new qXfer:libraries:read and shared library
	event support.
	* features/library-list.dtd: New.

	* gdb.texinfo (Remote Configuration): Document library-info-packet.
	Add other missing entries.  Adjust the table size to fit.
	(Stop Reply Packets): Use @itemize instead of @enumerate.  Document
	stop reasons including the new "library" event.
	(General Query Packets): Adjust table widths for qSupported.  Mention
	qXfer:libraries:read reply to qSupported and document the new packet.
	(Library List Format): New section.
2007-07-02 22:01:09 +00:00
Daniel Jacobowitz 31d99776c7 * coffread.c (coff_sym_fns): Add default_symfile_segments.
* dbxread.c (start_psymtab): Check HAVE_ELF.
	(aout_sym_fns): Likewise.
	* elfread.c (elf_symfile_segments): New.
	(elf_sym_fns): Add elf_symfile_segments.
	* mipsread.c (ecoff_sym_fns): Add default_symfile_segments.
	* remote.c (get_offsets): Use symfile_map_offsets_to_segments.
	Skip if there is no symfile_objfile.  Handle TextSeg and DataSeg.
	* somread.c (som_sym_fns): Use default_symfile_segments.
	* symfile.c (find_sym_fns): Take a BFD and return the sym_fns.
	(init_objfile_sect_indices): Call symfile_find_segment_sections.
	(default_symfile_segments): New function.
	(syms_from_objfile): Update call to find_sym_fns.
	(symfile_get_segment_data, free_symfile_segment_data): New.
	(symfile_map_offsets_to_segments): New.
	(symfile_find_segment_sections): New.
	* symfile.h (struct symfile_segment_data): New.
	(struct sym_fns): Add sym_segments.
	(default_symfile_segments, symfile_get_segment_data)
	(free_symfile_segment_data): New prototypes.
	(symfile_map_offsets_to_segments): Likewise.
	* xcoffread.c (xcoff_sym_fns): Add default_symfile_segments.
	* Makefile.in (COMMON_OBS): Remove elfread.o.
	(elf_internal_h): New.
	(elfread.o): Update.
	* configure.ac: Add elfread.o to COMMON_OBS if bfd/elf.o was
	compiled.
	* config.in, configure: Regenerated.
	* NEWS: Mention qOffsets changes.

	* gdb.texinfo (General Query Packets): Document qOffsets changes.

	* Makefile.def: Add dependency from configure-gdb to all-bfd.
	* Makefile.in: Regenerated.
2007-06-18 15:46:38 +00:00
Vladimir Prus 8ed86d01ca * m68k-tdep.h (enum m68k_flavour): New.
(struct gdbarch_tdep): New fields
	float_return, flavour and fpregs_present.
	* m68k-tdep.c (m68k_register_type): Use
	fpregs_present and conditionalize floating
	registers type on flavour.
	(m68k_register_names): New.
	(m68k_register_name): Use the above.
	(m68k_convert_register_p): Consult fpregs_present.
	(m68k_register_to_value, m68k_value_to_register):
	Use register_type to obtain the type of floating
	point registers.
	(m68k_svr4_extract_return_value): Check tdep->float_return.
	Use register_type to get the type of floating
	point regiters.
	(m68k_svr4_store_return_value): Likewise.
	(m68k_dwarf_reg_to_regnum): Check tdep->fpregs_present.
	(m68k_analyze_register_saves): Likewise.
	(m68k_gdbarch_init): Extract infromation
	from XML description, if present.  Guess coldfire by
	looking at the file, if present. Conditionalize
	setting of long double format.  Set decr_pc_after_break
	to 2 on coldfire and fido.  Enable XML-driven
	register description.
	* m68kbsd-tdep.c (m68kbsd_fpreg_offset): Use
	size of tdep->fpreg_type, as opposed to hardcoded value.
	* Makefile.in (m68k-tdep.o): Update dependencies.
2007-06-15 20:19:17 +00:00
Daniel Jacobowitz 822b65708d * config/mips/linux.mh (TDEP_XML): New.
* features/mips-linux.xml, features/mips64-linux.xml: New files.
	* mips-linux-nat.c (mips_linux_register_addr): Handle
	MIPS_RESTART_REGNUM.
	(mips64_linux_register_addr): Likewise.
	(super_xfer_partial, mips_linux_xfer_partial): New.
	(_initialize_mips_linux_nat): Add them to the target_ops.
	* mips-linux-tdep.c (mips_supply_gregset): Handle MIPS_RESTART_REGNUM.
	(mips_fill_gregset, mips64_supply_gregset, mips64_fill_gregset)
	(mips_linux_o32_sigframe_init)
	(mips_linux_n32n64_sigframe_init): Likewise.
	(mips_linux_write_pc, mips_linux_restart_reg_p): New.
	(mips_linux_init_abi): Use mips_linux_write_pc.  Check for the
	"org.gnu.gdb.mips.linux" feature.
	* mips-linux-tdep.h (MIPS_RESTART_REGNUM): New constant.
	(mips_linux_restart_reg_p): New prototype.
	* mips-tdep.c (mips_gdbarch_init): Pass tdesc_data to the OS/ABI
	initialization routine.
	* Makefile.in (mips-linux-tdep.o, mips-linux-nat.o): Update.

	* gdb.texinfo (MIPS Features): Document org.gnu.gdb.mips.linux.
2007-06-13 18:47:58 +00:00
Daniel Jacobowitz f8b73d13b7 * Makefile.in (mips-tdep.o): Update.
* mips-tdep.c (struct register_alias, mips_o32_aliases)
	(mips_n32_n64_aliases, mips_register_aliases): New.
	(mips_register_name): Call tdesc_register_name.
	(mips_tdesc_register_reggroup_p): New.
	(mips_pseudo_register_type, value_of_mips_user_reg): New.
	(mips_gdbarch_init): Add target-described register support.
	Register aliases for register names.
	* target-descriptions.c (tdesc_register_name): Make global.
	(tdesc_register_in_reggroup_p): New function, broken out from
	tdesc_register_reggroup_p.
	(tdesc_register_reggroup_p): Use it.
	* target-descriptions.h (tdesc_register_name)
	(tdesc_register_in_reggroup_p): New prototypes.
	* NEWS: Correct formatting.  Mention MIPS register support.
	* features/mips-cp0.xml, features/mips-fpu.xml,
	features/mips64-cp0.xml, gdb/features/mips64-fpu.xml, mips-cpu.xml,
	features/mips64-cpu.xml: New files.

	* gdb.xml/tdesc-regs.exp: Add MIPS support.  Allow multiple
	required features to be included.

	* gdb.texinfo (MIPS Features): New subsection.
2007-06-13 18:27:00 +00:00
Joel Brobecker 8905984da1 * solib-aix5.c: Delete.
* Makefile.in (solib-aix5.o): Delete rule.
2007-05-28 16:55:30 +00:00
Maciej W. Rozycki 23776285b7 gdb/:
* ser-unix.c (show_serial_hwflow): New function.
(hardwire_raw): Add hardware flow control support.
(_initialize_ser_hardwire): Add "set/show remoteflow".
* Makefile.in (ser-unix.o): Depend on $(gdbcmd_h).
* NEWS: Document the new command.

gdb/doc/:
* gdb.texinfo (Remote Configuration): Document "set/show
remoteflow".
2007-05-22 10:57:12 +00:00
Daniel Jacobowitz 7d522c902e * config/mips/linux.mt (DEPRECATED_TM_FILE): Delete.
* config/mips/tm-linux.h: Delete.
	* mips-linux-tdep.c (mips_svr4_so_ops): New.
	(mips_linux_in_dynsym_resolve_code): Make static.  Use
	svr4_in_dynsym_resolve_code.
	(mips_linux_init_abi): Initialize mips_svr4_so_ops.  Call
	set_solib_ops.
	* solib-svr4.c (svr4_in_dynsym_resolve_code, svr4_so_ops): Make
	global.
	* solib-svr4.h (svr4_so_ops, svr4_in_dynsym_resolve_code): Declare.
	* Makefile.in (mips-linux-tdep.o): Update.
	* solib.c (set_solib_ops): New.
	(current_target_so_ops): Update comment.
	* solib.h (set_solib_ops): New prototype.
2007-05-16 14:07:56 +00:00
Daniel Jacobowitz 76e1ee85c1 * gdb_proc_service.h (paddr_t): Delete typedef.
* proc-service.c (ps_addr_to_core_addr, core_addr_to_ps_addr): New.
	(ps_xfer_memory): Take a psaddr_t.  Use ps_addr_to_core_addr.
	(ps_pglobal_lookup): Take a psaddr_t *.  Use core_addr_to_ps_addr.
	(ps_pdread, ps_pdwrite, ps_ptread, ps_ptwrite): Take a psaddr_t.
	* sol-thread.c (gdb_ps_addr_t): Use psaddr_t instead of paddr_t.
	* Makefile.in (proc-service.o): Update.
2007-05-14 17:33:33 +00:00
Daniel Jacobowitz 2bd0c3d7a7 * Makefile.in (mips-tdep.o): Update.
* mips-tdep.c (mips_gdbarch_init): Register the dwarf2 CFI
	unwinder.
2007-05-14 17:23:54 +00:00
Ulrich Weigand e7b178235e * hppa-hpux-tdep.c: Include "regcache.h".
* hppa-linux-tdep.c: Likewise.
	* hppa-tdep.c: Include "gdb_stdint.h".
	(find_unwind_entry): Cast host pointer to uintptr_t before passing
	it to paddr_nz.
	* Makefile.in: Update dependencies.
2007-05-13 13:02:54 +00:00
Ulrich Weigand dcf52cd8d5 * spu-tdep.c: Include "observer.h".
(spu_frame_unwind_cache): Unwind PC through overlay return stubs.
	(spu_overlay_data): New variable.
	(struct spu_overlay_table): New type.
	(spu_get_overlay_table, spu_overlay_update_osect, spu_overlay_update,
	spu_overlay_new_objfile): New functions.
	(spu_gdbarch_init): Install spu_overlay_update.
	(_initialize_spu_tdep): Register spu_overlay_new_objfile,
	allocate spu_overlay_data objfile data.
2007-05-11 19:58:38 +00:00
Ulrich Weigand 06d3b283b1 doc/ChangeLog:
* observer.texi (GDB Observers): New observer "new_objfile".

ChangeLog:

	* observer.sh: Add "struct objfile" forward declaration.
	* target.h (deprecated_target_new_objfile_hook): Remove.
	* symfile.c (deprecated_target_new_objfile_hook): Remove.
	(clear_symtab_users): Call observer_notify_new_objfile.
	(symbol_file_add_with_addrs_or_offsets): Likewise.
	* rs6000-nat.c: Include "observer.h".
	(vmap_ldinfo): Call observer_notify_new_objfile.
	(xcoff_relocate_core): Likewise.
	* remote.c (remote_new_objfile_chain): Remove.
	(remote_new_objfile): Do not call remote_new_objfile_chain.
	(_initialize_remote): Use observer_attach_new_objfile.
	* tui/tui-hooks.c (tui_target_new_objfile_chain): Remove.
	(tui_new_objfile_hook): Do not call tui_target_new_objfile_chain.
	(_initialize_tui_hooks): Use observer_attach_new_objfile.
	* aix-thread.c: Include "observer.h".
	(target_new_objfile_chain): Remove.
	(new_objfile): Do not call target_new_objfile_chain.
	(_initialize_aix_thread): Use observer_attach_new_objfile.
	* hpux-thread.c: Include "observer.h"
	(target_new_objfile_chain): Remove.
	(hpux_thread_new_objfile): Make static.  Do not call
	target_new_objfile_chain.
	(_initialize_hpux_thread): Use observer_attach_new_objfile.
	* linux-thread-db.c: Include "observer.h".
	(target_new_objfile_chain): Remove.
	(thread_db_new_objfile): Do not call target_new_objfile_chain.
	(_initialize_thread_db): Use observer_attach_new_objfile.
	* sol-thread.c: Include "observer.h".
	(target_new_objfile_chain): Remove.
	(sol_thread_new_objfile): Make static.  Do not call
	target_new_objfile_chain.
	(_initialize_sol_thread): Use observer_attach_new_objfile.
	* Makefile.in (aix-thread.o, hpux-thread.o, linux-thread-db.o,
	rs6000-nat.o, sol-thread.o, tui-hooks.o): Add dependency on
	$(observer_h).
2007-05-11 19:55:20 +00:00
Ulrich Weigand b9efddcd6f * spu-linux-nat.c: Include "gdb_stdint.h".
(fetch_ppc_register): Use uint64_t instead of unsigned long long.
	(fetch_ppc_memory_1, store_ppc_memory_1): Likewise.
	(fetch_ppc_memory, store_ppc_memory): Fix coding style.
	(spu_symbol_file_add_from_memory): Use strtoulst instead of sscanf.
	(spu_child_wait): Mark up string for translation.
2007-05-08 23:18:23 +00:00
Daniel Jacobowitz b18be20d0a * Makefile.in (c-lang.o, gnu-v3-abi.o): Update.
* NEWS: Mention improved C++ thunk support.
	* c-lang.c (cplus_language_defn): Mention cplus_skip_trampoline.
	* cp-abi.c (cplus_skip_trampoline): New.
	* cp-abi.h (cplus_skip_trampoline): New prototype.
	(struct cp_abi_ops): Add skip_trampoline member.
	* gnu-v3-abi.c (gnuv3_skip_trampoline): New.
	(init_gnuv3_ops): Set skip_trampoline.

	* gdb.cp/virtfunc.exp (proc do_tests): Test stepping through a thunk.
2007-05-07 11:49:05 +00:00
Ulrich Weigand 1da33a4a1b * inftarg.c, infptrace.c: Remove files.
* Makefile.in (ALLDEPFILES): Remove inftarg.c and infptrace.c
	(inftarg.o, infptrace.o): Remove rules.
	* gdbcore.h (register_addr): Remove prototype.
	* inferior.h (kill_inferior, store_inferior_registers,
	fetch_inferior_registers, attach, detach, ptrace_wait, child_resume,
	call_ptrace, pre_fork_inferior): Remove prototypes.
	* target.h (child_xfer_memory, child_pid_to_exec_file,
	child_core_file_to_sym_file, child_post_attach,
	child_post_startup_inferior, child_acknowledge_created_inferior,
	child_insert_fork_catchpoint, child_remove_fork_catchpoint,
	child_insert_vfork_catchpoint, child_remove_vfork_catchpoint,
	child_insert_exec_catchpoint, child_remove_exec_catchpoint,
	child_follow_fork, child_reported_exec_events_per_exec_call,
	child_has_exited, child_thread_alive): Remove prototypes.
2007-05-07 00:21:04 +00:00
Ulrich Weigand 7f7fe91e15 * gregset.h (struct regcache): Add forward declaration.
(supply_gregset): Add REGCACHE parameter, make GREGS const.
	(supply_fpregset): Add REGCACHE parameter, make FPREGS const.
	(supply_fpxregset): Add REGCACHE parameter, make FPXREGS const.
	(fill_gregset): Add REGCACHE parameter.
	(fill_fpregset): Likewise.
	(fill_fpxregset): Likewise.

	Update all definitions accordingly:
	* alphabsd-nat.c, alpha-linux-nat.c, alpha-nat.c, amd64-linux-nat.c,
	arm-linux-nat.c, hppa-linux-nat.c, i386gnu-nat.c, i386-linux-nat.c,
	i386-sol2-nat.c, i386v4-nat.c, ia64-linux-nat.c, irix5-nat.c,
	m32r-linux-nat.c, m68klinux-nat.c, mips-linux-nat.c, ppc-linux-nat.c,
	s390-nat.c, sparc64-linux-nat.c, sparc-linux-nat.c, sparc-sol2-nat.c
	(supply_gregset): Add REGCACHE parameter, use it instead of
	current_regcache.  Make GREGSETP parameter const, adapt casts.
	(supply_fpregset): Add REGCACHE parameter, use it instead of
	current_regcache.  Make FPREGSETP parameter const, adapt casts.
	(fill_gregset): Add REGCACHE parameter, use it instead of
	current_regcache.
	(fill_fpregset): Likewise.

	Update all callers to pass in current_regcache as the new argument:
	* core-regset.c: Include "regcache.h".
	(fetch_core_registers): Update supply_gregset,and supply_fpregset calls.
	* procfs.c: Include "regcache.h".
	(procfs_fetch_registers): Update supply_gregset, supply_fpregset calls.
	(procfs_store_registers): Update fill_gregset, fill_fpregset calls.
	(procfs_do_thread_registers): Likewise.
	(procfs_make_note_section): Likewise.
	* proc-service.c: Include "regcache.h".
	(ps_lgetregs): Update fill_gregset call.
	(ps_lsetregs): Update supply_gregset call.
	(ps_lgetfpregs): Update fill_fpregset call.
	(ps_lsetfpregs): Update supply_fpregset call.
	* sol-thread.c (sol_thread_fetch_registers): Update supply_gregset,
	supply_fpregset calls.
	(sol_thread_store_registers): Update fill_gregset, fill_fpregset calls.
	(ps_lgetregs): Update fill_gregset call.
	(ps_lsetregs): Update supply_gregset call.
	(ps_lgetfpregs): Update fill_fpregset call.
	(ps_lsetfpregs): Update supply_fpregset call.

	* linux-nat.c (linux_nat_do_thread_registers): Update fill_gregset,
	fill_fpregset, and fill_fpxregset calls.
	* i386-linux-nat.c (fetch_regs): Update supply_gregset call.
	(store_regs): Update fill_gregset call.
	(fetch_fpregs): Update supply_fpregset call.
	(store_fpregs): Update fill_fpregset call.
	(fetch_fpxregs): Update supply_fpxregset call.
	(store_fpxregs): Update fill_fpxregset call.
	* m32r-linux-nat.c (fetch_regs): Update supply_gregset call.
	(store_regs): Update fill_gregset call.
	* m68klinux-nat.c (fetch_regs): Update supply_gregset call.
	(store_regs): Update fill_gregset call.
	(fetch_fpregs): Update supply_fpregset call.
	(store_fpregs): Update fill_fpregset call.
	(fetch_core_registers): Update supply_gregset, supply_fpregset calls.
	* s390-nat.c (fetch_regs): Update supply_gregset call.
	(store_regs): Update fill_gregset call.
	(fetch_fpregs): Update supply_fpregset call.
	(store_fpregs): Update fill_fpregset call.

	* Makefile.in (core-regset.o, procfs.o, proc-service.o): Update
	dependencies.
2007-05-06 14:32:31 +00:00
Ulrich Weigand 4e3269e3f1 * shnbsd-tdep.c (shnbsd_supply_reg): Add REGCACHE parameter, use it
instead of current_regcache.  Make REGS const.
	(shnbsd_fill_reg): Add REGCACHE parameter; replace current_regcache.
	* shnbsd-tdep.h (shnbsd_supply_reg, shnbsd_fill_reg): Update
	prototypes.
	* shnbsd-nat.c: Include "regcache.h".
	(shnbsd_fetch_inferior_registers): Pass current_regcache to
	shnbsd_supply_reg.
	(shnbsd_store_inferior_registers): Pass current_regcache to
	shnbsd_fill_reg.
	* Makefile.in (shbsd-nat.o): Update dependencies.
2007-05-06 14:29:58 +00:00
Ulrich Weigand 28f5035f33 * mips-linux-tdep.c (supply_32bit_reg): Add REGCACHE parameter. Use it
instead of current_regcache.
	(mips_supply_gregset): Likewise.  Pass REGCACHE to supply_32bit_reg.
	Make GREGSETP const, remove superfluous casts.
	(mips_fill_gregset): Add REGCACHE parameter; replace current_regcache.
	(mips_supply_fpregset): Likewise.  Make FPREGSETP const, remove
	superfluous casts.
	(mips_fill_fpregset): Add REGCACHE parameter; replace current_regcache.
	(supply_64bit_reg): Likewise
	(mips64_supply_gregset): Likewise.  Pass REGCACHE to supply_64bit_reg.
	Make GREGSETP const, adapt casts accordingly.
	(mips64_fill_gregset): Add REGCACHE parameter; replace current_regcache.
	(mips64_supply_fpregset): Likewise.  Make FPREGSET const, adapt
	casts accordingly.
	(mips64_fill_fpregset): Add REGCACHE parameter; replace current_regcache.
	(fetch_core_registers): Pass current_regcache to mips{64}_(supply|fill)_
	helper routines.
	* mips-linux-tdep.h (mips_supply_gregset, mips_fill_gregset,
	mips_supply_fpregset, mips_fill_fpregset, mips64_supply_gregset,
	mips64_fill_gregset, mips64_supply_fpregset, mips64_fill_fpregset):
	Adapt prototypes.
	* mips-linux-nat.c: Include "regcache.h".
	(supply_gregset, fill_gregset, supply_fpregset, fill_fpregset): Pass
	current_regcache to mips{64}_(supply|fill)_ helper routines.
	(mips64_linux_regsets_fetch_registers): Likewise.
	(mips64_linux_regsets_store_registers): Likewise.

	* mipsnbsd-tdep.c (mipsnbsd_supply_reg, mipsnbsd_supply_fpreg): Add
	REGCACHE argument; replace current_regcache.  Make REGS const.
	(mipsnbds_fill_reg, mipsnbsd_fill_fpreg): Add REGCACHE argument;
	replace current_regcache.
	* mipsnbsd-tdep.h (ipsnbsd_supply_reg, mipsnbsd_supply_fpreg,
	mipsnbds_fill_reg, mipsnbsd_fill_fpreg): Adapt prototypes.
	* mipsnbsd-nat.c (mipsnbsd_fetch_inferior_registers,
	mipsnbsd_store_inferior_registers): Pass current_regcache to
	mipsnbsd_(supply|fill)_... helper routines.

	* Makefile.in (mips-linux-nat.o): Update dependencies.
2007-05-06 14:29:15 +00:00
Ulrich Weigand 390c15228a * alpha-tdep.c (alpha_supply_int_regs, alpha_fill_int_regs,
alpha_supply_fp_regs, alpha_fill_fp_regs): Add REGCACHE parameter,
	use it instead of current_regcache.
	* alpha-tdep.h (struct regcache): Add forward declaration.
	(alpha_supply_int_regs, alpha_fill_int_regs, alpha_supply_fp_regs,
	alpha_fill_fp_regs): Update prototypes.

	* alpha-nat.c: (supply_gregset, fill_gregset, supply_fpregset,
	fill_fpregset): Pass current_regcache to alpha_supply/fill_ routines.
	* alpha-linux-nat.c: Include "regcache.h".
	(supply_gregset, fill_gregset, supply_fpregset, fill_fpregset): Pass
	current_regcache to alpha_supply/fill_ routines.

	* alphabsd-tdep.c: Include "regcache.h".
	(alphabsd_supply_reg, alphabsd_supply_fpreg): Add REGCACHE paramter,
	pass it to alpha_supply_ routines.  Make REGS const.
	(alphabsd_fill_reg, alphabsd_fill_fpreg): Add REGCACHE parameter,
	pass it to alpha_fill_ routines.
	* alphabsd-tdep.h (struct regcache): Add forward declaration.
	(alphabsd_supply_reg, alphabsd_fill_reg, alphabsd_supply_fpreg,
	alphabsd_fill_fpreg): Update prototypes.

	* alphanbsd-nat.c (supply_gregset, fill_gregset, supply_fpregset,
	fill_fpregset, alphabsd_fetch_inferior_registers,
	alphabsd_store_inferior_registers): Pass current_regcache to
	alphabsd_supply/fill_ routines.

	* Makefile.in (alpha-linux-nat.o, alphabsd-tdep.o): Update
	dependencies.
2007-05-06 14:12:13 +00:00
Ulrich Weigand 3e00823eb4 * m68klinux-nat.c: Remove #ifndef USE_PROC_FS check.
* m68k-tdep.c: Remove code within #ifdef USE_PROC_FS.

	* mips-linux-nat.c: Include "gregset.h".
	(supply_gregset, fill_gregset, supply_fpregset, fill_fpregset): Move
	from mips-linux-tdep.c.  Change parameter type to gdb_gregset_t.
	* mips-linux-tdep.c (supply_gregset, fill_gregset, supply_fpregset,
	fill_fpregset): Move to mips-linux-nat.c.

	* Makefile.in (m68k-tdep.o, mips-linux-nat.o): Update dependencies.
2007-04-29 19:44:22 +00:00
Ulrich Weigand 7a61a01c89 * rs6000-aix-tdep.c: Include "regcache.h", "regset.h", and
"gdb_string.h".
	(rs6000_aix32_reg_offsets, rs6000_aix64_reg_offsets): New variables.
	(rs6000_aix_supply_regset, rs6000_aix_collect_regset): New functions.
	(rs6000_aix32_regset, rs6000_aix64_regset): New variables.
	(rs6000_aix_regset_from_core_section): New function.
	(rs6000_aix_init_osabi): Register it.
	(_initialize_rs6000_aix_tdep): Register GDB_OSABI_AIX osabi and
	sniffer for bfd_arch_powerpc as well as bfd_arch_rs6000.
	* rs6000-nat.c (CoreRegs): Do not define type.
	(fetch_core_registers, rs6000_core_fns): Remove.
	(_initialize_core_rs6000): Do not register it.  Rename to ...
	(_initialize_rs6000_nat): ... this.
	* Makefile.in (rs6000-aix-tdep.o): Update dependencies.
2007-04-28 16:47:00 +00:00
Maciej W. Rozycki 66a0218a1e gdb/:
* Makefile.in (gdbtk-wrapper.o): Update dependencies.
(gdbtk-varobj.o, gdbtk-cmds.o, gdbtk-stack.o): Likewise.

gdb/gdbtk/:
* generic/gdbtk-wrapper.c (GDB_varobj_update): New function.
(wrap_varobj_update): Likewise.
* generic/gdbtk-wrapper.h (GDB_varobj_update): New declaration.
* generic/gdbtk-varobj.c (variable_update): Call
GDB_varobj_update() rather than varobj_update() directly.  Take
the new semantics of the latter into account.
* generic/gdbtk-cmds.c: Include "varobj.h".
* generic/gdbtk-stack.c: Likewise.
2007-04-27 15:39:49 +00:00
Ulrich Weigand 037a727e3d * aix-thread.c (aix_thread_xfer_memory): Replace by ...
(aix_thread_xfer_partial): ... this.
	(init_aix_thread_ops): Install to_xfer_partial instead
	of deprecated_xfer_memory target method.

	* config/powerpc/aix.mh (NATDEPFILES): Remove infptrace.o
	and inftarg.o, add inf-ptrace.o.
	* config/rs6000/nm-rs6000.h (FETCH_INFERIOR_REGISTERS,
	CHILD_XFER_MEMORY, KERNEL_U_SIZE, kernel_u_size): Remove.
	* rs6000-nat.c: Include "inf-ptrace.h" and "gdb_stdint.h".
	(fetch_inferior_registers): Rename to ...
	(rs6000_fetch_inferior_registers): ... this.  Make static.
	(store_inferior_registers): Rename to ...
	(rs6000_store_inferior_registers): ... this.  Make static.
	(read_word, child_xfer_memory): Remove.
	(rs6000_xfer_partial): New function.
	(kernel_u_size): Remove.
	(_initialize_core_rs6000): Add inf_ptrace-based target.
	* Makefile.in (rs6000-nat.o): Update dependencies.
2007-04-27 13:22:18 +00:00
Ulrich Weigand f7dd0ed7de * inf-ptrace.c: Include "gdb_stdint.h".
(inf_ptrace_xfer_partial): Use "uintptr_t" instead of "long" as
	intermediate type when casting CORE_ADDR to PTRACE_TYPE_ARG3.
	(inf_ptrace_fetch_register): Add intermediate cast to "uintptr_t"
	before casting CORE_ADDR to PTRACE_TYPE_ARG3.
	(inf_ptrace_store_register): Likewise.
	* Makefile.in (inf-ptrace.o): Update dependencies.
2007-04-27 13:20:59 +00:00
Ulrich Weigand b02f9d5732 * alpha-linux-tdep.c: Include "gdb_string.h", "regset.h",
and "regcache.h".
	(alpha_linux_supply_gregset, alpha_linux_supply_fpregset): New.
	(alpha_linux_gregset, alpha_linux_fpregset): New variables.
	(alpha_linux_regset_from_core_section): New function.
	(alpha_linux_init_abi): Install it.
	* alpha-linux-nat.c: Do not include "gdbcore.h".  Include
	"alpha-tdep.h", <sys/ptrace.h>, <alpha/ptrace.h>,
	<sys/procfs.h>, and "gregset.h".
	(ALPHA_REGSET_BASE, ALPHA_REGSET_UNIQUE, ALPHA_UNIQUE_PTRACE_ADDR):
	Move from config/alpha/nm-linux.h.
	(supply_gregset, fill_gregset, supply_fpregset, fill_fpregset): Copy
	from alpha-nat.c.
	(alpha_linux_register_u_offset): Inline register_addr from alpha-nat.c.
	* alpha-nat.c: Remove #ifdef __linux__ section.
	(fetch_elf_core_registers, alpha_elf_core_fns): Remove.
	(_initialize_core_alpha): Do not register alpha_elf_core_fns.
	(ALPHA_UNIQUE_PTRACE_ADDR, ALPHA_REGSET_UNIQUE): Define unconditionally.
	(ALPHA_REGSET_BASE): Move from config/alpha/nm-osf.h.
	* config/alpha/alpha-linux.mh (NAT_FILE): Set to config/nm-linux.h.
	(NATDEPFILES): Remove alpha-nat.o.
	* config/alpha/nm-linux.h: Delete file.
	* config/alpha/nm-osf.h (ALPHA_REGSET_BASE): Move to alpha-nat.c.
	* Makefile.in (alpha-linux-nat.o): Update dependencies.
	(alpha-linux-tdep.o): Likewise.
2007-04-26 00:13:12 +00:00
Ulrich Weigand dda0c97e68 * mips-linux-nat.c: No longer include "gdbcore.h".
(mips_linux_register_addr): Move from mips-linux-tdep.c.
	(mips64_linux_register_addr): Likewise.
	(mips_linux_register_u_offset): Call mips_linux_register_addr or
	mips64_linux_register_addr instead of register_addr.
	* mips-linux-tdep.c (mips_linux_register_addr,
	mips64_linux_register_addr): Move to mips-linux-nat.c.
	(register_addr): Remove.
	(register_addr_data, init_register_addr_data): Remove.
	(_initialize_mips_linux_tdep): Do not initialize register_addr_data.
	(set_mips_linux_register_addr): Remove.
	(mips_linux_init_abi): Do not call set_mips_linux_register_addr.
	* Makefile.in (mips-linux-nat.o): Update dependencies.
2007-04-25 22:22:11 +00:00
Ulrich Weigand 910122bf0a * linux-nat.c (linux_register_u_offset): Remove.
(linux_target_install_ops): New function.
	(linux_target): Use it.
	(linux_trad_target): New function.
	* linux-nat.h (linux_trad_target): Declare.

	* alpha-linux-nat.c: Include "gdbcore.h".
	(alpha_linux_register_u_offset): New function.
	(_initialize_alpha_linux_nat): Use linux_trad_target.

	* mips-linux-nat.c: Include "gdbcore.h".
	(mips_linux_register_u_offset): New function.
	(_initialize_mips_linux_nat): Use linux_trad_target.

	* config/arm/linux.mh (NAT_FILE): Set to config/nm-linux.h.
	* config/arm/nm-linux.h: Delete file.

	* config/i386/nm-linux64.h (FETCH_INFERIOR_REGISTERS): Remove.
	* config/i386/nm-linux.h (FETCH_INFERIOR_REGISTERS): Remove.

	* config/ia64/linux.mh (NAT_FILE): Set to config/nm-linux.h.
	* config/ia64/nm-linux.h: Delete file.

	* config/m32r/linux.mh (NAT_FILE): Set to config/nm-linux.h.
	* config/m32r/nm-linux.h: Delete file.

	* config/m68k/linux.mh (NAT_FILE): Set to config/nm-linux.h.
	* config/m68k/nm-linux.h: Delete file.

	* config/pa/linux.mh (NAT_FILE): Set to config/nm-linux.h.
	* config/pa/nm-linux.h: Delete file.

	* config/powerpc/linux.mh (NAT_FILE): Set to config/nm-linux.h.
	* config/powerpc/ppc64-linux.mh (NAT_FILE): Likewise.
	* config/powerpc/nm-linux.h: Delete file.

	* config/s390/s390.mh (NAT_FILE): Set to config/nm-linux.h.
	* config/s390/nm-linux.h: Delete file.

	* config/sparc/linux.mh (NAT_FILE): Set to config/nm-linux.h.
	* config/sparc/linux64.mh (NAT_FILE): Likewise.
	* config/sparc/nm-linux.h: Delete file.

	* Makefile.in (alpha-linux-nat.o): Update dependencies.
	(mips-linux-nat.o): Likewise.
2007-04-25 22:17:48 +00:00
Ulrich Weigand de732108dd * core-aout.c: Delete file.
* Makefile.in (ALLDEPFILES): Remove core-aout.c.
	(core-aout.o): Delete rule.
	* gdbcore.h (kernel_u_addr, KERNEL_U_ADDR): Remove.

        * config/alpha/nm-linux.h (U_REGS_OFFSET): Remove.

        * arm-linux-nat.c (arm_linux_kernel_u_size): Remove.
        * config/arm/nm-linux.h (U_REGS_OFFSET, KERNEL_U_SIZE,
        KERNEL_U_ADDR): Remove.

        * i386-linux-nat.c (register_u_addr, kernel_u_size): Remove.
        (cannot_fetch_register, cannot_store_register): Remove.
        (fetch_register): Inline cannot_fetch_register and register_addr.
        (store_register): Inline cannot_store_register and register_addr.
        * config/i386/linux.mh (NATDEPFILES): Remove core-aout.o.
        * config/i386/nm-linux.h (KERNEL_U_SIZE, KERNEL_U_ADDR,
        REGISTER_U_ADDR, CANNOT_FETCH_REGISTER, CANNOT_STORE_REGISTER):
        Remove.

        * m68klinux-nat.c (m68k_linux_register_u_addr, kernel_u_size): Remove.
        (fetch_register): Inline register_addr.
        (store_register): Inline register_addr.
        * config/m68k/linux.mh (NATDEPFILES): Remove core-aout.o.
        * config/m68k/nm-linux.h (KERNEL_U_SIZE, KERNEL_U_ADDR,
        U_REGS_OFFSET, REGISTER_U_ADDR): Remove.

        * config/mips/nm-irix5.h (REGISTER_U_ADDR): Remove.
        * config/mips/nm-linux.h (KERNEL_U_SIZE, U_REGS_OFFSET,
        REGISTER_U_ADDR): Remove.

        * hppa-linux-nat.c (register_addr): Rename to ...
        (hppa_linux_register_addr): ... this.  Make static.
        (fetch_register, store_register): Adapt callers.
        * config/pa/nm-linux.h (U_REGS_OFFSET): Remove.

        * ppc-linux-nat.c (kernel_u_size): Remove.
        * config/powerpc/nm-linux.h (KERNEL_U_SIZE, KERNEL_U_ADDR): Remove.

	* vax-nat.c (vax_kernel_u_addr, vax_register_u_addr): Make static.
	* config/vax/vax.mh (NATDEPFILES): Remove core-aout.o.
	(NAT_FILE): Remove.
	* config/vax/nm-vax.h: Delete file.
2007-04-25 22:10:09 +00:00
Mark Shinwell 0ebdb72899 * Makefile.in: Adjust dependencies of m68klinux-tdep.c.
* m68klinux-tdep.c (m68k_uclinux_sigcontext_reg_offset): New.
	(m68k_linux_sigcontext_reg_offset): Fix typo.
	(target_is_uclinux): New.
	(m68k_linux_inferior_created): New.
	(m68k_linux_get_sigtramp_info):  Check for uClinux or
	normal Linux.  Use m68k_uclinux_sigcontext_reg_offset for
	uClinux.
	(_initialize_m68k_linux_tdep): Register
	m68k_linux_inferior_created.
2007-04-20 12:13:52 +00:00
Daniel Jacobowitz ea35711cf6 * mips-mdebug-tdep.c, mips-mdebug-tdep.h, ocd.c, ocd.h, ppc-bdm.c,
remote-e7000.c, remote-hms.c, remote-utils.c, remote-utils.h,
	scm-exp.c, scm-lang.c, scm-lang.h, scm-tags.h, scm-valprint.c,
	ser-e7kpc.c, sh3-rom.c, stop-gdb.c: Delete.
	* Makefile.in: Remove references to deleted files.
	* README: Do not mention deleted ROM monitor interfaces.
	* defs.h (enum language): Delete language_scm.
	* expprint.c (print_subexp_standard): Do not handle OP_EXPRSTRING.
	(dump_subexp_body_standard): Likewise.
	* parse.c (operator_length_standard): Likewise.
	* expression.h (enum exp_opcode): Delete OP_EXPRSTRING.
	* remote-mips.c: Do not include remote-utils.h.
	* remote-sim.c: Likewise.  Use remote_debug instead of sr_get_debug
	throughout.
	* value.c: Do not include scm-lang.h.
	(unpack_long): Delete scm_unpack call.
	* config/h8300/h8300.mt, config/mips/embed.mt,
	config/powerpc/ppc-eabi.mt, config/powerpc/ppc-sim.mt,
	config/sh/embed.mt, config/sh/linux.mt: Remove references to
	deleted files.
	* NEWS: Mention removed files.

	* gdb.texinfo (Memory): Reference Remote Debugging chapter.
	(Character Sets, Caching Data of Remote Targets): Likewise.
	(Targets): Delete Remote node.  Move its text...
	(Debugging Remote Programs): ...to here.  Delete description
	of the "remote" command.
	(Remote configuration): Delete description of "set remotedevice"
	and "show remotedevice".
	(Embedded Processors): Delete H8/300, H8/500, and SH nodes.
2007-04-13 14:17:47 +00:00
Daniel Jacobowitz 1a92f85678 * Makefile.in (SFILES): Remove hpacc-abi.c.
(COMMON_OBS): Remove hpacc-abi.o.
	(ALLDEPFILES): Remove hpread.c and $(HPREAD_SOURCE).
	(hpacc-abi.o, hpread.o): Delete rules.
	* somread.c: Delete extern declarations from hpread.c.
	(som_symfile_read): Do not call do_pxdb or hpread_build_psymtabs.
	(som_symfile_finish): Do not call hpread_symfile_finish.
	(som_symfile_init): Do not call hpread_symfile_init.
	* config/pa/hppa64.mt (TDEPFILES): Remove hpread.o.
	* config/pa/hppahpux.mt (TDEPFILES): Likewise.
	* hpacc-abi.c, hpread.c: Deleted.

	* gdbint.texinfo (SOM): Correct location of the SOM reader.
2007-04-10 11:58:15 +00:00
Pedro Alves ad527d2e20 gdb/
* configure.tgt: Move mips*-*-pe and sh*-*-pe to
	the obsoletion stanza.
	* NEWS: Mention deleted targets.

	* config/sh/tm-wince.h: Remove.
	* config/sh/wince.mt: Remove.
	* config/mips/tm-wince.h: Remove.
	* config/mips/wince.mt: Remove.

	* wince.c: Remove.
	* wince-stub.c: Remove.
	* wince-stub.h: Remove.
	* Makefile.in (wince.o): Remove rule.
	(wince-stub.o): Likewise.

	* mips-tdep.c (mips_next_pc): Make static.
	* mips-tdep.h (mips_next_pc): Remove declaration.
	* arm-tdep.c (arm_pc_is_thumb): Make static.
	(thumb_get_next_pc): Likewise.
	(arm_get_next_pc): Likewise.
	* arm-tdep.h (arm_pc_is_thumb_dummy): Remove declaration.
	(arm_pc_is_thumb): Likewise.
	(thumb_get_next_pc): Likewise.
	(arm_get_next_pc): Likewise.

gdb/doc/

	* gdb.texinfo (WinCE): Delete obsolete subsection.
2007-03-30 22:50:33 +00:00
Daniel Jacobowitz 7ce5900041 * MAINTAINERS: Remove d10v entry.
* Makefile.in (SFILES): Remove dwarfread.c.
	(COMMON_OBS): Remove dwarfread.o.
	(gdb_sim_d10v_h, abug-rom.o, cpu32bug-rom.o, d10v-tdep.o, dwarfread.o)
	(remote-est.o, rom68k-rom.o): Delete.
	* NEWS: Mention removal of d10v, target abug, target cpu32bug,
	target est, target rom68k, and DWARF 1.
	* configure.tgt: Mark d10v as removed.
	* dwarf2read.c: Doc update.
	* elfread.c (struct elfinfo): Remove dboffset, dbsize, lnoffset,
	and lnsize.
	(elf_locate_sections): Do not set them.
	(elf_symfile_read): Do not call dwarf_build_psymtabs.
	* symfile.h (dwarf_build_psymtabs): Delete prototype.
	* config/m68k/monitor.mt (TDEPFILES): Prune.
	* abug-rom.c, cpu32bug-rom.c, d10v-tdep.c, dwarfread.c,
	remote-est.c, rom68k-rom.c, config/d10v/d10v.mt: Delete.

	* gdb.texinfo (M68K): Remove obsolete ROM monitors.
	* gdbint.texinfo (DWARF 1): Delete section and other dwarfread.c
	references.

	* gdb.asm/asm-source.exp: Remove d10v case.
	* lib/gdb.exp (skip_cplus_tests): Likewise.
	* gdb.asm/d10v.inc: Deleted.
2007-03-30 17:21:48 +00:00
Daniel Jacobowitz 8807d78bec * Makefile.in (SFILES): Remove nlmread.c.
(COMMON_OBS): Remove nlmread.o.
	(nlmread.o): Delete rule.
	* README: Delete reference to remote-st.c.
	* acinclude.m4 (CY_AC_TCL_LYNX_POSIX): Delete.
	* defs.h (enum gdb_osabi): Delete GDB_OSABI_NETWARE and
	GDB_OSABI_LYNXOS.
	* i386-tdep.c (i386_nw_init_abi, i386_nlm_osabi_sniffer): Delete.
	(_initialize_i386_tdep): Do not reference them.
	* nlmread.c: Delete file.
	* osabi.c (gdb_osabi_names): Remove NetWare and LynxOS.
	* target.c: Doc update.
	* thread.c: Delete commented include.
	* config/alpha/tm-alpha.h: Doc update.

	* gdb.texinfo (Startup): Delete references to some alternate
	names for .gdbinit.
	(Thread): Remove LynxOS reference.
	(Tandem ST2000): Delete target-specific documentation.
	* gdbint.texinfo (Symbol Handling): Remove mention of NLM.
	(Target Architecture Definition): Remove mention of GDB_OSABI_NETWARE
	and GDB_OSABI_LYNXOS.

	* config/netware.exp: Delete file.
2007-03-30 12:57:44 +00:00
Joel Brobecker bbf90c8127 * Makefile.in (varobj.o): Add missing dependency. 2007-03-30 00:46:49 +00:00
Daniel Jacobowitz 483367eebc * Makefile.in (coff_solib_h, coff-solib.o, i386v-nat.o, lynx-nat.o)
(remote-st.o, uw-thread.o): Delete.
	(HFILES_NO_SRCDIR, ALLDEPFILES): Update.
	* configure.host: Move hppa*-*-hiux*, i[34567]86-ncr-*,
	i[34567]86-*-dgux*, i[34567]86-*-lynxos*, i[34567]86-*-sco3.2v5*,
	i[34567]86-*-sco3.2v4*, i[34567]86-*-sco*, i[34567]86-*-sysv4.2*,
	i[34567]86-*-sysv4*, i[34567]86-*-sysv5*, i[34567]86-*-unixware2*,
	i[34567]86-*-unixware*, i[34567]86-*-sysv*, i[34567]86-*-isc*, and
	rs6000-*-lynxos* to an obsoletion stanza.
	* configure.tgt: Move hppa*-*-hiux*, i[34567]86-ncr-*,
	i[34567]86-*-lynxos*, m68*-cisco*-*, m68*-tandem-*, m68*-*-os68k*,
	and rs6000-*-lynxos* to an obsoletion stanza.  Do not mention
	i[34567]86-*-netware*.
	* NEWS: Mention deleted targets.

	* coff-solib.c, coff-solib.h, i386v-nat.c, lynx-nat.c, remote-st.c,
	uw-thread.c, config/nm-lynx.h, config/i386/i386sco.mh,
	config/i386/i386sco4.mh, config/i386/i386sco5.mh, config/i386/i386v.mh,
	config/i386/i386v4.mh, config/i386/i386v42mp.mh,
	config/i386/ncr3000.mh, config/i386/ncr3000.mt,
	config/i386/nm-i386sco.h, config/i386/nm-i386sco4.h,
	config/i386/nm-i386sco5.h, config/i386/nm-i386v.h,
	config/i386/nm-i386v4.h, config/i386/nm-i386v42mp.h,
	config/m68k/cisco.mt, config/m68k/os68k.mt, config/m68k/st2000.mt,
	config/m68k/tm-cisco.h, config/m68k/tm-os68k.h,
	config/rs6000/rs6000lynx.mh, config/rs6000/rs6000lynx.mt,
	config/rs6000/tm-rs6000ly.h: Delete files.
2007-03-29 19:58:29 +00:00
Daniel Jacobowitz 4fc771b8c4 * dwarf2-frame.c (dwarf2_frame_eh_frame_regnum): Rename to...
(dwarf2_frame_adjust_regnum): ...this.  Make static.  Add eh_frame_p
	argument.  Update all callers.
	(struct dwarf2_frame_ops): Replace eh_frame_regnum with adjust_regnum.
	(dwarf2_frame_set_eh_frame_regnum): Rename to...
	(dwarf2_frame_set_adjust_regnum): ...this.  Update argument type.
	* dwarf2frame.h (dwarf2_frame_set_eh_frame_regnum): Rename to...
	(dwarf2_frame_set_adjust_regnum): ...this.
	(dwarf2_frame_eh_frame_regnum): Delete prototype.
	* rs6000-tdep.c: Include "dwarf2-frame.h".
	(rs6000_adjust_frame_regnum): Define.
	(rs6000_gdbarch_init): Enable use of DWARF CFI frame unwinder.
	Register rs6000_adjust_frame_regnum.

	* Makefile.in (rs6000-tdep.o): Update dependencies.
2007-03-27 19:02:42 +00:00
Daniel Jacobowitz 9453113a8d Add "make pdf" and "make install-pdf", from Brooks Moses
<brooks.moses@codesourcery.com>.
2007-03-27 18:09:36 +00:00
Mark Kettenis 861fb77c13 * shnbsd-tdep.c: Include "regset.h", "gdb_assert.h" and
"gdb_string.h".  Don't include "nbsd-tdep.h".
	(SIZEOF_STRUCT_REG): Remove.
	(SHNBSD_SIZEOF_GREGS): New.
	(shnbsd_supply_gregset, shnbsd_collect_gregset)
	(shnbsd_regset_from_core_section): New functions.
	(fetch_core_registers, fetch_elfcore_registers): Remove functions.
	(shnbsd_supply_reg, shnbsd_fill_reg): Simply call
	shnbsd_supply_gregset, shnbsd_collect_gregset.
	(shnbsd_gregset): New variable.
	(shnbsd_init_abi): Set regset_from_core_section.
	(GDB_OSABI_NETBSD_CORE): New define.
	(shnbsd_core_osabi_sniffer): New function.
	(_initialize_shnbsd_tdep): Register shnbsd_core_osabi_sniffer.
	* Makefile.in (shnbsd-tdep.o): Update dependencies.
	* config/sh/nbsd.mt (TDEPFILES): Add corelow.o, remove
	nbsd-tdep.o.
	* config/sh/obsd.mt (TDEPFILES): Remove nbsd-tdep.o.
2007-03-02 21:28:18 +00:00
Ulrich Weigand 6f7f3f0da4 * config/powerpc/linux.mt (DEPRECATED_TM_FILE): Set to tm-ppc-eabi.h.
* config/powerpc/tm-linux.h: Delete file.
	* config/powerpc/tm-ppc-eabi.h: Do not include "rs6000/tm-rs6000.h".
	(PROCESS_LINENUMBER_HOOK): Do not undefine.
	(TEXT_SEGMENT_BASE): Do not redefine.
	* config/rs6000/nm-rs6000.h (CHILD_SPECIAL_WAITSTATUS): Move here
	from config/rs6000/tm-rs6000.h.
	(TARGET_CREATE_INFERIOR_HOOK, rs6000_create_inferior): Likewise.
	* config/rs6000/tm-rs6000.h (struct frame_info): Remove declaration.
	(TEXT_SEGMENT_BASE): Remove.
	(IN_SOLIB_RETURN_TRAMPOLINE): Remove.
	(rs6000_in_solib_return_trampoline): Remove.
	(SKIP_TRAMPOLINE_CODE): Remove.
	(rs6000_skip_trampoline_code): Remove.
	(CHILD_SPECIAL_WAITSTATUS): Move to config/rs6000/nm-rs6000.h.
	(TARGET_CREATE_INFERIOR_HOOK, rs6000_create_inferior): Likewise.
	(FP0_REGNUM): Remove.
	(rs6000_find_toc_address_hook): Move to rs6000-tdep.h.
	(rs6000_set_host_arch_hook): Remove.
	* Makefile.in (rs6000-nat.o): Add dependency on $(rs6000_tdep_h).
	(rs6000-aix-tdep.o): Add dependency on $(ppc_tdep_h).
	* ppc-tdep.h (struct gdbarch_tdep): Add field text_segment_base.
	* rs6000-aix-tdep.c: Include "ppc-tdep.h".
	(rs6000_aix_init_osabi): Set text_segment_base tdep field.
	* rs6000-nat.c: Include "rs6000-tdep.h".
	(exec_one_dummy_insn): Replace TEXT_SEGMENT_BASE by tdep field.
	(set_host_arch): Rename to ...
	(rs6000_create_inferior): ... this.  Make public.
	(_initialize_core_rs6000): Do not set rs6000_set_host_arch_hook.
	* rs6000-tdep.c (rs6000_set_host_arch_hook): Remove.
	(rs6000_create_inferior): Remove.
	(branch_dest): Replace TEXT_SEGMENT_BASE by tdep field.
	(rs6000_gdbarch_init): Call set_gdbarch_fp0_regnum,
	set_gdbarch_in_solib_return_trampoline, and
	set_gdbarch_skip_trampoline_code.
	* rs6000-tdep.h (rs6000_find_toc_address_hook): Move here
	from config/rs6000/tm-rs6000.h.
2007-02-27 23:04:28 +00:00
Daniel Jacobowitz 05a4558a93 * Makefile.in (XMLFILES): Include $(TDEP_XML).
(filenames_h): New variable.
	(clean): Clean up xml-builtin.c and stamp-xml.
	(arm-linux-nat.o): Update.
	* config/arm/linux.mh (TDEP_XML): Define.
	* arm-linux-nat.c (PTRACE_GETWMMXREGS, PTRACE_SETWMMXREGS): Define.
	(arm_linux_has_wmmx_registers): New.
	(GET_THREAD_ID): Fix typo.
	(IWMMXT_REGS_SIZE): Define.
	(fetch_wmmx_regs, store_wmmx_regs): New.
	(arm_linux_fetch_inferior_registers): Use fetch_wmmx_regs.
	(arm_linux_store_inferior_registers): Use store_wmmx_regs.
	(super_xfer_partial, arm_linux_xfer_partial): New.
	(_initialize_arm_linux_nat): Use them.
	* xml-support.c (fetch_xml_builtin): Move outside HAVE_LIBEXPAT.
	(xml_builtin_xfer_partial): New function.
	* xml-support.h (xml_builtin_xfer_partial): New prototype.
	* NEWS: Update mention of iWMMXt support.
2007-02-26 19:20:21 +00:00
Kevin Buettner aeb4312340 Add support for new target, Toshiba Media Processor (MeP). 2007-02-23 22:50:41 +00:00
Andreas Schwab 81de920dd0 * Makefile.in (symfile.o): Update dependencies. 2007-02-20 16:05:54 +00:00
Daniel Jacobowitz cb5c8c3989 gdb/
* MAINTAINERS: Disable -Werror for cris simulator.  Build
	sparc64-solaris2.10 instead of the broken sparc-elf.
	* solib-frv.c: Include "solib.h".
	* Makefile.in (solib-frv.o): Update.
	* mt-tdep.c (mt_gdbarch_init): Correct typo in floatformats patch.
	* xtensa-tdep.c (xtensa_regset_from_core_section): Cast size_t to int.
	(xtensa_frame_this_id, xtensa_frame_prev_register)
	(xtensa_push_dummy_call): Use %p.
sim/v850/
	* Makefile.in (interp.o): Uncomment and update.
2007-02-20 12:45:06 +00:00
Daniel Jacobowitz e6bb342af7 * avr-tdep.c, hppa-tdep.c, hppabsd-tdep.c, i386-tdep.c,
ia64-tdep.c, m68k-tdep.c, mips-linux-tdep.c, ppcobsd-tdep.c,
	sparc-linux-tdep.c: Include "gdbtypes.h" instead of "floatformat.h".
	* Makefile.in (avr-tdep.o, hppabsd-tdep.o, hppa-tdep.o, i386-tdep.o)
	(ia64-tdep.o, m68k-tdep.o, mips-linux-tdep.o, ppcobsd-tdep.o)
	(sparc-linux-tdep.o): Update.
2007-02-16 21:49:59 +00:00
Daniel Jacobowitz 123dc83914 * Makefile.in (arm-tdep.o, eval.o, target-descriptions.o)
(xml-tdesc.o): Update.
	* xml-support.c: Add a comment.
	(gdb_xml_enums_boolean): New variable.
	(gdb_xml_parse_attr_enum): Use strcasecmp.
	* xml-support.h (gdb_xml_enums_boolean): Declare.
	* xml-tdesc.c (struct tdesc_parsing_data): Record current_feature,
	next_regnum, and current_union.
	(tdesc_start_feature, tdesc_start_reg, tdesc_start_union)
	(tdesc_end_union, tdesc_start_field, tdesc_start_vector)
	(field_attributes, union_children, reg_attributes, union_attributes)
	(vector_attributes, feature_attributes, feature_children): New.
	(target_children): Make static.  Add <feature>.
	(tdesc_elements): Make static.
	* target-descriptions.c (struct tdesc_reg, tdesc_reg_p, type_p)
	(struct tdesc_feature, tdesc_feature_p): New types.
	(struct target_desc): Add features member.
	(struct tdesc_arch_data, tdesc_data): New.
	(target_find_description): Clarify error message.  Warn about
	ignored register descriptions.
	(tdesc_has_registers, tdesc_find_feature, tdesc_feature_name)
	(tdesc_named_type, tdesc_data_init, tdesc_data_alloc)
	(tdesc_data_cleanup, tdesc_numbered_register)
	(tdesc_numbered_register_choices, tdesc_find_register)
	(tdesc_register_name, tdesc_register_type)
	(tdesc_remote_register_number, tdesc_register_reggroup_p)
	(set_tdesc_pseudo_register_name, set_tdesc_pseudo_register_type)
	(set_tdesc_pseudo_register_reggroup_p, tdesc_use_registers)
	(tdesc_free_reg, tdesc_create_reg, tdesc_free_feature)
	(tdesc_create_feature, tdesc_record_type): New.
	(free_target_description): Free features.
	(_initialize_target_descriptions): Initialize tdesc_data.
	* arch-utils.c (default_remote_register_number): New.
	* arch-utils.h (default_remote_register_number): New prototype.
	* target-descriptions.h (set_tdesc_pseudo_register_name)
	(set_tdesc_pseudo_register_type, set_tdesc_pseudo_register_reggroup_p)
	(tdesc_use_registers, tdesc_data_alloc, tdesc_data_cleanup)
	(tdesc_numbered_register, tdesc_numbered_register_choices)
	(tdesc_has_registers, tdesc_find_feature, tdesc_feature_name)
	(tdesc_named_type, tdesc_create_feature, tdesc_record_type)
	(tdesc_create_reg): Declare.
	* gdbarch.sh (remote_register_number): New entry.
	* gdbarch.c, gdbarch.h: Regenerate.
	* remote.c (init_remote_state): Use gdbarch_remote_register_number.
	* features/gdb-target.dtd: Add feature, reg, vector, union, and field.

	* arm-tdep.c (arm_register_aliases): New.
	(arm_register_name_strings): Rename to...
	(arm_register_names): ...this.  Make const.  Delete the old version.
	(current_option, arm_register_byte): Delete.
	(set_disassembly_style): Simplify.  Do not adjust arm_register_names.
	(value_of_arm_user_reg): New.
	(arm_gdbarch_init): Verify any described registers.  Call
	tdesc_use_registers.  Don't use arm_register_byte.  Create aliases
	for standard register names.
	(_initialize_arm_tdep): Do not adjust arm_register_names.
	* user-regs.c (struct user_reg): Add baton member.
	(append_user_reg, user_reg_add_builtin, user_regs_init)
	(user_reg_add, value_of_user_reg): Use a baton for user
	register functions.
	* std-regs.c: Update.
	* user-regs.h (user_reg_read_ftype, user_reg_add_builtin)
	(user_reg_add): Add baton argument.
	* NEWS: Mention target description register support.
	* features/arm-core.xml, features/arm-fpa.xml: New.
	* eval.c (evaluate_subexp_standard): Allow ptype $register
	when the program is not running.

	* gdb.texinfo (-target-disconnect): Use @smallexample.
	(Requirements): Add anchor for Expat.  Update description.
	(Target Descriptions): Mention Expat.
	(Target Description Format): Document new elements.  Use
	@smallexample.
	(Predefined Target Types, Standard Target Features): New sections.
	* doc/gdbint.texinfo (Target Descriptions): New section.

	* gdb.xml/single-reg.xml, gdb.xml/tdesc-regs.exp,
	gdb.xml/core-only.xml, gdb.xml/extra-regs.xml: New files.
2007-02-08 21:00:36 +00:00
Mark Kettenis 3e46147824 * sparcnbsd-tdep.c: Include "gdbtypes.h" instead of "floatformat.h".
* Makefile.in (sparcnbsd-tdep.o): Update dependencies.
2007-02-08 10:39:19 +00:00
Daniel Jacobowitz 108546a0ea * Makefile.in (XMLFILES): New.
(COMMON_OBS): Add xml-builtin.o.
	(xml-builtin.c, stamp-xml): New rules.
	(xml-tdesc.o): Update.
	* features/feature_to_c.sh: New file.
	* xml-support.c (MAX_XINCLUDE_DEPTH): Define.
	(struct gdb_xml_parser): Add dtd_name and is_xinclude.
	(gdb_xml_start_element): Initialize scope after possibly reallocating
	scopes.  Move cleanup later.  Handle the XInclude description
	specially.
	(gdb_xml_end_element): Only parse the body if there is a current element.
	Call XML_DefaultCurrent if there is no element.
	(gdb_xml_fetch_external_entity, gdb_xml_use_dtd): New.
	(struct xinclude_parsing_data, xinclude_start_include)
	(xinclude_end_include, xml_xinclude_default)
	(xml_xinclude_start_doctype, xml_xinclude_end_doctype)
	(xml_xinclude_xml_decl, xml_xinclude_cleanup, xinclude_attributes)
	(xinclude_elements, xml_process_xincludes, fetch_xml_builtin): New.
	* xml-support.h (xml_fetch_another, xml_process_xincludes)
	(fetch_xml_builtin, xml_builtin, gdb_xml_use_dtd): New declarations.
	* xml-tdesc.c (tdesc_parse_xml): Add fetcher_baton argument.  Expand
	XInclude directives.  Use the compiled in DTD.
	(fetch_xml_from_file): Add baton argument.  Treat it as a containing
	directory name.  Do not warn here.
	(file_read_description_xml): Update call.  Warn here instead.  Pass
	a dirname as baton.
	(fetch_available_features_from_target): New.
	(target_read_description_xml): Use it.
	* features/gdb-target.dtd: Add copyright notice.  Use xinclude.dtd
	to handle XInclude.
	* features/xinclude.dtd: New file.

	* gdb.xml/bad-include.xml, gdb.xml/inc-2.xml, gdb.xml/inc-body.xml,
	gdb.xml/includes.xml, gdb.xml/tdesc-xinclude.exp: New files.

	* gdb.texinfo (Target Description Format): Add section on XInclude.
2007-02-07 22:48:06 +00:00
Daniel Jacobowitz 23181151a2 XML feature description support.
* NEWS: Mention target descriptions, "set tdesc filename",
	"unset tdesc filename", "show tdesc filename", and
	qXfer:features:read.
	* arch-utils.c (choose_architecture_for_target): New function.
	(gdbarch_info_fill): Call it.
	* target-descriptions.c (struct property): Make members non-const.
	(struct target_desc): Add arch member.
	(target_description_filename): New variable.
	(target_find_description): Try via XML first.
	(tdesc_architecture): New.
	(free_target_description, make_cleanup_free_target_description): New.
	(set_tdesc_property): Call xstrdup.
	(set_tdesc_architecture, tdesc_set_cmdlist, tdesc_show_cmdlist)
	(tdesc_unset_cmdlist, unset_tdesc_cmd, unset_tdesc_filename_cmd)
	(set_tdesc_cmd, show_tdesc_cmd, set_tdesc_filename_cmd)
	(show_tdesc_filename_cmd, _initialize_target_descriptions): New.
	* target-descriptions.h (tdesc_architecture)
	(make_cleanup_free_target_description, set_tdesc_architecture): New
	prototypes.
	* Makefile.in (SFILES): Add xml-tdesc.c.
	(COMMON_OBS): Add xml-tdesc.o.
	(target-descriptions.o): Update.
	(xml-tdesc.o): New rule.
	* xml-tdesc.c, xml-tdesc.h: New files.
	* remote.c (PACKET_qXfer_features): New enum.
	(remote_protocol_features): Add qXfer:features:read.
	(remote_xfer_partial): Handle TARGET_OBJECT_AVAILABLE_FEATURES.
	(_initialize_remote): Register qXfer:features:read.
	* target.h (enum target_object): Add TARGET_OBJECT_AVAILABLE_FEATURES.
	* features/gdb-target.dtd: New file.

	* linux-i386-low.c (the_low_target): Set arch_string.
	* linux-x86-64-low.c (the_low_target): Likewise.
	* linux-low.c (linux_arch_string): New.
	(linux_target_ops): Add it.
	* linux-low.h (struct linux_target_ops): Add arch_string.
	* server.c (write_qxfer_response): Use const void * for DATA.
	(get_features_xml): New.
	(handle_query): Handle qXfer:features:read.  Report it for qSupported.
	* target.h (struct target_ops): Add arch_string method.

	* gdb.texinfo (Target Descriptions): New section.
	(General Query Packets): Add QPassSignals anchor.  Mention
	qXfer:features:read under qSupported.  Expand mentions of
	qXfer:memory-map:read and QPassSignals.  Document
	qXfer:features:read.
2007-01-09 22:55:10 +00:00
Daniel Jacobowitz 6aba47ca06 Copyright updates for 2007. 2007-01-09 17:59:20 +00:00
Joel Brobecker 9bbc9174c0 * ada-lang.c: Add include of source.h.
(is_known_support_routine): Improve the check verifying that the file
        associated to this frame exists.
        * Makefile.in (ada-lang.o): Add dependency on source.h.
2007-01-08 03:14:19 +00:00
Daniel Jacobowitz e776119fdc * memory-map.c (struct_memory_map_parsing_data): Remove most
members.  Make property_name an array.
	(free_memory_map_parsing_data, memory_map_start_element)
	(memory_map_end_element, memory_map_character_data): Delete.
	(memory_map_start_memory, memory_map_end_memory)
	(memory_map_start_property, memory_map_end_property): New functions.
	(property_attributes, memory_children, memory_type_enum)
	(memory_attributes, memory_map_children, memory_map_elements): New.
	(parse_memory_map): Rewrite.
	* xml-support.c (debug_xml): New.
	(xml_get_required_attribute, xml_get_integer_attribute)
	(xml_get_enum_value, free_xml_parser, make_cleanup_free_xml_parser):
	Delete.
	(struct scope_level, struct gdb_xml_parser, gdb_xml_body_text)
	(gdb_xml_debug, gdb_xml_error, gdb_xml_values_cleanup)
	(gdb_xml_start_element, gdb_xml_start_element_wrapper)
	(gdb_xml_end_element, gdb_xml_end_element_wrapper, gdb_xml_cleanup)
	(gdb_xml_create_parser_and_cleanup, gdb_xml_parse)
	(gdb_xml_parse_ulongest, gdb_xml_parse_attr_ulongest)
	(gdb_xml_parse_attr_enum, show_debug_xml, _initialize_xml_support):
	New.
	* xml-support.h (struct gdb_xml_value, gdb_xml_attribute_handler)
	(enum gdb_xml_attribute_flag, struct gdb_xml_attribute)
	(enum gdb_xml_element_flag, struct gdb_xml_element)
	(gdb_xml_element_start_handler, gdb_xml_element_end_handler)
	(struct gdb_xml_enum): New.
	(gdb_xml_create_parser_and_cleanup, gdb_xml_parse, gdb_xml_debug)
	(gdb_xml_error, gdb_xml_parse_attr_ulongest)
	(gdb_xml_parse_attr_enum, gdb_xml_parse_ulongest): New prototypes.
	(xml_get_required_attribute, xml_get_integer_attribute)
	(xml_get_enum_value, make_cleanup_free_xml_parser): Delete prototypes.
	* Makefile.in (xml_support_h, xml-support.o): Update.

	* gdb.texinfo (Debugging Output): Document "set debug xml"
	and "show debug xml".
2007-01-04 22:11:44 +00:00
Daniel Jacobowitz 5e572bb44a * Makefile.in (eval.o): Update dependencies.
* eval.c: Include "ui-out.h" and "exceptions.h".
	(evaluate_subexp_standard): Use TRY_CATCH around value_of_variable.
	Use value_zero if an error occurs when avoiding side effects.
	* varobj.c (c_value_of_root): Initialize new_val.

	* gdb.mi/mi-var-cmd.exp: Add tests for unreadable varobjs.
2007-01-04 21:59:10 +00:00
Vladimir Prus 28335dccfb gdb/
* varobj.c: Include "vec.h".
        (varobj_p): New typedef, declare vector of those.
        (struct varobj): Use vector for the 'children' member.
        (child_exists): Remove.
        (save_child_in_parent): Remove.
        (remove_child_from_parent): Remove.
        (struct varobj_child): Remove.
        (struct vstack): Remove.
        (vpush, vpop): Remove.
        (varobj_list_children): Adjust to work work vector.
        (varobj_update): Likewise. Use vectors for
        working stack and result.
        (delete_variable_1): Likewise.
        * Makefile.in (varobj.o): Update dependencies.
2007-01-04 19:16:52 +00:00
Qinwei 27fd2f5070 2007-01-04 Qinwei <qinwei@sunnorth.com.cn>
* NEWS: New port to S+core.
	* MAINTAINERS (Write After Approval, Responsible Maintainers):
	Add myself.

	* Makefile.in: Add dependencies for S+core files.
	* configure.tgt (score*, score-*-*): Add S+core target.
	* config/score/embed.mt: New file.
	* score-tdep.c: New file.
	* score-tdep.h: New file.
2007-01-04 07:09:54 +00:00
Joel Brobecker f7f9143bd3 * ada-lang.h (ada_find_printable_frame): Remove.
(ada_exception_catchpoint_p, ada_decode_exception_location)
        (ada_decode_assert_location): Add declaration.
        * ada-lang.c: Add include of annotate.h and valprint.h.
        (exception_catchpoint_kind): New enum.
        (function_name_from_pc, is_known_support_routine)
        (ada_find_printable_frame, ada_unhandled_exception_name_addr)
        (ada_exception_name_addr_1, ada_exception_name_addr)
        (print_it_exception, print_one_exception, print_mention_exception)
        (print_it_catch_exception, print_one_catch_exception)
        (print_mention_catch_exception, catch_exception_breakpoint_ops)
        (print_it_catch_exception_unhandled)
        (print_one_catch_exception_unhandled)
        (print_mention_catch_exception_unhandled, print_it_catch_assert)
        (print_one_catch_assert, print_mention_catch_assert)
        (ada_exception_catchpoint_p, error_breakpoint_runtime_sym_not_found)
        (ada_get_next_arg, catch_ada_exception_command_split)
        (ada_exception_sym_name, ada_exception_sym_name)
        (ada_exception_breakption_ops, ada_exception_catchpoint_cond_string)
        (ada_parse_catchpoint_condition, ada_exception_sal)
        (ada_decode_exception_location)
        (ada_decode_assert_location): New function.
        (catch_exception_unhandled_breakpoint_ops): New global variable.
        (catch_assert_breakpoint_ops): New global variable.
        * breakpoint.c: Add include of ada-lang.h.
        (print_one_breakpoint): Do not print the condition for Ada
        exception catchpoints.
        (create_ada_exception_breakpoint): New function.
        (catch_ada_exception_command, catch_assert_command): New function.
        (catch_command_1): Add support for the new "catch exception" and
        "catch assert" commands.
        (_initialize_breakpoint): Add help description for the new catch
        commands.
        * Makefile.in (ada-lang.o): Add dependency on annotate.h and
        valprint.h.
        (breakpoint.o): Add dependency on ada-lang.h.
2007-01-04 05:27:31 +00:00
Daniel Jacobowitz 2e03ee74df 2007-01-03 Jan Kratochvil <jan.kratochvil@redhat.com>
Daniel Jacobowitz  <dan@codesourcery.com>

	* Makefile.in (top.o): Update.
	* top.c (gdb_readline_wrapper_done, gdb_readline_wrapper_result)
	(saved_after_char_processing_hook, gdb_readline_wrapper_line)
	(struct gdb_readline_wrapper_cleanup, gdb_readline_wrapper_cleanup):
	New.
	(gdb_readline_wrapper): Rewrite to use asynchronous readline.

2007-01-03  Jan Kratochvil  <jan.kratochvil@redhat.com>
	    Daniel Jacobowitz  <dan@codesourcery.com>

	* gdb.base/readline.exp: Set $TERM.  Test arrow keys in
	secondary prompts.
2007-01-03 21:46:12 +00:00
Daniel Jacobowitz 0d5de0100f * NEWS: Mention pointer to member improvements.
* Makefile.in (gnu-v3-abi.o): Delete special rule.
	(eval.o, gnu-v3-abi.o, ia64-tdep.o): Update.
	* ada-valprint.c (ada_print_scalar): Update for new type codes.
	* c-typeprint.c (c_print_type): Update for new type codes.
	(c_type_print_varspec_prefix, c_type_print_varspec_suffix)
	(c_type_print_base): Likewise.
	(c_type_print_args): Rewrite.
	* c-valprint.c (c_val_print): Update for new type codes.  Remove
	support for references to members.  Treat methods like functions.
	* cp-abi.c (cplus_print_method_ptr, cplus_method_ptr_size)
	(cplus_make_method_ptr, cplus_method_ptr_to_value): New.
	* cp-abi.h (cplus_print_method_ptr, cplus_method_ptr_size)
	(cplus_make_method_ptr, cplus_method_ptr_to_value): New prototypes.
	(struct cp_abi_ops): Add corresponding members.
	* cp-valprint.c (cp_print_class_method): Delete.
	(cp_find_class_member): New function.
	(cp_print_class_member): Use it.  Simplify support for bogus
	member pointers.
	* dwarf2read.c (quirk_gcc_member_function_pointer): Use
	lookup_methodptr_type.
	(read_tag_ptr_to_member_type): Likewise, and lookup_memberptr_type.
	* eval.c (evaluate_subexp_standard): Implement EVAL_SKIP for
	OP_SCOPE.  Update call to value_aggregate_elt.  Rewrite member
	pointer support.
	(evaluate_subexp_for_address): Handle OP_SCOPE explicitly.  Handle
	references returned by user defined operators.
	* f-typeprint.c (f_print_type, f_type_print_varspec_prefix)
	(f_type_print_varspec_suffix): Remove support for member pointers.
	* gdbtypes.c (lookup_memberptr_type): Renamed from lookup_member_type
	and adjusted.
	(smash_to_memberptr_type): Likewise, from smash_to_member_type.
	(lookup_methodptr_type): New.
	(rank_one_type): Adjust for TYPE_CODE_MEMBERPTR.
	(recursive_dump_type): Update for new types.
	* gdbtypes.h (enum type_code): Replace TYPE_CODE_MEMBER with
	TYPE_CODE_MEMBERPTR and TYPE_CODE_METHODPTR.
	(lookup_memberptr_type, lookup_methodptr_type)
	(smash_to_memberptr_type): New prototypes.
	(smash_to_method_type): Formatting fix.
	(lookup_member_type, smash_to_member_type): Delete prototypes.
	* gnu-v3-abi.c (gnuv3_get_vtable, gnuv3_get_virtual_fn): New.
	Do not rely on debug information for the vptr or the method's
	enclosing type.  Handle function descriptors for IA64.
	(gnuv3_virtual_fn_field): Rewrite using the new functions.
	(gnuv3_find_method_in, gnuv3_print_method_ptr)
	(gnuv3_method_ptr_size, gnuv3_make_method_ptr)
	(gnuv3_method_ptr_to_value): New.
	(init_gnuv3_ops): Set new members of gnu_v3_abi_ops.
	* hpread.c (hpread_type_lookup): Update for new types.
	* infcall.c (value_arg_coerce): Likewise.
	* m2-typeprint.c (m2_print_type): Remove explicit support
	for member pointers.
	* m2-valprint.c (m2_val_print): Likewise.
	* p-typeprint.c (pascal_type_print_varspec_prefix)
	(pascal_type_print_varspec_suffix, pascal_type_print_base): Likewise.
	* p-valprint.c (pascal_val_print): Likewise.
	(pascal_object_print_class_method, pascal_object_print_class_member):
	Delete.
	* p-lang.h (pascal_object_print_class_method)
	(pascal_object_print_class_member): Delete prototypes.
	* stabsread.c (read_type): Update for new types.
	* typeprint.c (print_type_scalar): Likewise.
	* valops.c (value_struct_elt_for_reference, value_namespace_elt)
	(value_maybe_namespace_elt, value_aggregate_elt): Add want_address
	argument.  Construct a pointer to member if the address of a
	function or data member is requested.
	(value_cast_pointers): Don't modify the input value.
	(value_cast): Adjust pointer to member handling for new types.
	Allow null pointer to member constants.  Don't modify the input
	value.
	(value_ind): Remove pointer to member check.  Handle function
	descriptors for function pointers.
	(value_struct_elt, value_find_oload_method_list, check_field):
	Remove pointer to member checks.
	* value.c (unpack_long): Allow pointers to data members.
	(value_from_longest): Allow member pointers.
	* value.h (value_aggregate_elt): Add want_address.
	* varobj.c (c_variable_editable): Remove check for members.
	* gdbarch.sh: Add vtable_function_descriptors and vbit_in_delta.
	* ia64-tdep.c (ia64_convert_from_func_ptr_addr): Handle descriptors
	in virtual tables.
	(ia64_gdbarch_init): Call set_gdbarch_vtable_function_descriptors.
	* c-lang.h (cp_print_class_method): Delete prototype.
	* arm-tdep.c (arm_gdbarch_init): Call set_gdbarch_vbit_in_delta.
	* mips-tdep.c (mips_gdbarch_init): Likewise.
	* gdbarch.c, gdbarch.h: Regenerated.

	* gdb.cp/classes.exp (test_pointers_to_class_members): Update expected
	output.  Test the types of members and member pointers.
	* gdb.cp/inherit.exp (test_print_mi_member_types): Remove KFAILs for
	gdb/2092.
	* gdb.cp/member-ptr.exp: Search for a comment instead of a
	statement.  Enable for GCC.  Update expected output for some tests
	and add new tests.  Remove obsolete GCC KFAILs.  Allow GCC's class
	layout.
	* gdb.cp/member-ptr.cc (Padding, Padding::vspacer, Base, Base::get_x)
	(Base::vget_base, Left, Left::vget, Right, Right::vget, Diamond)
	(Diamond::vget_base): New.
	(main): Add new tests.
	* gdb.cp/printmethod.exp: Update expected output for member functions.
	* gdb.cp/virtfunc.exp (test_virtual_calls): Add a KFAIL for
	print pEe->D::vg().
2007-01-03 18:05:45 +00:00
Mark Kettenis 154927ff99 * Makefile.in (remote-sds.o): Remove.
* remote-sds.c: Delete.
2006-12-31 23:59:07 +00:00
Mark Kettenis 6df5070e3f * sparc64-tdep.h (SPARC64_PSTATE_AG, SPARC64_PSTATE_IE)
(SPARC64_PSTATE_PRIV, SPARC64_PSTATE_AM, SPARC64_PSTATE_PEF)
(SPARC64_PSTATE_RED, SPARC64_PSTATE_TLE, SPARC64_PSTATE_CLE)
(SPARC64_PSTATE_PID0, SPARC64_PSTATE_PID1): New defines.
* sparc64nbsd-nat.c: Include "gdbcore.h".
(sparc64nbsd_supply_pcb): Get %pc from stack if necessary.  Supply
processor state register.
* sparc64obsd-tdep.c (sparc64obsd_trapframe_cache)
(sparc64obsd_trapframe_this_id)
(sparc64obsd_trapframe_prev_register)
(sparc64obsd_trapframe_sniffer): New functions.
(sparc64obsd_trapframe_unwind): New variable.
(sparc64obsd_init_abi): Append trapframe unwinder.
* Makefile.in (sparc64nbsd-nat.o): Update dependencies.
2006-12-31 01:28:07 +00:00
Mark Kettenis 84c5b489a8 Mark Kettenis <kettenis@gnu.org>
* i386nbsd-nat.c: Include "nbsd-nat.h".
(_initialize_i386nbsd_nat): Update target vector to use
nbsd_pid_to_exec_file.
* config/i386/nbsdelf.mh (NATDEPFILES): Add nbsd-nat.o.
* config/i386/nbsdaout.mh (NATDEPFILES): Add nbsd-nat.o.
* nbsd-nat.c: New file.
* nbsd-nat.h: New file.
* Makefile.in (ALLDEPFILES): Add nbsd-nat.c.
(nbsd_nat_h): New variable.
(nbsd-nat.o): New dependency.
2006-12-17 13:30:44 +00:00
Daniel Jacobowitz d0e5500c95 * Makefile.in (ALLDEPFILES): Remove mipsv4-nat.c.
(mipsv4-nat.o): Delete.
	* mipsv4-nat.c: Delete.
2006-12-16 21:00:29 +00:00
Daniel Jacobowitz f3d770869c * dve3900-rom.c: Delete file.
* Makefile.in (dve3900-rom.o): Delete.
2006-12-16 19:18:37 +00:00
Mark Kettenis 5d0fc17b31 * i386obsd-nat.c: Include "gdbcore.h", "regcache.h", "target.h",
<machine/frame.h>, <machine/pcb.h>, "i386bsd-nat.h" and
"bsd-kvm.h".
(i386obsd_supply_pcb): New function.
(_initialize_i386obsd_nat): Construct and add target
vector. Enable libkvm interface.
* Makefile.in (i386obsd-nat.o): Update dependencies.
* config/i386/obsd.mh (NATDEPFILES): Remove i386nbsd-nat.c
2006-12-16 10:45:52 +00:00
Mark Kettenis bd37273160 Add OpenBSD/sh native support.
* NEWS (New native configurations): Mention OpenBSD/sh.
* configure.host: Add sh*-*-openbsd*.
* shnbsd-nat.c: Include "inf-ptrace.h".
(shnbsd_fetch_inferior_registers): Rename from
fetch_inferior_registers.  Make static.
(shnbsd_store_inferior_registers): Rename from
store_inferior_registers.  Make static.
(_initialize_shnbsd_nat): New function.
* Makefile.in (shnbsd-nat.o): Update dependencies.
* config/sh/nbsd.mh (NAT_CLIBS, NAT_FILE): Remove.
(NATDEPFILES): Remove infptrace.o and inftarg.o.  Add
inf-ptrace.o.
2006-12-15 23:57:35 +00:00
Daniel Jacobowitz 29709017e8 * Makefile.in (mips-tdep.o, target-descriptions.o): Update.
* target-descriptions.c (struct property): New.
	(struct target_desc): Add properties member.
	(tdesc_property, set_tdesc_property): New.
	* target-descriptions.h (tdesc_property, set_tdesc_property):
	Declare.
	* mips-tdep.c (PROPERTY_GP32, PROPERTY_GP64): New constants.
	(struct gdbarch_tdep): Add register_size_valid_p and register_size.
	(mips_isa_regsize): Use them.
	(mips_register_g_packet_guesses): New.
	(mips_gdbarch_init): Call it.  If a target description is supplied,
	check for internal properties.  Check for register size mismatches.
	* remote.c (send_g_packet, process_g_packet): New functions, split
	out from fetch_registers_using_g.
	(fetch_registers_using_g): Use them.
	(struct remote_g_packet_guess, remote_g_packet_guess_s)
	(struct remote_g_packet_data, remote_g_packet_data_handle)
	(remote_g_packet_data_init, register_remote_g_packet_guess)
	(remote_read_description): New.
	(init_remote_ops, init_remote_async_ops): Set to_read_description.
	(_initialize_remote): Register remote_g_packet_data_handle.
	* remote.h (register_remote_g_packet_guess): Declare.
2006-11-28 22:14:31 +00:00
Daniel Jacobowitz 424163ea15 * Makefile.in (SFILES): Add new and missed files.
(target_descriptions_h): New.
	(COMMON_OBS): Add target-descriptions.o.
	(arch-utils.o, infcmd.o, remote.o, target.o): Update.
	(target-descriptions.o): New.
	* arch-utils.c (gdbarch_info_fill): Check for a target
	description.
	* target-descriptions.c, target-descriptions.h: New files.
	* gdbarch.sh: Add target_desc to info.  Declare it in gdbarch.h.
	Correct typos.
	(gdbarch_list_lookup_by_info): Check target_desc.
	* gdbarch.c, gdbarch.h: Regenerated.
	* target.c (update_current_target): Mention to_read_description.
	(target_pre_inferior): Call target_clear_description.
	(target_read_description): New.
	* target.h (struct target_ops): Add to_read_description.
	(target_read_description): New prototype.
	* infcmd.c (post_create_inferior): Call target_find_description.
	* remote.c (remote_open_1): Likewise.
	(extended_remote_create_inferior): Add a comment.
	(extended_remote_async_create_inferior): Likewise.
2006-11-28 22:10:26 +00:00
Ulrich Weigand 982e9687bf * config/tm-linux.h: Delete file.
* config/alpha/alpha-linux.mt (DEPRECATED_TM_FILE): Set to tm-alpha.h.
	* config/alpha/tm-alphalinux.h: Delete file.
	* config/arm/linux.mt (DEPRECATED_TM_FILE): Set to tm-arm.h
	* config/arm/tm-linux.h: Delete file.
	* config/i386/tm-linux.h: Do not include "config/tm-linux.h".
	* config/ia64/tm-linux.h: Do not include "config/tm-linux.h".
	* config/m32r/linux.mt (DEPRECATED_TM_FILE): Remove.
	* config/mips/tm-linux.h:  Do not include "config/tm-linux.h".
	* config/pa/linux.mt (DEPRECATED_TM_FILE): Set to tm-hppa.h.
	* config/pa/tm-linux.h: Delete file.
	* config/powerpc/tm-linux.h: Do not include "config/tm-linux.h".
	* config/s390/linux.mt (DEPRECATED_TM_FILE): Remove.
	* config/sh/linux.mt (DEPRECATED_TM_FILE): Set to tm-sh.h.
	* config/sh/tm-linux.h: Delete file.
	* alpha-linux-tdep.c: Include "symtab.h".
	(alpha_linux_init_abi): Call set_gdbarch_skip_trampoline_code.
	* i386-linux-tdep.c: Include "symtab.h".
	(i386_linux_init_abi): Call set_gdbarch_skip_trampoline_code.
	* ia64-linux-tdep.c: Include "symtab.h".
	(ia64_linux_init_abi): Call set_gdbarch_skip_trampoline_code.
	* m32r-linux-tdep.c: Include "symtab.h".
	(m32r_linux_init_abi): Call set_gdbarch_skip_trampoline_code.
	* mips-linux-tdep.c: Include "symtab.h".
	(mips_linux_init_abi): Call set_gdbarch_skip_trampoline_code.
	* sh-linux-tdep.c: Include "symtab.h".
	(sh_linux_init_abi): Call set_gdbarch_skip_trampoline_code.
	* s390-tdep.c (s390_gdbarch_init): Call
	set_gdbarch_skip_trampoline_code.
	* s390-nat.c: Do not include "tm.h".
	* Makefile.in (alpha-linux-tdep.o): Add dependency on $(symtab_h).
	(i386-linux-tdep.o): Likewise.
	(ia64-linux-tdep.o): Likewise.
	(m32r-linux-tdep.o): Likewise.
	(mips-linux-tdep.o): Likewise.
	(sh-linux-tdep.o): Likewise.
	(s390-nat.o): Remove dependency on $(tm_h).
2006-11-28 21:41:03 +00:00
Ulrich Weigand 238ae9afbe * config/tm-linux.h (REALTIME_LO, REALTIME_HI): Do not define.
* config/mips/tm-linux.h (REALTIME_LO, REALTIME_HI): Likewise.

	* config/rs6000/tm-rs6000ly.h (REALTIME_LO, REALTIME_HI): Move to ...
	* config/nm-lynx.h (REALTIME_LO, REALTIME_HI): ... here.

	* config/i386/nto.mh (NAT_FILE): Define.
	* config/i386/nto.mt (DEPRECATED_TM_FILE): Remove.
	* config/i386/tm-nto.h: Delete file.
	* config/tm-nto.h: Delete file.
	* config/nm-nto.h: New file.

	* Makefile.in (nto-tdep.o): Add dependency on $(objfiles_h).
	* nto-tdep.c: Include "objfiles.h" and <string.h>.

	* coff-solib.h (SOLIB_UNLOADED_LIBRARY_PATHNAME): Define as "".
	* xcoffread.c (read_xcoff_symtab): Initialize fcn_stab_saved.
	* config/rs6000/rs6000lynx.mt (TDEPFILES): Add xcoffread.o.
2006-11-28 19:07:51 +00:00
Ulrich Weigand 5ea03926ac * Makefile.in (mips-linux-tdep.o) Add $(solib_h) dependency.
(nto-procfs.o): Likewise.
	* mips-linux-tdep.c: Include "solib.h".
	* nto-procfs.c: Likewise.
	* config/nm-linux.h: Do not include "solib.h".
	* config/nm-nbsd.h: Likewise.
	* config/tm-linux.h: Likewise.
	* config/alpha/nm-osf.h: Likewise.
	* config/frv/tm-frv.h: Likewise.
	* config/i386/nm-fbsh.h: Likewise.
	* config/i386/nm-i386gnu.h: Likewise.
	* config/i386/nm-i386sco5.h: Likewise.
	* config/i386/nm-i386sol2.h: Likewise.
	* config/i386/nm-i386v4.h: Likewise.
	* config/i386/nm-i386v42mp.h: Likewise.
	* config/i386/tm-i386sol2.h: Likewise.
	* config/i386/tm-nto.h: Likewise.
	* config/mips/nm-irix5.h: Likewise.
	* config/mips/tm-nbsd.h: Likewise.
	* config/pa/tm-hppah.h: Likewise.
	* config/powerpc/tm-ppc-eabi.h: Likewise.
	* config/rs6000/tm-rs6000.h: Likewise.
	* config/sh/tm-nbsd.h: Likewise.
	* config/sparc/nm-sol2.h: Likewise.
	* config/sparc/tm-sol2.h: Likewise.
	* config/arm/nbsdaout.mh: Remove NAT_FILE.
	* config/i386/nbsdaout.mh: Likewise.
	* config/i386/nbsdelf.mh: Likewise.
	* config/i386/obsdaout.mh: Likewise.
	* config/m68k/nbsdaout.mh: Likewise.
	* config/m68k/obsd.mh: Likewise.
	* config/sparc/nbsdaout.mh: Likewise.
	* config/cris/cris.mt: Remove DEPRECATED_TM_FILE.
	* config/i386/linux64.mt: Likewise.
	* config/m68k/linux.mt: Likewise.
	* config/m68k/nbsd.mt: Likewise.
	* config/sparc/linux.mt: Likewise.
	* config/sparc/linux64.mt: Likewise.
	* config/vax/nbsd.mt: Likewise.
2006-11-24 18:23:34 +00:00
Daniel Jacobowitz 29d73ae48c gdb/
* Makefile.in (arm-tdep.o): Update dependencies.
	* arm-tdep.c (thumb_skip_prologue): Remove.
	(thumb_analyze_prologue): New function.
	(arm_skip_prologue): Use thumb_analyze_prologue.
	(thumb_scan_prologue): Ditto.
gdb/testsuite/
	* gdb.arch/thumb-prologue.c, gdb.arch/thumb-prologue.exp: New files.
2006-11-22 18:51:58 +00:00
Ulrich Weigand 771b4502d5 * config/powerpc/spu-linux.mh: New file.
* config/spu/spu.mt: New file.
	* configure.ac: Provide gdb_native configuration variable.
	* configure: Regenerate.
	* configure.host: Support powerpc64 to spu 'pseudo-native' mode.
	* configure.tgt: Add "spu" target_cpu and "spu*-*-*" target.
	* Makefile.in (spu_tdep_h): New variable.
	(ALLDEPFILES): Add spu-linux-nat.c and spu-tdep.c
	(spu-linux-nat.o, spu-tdep.o): Add dependencies.
	* spu-linux-nat.c: New file.
	* spu-tdep.c: New file.
	* spu-tdep.h: New file.
2006-11-22 13:49:53 +00:00
Vladimir Prus 765dc01564 2006-11-22 Vladimir Prus <vladimir@codesourcery.com>
* breakpoint.c: Include "memattr.h".
        (automatic_hardware_breakpoints): New.
        (show_automatic_hardware_breakpoints): New.
        (insert_bp_location): Automatically use
        hardware breakpoints.
        (_initialize_breakpoint): Register the "auto-hw"
        variable.
        * Makefile.in (breakpoint.o): Update dependencies.
2006-11-22 10:43:34 +00:00
Daniel Jacobowitz ca3bf3bdbe 2006-11-14 Maxim Grigoriev <maxim@tensilica.com>
* NEWS: New port to Xtensa.
	* Makefile.in: Add dependencies for Xtensa files.
	* configure.tgt (xtensa*, xtensa*-*-elf*): New.
	* configure.host (xtensa*-*-elf*): New.
	* config/xtensa/xtensa.mt: New file.
	* xtensa-config.c: New file.
	* xtensa-tdep.h: New file.
	* xtensa-tdep.c: New file.

2006-11-14  Maxim Grigoriev  <maxim@tensilica.com>

	* gdb.texinfo (Contributors): Add contributors of Xtensa port.
2006-11-14 21:53:59 +00:00
Daniel Jacobowitz 94277a3898 gdb/
* Makefile.in (symtab.o): Update.
	* symtab.h (matching_bfd_section): New prototype.
	* symtab.c (matching_bfd_section): New.
	(find_pc_sect_psymbol, find_pc_sect_symtab): Use it.
	* minsyms.c (lookup_minimal_symbol_by_pc_section): Likewise.
	* printcmd.c (sym_info): Ignore separate debug objfiles.
gdb/testsuite/
	* gdb.base/sepdebug.exp: Remove debug format test.
	* lib/gdb.exp (gdb_gnu_strip_debug): Perform debug format test.
	Handle no-symtab.
	* gdb.base/sepsymtab.c, gdb.base/sepsymtab.exp: New.
2006-10-17 20:17:45 +00:00
Daniel Jacobowitz 9e35dae425 2006-10-09 Jan Kratochvil <jan.kratochvil@redhat.com>
Daniel Jacobowitz  <dan@codesourcery.com>

	* Makefile.in (expprint.o, parse.o, target.o): Update.
	* dwarf2loc.c (dwarf_expr_tls_address): Move body to
	target_translate_tls_address.  Call it.
	* eval.c (evaluate_subexp_standard): Handle UNOP_MEMVAL_TLS.
	* expprint.c (print_subexp_standard): Likewise.
	(op_name_standard, dump_subexp_body_standard): Likewise.
	* expression.h (enum exp_opcode): Add UNOP_MEMVAL_TLS.
	(union exp_element): Add objfile.
	* parse.c (write_exp_elt_objfile): New function.
	(msym_tls_symbol_type): New.
	(write_exp_msymbol): Handle TLS.
	(operator_length_standard): Handle UNOP_MEMVAL_TLS.
	(build_parse): Initialize msym_tls_symbol_type.
	* parser-defs.h (write_exp_elt_objfile): New prototype.
	* target.c (target_translate_tls_address): New.
	* target.h (target_translate_tls_address): Add prototype.

2006-10-09  Jan Kratochvil  <jan.kratochvil@redhat.com>

	* gdb.threads/tls-nodebug.c, gdb.threads/tls-nodebug.exp: New test.
2006-10-10 03:17:53 +00:00
Daniel Jacobowitz dbc981de23 * Makefile.in (gdb_expat_h): New.
(xml_support_h): Add gdb_expat.h dependency.
	(memory-map.o, xml-support.o): Likewise.
	* gdb_expat.h: New file.
	* xml-support.h: Include it.
	* memory-map.c, xml-support.c: Likewise.  Remove XML_STATUS_OK
	definitions.
2006-10-05 19:42:31 +00:00
Daniel Jacobowitz a76d924dff * Makefile.in (SFILES): Add target-memory.c.
(COMMON_OBS): Add target-memory.o.
	* memattr.c (lookup_mem_region): Adjust handling for
	the top of memory.  Improve comments.
	* remote.c (packet_check_result): New function, split out
	from packet_ok.  Recognize "E." as an error prefix.
	(packet_ok): Use it.
	(remote_write_bytes_aux): New function, renamed from
	remote_write_bytes.  Take packet header, packet format,
	and length flag as arguments.
	(remote_write_bytes): Rewrite to use remote_write_bytes_aux.
	(remote_send_printf, restore_remote_timeout)
	(remote_flash_timeout, remote_flash_erase, remote_flash_write)
	(remote_flash_done): New.
	(remote_xfer_partial): Handle flash writes.
	(init_remote_ops, init_remote_async_ops): Set to_flash_erase
	and to_flash_done.
	* symfile.c (struct load_section_data): Include a pointer to
	the cumulative stats and a request queue.  Move most members
	to other types.
	(struct load_progress_data, struct load_progress_section_data): New
	types.
	(load_progress): Handle a NULL baton and zero bytes.  Update for
	type changes.
	(load_section_callback): Create memory write requests instead of
	writing to memory.  Don't print the progress message here.
	(clear_memory_write_data): New function.
	(generic_load): Use target_write_memory_blocks.
	* target-memory.c: New file.
	* target.c (update_current_target): Mention new uninherited methods.
	(memory_xfer_partial): Issue an error for flash writes.
	(target_flash_erase, target_flash_done): New functions.
	(target_write_with_progress): Call the progress callback at the
	start also.
	* target.h (enum target_object): Add TARGET_OBJECT_FLASH.
	(target_write_with_progress): Update comment.
	(struct target_ops): Add to_flash_erase and to_flash_done.
	(target_flash_erase, target_flash_done, struct memory_write_request)
	(memory_write_request_s, enum flash_preserve_mode)
	(target_write_memory_blocks): New, including a vector type
	for memory_write_request_s.
2006-09-21 14:00:53 +00:00