2008-12-31  Pedro Alves  <pedro@codesourcery.com>

	PR gdb/8812:
	* infrun.c (handle_command): Don't print a header or notify the
	target about signal changes if we didn't change any signal.

2008-12-29  Joel Brobecker  <brobecker@adacore.com>

	* valops.c (find_method_list): Minor reformatting in comment.

2008-12-29  Pedro Alves  <pedro@codesourcery.com>

	PR gdb/7536:
	* valprint.c (input_radix_1): New static global.
	(set_input_radix): Use it instead of "input_radix".
	(set_input_radix_1): Always leave input_radix_1 set to
	input_radix.
	(output_radix_1): New static global.
	(set_output_radix): Use it instead of "output_radix".
	(set_output_radix_1): Always leave output_radix_1 set to
	output_radix.
	(_initialize_valprint): Use "input_radix_1" instead of
	"input_radix" with the "input-radix" command.  Use
	"output_radix_1" instead of "output_radix" with the "output-radix"
	command.

2008-12-28  Pedro Alves  <pedro@codesourcery.com>

	* linux-fork.c (linux_fork_detach): New.
	* linux-fork.h (linux_fork_detach): Declare.
	* linux-nat.c (linux_child_follow_fork): When following the fork
	child, add the child inferior before possibly detaching from the
	parent.  Don't reinstall ourselves.
	(linux_nat_detach): Call linux_fork_detach if there are other
	forks to debug.
	* linux-thread-db.c (thread_db_detach): Don't call
	target_mourn_inferior.  Instead inline the necessary bits.
	* inf-ptrace.c (inf_ptrace_detach): Don't unpush the target if
	there are other inferiors to debug.

2008-12-28  Jan Kratochvil  <jan.kratochvil@redhat.com>

	Fix TYPE_HIGH_BOUND for TYPE_CODE_RANGE using arbitrary TYPE_NFIELDS in
	preparation for supporting DW_AT_byte_stride.
	* ada-lang.c (packed_array_type, ada_index_type): Use TYPE_INDEX_TYPE.
	(ada_array_bound_from_type): Move `index_type' declaration to the
	function start.  New variable `retval'.  Return the bounds for
	TYPE_CODE_RANGE using TYPE_LOW_BOUND and TYPE_HIGH_BOUND.  Abort on
	invalid index type codes.
	* ada-typeprint.c (print_range): Set `upper_bound' for TYPE_CODE_RANGE
	now using TYPE_HIGH_BOUND.
	* ada-valprint.c (val_print_packed_array_elements): Use `index_type'.
	* eval.c (evaluate_subexp_standard): Use TYPE_INDEX_TYPE.
	* gdbtypes.c (create_range_type): Use TYPE_LOW_BOUND, TYPE_HIGH_BOUND,
	refer to the number of fields only through TYPE_NFIELDS.
	(create_array_type): Use TYPE_INDEX_TYPE.
	(check_typedef): Use TYPE_INDEX_TYPE, TYPE_LOW_BOUND, TYPE_HIGH_BOUND.
	* gdbtypes.h (TYPE_ARRAY_UPPER_BOUND_IS_UNDEFINED)
	(TYPE_ARRAY_LOWER_BOUND_IS_UNDEFINED): Use TYPE_INDEX_TYPE.
	(TYPE_ARRAY_UPPER_BOUND_VALUE, TYPE_ARRAY_LOWER_BOUND_VALUE): Use
	TYPE_INDEX_TYPE, TYPE_LOW_BOUND, TYPE_HIGH_BOUND,
	* hppa-tdep.c (hppa_alignof <TYPE_CODE_ARRAY>): Use TYPE_INDEX_TYPE.
	* mdebugread.c (parse_type): Use TYPE_LOW_BOUND, TYPE_HIGH_BOUND,
	* valarith.c (value_bit_index): Use TYPE_INDEX_TYPE.

2008-12-26  Sandra Loosemore  <sandra@codesourcery.com>

	* breakpoint.c (update_watchpoint): Refactor to avoid compiler
	warning.

2008-12-22  Tom Tromey  <tromey@redhat.com>

	* stack.c (print_block_frame_locals): Print spaces, not tabs.
	Update for call to print_variable_and_value.
	(print_frame_arg_vars): Update.
	* value.h (print_variable_and_value): Rename from
	print_variable_value.  Add 'name' and 'indent' parameters.
	* printcmd.c (print_variable_and_value): Rename from
	print_variable_value.  Add 'name' and 'indent' parameters.  Use
	common_val_print.
	* f-valprint.c (info_common_command): Update.

2008-12-22  Tom Tromey  <tromey@redhat.com>

	* python/python-value.c (valpy_length): Remove #if.

2008-12-22  Paul Pluzhnikov  <ppluzhnikov@google.com>

	* python/python-internal.h (PyEval_ReleaseLock): New define.
	
2008-12-22  Tom Tromey  <tromey@redhat.com>

	* c-exp.y (ident_tokens): New global.
	(struct token) <cxx_only>: New field.
	(tokentab3): Update.
	(tokentab2): Update.
	(yylex): Use ident_tokens.

2008-12-22  Adam Denton  <adenton@yahoo.com>

	PR gdb/8307:
	* environ.c (free_environ): Free e->vector.

2008-12-22  Jan Kratochvil  <jan.kratochvil@redhat.com>

	Fix memory double-free.
	* completer.c (line_completion_function): Clear LIST after called xfree.

2008-12-22  Joel Brobecker  <brobecker@adacore.com>

	* breakpoint.c (update_watchpoint): Adjust and extend the description
	of this function.  Fix one error message accordingly.

2008-12-21  Jan Kratochvil  <jan.kratochvil@redhat.com>

	Fix hw watchpoints created before the inferior was started.
	* breakpoint.c (update_watchpoint): Convert the bp_watchpoint and
	bp_hardware_watchpoint types according to the current runtime state.

2008-12-18  Pedro Alves  <pedro@codesourcery.com>

	* linux-nat.c (linux_child_follow_fork): If following the child,
	and not detaching the parent, also add the child fork to the fork
	list.
	* linux-fork.c (linux_fork_context): Remove dead error call.
	Assert that the incoming newfp argument is not null.  Do not add a
	new fork for inferior_ptid.  Assert that there is one already.

2008-12-16  Tristan Gingold  <gingold@adacore.com>

	* inflow.c: Remove old_sigio, handle_sigio, old_fcntl_flags,
	set_sigio_trap, clear_sigio_trap definitions.
	* inferior.h: Remove set_sigio_trap and clear_sigio_trap declarations.
	* inf-ptrace.c (inf_ptrace_wait): Remove call to set_sigio_trap
	and clear_sigio_trap.
	* inf-ttrace.c (inf_ttrace_wait): Ditto.
	* linux-nat.c (linux_nat_wait): Ditto.
	* spu-linux-nat.c (spu_child_wait): Ditto.
	* rs6000-nat.c (rs6000_wait): Ditto.
	* target.c: Remove target_activity_function and target_activity_fd.
	* target.h: Remove target_activity_function and target_activity_fd
	declarations.

2008-12-15  Paul Pluzhnikov  <ppluzhnikov@google.com>

	* dbxread.c (read_ofile_symtab): Sign-extend 32-bit N_LSYM and
	N_PSYM STABS values for 64-bit GDB.

2008-12-15  Tristan Gingold  <gingold@adacore.com>

	* dwarf2expr.c (execute_stack_op): Handle DW_OP_swap.

2008-12-15  Jerome Guitton  <guitton@adacore.com>

	* ada-lang.c (ada_value_slice_ptr): Rename to...
	(ada_value_slice_from_ptr): ... this. Return a lazy value instead
	of a reference.	Update comment.
	(ada_value_struct_elt): Ditto if arg is a pointer or a reference.
	Update comment as well.
	(ada_evaluate_subexp): Update use of ada_value_slice_ptr.

2008-12-12  Kevin Buettner  <kevinb@redhat.com>

	* gnu-v3-abi.c (vtable_ptrdiff_type): New function.
	(gnuv3_decode_method_ptr, gnuv3_print_method_ptr)
	(gnuv3_method_ptr_to_value): Use a better approximation for
	`ptrdiff_t' instead of `long'.

2008-12-12  Kevin Buettner  <kevinb@redhat.com>

	* m32c-tdep.c (m32c_gdbarch_init): Call set_gdbarch_vbit_in_delta().
	(m32c_push_dummy_call): Dereference pointer type.

2008-12-12  Tom Tromey  <tromey@redhat.com>

	PR cli/2563:
	* cli/cli-decode.c (delete_cmd): Add hook-related out parameters.
	(add_cmd): Update.  Install hooks into new command.
	(add_alias_cmd): Update.

2008-12-11  Tom Tromey  <tromey@redhat.com>

	* macroexp.c (get_pp_number): Require digit after leading ".".
	Correctly handle suffixes.

2008-12-11  Tom Tromey  <tromey@redhat.com>

	* macrocmd.c (macro_define_command): Skip whitespace after
	macro name.
	(print_one_macro): Print space after macro name.

2008-12-12  Pedro Alves  <pedro@codesourcery.com>

	* infrun.c (handle_inferior_event): Correctly tag non-executing
	threads in multi-process.
	(normal_stop): Correctly tag stopped threads in multi-process.

2008-12-12  Pedro Alves  <pedro@codesourcery.com>

	* remote.c (extended_remote_mourn_1): Always call
	generic_mourn_inferior.

2008-12-12  Pedro Alves  <pedro@codesourcery.com>

	* remote.c (remote_detach_1): Don't delete the inferior here.
	(process_stop_reply): Ditto.
	(extended_remote_kill): Ditto.

2008-12-12  Pedro Alves  <pedro@codesourcery.com>

	* remote.c (read_ptid): If we don't know about any inferior yet,
	use the pid of magic_null_ptid.
	(remote_start_remote): In the non-stop mode case, don't set
	inferior_ptid to magic_null_ptid here.

2008-12-11  Daniel Jacobowitz  <dan@codesourcery.com>
	    Pedro Alves  <pedro@codesourcery.com>

	* infcmd.c (step_1): Use step_once in the synchronous case too.
	(step_1_continuation): Wrap line.
	(step_once): Adjust comment.  Only install the continuation in
	async mode.

2008-12-11  Pedro Alves  <pedro@codesourcery.com>

	* infrun.c (handle_inferior_event): On a TARGET_WAITKIND_EXITED or
	TARGET_WAITKIND_SIGNALLED, switch inferior_ptid to the event ptid.
	* linux_thread_db.c (thread_db_wait): On a TARGET_WAITKIND_EXITED
	or TARGET_WAITKIND_SIGNALLED, return the ptid the beneath target
	returned.
	* inf-ptrace.c (inf_ptrace_wait): Return inferior_ptid instead of
	minus_one_ptid if the inferior disappeared.
	* rs6000-nat.c (rs6000_wait): Likewise.
	* spu-linux-nat.c (spu_child_wait): Likewise.

2008-12-11  Tom Tromey  <tromey@redhat.com>

	PR macros/2564:
	* c-exp.y (macro_original_text, expansion_obstack,
	expression_macro_scope): New globals.
	(scan_macro_expansion): New function.
	(scanning_macro_expansion): Likewise.
	(finished_macro_expansion): Likewise.
	(scan_macro_cleanup): Likewise.
	(c_parse): Find macro scope.  Initialize obstack.
	* c-lang.h (scan_macro_expansion, scanning_macro_expansion,
	finished_macro_expansion, expression_macro_lookup_func,
	expression_macro_lookup_baton): Remove.
	* c-lang.c (scan_macro_expansion, scanning_macro_expansion,
	finished_macro_expansion, expression_macro_lookup_func,
	expression_macro_lookup_baton): Remove.
	(macro_original_text, macro_expanded_text,
	c_preprocess_and_parse): Remove.
	(c_language_defn, cplus_language_defn, asm_language_defn,
	minimal_language_defn): Use c_parse.

2008-12-10  Pedro Alves  <pedro@codesourcery.com>

	* infcmd.c (until_next_command, finish_backward): Use get_frame_pc
	instead of read_pc.

2008-12-09  Tom Tromey  <tromey@redhat.com>

	PR gdb/1815:
	* cli/cli-decode.c (delete_cmd): Forward declare.
	(delete_cmd): Now static.  Change return type.  Remove command
	from alias chain.  Rewrite.
	(add_cmd): Initialize new fields.  Update cmd_pointer on all
	aliases.
	(add_alias_cmd): Put command on alias chain.
	* command.h (delete_cmd): Don't declare.
	* cli/cli-decode.h (delete_cmd): Don't declare.
	(struct cmd_list_element) <aliases, alias_chain>: New fields.

2008-12-09  Tom Tromey  <tromey@redhat.com>

	* config.in, configure: Rebuild.
	* configure.ac: Check for locale.h, setlocale.  Call
	AM_LC_MESSAGES.
	* acinclude.m4: Include lcmessage.m4.

2008-12-09  Jan Kratochvil  <jan.kratochvil@redhat.com>

	* remote.c (remote_parse_stop_reply): Use REG only after its NULL check.

2008-12-08  Joel Brobecker  <brobecker@adacore.com>

	* python/python-value.c (values_in_python): Add specific initialization
	to NULL to work-around a MacOS linker bug.

2008-12-08  Jan Kratochvil  <jan.kratochvil@redhat.com>

	Fix loc_type of `bp_location's created by update_watchpoint.
	* breakpoint.c (allocate_bp_location): Remove the bp_type parameter.
	Replace bp_type by bpt->type.  Update prototype.  All callers updated.
	(add_location_to_breakpoint):  Remove the bp_type parameter.
	Replace bp_type by b->type.  All callers updated.
	(set_breakpoint_location_function): Replace bptype by b->type.

2008-12-07  Jan Kratochvil  <jan.kratochvil@redhat.com>

	* breakpoint.c (update_global_location_list): Fix the comment.

2008-12-05  Pedro Alves  <pedro@codesourcery.com>

	* infcmd.c (step_1, step_once): Look up the stepping range based
	on the current frame's PC, not on stop_pc.

2008-12-05  Jan Kratochvil  <jan.kratochvil@redhat.com>

	Fix compilation on 32-bit host configurations.
	* ia64-tdep.c (ia64_breakpoint_from_pc): Suffix a constant by `LL'.

2008-12-05  Tristan Gingold  <gingold@adacore.com>

	* i386-darwin-nat.c (i386_darwin_sstep_at_sigreturn): New function.
	(amd64_darwin_sstep_at_sigreturn): New function.
	(darwin_set_sstep): The sigreturn is a special case: the trace flag
	must be set in the mcontext structure.

2008-12-05  Pedro Alves  <pedro@codesourcery.com>

	* infcmd.c (step_once): Remove dead code.

2008-12-04  Doug Evans  <dje@google.com>

	* infcall.c (call_function_by_hand): Clean up use of local dummy_addr.

2008-12-02  Doug Evans  <dje@google.com>

	* infrun.c (handle_inferior_event): Remove redundant resetting of
	stepping_past_singlestep_breakpoint.

2008-12-02  Pedro Alves  <pedro@codesourcery.com>

	* target.h (target_get_osdata): Describe.
	* osdata.h (make_cleanup_osdata_free): Declare.
	* osdata.c (osdata_item_clear): Define even if HAVE_LIBEXPAT is
	not defined.
	(osdata_free_cleanup): New.
	(make_cleanup_osdata_free): New.
	(get_osdata): Fix leak.
	(info_osdata_command): Use make_cleanup_osdata_free.
	(info_processes_command): Delete.
	(_initialize_osdata): Drop undocumented "info processes" alias.
	* mi/mi-main.c (mi_cmd_list_thread_groups): Fix leak.

2008-12-02  Jan Kratochvil  <jan.kratochvil@redhat.com>

	Fix resolving external references to TLS variables.
	* findvar.c: Include `objfiles.h'.
	(read_var_value <LOC_UNRESOLVED>): New variable `obj_section'.  Handle
	SEC_THREAD_LOCAL variables.
	* printcmd.c (address_info <LOC_UNRESOLVED>): Handle SEC_THREAD_LOCAL
	variables.

2008-12-02  Doug Evans  <dje@google.com>

	* infrun.c (handle_inferior_event): Delete unused local tp.

2008-12-02  Pedro Alves  <pedro@codesourcery.com>
	    Vladimir Prus  <vladimir@codesourcery.com>

	Implement -list-thread-groups --available

        * Makefile.in (XMLFILES): Add osdata.dtd.
        (SFILES): Add osdata.c.
        (COMMON_OBS): Add osdata.o.
        * linux-nat.c: Include pwd.h, sys/types.h, gdb_dirent.h and xml-support.h.
        (linux_nat_xfer_osdata): New function.
        (linux_xfer_partial): Handle TARGET_OBJECT_OSDATA.
        * osdata.c: New file.
        * osdata.h: New file.
        * remote.c (PACKET_qXfer_osdata): New packet enum.
        (remote_protocol_features): Add "qXfer:osdata:read".
        (remote_read_qxfer): Handle TARGET_OBJECT_OSDATA.
        (extended_remote_can_run): New.
        (init_extended_remote_ops): Set to_can_run to
        extended_remote_can_run.
        (_initialize_remote): Add packet config command for
        "qXfer:osdata:read".
        * xml-support.c (obstack_xml_printf): New function.
        * xml-support.h (obstack_xml_printf): Declare.
        * target.c (target_get_osdata): New function.
        * target.h (enum target_object): Add TARGET_OBJECT_OSDATA.
        (target_os_data): Declare.
        * features/osdata.dtd: New file.
        * mi/mi-main.c (mi_list_thread_groups): Handle the --available
        option.

2008-12-01  Doug Evans  <dje@google.com>

	* infrun.c (proceed): Delete unused local stop_signal.

2008-11-27  Tristan Gingold  <gingold@adacore.com>

	* NEWS: Add entry for new native configuration: Darwin.
	* configure.host: Add Darwin host.
	* configure.tgt: Add Darwin target.
	* defs.h (enum gdb_osabi): Add GDB_OSABI_DARWIN.
	* osabi.c (gdb_osabi_names): Add name for Darwin abi.
	* i386-darwin-nat.c: New file.
	* i386-darwin-tdep.c: New file.
	* machoread.c: New file.
	* darwin-nat-info.c: New file.
	* darwin-nat.c: New file.
	* darwin-nat.h: New file.
	* darwin.defs: New file.
	* config/i386/darwin.mh: New file.

2008-11-26  Tristan Gingold  <gingold@adacore.com>

	* MAINTAINERS: Add myself for write after approval privileges.

2008-11-26  Jerome Guitton  <guitton@adacore.com>

	* value.h (allocate_value_lazy): New function declaration.
	(value_free): Remove macro, make it a function.
	* value.c (value): Move actual content outside of the memory space
	of the struct; add a pointer to this actual content.
	(allocate_value_lazy, allocate_value_contents): New function.
	(allocate_value): Reimplement using these two new functions.
	(value_contents_raw, value_contents_all_raw): If no memory
	has been allocated yet for the actual content, allocate it.
	(value_contents_all): Resync with struct value's changes.
	(value_free): New function.
	(value_copy, value_primitive_field): Use new function
	allocate_value_lazy to allocate lazy values.
	(value_change_enclosing_type): Resync with struct value's changes.
	As the value is not reallocated, remove the special handling for
	the value chain (now obsolete).
	* valops.c (value_at_lazy): Use new function allocate_value_lazy.
	(value_fetch_lazy): Allocate value content. Use allocate_value_lazy
	to allocate lazy values.
	(value_slice): Use allocate_value_lazy to allocate lazy values.

2008-11-25  Jan Kratochvil  <jan.kratochvil@redhat.com>

	Fix automatic restoration of breakpoints memory for ia64.
	* ia64-tdep.c: New #if check on BREAKPOINT_MAX vs. BUNDLE_LEN.  
	(ia64_memory_insert_breakpoint): New comment part for SHADOW_CONTENTS
	content.  Remove variable instr.  New variable cleanup.  Disable
	automatic breakpoints restoration.  PLACED_SIZE and SHADOW_LEN are now
	set larger, to BUNDLE_LEN - 2.  Variable `bundle' type update.  Return
	error if even just final target_write_memory has failed.
	(ia64_memory_remove_breakpoint): Rename variables bundle to bundle_mem
	and instr to instr_saved.  New variables bundle_saved and
	instr_breakpoint.  Comment new reasons why we need to disable automatic
	restoration of breakpoints.  Assert PLACED_SIZE and SHADOW_LEN.  New
	check of the original memory content.  Return error if even just final
	target_write_memory has failed.
	(ia64_breakpoint_from_pc): Implement the emulation of permanent
	breakpoints compatible with current bp_loc_is_permanent.
	(template_encoding_table): Make it `const'.
	* breakpoint.c (bp_loc_is_permanent): Support unsupported software
	breakpoints.  New variables `cleanup' and `retval'.

2008-11-24  Tom Tromey  <tromey@redhat.com>

	* ada-lang.c (value_from_contents_and_address): Move...
	* value.c: ... here.
	* ada-lang.h (value_from_contents_and_address): Move
	declaration...
	* value.h: ... here.

2008-11-24  Paul Pluzhnikov  <ppluzhnikov@google.com>

	* valprint.c (val_print_array_elements): Pass correct
	element address to val_print.
	
2008-11-24  Jan Kratochvil  <jan.kratochvil@redhat.com>

	Fix access of an already freed memory.
	* parse.c (parse_field_expression): Call xstrdup on `*name'.
	* completer.c (expression_completer): Free fieldname.

2008-11-24  Daniel Jacobowitz  <dan@codesourcery.com>

	PR gdb/2474
	* remote.c (remote_read_description_p): New function.
	(remote_start_remote): Try to fetch the target description
	before adding shared libraries.  Try again later if the
	target is running but stopped.
	(remote_open_1): Mark extended targets as exited by default.
	(remote_read_description): Check target_has_execution.

2008-11-24  Jerome Guitton  <guitton@adacore.com>

	* alpha-mdebug-tdep.c (alpha_mdebug_frame_unwind_cache): Use
        the frame address in block instead of the return address to
        locate the mdebug PDR of the frame.

2008-11-21  Joel Brobecker  <brobecker@adacore.com>

	Remove the unused BPSTAT_WHAT_CHECK_SHLIBS_RESUME_FROM_HOOK.

	* breakpoint.h (enum bpstat_what_main_action): Remove
	BPSTAT_WHAT_CHECK_SHLIBS_RESUME_FROM_HOOK.
	* breakpoint.c (bpstat_what): Delete catch_shlib_event from enum class.
	Remove the BPSTAT_WHAT_CHECK_SHLIBS_RESUME_FROM_HOOK column from
	variable table.
	* infrun.c (wait_for_inferior): Remove handling of
	BPSTAT_WHAT_CHECK_SHLIBS_RESUME_FROM_HOOK.

2008-11-21  Tom Tromey  <tromey@redhat.com>

	* configure: Rebuild.
	* configure.ac: Merge calls to AC_CHECK_FUNCS, AC_CHECK_HEADERS,
	AC_CHECK_DECLS, and AC_CHECK_MEMBERS.

2008-11-21  Tom Tromey  <tromey@redhat.com>

	* python/python-internal.h (PyGILState_Ensure): New define.
	(PyGILState_Release): Likewise.
	(PyEval_InitThreads): Likewise.
	(PyThreadState_Swap): Likewise.
	(PyEval_InitThreads): Likewise.
	* python/python.c (_initialize_python): Initialize threads.
	Release GIL.
	(eval_python_from_control_command): Acquire GIL.
	(python_command): Likewise.
	* python/python-internal.h (make_cleanup_py_restore_gil):
	Declare.
	* python/python-utils.c (py_gil_restore): New function.
	(make_cleanup_py_restore_gil): Likewise.

2008-11-20  Doug Evans  <dje@google.com>

	* frame.c (frame_debug_got_null_frame): Remove file arg.
	All callers updated.

2008-11-20  Pedro Alves  <pedro@codesourcery.com>

	* infrun.c (resume): If following a fork, also reset regcache,
	gdbarch and pc.

2008-11-20  Doug Evans  <dje@google.com>

	* printcmd.c (sym_info): Don't print the offset if it's zero.

2008-11-20  Pedro Alves  <pedro@codesourcery.com>

	* infrun.c (resume): If following a fork, reread the current
	thread.  Avoid dereferencing a possibly dangling pointer.

2008-11-19  Doug Evans  <dje@google.com>

	* inferior.h (proceed_to_finish): Delete, unused.
	(stop_registers): Tweak comment.
	* infrun.c (stop_registers): Tweak comment.

2008-11-19  Kevin Buettner  <kevinb@redhat.com>

	* frv-tdep.c (frv_skip_main_prologue): New function.
	(frv_gdbarch_init): Register frv_skip_main_prologue.
	* solib-frv.c (fetch_loadmap): Return early when no segments are
	found.
	(frv_relocate_main_executable): Return early when both interpreter
	and executable loadmap addresses are zero.

2008-11-19  Bob Wilson  <bob.wilson@acm.org>
	
	* xtensa-config.c (rmap): Remove entries for ar32 through ar63.  Add
	threadptr, scompare1, mmid, epc5, epc6, epc7, eps5, eps6, eps7,
	excsave5, excsave6, excsave7, cpenable, and vecbase registers.
	(xtensa_submask0, xtensa_submask1, xtensa_submask2)
	(xtensa_submask3, xtensa_submask4, xtensa_submask5, xtensa_submask6)
	(xtensa_submask7, xtensa_submask8, xtensa_submask9, xtensa_submask10)
	(xtensa_submask11, xtensa_submask12, xtensa_submask13, xtensa_submask14)
	(xtensa_submask15): Adjust register numbers.
	* xtensa-xtregs.c (XTENSA_ELF_XTREG_SIZE): Change to 4.
	(xtensa_regmap_table): Add entry for scompare1.
	* regformats/reg-xtensa.dat: Remove ar32 through ar63.  Add threadptr
	and scompare1.
	
2008-11-19  Pedro Alves  <pedro@codesourcery.com>

	* remote.c (escape_buffer): New.
	(putpkt_binary, read_frame, getpkt_or_notif_sane_1): Use it.  Make
	sure debug output printing a packet buffer goes through a single
	fprintf_unfiltered call.
	* utils.c (vfprintf_unfiltered): If outputting timestamps, end
	output with a newline if it wasn't going to already.

2008-11-18  Paul Pluzhnikov  <ppluzhnikov@google.com>

	* maint.c (maintenance_translate_address): Fix a buglet.
	
2008-11-18  Thiago Jung Bauermann  <bauerman@br.ibm.com>

	* features/Makefile (rs6000/powerpc-isa205-32l-expedite,
	rs6000/powerpc-isa205-altivec32l-expedite,
	powerpc-isa205-vsx32l-expedite, rs6000/powerpc-isa205-64l-expedite,
	rs6000/powerpc-isa205-altivec64l-expedite,
	powerpc-isa205-vsx64l-expedite): New variables.
	* regformats/rs6000/powerpc-isa205-32l.dat: Generate.
	* regformats/rs6000/powerpc-isa205-altivec32l.dat: Generate.
	* regformats/rs6000/powerpc-isa205-vsx32l.dat: Generate.
	* regformats/rs6000/powerpc-isa205-64l.dat: Generate.
	* regformats/rs6000/powerpc-isa205-altivec64l.dat: Generate.
	* regformats/rs6000/powerpc-isa205-vsx64l.dat: Generate.

2008-11-18  Thiago Jung Bauermann  <bauerman@br.ibm.com>

	* ppc-linux-nat.c (ppc_register_u_addr): Add special case to return
	offset for full 64-bit slot of FPSCR when in 32-bits.
	(ppc_linux_read_description): Return target description with 64-bit
	FPSCR when inferior is running on an ISA 2.05 or later processor.
	* ppc-linux-tdep.c (_initialize_ppc_linux_tdep): Call
	initialize_tdec_powerpc_isa205_32l,
	initialize_tdec_powerpc_isa205_altivec32l,
	initialize_tdec_powerpc_isa205_vsx32l,
	initialize_tdec_powerpc_isa205_64l,
	initialize_tdec_powerpc_isa205_altivec64l and
	initialize_tdec_powerpc_isa205_vsx64l.
	* ppc-linux-tdep.h: Add external declaration for
	tdesc_powerpc_isa205_32l, tdesc_powerpc_isa205_altivec32l,
	tdesc_powerpc_isa205_vsx32l, tdesc_powerpc_isa205_64l,
	tdesc_powerpc_isa205_altivec64l and tdesc_powerpc_isa205_vsx64l.
	* features/rs600/powerpc-fpu-isa205.xml: New file.
	* features/rs600/powerpc-isa205-32l.xml: New file.
	* features/rs600/powerpc-isa205-64l.xml: New file.
	* features/rs600/powerpc-isa205-altivec32l.xml: New file.
	* features/rs600/powerpc-isa205-altivec64l.xml: New file.
	* features/rs600/powerpc-isa205-vsx32l.xml: New file.
	* features/rs600/powerpc-isa205-vsx64l.xml: New file.
	* features/rs600/powerpc-isa205-32l.c: Generate.
	* features/rs600/powerpc-isa205-64l.c: Generate.
	* features/rs600/powerpc-isa205-altivec32l.c: Generate.
	* features/rs600/powerpc-isa205-altivec64l.c: Generate.
	* features/rs600/powerpc-isa205-vsx32l.c: Generate.
	* features/rs600/powerpc-isa205-vsx64l.c: Generate.

2008-11-18  Paul Pluzhnikov  <ppluzhnikov@google.com>

	* objfiles.h: New MULTI_OBJFILE_P macro.
	* printcmd.c (sym_info): Print object name.
	* maint.c (maintenance_translate_address): Likewise.
	
2008-11-18  Joel Brobecker  <brobecker@adacore.com>

	* NEWS: Document the removal of "catch load" and "catch unload".

2008-11-17  Doug Evans  <dje@google.com>

	* infcall.c (call_function_by_hand): Fix punctuation and capitalization
	on error messages.

2008-11-17  Ulrich Weigand  <uweigand@de.ibm.com>

	PR gdb/2250
	* infrun.c (clear_proceed_status_thread): New function.
	(clear_proceed_status_callback): New function.
	(clear_proceed_status): In all-stop mode, clear per-thread
	proceed status of *all* threads, not only the current.
	(handle_inferior_event): In all-stop mode, if we're stepping
	one thread, but got some inferior event in another thread
	that does not cause GDB to break to the user interface,
	ensure the interrupted stepping operation continues in the
	original thread.
	(currently_stepping): Move thread-related tests to ...
	(currently_stepping_thread): ... this new function.
	(currently_stepping_callback): New function.

2008-11-17  Vladimir Prus  <vladimir@codesourcery.com>

	Implement =thread-selected notification.

        * mi/mi-common.h (struct mi_interp): New, moved from ...
        * mi/mi-interp.c: ...here.
        * mi/mi-main.c (mi_execute_command): If the thread changed
        as result of command, report that.

2008-11-17  Vladimir Prus  <vladimir@codesourcery.com>

	Implement continue/interrupt of thread groups.

        * mi/mi-main.c (proceed_thread_callback): New.
        (mi_cmd_exec_continue): If --thread-group is specified, resume all
        threads in that group.
        (interrupt_thread_callback): New.
        (mi_cmd_exec_interrupt): If --thread-group is specified, interrupt
        all threads in that group.

2008-11-17  Vladimir Prus  <vladimir@codesourcery.com>

	Implement '-target-detach pid'.

        * infcmd.c (detach_command): Make nonstatic.
        * inferior.h (detach_command): Declare.
        * mi/mi-cmds.c (mi_cmds): Don't route -target-detach via CLI.
        * mi/mi-cmds.h (mi_cmd_target_detach): Declare.
        * mi/mi-main.c (find_thread_of_process, mi_cmd_target_detach): New.

2008-11-17  Vladimir Prus  <vladimir@codesourcery.com>

	Include group-id in thread-created notification.

        * mi/mi-interp.c (mi_new_thread, mi_thread_exit): Include
        group id in the output.

2008-11-17  Vladimir Prus  <vladimir@codesourcery.com>

	Notification for attach/detach.

        * inferior.c: Call the process observers.
        * mi/mi-interp.c (mi_new_inferior, mi_inferior_exit): New.
        (mi_interpreter_init): Register the above.

2008-11-17  Vladimir Prus  <vladimir@codesourcery.com>

	Implement -list-thread-groups.

        * thread.c (print_thread_info): New parameter pid, to print
        threads of specific process.
        * gdbthread.h (print_thread_info): New parameter pid.
        * mi/mi-cmds.c (mi_cmds): Register -list-thread-groups.
        * mi/mi-cmds.h (mi_cmd_list_thread_groups): New.
        * mi/mi-main.c (mi_cmd_thread_info): Adjust.
        (print_one_process, mi_cmd_list_thread_groups): New.

2008-11-16  Joel Brobecker  <brobecker@adacore.com>

	Remove some unused macros related to the old load/unload catchpoints.

	* breakpoint.c (SOLIB_LOADED_LIBRARY_PATHNAME)
	(SOLIB_UNLOADED_LIBRARY_PATHNAME, SOLIB_CREATE_CATCH_LOAD_HOOK)
	(SOLIB_CREATE_CATCH_UNLOAD_HOOK): Delete. No longer used.

2008-11-16  Joel Brobecker  <brobecker@adacore.com>

	Remove support for catch load and catch unload commands.

	* breakpoint.h (enum bptype): Remove bp_catch_load and bp_catch_unload.
	(struct breakpoint): Remove fields dll_pathname and
	triggered_dll_pathname.
	(bpstat_get_triggered_catchpoints, ep_is_shlib_catchpoint): Delete.
	* breakpoint.c (ep_is_catchpoint): Remove handling of
	bp_catch_load and bp_catch_unload.
	(print_it_typical, bpstat_check_location, bpstat_what)
	(print_one_breakpoint_location, print_one_breakpoint_location)
	(user_settable_breakpoint, allocate_bp_location)
	(set_raw_breakpoint_without_location, mention, delete_breakpoint,
	(breakpoint_re_set_one, disable_command, enable_command): Likewise.
	(ep_is_shlib_catchpoint, bpstat_get_triggered_catchpoints)
	(catch_load_command_1, catch_unload_command_1): Delete.
	(_initialize_breakpoint): Remove the "catch load" and "catch unload"
	command creation.
	* infrun.c (handle_inferior_event): Remove the handling of
	load/unload catchpoint events.

2008-11-15  Joel Brobecker  <brobecker@adacore.com>

	From  Jerome Guitton  <guitton@adacore.com>
	* dwarf2read.c (dwarf2_debug_line_missing_end_sequence_complaint):
	New function.
	(dwarf_decode_lines): Detect null file numbers. Detect the end of
	the line program sequence when no end sequence is emitted.

2008-11-15  Joel Brobecker  <brobecker@adacore.com>

	* ada-lang.c (ada_evaluate_subexp): Improve handling of integer
	type dereferencing.

2008-11-15  Daniel Jacobowitz  <dan@codesourcery.com>

	* NEWS: Mention sparc64-linux-gnu gdbserver support.

2008-11-14  Daniel Gutson  <dgutson@codesourcery.com>

	* configure.tgt (sparc64-*-linux*): Added gdbserver support.
	* regformats/reg-sparc64.dat: New file.

2008-11-14  Tom Tromey  <tromey@redhat.com>

	PR mi/2549:
	* mi/mi-main.c (get_register): Use get_formatted_print_options.

2008-11-13  Joel Brobecker  <brobecker@adacore.com>

	* printcmd.c: define PRINTF_HAS_LONG_LONG only if not yet defined.

2008-11-13  Ulrich Weigand  <uweigand@de.ibm.com>

	* auxv.c (fprint_target_auxv): Handle AT_BASE_PLATFORM and
	AT_EXECFN.  Re-sort AT_SECURE.

2008-11-13  Jan Kratochvil  <jan.kratochvil@redhat.com>

	* monitor.c (monitor_insert_breakpoint): Remove unused variable `bp'.

2008-11-13  Joel Brobecker  <brobecker@adacore.com>

	* ia64-tdep.c: Remove commented out #define.

2008-11-12  Joel Brobecker  <brobecker@adacore.com>

	From Joel Sherrill  <joel.sherrill@oarcorp.com>
	* remote-sim.c (gdbsim_mourn_inferior): Use "target" parameter
	instead of the "gdbsim_ops" global.

2008-11-11  Doug Evans  <dje@google.com>

	* infcall.c (call_function_by_hand): Handle inferior exit.

2008-11-11  Thiago Jung Bauermann  <bauerman@br.ibm.com>

	* remote-sim.c (gdbsim_create_inferior, gdbsim_mourn_inferior): Add
	missing struct target_ops argument.

2008-11-11  Joel Sherrill <joel.sherrilL@oarcorp.com>

	* MAINTAINERS: Add myself for write after approval privileges.

2008-11-10  Tom Tromey  <tromey@redhat.com>

	* gdbtypes.c (copy_type_recursive): Clear new fields.

2008-11-10  Tom Tromey  <tromey@redhat.com>

	* cli/cli-cmds.c (source_script): Clean up full_pathname.  Run
	cleanups on early return.

2008-11-09  Vladimir Prus  <vladimir@codesourcery.com>

	Kill pthread_ops_hack

	* target.h (struct target_ops): Make to_attach, to_detach,
	to_create_inferior and to_mourn_inferior accept a pointer
    	to struct target_ops.
	(target_attach, target_create_inferior, target_create_inferior):
	Convert from macros to function.  Find the right target to
	invoke a method of.
	(find_default_attach, find_default_create_inferior): New parameter
	ops.
	* corefile.c (core_file_command): Pass target to to_detach.
	* corelow.c (core_detach): Add 'ops' parameter.
	* fork-child.c (fork_inferior): Return the pid.  Allow
	init_trace_fun to be NULL.
	* inf-ptrace (ptrace_ops_hack): Remove.
	(inf_ptrace_him): Remove, moving all logic into....
	(inf_ptrace_create_inferior): ... here.  Push the target
	passed as parameter.
	(inf_ptrace_mourn_inferior, inf_ptrace_attach, inf_ptrace_detach):
	Push/pop target passed as parameter, no ptrace_ops_hack.
	(inf_ptrace_target): Don't remember result.
	* inferior.h (fork_inferior): Adjust prototype.
	* linux-nat.c (linux_nat_create_inferior, linux_nat_attach)
	(linux_nat_detach, linux_nat_mourn_inferior): New parameter ops.
	Pass it to linux_ops target.
	* linux-thread-db.c (thread_db_detach, thread_db_mourn_inferior):
	New parameter ops. Pass it to the target beneath.
	* remote.c (remote_mourn, extended_remote_mourn, remote_detach)
	(extended_remote_create_inferior): New parameter ops. Pass it
	further.
	* target.c (debug_to_attach, debug_to_detach)
	(debug_to_mourn_inferior): New parameter ops.
	(target_create_inferior): New.
	(update_current_target): Do not inherit to_attach, to_detach,
	to_create_inferiour, to_mourn_inferior.  Do not default
	to_detach and to_mourn_inferior.
	(target_detach): Find the right target to use.
	(target_mourn_inferior): New.
	(find_default_attach, find_default_create_inferior): New parameter
	ops.  Pass the found target when calling its method.
	(init_dummy_target): Provide fallback definition of to_detach.
	(target_attach): New.
	(debug_to_attach, debug_to_detach, debug_to_create_inferior)
	(debug_to_mourn_inferiour): New parameter ops.
        * aix-thread.c: Adjust.
        * bsd-uthread.c: Adjust.
        * gnu-nat.c: Adjust.
        * go32-nat.c: Adjust.
        * hpux-thread.c: Adjust.
        * inf-ttrace.c: Ajust.
        * monitor.c: Adjust.
        * nto-procfs.c: Adjust.
        * procfs.c: Adjust.
        * remote-m32r-sdi.c: Adjust.
        * remote-mips.c: Adjust.
        * remote-sim.c: Adjust.
        * rs6000-nat.c: Adjust.
        * sol-thread.c: Adjust.
        * win32-nat.c: Adjust.
	* dec-thread.c: Adjust.

2008-11-09  Vladimir Prus  <vladimir@codesourcery.com>

	* thread.c (print_thread_info): Eliminate now useless checks
	for exited threads.

2008-11-06  Pedro Alves  <pedro@codesourcery.com>

	* i386-dicos-tdep.c (i386_dicos_init_abi): Set decr_pc_after_break
	to 0.

2008-11-05  Pedro Alves  <pedro@codesourcery.com>

	* remote.c (notice_new_inferiors): Add a new inferior only when
	we're going to add a new thread.

2008-11-05  Pedro Alves  <pedro@codesourcery.com>

	* defs.h (add_inferior_continuation)
	(do_all_inferior_continuations)
	(discard_all_inferior_continuations): Declare.
	* utils.c (add_inferior_continuation)
	(do_all_inferior_continuations)
	(discard_all_inferior_continuations): New.
	* inferior.h (struct inferior) <continuations>: New field.
	* inferior.c (free_inferior): Discard all the inferior
	continuations.
	* inf-loop.c (inferior_event_handler): Do all current inferior
	continuations.
	* infcmd.c (attach_command): Register an inferior continuation
	instead of a thread continuation.
	* infrun.c (handle_inferior_event): If stop_soon is
	STOP_QUIETLY_NO_SIGSTOP, also expect a TARGET_SIGNAL_0.

2008-11-04  Pedro Alves  <pedro@codesourcery.com>

	* inf-loop.c (inferior_event_handler): On INF_ERROR and
	INF_REG_EVENT throwing, don't call target_async or pop_target.
	Call pop_all_targets_above.
	* remote.c (remote_close): Call remote_terminal_ours.  Don't call
	signal or target_async.

2008-11-04  Daniel Jacobowitz  <dan@codesourcery.com>

	* eval.c (evaluate_subexp_standard): Assert that there is at
	least one array dimension.

2008-11-03  Vladimir Prus  <vladimir@codesourcery.com>

	Make attach_command exception-safe
        * infcmd.c (attach_command): Call async_enable_stdin
        if exception is thrown.

2008-11-03  Pedro Alves  <pedro@codesourcery.com>

	* gdbarch.sh (has_global_solist): Mention global breakpoints.
	* gdbarch.h: Regenerate.

2008-11-03  Pedro Alves  <pedro@codesourcery.com>

	* remote.c (remote_start_remote): If the solib list is global,
	fetch libraries and insert breakpoints after connecting.
	* infcmd.c (post_create_inferior): If the solist is shared between
	inferiors, no need to refetch it on every new inferior.
	(detach_command): If the shared library list is shared between
	inferiors, then don't clear it on every inferior detach.
	* gdbarch.sh (has_global_solist): New.
	* i386-dicos-tdep.c (i386_dicos_init_abi): Set
	gdbarch_has_global_solist.
	* target.c (target_pre_inferior): If the shared library list is
	shared between inferiors, then don't clear it here, neither
	invalidate the memory regions or clear the target description.
	(target_detach): If the shared library list is shared between
	inferiors, then don't remove breakpoints from the target here.
	(target_disconnect): Comment.
	* solib.c (update_solib_list): Check for null_ptid.
	* breakpoint.c (insert_breakpoints, update_global_location_list):
	If the shared library list is shared between inferiors, insert
	breakpoints even if there's no execution.
	(breakpoint_init_inferior): If the shared library list is shared
	between inferiors, don't delete breakpoints or mark them
	uninserted here.

	* gdbarch.c, gdbarch.h: Regenerate.

2008-10-31  Pedro Alves  <pedro@codesourcery.com>

	* inferior.h (inferior_ignoring_leading_exec_events): Delete
	declaration.

2008-10-31  Pedro Alves  <pedro@codesourcery.com>

	* inferior.h (write_inferior_status_register): Delete.
	* infrun.c (write_inferior_status_register): Delete.

2008-10-30  Tom Tromey  <tromey@redhat.com>

	* value.c (coerce_array): Use check_typedef.

2008-10-30  Tom Tromey  <tromey@redhat.com>

	* cli/cli-logging.c (handle_redirections): Make a cleanup.
	* reggroups.c (maintenance_print_reggroups): Make a cleanup.
	* regcache.c (regcache_print): Make a cleanup.
	* maint.c (maintenance_print_architecture): Make a cleanup.
	* dummy-frame.c (maintenance_print_dummy_frames): Make a cleanup.

2008-10-30  Tom Tromey  <tromey@redhat.com>

	* utils.c (make_cleanup_close): Use make_cleanup_dtor.
	(do_close_cleanup): Don't free 'fd'.

2008-10-30  Tom Tromey  <tromey@redhat.com>

	* source.c (symtab_to_fullname): Test 'r >= 0'.
	(psymtab_to_fullname): Likewise.
	(get_filename_and_charpos): Make a cleanup.
	(forward_search_command): Likewise.
	(reverse_search_command): Likewise.
	* exec.c (exec_file_attach): Close scratch_chan on failure.
	* nto-procfs.c (procfs_open): Make a cleanup.
	(procfs_pidlist): Likewise.
	(do_closedir_cleanup): New function.

2008-10-30  Andreas Schwab  <schwab@suse.de>

	* infcmd.c (construct_inferior_arguments): Handle newlines
	specially.

2008-10-30  Joel Brobecker  <brobecker@adacore.com>

	* breakpoint.h (enum bptype): Delete bp_catch_exec.
	* breakpoint.c (insert_catchpoint): Remove handling for
	bp_catch_exec breakpoint kinds.
	(insert_bp_location, update_breakpoints_after_exec, remove_breakpoint)
	(ep_is_catchpoint, print_it_typical, bpstat_check_location),
	(bpstat_check_location, bpstat_what, print_one_breakpoint_location)
	(print_one_breakpoint_location, user_settable_breakpoint)
	(breakpoint_address_is_meaningful, adjust_breakpoint_address)
	(allocate_bp_location, mention, breakpoint_re_set_one)
	(disable_command, enable_command): Likewise.
	(create_exec_event_catchpoint): Delete.
	(insert_catch_exec, remove_catch_exec, breakpoint_hit_catch_exec)
	(print_it_catch_exec, print_one_catch_exec, print_mention_catch_exec):
	New functions.
	(catch_exec_breakpoint_ops): New static global.
	(catch_exec_command_1): Use create_catchpoint instead of
	create_exec_event_catchpoint to create the exec catchpoint.

2008-10-28  Tom Tromey  <tromey@redhat.com>

	* Makefile.in (SUBDIR_CLI_OBS): Don't mention cli-utils.o.
	(SUBDIR_CLI_DEPS): Don't mention cli-utils.c.
	(HFILES_NO_SRCDIR): Don't mention cli-utils.h.
	(cli-utils.o): Remove.
	* cli/cli-utils.c: Remove.
	* cli/cli-utils.h: Remove.

2008-10-28  Tom Tromey  <tromey@redhat.com>

	* varobj.c (value_get_print_value): Include valprint.h.
	(value_get_print_value): Use get_formatted_print_options.
	* value.h (struct value_print_options): Declare.
	(value_print, val_print, common_val_print, val_print_string):
	Update.
	* value.c: Include valprint.h.
	(show_values): Use get_user_print_options.
	(show_convenience): Likewise.
	* valprint.h (prettyprint_arrays, prettyprint_structs): Don't
	declare.
	(struct value_print_options): New type.
	(vtblprint, unionprint, addressprint, objectprint, print_max,
	inspect_it, repeat_count_threshold, output_format,
	stop_print_at_null): Don't declare.
	(user_print_options, get_user_print_options,
	get_raw_print_options, get_formatted_print_options): Declare.
	(print_array_indexes_p): Don't declare.
	(maybe_print_array_index, val_print_array_elements): Update.
	* valprint.c (print_max): Remove.
	(user_print_options): New global.
	(get_user_print_options, get_raw_print_options,
	get_formatted_print_options): New functions.
	(print_array_indexes, repeat_count_threshold, stop_print_at_null,
	prettyprint_structs, prettyprint_arrays, unionprint,
	addressprint): Remove.
	(val_print): Remove format, deref_ref, pretty arguments; add
	options.  Update.
	(common_val_print): Likewise.
	(print_array_indexes_p): Remove.
	(maybe_print_array_index): Remove format, pretty arguments; add
	options.  Update.
	(val_print_array_elements): Remove format, deref_ref, pretty
	arguments; add options.  Update.
	(val_print_string): Add options argument.  Update.
	(_initialize_valprint): Use user_print_options.
	(output_format): Remove.
	(set_output_radix_1): Use user_print_options.
	* typeprint.c: Include valprint.h.
	(objectprint): Don't declare.
	(whatis_exp): Use get_user_print_options.
	* tui/tui-regs.c: Include valprint.h.
	(tui_register_format): Use get_formatted_print_options.
	* tracepoint.c: Include valprint.h.
	(addressprint): Don't declare.
	(trace_mention): Use get_user_print_options.
	(tracepoints_info): Likewise.
	* stack.c (print_frame_args): Use get_raw_print_options.
	(print_frame_info): Use get_user_print_options.
	(print_frame): Likewise.
	* sh64-tdep.c: Include valprint.h
	(sh64_do_register): Use get_formatted_print_options.
	* scm-valprint.c (scm_inferior_print): Remove format, deref_ref,
	pretty arguments; add options.
	(scm_scmlist_print): Likewise.  Update.
	(scm_scmval_print): Likewise.
	(scm_val_print): Likewise.
	(scm_value_print): Remove format, pretty arguments; add options.
	Update.
	* scm-lang.h (scm_value_print, scm_val_print, scm_scmval_print):
	Update.
	* scm-lang.c (scm_printstr): Add options argument.
	* python/python-value.c: Include valprint.h.
	(valpy_str): Use get_user_print_options.
	* printcmd.c: Include valprint.h.
	(addressprint): Don't declare.
	(inspect_it): Remove.
	(print_formatted): Remove format option; add options.  Update.
	(print_scalar_formatted): Likewise.
	(print_address_demangle): Use get_user_print_options.
	(do_examine): Use get_formatted_print_options.
	(print_command_1): Likewise.
	(output_command): Use get_formatted_print_options.
	(do_one_display): Likewise.
	(print_variable_value): Use get_user_print_options.
	* p-valprint.c (pascal_val_print): Remove format, deref_ref,
	pretty arguments; add options.  Update.
	(pascal_value_print): Remove format, pretty arguments; add
	options.  Update.
	(vtblprint, objectprint): Don't declare.
	(pascal_static_field_print): Remove.
	(pascal_object_print_value_fields): Remove format, pretty
	arguments; add options.  Update.
	(pascal_object_print_static_field): Likewise.
	(_initialize_pascal_valprint): Use user_print_options.  Update.
	* p-lang.h (pascal_val_print, pascal_value_print,
	pascal_printstr, pascal_object_print_value_fields): Update.
	(vtblprint, static_field_print): Don't declare.
	* p-lang.c (pascal_printstr): Add options argument.  Update.
	* objc-lang.c (objc_printstr): Add options argument.  Update.
	* mt-tdep.c: Include valprint.h.
	(mt_registers_info): Use get_raw_print_options.
	* mips-tdep.c: Include valprint.h.
	(mips_print_fp_register): Use get_formatted_print_options.
	(mips_print_register): Likewise.
	* mi/mi-main.c: Include valprint.h.
	(get_register): Use get_user_print_options.
	(mi_cmd_data_evaluate_expression): Likewise.
	(mi_cmd_data_read_memory): Use get_formatted_print_options.
	* mi/mi-cmd-stack.c: Include valprint.h.
	(list_args_or_locals): Use get_raw_print_options.
	* m2-valprint.c (print_function_pointer_address): Add addressprint
	argument.
	(m2_print_long_set): Remove format, pretty arguments.
	(m2_print_unbounded_array): Remove format, deref_ref, pretty
	arguments; add options.  Update.
	(print_unpacked_pointer): Remove format argument; add options.
	Now static.  Update.
	(print_variable_at_address): Remove format, deref_ref, pretty
	arguments; add options.  Update.
	(m2_print_array_contents): Likewise.
	(m2_val_print): Likewise.
	* m2-lang.h (m2_val_print): Update.
	* m2-lang.c (m2_printstr): Add options argument. Update.
	* language.h (struct value_print_options): Declare.
	(struct language_defn) <la_printstr>: Add options argument.
	<la_val_print>: Remove format, deref_ref, pretty argument; add
	options.
	<la_value_print>: Remove format, pretty arguments; add options.
	<la_print_array_index>: Likewise.
	(LA_VAL_PRINT, LA_VALUE_PRINT, LA_PRINT_STRING,
	LA_PRINT_ARRAY_INDEX): Update.
	(default_print_array_index): Update.
	* language.c (default_print_array_index): Remove format, pretty
	arguments; add options.  Update.
	(unk_lang_printstr): Add options argument.
	(unk_lang_val_print): Remove format, deref_ref, pretty arguments;
	add options.
	(unk_lang_value_print): Remove format, pretty arguments; add
	options.
	* jv-valprint.c (java_value_print): Remove format, pretty
	arguments; add options.  Update.
	(java_print_value_fields): Likewise.
	(java_val_print): Remove format, deref_ref, pretty arguments; add
	options.  Update.
	* jv-lang.h (java_val_print, java_value_print): Declare.
	* infcmd.c: Include valprint.h.
	(print_return_value): Use get_raw_print_options.
	(default_print_registers_info): Use get_user_print_options,
	get_formatted_print_options.
	(registers_info): Use get_formatted_print_options.
	* gdbtypes.h (struct value_print_options): Declare.
	(print_scalar_formatted): Update.
	* f-valprint.c (f77_print_array_1): Remove format, deref_ref,
	pretty arguments; add options.  Update.
	(f77_print_array): Likewise.
	(f_val_print): Likewise.
	* f-lang.h (f_val_print): Update.
	* f-lang.c (f_printstr): Add options argument.  Update.
	(c_value_print): Update declaration.
	* expprint.c: Include valprint.h.
	(print_subexp_standard): Use get_raw_print_options,
	get_user_print_options.
	* eval.c: Include valprint.h.
	(objectprint): Don't declare.
	(evaluate_subexp_standard): Use get_user_print_options.
	* cp-valprint.c (vtblprint, objectprint, static_field_print):
	Remove.
	(cp_print_value_fields): Remove format, pretty arguments; add
	options.  Update.
	(cp_print_value): Likewise.
	(cp_print_static_field): Likewise.
	(_initialize_cp_valprint): Use user_print_options.  Update.
	* c-valprint.c (print_function_pointer_address): Add addressprint
	argument.
	(c_val_print): Remove format, deref_ref, pretty arguments; add
	options.  Update.
	(c_value_print): Add options argument.  Update.
	* c-lang.h (c_val_print, c_value_print, c_printstr): Update.
	(vtblprint, static_field_print): Don't declare.
	(cp_print_value_fields): Update.
	* c-lang.c (c_printstr): Add options argument.  Update.
	* breakpoint.c: Include valprint.h.
	(addressprint): Don't declare.
	(watchpoint_value_print): Use get_user_print_options.
	(print_one_breakpoint_location): Likewise.
	(breakpoint_1, print_it_catch_fork, print_it_catch_vfork, mention,
	print_exception_catchpoint): Likewise.
	* auxv.c (fprint_target_auxv): Don't declare addressprint.  Use
	get_user_print_options.
	* ada-valprint.c (struct ada_val_print_args): Remove format,
	deref_ref, and pretty; add options.
	(print_optional_low_bound): Add options argument.
	(val_print_packed_array_elements): Remove format and pretty
	arguments; add options.  Update.
	(printstr): Add options argument.  Update.
	(ada_printstr): Likewise.
	(ada_val_print): Remove format, deref_ref, pretty arguments; add
	options argument.  Update.
	(ada_val_print_stub): Update.
	(ada_val_print_array): Remove format, deref_ref, pretty arguments;
	add options.  Update.
	(ada_val_print_1): Likewise.
	(print_variant_part): Likewise.
	(ada_value_print): Remove format, pretty arguments; add options.
	Update.
	(print_record): Likewise.
	(print_field_values): Likewise.
	* ada-lang.h (ada_val_print, ada_value_print, ada_printstr):
	Update.
	* ada-lang.c (ada_print_array_index): Add options argument; remove
	format and pretty arguments.
	(print_one_exception): Use get_user_print_options.

2008-10-28  Tom Tromey  <tromey@redhat.com>

	* cli/cli-script.c (do_fclose_cleanup): Remove.
	(script_from_file): Use make_cleanup_fclose.
	* xml-tdesc.c (do_cleanup_fclose): Remove.
	(fetch_xml_from_file): Use make_cleanup_fclose.
	* tracepoint.c (tracepoint_save_command): Use
	make_cleanup_fclose.  Always free pathname.
	* source.c (print_source_lines_base): Use make_cleanup_fclose.
	* remote.c (fclose_cleanup): Remove.
	(remote_file_put): Use make_cleanup_fclose.
	(remote_file_get): Likewise.
	* linux-nat.c (linux_nat_find_memory_regions): Use
	make_cleanup_fclose.
	(linux_nat_info_proc_cmd): Likewise.
	(linux_proc_pending_signals): Likewise.
	* fbsd-nat.c (fbsd_find_memory_regions): Use make_cleanup_fclose.
	Free file name.
	* cli/cli-dump.c (do_fclose_cleanup): Remove.
	(make_cleanup_fclose): Remove.
	* defs.h (make_cleanup_fclose): Declare.
	* utils.c (do_fclose_cleanup): New function.
	(make_cleanup_fclose): Likewise.

2008-10-27  Pedro Alves  <pedro@codesourcery.com>

	* inflow.c (kill_command): If the target claims there is still
	execution, don't clear the thread list.

2008-10-27  Pedro Alves  <pedro@codesourcery.com>

	* cp-name-parser.y: Include defs.h instead of config.h.
	(parse_escape): Rename to ...
	(cp_parse_escape): ... this.
	(yylex): Update.
	(xfree) [TEST_CPNAMES]: New.

2008-10-27  Pedro Alves  <pedro@codesourcery.com>

	* CONTRIBUTE: Mention autoconf 2.59 and configure.ac instead of
	2.13 and configure.in.

2008-10-27  Pedro Alves  <pedro@codesourcery.com>

	* target.h (struct target_ops) <to_supports_multi_process>: New
	field.
	(target_supports_multi_process): New define.
	* target.c (update_current_target): Inherit and de_fault
	to_supports_multi_process.
	* infcmd.c (attach_command): Allow attaching to multiple processes
	if the target supports it.
	(detach_command): If the target claims there is still execution,
	don't clear the thread list.
	* remote.c (remote_supports_multi_process): New.
	(init_remote_ops): Register remote_supports_multi_process.

2008-10-27  Pedro Alves  <pedro@codesourcery.com>

	* Makefile.in (.y.c, .l.c): sed free to xfree.

2008-10-27  Pedro Alves  <pedro@codesourcery.com>

	* Makefile.in (INSTALLED_LIBS, CLIBS): Remove reference to
	$(TM_CLIBS).
	(CDEPS): Remove reference to $(TM_CDEPS).

2008-10-26  Michael Snyder  <msnyder@vmware.com>

	* infrun.c (handle_inferior_event): Handle dynamic symbol
	resolution in reverse.

2008-10-25  Joel Brobecker  <brobecker@adacore.com>

	* infrun.c: Minor comment reformatting.

2008-10-25  Pedro Alves  <pedro@codesourcery.com>

	* ada-exp.y (write_object_renaming): Use malloc instead of
	xmalloc.
	* p-exp.y (pop_current_type): Use free instead of xfree.

2008-10-24  Pedro Alves  <pedro@codesourcery.com>

	* fork-child.c (startup_inferior): Only set threads not-executing
	after getting all the pending execs.  On TARGET_WAITKIND_IGNORE,
	keep waiting, don't resume.  On all other cases but
	TARGET_WAITKIND_SIGNALLED and TARGET_WAITKIND_EXITED, switch to
	the event ptid.

2008-10-24  Pedro Alves  <pedro@codesourcery.com>

	Remote non-stop mode support.

	* remote.c (pending_stop_reply): New.
	(struct remote_state) <non_stop_aware, support_vCont_t>: New
	fields.
	(remote_async_inferior_event_token)
	(remote_async_get_pending_events_token): New.
	(notice_new_inferiors): New, abstracted out from record_currthread.
	(record_currthread): Call it.
	(remote_threads_info): Default threads to running in non-stop
	mode.  In non-stop mode, only qfThreadInfo is supported.
	(remote_close): Discard all pending stop_replies.  Close the event
	sources.
	(set_stop_requested_callback): New.
	(remote_start_remote): Implement non-stop mode startup.  In
	all-stop, don't clear the thread list here.
	(remote_non_stop_feature): New.
	(remote_protocol_features): Add a "QNonStop" feature.
	(remote_open_1): Clear cached_wait_status and non_stop_aware.
	Clear the thread list here.
	(remote_detach_1): Discard pending stop replies of the process we
	detached from.
	(extended_remote_attach_1): Implement non-stop mode.
	(remote_vcont_probe): Recognize `vCont;t'.
	(remote_vcont_resume): Implement non-stop mode.
	(remote_resume): Don't set waiting_for_stop_reply in non-stop
	mode.
	(remote_stop_ns): New.
	(remote_stop): Rename to ...
	(remote_stop_as): ... this.  If we have a cached wait status,
	don't bother interrupting the remote.
	(remote_stop): Reimplement as wrapper around remote_stop_as and
	remote_stop_ns.
	(interrupt_query): Don't query in async mode.
	(struct cached_reg, cahed_reg_t): New.
	(struct stop_reply): New.
	(stop_reply_queue): New.
	(stop_reply_xmalloc, stop_reply_xfree)
	(discard_pending_stop_replies, do_stop_reply_xfree)
	(queued_stop_reply, push_stop_reply, peek_stop_reply)
	(remote_parse_stop_reply, remote_get_pending_stop_replies)
	(process_stop_reply): New.
	(remote_wait_ns): New.
	(remote_wait_as): Use remote_parse_stop_reply.  Invalidate the
	notion of current general thread is a process exit was reported.
	(remote_wait): Call remote_wait_ns in non-stop mode.
	(handle_notification): New.
	(putpkt_binary): Handle notifications.  Don't care for
	waiting_for_stop_reply in non-stop mode.
	(getpkt_sane): Rename to ...
	(getpkt_or_notif_sane_1): ... this.  Add `expecting_notif'
	argument.  Handle it.  Handle notifications.
	(getpkt_sane): Reimplement as wrapper around getpkt_or_notif_sane_1.
	(getpkt_or_notif_sane): New.
	(select_new_thread_callback): Check for exited state instead of
	comparing the ptid against minus_one_ptid.
	(extended_remote_create_inferior_1): Query the remote about the
	current thread.
	(remote_supports_non_stop): New.
	(init_remote_ops): Register it.
	(remote_async_inferior_event_handler): New.
	(remote_async_get_pending_events_handler): New.

	* infcmd.c (proceed_thread_callback): Comment.
	(proceed_after_attach_callback, proceed_after_attach): New.
	(attach_command_post_wait): In background attach, resume all
	threads, but only if they are unsignalled, and not explicitly
	stopped.  In foreground attach, in non-stop mode, make sure to
	stop all threads of the just attached to process.
	(attach_command): In non-stop mode: If doing a background attach,
	stop at least one thread.  If a foreground attach, stop all
	threads.

2008-10-24  Pedro Alves  <pedro@codesourcery.com>

	* event-loop.h: Mention async_event_handlers.
	(async_event_handler): Forward declare.
	(async_event_handler_func): New typedef.
	(create_async_event_handler, delete_async_event_handler)
	(mark_async_event_handler): Declare.
	* event-loop.c (event_data): New.
	(event_handler_func): Take an event_data instead of an integer.
	(struct gdb_event): Replace the integer file descriptor by a
	generic event_data.
	(async_event_handler): New.
	(async_handler_ready): Delete.
	(async_event_handler_list): New.
	(create_event): New.
	(create_file_event): Use it.
	(process_event): Adjust.
	(gdb_do_one_event): Poll from the event sources in round-robin
	fashion across calls.  Be sure to consult all sources before
	blocking.
	(handle_file_event): Take an event_data instead of an integer.
	Adjust.
	(gdb_wait_for_event): Add `block' argument.  Handle it.
	(mark_async_signal_handler): Remove unneeded cast.
	(invoke_async_signal_handler): Rename to ...
	(invoke_async_signal_handlres): ... this.  Return true if any was
	handled.
	(check_async_ready): Delete
	(create_async_event_handler): New.
	(mark_async_event_handler): New.
	(struct async_event_handler_data): New.
	(invoke_async_event_handler): New.
	(check_async_event_handlers): New.
	(delete_async_event_handler): New.
	(handle_timer_event): Adjust.

2008-10-24  Doug Evans  <dje@google.com>

	* dwarf2read.c (typename_concat): Don't segv if prefix or suffix
	is NULL.  Simplify obs == NULL case.

2008-10-24  Hui Zhu  <teawater@gmail.com>
	    Pedro Alves  <pedro@codesourcery.com>

	* infrun.c (can_use_displaced_stepping): Change type to
	const char pointer.
	(can_use_displaced_stepping_auto): New string.
	(can_use_displaced_stepping_on): New string.
	(can_use_displaced_stepping_off): New string.
	(can_use_displaced_stepping_enum): New array.
	(show_can_use_displaced_stepping): In auto mode, also show
	the current effect of the option.
	(use_displaced_stepping): Return non-zero if displaced
	stepping is auto, and can be used with GDBARCH, and in
	non-stop mode.  Return non-zero if displaced stepping is on,
	and can be used with GDBARCH.  Return zero otherwise.
	(_initialize_infrun): Make the "set displaced-stepping"
	command an enum command.  Change its class to class_run.
	Place it in the top level set list.  Extend help to describe
	the auto mode.

2008-10-23  Pedro Alves  <pedro@codesourcery.com>

	* defs.h: Mention ptid_is_pid.
	* inferior.h (ptid_is_pid): Declare.
	* gdbthread.h (struct thread_info) <stop_requested>: New field.
	(set_stop_requested): Declare.
	* infcmd.c (interrupt_target_1): Call set_stop_requested.
	* infrun.c (clear_proceed_status): Clear stop_requested.
	(infrun_thread_stop_requested_callback,
	infrun_thread_stop_requested): New.
	(handle_inferior_event): If a TARGET_SIGNAL_TRAP is reported on a
	thread that had an explicit stop request, pretend we got a
	TARGET_SIGNAL_0.  Always stop if the thread had an explicit stop
	request.
	(print_stop_reason): In the SIGNAL_RECEIVED case, if we're not
	outputting to MI, and we got a TARGET_SIGNAL_0, print "# Stopped",
	instead of mentioning signal 0.
	(ptid_is_pid): New.
	* thread.c (set_stop_requested): New.

	* linux-nat.c (queued_waitpid): Rename to ...
	(queued_waitpid_1): ... this.  Add `peek' argument.  Handle it.
	(queued_waitpid): New, as wrapper to queued_waitpid_1.
	(push_waitpid): Push the SIGTRAP to the local event queue, to the
	kernel's.
	(send_sigint_callback): Delete.
	(linux_nat_stop_lwp): New.
	(linux_nat_stop): Use it.

2008-10-23  Paul Pluzhnikov  <ppluzhnikov@google.com>

	* python/python-value (valpy_getitem): Fix heap corruption.
	
2008-10-23  Aleksandar Ristovski  <aristovski@qnx.com>

	* nto-procfs.c (do_attach): Form proper ptid including pid and tid.
	(procfs_create_inferior): Fetch list of threads.

2008-10-23  Aleksandar Ristovski  <aristovski@qnx.com>

	* nto-procfs.c (procfs_files_info): Fix a typo.
	(procfs_create_inferior): Make attach_flag per-inferior.

2008-10-23  Tom Tromey  <tromey@redhat.com>

	* python/python-value.c (value_to_value_object): Initialize
	owned_by_gdb field.
	(valpy_new): Likewise.
	
2008-10-23  Jan Kratochvil  <jan.kratochvil@redhat.com>
	    Joel Brobecker  <brobecker@adacore.com>

	* ada-tasks.c (task_states, long_task_states): Use constant N_()
	initializer.  Define the strings as const.
	(short_task_info, info_task): Translate the strings above.

2008-10-22  Joel Brobecker  <brobecker@adacore.com>

	* NEWS: Add entry for new feature (Ada tasking support).

2008-10-22  Joel Brobecker  <brobecker@adacore.com>

	* configure.ac: On alpha-osf, error out if enable_tui is set to
	"yes", and set enable_tui to "no" if previously set to "auto".
	Check for waddstr only if TUI support was requested. Move the
	part of the configure script that updates various Makefile
	variables up, together with the check for waddstr.
	* configure: Regenerate.

2008-10-22  Joel brobecker  <brobecker@adacore.com>

	* gdbtypes.c (copy_type): New function.
	* gdbtypes.h (copy_type): Add declaration.
	* ada-lang.c (ada_to_fixed_type_1): If there is a parallel XVZ
	variable, then use it.

2008-10-22  Joel Brobecker  <brobecker@adacore.com>

	* target.h (struct target_ops): Add new field to_get_ada_task_ptid.
	(target_get_ada_task_ptid): New macro.
	* target.c (default_get_ada_task_ptid): New function.
	(update_current_target): Inherit field default_get_ada_task_ptid.
	(update_current_target): Make default_get_ada_task_ptid the default
	value for field to_get_ada_task_ptid.
	* ada-lang.h (struct task_control_block): Delete. Never used.
	(struct task_ptid, task_ptid_t, struct task_entry, task_list):
	Likewise.
	(struct ada_task_info): New.
	(ada_task_is_alive, ada_find_printable_frame)
	(ada_task_list_iterator_ftype, iterate_over_live_ada_tasks): Add
	declarations.
	(ada_build_task_list): Update prototype.
	(init_task_list, ada_is_exception_breakpoint): Remove prototypes.
	* ada-lang.c (ada_find_printable_frame): Make non-static.
	* ada-tasks.c: New file.
	* Makefile.in (SFILES): Add ada-tasks.c.
	(COMMON_OBS): Add ada-tasks.o.
	* linux-thread-db.c (thread_db_find_thread_from_tid)
	(thread_db_get_ada_task_ptid): New functions.
	(init_thread_db_ops): Set thread_db_ops.to_get_ada_task_ptid.

2008-10-22  Tom Tromey  <tromey@redhat.com>

	PR gdb/2506:
	* c-exp.y (string_exp): New production.
	(exp): Use it.

2008-10-21  Jan Kratochvil  <jan.kratochvil@redhat.com>

	* mips-tdep.c (mips_n32n64_fp_arg_chunk_p): Update TYPE_FIELD_STATIC
	removed before.

2008-10-20  Joel Brobecker  <brobecker@adacore.com>

	* NEWS: Add entry mentioning thread-support on Tru64

2008-10-19  Joel Brobecker  <brobecker@adacore.com>

	* dec-thread.c: New file.
	* config/alpha/alpha-osf3.mh (NATDEPFILES): Add dec-thread.o.
	(NAT_CLIBS): Define.

2008-10-19  Hui Zhu  <teawater@gmail.com>

	* infrun.c (handle_inferior_event): Set "stop_pc" when
	TARGET_WAITKIND_NO_HISTORY.

2008-10-19  Pedro Alves  <pedro@codesourcery.com>

	* python/python-value.c (value_object_methods)
	(value_object_as_number, value_object_as_mapping): Move to bottom
	of file.
	(valpy_dealloc, valpy_new, valpy_length, valpy_getitem)
	(valpy_setitem, valpy_str, valpy_add, valpy_subtract)
	(valpy_multiply, valpy_divide, valpy_remainder, valpy_power)
	(valpy_negative, valpy_positive, valpy_absolute, valpy_nonzero)
	(valpy_richcompare, valpy_dereference): Don't forward-declare.
	(valpy_length) [HAVE_LIBPYTHON2_4]: Change return type to `int'.

2008-10-18  Pedro Alves  <pedro@codesourcery.com>

	* infrun.c (adjust_pc_after_break): Do nothing if executing in
	reverse.

2008-10-17  Pedro Alves  <pedro@codesourcery.com>

	* infcmd.c (GO_USAGE): Delete.
	(go_command): Adjust.

2008-10-17  Michael Snyder  <msnyder@vmware.com>
	Target interface for reverse debugging.
	* target.h (enum target_waitkind): 
	Add new wait event, TARGET_WAITKIND_NO_HISTORY.
	(struct target_ops): New method to_can_execute_reverse.
	(target_can_execute_reverse): New macro.
	* target.c (update_current_target): Inherit to_can_execute_reverse.

	Remote interface for reverse debugging.
	* remote.c (remote_can_execute_reverse): New target method.
	(remote_resume): Check for reverse exec direction, and send 
	appropriate command to target.
	(remote_wait_as): Check target response for NO_HISTORY status.
	Also check for empty reply (target doesn't understand "bs" or "bc).
	(remote_vcont_resume): Jump out if attempting reverse execution.

	Event handling interface for reverse debugging.
	* infrun.c (execution_direction): New state variable.
	(enum inferior_stop_reason): Add NO_HISTORY reason.
	(handle_inferior_event): Handle TARGET_WAITKIND_NO_HISTORY.
	Handle stepping over a function call in reverse.
	Handle stepping thru a line range in reverse.
	Handle setting a step-resume breakpoint in reverse.
	Handle stepping into a function in reverse.
	Handle stepping between line ranges in reverse.
	(print_stop_reason): Print reason for NO_HISTORY.
	(step_into_function): Rename to handle_step_into_function.
	(handle_step_into_function_backward): New function.
	(set_exec_direction_func, show_exec_direction_func): New funcs.
	(proceed): No need to singlestep over a breakpoint
	when resuming in reverse.
	
	* inferior.h (enum exec_direction_kind): New enum.
	(execution_direction): Export new execution state variable.

	* breakpoint.c (make_breakpoint_silent): New function.
	* breakpoint.h (make_breakpoint_silent): Export.
	* infcmd.c (finish_command): Check for reverse exec direction.
	(finish_backward): New function, handle finish cmd in reverse.

	User interface for reverse execution.
	* Makefile.in (reverse.c): New file.
	* reverse.c: New file.  User interface for reverse execution.

2008-10-17  Pedro Alves  <pedro@codesourcery.com>

	* remote.c (record_currthread): Add inferior before child threads.
	(remote_threads_info): Check for exited threads.  Mention
	notification order.

2008-10-16  Joel Brobecker  <brobecker@adacore.com>

	* breakpoint.h (enum bptype): New enum bp_catchpoint.
	Delete bp_catch_fork and bp_catch_vfork.
	(struct breakpoint_ops): Add new methods "insert", "remove"
	and "breakpoint_hit".
	* breakpoint.c (create_fork_vfork_event_catchpoint)
	(create_fork_event_catchpoint, create_vfork_event_catchpoint): Remove.
	(insert_catchpoint): Remove handling of bp_catch_fork and
	bp_catch_vfork catchpoints, and handle them as bp_catchpoint
	catchpoints instead.
	(insert_bp_location, update_breakpoints_after_exec)
	(remove_breakpoint, bpstat_check_location, bpstat_what)
	(allocate_bp_location): Likewise.
	(print_it_typical, print_one_breakpoint_location, mention): Remove
	handling of bp_catch_fork and bp_catch_vfork breakpoints.
	(ep_is_catchpoint, user_settable_breakpoint)
	(breakpoint_address_is_meaningful, adjust_breakpoint_address)
	(breakpoint_re_set_one, disable_command, enable_command):
	Remove use of bp_catch_fork and bp_catch_vfork.  Add handling of
	bp_catchpoint breakpoints.
	(insert_catch_fork, remove_catch_fork, breakpoint_hit_catch_fork)
	(print_it_catch_fork, print_one_catch_fork, print_mention_catch_fork):
	New functions.
	(catch_fork_breakpoint_ops): New static constant.
	(insert_catch_vfork, remove_catch_vfork, breakpoint_hit_catch_vfork)
	(print_it_catch_vfork, print_one_catch_vfork)
	(print_mention_catch_vfork): New functions.
	(catch_vfork_breakpoint_ops): New static constant.
	(create_catchpoint, create_fork_vfork_event_catchpoint): New functions.
	(catch_fork_command_1): Use create_fork_vfork_event_catchpoint
	to create the fork and vfork catchpoints.
	(gnu_v3_exception_catchpoint_ops): Set new breakpoint_ops fields.
	* ada-lang.c (catch_exception_breakpoint_ops): Set new breakpoint_ops
	fields.
	(catch_exception_unhandled_breakpoint_ops): Likewise.
	(catch_assert_breakpoint_ops): Likewise.

2008-10-16  Pedro Alves  <pedro@codesourcery.com>

	* remote.c (set_general_process): New.
	(remote_check_symbols): Use it.

2008-10-16  Pedro Alves  <pedro@codesourcery.com>

	* remote.c (push_remote_target): Delete.
	* target.h (push_remote_target): Delete declaration.

2008-10-15  Pedro Alves  <pedro@codesourcery.com>

	* remote.c (remote_close): Unregister remote_desc from the event
	loop.  Always restore the SIGINT handler.  Discard all inferiors
	here.
	(remote_detach_1, remote_disconnect): Don't unregister the file
	descriptor from the event loop here.
	(interrupt_query, readchar, getpkt_sane): Pop the target instead
	of morning the current inferior.
	(remote_kill): Don't unregister the file descriptor from the event
	loop here.
	(remote_mourn_1): Don't discard inferiors here.

2008-10-15  Pedro Alves  <pedro@codesourcery.com>

	* breakpoint.c (breakpoint_init_inferior): Clean up the moribund
	locations list.
	(moribund_breakpoint_here_p): Record the moribund
	location in the moribund_locations vector.
	* breakpoint.h (moribund_breakpoint_here_p): Declare.
	(displaced_step_fixup): Check if the breakpoint the thread was
	trying to step over has been removed since having been placed in
	the displaced stepping queue.
	(adjust_pc_after_break): In non-stop mode, check for a moribund
	breakpoint at the stop pc.
	(handle_inferior_event): Don't retire moribund breakpoints on
	TARGET_WAITKIND_IGNORE.

2008-10-15  Pedro Alves  <pedro@codesourcery.com>

	* infrun.c (displaced_step_prepare): Switch thread temporarily
	while we're here.
	(displaced_step_fixup): Make sure target_resume sees ptid as
	inferior_ptid.  Add debug output.

2008-10-14  Pedro Alves  <pedro@codesourcery.com>

	Remove dead code.

	* breakpoint.c (show_breakpoint_hit_counts): Delete.
	(print_one_breakpoint_location): Adjust.
	(breakpoint_clear_ignore_counts): Delete.
	* breakpoint.h (breakpoint_clear_ignore_counts): Remove
	declaration.
	* target.c (generic_mourn_inferior): Don't clear ignore
	counts (never reached).

2008-10-10  Doug Evans  <dje@google.com>

	* dwarf2read.c (comp_unit_head): Use unsigned int consistently
	for dwarf section offsets and sizes.
	(dwarf2_cu): Ditto.
	(dwarf2_per_cu_data): Ditto.
	(create_all_comp_units): Change offset to unsigned int.
	(load_full_comp_unit,find_partial_die_in_comp_unit,find_partial_die,
	dwarf2_find_containing_comp_unit,dwarf2_find_comp_unit): Ditto.

	* dwarf2read.c (read_initial_length): Delete cu_header arg.
	All callers updated.
	(read_checked_initial_length_and_offset): New function.
	(read_offset_1): New function.
	(read_offset): Call it.
	(dwarf_decode_line_header): Call read_checked_initial_length_and_offset
	instead of read_initial_length.  Call read_offset_1 instead of
	read_offset.

	* dwarf2read.c (dwarf2_get_ref_die_offset): Remove unused arg `cu'.
	All callers updated.

	* dwarf2read.c (dwarf_attr_name): Unconditionally support all
	DW_AT_MIPS_* except DW_AT_MIPS_fde which collides with
	DW_AT_HP_block_index.

2008-10-10  Pedro Alves  <pedro@codesourcery.com>

	* remote.c (remote_start_remote): Always tell the stub if we're in
	extended-remote.

2008-10-09  Pedro Alves  <pedro@codesourcery.com>

	* remote.c (remote_wait): Rename to...
	(remote_wait_as): ... this.  Don't loop here.  If the remote
	didn't stop, return TARGET_WAITKIND_IGNORE.
	(remote_wait): New, reimplemented on top of remote_wait_as.

2008-10-09  Thomas Schwinge  <tschwinge@gnu.org>

	* Makefile.in (gnu-nat.o): Revert the 2008-09-10 change, as the problem
	is fixed upstream.

	* reply_mig_hack.awk: Use the `BAD_TYPECHECK' macro.

	* MAINTAINERS (Write After Approval): Add myself.

2008-10-09  Pedro Alves  <pedro@codesourcery.com>

	Make it compile without warnings.

	* procfs.c (create_procinfo): Initialize `parent'.
	(dead_procinfo): Pass a constant string as format to error.
	(procfs_address_to_host_pointer): Add cast to gdb_type *.
	(procfs_find_LDT_entry): Adjust format string to long int
	ptid.tid.
	(procfs_xfer_partial): Adjust prototype.  Add gdb_byte* cast.
	(procfs_xfer_memory): Adjust prototype.
	(info_mappings_callback, info_proc_mappings): Adjust to not pass a
	variable as printf_filtered format.
	(procfs_make_note_section): Change type of auxv local to gdb_byte.
	* Makefile.in: Remove special rule.

2008-10-09  Pedro Alves  <pedro@codesourcery.com>
	    Daniel Jacobowitz  <dan@codesourcery.com>

	* remote.c (remote_open_1): Move acknowledging any pending ack,
	querying supported features, activating noack mode, finding the
	target description, enabling extended remote, and checking remote
	symbols from here ...
	(remote_start_remote): ... to here.
	(remote_open_1): Don't pop the target if it is already gone.
	* target.c (unpush_target): Check for the dummy target.

2008-10-09  Pedro Alves  <pedro@codesourcery.com>

	* ser-mingw.c: Include "command.h".
	(pipe_windows_open): Declare locals at the beginning of the scope.

2008-10-08  Pedro Alves  <pedro@codesourcery.com>

	* remote.c (struct remote_state) <waiting_for_stop_reply>: New
	field.
	(remote_open_1): Clear waiting_for_stop_reply.
	(remote_resume): Set waiting_for_stop_reply.
	(remote_wait): Clear or set waiting_for_stop_reply accordingly.
	(putpkt_binary): If we're in async mode and waiting for a stop
	reply, bail out with an error.
	(extended_remote_mourn_1): Clear waiting_for_stop_reply.

2008-10-08  Pedro Alves  <pedro@codesourcery.com>

	* remote.c (remote_get_thread_info): If the remote doesn't support
	the query, bail out.

2008-10-08  Jan Kratochvil  <jan.kratochvil@redhat.com>

	Convert static_kind into loc_kind enum.
	* gdbtypes.h (enum field_loc_kind): New.
	(union field_location): New field dwarf_block.
	(struct field): Rename static_kind as loc_kind.
	(FIELD_STATIC_KIND): Rename to ...
	(FIELD_LOC_KIND): ... here.
	(TYPE_FIELD_STATIC_KIND): Rename to ...
	(TYPE_FIELD_LOC_KIND): ... here and use there now new FIELD_LOC_KIND.
	(TYPE_FIELD_STATIC_HAS_ADDR): Remove.
	(TYPE_FIELD_STATIC): Remove.
	(TYPE_FIELD_BITPOS): Reformat.
	(SET_FIELD_BITPOS): New.
	(FIELD_PHYSADDR): Rename to ...
	(FIELD_STATIC_PHYSADDR): ... here.
	(TYPE_FIELD_STATIC_PHYSADDR): Follow the FIELD_PHYSADDR rename.
	(SET_FIELD_PHYSADDR): Use new FIELD_LOC_KIND.
	(FIELD_PHYSNAME): Rename to ...
	(FIELD_STATIC_PHYSNAME): ... here.
	(TYPE_FIELD_STATIC_PHYSNAME): Follow the FIELD_PHYSNAME rename.
	(SET_FIELD_PHYSNAME): Use new FIELD_LOC_KIND.
	(FIELD_DWARF_BLOCK, TYPE_FIELD_DWARF_BLOCK, SET_FIELD_DWARF_BLOCK): New.
	(field_is_static): New declaration.
	* gdbtypes.c (field_is_static): New function.
	(copy_type_recursive): Update throughout.
	* amd64-tdep.c, c-typeprint.c, coffread.c, cp-valprint.c, dwarf2read.c,
	eval.c, jv-typeprint.c, jv-valprint.c, mdebugread.c, p-typeprint.c,
	p-valprint.c, valops.c, value.c, varobj.c: Update throughout.

2008-10-07  Thomas Schwinge  <tschwinge@gnu.org>
	    Pedro Alves  <pedro@codesourcery.com>

	* gnu-nat.h: Rename `current_inferior' to `gnu_current_inf' to
	avoid a name collision.
	* gnu-nat.c: Likewise.
	* i386gnu-nat.c: Likewise.

2008-10-07  Joel Brobecker  <brobecker@adacore.com>

	* ada-lang.c (ada_evaluate_subexp) [OP_ATR_SIZE]: Add handling
	of arguments that are references.

2008-10-06  Doug Evans  <dje@google.com>

	* dwarf2read.c (dwarf2_die_debug): New static global.
	(dump_die_shallow): Renamed from dump_die, New args f, indent.
	Print to specified file, indented by the specified amount.
	(dump_die_for_error): New fn.  Point all existing callers of
	dump_die here.
	(dump_die_die_1,dump_die): New fns, replaces ...
	(dump_die_list): ... deleted.
	(read_die_and_children_1): Old contents of read_die_and_children
	moved here.
	(read_die_and_children): Rewrite.
	(read_die_and_siblings): Call read_die_and_children_1 instead of
	read_die_and_children.
	(_initialize_dwarf2_read): New option "debug dwarf2-die".
	* gdbinit.in (pdie): New macro.

	* dwarf2read.c (offset_in_cu_p): New function.
	(find_partial_die,follow_die_ref): Use it.

	* symmisc.c (maintenance_info_symtabs): Watch for ^c.
	(maintenance_info_psymtabs): Ditto.

2008-10-05  Michael Snyder  <msnyder@vmware.com>

	* infrun.c (handle_inferior_event): Fix typo in comment.

2008-10-04  Vladimir Prus  <vladimir@codesourcery.com>

	* mi/mi-interp.c (mi_on_resume): Flush raw_stdout.

2008-10-03  Paul Pluzhnikov  <ppluzhnikov@google.com>

	PR gdb/2384:
	* gdbtypes.c (get_vptr_fieldno): baseclass and basetype may have
	different lifetimes.
	
2008-10-03  Joel Brobecker  <brobecker@adacore.com>

	* solib-osf.c: Include "solib.h".

2008-10-03  Paul Pluzhnikov  <ppluzhnikov@google.com>
	
	* utils.c, defs.h (gdb_buildargv): New fn. Wrap buildargv
	and check for out-of-memory condition.
	* exec.c (exec_file_command): Call it.
	* infrun.c (handle_command, xdb_handle_command): Likewise.
	* interps.c (interpreter_exec_cmd): Likewise.
	* linux-nat.c (linux_nat_info_proc_cmd): Likewise.
	* procfs.c (info_proc_cmd): Likewise.
	* remote-mips.c (common_open): Likewise.
	* remote-sim.c (gdbsim_kill, gdbsim_create_inferior)
	(gdbsim_open): Likewise.
	* remote.c (extended_remote_run, remote_put_command)
	(remote_get_command, remote_delete_command): Likewise.
	* ser-mingw.c (pipe_windows_open): Likesise.
	* source.c (add_path, show_substitute_path_command)
	(unset_substitute_path_command, set_substitute_path_command):
	Likewise.
	* stack.c (backtrace_command): Likewise.
	* symfile.c (symbol_file_command, generic_load)
	(add_symbol_file_command): Likesise.
	* symmisc.c (maintenance_print_symbols, maintenance_print_psymbols)
	(maintenance_print_msymbols): Likewise.

2008-10-02  Jan Kratochvil  <jan.kratochvil@redhat.com>

	Replace TYPE_ARRAY_{UPPER,LOWER}_BOUND_TYPE by a bit if {un,}defined.
	* c-typeprint.c (c_type_print_varspec_suffix), m2-typeprint.c
	(m2_array), p-typeprint.c (pascal_type_print_varspec_prefix),
	valops.c (value_cast), varobj.c (c_number_of_children): Replace
	TYPE_ARRAY_UPPER_BOUND_TYPE compared to BOUND_CANNOT_BE_DETERMINED by
	TYPE_ARRAY_UPPER_BOUND_IS_UNDEFINED.
	* parse.c (follow_types): Use TYPE_ARRAY_UPPER_BOUND_IS_UNDEFINED.
	* f-valprint.c (f77_get_dynamic_upperbound): Replace with ...
	(f77_get_upperbound): ... this function handling now only
	TYPE_ARRAY_UPPER_BOUND_IS_UNDEFINED.
	(f77_get_dynamic_lowerbound): Replace with ...
	(f77_get_lowerbound): ... this function handling now only
	TYPE_ARRAY_LOWER_BOUND_IS_UNDEFINED.
	(f77_get_dynamic_length_of_aggregate, f77_create_arrayprint_offset_tbl):
	Update their callers.
	* eval.c (evaluate_subexp_standard): Update their callers.
	* f-lang.h (f77_get_dynamic_upperbound, f77_get_upperbound)
	(f77_get_dynamic_lowerbound, f77_get_lowerbound): Update their
	prototypes.
	(BOUND_FETCH_OK, BOUND_FETCH_ERROR): Remove.
	* f-typeprint.c (f_type_print_varspec_suffix, f_type_print_base): Remove
	the lower_bound_was_default variable.  Update the
	f77_get_dynamic_upperbound, f77_get_upperbound and
	TYPE_ARRAY_UPPER_BOUND_TYPE calls.
	* gdbtypes.c (print_bound_type): Remove the function.
	(recursive_dump_type): Remove its calls printing UPPER_BOUND_TYPE and
	LOWER_BOUND_TYPE.
	* gdbtypes.h (enum array_bound_type): Remove.
	(struct main_type): Remove the fields upper_bound_type and
	lower_bound_type.  Comment the new overload of the field artificial.
	(TYPE_ARRAY_UPPER_BOUND_TYPE): Replace by ...
	(TYPE_ARRAY_UPPER_BOUND_IS_UNDEFINED): ... this macro.
	(TYPE_ARRAY_LOWER_BOUND_TYPE): Replace by ...
	(TYPE_ARRAY_LOWER_BOUND_IS_UNDEFINED): ... this macro.

2008-10-02  Tom Tromey  <tromey@redhat.com>

	* Makefile.in (HFILES_NO_SRCDIR): Remove gdb-events.h, gstdint.h.

2008-10-02  Daniel Jacobowitz  <dan@codesourcery.com>

	* mips-linux-tdep.c (mips_linux_in_dynsym_resolve_code): Update
	comments.
	(mips_linux_skip_resolver): Also use glibc_skip_solib_resolver.
	(mips_linux_init_abi): Do not override skip_trampoline_code.
	* configure.tgt (mips*-*-linux*): Add glibc-tdep.o.
	* mips-tdep.c (mips32_scan_prologue): Stop scanning at branches.
	(mips_stub_frame_sniffer): Use the stub frame sniffer for PIC stubs.
	(mips_skip_mips16_trampoline_code): Rename from
	mips_skip_trampoline_code.
	(mips_skip_pic_trampoline_code, mips_skip_trampoline_code): New.
	* infrun.c (handle_inferior_event): Do not pass zero to
	in_solib_dynsym_resolve_code.

2008-10-02  Pierre Muller  <muller@ics.u-strasbg.fr>
	    Pedro Alves  <pedro@codesourcery.com>

	* win32-nat.c (do_initial_win32_stuff): Set inferior_ptid.


2008-10-01  Tom Tromey  <tromey@redhat.com>

	* symtab.c (search_symbols): Update.
	* symtab.h (domain_enum_tag) <METHODS_DOMAIN>: Remove.

2008-10-01  Tom Tromey  <tromey@redhat.com>

	* symfile.c (syms_from_objfile): Update.
	(reread_symbols): Update.
	* objfiles.h (OBJF_SYMS): Remove.
	(OBJF_REORDERED): Renumber.
	(OBJF_SHARED): Likewise.
	(OBJF_READNOW): Likewise.
	(OBJF_USERLOADED): Likewise.

2008-10-01  Tom Tromey  <tromey@redhat.com>

	* symtab.c (find_pc_sect_psymtab): Use MSYMBOL_TYPE.
	(find_pc_sect_symtab): Likewise.
	* symmisc.c (dump_msymbols): Use MSYMBOL_TYPE.
	* solib-som.c (som_solib_desire_dynamic_linker_symbols): Use
	MSYMBOL_TYPE, not SYMBOL_TYPE.
	* parse.c (write_exp_msymbol): Use MSYMBOL_TYPE.
	* objc-lang.c (find_methods): Use MSYMBOL_TYPE.
	* minsyms.c (lookup_minimal_symbol_by_pc_section_1): Use
	MSYMBOL_TYPE.
	* m2-exp.y (yylex): Use SYMBOL_CLASS.

2008-10-01  Tom Tromey  <tromey@redhat.com>

	* xcoffread.c (RECORD_MINIMAL_SYMBOL): Update.
	(scan_xcoff_symtab): Update.
	* mdebugread.c (record_minimal_symbol): Update.
	(parse_partial_symbols): Update.
	* elfread.c (record_minimal_symbol): Update.
	* dbxread.c (record_minimal_symbol): Update.
	* coffread.c (record_minimal_symbol): Update.
	* sh64-tdep.c (MSYMBOL_IS_SPECIAL): Redefine.
	(sh64_elf_make_msymbol_special): Update.
	* mips-tdep.c (mips_elf_make_msymbol_special): Use
	MSYMBOL_TARGET_FLAG_1.
	(mips_elf_make_msymbol_special): Likewise.
	(msymbol_is_special): Likewise.
	* minsyms.c (prim_record_minimal_symbol_and_info): Update.
	(install_minimal_symbols): Likewise.
	(prim_record_minimal_symbol): Update.
	(prim_record_minimal_symbol_and_info): Remove 'info' argument.
	* m68hc11-tdep.c (MSYMBOL_SET_RTC): Redefine.
	(MSYMBOL_SET_RTI): Redefine.
	(MSYMBOL_IS_RTC): Redefine.
	(MSYMBOL_IS_RTI): Redefine.
	* arm-tdep.c (MSYMBOL_SET_SPECIAL): Redefine.
	(MSYMBOL_IS_SPECIAL): Redefine.
	* symtab.h (struct minimal_symbol) <info>: Remove.
	<target_flag_1, target_flag_2>: New fields.
	(MSYMBOL_INFO): Remove.
	(MSYMBOL_TARGET_FLAG_1): New macro.
	(MSYMBOL_TARGET_FLAG_2): Likewise.
	(prim_record_minimal_symbol_and_info): Update.

2008-09-30  Joel Brobecker  <brobecker@adacore.com>

	* ada-lang.c (is_digits_suffix): Delete unused function.

2008-09-30  Paul Hilfinger  <hilfinger@adacore.com>

	* ada-lang.c (ada_modulus): Correct to avoid sign problem with
	moduli >= 2**31.

2008-09-30  Paul Hilfinger  <hilfinger@adacore.com>

	* ada-lang.c (ada_lookup_struct_elt_type): Handle case of a "naked"
	variant branch.
	(empty_record): Use INIT_CPLUS_SPECIFIC, since this field is not
	supposed to be null.  Fixes debugger segfaults.
	(is_unchecked_variant): New function.
	(to_fixed_variant_branch_type): Modify to leave unchecked unions
	untouched.
	(ada_template_to_fixed_record_type_1): Fix comment.

2008-09-30  Joel Brobecker  <brobecker@adacore.com>

	* ada-lang.c (standard_exc): New static constant.
	(ada_exception_catchpoint_cond_string): Add special handling
	for the predefined exceptions.

2008-09-30  Joel Brobecker  <brobecker@adacore.com>

	* ada-lang.c (ADA_RETAIN_DOTS): Delete this dead macro.  Update
	the code accordingly.

2008-09-30  Joel Brobecker  <brobecker@adacore.com>

	* ada-lang.c (ada_evaluate_subexp) [UNOP_IND]: Remove strange
	treatment of expect_type. Return the correct type when dereferencing
	an integer.

2008-09-30  Tom Tromey  <tromey@redhat.com>

	PR gdb/2484:
	* symtab.c (struct add_macro_name_data): New struct.
	(add_macro_name): New function.
	(default_make_symbol_completion_list): Complete macro names.
	* scm-lang.c (scm_language_defn): Update.
	* p-lang.c (pascal_language_defn): Update.
	* objc-lang.c (objc_language_defn): Update.
	* macrotab.h (macro_callback_fn): Add user_data argument.
	(macro_for_each): Likewise.
	(macro_for_each_in_scope): Declare.
	* macrotab.c: (struct macro_for_each_data): New struct.
	(foreach_macro): Use it.
	(macro_for_each): Likewise.
	(foreach_macro_in_scope): New function.
	(macro_for_each_in_scope): Likewise.
	* macrocmd.c (print_one_macro): Add argument.
	(macro_list_command): Pass NULL to macro_for_each.
	* m2-lang.c (m2_language_defn): Update.
	* language.h (struct language_defn) <la_macro_expansion>: New
	field.
	(macro_expansion): New enum.
	* language.c (unknown_language_defn): Update.  Fix order of
	initializers.
	(auto_language_defn): Likewise.
	(local_language_defn): Update.
	* jv-lang.c (java_language_defn): Update.
	* f-lang.c (f_language_defn): Update.
	* c-lang.c (c_language_defn): Update.
	(cplus_language_defn): Likewise.
	(asm_language_defn): Likewise.
	(minimal_language_defn): Likewise.
	* ada-lang.c (ada_language_defn): Update.

2008-09-30  Joel Brobecker  <brobecker@adacore.com>

	* dwarf2read.c (dwarf2_get_subprogram_pc_bounds): New function.
	(get_scope_pc_bounds): Use it.

2008-09-27  Tom Tromey  <tromey@redhat.com>

	* NEWS: Update.
	* macrocmd.c (extract_identifier): Add is_parameter argument.
	(macro_define_command): Update.
	(macro_undef_command): Likewise.
	* macroexp.c (stringify): New function.
	(find_parameter): Likewise.
	(gather_arguments): Add nargs argument.  Handle varargs.
	(substitute_args): Add is_varargs and va_arg_name arguments.
	Handle varargs, splicing, stringification.  Use find_parameter.
	(expand): Handle varargs.

2008-09-27  Tom Tromey  <tromey@redhat.com>

	* scm-lang.c (scm_language_defn): Update.
	* p-typeprint.c (pascal_print_typedef): New function.
	* p-lang.h: (pascal_print_typedef): Declare.
	* p-lang.c (pascal_language_defn): Update.
	* objc-lang.c (objc_language_defn): Update.
	* m2-typeprint.c (m2_print_typedef): New function.
	* m2-lang.h (m2_print_typedef): Declare.
	* m2-lang.c (m2_language_defn): Update.
	* language.h (_LANG_c, _LANG_m2, _LANG_fortran, _LANG_pascal):
	Remove.
	(struct language_defn) <la_print_typedef>: New field.
	(default_print_typedef): Declare.
	(LA_PRINT_TYPEDEF): New define.
	* language.c (unknown_language_defn): Update.
	(auto_language_defn): Update.
	(local_language_defn): Update.
	* jv-lang.c (java_language_defn): Update.
	* f-lang.c (f_language_defn): Update.
	* c-typeprint.c (c_print_typedef): New function.
	* c-lang.h (c_print_typedef): Declare.
	* c-lang.c (c_language_defn): Update.
	(cplus_language_defn): Update.
	(asm_language_defn): Update.
	(minimal_language_defn): Update.
	* ada-lang.c (ada_language_defn): Update.
	* typeprint.c (default_print_typedef): New function.

2008-09-27  Tom Tromey  <tromey@redhat.com>

	* jv-exp.y (insert_exp): Define using ISO syntax.
	(copy_exp): Likewise.
	(push_expression_name): Likewise.
	(push_fieldnames): Likewise.
	(java_type_from_name): Likewise.
	(yyerror): Likewise.
	(yylex): Likewise.
	(parse_number): Likewise.

2008-09-26  Joel Brobecker  <brobecker@adacore.com>

	* MAINTAINERS (GLOBAL MAINTAINERS): Add Pedro Alves.

2008-09-25  Stephan Springl  <springl-gdb@bfw-online.de> (tiny change)

	* stack.c (print_frame_args): Fix typos in comments.

2008-09-25  Sérgio Durigan Júnior  <sergiodj@linux.vnet.ibm.com>

	* linux-nat.c (get_pending_status): Fix argument to WIFSTOPPED.

2008-09-24  Vladimir Prus  <vladimir@codesourcery.com>

	* remote-sim.c (gdbsim_create_inferior): Fix missing parenthesis.
	
2008-09-24  Andreas Schwab  <schwab@suse.de>

	* frame.c (get_frame_register_bytes): Take pseudo registers into
	account.  Avoid excessive function calls.

2008-09-23  Doug Evans  <dje@google.com>

	* dcache.c (state_chars): New static global.
	(ENTRY_INVALID,ENTRY_VALID): Renamed from ENTRY_BAD,ENTRY_OK.
	All uses updated.
	(dcache_info): Print cache state as mnemonically useful letters instead
	of magic numbers.

	* dwarf2read.c (comp_unit_head): Reorganize for better packing.

2008-09-22  Tom Tromey  <tromey@redhat.com>

	* symfile.c (symbol_file_add_with_addrs_or_offsets): Don't use
	printf_filtered.

2008-09-22  Pedro Alves  <pedro@codesourcery.com>

	* infrun.c (follow_exec): Don't do a generic mourn.  Instead
	inline the required bits.
	* breakpoint.h (enum inf_context): Add inf_execd.

2008-09-22  Pedro Alves  <pedro@codesourcery.com>

	* infrun.c (handle_inferior_event): In the follow exec case,
	context-switch before doing anything else.

2008-09-22  Pedro Alves  <pedro@codesourcery.com>

	* top.c (any_thread_of, kill_or_detach): New functions.
	(quit_target): Iterate over all inferiors, killing or detaching
	accordingly.

2008-09-22  Pedro Alves  <pedro@codesourcery.com>

	Remove the attach_flag global, and make it per-inferior.

	* inferior.h (attach_flag): Delete.
	(inferior_process): Declare.
	* solib.c (update_solib_list): Adjust.
	* gnu-nat.c (gnu_create_inferior, gnu_attach): Adjust.
	* inf-ptrace.c (inf_ptrace_detach): Adjust.
	(inf_ptrace_files_info): Get it from the current inferior.
	* inf-ttrace.c (inf_ttrace_attach): Adjust.
	(inf_ttrace_files_info): Get it from the current
	inferior.
	* inflow.c (terminal_inferior, terminal_ours_1, set_sigint_trap)
	(clear_sigint_trap): Get it from the current process.
	* remote.c (extended_remote_attach_1)
	(extended_remote_create_inferior_1): Adjust.
	* top.c (quit_confirm, quit_target): Get it from the current inferior.
	* procfs.c (do_detach): Adjust.
	(procfs_wait): Get it from the event inferior.
	(procfs_files_info): Get it from the current inferior.
	* nto-procfs.c (procfs_files_info): Likewise.
	(procfs_attach): Adjust.  Set the attach_flag here.
	(do_attach): Don't set it here.
	(procfs_detach): Don't clear it.
	(procfs_mourn_inferior): Don't clear it.
	* solib-osf.c (osf_solib_create_inferior_hook): Adjust.
	* target.c (attach_flag): Delete.
	(generic_mourn_inferior): Don't clear it.
	* win32-nat.c (get_win32_debug_event): Get it from the event
	process.
	(do_initial_win32_stuff): Add attaching argument.  Set attach_flag
	in the inferior accordingly.
	(win32_attach): Don't set the attach_flag here.  Pass 1 to
	do_intial_win32_stuff.
	(win32_files_info): Get it from the current inferior.
	(win32_create_inferior): Dont clear attach_flag here.  Pass 0 to
	do_intial_win32_stuff.

2008-09-22  Pedro Alves  <pedro@codesourcery.com>

	Make the stop_soon global be per-inferior instead.

	* infcmd.c (attach_command_post_wait): Adjust.
	(attach_command): Likewise.

	* inferior.h (stop_soon): Delete.
	(struct inferior): Add stop_soon member.

	* infrun.c (stop_soon): Delete.
	(clear_proceed_status, start_remote)
	(fetch_inferior_event, handle_inferior_event): Adjust.
	(signal_stop_state): Don't check stop_soon here.  Check in callers
	instead.
	(save_inferior_status, restore_inferior_status): Adjust.

	* linux-nat.c (linux_nat_resume, linux_nat_wait): Always pass
	signals to common code if starting up the inferior.
	
	* inferior.h (struct inferior_info): Added stop_soon member.
	* inferior.c (add_inferior) Clear stop_soon.

	* mips-tdep.c (heuristic_proc_start): Adjust.
	* nto-procfs.c (procfs_create_inferior): Adjust.
	* solib-irix.c (irix_solib_create_inferior_hook): Adjust.
	* solib-osf.c (osf_solib_create_inferior_hook): Adjust.
	* solib-sunos.c (sunos_solib_create_inferior_hook): Adjust.
	* solib-svr4.c (svr4_solib_create_inferior_hook): Adjust.

	* win32-nat.c (do_initial_win32_stuff): Adjust.

	* alpha-tdep.c (alpha_heuristic_proc_start): Adjust.

2008-09-22  Pedro Alves  <pedro@codesourcery.com>

	Implement remote multi-process extensions.

	* remote.c (struct remote_state): Add extended and
	multi_process_aware fields.
	(remote_multi_process_p): New.
	(PACKET_vKill): New.
	(record_currthread): Use thread_change_ptid.  Notice new
	inferiors.
	(set_thread, remote_thread_alive): Use write_ptid.
	(write_ptid, read_ptid): New.
	(remote_current_thread, remote_threads_extra_info): Use them.
	(remote_threads_info): Likewise.  Detect new inferiors.
	(remote_start_remote): Add inferior to inferior list.
	(remote_multi_process_feature): New.
	(remote_protocol_features): Add "multiprocess" feature.
	(remote_query_supported): Pass "multiprocess+" as supported
	features.
	(remote_open_1): Clear multi_process_aware.  Set extended
	accordingly.
	(remote_detach_1): Detach current process.  Use extended packet
	format for extended-remote multi-process.  Detach process from the
	inferior list.  Only mourn after printing output.
	(extended_remote_attach_1): Add process to the inferior list.
	(remote_vcont_resume): Use write_ptid to pass the thread ids.
	(remote_wait): Use read_ptid.  Implement the extended
	multi-process extension format of the 'W' and 'X' reply packets.
	Remove exited inferiors from inferior list.
	(remote_xfer_memory): Set general thread.
	(remote_vkill): New.
	(extended_remote_kill): New.
	(remote_mourn_1): Discard all inferiors.
	(select_new_thread_callback): New.
	(extended_remote_mourn_1): If there are more processes to debug,
	switch to a thread in another process, and don't pop the target.
	(extended_remote_create_inferior_1): Add the new process to the
	inferior list.
	(remote_stopped_by_watchpoint): Indenting.
	(remote_xfer_partial): Set the general thread.
	(remote_pid_to_str): If the remote is multi-process aware, print
	the process id as well as the thread id.
	(remote_get_thread_local_address): Use write_ptid.
	(init_extended_remote_ops): Register extended_remote_kill.
	(_initialize_remote): Register new packets.  Change
	magic_null_ptid's, not_sent_ptid's and any_thread_ptid's pid
	member to 42000.

	* thread.c (thread_change_ptid): Also account for the inferior pid
	changing.

	* inferior.h (discard_all_inferiors): Declare.
	* inferior.c (discard_all_inferiors): New.

2008-09-22  Pedro Alves  <pedro@codesourcery.com>

	* gnu-nat.c (gnu_attach): Add process to inferiors table.
	(gnu_detach): Remove it.
	* go32-nat.c (go32_create_inferior): Add process to gdb's inferior
	table.
	* inf-ptrace.c (inf_ptrace_follow_fork): Delete and add inferiors
	to inferior table accordingly.
	(inf_ptrace_attach): Add new process to inferior table.
	(inf_ptrace_detach): Remove it.
	* inf-ttrace.c (inf_ttrace_follow_fork): Delete and add inferiors
	to inferior table accordingly.
	(inf_ttrace_attach): Add process to inferior table.
	(inf_ttrace_detach): Remove it.
	* linux-fork.c (init_fork_list): Delete any left over inferior.
	(linux_fork_mourn_inferior, detach_fork_command): Also delete
	processes from inferior list.
	* monitor.c (monitor_open): Add process to inferior list.
	(monitor_close): Remove it.
	* nto-procfs.c (procfs_attach): Add process to inferior list.
	Find threads after pushing the target.
	(procfs_detach): Remove process from inferior list.
	(procfs_create_inferior): Add process to inferior list.
	* procfs.c (procfs_detach): Remove process from inferior list.
	(do_attach): Add process to inferior list.
	* remote-sim.c (sim_create_inferior): Add process to inferior list.
	(gdbsim_close): Remove it.
	* target.c (generic_mourn_inferior): If inferior_ptid is not
	null_ptid, remove the corresponding inferior from inferior list.
	* win32-nat.c (do_initial_win32_stuff): Add process to inferior list.
	(win32_detach): Remove it.
	* linux-nat.c (linux_child_follow_fork): Delete and add inferiors
	to inferior list accordingly.
	* fork-child.c (fork_inferior): Add process to inferior list.
	* corelow.c (CORELOW_PID): Define.
	(core_close): Remove core from inferior list.
	(core_open): Add it.

2008-09-22  Pedro Alves  <pedro@codesourcery.com>

	* inferior.h: Forward declare struct ui_out.
	Forward declare struct private_inferior.
	(struct inferior): New.
	(init_inferior_list, add_inferior, add_inferior_silent)
	(delete_inferior, delete_inferior_silent, detach_inferior)
	(gdb_inferior_id_to_pid, pid_to_gdb_inferior_id, in_inferior_list)
	(valid_inferior_id, find_inferior_pid): New functions.
	(inferior_callback_func): New typedef.
	(iterate_over_inferiors, print_inferior, have_inferiors)
	(current_inferior): New functions.
	* inferior.c: New file.

	* Makefile.in (SFILES): Add inferior.c.
	(COMMON_OBS): Add inferior.o.

2008-09-22  Jonathan Larmour  <jifl@eCosCentric.com>

	* arm-tdep.c (arm_skip_prologue): Call skip_prologue_using_sal
	instead of determining symbol and line info directly.
	* MAINTAINERS: Update my email address.

2008-09-22  Daniel Jacobowitz  <dan@codesourcery.com>

	* symtab.c (skip_prologue_using_sal): Treat two consecutive lines
	at the same address as a prologue marker.  Do not skip an entire
	function.

2008-09-22  Andrew Stubbs  <ams@codesourcery.com>

	* frame.c (get_frame_register_bytes): Comment improvments.

2008-09-22  Pedro Alves  <pedro@codesourcery.com>

	* linux-nat.c (linux_nat_wait): Only use set_ignore_sigint in
	all-stop mode.

2008-09-19  Andrew Stubbs  <ams@codesourcery.com>

	* MAINTAINERS: Update my email address.

2008-09-19  Andrew Stubbs  <ams@codesourcery.com>

	* frame.c (get_frame_register_bytes): Detect bad debug info.

2008-09-17  Jan Kratochvil  <jan.kratochvil@redhat.com>

	Fix a crash on uninitialized ECS->EVENT_THREAD for a newly found thread.
	* infrun.c (wait_for_inferior): Move this ECS->EVENT_THREAD
	initialization ...
	(fetch_inferior_event): ... and this ECS->EVENT_THREAD initialization
	...
	(handle_inferior_event): ... here after the add_thread call together
	with the local adjust_pc_after_break and reinit_frame_cache calls.

2008-09-16  David Daney  <ddaney@avtrex.com>

	* breakpoint.c (bpstat_stop_status): Clear breakpoint_at for
	all hardware bpstats.

2008-09-16  Joel Brobecker  <brobecker@adacore.com>

	* gstdint.h: Delete.

2008-09-15  Mark Kettenis  <kettenis@gnu.org>

	* infcall.c (generic_push_dummy_code): Remove.
	(push_dummy_code): Unconditionally call gdbarch_push_dummy_code.

2008-09-15  Doug Evans  <dje@google.com>

	* dwarf2read.c (struct abbrev_info): Make members name, form 16 bits.
	(struct attribute): Ditto.

2008-09-14  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>

	* hppa-linux-tdep.c (hppa_linux_sigtramp_frame_unwind_cache): Record
	HPPA_IPSW_REGNUM and HPPA_SAR_REGNUM values.

	* hppa-linux-tdep.c (hppa_dwarf_reg_to_regnum): Remove surrounding
	"#if 0" "#endif".  Fix mapping of DWARF DBX registers to GDB registers.
	Correct arguments and improve comments.
	(hppa_linux_init_abi): Call set_gdbarch_dwarf2_reg_to_regnum.  Delete
	disabled code.
	* hppa-tdep.c (hppa64_dwarf_reg_to_regnum): Fix check for floating
	point DBX register, change error to warning, and improve comments.

2008-09-14  Doug Evans  <dje@google.com>

	* dwarf2read.c (struct die_info): Make members tag, num_attrs 16 bits.

2008-09-14  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>

	* hppa-linux-tdep.c (hppa_linux_supply_fpregset): Correct iteration.

2008-09-13  Joel Brobecker  <brobecker@adacore.com>

	* defs.h (GCC_GENERATED_STDINT_H): Define.

2008-09-13  Tom Tromey  <tromey@redhat.com>

	* varobj.c (varobj_set_display_format): Use xfree.
	* tracepoint.c (stringify_collection_list): Use xfree.
	* remote-fileio.c (remote_fileio_reset): Use xfree.
	* mipsread.c (read_alphacoff_dynamic_symtab): Use xfree.
	* dfp.c (decimal_from_floating): Use xfree, xstrprintf.  Don't use
	asprintf.
	* cp-support.c (mangled_name_to_comp): Use xfree.

2008-09-13  Joel Brobecker  <brobecker@adacore.com>

	* ada-lang.c (remove_extra_symbols): Remove stub symbols if
	the associated complete symbol is also in the list.
	(ada_add_local_symbols, ada_add_non_local_symbols): New functions,
	extracted out from ada_lookup_symbol_list.
	(ada_lookup_symbol_list): Use them.  Remove the search through
	the minimal symbols.

2008-09-13  Joel Brobecker  <brobecker@adacore.com>

        * dwarf2read.c (add_partial_subprogram): New procedure.
        (scan_partial_symbols): Use it.
        (load_partial_dies): Read in children of subprogram and lexical
        blocks for Ada compilation units.

2008-09-13  Tom Tromey  <tromey@redhat.com>

	* symfile.c (build_id_verify): Free 'found'.
	(find_separate_debug_file): Use xfree, not free.

2008-09-12  Doug Evans  <dje@google.com>

	* corefile.c (write_memory): Remove unnecessary copying.

	* sol-thread.c (_initialize_sol_thread): Add FIXME regarding
	order of _initialize_* fns.

	* dwarf2read.c (comp_unit_head): Rename first_die_ptr to
	first_die_offset.  All uses updated.
	Delete unused members cu_head_ptr, next.
	Move members base_known, base_address to ...
	(dwarf2_cu) ... here.  All uses updated.

2008-09-12  Pedro Alves  <pedro@codesourcery.com>

	* Makefile.in (generated_files): Add $(NAT_GENERATED_FILES).
	* config/i386/i386gnu.mh (NAT_GENERATED_FILES): New.

2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>

	* fork-child.c (startup_inferior): Use target_wait and target_resume
	directly instead of calling wait_for_inferior / resume.

	* infcmd.c (kill_if_already_running): Do not call no_shared_libraries
	or init_wait_for_inferior.
	(run_command_1): Call init_wait_for_inferior.

2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>

	* gdbtypes.h (builtin_type_void_data_ptr, builtin_type_void_func_ptr,
	builtin_type_CORE_ADDR, builtin_type_char, builtin_type_short,
	builtin_type_int, builtin_type_long, builtin_type_signed_char,
	builtin_type_unsigned_char, builtin_type_unsigned_short,
	builtin_type_unsigned_int, builtin_type_unsigned_long,
	builtin_type_float, builtin_type_double, builtin_type_long_double,
	builtin_type_complex, builtin_type_double_complex, builtin_type_string,
	builtin_type_bool, builtin_type_long_long,
	builtin_type_unsigned_long_long): Remove macros.

	(builtin_type_f_character, builtin_type_f_integer,
	builtin_type_f_integer_s2, builtin_type_f_logical,
	builtin_type_f_logical_s1, builtin_type_f_logical_s2,
	builtin_type_f_real, builtin_type_f_real_s8, builtin_type_f_real_s16,
	builtin_type_f_complex_s8, builtin_type_f_complex_s16,
	builtin_type_f_complex_s32): Likewise.

	(builtin_type_m2_char, builtin_type_m2_int, builtin_type_m2_card,
	builtin_type_m2_real, builtin_type_m2_bool): Likewise.

	(struct builtin_f_type, builtin_f_type): Move to f-lang.h.
	(struct builtin_m2_type, builtin_m2_type): Move to m2-lang.h.

	* f-lang.h (struct builtin_f_type, builtin_f_type): Move here.
	* m2-lang.h (struct builtin_m2_type, builtin_m2_type): Move here.

2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>

	* solib-svr4.c (LM_ADDR_FROM_LINK_MAP): Use builtin types of
	target_gdbarch instead of builtin_type_void_data_ptr.
	(LM_DYNAMIC_FROM_LINK_MAP, LM_NEXT, LM_NAME,
	IGNORE_FIRST_LINK_MAP_ENTRY, scan_dyntag, elf_locate_base,
	solib_svr4_r_map, solib_svr4_r_brk, solib_svr4_r_ldsomap,
	open_symbol_file_object): Likewise.
	* nto-tdep.c (LM_ADDR): Likewise.

2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>

	* bsd-uthread.c (bsd_uthread_read_memory_address): New function.
	(bsd_uthread_fetch_registers, bsd_uthread_store_registers,
	bsd_uthread_wait, bsd_uthread_find_new_threads): Use it.

2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>

	* procfs.c (procfs_address_to_host_pointer): Use target_gdbarch
	and its associated types to perform pointer conversion.
	(procfs_can_use_hw_breakpoint): Likewise.
	(procfs_auxv_parse): Remove unused variable.

2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>

	* auxv.c (default_auxv_parse): Use gdbarch_ptr_bit (target_gdbarch)
	instead of builtin_type_void_data_ptr.
	* target.c (default_region_ok_for_hw_watchpoint): Likewise.

2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>

	* expprint.c (print_subexp_standard): Compare against builtin type
	associated with exp->gdbarch instead of builtin_type_char.

	* f-valprint.c (f_val_print): Use extract_unsigned_integer to
	extract values of arbitrary logical type.  Handle arbitrary
	complex types.

	* printcmd.c (float_type_from_length): New function.
	(print_scalar_formatted, printf_command): Use it.

2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>

	* valops.c: Include "objfiles.h" and "symtab.h".
	(find_function_in_inferior): New argument OBJF_P.  Use it to return
	objfile where function is defined.  Use per-objfile arch types
	instead of builtin_type_ to define default return type.

	* linux-fork.c (checkpoint_command): Update calls.  Use per-objfile
	architecture to define inferior call argument types.
	* gcore.c (derive_heap_segment): Likewise.
	* objc-lang.c (value_nsstring): Likewise.
	* scm-lang.c (scm_lookup_name): Likewise.
	* scm-valprint.c (scm_inferior_print): Likewise.
	* valops.c (value_allocate_space_in_inferior): Likewise.

	* eval.c (evaluate_subexp_standard): Update calls.
	* objc-lang.c (lookup_objc_class, print_object_command): Likewise.

	* linux-fork.c: Include "objfiles.h".
	* scm-lang.c: Include "objfiles.h".
	* scm-valprint.c: Include "objfiles.h".

2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>

	* gdbarch.sh (name_of_malloc): Remove.
	* gdbarch.c, gdbarch.h: Re-generate.
	* valops.c (value_allocate_space_in_inferior): Do not call
	gdbarch_name_of_malloc.

2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>

	* valarith.c (value_x_unop): Use builtin_type_int8 as type for
	UNOP_POSTINCREMENT/UNOP_POSTDECREMENT constant 0 argument.
	(value_bit_index): Use extract_unsigned_integer
	instead of unpack_long to read single byte.

2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>

	* infcall.c (value_arg_coerce): Add GDBARCH parameter.  Use its
	associates types instead of builtin_type_ macros.
	(find_function_addr): Leave output VALUE_TYPE NULL if unknown.
	(call_function_by_hand): Use per-architecture "int" type as
	fall-back if find_function_addr returns NULL VALUE_TYPE.
	Update call to value_arg_coerce.

2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>

	* cp-abi.h (cplus_method_ptr_size): Add TO_TYPE parameter.
	(cplus_make_method_ptr): Add TYPE parameter.
	* cp-abi.c (cplus_method_ptr_size): Add TO_TYPE parameter.  Pass it
	on to current_cp_abi.method_ptr_size callback.
	(cplus_make_method_ptr): Add TYPE parameter.  Pass it on to
	current_cp_abi.make_method_ptr callback.

	* gdbtypes.c (lookup_methodptr_type): Pass target type
	argument to cplus_method_ptr_size.
	* valops.c (value_cast): Pass type argument to cplus_make_method_ptr.
	(value_struct_elt_for_reference): Likewise.

	* gnu-v3-abi.c (get_class_arch): New function.
	(vtable_address_point_offset): Add GDBARCH parameter.  Use it
	instead of current_gdbarch.  Update all callers.
	(gnuv3_get_vtable): Likewise.
	(gnuv3_get_virtual_fn): Likewise.
	(gnuv3_decode_method_ptr): Likewise.
	(gnuv3_rtti_type): Call get_class_arch to determine architecture.
	Use it instead of current_gdbarch.
	(gnuv3_virtual_fn_field): Likewise.
	(gnuv3_baseclass_offset): Likewise.
	(gnuv3_print_method_ptr): Likewise.
	(gnuv3_method_ptr_to_value): Likewise.
	(gnuv3_method_ptr_size): Add TYPE parameter.  Use it to determine
	class architecture.  Use architecture types instead of builtin types.
	(gnuv3_make_method_ptr): Likewise.

	* cp-valprint.c (cp_print_class_member): Expect pointer type
	instead of class type.  Use its length when extracting value.
	* c-valprint.c (c_val_print): Update call to cp_print_class_member.

2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>

	* stack.c (return_command): Use frame architecture to determine
	default integer return type.

	* f-valprint.c (f77_get_dynamic_lowerbound): Use frame architecture
	to determine pointer types.
	(f77_get_dynamic_upperbound): Likewise.

	* objc-lang.c (OBJC_FETCH_POINTER_ARGUMENT): Remove.
	(resolve_msgsend): Use architecture of current frame to determine
	pointer types.  Inline OBJC_FETCH_POINTER_ARGUMENT.
	(resolve_msgsend_stret, resolve_msgsend_super,
	resolve_msgsend_super_stret): Likewise.

2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>

	* alpha-tdep.c (alpha_register_type): Use builtin_type (gdbarch)
	instead of builtin_type_ macros.
	* amd64-tdep.c (amd64_register_type): Likewise.
	(amd64_get_longjmp_target): Likewise.
	* arm-tdep.c (arm_register_type): Likewise.
	* avr-tdep.c (avr_register_type): Likewise.
	* cris-tdep.c (cris_register_type, crisv32_register_type): Likewise.
	* frv-tdep.c (frv_register_type): Likewise.
	* h8300-tdep.c (h8300_register_type): Likewise.
	* hppa-tdep.c (hppa32_convert_from_func_ptr_addr, 
	hppa_skip_trampoline_code): Likewise.
	* i386-tdep.c (i386_register_type): Likewise.
	(i386_unwind_pc, i386_sse_type): Likewise.
	* ia64-tdep.c (ia64_register_type): Likewise.
	* m32r-tdep.c (m32r_register_type): Likewise.
	* m68k-tdep.c (m68k_register_type, m68k_unwind_pc): Likewise.
	* m88k-tdep.c (m88k_register_type): Likewise.
	* mep-tdep.c (mep_register_type): Likewise.
	* mips-tdep.c (mips_pseudo_register_type): Likewise.
	* mn10300-tdep.c (mn10300_register_type): Likewise.
	* mt-tdep.c (mt_copro_register_type): Likewise.
	* rs6000-tdep.c (rs6000_builtin_type_vec64): Likewise.
	(rs6000_convert_register_p, rs6000_register_to_value,
	rs6000_value_to_register): Likewise.
	* s390-tdep.c (s390_register_type): Likewise.
	* sh64-tdep.c (sh64_register_type): Likewise.
	(sh64_build_float_register_type, sh64_do_fp_register): Likewise.
	* sh-tdep.c (sh_sh2a_register_type, sh_sh3e_register_type,
	sh_sh4_build_float_register_type, sh_sh4_register_type,
	sh_default_register_type): Likewise.
	* sparc64-tdep.c (sparc64_register_type): Likewise.
	* sparc-tdep.c (sparc32_register_type): Likewise.
	* spu-tdep.c (spu_builtin_type_vec128, spu_register_type): Likewise.
	* v850-tdep.c (v850_register_type): Likewise.
	* vax-tdep.c (vax_register_type): Likewise.
	* xtensa-tdep.c (xtensa_register_type, xtensa_unwind_pc,
	xtensa_push_dummy_call): Likewise.

	* std-regs.c (value_of_builtin_frame_fp_reg,
	value_of_builtin_frame_pc_reg): Likewise.
	* target-descriptions.c (tdesc_register_type): Likewise.

2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>

	* ada-lang.c (ada_coerce_to_simple_array_type): Use builtin_type_int32
	instead of builtin_type_int as default unspecified integral type.
	(ada_index_type, ada_array_bound_from_type, ada_variant_discrim_type,
	assign_component, to_fixed_range_type): Likewise.
	* ada-typeprint.c (print_range, print_range_bound,
	print_range_type_named): Likewise.
	* ada-valprint.c (print_optional_low_bound, ada_val_print_1): Likewise.
	* eval.c (evaluate_subexp_standard): Likewise.
	* gnu-v2-abi.c (gnuv2_virtual_fn_field): Likewise.
	* gnu-v3-abi.c (gnuv3_get_virtual_fn, gnuv3_baseclass_offset,
	build_gdb_vtable_type): Likewise.
	* jv-lang.c (java_array_type): Likewise.
	* m2-typeprint.c (m2_print_bounds, m2_is_long_set_of_type): Likewise.
	* m2-valprint.c (m2_print_long_set): Likewise.
	* parse.c (follow_types): Likewise.
	* p-typeprint.c (pascal_type_print_base): Likewise.
	* valops.c (value_one, value_array, value_string,
	value_bitstring): Likewise.
	* value.c (allocate_repeat_value, value_from_string): Likewise.
	* varobj.c (c_describe_child): Likewise.
	* mt-tdep.c (mt_register_type): Likewise.
	* sh-tdep.c (sh_sh4_build_float_register_type): Likewise.
	* sh64-tdep.c (sh64_build_float_register_type): Likewise.

2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>

	* defs.h (struct gdbarch): Add forward declaration.
	(set_next_address): Add GDBARCH argument.
	* printcmd.c (set_next_address): Use it to find pointer type.
	* breakpoint.c (breakpoint_1): Update call.
	* source.c (line_info): Likewise.
	* findcmd.c (find_command): Use current_gdbarch to find pointer type.

	* breakpoint.c (set_breakpoint_count): Use platform-neutral
	types for internal variable values.
	* infrun.c (handle_inferior_event): Likewise.
	* source.c (forward_search_command, reverse_search_command): Likewise.
	* tracepoint.c (set_tracepoint_count, set_traceframe_num,
	set_tracepoint_num, set_traceframe_context): Likewise.

2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>

	* gdbtypes.h (struct builtin_type): Remove builtin_true_char
	and builtin_true_unsigned_char.
	(builtin_type_true_char): Remove macro, add extern declaration.
	(builtin_type_true_unsigned_char): Add extern declaration.
	* gdbtypes.c (builtin_type_true_char): New global variable.
	(builtin_type_true_unsigned_char): Likewise.
	(_initialize_gdbtypes): Initialize them.
	(gdbtypes_post_init): Do not initialize builtin_true_char
	and builtin_true_unsigned_char members of struct builtin_type.

	* printcmd.c (print_scalar_formatted): Do not use builtin_type;
	use builtin_type_true_unsigned_char instead.

	* ada-valprint.c (ada_val_print_1): Use builtin_type_true_char
	instead of builtin_type_char for internal string.

2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>

	* gdbtypes.h (builtin_type_void): Remove macro, add declaration.
	(builtin_type_f_void): Remove macro.
	* gdbtypes.c (builtin_type_void): New global variable.
	(_initialize_gdbtypes): Initialize it.

	* gnu-v3-abi.c (build_gdb_vtable_type): Do not call
	lookup_pointer_type or lookup_function_type on builtin_type_void.
	* printcmd.c (set_next_address): Likewise.
	* objc-lang.c (value_nsstring): Likewise.
	* mt-tdep.c (mt_copro_register_type): Likewise.
	* xtensa-tdep.c (xtensa_register_type): Likewise.

	* symfile.c (syms_from_objfile): Remove special handling
	of builtin_type_void and builtin_type_char.

2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>

	* eval.c (evaluate_subexp_standard): Use exp->gdbarch types instead
	of builtin_type_ macros when handling OP_OBJC_ operations.
	* objc-lang.c (print_object_command): Likewise.

2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>

	* ada-valprint.c: Include "objfiles.h".
	(ada_val_print_1): Use the gdbarch associated with the objfile whether
	a System.Address type is defined to retrieve the proper pointer type
	to use to print it.

2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>

	* ada-lang.c (value_pos_atr): Add TYPE argument.  Use it as
	result type instead of builtin_type_int.
	(value_subscript_packed): Use pos_atr instead of value_pos_atr.
	(ada_value_subscript): Update call to value_pos_atr.
	(ada_value_ptr_subscript): Likewise.
	(ada_evaluate_subexp): Likewise.

2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>

	* ada-lang.c (cast_to_fixed): Do not cast to builtin_type_double.
	(cast_from_fixed_to_double): Rename to ...
	(cast_from_fixed): ... this.  Add TYPE parameter.  Use it instead
	of builtin_type_double.
	(ada_value_cast): Use cast_from_fixed instead of casting result
	of cast_from_fixed_to_double.
	(ada_evaluate_subexp): Update calls to cast_from_fixed_to_double. 

2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>

	* valops.c (value_ind): No longer allow dereferencing an
	integer type.
	* eval.c (evaluate_subexp_standard): Handle deferencing an
	integer type here.
	* ada-lang.c (ada_evaluate_subexp): Likewise.

2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>

	* ada-valprint.c (ada_val_print_1): When implicitly dereferencing
	a reference type, pass the reference type directly to unpack_pointer.
	* c-valprint.c (c_val_print): Likewise.
	* f-valprint.c (f_val_print): Likewise.
	* m2-valprint.c (print_variable_at_address, m2_val_print): Likewise.
	* p-valprint.c (pascal_val_print): Likewise.

2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>

	* eval.c (evaluate_subexp_standard): Use builtin_type_int8
	to construct the EVAL_SKIP dummy return value.
	* ada-lang.c (ada_evaluate_subexp): Likewise.
	* jv-lang.c (evaluate_subexp_java): Likewise.
	* m2-lang.c (evaluate_subexp_modula2): Likewise.
	* scm-lang.c (evaluate_exp): Likewise.

2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>

	* value.h (coerce_enum, coerce_number): Remove prototypes.
	* value.c (coerce_enum, coerce_number): Remove.
	* valarith.c (value_x_binop): Do not call coerce_enum.
	(value_x_unop): Likewise.
	(value_logical_not): Call coerce_array instead of coerce_number.

2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>

	* ax-gdb.c: Include "language.h".
	(gen_frame_args_address): Add GDBARCH parameter; use it
	instead of current_gdbarch.
	(gen_frame_locals_address): Likewise.
	(gen_var_ref): Add GDBARCH parameter.  Update calls to
	gen_frame_args_address and gen_frame_locals_address.  Use
	pointer type from gdbarch.
	(gen_usual_unary): Add EXP parameter.  Use integer type
	from exp->gdbarch.
	(gen_usual_arithmetic): Likewise.
	(gen_integral_promotions): Likewise.
	(gen_add, gen_sub): Remove.
	(gen_ptradd, gen_ptrsub, gen_ptrdiff): New functions.
	(gen_logical_not): Use passed-in boolean result type
	instead of builtin_type_int.
	(gen_complement): Do not call gen_usual_unary or
	gen_integral_promotions.
	(gen_struct_ref): Call require_rvalue instead of gen_usual_unary.
	(gen_repeat): Add EXP parameter.  Update call to gen_expr.
	Use builtin_type_int32 as internal range type.
	(gen_sizeof): Add EXP and SIZE_TYPE parameters.  Use SIZE_TYPE
	as result type.  Update call to gen_expr.
	(gen_expr): Add EXP parameter.  Update calls to gen_expr,
	gen_repeat, gen_var_ref, gen_usual_unary, gen_usual_arithmetic,
	and gen_integral_promotions.  Call gen_ptradd, gen_ptrsub,
	gen_ptrdiff, or gen_binop instead of gen_add or gen_sub.
	Use exp->gdbarch instead of current_gdbarch.
	Call language_bool_type to determine result type of UNOP_LOGICAL_NOT.

2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>

	* eval.c (evaluate_subexp_standard): Add calls to binop_promote
	and unop_promote before calling value_binop et. al.
	* ada-lang.c (ada_evaluate_subexp): Add calls to binop_promote
	and unop_promote before calling value_binop et. al.

	* valarith.c (value_binop): Do not call binop_promote or unop_promote.
	(value_pos): Do not call unop_promote.
	(value_neg, value_complement): Likewise.

2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>

	* value.h (unop_promote, binop_promote): Add prototypes.
	* eval.c (unop_promote, binop_promote): New functions.
	* valarith.c (unop_result_type, binop_result_type): Remove.
	(value_binop): Call binop_promote or unop_promote.
	Inline remaining parts of binop_result_type.  Remove special
	code to truncate integer values for unsigned operations.
	(value_pos): Call unop_promote.  Inline remaining parts of
	unop_result_type.
	(value_neg, value_complement): Likewise.

2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>

	* value.h (value_add, value_sub): Remove.
	(value_ptradd, value_ptrsub, value_ptrdiff): Add prototypes.
	* valarith.c (value_add, value_sub): Remove.
	(value_ptradd, value_ptrsub, value_ptrdiff): New functions.
	(find_size_for_pointer_math): Add assertion.  Update comment.
	(value_binop): Update comment.

	* eval.c (ptrmath_type_p): New function.
	(evaluate_subexp_standard): Replace value_add and value_sub
	by value_ptradd, value_ptrsub, value_ptrdiff or value_binop.
	Use builtin_type_uint8 instead of builtin_type_char to hold
	the increment for BINOP_{PRE,POST}{IN,DE}CREMENT operations.
	* valarith.c (value_subscript): Replace value_add by
	value_ptradd.  Replace value_sub by value_binop.
	* ada-lang.c (ada_value_ptr_subscript): Likewise.
	(ada_tag_name_2): Replace value_add by value_ptradd.
	(ada_evaluate_subexp): Replace value_add and value_sub by
	value_binop.
	* m2-lang.c (evaluate_subexp_modula2): Replace value_add
	by value_ptradd.
	* gnu-v2-abi.c (gnuv2_virtual_fn_field): Likewise.
	* gnu-v3-abi.c (gnuv3_method_ptr_to_value): Likewise.

2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>

	* eval.c (evaluate_subexp_for_sizeof): Use builtin_int type of
	the expression architecture instead of builtin_type_int as the
	sizeof return type.

2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>

	* expression.h (enum exp_opcode): Document OP_COMPLEX to take
	a type parameter as expression element.
	* eval.c (evaluate_subexp_standard) [OP_COMPLEX]: Retrieve result
	type as expression element.
	* f-exp.y: Pass in type when buildin OP_COMPLEX expression.
	* parse.c (operator_length_standard): Update length of OP_COMPLEX.

2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>

	* language.h (struct language_arch_info): New members
	bool_type_default and bool_type_symbol.
	(lang_bool_type): Remove prototype.
	(LA_BOOL_TYPE): Remove macro.
	(language_bool_type): Add prototype.
	* language.c (lang_bool_type): Remove.
	(language_bool_type): New function.

	* value.h (value_in): Change return value to int.
	* value.c (value_in): Return int instead of struct value *.

	* eval.c (evaluate_subexp_standard): Call language_bool_type instead
	of using LA_BOOL_TYPE.  Update call to value_in.
	* ada-lang.c (ada_evaluate_subexp): Call language_bool_type instead
	of using LA_BOOL_TYPE or builtin_type_int for boolean values.

	* language.c (unknown_language_arch_info): Set bool_type_default member
	of struct language_arch_info.
	* ada-lang.c (ada_language_arch_info): Set bool_type_symbol and
	bool_type_default members of struct language_arch_info.
	* c-lang.c (c_language_arch_info): Set bool_type_default member
	of struct language_arch_info.
	(cplus_language_arch_info): Set bool_type_symbol and bool_type_default
	members of struct language_arch_info.
	* f-lang.c (f_language_arch_info): Set bool_type_symbol and
	bool_type_default members of struct language_arch_info.
	* jv-lang.c (java_language_arch_info): Set bool_type_symbol and
	bool_type_default members of struct language_arch_info.
	* m2-lang.c (m2_language_arch_info): Set bool_type_symbol and
	bool_type_default members of struct language_arch_info.
	* p-lang.c (p_language_arch_info): Set bool_type_symbol and
	bool_type_default members of struct language_arch_info.

2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>

	* jv-lang.c (enum java_primitive_types): New type.
	(java_language_arch_info): New function.
	(java_language): Use it instead of c_language_arch_info.

2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>

	* value.h (value_bitstring_subscript): New prototype.
	* valarith.h (value_bitstring_subscript): New function.
	(value_subscript): No longer handle TYPE_CODE_BITSTRING.
	* eval.c (evaluate_subexp_standard): Call value_bitstring_subscript
	instead of value_subscript to handle TYPE_CODE_BITSTRING.

2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>

	* expression.h (struct expression): New member GDBARCH.
	* parse.c (parse_exp_in_context): Initialize it.
	* parser-def.h (parse_gdbarch, parse_language): New macros.

	* ada-exp.y (parse_type): New macro.
	Replace builtin_type_ macros by using parse_type.
	Replace current_language by parse_language.
	* ada-lex.l (processInt): Replace current_gdbarch by parse_gdbarch.
	Replace builtin_type_ macros.

	* c-exp.y (parse_type): New macro.
	Replace builtin_type_ macros by using parse_type.
	(parse_number): Replace current_gdbarch by parse_gdbarch.
	(yylex): Replace current_language by parse_language.

	* f-exp.y (parse_type, parse_f_type): New macros.
	Replace builtin_type_ macros by using parse_{f_,}type.
	(parse_number): Replace current_gdbarch by parse_gdbarch.
	(yylex): Replace current_language by parse_language.

	* jv-exp.y (parse_type): New macro.
	(parse_number): Replace builtin_type_ macros by using parse_type.

	* m2-exp.y (parse_type, parse_m2_type): New macros.
	Replace builtin_type_ macros by using parse_{m2_,}type.

	* objc-exp.y (parse_type): New macro.
	Replace builtin_type_ macros by using parse_type.
	(parse_number): Replace current_gdbarch by parse_gdbarch.
	(yylex): Replace current_language by parse_language.

	* p-exp.y (parse_type): New macro.
	Replace builtin_type_ macros by using parse_type.
	(parse_number): Replace current_gdbarch by parse_gdbarch.
	(yylex): Replace current_language by parse_language.

2008-09-11  Ulrich Weigand  <uweigand@de.ibm.com>

	* parser-defs.h (write_exp_msymbol): Remove TEXT_SYMBOL_TYPE
	and DATA_SYMBOL_TYPE arguments.
	* parse.c (write_exp_msymbol): Remove TEXT_SYMBOL_TYPE and
	DATA_SYMBOL_TYPE arguments.  Replace use of builtin_type_CORE_ADDR.
	(write_dollar_variable): Update call.

	* ada-exp.y (write_var_or_type): Update call.
	* c-exp.y: Likewise.
	* f-exp.y: Likewise.
	* jv-exp.y: Likewise.
	* m2-exp.y: Likewise.
	* objc-exp.y: Likewise.
	* p-exp.y: Likewise.

2008-09-10  Joel Brobecker  <brobecker@adacore.com>

	* ada-lang.c (ada_parent_type): Add handling of the case where
	the _parent field is a pointer and/or has a parallel XVS type.
	(ada_evaluate_subexp) [OP_VAR_VALUE]: When doing an
	EVAL_AVOID_SIDE_EFFECTS evaluation of a tagged type, return
	the type of the tag instead of doing forcing an EVAL_NORMAL
	expression evaluation.

2008-09-10  Paul N. Hilfinger  <hilfinger@adacore.com> 
	    Joel Brobecker  <brobecker@adacore.com>

	* ada-lang.c (is_digits_suffix): New function.
	(is_dot_digits_suffix): Remove.
	(ada_lookup_symbol_list): Remove digits suffix from minimal symbols
	before looking up in symbol table, and do not use wild matches on them.
	(wild_match): Reimplement for speed and to allow matching of operator
	symbols.
	(is_valid_name_for_wild_match): Return zero for names that do not
	follow the GNAT encoding.

	(is_name_suffix): Fix typo in comment.
	(to_record_with_fixed_variant_part): Ditto.

2008-09-10  Pedro Alves  <pedro@codesourcery.com>

	* Makefile.in (gnu-nat.o): New rule.

2008-09-10  Joel Brobecker  <brobecker@adacore.com>

	* ada-lang.c (ada_evaluate_subexp) [OP_ATR_SIZE]: Use
	archecture-neutral builtin_type_int32 instead of builtin_type_int.

2008-09-10  Joel Brobecker  <brobecker@adacore.com>

	* ada-lang.c (ada_evaluate_subexp) [BINOP_ADD, BINOP_SUB]:
	Add special handling for pointer types.

2008-09-10  Pedro Alves  <pedro@codesourcery.com>

	* inf-ttrace.c (inf_ttrace_follow_fork): Declare locals at the
	right scope level.
	(inf_ttrace_resume, inf_ttrace_wait): Typos.

2008-09-10  Ulrich Weigand  <uweigand@de.ibm.com>

	* ada-lang.c (ada_array_length): Use builtin_type_int32 instead
	of builtin_type_int.
	(ada_evaluate_subexp) [UNOP_IN_RANGE]: Use operand range type
	instead of builtin_type_int.

2008-09-09  Pedro Alves  <pedro@codesourcery.com>

	* infrun.c (normal_stop): Run hook-stop last.

2008-09-09  Pedro Alves  <pedro@codesourcery.com>

	* gnu-nat.c (gnu_pid_to_exec_file): Delete.
	(init_gnu_ops): Don't register it.

2008-09-09  Pedro Alves  <pedro@codesourcery.com>

	* gnu-nat.c (gnu_attach): Push target before fetching the list of
	threads.

2008-09-08  Daniel Jacobowitz  <dan@codesourcery.com>

	* valops.c (value_cast_structs): Return NULL for failure.
	(value_cast): Handle NULL from value_cast_structs.
	(value_fetch_lazy): Call check_typedef.  Remove unused variable.

2008-09-08  Pedro Alves  <pedro@codesourcery.com>

	* inferior.h (context_switch_to): Delete.
	* infrun.c (context_switch): Don't save and load infrun state.
	(context_switch_to): Delete.

	* infcmd.c (proceed_thread_callback): Replace context_switch_to
	calls by switch_to_thread calls.

	* gdbthread.h (save_infrun_state, load_infrun_state): Delete.
	* thread.c (main_thread_state, main_thread_executing): Delete.
	(inferior_thread): Delete references to them.
	(add_thread_silent): Fix case where we're adding a thread with the
	same ptid as an exited thread.  Remove references to
	context-switching.
	(load_infrun_state, save_infrun_state): Delete.
	(thread_alive, is_thread_state, any_running, is_executing)
	(set_executing): Remove the special handling for targets that
	don't register any thread.
	(restore_current_thread, thread_apply_all_command)
	(do_captured_thread_select): Unconditionally call
	switch_to_thread.

	* mi/mi-main.c (mi_cmd_execute): Check for exited threads.
	Call switch_to_thread instead of context_switch_to.

2008-09-08  Pedro Alves  <pedro@codesourcery.com>

	Remove global continuations in favour of a per-thread
	continuations.

	* gdbthread.h (struct thread_info): Add comments around
	continuations and intermediate_continuations.
	(save_infrun_state, load_infrun_state): Delete continuations and
	intermediate_continuations arguments.
	* infrun.c (context_switch): Don't context-switch the continuations.
	* thread.c (clear_thread_inferior_resources): Discard all
	continuations of the thread we're clearing.
	(save_infrun_state, load_infrun_state): Delete continuations and
	intermediate_continuations arguments, and the code referencing
	them.
	* utils.c: Include "gdbthread.h".
	(cmd_continuation, intermediate_continuation): Delete.
	(add_continuation): Add thread_info* argument.  Install the
	continuation on it.
	(restore_thread_cleanup): New.
	(do_all_continuations_ptid, do_all_continuations_thread_callback):
	New.
	(do_all_continuations): Reimplement.
	(discard_all_continuations_thread_callback,
	discard_all_continuations_thread): New.
	(discard_all_continuations): Reimplement.
	(add_intermediate_continuation): Add thread_info* argument.
	Install the continuation on it.
	(do_all_intermediate_continuations_thread_callback)
	(do_all_intermediate_continuations_thread): New.
	(do_all_intermediate_continuations): Reimplement.
	(discard_all_intermediate_continuations_thread_callback): New.
	(discard_all_intermediate_continuations_thread): New.
	(discard_all_intermediate_continuations): Reimplement.

	* breakpoint.c (until_break_command): Install the continuation on
	the current thread.

	* defs.h (cmd_continuation, intermediate_continuation): Delete.
	(struct thread_info): Forward declare.
	(add_continuation, add_intermediate_continuation): Add
	thread_info* argument.
	(do_all_continuations_thread, discard_all_continuations_thread)
	(do_all_intermediate_continuations_thread)
	(discard_all_intermediate_continuations_thread): Declare.
	* inf-loop.c (inferior_event_handler): In non-stop only run
	continuations on the thread that stopped.  In all-stop, run
	continuations on all threads.
	* infcmd.c (step_once, finish_command): Adjust.

2008-09-08  Pedro Alves  <pedro@codesourcery.com>

	Remove the global stop_step in favour of a per-thread
	stop_step.

	* inferior.h (stop_step): Delete.

	* gdbthread.h (struct thread_info): Add comments to stop_step.
	(save_infrun_state, load_infrun_state): Remove stop_step argument.
	* thread.c (load_infrun_state, save_infrun_state): Remove
	stop_step argument, and references to it.

	* infrun.c (clear_proceed_status): Clear stop_step.
	(fetch_inferior_event): Adjust.
	(context_switch): Don't context-switch stop_step.
	(handle_inferior_event): Adjust.
	(normal_stop): Adjust.
	(save_inferior_status, restore_inferior_status): Adjust.

	* infcmd.c (stop_step): Delete.
	(step_1, step_1_continuation, step_once, until_next_command):
	Adjust.

2008-09-08  Pedro Alves  <pedro@codesourcery.com>

	Remove the global step_multi in favour of a per-thread
	step_multi.

	* inferior.h (step_multi): Delete.
	* gdbthread.h (struct thread_info): Add comments around
	step_multi.
	(save_infrun_state, load_infrun_state): Remove step_multi
	parameter.
	* thread.c (load_infrun_state, save_infrun_state): Remove
	step_multi argument, and references to it.
	* infcmd.c (step_multi): Delete.
	(step_1): Adjust.
	(step_1_continuation, until_next_command): Adjust.
	* infrun.c (fetch_inferior_event): Adjust.
	(context_switch): Don't context-switch step_multi.
	(print_stop_reason, normal_stop): Adjust.

2008-09-08  Pedro Alves  <pedro@codesourcery.com>

	Remove the global stop_signal in favour of a per-thread
	stop_signal.

	* inferior.h (stop_signal): Delete.
	* gdbthread.h (save_infrun_state, load_infrun_state): Remove
	stop_signal argument.
	* thread.c (load_infrun_state, save_infrun_state): Remove
	stop_signal argument.  Don't reference it.

	* infcmd.c (stop_signal): Delete.
	(program_info): Adjust.
	* infrun.c (resume): Clear stop_signal.
	(proceed): Adjust.  Pass the last stop_signal to the thread we're
	resuming.
	(context_switch): Don't context-switch stop_signal.
	(handle_inferior_event, keep_going): Adjust.
	(save_inferior_status, restore_inferior_status): Adjust.

	* fbsd-nat.c: Include "gdbthread.h".
	(find_signalled_thread, find_stop_signal): New.
	(fbsd_make_corefile_notes): Use it.
	* fork-child.c (startup_inferior): Adjust.

	* linux-nat.c (get_pending_status): Adjust.
	(linux_nat_do_thread_registers): Adjust.
	(find_signalled_thread, find_stop_signal): New.
	(linux_nat_do_thread_registers): Add stop_signal parameter.
	(struct linux_nat_corefile_thread_data): Add stop_signal member.
	(linux_nat_corefile_thread_callback): Pass stop_signal.
	(linux_nat_do_registers): Delete.
	(linux_nat_make_corefile_notes): Use find_stop_signal.  Assume
	there's always a thread.

	* procfs.c (find_signalled_thread, find_stop_signal): New.
	(find_stop_signal): New.
	(procfs_do_thread_registers): Add stop_signal parameter.
	(struct procfs_corefile_thread_data): Add stop_signal member.
	(procfs_corefile_thread_callback): Pass args->stop_signal.
	(procfs_make_note_section): Find the last stop_signal.

	* solib-irix.c: Include gdbthread.h.
	(irix_solib_create_inferior_hook): Adjust.
	* solib-osf.c: Include gdbthread.h.
	(osf_solib_create_inferior_hook): Adjust.
	* solib-sunos.c: Include gdbthread.h.
	(sunos_solib_create_inferior_hook): Adjust.
	* solib-svr4.c: Include gdbthread.h.
	(svr4_solib_create_inferior_hook): Adjust.

	* win32-nat.c (do_initial_win32_stuff): Adjust.

2008-09-08  Pedro Alves  <pedro@codesourcery.com>

	* gdbthread.h (struct thread_info): Add comments around
	proceed_to_finish.
	(save_infrun_state, load_infrun_state): Remove proceed_to_finish
	argument.
	* thread.c (load_infrun_state, save_infrun_state): Delete
	proceed_to_finish argument and references to it.

	* infcall.c (call_function_by_hand): Adjust.
	* infcmd.c (finish_command): Adjust.
	* infrun.c (proceed_to_finish): Delete.
	(clear_proceed_status): Adjust.
	(context_switch): Don't context-switch proceed_to_finish.
	(normal_stop, save_inferior_status, restore_inferior_status):
	Adjust.

2008-09-08  Pedro Alves  <pedro@codesourcery.com>

	* inferior.h (stop_bpstat): Delete.

	* breakpoint.h (bpstat_do_actions): Remove bpstat* argument.
	
	* breakpoint.c (bpstat_do_actions): Rename to ...
	(bpstat_do_actions_1): ... this.  Make static.  Change return type
	to int.  Return true if a breakpoint proceeded.
	(bpstat_do_actions): New, as wrapper around bpstat_do_actions_1.
	(delete_breakpoint): Don't reference the global stop_bpstat; it's
	gone.

	* gdbthread.h (struct thread_info): Add stop_bpstat.
	(save_infrun_state, load_infrun_state): Remove stop_bpstat
	argument.
	* thread.c (load_infrun_state, save_infrun_state): Remove
	stop_bpstat argument, and the code referencing it.

	* infcall.c: Include "gdbthread.h".
	(call_function_by_hand): Adjust.
	* exceptions.c: Include "gdbthread.h".
	(throw_exception): Adjust.
	* infcmd.c (stop_bpstat): Delete.
	(continue_command): In all-stop, set the ignore count on the
	thread that reported the stop.  In non-stop, set it on the current
	thread.
	(finish_command_continuation): Adjust.
	(program_info): Adjust.
	* infrun.c (clear_proceed_status): Adjust.
	(context_switch): Don't context-switch stop_bpstat.
	(handle_inferior_event): Adjust.
	(normal_stop): Adjust.
	(save_inferior_status, restore_inferior_status): Adjust.

	* inf-loop.c (inferior_event_handler): Remove parameter to
	bpstat_do_actions call.
	* top.c (command_loop): Remove parameter to bpstat_do_actions
	call.  Call it unconditionally.
	* event-top.c (command_handler): Ditto.
	* python/python.c (execute_gdb_command): Ditto.

2008-09-08  Pedro Alves  <pedro@codesourcery.com>

	* inferior.h (step_over_calls): Delete.

	* gdbthread.h (save_infrun_state, load_infrun_state): Remove
	step_over_calls argument.
	* thread.c (save_infrun_state, load_infrun_state): Remove
	step_over_calls argument.  Adjust.

	* infcmd.c (step_over_calls): Delete.
	(step_1): Adjust.
	* infrun.c (clear_proceed_status): Adjust.
	(context_switch): Don't context-switch step_over_calls.
	(handle_inferior_event, save_inferior_status)
	(restore_inferior_status): Adjust.

2008-09-08  Pedro Alves  <pedro@codesourcery.com>

	Remove context switching in favour of accessing thread_info fields
	directly.

	* infrun.c (stepping_over_breakpoint, step_resume_breakpoint):
	Delete.
	(struct thread_stepping_state): Delete.
	(gtss, tss): Delete.
	(follow_inferior_reset_breakpoints, follow_exec)
	(resume, clear_proceed_status): Adjust.
	(prev_pc): Delete.
	(proceed, start_remote, init_wait_for_inferior): Adjust.
	(struct execution_control_state): Add event_thread member.
	(delete_step_resume_breakpoint_callback)
	(delete_step_thread_step_resume_breakpoint)
	(delete_step_thread_step_resume_breakpoint_cleanup)
	(delete_step_thread_step_resume_breakpoint): New.
	(wait_for_inferior, init_execution_control_state): Use
	delete_step_thread_step_resume_breakpoint_cleanup.
	(wait_for_inferior): Set the event_thread.
	(fetch_inferior_event): Ditto.  Delete the step-resume breakpoint
	with delete_step_thread_step_resume_breakpoint.
	(init_thread_stepping_state): Change parameter type to
	thread_info.  Adjust.
	(context_switch): Don't context switch prev_pc,
	stepping_over_breakpoint, step_resume_breakpoint,
	step_range_start, step_range_end, step_frame_id,
	tss->stepping_over_breakpoint,
	tss->stepping_through_solib_after_catch,
	tss->stepping_through_solib_catchpoints, tss->current_line, or
	tss->current_symtab.
	(adjust_pc_after_break, handle_inferior_event)
	(currently_stepping, step_into_function)
	(insert_step_resume_breakpoint_at_sal)
	(insert_longjmp_resume_breakpoint, keep_going): Adjust.
	(clear_stepping_state): New.
	(normal_stop): Adjust.
	(save_inferior_status, restore_inferior_status): Adjust.

	* gdbthread.h (struct thread_info): Comments describing the
	members moved here.  Add step_after_step_resume_breakpoint.
	(delete_step_resume_breakpoint): Add thread_info argument.
	(save_infrun_state, load_infrun_state): Remove prev_pc,
	trap_expected, step_resume_breakpoint, step_range_start,
	step_range_end, step_frame_id, another_trap,
	stepping_through_solib_after_catch,
	stepping_through_solib_catchpoints, current_line and
	current_symtab function arguments.
	(inferior_thread): Declare.

	* thread.c (inferior_thread): New.
	(delete_step_resume_breakpoint): Add a thread_info parameter and
	rewrite.
	(load_infrun_state, save_infrun_state): Remove prev_pc,
	trap_expected, step_resume_breakpoint, step_range_start,
	step_range_end, step_frame_id, stepping_over_breakpoint,
	stepping_through_solib_after_catch,
	stepping_through_solib_catchpoints, current_line and
	current_symtab args.  Remove code referencing them.

	* infcmd.c (step_range_start, step_range_end, step_frame_id):
	Delete.
	(step_1, step_once, until_next_command): Adjust.

	* inferior.h (step_range_start, step_range_end, step_frame_id):
	Delete.

	* linux-nat.c (linux_child_follow_fork): If following the child,
	move the step state to it.  Adjust.
	* inf-ptrace.c (inf_ptrace_follow_fork): Ditto.
	* inf-ttrace.c (inf_ttrace_follow_fork): Ditto.

2008-09-08  Pedro Alves  <pedro@codesourcery.com>

	* bsd-uthread.c (bsd_uthread_find_new_threads): Claim the main
	thread.

2008-09-08  Pedro Alves  <pedro@codesourcery.com>

	* corelow.c (add_to_thread_list): If this is the first time we
	hear about thread info, update inferior_ptid.
	(core_open): Clear the thread list and set inferior_ptid before
	acknowledging a new inferior.  Find threads before fetching
	register info.  Give an upper target layer a chance to find and
	claim new threads.  Print core generation and stop signal info
	after finding new threads.
	(get_core_register_section): Look at the lwp member of
	inferior_ptid for detecting if we have threads info, instead of
	the pid member.
	(core_pid_to_str): New.
	(init_core_ops): Register core_pid_to_str.

2008-09-08  Pedro Alves  <pedro@codesourcery.com>

	* spu-linux-nat.c (spu_child_post_startup_inferior)
	(spu_child_post_attach): Don't add the main thread here.

2008-09-08  Pedro Alves  <pedro@codesourcery.com>

	Use ptid_t.tid to store thread ids instead of ptid_t.pid.

	* gnu-nat.c (inf_validate_procs): If this is the first time we're
	seeing a thread id, extend the main thread's ptid.  If we still
	have pending execs, don't be verbose about new threads.
	(gnu_wait, gnu_resume, gnu_attach, gnu_thread_alive)
	(gnu_pid_to_str, cur_thread, sig_thread_cmd): Adjust.
	* i386gnu-nat.c (gnu_fetch_registers, gnu_store_registers):
	Adjust.

2008-09-08  Pedro Alves  <pedro@codesourcery.com>

	* procfs.c (to_attach): Create a procinfo for the current lwp.
	Add it to gdb's thread list.
	(procfs_fetch_registers, procfs_store_registers): Assume there's
	always an lwp.
	(procfs_wait): Don't add the main thread here.
	(procfs_init_inferior): Create a procinfo for the main lwp here.
	Change main thread's ptid with thread_change_ptid.
	(procfs_notice_thread): Check for exited threads.
	(procfs_corefile_thread_callback): Remove check for the main
	process.
	(procfs_make_note_section): Assume there is always a thread.

	* sol-thread.c (sol_thread_attach): Clear sol_thread_active before
	attaching.  Change the main thread ptid with thread_change_ptid.
	(sol_thread_detach): Clear sol_thread_active.
	(sol_thread_wait): Check for exited threads.
	(sol_thread_create_inferior): Clear sol_thread_active before
	creating a new inferior.  Change the main thread ptid with
	thread_change_ptid.
	(sol_thread_mourn_inferior): Clear sol_thread_active.
	(sol_find_new_threads_callback): Check for exited threads.

2008-09-08  Pedro Alves  <pedro@codesourcery.com>

	* inf-ttrace.c (inf_ttrace_wait): On TTEVT_LWP_CREATE and
	LWP_TERMINATE, resume the caller thread.  On TTEVT_LWP_CREATE,
	TTEVT_LWP_EXIT and TTEVT_LWP_TERMINATE, don't stop the whole
	process, and return TARGET_WAITKIND_IGNORE.

2008-09-08  Pedro Alves  <pedro@codesourcery.com>

	* inf-ttrace.c: Include <signal.h>
	(inf_ttrace_delete_dead_threads_callback): New.
	(inf_ttrace_resume_lwp): New.
	(inf_ttrace_resume_callback, inf_ttrace_resume): Rewrite.  Don't
	delete dying threads until they are really dead.
	(inf_ttrace_wait): After stopping the whole process, delete any
	dying thread that is really dead by now.
	(inf_ttrace_thread_alive): Return 1.
	(inf_ttrace_extra_thread_info): New.
	(inf_ttrace_target): Register inf_ttrace_extra_thread_info.

2008-09-08  Pedro Alves  <pedro@codesourcery.com>

	* inf-ttrace.c (inf_ttrace_follow_fork): Register the main thread
	of the child fork.
	(inf_ttrace_attach): Add the main thread.
	(inf_ttrace_resume_callback): Check for exited threads.  Adjust
	for always a thread.
	(inf_ttrace_wait): Decorate the main thread's ptid with lwp info
	using thread_change_ptid, and set its private data.  Don't add the
	main thread here.
	(inf_ttrace_pid_to_str): Adjust.

2008-09-08  Pedro Alves  <pedro@codesourcery.com>

	* bsd-uthread.c (bsd_uthread_wait): Decorate the main thread with
	thread_change_ptid.  Check for exited threads.
	(bsd_uthread_find_new_threads): Check for exited threads.

2008-09-08  Pedro Alves  <pedro@codesourcery.com>

	* inf-ptrace.c: Include "gdbthread.h".
	(inf_ptrace_attach): Add the main thread here.
	* linux-nat.c (linux_nat_attach): Don't add the main thread here.
	Decorate the main thread id with the lwp id.

2008-09-08  Pedro Alves  <pedro@codesourcery.com>

	* linux-nat.c (linux_nat_wait): Update inferior_ptid's ptid with
	thread_change_ptid.  Don't add or mark the main thread as running
	and executing here.
	* fork-child.c (fork_inferior): Add the main thread here.

2008-09-08  Jerome Guitton  <guitton@adacore.com>

	* rs6000-tdep.c (rs6000_fetch_instruction)
	(rs6000_skip_stack_check): New functions.
	(skip_prologue): Skip stack check sequence.
	
2008-09-08  David Daney  <ddaney@avtrex.com>

	* dummy-frame.h (frame.h): Include it.
	(struct frame_id): Remove declaration.

2008-09-05  Ulrich Weigand  <uweigand@de.ibm.com>

	* spu-tdep.c (spu_push_dummy_code): New function.
	(spu_gdbarch_init): Install it.

2008-09-05  Ulrich Weigand  <uweigand@de.ibm.com>

	* gdbarch.sh (gdbarch_dump): Use core_addr_to_string_nz
	instead of paddr_nz.
	* gdbarch.c: Regenerate.

	* target.c (target_xfer_partial, debug_print_register): Use
	core_addr_to_string_nz instead of paddr_nz.

2008-09-05  Ulrich Weigand  <uweigand@de.ibm.com>

	* rs6000-tdep.c (rs6000_gdbarch_init): Setup displaced stepping
	*before* calling gdbarch_init_osabi.
	(rs6000_aix_init_osabi): Disable displaced stepping.

2008-09-05  Ulrich Weigand  <uweigand@de.ibm.com>

	* target.c (update_current_target): Do not inherit to_open
	or to_close.
	(pop_target): Call target_close on target_stack instead
	of current_target.
	(pop_all_targets_above): Likewise.

2008-09-05  Ulrich Weigand  <uweigand@de.ibm.com>

	* gnu-v3-abi.c (gnuv3_decode_method_ptr): New function.
	(gnuv3_print_method_ptr): Use it.
	(gnuv3_method_ptr_to_value): Likewise.

2008-09-05  Ulrich Weigand  <uweigand@de.ibm.com>

	* nto-tdep.h (struct nto_target_ops): Add gdbarch parameter to
	register_area callback function.
	* i386-nto-tdep.c (i386nto_register_area): Add gdbarch parameter.
	Use it instead of current_gdbarch.
	* nto-procfs.c (procfs_store_registers): Update call.

2008-09-05  Ulrich Weigand  <uweigand@de.ibm.com>

	* mips-tdep.c (deprecated_mips_set_processor_regs_hack): Use
	regcache architecture instead of current_gdbarch.

2008-09-05  Ulrich Weigand  <uweigand@de.ibm.com>

	* mep-tdep.c (struct mep_prologue): Add gdbarch member.
	(check_for_saved): Use it instead of current_gdbarch.
	(is_arg_spill): Add gdbarch paramter.  Use it instead
	of current_gdbarch.
	(mep_analyze_prologue): Add gdbarch parameter.  Pass it
	to is_arg_spill and check_for_saved.
	(mep_skip_prologue, mep_analyze_frame_prologue): Update calls.

2008-09-05  Ulrich Weigand  <uweigand@de.ibm.com>

	* hppa-tdep.c (internalize_unwinds): Use objfile architecture
	instead of current_gdbarch.

2008-09-05  Ulrich Weigand  <uweigand@de.ibm.com>

	* m68k-tdep.h (m68kbsd_fpreg_offset): Add gdbarch parameter.
	* m68kbsd-tdep.c (m68kbsd_fpreg_offset): Add gdbarch paramter.
	Use it instead of current_gdbarch.
	(m68kbsd_supply_fpregset): Update call.
	* m68kbsd-nat.c (m68kbsd_supply_fpregset): Likewise.
	(m68kbsd_collect_fpregset): Likewise.

2008-09-05  Ulrich Weigand  <uweigand@de.ibm.com>

	* cris-tdep.c (cris_version, cris_mode): Remove.
	(crisv32_single_step_through_delay): Use tdep->cris_mode.
	(cris_breakpoint_from_pc): Likewise.
	(cris_frame_unwind_cache): Use tdep->cris_version.
	(crisv32_scan_prologue): Likewise.
	(cris_spec_reg_applicable): Add gdbarch argument.
	Use tdep->cris_version.
	(cris_register_size, cris_special_register_name): Update calls.
	(cris_special_register_name): Add gdbarch argument.
	(cris_register_name, crisv32_register_name): Update calls.

2008-09-05  Ulrich Weigand  <uweigand@de.ibm.com>

	* m68hc11-tdep.c (gdb_print_insn_m68hc11): Use info->arch
	instead of current_gdbarch.

	* sh64-tdep.c (gdb_print_insn_sh64): Remove.
	(sh64_gdbarch_init): Install print_insn_sh64 directly.
	* sh-tdep.c (gdb_print_insn_sh): Remove.
	(sh_gdbarch_init): Install print_insn_sh directly.

	* mips-tdep.c (gdb_print_insn_mips): Do not check mips_abi
	from current_gdbarch.
	(gdb_print_insn_mips_n32, gdb_print_insn_mips_n64): New functions.
	(mips_gdbarch_init): Install them instead of gdb_print_insn_mips
	depending on mips_abi.

2008-09-05  Ulrich Weigand  <uweigand@de.ibm.com>

	* gdbarch.sh (addr_bits_remove): Change type to 'm'.
	(smash_text_address): Likewise.
	* gdbarch.c, gdbarch.h: Regenerate.

	* arch-utils.c (core_addr_identity): Add gdbarch parameter.
	* arch-utils.h (core_addr_identity): Likewise.
	* arm-tdep.c (arm_addr_bits_remove): Likewise.
	(arm_smash_text_address): Likewise.
	* hppa-tdep.c (hppa_smash_text_address): Likewise.
	* m88k-tdep.c (m88k_addr_bits_remove): Likewise.
	* s390-tdep.c (s390_addr_bits_remove): Likewise.

	* mips-tdep.c (mips_addr_bits_remove): Add gdbarch parameter.
	Use it instead of current_gdbarch.

	* arm-tdep.c (arm_prologue_prev_register, arm_unwind_pc,
	arm_dwarf2_prev_register): Update calls.
	* m88k-tdep.c (m88k_unwind_pc): Update call.

2008-09-05  Ulrich Weigand  <uweigand@de.ibm.com>

	* dwarf2expr.h (dwarf2_read_address): Add gdbarch argument.
	* dwarf2expr.c (dwarf2_read_address): Add gdbarch argument.
	Call gdbarch_integer_to_address directly instead of converting
	to value and back.  Update comment.
	(execute_stack_op): Update call site.
	* dwarf2loc.c (find_location_expression): Likewise.
	(locexpr_describe_location): Update

	* dwarf2expr.h (struct dwarf_expr_context): Add gdbarch member.
	* dwarf2-frame.c (execute_stack_op): Initialize ctx->gdbarch.
	* dwarf2loc. (dwarf2_evaluate_loc_desc): Likewise.
	(dwarf2_loc_desc_needs_frame): Likewise.

2008-09-05  Ulrich Weigand  <uweigand@de.ibm.com>

	* breakpoint.h (struct bp_location): Change type of section
	member to "struct obj_section *".
	* tracepoint.h (struct tracepoint): Likewise.
	* symtab.h (struct general_symbol_info): Replace bfd_section
	member with obj_section.
	(struct symtab_and_line): Change type of section member to
	"struct obj_section *".
	(SYMBOL_BFD_SECTION): Remove macro, replace by ...
	(SYMBOL_OBJ_SECTION): ... this.

	* minsym.c (prim_record_minimal_symbol_and_info): Record symbol
	section as obj_section instead of bfd_section.

	* ada-lang.c (ada_decode_symbol): Use gsymbol->obj_section
	directly instead of looking of obj_section from bfd_section.

	* objfiles.h (find_pc_sect_section): Remove.
	* objfiles.c (find_pc_sect_section): Remove.
	(find_pc_section): Inline find_pc_sect_section code.

	* symfile.h (find_pc_overlay): Return struct obj_section *.
	(find_pc_mapped_section): Likewise.
	(section_is_overlay, section_is_mapped): Change type of section
	argument to struct obj_section *.
	(pc_in_mapped_range, pc_in_unmapped_range): Likewise.
	(overlay_mapped_address, overlay_unmapped_address): Likewise.
	(symbol_overlayed_address): Likewise.
	* symtab.h (symbol_overlayed_address): Likewise.
	* symfile.c (overlay_is_mapped): Remove.
	(section_is_mapped): Inline overlay_is_mapped code.  Update.
	(overlay_invalidate_all): Update.
	(section_is_overlay): Change section argument to type
	"struct obj_section *".  Use bfd_ methods.
	(pc_in_unmapped_range): Likewise.  Handle relocated sections.
	(pc_in_mapped_range): Likewise.  Handle relocated sections.
	(sections_overlap): Likewise.
	(overlay_unmapped_address): Likewise.
	(overlay_mapped_address): Likewise.
	(symbol_overlayed_address): Likewise.
	(find_pc_overlay): Return struct obj_section *.
	(find_pc_mapped_section): Likewise.
	(list_overlays_command): Update.
	(map_overlay_command, unmap_overlay_command): Update.
	(simple_overlay_update): Update.

	* block.h (blockvector_for_pc_sect): Change section argument
	to type "struct obj_section *".
	(block_for_pc_sect): Likewise.
	* block.c (blockvector_for_pc_sect): Change section argument
	to type "struct obj_section *".
	(block_for_pc_sect): Likewise.
	* symtab.h (find_pc_sect_function, find_pc_sect_psymtab,
	find_pc_sect_symtab, find_pc_sect_psymbol, find_pc_sect_line,
	lookup_minimal_symbol_by_pc_section, find_function_start_pc): Likewise.
	(matching_bfd_sections): Rename to ...
	(matching_obj_sections): ... this.  Update argument types.
	* blockframe.c (find_pc_sect_function): Likewise.
	* breakpoint.c (describe_other_breakpoints): Likewise.
	(breakpoint_has_pc, check_duplicates_for): Likewise.
	* minsyms.c (lookup_minimal_symbol_by_pc_section_1): Likewise.
	(lookup_minimal_symbol_by_pc_section): Likewise.
	* symtab.c (find_pc_sect_psymtab_closer): Likewise.
	(find_pc_sect_psymtab, find_pc_sect_psymbol, find_pc_sect_symtab,
	find_pc_sect_line, find_function_start_pc): Likewise.
	(matching_bfd_sections): Rename to ...
	(matching_obj_sections): ... this.  Update argument types.

	* blockframe.c (find_pc_partial_function): Update to section
	type changes.  No longer call find_pc_sect_section.
	(cache_pc_function_section): Change to type "struct obj_section *".
	* breakpoint.c (resolve_sal_pc): Update to section type changes.
	* exec.c (xfer_memory): Likewise.
	* findvar.c (read_var_value): Likewise.
	* infcmd.c (jump_command): Likewise.
	* linespec.c (minsym_found): Likewise.
	* maint.c (maintenance_translate_address): Likewise.
	* minsyms.c (lookup_minimal_symbol_by_pc_section_1): Likewise.
	(lookup_solib_trampoline_symbol_by_pc): Likewise.
	* parse.c (write_exp_msymbol): Likewise.
	* printcmd.c (build_address_symbolic): Likewise.
	(address_info, sym_info): Likewise.
	* symmisc.c (dump_msymbols, print_symbol): Likewise.
	* symtab.c (fixup_section): Likewise.
	(fixup_symbol_section, fixup_psymbol_section): Likewise.
	(find_pc_line, find_function_start_sal): Likewise.
	* target.c (memory_xfer_partial): Likewise.
	* hppa-hpux-tdep.c (hppa64_hpux_in_solib_call_trampoline): Likewise.
	* spu-tdep.c (spu_overlay_update): Likewise.

2008-09-04  Doug Evans  <dje@google.com>

	* defs.h (plongest,pulongest): Renamed from paddr_u,paddr_d.
	Change argument of pulongest from CORE_ADDR to ULONGEST.
	All callers updated.
	* utils.c (plongest): Renamed from paddr_d.
	(pulongest): Renamed from paddr_u, change arg type to ULONGEST.
	* remote-mips.c (send_srec): Use paddr_nz instead of paddr_u in
	`CORE_ADDR addr' arg of error message.

2008-09-03  Angela Marie Thomas <angela@releasedominatrix.com>

	* ser-tcp.c (ser_tcp_send_break): New function.
	(_initialize_ser_tcp): Use ser_tcp_send_break.
	* ser-tcp.h (ser_tcp_send_break): New prototype.

2008-09-03  Ulrich Weigand  <uweigand@de.ibm.com>

	* spu-tdep.c (spu_push_dummy_call): Update all stack pointer slots
	when allocating stack frame for inferior call.

2008-09-03  Ulrich Weigand  <uweigand@de.ibm.com>

	* spu-tdep.c (spu_frame_unwind_cache): Do not attempt to unwind
	SP or return address if we failed to find a valid frame.

2008-09-03  Aleksandar Ristovski  <aristovski@qnx.com>

	* breakpoint.c (breakpoint_init_inferior): Mark as not inserted only
	non-permanent breakpoints.
	(bpstat_stop_status): Change enable_state to bp_disabled only for
	non-permanent breakpoints.
	(bp_loc_is_permanent): New function.
	(create_breakpoint): Check if the location points to a permanent
	breakpoint and if it does, make breakpoint permanent.
	(update_breakpoint_locations): Make sure new locations of permanent
	breakpoints are properly initialized.
	* i386-tdep.c (i386_skip_permanent_breakpoint): New function.
	(i386_gdbarch_init): Set gdbarch_skip_permanent_breakpoint.

2008-09-02  Pedro Alves  <pedro@codesourcery.com>

	* breakpoint.c (insert_breakpoints, update_global_location_list):
	Check breakpoints_always_inserted_mode instead of
	always_inserted_mode directly.

2008-09-02  Andreas Schwab  <schwab@suse.de>

	* ia64-tdep.c (ia64_get_dyn_info_list): Use obj_section_addr.

2008-09-01  Jan Kratochvil  <jan.kratochvil@redhat.com>

	Stay compatible after the GCC PR fortran/29635 fix.
	* dwarf2read.c (process_die <DW_TAG_imported_module>)
	(process_die <DW_TAG_imported_module>): Do not assert anything about
	these unsupported tags.

2008-08-29  Tom Tromey  <tromey@redhat.com>

	* maint.c (_initialize_maint_cmds): Fix typo.

2008-08-29  Tom Tromey  <tromey@redhat.com>

	* dwarf2read.c (dwarf2_build_psymtabs_hard): Copy dirname on
	obstack.

2008-08-27  Ulrich Weigand  <uweigand@de.ibm.com>

	* remote.c: Include "gdb_stat.h".

2008-08-26  Ulrich Weigand  <uweigand@de.ibm.com>

	* dummy-frame.h (dummy_frame_pop): Add prototype.
	* dummy-frame.c: Include "observer.h".
	(dummy_frame_push): Do not check for stale frames.
	(dummy_frame_pop): New function.
	(cleanup_dummy_frames): New function.
	(_initialize_dummy_frame): Install it as inferior_created observer.

	* frame.h (struct frame_id): Update comments.
	(frame_id_inner): Remove prototype.
	* frame.c (frame_id_inner): Make static.  Add comments.
	(frame_find_by_id): Update frame_id_inner safety net check to avoid
	false positives for targets using non-contiguous stack ranges.
	(get_prev_frame_1): Update frame_id_inner safety net check.
	(frame_pop): Call dummy_frame_pop when popping a dummy frame.

	* stack.c (return_command): Directly pop the selected frame.
	* infrun.c (handle_inferior_event): Remove dead code.
	* i386-tdep.c (i386_push_dummy_call): Update comment.

2008-08-26  Ulrich Weigand  <uweigand@de.ibm.com>

	* breakpoint.c (remove_breakpoint): Do not fail if unable to remove
	breakpoint from shared library.

2008-08-26  Ulrich Weigand  <uweigand@de.ibm.com>

	* solib-svr4.c (read_program_header): New function.
	(scan_dyntag_auxv): New function.
	(elf_locate_base): Use it if scan_dyntag fails.
	(find_program_interpreter): New function.
	(enable_break): Use it instead of .interp section.

2008-08-26  Ulrich Weigand  <uweigand@de.ibm.com>

	* remote.h (remote_filename_p, remote_bfd_open): Add prototypes.
	* remote.c (remote_bfd_iovec_open, remote_bfd_iovec_close,
	remote_bfd_iovec_pread, remote_bfd_iovec_stat, remote_filename_p,
	remote_bfd_open): New functions.
	(remote_hostio_send_command): Fail safely if remote connection
	is not set up.

	* solist.h (solib_open): Remove prototype.
	(solib_bfd_open): Add prototype.
	* solib.c: Include "remote.h".
	(solib_open): Remove, replace by ...
	(solib_bfd_open): ... this new function.  Handle remote BFDs.
	(solib_map_sections): Replace solib_open by solib_bfd_open.
	* solib-frv.c: Include "exceptions.h".
	(enable_break2): Replace solib_open by solib_bfd_open.
	* solib-svr4.c: Include "exceptions.h".
	(enable_break): Replace solib_open by solib_bfd_open.

	* symfile.c: Include "remote.h".
	(build_id_verify): Handle remote BFDs.
	(separate_debug_file_exists): Use BFD to access file.  Handle
	remote BFDs.
	(symfile_bfd_open): Handle remote BFDs.
	(reread_symbols): Handle remote BFDs.

	* NEWS: Mention "remote:" argument prefix to "set sysroot".

2008-08-26  Ulrich Weigand  <uweigand@de.ibm.com>

	* gdbarch.sh (target_gdbarch): New global variable.
	(deprecated_current_gdbarch_select_hack): Set it.
	* gdbarch.c, gdbarch.h: Regenerate.

	* arch-utils.c (gdbarch_update_p): Use target_gdbarch instead
	of current_gdbarch.
	* target-descriptions.c (target_find_description): Likewise.
	* arm-tdep.c (arm_update_current_architecture): Likewise.
	(show_fp_model, arm_show_abi, arm_show_fallback_mode, 
	arm_show_force_mode): Likewise.
	* mips-tdep.c (show_mask_address, show_mipsfpu_command,
	show_mips_abi): Likewise.
	* mep-tdep.c (me_module_register_set, current_me_module): Likewise.

	* target.c (target_translate_tls_address): Use target_gdbarch
	instead of current_gdbarch.
	* remote.c (struct packet_reg): Likewise.
	(get_remote_arch_state, packet_reg_from_regnum,
	packet_reg_from_pnum, remote_check_symbols, remote_wait,
	remote_address_masked, remote_insert_breakpoint,
	remote_insert_hw_breakpoint, remote_read_description): Likewise.
	* remote-m32r-sdi.c (m32r_resume, m32r_wait): Likewise.
	* remote-mips.c (mips_open, mips_common_breakpoint): Likewise.
	* cris-tdep.c (cris_can_use_hardware_watchpoint): Likewise.

	* solib.c (solib_open, solib_map_sections, solib_read_symbols,
	solib_add, info_sharedlibrary_command, solib_address, 
	solib_create_inferior_hook, in_solib_dynsym_resolve_code,
	solib_global_lookup): Likewise.
	* solib-frv.c (enable_break2, frv_relocate_main_executable): Likewise.
	* solib-irix.c (irix_current_sos, irix_open_symbol_file_object):
	Likewise.
	* solib-sunos.c (sunos_solib_create_inferior_hook): Likewise.
	* solib-svr4.c (exec_entry_point, enable_break, svr4_free_so,
	set_solib_svr4_fetch_link_map_offsets, svr4_fetch_link_map_offsets):
	Likewise.
	* nto-tdep.c (nto_find_and_open_solib, nto_init_solib_absolute_prefix,
	nto_truncate_ptr): Likewise.
	* mips-linux-tdep.c (mips_linux_in_dynsym_stub): Likewise.

2008-08-26  Luis Machado  <luisgpm@br.ibm.com>

	* ppc-linux-tdep.c (ppc_linux_vsx_regset_sections) New structure.
	(ppc_linux_vmx_regset_sections): New structure.
	(ppc_linux_fp_regset_sections): New structure.
	(ppc_linux_init_abi): Select core-file regset  based on target
	features.

2008-08-26  Ulrich Weigand  <uweigand@de.ibm.com>

	* target.c (debug_print_register): Use regcache_raw_collect
	instead of regcache_cooked_read.  Only handle raw registers.

2008-08-25  Pedro Alves  <pedro@codesourcery.com>

	* cp-name-parser.y: Include config.h before system headers.

2008-08-25  Ulrich Weigand  <uweigand@de.ibm.com>

	* m88k-tdep.c: Update for unwinder changes.

2008-08-24  Tom Tromey  <tromey@redhat.com>

	* s390-tdep.c (s390_address_class_type_flags): Use
	TYPE_INSTANCE_FLAG_ADDRESS_CLASS_1.
	(s390_address_class_type_flags_to_name): Likewise.
	(s390_address_class_name_to_type_flags): Likewise.

2008-08-24  Tom Tromey  <tromey@redhat.com>

	* rs6000-tdep.c (rs6000_builtin_type_vec128): Don't use
	TYPE_FLAGS.
	* features/rs6000/powerpc-vsx32l.c
	(initialize_tdesc_powerpc_vsx32l): Update.
	* features/rs6000/powerpc-vsx32.c
	(initialize_tdesc_powerpc_vsx32): Update.
	* features/rs6000/powerpc-vsx64.c
	(initialize_tdesc_powerpc_vsx64): Update.
	* features/rs6000/powerpc-vsx64l.c
	(initialize_tdesc_powerpc_vsx64l): Update.
	* target-descriptions.c (maint_print_c_tdesc_cmd): Emit
	TYPE_VECTOR, not TYPE_FLAGS.

2008-08-24  Tom Tromey  <tromey@redhat.com>

	* xml-tdesc.c (tdesc_end_union): Update.
	* stabsread.c (define_symbol): Update.
	(read_type): Update.
	(read_struct_type): Update.
	(read_enum_type): Update.
	* spu-tdep.c (spu_builtin_type_vec128): Update.
	* sh-tdep.c (sh_push_dummy_call_fpu): Update.
	(sh_push_dummy_call_nofpu): Update.
	* mdebugread.c (parse_symbol): Update.
	(parse_symbol): Update.
	(parse_symbol): Update.
	(upgrade_type): Update.
	* jv-lang.c (java_lookup_class): Update.
	* iq2000-tdep.c (iq2000_pointer_to_address): Update.
	* i386-tdep.c (i386_mmx_type): Update.
	(i386_sse_type): Update.
	* gdbtypes.h (enum type_flag_value): New enum.
	(enum type_instance_flag_value): New enum.
	(TYPE_FLAG_UNSIGNED, TYPE_FLAG_NOSIGN, TYPE_FLAG_STUB,
	TYPE_FLAG_TARGET_STUB, TYPE_FLAG_STATIC, TYPE_FLAG_PROTOTYPED,
	TYPE_FLAG_INCOMPLETE, TYPE_FLAG_VARARGS, TYPE_FLAG_VECTOR,
	TYPE_FLAG_FIXED_INSTANCE, TYPE_FLAG_STUB_SUPPORTED,
	TYPE_FLAG_NOTTEXT): Now enum constants.
	(TYPE_FLAG_CONST, TYPE_FLAG_VOLATILE, TYPE_FLAG_CODE_SPACE,
	TYPE_FLAG_DATA_SPACE, TYPE_FLAG_ADDRESS_CLASS_1,
	TYPE_FLAG_ADDRESS_CLASS_2): Remove.
	(TYPE_INSTANCE_FLAG_CONST, TYPE_INSTANCE_FLAG_VOLATILE,
	TYPE_INSTANCE_FLAG_CODE_SPACE, TYPE_INSTANCE_FLAG_DATA_SPACE,
	TYPE_INSTANCE_FLAG_ADDRESS_CLASS_1,
	TYPE_INSTANCE_FLAG_ADDRESS_CLASS_2): New constants.
	(TYPE_UNSIGNED, TYPE_NOSIGN, TYPE_STUB, TYPE_TARGET_STUB,
	TYPE_STATIC, TYPE_PROTOTYPED, TYPE_INCOMPLETE, TYPE_VARARGS,
	TYPE_VECTOR, TYPE_FIXED_INSTANCE, TYPE_STUB_SUPPORTED,
	TYPE_NOTTEXT): Update.
	(TYPE_FLAG_ADDRESS_CLASS_ALL): Remove.
	(TYPE_INSTANCE_FLAG_ADDRESS_CLASS_ALL): New define.
	(TYPE_VOLATILE, TYPE_CODE_SPACE, TYPE_DATA_SPACE,
	TYPE_ADDRESS_CLASS_1, TYPE_ADDRESS_CLASS_2,
	TYPE_ADDRESS_CLASS_ALL): Update.
	(struct main_type) <flags>: Remove.
	<flag_unsigned, flag_nosign, flag_stub, flag_target_stub,
	flag_static, flag_prototyped, flag_incomplete, flag_varargs,
	flag_vector, flag_stub_supported, flag_nottext,
	flag_fixed_instance>: New fields.
	<nfields, vptr_fieldno>: Move earlier.
	(TYPE_FLAGS): Remove.
	* gdbtypes.c (make_pointer_type): Update.
	(address_space_name_to_int): Update.
	(address_space_int_to_name): Update.
	(make_type_with_address_space): Update.
	(make_cv_type): Update.
	(create_range_type): Update.
	(get_discrete_bounds): Update.
	(create_set_type): Update.
	(make_vector_type): Update.
	(smash_to_method_type): Update.
	(check_typedef): Update.
	(check_stub_method): Update.
	(init_type): Individually assign flag fields.
	(recursive_dump_type): Don't print entire TYPE_FLAGS field.  Do
	print TYPE_FIXED_INSTANCE, TYPE_STUB_SUPPORTED, and TYPE_NOTTEXT.
	(copy_type_recursive): Copy the entire main type.  Don't use
	TYPE_FLAGS.
	* features/rs6000/powerpc-altivec64l.c
	(initialize_tdesc_powerpc_altivec64l): Update.
	* features/rs6000/powerpc-altivec64.c
	(initialize_tdesc_powerpc_altivec64): Update.
	* features/rs6000/powerpc-altivec32l.c
	(initialize_tdesc_powerpc_altivec32l): Update.
	* features/rs6000/powerpc-altivec32.c
	(initialize_tdesc_powerpc_altivec32): Update.
	* features/rs6000/powerpc-7400.c (initialize_tdesc_powerpc_7400):
	Update.
	* features/arm-with-iwmmxt.c (initialize_tdesc_arm_with_iwmmxt):
	Update.
	* dwarf2read.c (read_structure_type): Update.
	(read_enumeration_type): Likewise.
	(process_enumeration_scope): Likewise.
	(read_tag_pointer_type): Likewise.
	(read_subroutine_type): Likewise.
	(read_subroutine_type): Likewise.
	(read_base_type): Likewise.
	* coffread.c (coff_read_enum_type): Update.
	* ada-valprint.c (adjust_type_signedness): Update.
	* ada-typeprint.c (print_record_field_types): Update.
	* ada-lang.c (packed_array_type): Update.
	(empty_record): Don't reset TYPE_FLAGS.
	(ada_template_to_fixed_record_type_1): Update.
	(ada_template_to_fixed_record_type_1): Likewise.
	(template_to_static_fixed_type): Likewise.
	(to_record_with_fixed_variant_part): Likewise.
	(to_fixed_record_type): Likewise.
	(to_fixed_array_type): Likewise.
	(to_static_fixed_type): Likewise.

2008-08-23  Jim Blandy  <jimb@redhat.com>

	PR macros/607:
	* symmisc.c (print_symbol_bcache_statistics): Include statistics
	for the macro bcache.

2008-08-23  Tom Tromey  <tromey@redhat.com>

	* macrotab.h (struct macro_definition) <kind>: Shrink to one bit.
	(argc): Now 31 bits.

2008-08-22  Tom Tromey  <tromey@redhat.com>

	* NEWS: Move macro entries back under "New commands".

2008-08-22  Ulrich Weigand  <uweigand@de.ibm.com>

	* breakpoint.c (create_overlay_event_breakpoint): Rename to ...
	(create_overlay_event_breakpoint_1): ... this.  Add OBJFILE parameter.
	(create_overlay_event_breakpoint): Loop over all objfiles to install
	multiple instances of the overlay event breakpoint if present.

2008-08-22  Ulrich Weigand  <uweigand@de.ibm.com>

	* spu-tdep.c (spu_overlay_new_objfile): Only consider SPU objfiles.
	(info_spu_event_command): Command only supported on SPU architecture.
	(info_spu_signal_command): Likewise.
	(info_spu_mailbox_command): Likewise.
	(info_spu_dma_command): Likewise.
	(info_spu_proxydma_command): Likewise.

2008-08-22  Ulrich Weigand  <uweigand@de.ibm.com>

	* infrun.c (adjust_pc_after_break): Do not call get_thread_regcache
	if the thread has already exited.

2008-08-22  Pedro Alves  <pedro@codesourcery.com>

	* infrun.c (proceed): Move back setting previous_inferior_ptid
	from here ...
	(wait_for_inferior): ... to here.
	(fetch_inferior_event): ... and here.

2008-08-21  Ulrich Weigand  <uweigand@de.ibm.com>

	* gdbarch.sh: Include "regcache.h" into gdbarch.c.
	(deprecated_current_gdbarch_select_hack): Call registers_changed
	instead of reinit_frame_cache.
	* gdbarch.c: Regenerate.

2008-08-21  Ulrich Weigand  <uweigand@de.ibm.com>

	* elfread.c (elf_symtab_read): Do not relocate thread-local symbols.

2008-08-21  Daniel Jacobowitz  <dan@codesourcery.com>

	* xcoffread.c (SYMNAME_ALLOC): Correct syntax.

2008-08-21  Ulrich Weigand  <uweigand@de.ibm.com>

	* findvar.c (locate_var_value): Do not call get_frame_arch
	with a NULL frame argument.

2008-08-21  Ulrich Weigand  <uweigand@de.ibm.com>

	* frame.h (frame_map_regnum_to_name): Remove prototype.
	(frame_map_name_to_regnum): Remove prototype.
	* frame.c (frame_map_regnum_to_name): Remove.
	(frame_map_name_to_regnum): Remove.
	(frame_unwind_register_value): Use user_reg_map_regnum_to_name
	instead of frame_map_regnum_to_name.
	* ax-gdb.c: Include "user-regs.h".
	(gen_expr): Use user_reg_map_name_to_regnum instead of
	frame_map_name_to_regnum.
	* eval.c:  Include "user-regs.h".
	(evaluate_subexp_standard): Use user_reg_map_name_to_regnum
	instead of frame_map_name_to_regnum.
	* infcmd.c (registers_info): Likewise.
	* parse.c: Include "user-regs.h".
	(write_dollar_variable): Use user_reg_map_name_to_regnum
	instead of frame_map_name_to_regnum.
	* tracepoint.c: Include "user-regs.h".
	(encode_actions): Use user_reg_map_name_to_regnum
	instead of frame_map_name_to_regnum.
	* valops.c: Include "user-regs.h".
	(value_fetch_lazy): Use user_reg_map_regnum_to_name instead
	of frame_map_regnum_to_name.

2008-08-21  Ulrich Weigand  <uweigand@de.ibm.com>

	* ppc-linux-tdep.c (ppc64_linux_convert_from_func_ptr_addr): Read
	and manually relocate .opd contents from BFD instead of reading
	them from target memory.

2008-08-21  Daniel Jacobowitz  <dan@codesourcery.com>

	* dwarf2read.c (processing_current_prefix): Delete static
	variable.
	(process_full_comp_unit): Do not set processing_current_prefix.
	(dwarf2_full_name): New function.
	(read_func_scope): Do not set processing_current_prefix.  Use
	determine_prefix.
	(read_structure_type): Do not set processing_current_prefix.  Remove
	unused inner cleanup.
	(process_structure_scope): Do not set processing_current_prefix.
	(read_enumeration_type): Use dwarf2_full_name.
	(determine_class_name): Return a const char *.  Put the result
	on the objfile obstack.  Use dwarf2_full_name.
	(read_namespace_type): New function.
	(read_namespace): Do not create the type here.  Use
	determine_prefix.
	(read_typedef): Use dwarf2_full_name.  Do not pass the name
	to init_type.
	(read_base_type): Do not pass the name to init_type.  Handle
	TYPE_FLAG_NOSIGN.
	(read_unspecified_type): Do not pass the name to init_type.
	(new_symbol): Use dwarf2_full_name instead of
	processing_current_prefix.
	(read_type_die): Do not set processing_current_prefix.  Handle
	DW_TAG_namespace.
	(determine_prefix): Handle specifications.  Return the result
	on the objfile obstack.  Handle unions correctly.

2008-08-21  Daniel Jacobowitz  <dan@codesourcery.com>

	* buildsym.c (add_symbol_to_list): Do not call
	cp_scan_for_anonymous_namespaces here.
	(finish_block): Do not call cp_set_block_scope here.
	* cp-namespace.c (processing_has_namespace_info)
	(processing_current_prefix): Delete.
	(cp_initialize_namespace): Do not initialize
	processing_has_namespace_info.
	(cp_scan_for_anonymous_namespaces): Use SYMBOL_DEMANGLED_NAME.  Do
	not check processing_has_namespace_info.
	(cp_set_block_scope): Take prefix and namespace info flag as
	arguments.  Honor namespaces regardless of a demangled name.
	* cp-support.h (processing_has_namespace_info)
	(processing_current_prefix): Delete declarations.
	(cp_set_block_scope): Update prototype.
	* dwarf2read.c (processing_has_namespace_info)
	(processing_current_prefix): New static variables.
	(read_file_scope): Initialize processing_has_namespace_info.
	(read_func_scope): Call cp_set_block_scope for C++.
	(new_symbol): Call cp_scan_for_anonymous_namespaces for C++.
	* symtab.c (symbol_demangled_name): Accept a const argument.
	* symtab.h (symbol_demangled_name): Update prototype.

2008-08-21  Daniel Jacobowitz  <dan@codesourcery.com>

	* ax-gdb.c (gen_var_ref): Use SYMBOL_LINKAGE_NAME.
	* blockframe.c (find_pc_partial_function): Likewise.
	* buildsym.c (find_symbol_in_list): Likewise.
	* c-valprint.c (c_val_print): Likewise.
	* coffread.c (patch_opaque_types, process_coff_symbol): Likewise.
	(coff_read_enum_type): Likewise.  Use SYMBOL_SET_LINKAGE_NAME.
	* cp-support.c (cp_remove_params): Renamed from remove_params and
	made global.
	(overload_list_add_symbol): Update call to remove_params.
	* cp-support.h (cp_remove_params): Declare.
	* dwarf2read.c (process_enumeration_scope): Use SYMBOL_LINKAGE_NAME.
	(dwarf2_const_value): Use SYMBOL_PRINT_NAME.
	* expprint.c (dump_subexp_body_standard): Likewise.
	* f-valprint.c (info_common_command, there_is_a_visible_common_named):
	Use SYMBOL_LINKAGE_NAME to find symbols and SYMBOL_PRINT_NAME
	for messages.
	* findvar.c (read_var_value): Use SYMBOL_LINKAGE_NAME.
	* gnu-v2-abi.c (gnuv2_value_rtti_type): Likewise.
	* hppa-hpux-tdep.c (hppa32_hpux_in_solib_call_trampoline)
	(hppa_hpux_skip_trampoline_code): Use SYMBOL_LINKAGE_NAME to find
	symbols and SYMBOL_PRINT_NAME for messages.
	* jv-lang.c (add_class_symbol): Use SYMBOL_SET_LINKAGE_NAME.
	* linespec.c (decode_line_2): Use SYMBOL_LINKAGE_NAME.
	* mdebugread.c (parse_symbol): Use SYMBOL_LINKAGE_NAME and
	SYMBOL_SET_LINKAGE_NAME.
	(mylookup_symbol): Use SYMBOL_LINKAGE_NAME.
	* minsyms.c (add_minsym_to_demangled_hash_table): Use
	SYMBOL_SEARCH_NAME.
	(lookup_minimal_symbol): Use SYMBOL_LINKAGE_NAME or
	SYMBOL_MATCHES_SEARCH_NAME, depending on the pass.
	* objfiles.h (ALL_OBJFILE_MSYMBOLS): Use SYMBOL_LINKAGE_NAME.
	* printcmd.c (build_address_symbolic): Use SYMBOL_LINKAGE_NAME.
	(address_info): Use SYMBOL_PRINT_NAME for messages and
	SYMBOL_LINKAGE_NAME for lookups.
	* sol-thread.c (info_cb): Use SYMBOL_PRINT_NAME for messages.
	* stabsread.c (patch_block_stabs, define_symbol)
	(read_type, read_enum_type, common_block_end)
	(cleanup_undefined_types_1, scan_file_globals): Use
	SYMBOL_LINKAGE_NAME, SYMBOL_SET_LINKAGE_NAME, ALL_OBJFILE_MSYMBOLS,
	and SYMBOL_PRINT_NAME.
	* stack.c (print_frame_args): Use SYMBOL_LINKAGE_NAME.
	(print_frame, frame_info): Use SYMBOL_PRINT_NAME for output.  Use
	cp_remove_params instead of cplus_demangle.
	(print_block_frame_labels, print_frame_arg_vars): Use
	SYMBOL_LINKAGE_NAME.
	* symmisc.c (dump_msymbols): Use ALL_OBJFILE_MSYMBOLS and
	SYMBOL_LINKAGE_NAME.
	(dump_symtab_1, print_symbol, print_partial_symbols)
	(maintenance_check_symtabs): Use SYMBOL_LINKAGE_NAME.
	* symtab.h (DEPRECATED_SYMBOL_NAME): Delete.
	(SYMBOL_SET_LINKAGE_NAME): New.
	(SYMBOL_SET_NAMES): Add a comment.
	* tracepoint.c (set_traceframe_context, validate_actionline)
	(collect_symbol, scope_info): Use SYMBOL_LINKAGE_NAME for
	lookups and SYMBOL_PRINT_NAME for output.
	* typeprint.c (typedef_print): Use SYMBOL_LINKAGE_NAME.
	* xcoffread.c (process_xcoff_symbol): Use SYMBOL_SET_LINKAGE_NAME.

2008-08-21  Pedro Alves  <pedro@codesourcery.com>

	* arm-tdep.c (arm_pc_is_thumb): Use obj_section_addr.
	* hppa-hpux-tdep.c (hppa_hpux_find_dummy_bpaddr): Likewise.
	* hppa-linux-tdep.c (hppa_linux_find_global_pointer): Use
	obj_section_addr and obj_section_endaddr.
	* hppa-tdep.c (hppa64_convert_code_addr_to_fptr): Likewise.
	* hppabsd-tdep.c (hppabsd_find_global_pointer): Likewise.
	* ia64-tdep.c (ia64_find_global_pointer): Likewise.
	(find_extant_func_descr): Likewise.
	* solib-frv.c (frv_relocate_main_executable): Use
	obj_section_addr.
	* xstormy16-tdep.c (xstormy16_find_jmp_table_entry): Use
	obj_section_addr and obj_section_endaddr.

2008-08-21  Paul N. Hilfinger  <hilfinger@adacore.com>

	* NEWS: Amplify last entry on boolean types in Ada.

2008-08-20  Daniel Jacobowitz  <dan@codesourcery.com>

	* dwarf2read.c (die_specification, dwarf2_extension, follow_die_ref):
	Make the dwarf2_cu * parameter output as well as input.  Update it if
	we follow a reference to another CU.
	(read_func_scope, determine_class_name, namespace_name, dwarf2_attr)
	(die_type, die_containing_type): Update calls to changed functions.
	Use the returned CU along with the returned DIE.
	(read_namespace): Use dwarf2_attr instead of dwarf2_extension.

2008-08-20  Daniel Jacobowitz  <dan@codesourcery.com>

	* dwarf2read.c (queue_comp_unit): Take an objfile argument.  Read
	in the DIEs here.
	(process_queue): Do not read in the DIEs here.
	(psymtab_to_symtab_1): Update call to queue_comp_unit.
	(read_full_die): Do not call queue_comp_unit from here.
	(maybe_queue_comp_unit): New function.
	(follow_die_ref): Use it.

2008-08-20  Daniel Jacobowitz  <dan@codesourcery.com>

	* dwarf2read.c (struct attribute): Move earlier.
	(struct die_info): Change attrs to a trailing array.
	(dwarf_alloc_die): Take the number of attributes.  Allocate space
	for them.
	(read_full_die): Update call to dwarf_alloc_die.  Do not manually
	allocate attributes.

2008-08-20  Daniel Jacobowitz  <dan@codesourcery.com>

	* dwarf2read.c (REF_HASH_SIZE): Delete.
	(struct dwarf2_cu): Replace die_ref_table with die_hash.
	(struct die_info): Remove next_ref.
	(store_in_ref_table): Remove offset argument.  Rewrite to use
	htab_find_slot_with_hash.
	(die_hash, die_eq): New.
	(read_comp_unit): Allocate the die_hash.
	(read_die_and_children): Update call to store_die_ref.
	(follow_die_ref): Rewrite to use htab_find_with_hash.

2008-08-20  Daniel Jacobowitz  <dan@codesourcery.com>

	* dwarf2read.c (free_die_list, copy_die): Delete.
	(dwarf_alloc_die): Take a CU argument.  Allocate the new DIE
	on the obstack.
	(read_full_die): Update call to dwarf_alloc_die.  Allocate
	attributes on the CU obstack.
	(free_one_comp_unit): Do not call free_die_list.

2008-08-20  Daniel Jacobowitz  <dan@codesourcery.com>

	* dwarf2read.c (read_die_and_children): Ignore NULL DIEs.
	(read_die_and_siblings): Likewise.  Do not add padding DIEs to the
	sibling list.
	(read_full_die): Do not allocate DIEs for abbrev 0.
	(follow_die_ref): Correct error message.

2008-08-20  Pedro Alves  <pedro@codesourcery.com>

	* linespec.c (symtab_from_filename): Also throw NOT_FOUND_ERROR if
	there are no symbols loaded, instead of throwing a generic error.
	(decode_variable): Likewise.

2008-08-20  Pedro Alves  <pedro@codesourcery.com>

	* objfiles.h (struct obj_section): Remove addr and endaddr fields.
	(obj_section_offset, obj_section_addr, obj_section_endaddr): New
	macros.
	* objfiles.c (add_to_objfile_sections): Don't set addr, endaddr
	and offset.  Use size_t instead of unsigned long.
	(build_objfile_section_table): Use size_t instead of unsigned
	long.
	(objfile_relocate): Don't relocate s->addr and s->endaddr, they're
	gone.
	(find_pc_sect_section): Use obj_section_addr and
	obj_section_endaddr.
	* symfile.c (symfile.c): Remove code that maps sections
	offsets in "addr" to the object's sections.
	* blockframe.c (find_pc_partial_function): Use obj_section_endaddr.
	* gcore.c (gcore_create_callback): Use obj_section_addr and
	obj_section_endaddr.
	* maint.c (print_objfile_section_info): Likewise.
	* printcmd.c (sym_info): Use obj_section_addr and
	obj_section_endaddr.
	* symtab.c (fixup_section): Likewise.

2008-08-20  Mark Kettenis  <kettenis@gnu.org>

	* sparc-tdep.c: Make some comments catch up with reality.

2008-08-20  Vladimir Prus  <vladimir@codesourcery.com>

	* NEWS: Mention 'set target-async'

2008-08-19  Vladimir Prus  <vladimir@codesourcery.com>

	* infrun.c (resume): If the thread is placed to the deferred step
        queue, mark it as running.

2008-08-19  Vladimir Prus  <vladimir@codesourcery.com>

	Make sure target supports non-stop.
        * infcmd.c (run_command_1, attach_command): If non-stop mode
        is requested, verify the target supports it.
        * linux-nat.c (linux_nat_supports_non_stop): New.
        (linux_nat_add_target): Register the above.
        * target.c (find_default_supports_non_stop)
        (target_supports_non_stop): New.
        (init_dummy_target): Register find_default_supports_non_stop.
        * target.h (struct target_ops): New field to_supports_non_stop.
        (target_supports_non_stop): New.

2008-08-19  Pedro Alves  <pedro@codesourcery.com>
  	    Vladimir Prus  <vladimir@codesourcery.com>

	* target.c (target_async_permitted, target_async_permitted_1)
        (set_maintenance_target_async_permitted)
        (show_maintenance_target_async_permitted): New.
        (initialize_targets): Register 'set target-async'.
        * target.h (target_async_permitted): Declare.
        * linux-nat.c (linux_nat_async_enabled)
        (linux_nat_async_permitted, set_maintenance_linux_async_permitted)
        (show_maintenance_linux_async_permitted): Remove.
        (sigchld_handler, linux_nat_is_async_p, linux_nat_can_async_p)
        (get_pending_events, linux_nat_async): Use target_async_permitted.
        (linux_nat_set_async_mode): Remove, moving the only used bits
        into...
        (linux_nat_setup_async): This.
        (_initialize_linux_nat): Do not register 'maint set linux-async'.
        Use linux_nat_setup_async.
        * remote.c (remote_async_permitted, remote_async_permitted_set)
        (set_maintenance_remote_async_permitted)
        (show_maintenance_remote_async_permitted): Remove.
        (remote_open_1, remote_terminal_inferior, remote_can_async_p)
        (remote_is_async_p): Use target_async_permitted.
        (_initialize_remote): Don't register 'main set remote-async'.
        * mi/mi-cmds.c (mi_cmds): Register -list-target-features.
        * mi/mi-cmds.h (mi_cmd_list_target_features): New.
        * mi/mi-main.c (mi_cmd_list_target_features): New.

2008-08-19  Vladimir Prus  <vladimir@codesourcery.com>

	* target.c (maybe_kill_then_attach)
        (maybe_kill_then_create_inferior): Remove.
        (update_current_target): Do not default to_attach,
        to_create_inferiour, to_is_async_p.

2008-08-19  Paul N. Hilfinger  <hilfinger@adacore.com>
	
	Changes for supporting boolean types in debugging data.
	* ada-lang.c (discrete_type_high_bound,discrete_type_low_bound): Change 
	API to return LONGEST values rather than struct values.
	(ada_evaluate_subexp): Change to use new API of discrete_type_low_bound
	and discrete_type_high_bound.
	(to_fixed_range_type): Create a range type in cases where 
	argument is base type and its limits are representable as ints.
	(ada_is_modular_type): Correct so that base type must be integral.
	* ada-lex.l (TRUEKEYWORD,FALSEKEYWORD): Make 'true' and 'false' 
	keywords when they appear alone, since we are phasing out 
	direct representation of these identifiers in debugging data.
	* ada-exp.y: Define 'true' and 'false' as primaries.
	(type_boolean): New function.
	(type_int,type_long,type_long_long,type_floattype_double)
	(type_long_double): Remove uses of current_gdbarch for consistency
	with type_boolean.
	(write_int): Change comment to indicate that it might write boolean 
	constant as well.
	* ada-typeprint.c (ada_print_type): Print '(false, true)' for boolean
	type, since will no longer be represented as enumerated type in 
	debugging data.
	* ada-valprint.c (print_optional_low_bound): Handle boolean case
	as well.
	* NEWS: Note support boolean types.
	
2008-08-18  Pedro Alves  <pedro@codesourcery.com>

	* bsd-uthread.c (bsd_uthread_close): New.
	(bsd_uthread_deactivate): Don't cleanup here, just unpush the
	target.
	(bsd_uthread_solib_loaded): Fix typo.
	(bsd_uthread_target): Register bsd_uthread_close.

2008-08-18  Pedro Alves  <pedro@codesourcery.com>

	* corelow.c (core_open): Assume there was no upper layer left
	behind from a previous inferior.
	* target.c (pop_all_targets): Rename to ...
	(pop_all_targets_above): ... this.  Add a target stratum
	parameter.  Use it instead of hardcoding the dummy_stratum.
	(pop_all_targets): New, defer to pop_all_targets_above.
	(target_preopen): Use pop_all_targets_above.
	* target.h (pop_all_targets_above): Declare.

2008-08-18  Pedro Alves  <pedro@codesourcery.com>

	* gdbthread.h (thread_change_ptid): Declare.
	* infrun.c (infrun_thread_ptid_changed): New.
	(_initialize_infrun): Attach infrun_thread_ptid_changed to the
	thread_ptid_changed observer.
	* regcache.c (regcache_thread_ptid_changed): New.
	(_initialize_regcache): Attach regcache_thread_ptid_changed to the
	thread_ptid_changed observer.
	* thread.c (thread_change_ptid): New.

2008-08-18  Tom Tromey  <tromey@redhat.com>

	* symfile.c (reread_symbols): Update.
	* solib-sunos.c (allocate_rt_common_objfile): Update.
	* objfiles.c (allocate_objfile): Update.
	* objfiles.h (struct objfile) <md, mmfd, deprecated_obj_private>:
	Remove.

2008-08-18  Tom Tromey  <tromey@redhat.com>

	* gdbtypes.c (copy_type_recursive): Allocate 'stored' on objfile's
	obstack.

2008-08-18  Daniel Jacobowitz  <dan@codesourcery.com>

	* rs6000-tdep.c (struct rs6000_framedata): Add gpr_mask, used_bl,
	lr_register.
	(rs6000_in_function_epilogue_p): Check for bctr.
	(skip_prologue): Initialize lr_register.  Set lr_reg to a register
	number.  Set gpr_mask and used_bl.  Continue scanning while some
	expected registers are not saved.  Set lr_register if LR is not
	stored.
	(rs6000_frame_cache): Handle gpr_mask and lr_register.

2008-08-17  Tom Tromey  <tromey@redhat.com>

	PR gdb/1535:
	* breakpoint.c (CATCH_PERMANENT, CATCH_TEMPORARY): New macros.
	(ep_find_event_name_end): Remove.
	(catch_fork_temporary, catch_vfork_temporary,
	catch_fork_permanent, catch_vfork_permanent): New constants.
	(catch_vfork, catch_fork): Remove.
	(catch_fork_command_1): Add 'command' argument.  Remove
	'fork_kind' and 'tempflag'.  Handle NULL 'arg'.  Update switch for
	all cases.
	(catch_exec_command_1): Add 'command' argument; remove
	'tempflag'.  Handle NULL 'arg'.
	(catch_load_command_1): Likewise.
	(catch_unload_command_1): Likewise.
	(catch_ada_exception_command): Likewise.
	(catch_assert_command): Likewise.
	(catch_catch_command): New function.
	(catch_throw_command): Likewise.
	(catch_command_1): Remove.
	(catch_command): Just call error.
	(tcatch_command): Likewise.
	(catch_cmdlist): New global.
	(tcatch_cmdlist): Likewise.
	(add_catch_command): New function.
	(_initialize_breakpoint): Create "catch" and "tcatch" as prefix
	commands.  Create all catch sub-commands.

2008-08-17  Pedro Alves  <pedro@codesourcery.com>

	* gdbthread.h: Add comments.
	* stack.c (get_selected_block): Return 0 on an exited thread.
	* top.c (execute_command): Check for is_stopped, not !is_running.
	* event-top.c (command_handler): Likewise.

2008-08-16  Pedro Alves  <pedro@codesourcery.com>

	* mi/mi-main.c (mi_cmd_exec_next, mi_cmd_exec_next_instruction)
	(mi_cmd_exec_step, mi_cmd_exec_step_instruction)
	(mi_cmd_exec_finish): Remove "return".

2008-08-16  Pedro Alves  <pedro@codesourcery.com>

	* target.h (pop_all_targets): Declare.
	* target.c (pop_all_targets): New.
	* top.c (quit_target): Pop all targets instead of just closing the
	current.

2008-08-16  Vladimir Prus  <vladimir@codesourcery.com>
	    Thiago Jung Bauermann  <bauerman@br.ibm.com>

	* cli-script.c (read_next_line): Add parse_commands argument.
	(recurse_read_control_structure): Adapt to new read_next_line
	signature.
	(read_command_lines): Add parse_commands argument.
	(define_command): Adapt to new read_command_lines signature.
	(document_command): Likewise.
	* breakpoint.c (commands_command): Likewise.
	* defs.h (read_command_lines): Adjust function prototype.

2008-08-16  Paul N. Hilfinger  <hilfinger@adacore.com>

	* ada-lang.c (pos_atr): Account for the possibility that the 
	argument may be a reference.

2008-08-16  Paul N. Hilfinger  <hilfingr@adacore.com>

	* xcoffread.c (scan_xcoff_symtab): Do not include global symbols
	('F' format) for @FIX names generated by the loader, retaining only
	the minimal symbols (and no partial symbol tables) for these names.
	Fixes warning messages about symbols that are found in partial 
	symbol tables, but not full symbol tables.

2008-08-16  Pedro Alves  <pedro@codesourcery.com>

	* infrun.c (fetch_inferior_event): Only call normal_stop if not
	stopping quietly.

2008-08-15  Luis Machado  <luisgpm@br.ibm.com>

	* rs6000-tdep: Include "features/rs6000/powerpc-vsx32.c".
	Include "features/rs6000/powerpc-vsx64.c".
	(ppc_supply_vsxregset): New function.
	(ppc_collect_vsxregset): New function.
	(IS_VSX_PSEUDOREG): New macro.
	(IS_EFP_PSEUDOREG): New macro.
	(vsx_register_p): New function.
	(ppc_vsx_support_p): New function.
	(rs6000_builtin_type_vec128): New function.
	(rs6000_register_name): Hide upper halves of vs0~vs31.  Return
	correct names for VSX registers and EFPR registers.
	(rs6000_pseudo_register_type): Return correct types for VSX
	and EFPR registers.
	(rs6000_pseudo_register_reggroup_p): Return correct group for
	VSX and EFPR registers.
	(ppc_pseudo_register_read): Rename to dfp_pseudo_register_read.
	(ppc_pseudo_register_write): Rename to dfp_pseudo_register_write.
	(vsx_pseudo_register_read): New function.
	(vsx_pseudo_register_write): New function.
	(efpr_pseudo_register_read): New function.
	(efpr_pseudo_register_write): New function.
	(rs6000_pseudo_register_read): Call new VSX and EFPR read functions.
	(rs6000_pseudo_register_write): Call new VSX and EFPR write functions.
	(rs6000_gdbarch_init): Declare have_vsx.
	Initialize new upper half VSX registers.
	Initialize VSX-related and EFPR-related pseudo-registers variables.
	Adjust the number of pseudo registers accordingly.

	* ppc-linux-nat.c: Define PTRACE_GETVSXREGS, PTRACE_SETVSXREGS
	and SIZEOF_VSRREGS.
	(gdb_vsxregset_t): New type.
	(have_ptrace_getsetvsxregs): New variable.
	(fetch_vsx_register): New function.
	(fetch_register): Handle VSX registers.
	(fetch_vsx_registers): New function.
	(fetch_ppc_registers): Handle VSX registers.
	(store_ppc_registers): Handle VSX registers.
	(store_vsx_register): New function.
	(store_register): Handle VSX registers.
	(store_vsx_registers): New function.
	(ppc_linux_read_description): Handle VSX-enabled inferiors.
	(gdb_vsxregset_t): New type.
	(supply_vsxregset): New function.
	(fill_vsxregset): New function.

	* ppc-tdep.h (vsx_register_p): New prototype.
	(vsx_support_p): New prototype.
	(ppc_vsr0_regnum): New variable.
	(ppc_vsr0_upper_regnum): Likewise.
	(ppc_efpr0_regnum): Likewise.
	(ppc_builtin_type_vec128): New type.
	(ppc_num_vsrs): New constant.
	(ppc_num_vshrs): New constant.
	(ppc_num_efprs): Likewise.
	Define POWERPC_VEC_VSX PPC_VSR0_UPPER_REGNUM and PPC_VSR31_UPPER_REGNUM.
	(ppc_supply_vsxregset): New prototype.
	(ppc_collect_vsxregset): New prototype.

	* ppc-linux-tdep.c: Include "features/rs6000/powerpc-vsx32l.c"
	Include "features/rs6000/powerpc-vsx64l.c".
	(_initialize_ppc_linux_tdep): Initialize VSX-enabled targets.
	(ppc_linux_regset_sections): Add new ".reg-ppc-vsx" field.
	(ppc32_linux_vsxregset): New 32-bit VSX-enabled regset.
	(ppc_linux_regset_from_core_section): Handle VSX core section.
	(ppc_linux_core_read_description): Support VSX-enabled core files.

	* ppc-linux-tdep.h: Declare *tdesc_powerpc_vsx32l
	Declare tdesc_powerpc_vsx64l

	* corelow.c (get_core_register_section): Support VSX-enabled
	core files.

	* features/rs6000/power-vsx.xml: New VSX descriptions.
	* features/rs6000/powerpc-vsx32.xml: New file.
	* features/rs6000/powerpc-vsx32l.xml: New file.
	* features/rs6000/powerpc-vsx64.xml: New file.
	* features/rs6000/powerpc-vsx64l.xml: New file.
	* features/rs6000/powerpc-vsx32.c: New file (generated).
	* features/rs6000/powerpc-vsx32l.c: New file (generated).
	* features/rs6000/powerpc-vsx64.c: New file (generated).
	* features/rs6000/powerpc-vsx64l.c: New file (generated).
	* features/Makefile: Updated with new descriptions.
	* regformats/rs6000/powerpc-vsx32l.dat: New file (generated).
	* regformats/rs6000/powerpc-vsx64l.dat: New file (generated).

2008-08-15  Vladimir Prus  <vladimir@codesourcery.com>

	* ia64-linux.nat (_initialize_ia64_linux_nat): Don't
	call linux_target twice.

2008-08-14  Aleksandar Ristovski  <aristovski@qnx.com>

	* nto-tdep.c (lm_info): Updated struct lm_info definition from
	solib-svr4.c
	(LM_ADDR): Use l_addr if available; if not, use link map and set 
	l_addr.

2008-08-14  Tom Tromey  <tromey@redhat.com>

	* macrocmd.c (macro_define_command): Check for NULL argument.
	(macro_undef_command): Likewise.

2008-08-14  Pedro Alves  <pedro@codesourcery.com>

	* infcmd.c (continue_1): Add an ERROR_NO_INFERIOR call.

2008-08-13  Pedro Alves  <pedro@codesourcery.com>

	* breakpoint.c (always_inserted_auto, always_inserted_on)
	(always_inserted_off, always_inserted_enums): New.
	(always_inserted_mode): Change type to char* and point to
	always_inserted_auto.
	(show_always_inserted_mode): In auto mode, also show the current
	effect of the option.
	(breakpoints_always_inserted_mode): Adjust for the new auto mode.
	(_initialize_breakpoint): Make the "set breakpoints
	always-inserted" command an enum command.  Extend help to describe
	the auto mode.

2008-08-13  Ulrich Weigand  <uweigand@de.ibm.com>

	* spu-tdep.c (info_spu_dma_command): Respect TSQV (tag status
	query valid) bit.  Ignore bits outside the condition field.
	(info_spu_proxydma_command): Ignore bits outside the field.

2008-08-12  Michael Snyder  <msnyder@vmware.com>

	* MAINTAINERS: Update my email address.

2008-08-12  Ulrich Weigand  <uweigand@de.ibm.com>

	* ppc-linux-nat.c (ppc_linux_get_hwcap): Really get AT_HWCAP.

2008-08-12  Pedro Alves  <pedro@codesourcery.com>

	Add no-ack mode to the remote protocol --- optionally stop ACKing
	packets and responses when we have a reliable communication
	medium.

	Based on Apple's GDB, by Jason Molenda <jmolenda@apple.com>

	* remote.c (struct remote_state): Add noack_mode field.
	(PACKET_QStartNoAckMode): New.
	(remote_start_remote): Don't any outstanding packet here.
	(remote_open_1): Clear noack_mode.  Ack any outstanding packet
	here.  Activate noack mode if requested.
	(remote_protocol_features): Add QStartNoAckMode.
	(remote_open_1):
	(putpkt_binary): Don't send ack in noack mode.
	(read_frame): Don't recompute the checksum in noack mode.
	(getpkt_sane): Skip sending ack if in noack mode.
	(_initialize_remote): Add set/show remote noack mode.
	* NEWS:  Note the new features.

2008-08-11  Kevin Buettner  <kevinb@redhat.com>

 	* rs6000-tdep.c (BL_MASK, BL_INSTRUCTION, BL_DISPLACEMENT_MASK):
 	New macros.
 	(rs6000_skip_main_prologue): New function.
 	(rs6000_gdb_arch_init): Register rs6000_skip_main_prologue.

2008-08-11  Sandra Loosemore  <sandra@codesourcery.com>

	* MAINTAINERS (Write After Approval):  Add self.

2008-08-11  Stan Shebs  <stan@codesourcery.com>

	ARM BE8 support.
	* disasm.c (gdb_disassemble_info): Set endian_code.
	* gdbarch.sh (gdbarch_info): New field byte_order_for_code.
	* gdbarch.h, gdbarch.c: Regenerate.
	* arch-utils.c (initialize_current_architecture): Set the
	default byte_order_for_code.
	(gdbarch_info_init): Ditto.
	(gdbarch_info_fill): Ditto.
	* arm-tdep.c (SWAP_INT, SWAP_SHORT): New macros.
	(thumb_analyze_prologue): Swap halfword if code endianness is
	different from general endianness.
	(arm_skip_prologue): Similarly.
	(arm_scan_prologue): Ditto.
	(thumb_get_next_pc): Ditto.
	(arm_get_next_pc): Ditto.
	(arm_gdbarch_init): Set byte_order_for_code from BE8 flag,
	choose correct endianness for breakpoints.

2008-08-10  Pedro Alves  <pedro@codesourcery.com>

	* bsd-kvm.c: Include "gdbthread.h".
	(bsd_kvm_ptid): New.
	(bsd_kvm_open): Add a main thread.
	(bsd_kvm_close): Delete it.
	(bsd_kvm_thread_alive): New.
	(bsd_kvm_pid_to_str): New.
	(bsd_kvm_add_target): Register bsd_kvm_thread_alive and
	bsd_kvm_pid_to_str.
	(bsd_kvm_add_target): Initialize bsd_kvm_ptid.

2008-08-09  Pedro Alves  <pedro@codesourcery.com>

	* buildsym.c (start_subfile): Properly cast sentinel in concat
	call.
	* cp-name-parser.y: Include "config.h".
	* xml-tdesc.c (fetch_xml_from_file): Properly cast sentinel in
	concat call.
	* gdb_select.h: Include sys/time.h if sys/select.h is not
	available.

2008-08-09  Pedro Alves  <pedro@codesourcery.com>

	* go32-nat.c: Include "gdbthread.h".
	(go32_stop, go32_kill_inferior): Delete the main thread.
	(go32_create_inferior): Add it.
	(go32_thread_alive, go32_pid_to_str): New.
	(init_go32_ops): Register go32_thread_alive and go32_pid_to_str.

2008-08-09  Pedro Alves  <pedro@codesourcery.com>

	* go32-nat.c (fetch_register, store_register): Pass the regcache
	gdbarch to i386_fp_regnum_p and i386_fpc_regnum_p.
	(go32_xfer_memory): Change type of myaddr parameter to gdb_byte.
	(struct seg_descr, struct seg_descr): pack the whole struct
	instead of each member individually.

2008-08-09  Andreas Schwab  <schwab@suse.de>

	* python/python.c (_initialize_python): Use unabbreviated commands
	in prefix name.

2008-08-09  Daniel Jacobowitz  <dan@codesourcery.com>

	* Makefile.in (stamp-h): Also create .deps.

2008-08-09  Tom Tromey  <tromey@redhat.com>

	* Makefile.in (generated_files): Add GNULIB_H.

2008-08-09  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>

	* solib-pa64.c (pa64_solib_create_inferior_hook): Don't set
	DT_HP_DEBUG_PRIVATE.  Add warning if DT_HP_DEBUG_PRIVATE is not set.
	Revise comment.
	(pa64_current_sos): Remove map private warning warning.
	* solib-som.c: Include string.h and sys/utsname.h.
	(get_hpux_major_release): New function.
	(som_solib_create_inferior_hook): Read dynamic linker header.  Warn
	about shared library private mapping on HP-UX 11 and later.  Only force
	private mapping of shared libraries on HP-UX 10 and earlier.
	(link_map_start): Delete warning.

2008-08-09  Xuepeng Guo  <xuepeng.guo@intel.com>
	    H.J. Lu  <hongjiu.lu@intel.com>
	    Mark Kettenis <kettenis@gnu.org>

	* amd64-tdep.c (amd64_frame_cache): Add saved_sp_reg.
	(amd64_init_frame_cache): Initialize saved_sp_reg.
	(amd64_analyze_stack_align): New.
	(amd64_analyze_prologue): Call it.
	(amd64_frame_cache): Use saved_sp_reg if it is invalid.  Don't set
	%rip to 8 when halfway aligning the stack.

	* amd64-tdep.h (amd64_regnum): Add AMD64_R9_REGNUM to
	AMD64_R14_REGNUM.

	* i386-tdep.c (i386_frame_cache): Remove stack_align.  Add
	saved_sp_reg.
	(i386_alloc_frame_cache): Remove stack_align.  Initialize
	saved_sp_reg to -1.
	(i386_analyze_stack_align): Rewrite.
	(i386_frame_cache): Use saved_sp_reg if it is valid.

2008-08-09  Ulrich Weigand  <uweigand@de.ibm.com>

	* target.c: Include "solib.h".
	(target_pre_inferior): Call no_shared_libraries.
	* infcmd.c (run_command_1): Do not call objfile_purge_solibs
	or clear_solib.
	(attach_command): Do not call clear_solib.

2008-08-09  Mark Kettenis  <kettenis@gnu.org>

	* i386obsd-nat.c (i386obsd_supply_pcb): Supply the right bytes for
	the %eip register.

2008-08-08  Tom Tromey  <tromey@redhat.com>

	* Makefile.in (python.o): Remove dependencies.  Use COMPILE and
	POSTCOMPILE.
	(python-utils.o): Likewise.

2008-08-08  Andreas Schwab  <schwab@suse.de>

	* corefile.c (_initialize_core): Remove spurious paren from set
	gnutarget doc string.

2008-08-08  Luis Machado  <luisgpm@br.ibm.com>

	* ppc-linux-nat.c: Include "auxv.h" and "elf/common.h".
	Define PPC_FEATURE_BOOKE.
	(ppc_linux_get_hwcap): New function.
	(ppc_linux_region_ok_for_hw_watchpoint): Handle PowerPC 440
	4-bytes alignment restrictions.
	(ppc_linux_insert_watchpoint): Handle PowerPC 440-specific
	positioning of the read/write flags.
	(ppc_linux_watchpoint_addr_within_range): Handle PowerPC 440
	4-bytes alignment.

2008-08-08  Pedro Alves  <pedro@codesourcery.com>

	Use ptid_t.tid to store thread ids instead of ptid_t.pid.

	* win32-nat.c (win32_add_thread): Change thread argument type to
	ptid_t.  Adjust.
	(win32_add_thread): Adjust.
	(win32_delete_thread): Change thread argument type to ptid_t.
	Adjust.
	(win32_fetch_inferior_registers, win32_store_inferior_registers)
	(win32_resume, get_win32_debug_event, get_win32_debug_event)
	(win32_wait, win32_pid_to_exec_file, win32_pid_to_str): Adjust.
	(init_win32_ops): Put to_magic last.
	(win32_win32_thread_alive): Adjust.

2008-08-08  Pedro Alves  <pedro@codesourcery.com>

	* remote-m32r-sdi.c (m32r_thread_alive, m32r_pid_to_str): New.
	(init_m32r_ops): Register m32r_thread_alive and m32r_pid_to_str.

2008-08-08  Pedro Alves  <pedro@codesourcery.com>

	* remote-m32r-sdi.c: Include "gdbthread.h".
	(remote_m32r_ptid): New.
	(m32r_close): Delete the main thread.
	(m32r_resume): Set inferior_ptid toA remote_m32r_ptid. Add the
	main thread.
	(m32r_kill, m32r_load, sdireset_command): Delete the main thread.
	(_initialize_remote_m32r): Initialize remote_m32r_ptid.

2008-08-07  Tom Tromey  <tromey@redhat.com>
	    Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>

	* aclocal.m4, configure: Rebuild.
	* configure.in: Call ZW_CREATE_DEPDIR,
	ZW_PROG_COMPILER_DEPENDENCIES, AC_PROG_MAKE_SET.
	(MAKE, GMAKE): New substs.
	* acinclude.m4: Include depstand.m4.
	* Makefile.in (DEPMODE, DEPDIR, COMPILE.post, COMPILE.pre,
	COMPILE, POSTCOMPILE, depcomp): New variables.
	Remove all _h variables.
	Remove many .o targets.
	($(srcdir)/copying.c): avoid backslash-newline after comment
	sign (@maintainer_mode_true@).
	(HFILES_NO_SRCDIR): Regenerate.
	(generated_files): New variable.
	(all_gdbtk_cflags): Likewise.
	(.c.o): Rewrote.
	(init.o, version.o, copying.o): Remove.
	(distclean): Remove DEPDIR.
	(test-cp-name-parser.o, hpux-thread.o, main.o, monitor.o,
	printcmd.o, procfs.o, v850ice.o): Rewrite.
	(cli-cmds.o, cli-decode.o, cli-dump.o, cli-interp.o, cli-logging.o,
	cli-script.o, cli-setshow.o, cli-utils.o): Likewise.
	(gdbtk.o, gdbtk-bp.o, gdbtk-cmds.o, gdbtk-hooks.o, gdbtk-interp.o,
	gdbtk-main.o, gdbtk-register.o, gdbtk-stack.o, gdbtk-varobj.o,
	gdbtk-wrapper.o): Likewise.
	(mi-cmd-break.o, mi-cmd-disas.o, mi-cmd-env.o, mi-cmd-file.o,
	mi-cmds.o, mi-cmd-stack.o, mi-cmd-target.o, mi-cmd-var.o,
	mi-console.o, mi-getopt.o, mi-interp.o, mi-main.o, mi-out.o,
	mi-parse.o, mi-symbol-cmds.o, mi-common.o, signals.o, tui.o,
	tui-command.o, tui-data.o, tui-disasm.o, tui-file.o, tui-hooks.o,
	tui-interp.o, tui-io.o, tui-layout.o, tui-main.o, tui-out.o,
	tui-regs.o, tui-source.o, tui-stack.o, tui-win.o, tui-windata.o,
	tui-wingeneral.o, tui-winsource.o): Likewise.
	(all_object_files): New variable.
	($(all_object_files)): New target.
	Include dependency files, when using GNU Make.

2008-08-07  Ulrich Weigand  <uweigand@de.ibm.com>

	* spu-tdep.c (info_spu_dma_cmdlist): Only show entries with
	the valid bit set.  Ensure display order respects partial
	order defined by dependency bits.

2008-08-06  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>

	* solib-pa64.c (read_dld_descriptor): Return zero if load map is not
	setup.

2008-08-06  Mark Kettenis  <kettenis@gnu.org>

	* i386obsd-nat.c (i386obsd_supply_pcb): Adjust for changes in
	OpenBSD 4.3.

2008-08-06  Vladimir Prus  <vladimir@codesourcery.com>
	    Tom Tromey  <tromey@redhat.com>
	    Thiago Jung Bauermann  <bauerman@br.ibm.com>
	    Doug Evans  <dje@google.com>

	* Makefile.in (SUBDIR_PYTHON_OBS, SUBDIR_PYTHON_SRCS,
	SUBDIR_PYTHON_DEPS, SUBDIR_PYTHON_LDFLAGS, SUBDIR_PYTHON_CFLAGS,
	PYTHON_CFLAGS): New.
	(python_h, python_internal_h): New.
	(cli-script.o): Depend on python.h
	(python.o, python-utils.o): New.
	* cli/cli-script.c (print_command_lines): Handle python_control.
	(execute_control_command): Handle python_control.
	(execute_control_command_untraced): New function.
	(while_command): Call execute_control_command_untraced.
	(if_command): Likewise.
	(get_command_line): Remove static attribute.
	(read_next_line): Handle "python".
	(recurse_read_control_structure): Handle python_control.
	(read_command_lines): Handle python_control.
	Include python.h.
	* cli/cli-script.h (get_command_line): Add prototype.
	(execute_control_command_untraced): Likewise.
	* configure.ac: Add --with-python.
	* defs.h (enum command_control_type) <python_control>: New
	constant.
	* python/python-internal.h: New file.
	* python/python.c: New file.
	* python/python.h: New file.
	* python/python-utils.c: New file.
	* NEWS: Mention Python scripting support and its new commands.

2008-08-06  Ulrich Weigand  <uweigand@de.ibm.com>

	* spu-tdep.c (spu_gdbarch_init): Call set_gdbarch_frame_red_zone_size.

2008-08-06  Phil Muldoon  <pmuldoon@redhat.com>

	* MAINTAINERS (Write After Approval): Add self.

2008-08-06  Phil Muldoon  <pmuldoon@redhat.com>

	* breakpoint.c (hw_breakpoint_used_count): Use breakpoint_enabled.
	(insert_breakpoint_locations): Likewise.

2008-08-05  Phil Muldoon  <pmuldoon@redhat.com>

	* breakpoint.c (create_longjmp_breakpoint): Remove unused struct
	breakpoint.
	(set_longjmp_breakpoint): Likewise.

2008-08-04  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>

	PR build/2490
	* solib-pa64.c: Only compile if both HAVE_ELF_HP_H and __LP64__ are
	defined.

2008-08-05  Tom Tromey  <tromey@redhat.com>

	* bcache.c (deprecated_bcache_added): Initialize obstack.
	(bcache_xmalloc): Don't initialize obstack.
	(bcache_xfree): Conditionally free obstack.
	(bcache_memory_used): Update.

2008-08-05  Tom Tromey  <tromey@redhat.com>

	* symfile.c (add_psymbol_to_bcache): Return a const pointer.  Use
	bcache_full.
	(append_psymbol_to_list): Accept a const pointer.
	(add_psymbol_to_list): Fix const correctness.
	* bcache.h: (deprecated_bcache_added, deprecated_bcache): Remove.
	(bcache_full): Declare.
	* bcache.c (bcache_data, deprecated_bcache): Remove.
	(bcache): Use bcache_full.
	(bcache_full): Rename from deprecated_bcache_added.  Change return
	type.

2008-08-04  Stan Shebs  <stan@codesourcery.com>

	* solib-svr4.c (BKPT_AT_SYMBOL): Remove, always defined.
	(bkpt_names): Remove SOLIB_BKPT_NAME, never defined.
	(enable_break): Remove test of BKPT_AT_SYMBOL.

2008-08-02  Keith Seitz  <keiths@redhat.com>

	* acinclude.m4: Include ../config/tcl.m4 to pick up
	standard Tcl configury bits.
	Remove all Tcl, Tk, Itcl, Itk, etc definitions.
	* configure.ac: Don't check if ../itcl exists when building
	gdbtk. It could be installed.
	Rewrite gdbtk configury to allow for using system-supplied
	Tcl and Tk. Gdbtk no longer requires build-time access to
	itcl and itk.
	* Makefile.in: Remove everything related to itcl and itk.
	Rewrite the Tcl bits for gdbtk to correspond to rewrite of
	configure.ac.
	Remove v850ice.o build rule.
	(ALL_TCL_CFLAGS): New convenience defintion. Change all
	gdbtk sources to use it.
	* configure: Regenerate.

2008-07-31  Stan Shebs  <stan@codesourcery.com>

	* coffread.c (coff_symtab_read): Remove FUNCTION_EPILOGUE_SIZE.

2008-07-30  Stan Shebs  <stan@codesourcery.com>

	* objfiles.c (TARGET_KEEP_SECTION): Remove.
	(add_to_objfile_sections): Remove use.

2008-07-29  Tom Tromey  <tromey@redhat.com>

	* cli/cli-decode.c (lookup_cmd_1): Use memcpy.
	(lookup_cmd_composition): Likewise.

2008-07-29  Tom Tromey  <tromey@redhat.com>

	* cli/cli-cmds.c (edit_command): Remove unused variables.  Delete
	dead code.  Fix indentation.

2008-07-29  Stan Shebs  <stan@codesourcery.com>

	* main.c (captured_main): Remove long-unused #if 0 blocks.

2008-07-28  Tom Tromey  <tromey@redhat.com>

	* annotate.h (deprecated_annotate_starting_hook): Remove.
	(deprecated_annotate_stopped_hook): Remove.
	(deprecated_annotate_exited_hook): Remove.
	* Makefile.in (annotate.o): Depend on observer_h.
	* top.c (deprecated_delete_breakpoint_hook): Remove.
	(deprecated_create_breakpoint_hook): Likewise.
	(deprecated_modify_breakpoint_hook): Likewise.
	* interps.c (clear_interpreter_hooks): Update for removed hooks.
	* breakpoint.c (mention): Don't call removed hook.
	(delete_breakpoint): Likewise.
	(disable_breakpoint): Likewise.
	(do_enable_breakpoint): Likewise.
	* annotate.c: Include observer.h.
	(breakpoint_changed): Change type of argument.
	(_initialize_annotate): Register observers.
	(deprecated_annotate_starting_hook): Remove.
	(deprecated_annotate_stopped_hook): Remove.
	(deprecated_annotate_exited_hook): Remove.
	(annotate_starting): Update for hook removal.
	(annotate_stopped): Likewise.
	(annotate_exited): Likewise.
	* defs.h (deprecated_delete_breakpoint_hook): Remove.
	(deprecated_create_breakpoint_hook): Likewise.
	(deprecated_modify_breakpoint_hook): Likewise.

2008-07-28  Tom Tromey  <tromey@redhat.com>

	* main.c (captured_main): Don't use BEFORE_MAIN_LOOP_HOOK.

2008-07-27  Daniel Jacobowitz  <dan@codesourcery.com>

	* configure.ac: Check for the GNU/Linux ptrace signature.
	* configure: Regenerated.

2008-07-27  Daniel Jacobowitz  <dan@codesourcery.com>

	* linux-nat.c (resume_callback): Add more debugging output.
	(linux_nat_has_pending_sigint): New function, based on
	linux_nat_has_pending.
	(set_ignore_sigint, maybe_clear_ignore_sigint): New functions.
	(stop_wait_callback): Remove flush_mask handling.  Honor
	ignore_sigint.  Call maybe_clear_ignore_sigint.  Pass NULL
	to recursive calls.
	(linux_nat_has_pending, flush_callback): Remove.
	(linux_nat_filter_event): Check for ignore_sigint.
	(linux_nat_wait): Remove flush_mask support and call to
	flush_callback.  Use set_ignore_sigint and maybe_clear_ignore_sigint.
	* linux-nat.h (struct lwp_info): Add ignore_sigint field.

2008-07-27  Daniel Jacobowitz  <dan@codesourcery.com>

	* linux-nat.c (count_events_callback, select_event_lwp_callback): Only
	report events from resumed threads.

2008-07-27  Daniel Jacobowitz  <dan@codesourcery.com>

	* mips-linux-tdep.c (mips_linux_syscall_next_pc): New function.
	(mips_linux_init_abi): Set tdep->syscall_next_pc.
	* mips-tdep.c (enum mips_fpu_type, struct gdbarch_tdep): Move to
	mips-tdep.h.
	(mips32_next_pc): Handle the syscall instruction.
	* mips-tdep.h (enum mips_fpu_type, struct gdbarch_tdep): New,
	from mips-tdep.c.  Add syscall_next_pc to gdbarch_tdep.

2008-07-26  Tom Tromey  <tromey@redhat.com>

	PR gdb/1158:
	* valops.c (value_struct_elt): Treat function-valued field as a
	static method.

2008-07-26  Tom Tromey  <tromey@redhat.com>

	PR gdb/1136:
	* macroexp.c (get_punctuator) <punctuators>: Rearrange to put
	longer tokens first.

2008-07-26  Vladimir Prus  <vladimir@codesourcery.com>

	Kill cmd_async_ok.
	* cli/cli-decode.h (CMD_ASYNC_OK, set_cmd_async_ok)
	(get_cmd_async_ok): Remove.
	* cli/cli-decode.c (set_cmd_async_ok, get_cmd_async_ok): Remove.
	* cli/cli-cmds.c (init_cli_cmds): Don't use set_cmd_async_ok.
	* infcmd.c (_initialize_infcmd): Likewise.
	* thread.c (_initialize_thread): Likewise.

2008-07-25  Joseph Myers  <joseph@codesourcery.com>

	* mips-tdep.c (mips_n32n64_push_dummy_call): Handle passing
	128-bit long doubles in even-odd pairs of FPRs.  Do not
	right-align float arguments for big-endian.
	(mips_n32n64_return_value): Apply return value convention for
	structs containing one or two floating-point values to soft-float
	as well as hard-float.  Handle 128-bit long doubles in such
	structs.
	(mips_o32_push_dummy_call): Only skip one integer register for a
	float argument passed in an FPR.

2008-07-25  Tom Tromey  <tromey@redhat.com>

	* tui/tui-hooks.c: Include observer.h.
	(tui_event_default, tui_old_event_hooks, tui_event_hooks):
	Remove.
	(tui_bp_created_observer, tui_bp_deleted_observer,
	tui_bp_modified_observer): New globals.
	(tui_install_hooks): Use observers, not events.
	(tui_remove_hooks): Likewise.
	* mi/mi-cmd-break.c: Include observer.h, not gdb-events.h.
	(mi_breakpoint_observers_installed, mi_can_breakpoint_notify): New
	globals.
	(breakpoint_notify): Check mi_can_breakpoint_notify.
	(breakpoint_hooks): Remove.
	(mi_cmd_break_insert): Attach observers.  Don't use events.
	* tracepoint.c: Include observer.h, not gdb-events.h.
	(tracepoint_operation, trace_pass_command): Notify observer.
	* interps.c: Don't include gdb-events.h.
	(clear_interpreter_hooks): Don't call clear_gdb_event_hooks.
	* gdbarch.c: Rebuild.
	* gdbarch.sh: Emit include for observer.h, not gdb-events.h.
	(deprecated_current_gdbarch_select_hack): Notify observer.
	* breakpoint.h: Don't include gdb-events.h.
	* breakpoint.c: Don't include gdb-events.h.
	(condition_command): Notify observer.
	(commands_command): Likewise.
	(commands_from_control_command): Likewise.
	(mention, delete_breakpoint, set_ignore_count): Likewise.
	(disable_breakpoint, do_enable_breakpoint): Likewise.
	* Makefile.in (gdb_events_h): Remove.
	(breakpoint_h): Update.
	(COMMON_OBS): Remove gdb-events.o.
	(gdb-events.o): Remove.
	(breakpoint.o, gdbarch.o, interps.o, tracepoint.o, gdbtk-bp.o,
	gdbtk-hooks.o, mi-cmd-break.o, tui-hooks.o): Update.
	* gdb-events.c: Remove.
	* gdb-events.h: Remove.
	* gdb-events.sh: Remove.

2008-07-24  Pedro Alves  <pedro@codesourcery.com>

	* remote.c (remote_threads_extra_info): Don't query the remote
	server about info on the internally added main thread.

2008-07-24  Aleksandar Ristovski  <aristovski@qnx.com>

	* nto-procfs.c (procfs_attach): Populate initial thread list.
	(procfs_wait): Return new pid, built from the inferior status.

2008-07-23  Thiago Jung Bauermann  <bauerman@br.ibm.com>

	* configure.ac (CONFIG_INITS): Delete long obsoleted variable.
	* configure: Regenerate.

2008-07-23  Aleksandar Ristovski  <aristovski@qnx.com>

	* nto-procfs.c (procfs_xfer_memory): Changed signature.
	(procfs_resume): Workaround for dereferencing type-punned pointer
	warning.
	* nto-tdep.c (nto_parse_redirection): Change signature to be const
	correct.
	* nto-tdep.h (nto_parse_redirection): Likewise.

2008-07-21  Stan Shebs  <stan@codesourcery.com>

	Scrub remnants of IN_SOLIB_DYNSYM_RESOLVE_CODE.
	* gdbarch.sh: Adjust comment to refer to
	in_solib_dynsym_resolve_code().
	* gdbarch.h, gdbarch.c: Update.
	* solib-osf.c: Ditto.
	* infrun.c: Ditto.
	(handle_inferior_event): Use in_solib_dynsym_resolve_code
	unconditionally.
	* config/mips/nm-irix5.h: Remove undef of
	IN_SOLIB_DYNSYM_RESOLVE_CODE.

2008-07-21  Tom Tromey  <tromey@redhat.com>

	* symfile.c (reread_symbols): Don't pass argument to observer.
	* exec.c (exec_file_attach): Don't pass argument to observer.
	* ada-lang.c (ada_executable_changed_observer): Remove argument.
	* symtab.c (symtab_observer_executable_changed): Remove argument.
	* observer.sh: Handle functions with no arguments.

2008-07-20  Sergei Poselenov  <sposelenov@emcraft.com>
	    Chris Demetriou  <cgd@google.com>

	* elfread.c (elf_symfile_segments): Fix the check that each loadable
	section fits within an ELF segment to handle ELF segments that hit
	the end of the address space.

2008-07-20  Chris Demetriou  <cgd@google.com>

	* MAINTAINERS (Write After Approval): Add self.

2008-07-18  Tom Tromey  <tromey@redhat.com>

	PR gdb/855:
	* NEWS: Add entry for macro commands.
	* Makefile.in (macrocmd.o): Add gdb_string.h.
	* macroscope.h (user_macro_scope): Declare.
	(default_macro_scope): Update documentation.
	(macro_user_macros): Declare.
	* c-lang.c (c_preprocess_and_parse): Always attempt macro lookup.
	Use user_macro_scope.
	(null_macro_lookup): Remove.
	* macrotab.h (macro_callback_fn): Declare.
	(macro_for_each): Likewise.
	(macro_allow_redefinitions): Likewise.
	* macrotab.c (foreach_macro): New function
	(macro_for_each): Likewise.
	(struct macro_table) <redef_ok>: New field.
	(macro_allow_redefinitions): New function.
	(new_macro_table): Update.
	(macro_define_function): Likewise.
	(macro_define_object): Likewise.
	* macroscope.c (user_macro_scope): New function.
	(default_macro_scope): Use it.
	(macro_user_macros): New global.
	(standard_macro_lookup): Look in macro_user_macros.
	(_initialize_macroscope): New function.
	* macroexp.h (macro_is_whitespace, macro_is_digit,
	macro_is_identifier_nondigit): Declare.
	* macroexp.c (macro_is_whitespace): Rename.  No longer static.
	(macro_is_digit): Likewise.
	(macro_is_identifier_nondigit): Likewise.
	(get_identifier): Update.
	(get_pp_number): Likewise.
	(get_token): Likewise.
	* macrocmd.c (skip_ws): New function.
	(extract_identifier): Likewise.
	(free_macro_definition_ptr): Likewise.
	(user_macros): Remove.
	(macro_define_command): Implement.
	(_initialize_macrocmd): Update.
	(macro_undef_command): Implement.
	(print_one_macro): New function.
	(macro_list_command): Implement.

2008-07-18  Joseph Myers  <joseph@codesourcery.com>

	* configure.ac: Put old value of $LIBS after -lbfd -liberty $intl
	in BFD ELF check.
	* configure: Regenerate.

2008-07-17  Paul Pluzhnikov  <ppluzhnikov@google.com>

	* auxv.c (fprint_target_auxv): Stop at AT_NULL.

2008-07-15  Andreas Schwab  <schwab@suse.de>

	* valops.c (value_cast_pointers): Follow typedefs when checking
	result of coercion.

2008-07-15  Daniel Jacobowitz  <dan@codesourcery.com>

	* block.c (block_function): Renamed to ...
	(block_linkage_function): ... this.  All callers changed.
	* block.h (block_function): Renamed to ...
	(block_linkage_function): ... this.

2008-07-15  Daniel Jacobowitz  <dan@codesourcery.com>

	* mn10300-tdep.c (set_reg_offsets): Use get_frame_register_unsigned.

2008-07-15  Daniel Jacobowitz  <dan@codesourcery.com>

	* frame.c (frame_sp_unwind): Delete.
	(get_frame_sp): Do not use it.
	* frame.h (frame_sp_unwind): Delete prototype.

2008-07-15  Daniel Jacobowitz  <dan@codesourcery.com>

	* ia64-tdep.c (ia64_dummy_id): Use get_frame_pc.

2008-07-15  Daniel Jacobowitz  <dan@codesourcery.com>

	* dwarf2-frame.c (dwarf2_frame_cache): Update comment.
	* frame.c (frame_unwind_address_in_block): Delete.
	(get_frame_address_in_block): Do not use it.  Check the type
	of the next frame first.
	(frame_cleanup_after_sniffer): Update comment.
	* frame.h (frame_unwind_address_in_block): Delete prototype.
	* hppa-tdep.c (hppa_find_unwind_entry_in_block): Update comment.

2008-07-15  Daniel Jacobowitz  <dan@codesourcery.com>

	* frame.c (frame_func_unwind): Delete.
	(get_frame_func): Do not use it.
	* frame.h (frame_func_unwind): Delete prototype.
	* hppa-tdep.c (hppa_frame_cache): Update comment.
	* rs6000-tdep.c (rs6000_frame_cache): Update comment.

2008-07-14  Stan Shebs  <stan@codesourcery.com>

	* remote-sim.c (init_gdbsim_ops): Remove
	TARGET_REDEFINE_DEFAULT_OPS.

2008-07-15  Daniel Jacobowitz  <dan@codesourcery.com>

	* findvar.c (read_var_value): Remove unused variable.

2008-07-15  Luis Machado  <luisgpm@br.ibm.com>

	* infrun.c (handle_inferior_event): Tag threads as stopped
	before inserting breakpoints.

2008-07-15  Hui Zhu  <teawater@gmail.com>

	* MAINTAINERS: Added myself to section Write After Approval.

2008-07-14  Paul Pluzhnikov  <ppluzhnikov@google.com>

	PR gdb/2477
	* cp-abi.c (value_virtual_fn_field): Handle invalid pointers.

2008-07-14  Pedro Alves  <pedro@codesourcery.com>

	* i386-dicos-tdep.c (i386_dicos_frame_align): Delete.
	(i386_dicos_push_dummy_code): New.
	(i386_dicos_init_abi): Don't register i386_dicos_frame_align.
	Register i386_dicos_push_dummy_code.

2008-07-14  Markus Deuling  <deuling@de.ibm.com>

	* mips-tdep.c (fp_register_arg_p): Add gdbarch as paramter.
	(mips_n32n64_push_dummy_call, mips_o64_return_value)
	(mips_eabi_push_dummy_call): Update call to fp_register_arg_p.

	(MIPS_FPU_TYPE): Add gdbarch as parameter and replace current_gdbarch.
	(fp_register_arg_p, mips_dump_tdep, show_mipsfpu_command)
	(mips_n32n64_fp_arg_chunk_p): Update caller.

	(mips_n32n64_fp_arg_chunk_p): Add gdbarch as paramter.
	(mips_n32n64_push_dummy_call): Update caller.

	(MIPS_LAST_ARG_REGNUM): Add gdbarch as parameter and replace
	current_gdbarch.
	(mips_eabi_push_dummy_call, mips_n32n64_push_dummy_call)
	(mips_o32_push_dummy_call, mips_o64_push_dummy_call): Update caller.


	(MIPS_LAST_FP_ARG_REGNUM): Add gdbarch as parameter and replace
	current_gdbarch.
	(mips_eabi_push_dummy_call, mips_o32_push_dummy_call)
	(mips_o64_push_dummy_call): Update caller.

	(MIPS_EABI): Add gdbarch as parameter and replace current_gdbarch.
	(fp_register_arg_p, mips_dump_tdep): Update caller.

	(set_reg_offset): Add gdbarch as parameter and replace current_gdbarch.
	(mips16_scan_prologue, mips32_scan_prologue): Update caller.

	(reset_saved_regs): Make static.  Add gdbarch as parameter.  Replace
	current_gdbarch.
	(mips32_scan_prologue): Update caller.

	(heuristic_proc_start): Add gdbarch as parameter. Replace
	current_gdbarch.
	(mips_insn16_frame_cache, mips_insn32_frame_cache): Update caller.

	* mipsnbsd-nat.c (mipsnbsd_fetch_inferior_registers)
	(mipsnbsd_store_inferior_registers): Use get_regcache_arch to get at
	the current architecture. Update call to getregs_supplies.
	(getregs_supplies): Add gdbarch as parameter and replace
	current_gdbarch.

	* mipsnbsd-tdep.c (mipsnbsd_get_longjmp_target): Use get_frame_arch to
	get at the current architecture. Update call to NBSD_MIPS_JB_OFFSET and
	NBSD_MIPS_JB_ELEMENT_SIZE.
	(NBSD_MIPS_JB_ELEMENT_SIZE, NBSD_MIPS_JB_OFFSET): Add gdbarch and
	replace current_gdbarch.

	* remote-mips.c (mips_map_regno): Add gdbarch as parameter and replace
	current_gdbarch.
	(mips_fetch_registers, mips_store_registers): Update call
	to mips_map_regno.
	(mips_load): Use get_regcache_arch to get at the current_architecture
	and replace current_gdbarch.

2008-07-13  Pedro Alves  <pedro@codesourcery.com>

	* thread.c (restore_selected_frame): On fail to restore, select
	the innermost frame, and don't crash when warning the user.

2008-07-13  Hui Zhu  <teawater@gmail.com>

	* symtab.c (expand_line_sal): Fix a memory leak.

2008-07-13  Pedro Alves  <pedro@codesourcery.com>

	* utils.c (struct continuation): Define as inheriting struct
	cleanup.
	(add_continuation, do_all_continuations)
	(discard_all_continuations, add_intermediate_continuation)
	(do_all_intermediate_continuations)
	(discard_all_intermediate_continuations): Adjust.

2008-07-13  Vladimir Prus  <vladimir@codesourcery.com>

	Skip varobj in running threads.
	* mi/mi-cmd-var.c (mi_cmd_var_update): If varobj's
	thread is not stopped, skip the varobj.
	* Makefile.in: Update dependencies.

2008-07-13  Vladimir Prus  <vladimir@codesourcery.com>

	Enable all commands while inferiour is running
	* mi/mi-main.c (mi_cmd_execute): Don't check if
	inferiour is executing.

2008-07-13  Vladimir Prus  <vladimir@codesourcery.com>

	Allow all CLI command even if target is executing.
	* gdb/top.c (execute_command_1): Don't check if the inferiour
	is running.

2008-07-13  Vladimir Prus  <vladimir@codesourcery.com>

	* mi/mi-main.c (mi_cmd_execute): Remove unused variable.
	Fix printing of frame, when frame is wrong.

2008-07-12  Ulrich Weigand  <uweigand@de.ibm.com>

	* spu-tdep.c (spu_frame_unwind_cache): Do not error if
	backchain is unreadable.

2008-07-12  Ulrich Weigand  <uweigand@de.ibm.com>

	* spu-linux-nat.c: Include "gdbthread.h".
	(spu_child_post_startup_inferior): Register main thread.
	(spu_child_post_attach): Likewise.
	* Makefile.in (spu-linux-nat.o): Update dependencies.

2008-07-12  Pedro Alves  <pedro@codesourcery.com>

	Rewrite continuations internals on top of cleanups and plug
	continuation arguments leaks.

	* defs.h (struct continuation): Make it opaque.
	(add_continuation, add_intermediate_continuation): Drop the int
	argument of the continuation hook argument.  Add
	continuation_free_args argument.
	(do_all_continuations, do_all_intermediate_continuations): Drop
	the error_p argument.

	* utils.c (add_continuation): Drop the int argument of the
	continuation hook argument.  Add continuation_free_args argument.
	Reimplement on top of cleanups.
	(do_all_continuations): Drop error argument.  Reimplement on top
	of cleanups.
	(discard_all_continuations): Reimplement on top of cleanups.
	(add_intermediate_continuation): Drop the int argument of the
	continuation hook argument.  Add continuation_free_args argument.
	Reimplement on top of cleanups.
	(do_all_intermediate_continuations): Drop error argument.
	Reimplement on top of cleanups.
	(discard_all_intermediate_continuations): Reimplement on top of
	cleanups.

	* breakpoint.c (until_break_command_continuation): Drop error
	argument.  Add xfree as continuation argument deleter.

	* inf-loop.c (inferior_event_handler): On error, discard all
	continuations.  Adjust to new do_all_intermediate_continuations
	and do_all_continuations interfaces.

	* infcmd.c (step_1_continuation): Drop error_p argument.  Adjust.
	Pass xfree as continuation argument deleter.
	(finish_command_continuation): Drop error_p argument.  Adjust.
	(finish_command_continuation_free_arg): New.
	(finish_command): Pass finish_command_continuation_free_arg as
	continuation argument deleter.  Adjust to new do_all_continuations
	interfaces.
	(attach_command_continuation): Drop error_p argument.
	(attach_command_continuation_free_args): New.
	(attach_command): Pass attach_command_continuation_free_args as
	continuation argument deleter.

	* interps.c (interp_set): Adjust to new do_all_continuations
	interfaces.

	* event-top.c (stdin_event_handler): In error, also discard the
	intermediate continuations.

2008-07-12  Pedro Alves  <pedro@codesourcery.com>

	Replace struct continuation_args by void* and per command structs.

	* top.c (execute_command): Remove unused arg1 and arg2 locals.

	* breakpoint.c (struct until_break_command_continuation_args):
	New.
	(until_break_command_continuation): Take a void* instead of a
	continuations_arg.  Adjust.
	(until_break_command): Adjust to use struct
	until_break_command_continuation_args instead of struct
	continuation_arg.

	* infcmd.c (struct step_1_continuation_args): New.
	(step_1_continuation): Take a void* instead of a
	continuations_arg.  Adjust to use struct step_1_continuation_args.
	(step_once): Adjust to use struct step_1_continuation_args.

	(struct finish_command_continuation_args): New.
	(finish_command_continuation): Take a void* instead of a
	continuations_arg.  Adjust to use struct
	finish_command_continuation_args.
	(finish_command): Adjust to use struct
	finish_command_continuation_args.
	(struct attach_command_continuation_args): New.
	(attach_command_continuation): Take a void* instead of a
	continuations_arg.  Adjust to use struct
	attach_command_continuation_args.
	(attach_command): Adjust to use struct
	attach_command_continuation_args.

	* defs.h (struct continuation_arg): Delete.
	(struct continuation): Replace the struct continuation_arg*
	parameter of continuation_hook by a void*.  Replace "arg_list"
	member by a new "args" member with void* type.
	(add_continuation, add_intermediate_continuation): Replace struct
	continuation_arg type usages by void* usages.

	* utils.c (add_continuation, do_all_continuations)
	(add_intermediate_continuation)
	(do_all_intermediate_continuations): Replace struct
	continuation_arg type usages by void* usages.  Pass "args" instead
	of "arg_list".

2008-07-12  Pedro Alves  <pedro@codesourcery.com>

	* infrun.c (struct thread_stepping_state): Delete sal member.
	(init_thread_stepping_state): Add local sal.  Use it instead of
	tss->sal.
	(handle_inferior_event): New local stop_pc_sal.  Use it instead of
	tss->sal.
	(step_into_function): Add local stop_func_sal.  Use it instead of
	tss->sal.

2008-07-12  Vladimir Prus  <vladimir@codesourcery.com>

	Implement -exec-continue/-exec-interrupt --all.
	* infcmd.c (continue_1): New, extracted from
	(continue_command): ...here.
	(interrupt_target_1): New, extracted from
	(interrupt_target_command): ...here.
	* inferior.h (continue_1, interrupt_target_1): New.
	* mi/mi-main.c (mi_cmd_exec_continue)
	(mi_cmd_exec_interrupt): Handle --all.

2008-07-12  Vladimir Prus  <vladimir@codesourcery.com>

	Implement --thread and --frame.
	* gdbthread.h (find_thread_id): Declare.
	* thread.c (find_thread_id): Make non-static.
	* mi/mi-main.c (mi_cmd_execute): Switch to the right
	thread and frame, if necessary.
	* mi/mi-parse.c (mi_parse): Handle --thread and --frame.
	* mi/mi-parse.h (strcut mi_parse): New fields thread and frame.

2008-07-12  Vladimir Prus  <vladimir@codesourcery.com>

	* infrun.c (resume): Discard cleanups on early exit path.

2008-07-12  Vladimir Prus  <vladimir@codesourcery.com>

	* infrun.c (normal_stop): For MI, report which threads
	were stopped.

2008-07-12  Vladimir Prus  <vladimir@codesourcery.com>

	Report thread state in -thread-info output.
	* thread.c (print_thread_info): Add new field "state".

2008-07-11  Pedro Alves  <pedro@codesourcery.com>

	* infrun.c (handle_inferior_event): Also ignore a
	TARGET_SIGNAL_TRAP on a STOP_QUIETLY_NO_SIGSTOP.

2008-07-11  Tom Tromey  <tromey@redhat.com>

	* completer.c (complete_line_internal): New function, from
	complete_line.  Add 'for_help' parameter.
	(complete_line): Use it.
	(command_completer): Move later.  Rewrite.

2008-07-11  Pedro Alves  <pedro@codesourcery.com>

	* thread.c (thread_apply_command): Move making the cleanup out of
	the loop.

2008-07-11  Pedro Alves  <pedro@codesourcery.com>

	Exited threads.

	* thread.c (enum thread_state): New.
	(thread_state main_thread_running): Delete, in favor of...
	(thread_state main_thread_state): ... this.  Update throughout.
	(clear_thread_inferior_resources): New, split from free_thread.
	(free_thread): Call clear_thread_inferior_resources.
	(init_thread_list): Set main thread to stopped state.
	(add_thread_silent): Take care of PTID reuses.
	(delete_thread): If deleting inferior_ptid or a thread with
	refcount > 0, mark it as exited, but still keep it in the list.
	Only notify of thread exits, if we haven't done so yet.
	(iterate_over_threads): Make it safe to delete threads while
	iterating over them.
	(do_captured_list_thread_ids): Don't account for exited threads.
	(thread_alive): Check for the THREAD_EXITED state, and don't set
	ptid to -1 on exited threads.
	(set_running): Update to account for extra possible states.
	(is_thread_state): New.
	(is_stopped, is_exited): New.
	(is_running): Implement in terms of is_thread_state.
	(any_running): Update.
	(print_thread_info): Update.  Account for exited threads.  Don't
	warn about missed frame restoring here, its done in the cleanup.
	(switch_to_thread): Don't read from a thread that has gone.
	(restore_current_thread): In non-stop mode, do a full context
	switch.
	(restore_selected_frame): Add a frame_level argument.  Rewrite.
	(struct current_thread_cleanup): Add selected_frame_level and
	was_stopped members.
	(do_restore_current_thread_cleanup): Check if thread was stopped
	and still is, and if the target has registers, stack and memory
	before restoring the selected frame.  Don't delete the cleanup
	argument here.
	(restore_current_thread_cleanup_dtor): New.
	(make_cleanup_restore_current_thread): Remove all arguments.
	Rewrite.
	(thread_apply_all_command): Update.  Prune threads.
	(thread_apply_command): Update.
	(thread_command): Account for currently selected exited thread.
	(do_captured_thread_select): Check for a running thread.  Prune
	threads.
	(_initialize_thread): Make "info threads", "thread", "thread
	apply", and "thread apply all" appliable without a selected thread.
	* gdbthread.h (struct thread_info): Replace running_ by state_.
	Add refcount.
	(is_exited, is_stopped): Declare.
	(make_cleanup_restore_current_thread): Remove all arguments.
	* infrun.c: Include "event-top.h".
	(fetch_inferior_event): In non-stop mode, restore selected thread
	and frame after handling the event and running breakpoint
	commands.  Display GDB prompt if needed.
	(normal_stop): In non-stop mode, don't print thread switching
	notice.
	* cli/cli-decode.c (set_cmd_no_selected_thread_ok)
	(get_cmd_no_selected_thread_ok): New.
	* cli/cli-decode.h (CMD_NO_SELECTED_THREAD_OK): New.
	(set_cmd_no_selected_thread_ok, get_cmd_no_selected_thread_ok):
	Declare.
	* cli/cli-cmds.c: Set "pwd", "help", "info", "show" as
	no-selected-thread ok.
	* top.c (execute_command): Check for non no-selected-thread-ok
	commands.
	* linux-nat.c (struct saved_ptids, threads_to_delete)
	(record_dead_thread, prune_lwps): Delete.
	(exit_lwp): Unconditionally delete thread.
	(linux_nat_resume): Remove prune_lwps call.
	* infcmd.c (proceed_thread_callback): Check if !is_stopped instead
	of is_running.  Adjust to make_cleanup_restore_current_thread
	interface change.
	* mi/mi-main.c (mi_cmd_execute): Only allow a few commands if the
	selected thread has exited.
	* inf-loop.c (inferior_event_handler): Don't display the prompt
	here.
	* varobj.c (c_value_of_root): Update.
	* defs.h (make_cleanup_dtor): Declare.
	* utils.c (make_cleanup_dtor): New.

	* Makefile.in (infrun.o): Depend on $(event_top_h).

2008-07-11  Pedro Alves  <pedro@codesourcery.com>

	Add "continue -a" and "interrupt -a" options for non-stop mode.

	* infcmd.c (proceed_thread_callback, do_context_switch_to): New.
	(continue_command): Add "-a" option.
	(interrupt_target_command): Add "-a" option.
	(_initialize_infcmd): Add extend help of continue and interrupt
	command to mention the new "-a" option.  Mark "continue" async ok.

2008-07-10  Doug Evans  <dje@google.com>

	Add "set print symbol-loading on|off".
	* NEWS: Document new option.
	* symfile.h (print_symbol_loading): Declare.
	* symfile.c (print_symbol_loading): New global.
	(symbol_file_add_with_addrs_or_offsets): Only print "Reading symbols
	from ..." if print_symbol_loading.
	(_initialize_symfile): Add set/show print symbol-loading.
	* solib.c (solib_read_symbols): Only print "Loaded symbols for ..."
	if print_symbol_loading.

2008-07-10  Pedro Alves  <pedro@codesourcery.com>

	Non-stop linux native.

	* linux-nat.c (linux_test_for_tracefork): Block events while we're
	here.
	(get_pending_status): Implement non-stop mode.
	(linux_nat_detach): Stop threads before detaching.
	(linux_nat_resume): In non-stop mode, always resume only a single
	PTID.
	(linux_handle_extended_wait): On a clone event, in non-stop mode,
	add new lwp to GDB's thread table, and mark as running, executing
	and stopped appropriately.
	(linux_nat_filter_event): Don't assume there are other running
	threads when a thread exits.
	(linux_nat_wait): Mark the main thread as running and executing.
	In non-stop mode, don't stop all lwps.
	(linux_nat_kill): Stop lwps before killing them.
	(linux_nat_thread_alive): Use signal 0 to detect if a thread is
	alive.
	(send_sigint_callback): New.
	(linux_nat_stop): New.
	(linux_nat_add_target): Set to_stop to linux_nat_stop.

	* linux-nat.h (thread_db_attach_lwp): Declare.

	* linux-thread-db.c (thread_get_info_callback): Check for new
	threads if we have none.
	(thread_from_lwp, enable_thread_event): Set proc_handle.pid to the
	stopped lwp.  Check for new threads if we have none.
	(thread_db_attach_lwp): New.
	(thread_db_init): Set proc_handle.pid to inferior_ptid.
	(check_event): Set proc_handle.pid to the stopped lwp.
	(thread_db_find_new_threads): Set proc_handle.pid to any stopped
	lwp available, bail out if there is none.

	* linux-fork.c (linux_fork_killall): Use SIGKILL instead of
	PTRACE_KILL.

2008-07-10  Kevin Buettner  <kevinb@redhat.com>

	* rs6000-tdep.c (ppc_displaced_step_fixup): Change type of
	`current_pc' from CORE_ADDR to ULONGEST.

	* remote-sim.c (gdbsim_cntrl_c): Pass remote_sim_ptid to
	gdbsim_stop().

2008-07-10  Jan Kratochvil  <jan.kratochvil@redhat.com>

	* NEWS (New commands): Mention "set disable-randomization".
	* configure.ac: Add check for HAVE_PERSONALITY and
	HAVE_DECL_ADDR_NO_RANDOMIZE.
	* configure, config.in: Regenerate.
	* linux-nat.c [HAVE_PERSONALITY]: New include <sys/personality.h>.
	[HAVE_PERSONALITY] [!HAVE_DECL_ADDR_NO_RANDOMIZE]: Set
	ADDR_NO_RANDOMIZE.
	(disable_randomization, show_disable_randomization)
	(set_disable_randomization): New.
	(linux_nat_create_inferior) [HAVE_PERSONALITY]: New variables
	PERSONALITY_ORIG and PERSONALITY_SET.  Disable randomization upon the
	variable DISABLE_RANDOMIZATION.
	(_initialize_linux_nat): Call ADD_SETSHOW_BOOLEAN_CMD for the variable
	DISABLE_RANDOMIZATION.

2008-07-09  Pedro Alves  <pedro@codesourcery.com>

	Adjust all targets to new target_stop interface.

	* gnu-nat.c (gnu_stop): Add ptid argument.
	* go32-nat.c (go32_stop): Add ptid argument.
	(go32_create_inferior): Pass inferior_ptid to go32_stop.
	* hpux-thread.c (hpux_thread_stop): Add ptid argument.
	* monitor.c (monitor_stop): Add ptid argument.
	(monitor_open): Pass inferior_ptid to monitor_stop.
	(monitor_interrupt): Pass inferior_ptid to target_stop.
	(monitor_stop): Add ptid argument.
	* nto-procfs.c (nto_interrupt): Pass inferior_ptid to target_stop.
	(procfs_create_inferior): Add ptid argument.
	* procfs.c (procfs_stop): Add ptid argument.
	* remote-m32r-sdi.c (m32r_stop): Add ptid argument.
	* remote-sim.c (gdbsim_stop): Add ptid argument.
	* sol-thread.c (sol_thread_stop): Add ptid argument.
	* win32-nat.c (win32_stop): Add ptid argument.

2008-07-09  Pedro Alves  <pedro@codesourcery.com>

	Non-stop inferior control.

	* infrun.c (resume): In non-stop mode, always resume just one
	thread.
	(proceed): Don't call prepare_to_proceed in non-stop mode.
	(fetch_inferior_event): In non-stop mode, switch context before
	handling the event.
	(error_is_running, ensure_not_running): New.
	(handle_inferior_event): In non-stop mode: Mark only the event
	thread as stopped.  Require that the target module manages adding
	threads to the thread list.  Assert that there isn't a
	deferred_step_ptid set.  Don't switch to infwait_thread_hop_state.
	(normal_stop): Only mark not-running if inferior hasn't exited.
	In non-stop mode, only mark the event thread.

	* thread.c:Include "cli/cli-decode.h".
	(print_thread_info): Don't read from a running thread.
	Output "(running)" if thread is running.
	(switch_to_thread): Don't read stop_pc if thread is executing.
	(do_restore_current_thread_cleanup): Don't write to a running
	thread.
	(thread_apply_all_command): Don't read from a running thread.  In
	non-stop mode, do a full context-switch instead of just switching
	threads.
	(thread_apply_command): In non-stop mode, do a full context-switch
	instead of just switching threads.
	(do_captured_thread_select): Likewise.  Inform user if selected
	thread is running.
	(_initialize_thread): Mark "info threads" and "thread" and
	async_ok.

	* inf-loop.c (inferior_event_handler): In non-stop mode, don't
	unregister the target from the event loop.

	* infcmd.c (continue_command, step_1, jump_command)
	(signal_command): Ensure the selected thread isn't running.
	(interrupt_target_command): In non-stop mode, interrupt only the
	selected thread.

	* inferior.h (error_is_running, ensure_not_running): Declare.

	* target.h (struct target_ops): Add ptid argument to the to_stop
	member.
	(target_stop): Add ptid_t argument.

	* target.c (update_current_target): Add ptid argument to to_stop's
	type.
	(debug_to_stop): Add ptid_t argument.
	(debug_to_rcmd): Set to_stop_ptid.

	* remote.c (remote_stop): Add ptid_t argument.
	(async_remote_interrupt): Add inferior_ptid to target_stop.
	* inf-ptrace.c (inf_ptrace_stop): Add ptid argument.

	* Makefile.in (thread.o): Depend on $(cli_decode_h).

2008-07-09  Pedro Alves  <pedro@codesourcery.com>

	Don't rely on ecs->wait_for_more.

	* infrun.c (proceed): Clear the stepping state, set
	previous_inferior_ptid and clear infwait state.
	(wait_for_inferior): Don't clear the stepping state, set
	previous_inferior_ptid, or clear the infwait state here.
	(fetch_inferior_event): Don't clear the stepping state, set
	previous_inferior_ptid, or clear the infwait state here.  Don't
	condition on wait_for_more.

2008-07-09  Pedro Alves  <pedro@codesourcery.com>

	Refactor infrun a bit.

	* infrun.c (currently_stepping): Take a struct
	thread_stepping_state instead of an execution_control_state.
	(struct thread_stepping_state): New, split from
	execution_control_state.
	(gtss, tss): New globals.
	(proceed): Clear the stepping state, set previous_inferior_ptid
	and clear infwait state.
	(init_wait_for_inferior): Clear the stepping state,
	previous_inferior_ptid and infwait state.
	(waiton_ptid, infwait_state): New, split from
	execution_control_state.
	(struct execution_control_state): Members that persist through
	events moved out to either struct thred_stepping_state or made
	global.  Deleted unneeded wp, saved_inferior_ptid, tmpstatus.
	(wait_for_inferior, fetch_inferior_event): Use local
	execution_control_state.  Update to execution_control_state split.
	(init_execution_control_state): Adjust.
	(init_thread_stepping_state): New, extracted from
	init_execution_control_state.
	(context_switch): Take a ptid instead of an
	execution_control_state.
	(context_switch_to): Adjust.
	(adjust_pc_after_break): Adjust.
	(init_infwait_state): New.
	(handle_inferior_event): Adjust.

2008-07-09  Pedro Alves  <pedro@codesourcery.com>
	    Vladimir Prus  <vladimir@codesourcery.com>

	Per-thread commands.

	* gdbthread.h: Remove unneeded forward declarations.
	Include "inferior.h".
	(struct thread_info): Add continuations,
	intermediate_continuations, proceed_to_finish, step_over_calls,
	stop_step, step_multi and stop_signal members.
	(save_infrun_state): Add continuations,
	intermediate_continuations, proceed_to_finish, step_over_calls,
	stop_step, step_multi, stop_signal and stop_bpstat parameters.
	(load_infrun_state): Add continuations,
	intermediate_continuations, proceed_to_finish, step_over_calls,
	stop_step, step_multi, stop_signal and stop_bpstat parameters.

	* thread.c (load_infrun_state): In non-stop mode, load
	continuations, intermediate_continuations, proceed_to_finish,
	step_over_calls, stop_step, step_multi and stop_signal.
	(save_infrun_state): Store continuations,
	intermediate_continuations, proceed_to_finish, step_over_calls,
	stop_step, step_multi, stop_signal and stop_bpstat.
	(save_infrun_state): Store continuations,
	intermediate_continuations, proceed_to_finish, step_over_calls,
	stop_step, step_multi, stop_signal and stop_bpstat.
	(free_thread): Clear The thread's stop_bpstat.

	* inferior.h (context_switch_to): Declare.

	* infrun.c (ecss): New global.
	(context_switch): Context switch continuations,
	intermediate_continuations, proceed_to_finish, step_over_calls,
	stop_step, step_multi, stop_signal and stop_bpstat.
	(wait_for_inferior): Use global ecss.
	(async_ecss, async_ecs): Delete.
	(fetch_inferior_event): Use global ecss.
	(context_switch_to): New.

	* top.c (execute_command): In non-stop, only check if the current
	thread is running, in all-stop, check if there's any thread
	running.

	* breakpoint.c (bpstat_remove_breakpoint): New.
	(bpstat_remove_breakpoint_callback): New.
	(delete_breakpoint): Clear the stop_bpstats of all threads.

	* mi/mi-main.c (mi_cmd_execute): In non-stop, only check if the
	current thread is running, in all-stop, check if there's any
	thread running.

	* Makefile.in (gdbthread_h): Depend on $(inferior_h).

2008-07-09  Pedro Alves  <pedro@codesourcery.com>

	Add non_stop global.

	* inferior.h (non_stop): Declare.
	* infrun.c (non_stop, non_stop_1): New.
	(set_non_stop, show_non_stop): New.
	(_initialize_infrun): Add "set/show non-stop" command.

2008-07-09  Pedro Alves  <pedro@codesourcery.com>

	Adjust fork/vfork/exec to pass ptids around.

	* target.h (struct target_waitstatus): Store related_pid as a ptid.
	(inferior_has_forked, inferior_has_vforked, inferior_has_execd):
	Take a ptid_t.
	* breakpoint.h (struct breakpoint): Change forked_inferior_pid
	type to ptid.
	* breakpoint.c (print_it_typical, bpstat_check_location)
	(print_one_breakpoint_location, set_raw_breakpoint_without_location)
	(create_fork_vfork_event_catchpoint): Adjust.
	* infrun.c (fork_event): Change parent_pid and child_pid types to
	ptid.
	(follow_exec, inferior_has_forked, inferior_has_vforked)
	(inferior_has_execd): Take a ptid_t and don't trim it.
	* linux-thread-db.c (thread_db_wait): Don't trim the returned ptid.
	* linux-nat.c (linux_child_follow_fork): Adjust.
	* inf-ptrace.c (inf_ptrace_wait): Adjust.
	* inf-ttrace.c (inf_ttrace_wait): Adjust.
	* win32-nat.c (get_win32_debug_event): Don't set related_pid.

2008-07-09  Pedro Alves  <pedro@codesourcery.com>

	Add "executing" property to threads.

	* inferior.h (target_executing): Delete.
	* gdbthread.h (struct thread_info): Add executing_ field.
	(set_executing, is_executing): New.
	* thread.c (main_thread_executing): New.
	(init_thread_list): Clear it and also main_thread_running.
	(is_running): Return false if target has no execution.
	(any_running, is_executing, set_executing): New.

	* top.c: Include "gdbthread.h".
	(target_executing): Delete.
	(execute_command): Replace target_executing check by any_running.
	* event-top.c: Include "gdbthread.h".
	(display_gdb_prompt, command_handler): Replace target_executing by
	is_running.
	* inf-loop.c: Include "gdbthread.h".  Don't mark as not executing
	here.  Replace target_executing by is_running.
	* infrun.c (handle_inferior_event): Mark all threads as
	not-executing.
	* linux-nat.c (linux_nat_resume): Don't mark thread as executing
	here.
	* stack.c (get_selected_block): Return null if inferior is
	executing.
	* target.c (target_resume): Mark resumed ptid as executing.
	* breakpoint.c (until_break_command): Replace target_executing
	check by is_executing.
	* remote.c (remote_async_resume): Don't mark inferior as executing
	here.
	* mi/mi-interp.c (mi_cmd_interpreter_exec): Replace target_executing
	by any_running.

	* mi/mi-main.c (mi_cmd_exec_interrupt, mi_cmd_execute)
	(mi_execute_async_cli_command): Replace target_executing by
	is_running.

	* frame.c (get_current_frame): Error out if the current thread is
	executing.
	(has_stack_frames): New.
	(get_selected_frame, deprecated_safe_get_selected_frame): Check
	has_stack_frames.

	* Makefile.in (event-top.o, frame.o, inf-loop.o, top.o): Depend on
	$(gdbthread_h).

2008-07-09  Pedro Alves  <pedro@codesourcery.com>

	* symfile.c (load_command): Reopen the exec file and reread
	symbols before anything else.

2008-07-09  Pedro Alves  <pedro@codesourcery.com>

	* remote-sim.c: Include gdbthread.h.
	(remote_sim_ptid): New global.
	(gdbsim_create_inferior): Silently add the main task to GDB's
	thread list.
	(gdbsim_close, gdbsim_mourn_inferior): Silently delete the main
	task from GDB's thread list.
	(gdbsim_resume): Adjust to use remote_sim_ptid.
	(gdbsim_thread_alive, gdbsim_pid_to_str): New.
	(init_gdbsim_ops): Register gdbsim_thread_alive and
	gdbsim_pid_to_str.
	(_initialize_remote_sim): Initialize remote_sim_ptid.
	* Makefile.in (remote-sim.o): Depend on $(gdbthread_h).

2008-07-09  Pedro Alves  <pedro@codesourcery.com>

	* monitor (monitor_ptid): New global.
	(monitor_open): Silently add the main task to GDB's thread list.
	(monitor_close, monitor_mourn_inferior): Silently delete the main
	task from GDB's thread list.
	(monitor_thread_alive, monitor_pid_to_str): New.
	(init_base_monitor_ops): Register monitor_thread_alive and
	monitor_pid_to_str.
	(_initialize_remote_monitors): Initialize monitor_ptid.

	* gdbthread.h (delete_thread_silent): Declare.
	* thread.c (delete_thread): Rename to ...
	(delete_thread_1): ... this.  Add "silent" parameter.  If silent,
	don't do exit notifications.
	(delete_thread, delete_thread_silent): New, as wrappers to
	delete_thread_1.

2008-07-08  Pedro Alves  <pedro@codesourcery.com>

	* breakpoint.c (update_global_location_list): Add boolean
	"should_insert" argument.  Only insert locations if caller told it
	too.
	(update_global_location_list_nothrow): Add boolean "should_insert"
	argument.  Pass it to update_global_location_list.
	(insert_breakpoints, create_longjmp_breakpoint)
	(create_overlay_event_breakpoint, enable_overlay_breakpoints)
	(create_thread_event_breakpoint, create_solib_event_breakpoint)
	(create_fork_vfork_event_catchpoint, create_exec_event_catchpoint)
	(enable_watchpoints_after_interactive_call_stop)
	(set_momentary_breakpoint, create_breakpoints)
	(break_command_really, watch_command_1)
	(create_ada_exception_breakpoint, update_breakpoint_locations)
	(do_enable_breakpoint, enable_command): Pass true to
	update_global_location_list.
	(bpstat_stop_status, disable_overlay_breakpoints)
	(disable_watchpoints_before_interactive_call_start)
	(delete_breakpoint, disable_breakpoint, disable_command): Pass
	false to update_global_location_list.
	(update_breakpoints_after_exec): Don't temporarily disable
	always-inserted mode.

2008-07-08  Pedro Alves  <pedro@codesourcery.com>

	* breakpoint.c (mark_breakpoints_out): Make public.
	(update_breakpoints_after_exec): Don't call mark_breakpoints_out
	here.  Update comment.
	* breakpoint.h (mark_breakpoints_out): Declare.

	* linux-nat.c (linux_handle_extended_wait): On
	TARGET_WAITKIND_EXECD, call mark_breakpoints_out.
	* inf-ttrace.c (inf_ttrace_wait): Likewise.

2008-07-08  Pedro Alves  <pedro@codesourcery.com>

	* infrun.c (follow_exec): Reset shared libraries before adding the
	main exec file.

2008-07-07  Jan Kratochvil  <jan.kratochvil@redhat.com>

	* breakpoint.c (bpstat_copy): Call RELEASE_VALUE on the new OLD_VAL.

2008-07-07  Pedro Alves  <pedro@codesourcery.com>

	* i386-dicos-tdep.c: Include "inferior.h".
	(i386_dicos_frame_align): New.
	(i386_dicos_init_abi): Register i386_dicos_frame_align.  Set call
	dummy location ON_STACK.
	* Makefile.in (i386-dicos-tdep.o): Depend on $(inferior_h).

2008-07-07  Joel Brobecker  <brobecker@adacore.com>

	* gstdint.h: New file.

2008-07-05  Vladimir Prus  <vladimir@codesourcery.com>

	* mi/mi-interp.c (mi_on_resume): Don't try to report
	resumed thread it the thread list is empty.

2008-07-05  Pierre Muller  <muller@ics.u-strasbg.fr>

	* cli/cli-decode.c (add_setshow_optional_filename_cmd): Set
	completer for set to filename_completer.

	NEWS: Mention it.

2008-07-04  Vladimir Prus  <vladimir@codesourcery.com>

	Implement -target-attach.
	* mi/mi-cmds.c (mi_cmds): Forward -target-attach to CLI attach.

2008-06-21  Hui Zhu  <teawater@gmail.com>

	* target-descriptions.c (maint_print_c_tdesc_cmd): Fix a memory leak.

2008-07-03  Pedro Alves  <pedro@codesourcery.com>

	* config/i386/nm-cygwin.h (ATTACH_NO_WAIT): Delete.
	* config/i386/nm-i386gnu.h (ATTACH_NO_WAIT): Delete.

	* target.h (struct target_ops): Add to_attach_no_wait member.
	(target_attach_no_wait): New.
	* target.c (update_current_target): Inherit to_attach_no_wait.

	* infcmd.c: Replace ATTACH_NO_WAIT compile time check by
	target_attach_no_wait runtime check.

	* gnu-nat.c (init_gnu_ops): Set to_attach_no_wait in gnu_ops.
	* win32-nat.c (init_win32_ops): Set to_attach_no_wait in
	win32_ops.

2008-07-03  Pedro Alves  <pedro@codesourcery.com>

	* i386-tdep.c (i386_displaced_step_fixup): Condition log printing
	on debug_displaced being set.

2008-06-30  Daniel Jacobowitz  <dan@codesourcery.com>

	* frame.c (get_prev_frame_1): Call frame_unwind_find_by_frame
	directly instead of get_frame_id.

2008-06-30  Luis Machado  <luisgpm@br.ibm.com>

	* rs6000-tdep.c (ppc_displaced_step_fixup): New function.
	(deal_with_atomic_sequence): Update BC masks.
	(rs6000_gdbarch_init): Init displaced stepping infra-structure.
	Define BRANCH_MASK, B_INSN, BC_INSN, BXL_INSN, BP_MASK and BP_INSN.

2008-06-30  Daniel Jacobowitz  <dan@codesourcery.com>

	* cris-tdep.c (crisv32_single_step_through_delay): Get this frame's
	register, not the previous frame's.

2008-06-30  Luis Machado  <luisgpm@br.ibm.com>

	* source.c (select_source_symtab): Make sure we skip namespace
	symtabs when showing cpp source code.

2008-06-30  Hans-Peter Nilsson  <hp@axis.com>

	* MAINTAINERS (Authorized committers): Fix my email address.

2008-06-28  Vladimir Prus  <vladimir@codesourcery.com>

	* mi/mi-cmds.c (mi_cmds): Route -exec-run, -exec-until,
	-target-download and -target-select via CLI, so that
	the quoting rules are the same as they were (unfortunately)
	in all prior gdb releases.
	* mi/mi-cmds.h (mi_cmd_exec_run, mi_cmd_exec_until)
	(mi_cmd_target_download, mi_cmd_target_select): Remove.
	* mi/mi-main.c (mi_cmd_exec_run, mi_cmd_exec_until)
	(mi_cmd_target_download, mi_cmd_target_select): Remove.
	(mi_cmd_execute): Set current_token even for commands
	routed via CLI.

2008-06-28  Ulrich Weigand  <uweigand@de.ibm.com>

	* alphafbsd-tdep.c: Update for unwinder changes.
	* alpha-linux-tdep.c: Likewise.
	* alphanbsd-tdep.c: Likewise.
	* alphaobsd-tdep.c: Likewise.
	* avr-tdep.c: Likewise.
	* cris-tdep.c: Likewise.
	* frv-linux-tdep.c: Likewise.
	* frv-tdep.c: Likewise.
	* h8300-tdep.c: Likewise.
	* hppa-linux-tdep.c: Likewise.
	* iq2000-tdep.c: Likewise.
	* m32c-tdep.c: Likewise.
	* m32r-linux-tdep.c: Likewise.
	* m32r-tdep.c: Likewise.
	* m68hc11-tdep.c: Likewise.
	* mep-tdep.c: Likewise.
	* mn10300-tdep.c: Likewise.
	* mt-tdep.c: Likewise.
	* score-tdep.c: Likewise.
	* sh64-tdep.c: Likewise.
	* sh-tdep.c: Likewise.
	* sparc64fbsd-tdep.c: Likewise.
	* sparc64nbsd-tdep.c: Likewise.
	* sparc64obsd-tdep.c: Likewise.
	* v850-tdep.c: Likewise.
	* vaxobsd-tdep.c: Likewise.
	* vax-tdep.c: Likewise.
	* xstormy16-tdep.c: Likewise.

2008-06-28  Vladimir Prus  <vladimir@codesourcery.com>

	* mi/mi-main.c (enum captured_mi_execute_command_actions)
	(captured_mi_execute_command_args): Remove.
	(captured_mi_execute_command): Cast the closure to mi_parse
	pointer, not to captured_mi_execute_command_args, and don't
	set the action field thereof.
	(mi_execute_command): Pass struct mi_parse, not
	captured_mi_execute_command_args to captured_mi_execute_command.
	(mi_execute_command): Remove (dead) code for suppressing
	printing prompt.

2008-06-28  Pedro Alves  <pedro@codesourcery.com>

	* linux-nat.c (enum sigchld_state): New.
	(linux_nat_async_events_state): Renamed from
	linux_nat_async_events_enabled.
	(linux_nat_event_pipe_push, my_waitpid): Adjust.
	(sigchld_default_action): New.
	(lin_lwp_attach_lwp): Adjust.  Call linux_nat_async_events
	unconditionally.
	(linux_nat_create_inferior): Set events state to sigchld_default
	state.
	(linux_nat_resume): Adjust.
	(linux_nat_wait): Call linux_nat_async_events unconditionally.
	(sigchld_handler): Adjust.
	(linux_nat_async_mask): Don't set SIGCHLD actions here.
	(get_pending_events): Adjust.
	(linux_nat_async_events): Rewrite to handle enum sigchld_state
	instead of a boolean.
	(linux_nat_async): Adjust.
	(_initialize_linux_nat): Capture default SIGCHLD action into
	sigchld_default_action.

2008-06-28  Vladimir Prus  <vladimir@codesourcery.com>

	* breakpoint.c (moribund_locations): New.
	(bpstat_stop_status): Process moribund locations.
	(update_global_location_list): Add removed
	locations to moribund_locations.
	(breakpoint_retire_moribund): New.
	* breakpoint.h (struct bp_location): New field
	events_till_retirement.
	(breakpoint_retire_moribund): Declare.
	* thread.c (thread_count): New.
	* infrun.c (handle_inferior_event): Call
	breakpoint_retire_moribund.
	* gdbthread.h (thread_count): Declare.

2008-06-27  Joseph Myers  <joseph@codesourcery.com>

	* dfp.c (decimal_convert): Call match_endianness before and after
	conversion.

2008-06-27  Jonathan Larmour  <jifl@eCosCentric.com>

	* remote.c (remote_insert_breakpoint): Ensure that if Z0
	unsupported and we fall back to memory_insert_breakpoint, we
	use the unmodified requested address.

2008-06-27  Joel Brobecker  <brobecker@adacore.com>

	* dwarf2read.c (read_attribute_value): Issue a complaint when
	adjusting size attribute values of 0xffffffff as zero.

2008-06-27  Joseph Myers  <joseph@codesourcery.com>

	* i386-tdep.c (i386_16_byte_align_p): New.
	(i386_push_dummy_call): Determine stack space required for
	arguments going forwards allowing for 16-byte alignment, then push
	arguments going forwards.

2008-06-27  Pedro Alves  <pedro@codesourcery.com>

	* infrun.c (start_remote): Don't clear thread list here.
	* monitor.c (monitor_open): Include "gdbthread.h".  Clear thread
	list here.
	* remote.c (record_currthread): Upgrade the main thread and its
	entry in the thread list if this is the first time we hear about
	threads.
	(remote_thread_alive): Consider magic_null_ptid or a ptid without
	a tid member always alive.
	(remote_find_new_threads): Don't update the main thread here.
	(remote_start_remote): Clear thread list here.  Always add the
	main thread.
	(extended_remote_attach_1): Add the main thread here.
	(extended_remote_mourn_1): Re-add the main thread here.
	(extended_remote_create_inferior_1): Add a main thread.

	* Makefile.in (monitor.o): Depend on $(gdbthread_h).

2008-06-27  Pedro Alves  <pedro@codesourcery.com>

	Use ptid_t.tid to store thread ids instead of ptid_t.pid.

	* remote.c (magic_null_ptid, not_sent_ptid, any_thread_ptid): New
	globals.
	(general_thread, continue_thread): Change type to ptid_t.
	(record_currthread): Take a ptid_t parameter instead of an
	integer.
	(MAGIC_NULL_PID): Delete.
	(set_thread): Take a ptid_t parameter and adjust.
	(set_general_thread, set_continue_thread): New.
	(remote_thread_alive, remote_newthread_step)
	(remote_current_thread, remote_find_new_threads)
	(remote_threads_info, remote_start_remote, remote_vcont_resume)
	(remote_resume_1, remote_wait, extended_remote_create_inferior_1)
	(threadalive_test, remote_pid_to_str)
	(remote_get_thread_local_address): Adjust.
	(_initialize_remote): Initialize magic_null_ptid, not_sent_ptid
	and any_thread_ptid.

2008-06-26  Jan Kratochvil  <jan.kratochvil@redhat.com>

	* configure.ac (--enable-tui): AC_MSG_ERROR for explicit --enable-tui.
	* configure: Regenerated.

2008-06-26  Joel Brobecker  <brobecker@adacore.com>

	* dwarf2read.c (read_attribute_value): Treat size attribute
	values of 0xffffffff as if the attribute value was zero.

2008-06-26  Vladimir Prus  <vladimir@codesourcery.com>

	* linux-nat.c: Add description of overall logic.

2008-06-26  Daniel Jacobowitz  <dan@codesourcery.com>

	* Makefile.in (GNULIB_H): Use GNULIB_STDINT_H.
	(gdb_stdint_h, gdb_stdint.h, stamp-int): Delete.  Remove
	all dependencies on $(gdb_stdint_h).
	(distclean): Do not delete gdb_stdint.h.
	* acinclude.m4: Do not use stdint.m4.
	* configure.ac: Set GNULIB_STDINT_H.  Remove tests for stdint.h,
	uintptr_t, and gdb_stdint.h.
	* defs.h: Include <stdint.h>.
	* gdb_thread_db.h: Assume stdint.h is already included.
	* breakpoint.c, findcmd.c, hppa-tdep.c, inf-ptrace.c, proc-service.c,
	rs6000-nat.c, spu-linux-nat.c, target.c, win32-nat.c: Do not
	include gdb_stdint.h.
	* configure, config.in: Regenerate.

2008-06-26  Joseph Myers  <joseph@codesourcery.com>

	* ppc-sysv-tdep.c (ppc_sysv_abi_push_dummy_call): Handle passing
	decimal floating-point values in GPRs for soft-float.
	(do_ppc_sysv_return_value): Handle returning decimal
	floating-point values in GPRs for soft-float.

2008-06-26  Vladimir Prus  <vladimir@codesourcery.com>

	* target.c (target_read_until_error): New.
	* target.h (target_read_until_error): Declare.
	* mi/mi-main.c (mi_cmd_data_read_memory): Use
	target_read_until_error.

2008-06-25  Jan Kratochvil  <jan.kratochvil@redhat.com>

	Fix a memory leak found by Hui Zhu <teawater@gmail.com>.
	* c-exp.y (parse_number): Move the S and SAVED_CHAR initialization
	after the DECFLOAT detection to fix a memory leak.  Remove the
	redundant NUM initialization.  Protect the DECFLOAT detection memory
	access before the P block.  Restore the P memory content for the
	DECFLOAT detection.

2008-06-25  Vladimir Prus  <vladimir@codesourcery.com>

	Kill the return value for all MI command functions.
	* mi/mi-cmds.h (enum mi_cmd_result): Remove.
	(mi_cmd_argv_ftype): Change return type to void.

	* mi/mi-main.c: Adjust all function that implement
	MI commands to return nothing.
	(struct captured_mi_execute_command_actions):
	Remove the rc field.
	(mi_cmd_execute): Return nothing.
	(mi_execute_async_cli_command): Return nothing.
	(mi_cmd_exec_interrupt): Don't print ^done here.
	(mi_cmd_target_select): Don't print ^connected here.
	(captured_mi_execute_command): Don't check for MI_CMD_DONE.
	Special-case -target-select and output ^connected, not ^done.

	* mi/mi-cmd-break.c: Adjust.
	* mi/mi-cmd-disas.c: Adjust.
	* mi/mi-cmd-env.c: Adjust.
	* mi/mi-cmd-file.c: Adjust.
	* mi/mi-cmd-stack.c: Adjust.
	* mi/mi-cmd-target.c: Adjust.
	* mi/mi-cmd-var.c: Adjust.
	* mi/mi-interp.c: Adjust.
	* mi/mi-symbol-cmds.c: Adjust.

2008-06-25  Vladimir Prus  <vladimir@codesourcery.com>

	Emit ^running via observer.
	* mi/mi-interp.c (mi_cmd_interpreter_exec): Do no print
	^running here.
	(mi_on_resume): Print ^running if not previously output.
	* mi/mi-main.c (running_result_record_printed): New.
	(captured_mi_execute_command): Reset
	running_result_record_printed.  Use running_result_record_printed
	to decide if we should skip ^done.
	(mi_execute_async_cli_command): Don't print ^running here.
	* mi/mi-main.h (current_token, running_result_record_printed):
	Declare.

2008-06-24  Michael Snyder  <msnyder@specifix.com>

	* infrun.c (_initialize_infrun): White space and typo fix.

2008-06-23  Christopher Faylor  <me.gdb.changelog@cgf.cx>

	* win32-nat.c (safe_symbol_file_add_stub): Remove unused variable.
	(do_initial_win32_stuff): Fix problem with inability to set breakpoints
	when first loading DLL with "dll" command.

2008-06-19  Pierre Muller  <muller@ics.u-strasbg.fr>

	* gnu-nat.c (proc_string): Use capital T for "Thread".

2008-06-19  Pierre Muller  <muller@ics.u-strasbg.fr>

	* win32-nat.c (win32_pid_to_str): Use capital T for "Thread".

2008-06-18  Joel Brobecker  <brobecker@adacore.com>

	* solib-osf.c (osf_solib_create_inferior_hook): Do nothing if
	the target cannot run.

2008-06-18  Joel Brobecker  <brobecker@adacore.com>

	* solib-osf.c (osf_solib_create_inferior_hook): Do nothing if
	we're attaching to a running process.

2008-06-18  Pierre Muller  <muller@ics.u-strasbg.fr>

	* win32-nat.c (handle_load_dll): Give dll name and load address
	if debug_events is on.
	(handle_unload_dll): Likewise.

2008-06-14  Vladimir Prus  <vladimir@codesourcery.com>

	Don't suppress *running when doing finish.
	* infcall.c (call_function_by_hand): Set both
	suppress_resume_observer and suppress_stop_observer.
	* infcmd.c (suppress_run_stop_observers): Split into...
	(suppress_resume_observer, suppress_stop_observer): ...those.
	(finish_command_continuation): Clear suppress_stop_observer.
	(finish_command): Set suppress_stop_observer.
	* inferior.h (suppress_run_stop_observers): Split into...
	(suppress_resume_observer, suppress_stop_observer): ...those.
	* infrun.c (normal_stop): Check for suppress_stop_observer.
	* thread.c (set_running): Check for suppress_resume_observer.

2008-06-12  Pedro Alves  <pedro_alves@portugalmail.pt>
	    Pierre Muller  <muller@ics.u-strasbg.fr>

	* gdbarch.sh (gdbarch_skip_main_prologue): New.
	* gdbarch.h, gdbarch.c: Regenerate.
	* i386-tdep.h (i386_skip_main_prologue): Declare.
	* i386-tdep.c (i386_skip_main_prologue): New.
	* i386-cygwin-tdep.c (i386_cygwin_init_abi): Register
	i386_skip_main_prologue as gdbarch_skip_main_prologue gdbarch callback.
	* symtab.c (find_function_start_sal): When pc points at the "main"
	function, call gdbarch_skip_main_prologue.

2008-06-11  Daniel Jacobowitz  <dan@codesourcery.com>

	* value.c (value_primitive_field): Fetch lazy register values.

2008-06-11  Pedro Alves  <pedro@codesourcery.com>

	* NEWS: Mention support removal of undocumented S AA p PID stop
	reply packet.

	* remote.c (remote_wait): Remove undocumented S AA p PID support.

2008-06-10  Stan Shebs  <stan@codesourcery.com>

	* MAINTAINERS: Update my affiliation and address.

2008-06-10  Andreas Schwab  <schwab@suse.de>

	* top.c (print_gdb_version): Don't print final newline.

2008-06-10  Vladimir Prus  <vladimir@codesourcery.com>

	Implement *running.
	* Makefile.in: Update dependencies.
	* gdbthread.h (struct thread_info): New field
	running_.
	(set_running, is_running): New.
	* thread.c (set_running, is_running): New.
	* inferior.h (suppress_normal_stop_observer): Rename to...
	(suppress_run_stop_observers): ..this.
	* infcmd.c (suppress_normal_stop_observer): Rename to...
	(suppress_run_stop_observers): ..this.
	(finish_command_continuation, finish_command): Adjust.
	* infcall.c (call_function_by_hand): Adjust.
	* infrun.c (normal_stop): Call set_running.
	* target.c (target_resume): New.  Call set_running.
	* target.h (target_resume): Convert from macro to
	a function.

	* mi/mi-interp.c (mi_on_resume): New.
	(mi_interpreter_init): Register mi_on_resume.

2008-06-10  Vladimir Prus  <vladimir@codesourcery.com>

	Use observers to report stop events in MI.
	* mi/mi-interp.c (mi_on_normal_stop): New.
	(mi_interpreter_init): Register mi_on_normal_stop.
	(mi_interpreter_exec_continuation): Remove.
	(mi_cmd_interpreter_exec): Don't register the above.
	* mi/mi-main.c (captured_mi_execute_command): Don't care
	about sync_execution.
	(mi_execute_async_cli_command): Don't install continuation.  Don't
	print *stopped.
	(mi_exec_async_cli_cmd_continuation): Remove.

2008-06-10  Vladimir Prus  <vladimir@codesourcery.com>

	Suppress normal stop observer when it's problematic.
	* inferior.h (suppress_normal_stop_observer): New.
	* infcall.c (call_function_by_hand): Disable stop events when
	doing function calls.
	* infmcd.c (suppress_normal_stop_observer): New.
	(finish_command_continuation): Call normal_stop observer
	explicitly.
	(finish_command): Disable stop events inside proceed.
	* infrun.c (normal_stop): Don't call normal stop observer if
	suppressed of if multi-step is in progress.

2008-06-10  Vladimir Prus  <vladimir@codesourcery.com>

	Remove stale code.
	* infrun.c (finish_command): Don't pass cleanup
	to continuation.
	(finish_command_continuation): Don't grab cleanup from
	the passed data, as we don't use, and cannot, use it anyway.

2008-06-10  Vladimir Prus  <vladimir@codesourcery.com>

	Introduce common cleanup for restoring integers.
	* defs.h (make_cleanup_restore_integer): New declaration.
	(struct cleanup): New field free_arg.
	(make_my_cleanup_2): New.
	* utils.c (restore_integer_closure, restore_integer)
	(make_cleanup_restore_integer): New.
	(make_my_cleanup): Initialize the free_arg field and
	renamed to make_my_cleanup_2.
	(do_my_cleanups): Call free_arg.
	(discard_cleanups): Call free_arg.
	* breakpoint.c (restore_always_inserted_mode): Remove.
	(update_breakpoints_after_exec): Use make_cleanup_restore_integer.

2008-06-09  Doug Evans  <dje@google.com>

	* remote.c (remote_wait): Include beginning of malformed packet
	in error output.

2008-06-09  Tom Tromey  <tromey@redhat.com>

	* completer.c (complete_line): Don't special-case
	expression_completer.
	(expression_completer): Only pass last word to
	location_completer.
	* c-exp.y (yylex): Check 'token', not 'operator'.

2008-06-09  Daniel Jacobowitz  <dan@codesourcery.com>

	* configure.ac (build_warnings): Add -Wno-format for mingw.
	* configure: Regenerated.

2008-06-07  Daniel Jacobowitz  <dan@codesourcery.com>

	* NEWS: Make indentation consistent.  Move exec tracing entry out
	of remote packet list.

2008-06-06  Tom Tromey  <tromey@redhat.com>

	* value.h (evaluate_subexpression_type, extract_field_op):
	Declare.
	* printcmd.c (_initialize_printcmd): Use expression_completer for
	'p', 'inspect', 'call'.
	* parser-defs.h (parse_field_expression): Declare.
	* parse.c: Include exceptions.h.
	(in_parse_field, expout_last_struct): New globals.
	(mark_struct_expression): New function.
	(prefixify_expression): Return int.
	(prefixify_subexp): Return int.  Use expout_last_struct.
	(parse_exp_1): Update.
	(parse_exp_in_context): Add 'out_subexp' argument.  Handle
	in_parse_field.
	(parse_field_expression): New function.
	* expression.h (parse_field_expression): Declare.
	(in_parse_field): Likewise.
	* eval.c (evaluate_subexpression_type): New function.
	(extract_field_op): Likewise.
	* completer.h (expression_completer): Declare.
	* completer.c (expression_completer): New function.
	(count_struct_fields, add_struct_fields): New functions.
	* c-exp.y (yyparse): Redefine.
	(COMPLETE): New token.
	(exp): New productions.
	(saw_name_at_eof, last_was_structop): New globals.
	(yylex): Return COMPLETE when needed.  Recognize in_parse_field.
	(c_parse): New function.
	* breakpoint.c (_initialize_breakpoint): Use expression_completer
	for watch, awatch, and rwatch.
	* Makefile.in (parse.o): Depend on exceptions_h.

2008-06-06  Paul Pluzhnikov  <ppluzhnikov@google.com>

	PR gdb/1147
	* gdb/valopts.c (find_overload_match): Handle references
	to pointers.

2008-06-06  Paul N. Hilfinger  <hilfinger@adacore.com>

	* ada-lang.c (ada_value_assign): Correct big-endian case to take into
	account the bitsize of the 'from' operand.

2008-06-06  Pedro Alves  <pedro@codesourcery.com>

	* annotate.h (annotate_thread_changed): Declare.

2008-06-06  Nick Roberts  <nickrob@snap.net.nz>

	* annotate.c (annotate_thread_changed): New function.
	* thread.c (thread_command) : Use it.
	* infrun.c (normal_stop): Use it.

2008-06-05  Vladimir Prus  <vladimir@codesourcery.com>
	    Nathan Sidwell  <nathan@codesourcery.com>
	    Joseph Myers  <joseph@codesourcery.com>

	* acinclude.m4: Include ../config/acx.m4.
	* configure.ac: Use ACX_PKGVERSION and ACX_BUGURL.
	* configure, config.in: Regenerate.
	* main.c (print_gdb_help): Use REPORT_BUGS_TO for bug-reporting
	address.
	* top.c (print_gdb_version): Use PKGVERSION and REPORT_BUGS_TO.

2008-06-05  Pedro Alves  <pedro@codesourcery.com>

	Replace 'target async' by 'maintenance set remote-async' and
	'target remote' combination.

	* remote.c (remote_async_wait): Merge into remote_wait, and
	remove.
	(remote_async_permitted, remote_async_permitted_set): New
	variables.
	(set_maintenance_remote_async_permitted)
	(show_maintenance_remote_async_permitted): New functions.
	(remote_async_ops, extended_async_remote_ops): Delete.
	(remote_async_open, extended_remote_async_open): Delete.
	(remote_open_1): Drop async_p parameter.  Update callers.  Replace
	async_p with remote_async_permitted checks.
	(extended_async_remote_attach): Delete.
	(remote_resume, remote_async_resume): Merge and leave remote_resume.
	(remote_async_terminal_inferior): Rename to...
	(remote_terminal_inferior): ... this, and add
	remote_async_termitted check.
	(remote_async_terminal_ours): Rename to...
	(remote_terminal_ours): ... this, and add remote_async_termitted
	check.
	(remote_wait, remote_async_wait): Merge and leave remote_wait
	only.
	(remote_kill, remote_async_kill): Merge and leave remote_kill
	only.
	(remote_async_mourn, extended_async_remote_mourn): Delete.
	(extended_remote_create_inferior_1): Drop async_p parameter.
	Update callers.  Always use extended_remote_ops.
	(extended_remote_async_create_inferior): Delete.
	(remote_return_zero): Delete.
	(init_remote_ops): Register remote_can_async_p, remote_async,
	remote_async_mask, remote_terminal_inferior and
	remote_terminal_ours.
	(remote_can_async_p, remote_is_async_p): Check for
	remote_async_permitted.
	(init_remote_async_ops, init_extended_async_remote_ops): Remove.
	(set_remote_cmd): Don't add async and extended-async targets.
	(_initialize_remote): Add set/show remote-async maintenance
	commands.

2008-06-05  Pedro Alves  <pedro@codesourcery.com>

	* remote.c (kill_kludge): Delete.
	(remote_wait, remote_async_wait): Don't set it.
	(remote_kill, remote_async_kill): Don't do anything with it.

2008-06-05  Pedro Alves  <pedro@codesourcery.com>

	* linux-thread-db.c (thread_db_wait): Don't trim event ptid.

2008-06-05  Aleksandar Ristovski  <aristovski@qnx.com>

	* bcache.c (bcache_data): Call deprecated_bcache_added function.
	(deprecated_bcache_added): New function name. Body of function
	bcache_data is used here with the addition of 'added' argument.
	* bcache.h (deprecated_bcache_added): New function.
	* symfile.c (add_psymbol_to_bcache): New helper function, takes part of
	work from add_psymbol_to_list - initialises partial symbol and stashes
	it in objfile's cache.
	(append_psymbol_to_list): New helper function, takes other part of
	work from add_psymbol_to_list - adds partial symbol to the given list.
	(add_psymbol_to_list): Call helper functions instead of doing work
	here. If adding to global list, do not duplicate partial symbols in the
	partial symtab.

2008-06-05  Aleksandar Ristovski  <aristovski@qnx.com>

	* breakpoint.c (print_exception_catchpoint): Put 'exception' back to
	'exception caught|thrown' message.

2008-06-05  Jan Kratochvil  <jan.kratochvil@redhat.com>

	* Makefile.in: Update dependencies.
	* dwarf2expr.c: New include "gdb_assert.h".
	(new_dwarf_expr_context): Initialize MAX_RECURSION_DEPTH.
	(dwarf_expr_eval): Sanity check the RECURSION_DEPTH count.
	(execute_stack_op): Error out on too large RECURSION_DEPTH.
	Increase/decrease RECURSION_DEPTH around the function.

2008-06-05  Daniel Jacobowitz  <dan@codesourcery.com>

	* remote.c (get_offsets): Handle a single segment.
	* symfile.c (symfile_map_offsets_to_segments): Allow more bases
	than segments.

2008-06-03  Daniel Jacobowitz  <dan@codesourcery.com>

	* solib-svr4.c (struct lm_info): Add lm_addr.
	(main_lm_addr): New.
	(svr4_default_sos): Set lm_addr.
	(svr4_current_sos): Set lm_addr and main_lm_addr.
	(svr4_fetch_objfile_link_map): Rewrite.
	(svr4_clear_solib): Clear main_lm_addr.

2008-06-03  Michael Snyder  <msnyder@redhat.com>
	    Joseph Myers  <joseph@codesourcery.com>

	* mips-tdep.c (mips_eabi_return_value): Replace stub that always
	returned RETURN_VALUE_STRUCT_CONVENTION with a real function.

2008-06-02  Roman Zippel <zippel@linux-m68k.org>

	* m68klinux-tdep.c (m68k_linux_pc_in_sigtramp): Fix incorrect test.

2008-06-02  Roman Zippel <zippel@linux-m68k.org>

	* m68k-tdep.c (m68k_analyze_prologue): Fix length of lea insn.

2008-06-01  Joel Brobecker  <brobecker@adacore.com>

	* rs6000-aix-tdep.c (rs6000_convert_from_func_ptr_addr): Do not
	treat pointers in data space as function descriptors if the
	target address is also in the data space.

2008-05-30  Joel Brobecker  <brobecker@adacore.com>

	* alpha-tdep.c (alpha_heuristic_frame_unwind_cache): Set
	the trad-frame register value for the SP register.

2008-05-29  Mark Kettenis  <kettenis@gnu.org>

	* sparcnbsd-tdep.c, sparcobsd-tdep.c: Update for unwinder changes.

2008-05-28  Joel Brobecker  <brobecker@adacore.com>

	* ia64-tdep.c (ia64_convert_from_func_ptr_addr): Improve the heuristic
	that identifies function descriptors outside of the .opd section.

2008-05-28  Aleksandar Ristovski  <aristovski@qnx.com>

	* breakpoint.c (print_exception_catchpoint): In CLI add 'Temporary' for
	temporary catchpoints.  In MI add missing fields 'reason', 'disp',
	'bkptno'.
	(print_mention_exception_catchpoint): Add 'Temporary' for temporary
	catchpoints.
	(handle_gnu_v3_exceptions): Use tempflag.

2008-05-28  Vladimir Prus  <vladimir@codesourcery.com>

	Refactor varobj_update interface.
	* varobj.c (varobj_update): Report changes as vector.  Also
	return not just a list of varobj, but a list of special structures
	that tell what exactly has changed.
	* varobj.h (enum varobj_update_error): Rename to
	varobj_scope_status.
	(struct varobj_update_result_t): New.
	(varobj_update): Adjust prototype.
	* mi/mi-cmd-var.c: Adjust for changes.

2008-05-28  Vladimir Prus  <vladimir@codesourcery.com>

	* varobj.c (varobj_update): Fix comment typo.
	Fix indentation.

2008-05-26  Joel Brobecker  <brobecker@adacore.com>

	Set the symtab field of symbols read from ECOFF debugging entries.
	* mdebugread.c (add_symbol): Add new parameter symtab.
	(parse_symbol): Update calls to add_symbol throughout.

2008-05-27  Andreas Schwab  <schwab@suse.de>

	* symtab.h (enum address_class): Remove LOC_REGPARM and
	LOC_COMPUTED_ARG.
	(struct symbol): Add is_argument.
	(SYMBOL_IS_ARGUMENT): Define.

	* ada-lang.c (ada_add_block_symbols): Use SYMBOL_IS_ARGUMENT.
	* buildsym.c (finish_block): Likewise.
	* stack.c (print_frame_args, print_block_frame_locals)
	(print_frame_arg_vars): Likewise.
	* symtab.c (lookup_block_symbol): Likewise.
	* tracepoint.c (add_local_symbols): Likewise.
	* mi/mi-cmd-stack.c (list_args_or_locals): Likewise.

	* coffread.c (process_coff_symbol): Set SYMBOL_IS_ARGUMENT.
	* dwarf2read.c (new_symbol): Likewise.
	* mdebugread.c (parse_symbol): Likewise.
	* stabsread.c (define_symbol): Likewise.

	* ada-exp.y (select_possible_type_sym): Don't handle LOC_REGPARM
	and LOC_COMPUTED_ARG.
	* ada-lang.c (resolve_subexp, symtab_for_sym): Likewise.
	* ax-gdb.c (gen_var_ref): Likewise.
	* eval.c (evaluate_subexp_for_address): Likewise.
	* findvar.c (symbol_read_needs_frame, read_var_value): Likewise.
	* m2-exp.y (yylex): Likewise.
	* printcmd.c (address_info): Likewise.
	* symmisc.c (print_symbol, print_partial_symbols): Likewise.
	* tracepoint.c (collect_symbol, scope_info): Likewise.

2008-05-24  Carlos Eduardo Seo  <cseo@linux.vnet.ibm.com>

	* gdbarch.sh: Added new gdbarch struct
	core_regset_sections.
	* gdbarch.c: Refreshed.
	* gdbarch.h: Refreshed.
	* regset.h (core_regset_section): Declared.
	* linux-nat.c (linux_nat_do_thread_registers): Added
	support for the new gdbarch struct core_regset_sections.
	* utils.c (host_address_to_string): New function.
	* defs.h (host_address_to_string): New prototype.
	* i386-linux-tdep.c (i386_regset_rections): New register
	sections list for i386.
	  (i386_linux_init_abi): Initialized new gdbarch struct
	  core_regset_sections.
	* Makefile.in: Updated to reflect dependency changes.
	* ppc-linux-tdep.c (ppc_regset_sections): Register
	sections list for ppc.
	  (ppc_linux_init_abi): Initialized new gdbarch struct
	  core_regset_sections

2008-05-24  Andreas Schwab  <schwab@suse.de>

	* linespec.c (decode_objc): Save current language around call to
	get_selected_block.

2008-05-23  Joel Brobecker  <brobecker@adacore.com>

	* valprint.h (get_array_bounds): Renames get_array_low_bound.
	* valprint.c (get_array_bounds): Renames get_array_low_bound.
	Return the proper bound value if the array index type is an
	enumerated type. Compute the high bound if requested.
	(val_print_array_elements): Handle the case when the array
	element has a null size.
	* ada-valprint.c (print_optional_low_bound): Add handling
	for empty arrays or arrays of zero-size elements.
	(ada_val_print_array): New function, extracted out from
	ada_val_print_1 case TYPE_CODE_ARRAY, and enhanced to
	handle empty arrays and arrays of zero-size elements.
	(ada_val_print_1)[case TYPE_CODE_ARRAY]: Replace extracted-out
	code by call to ada_val_print_array.
	(ada_value_print): Remove handling of null array.  The handling
	was incomplete and is now better handled by ada_val_print_array.

2008-05-23 Markus Deuling  <deuling@de.ibm.com>

	* annotate.c (annotate_source, annotate_frame_begin): Replace
	deprecated_print_address_numeric with paddress.
	* cli/cli-cmds.c (list_command, edit_command): Likewise.
	* tui/tui-stack.c (tui_make_status_line): Likewise.

	* defs.h (deprecated_print_address_numeric): Remove.
	* printcmd.c (deprecated_print_address_numeric): Remove.
	* maint.c (maint_print_section_info): Fix comment.

2008-05-23 Markus Deuling  <deuling@de.ibm.com>

	* valprint.c (print_hex_chars, print_octal_chars, print_decimal_chars,
	print_binary_chars, print_char_chars): Add byte_order parameter and
	replace gdbarch_byte_order.
	(print_decimal_chars): Replace START_P, NOT_END_P and NEXT_P by their
	expressions and remove them.  Remove unused TWO_TO_FOURTH.
	(val_print_type_code_int): Introduce gdbarch_byte_order to get at the
	endianness.  Update call to print_hex_chars.
	* valprint.h (print_hex_chars, print_octal_chars, print_decimal_chars,
	print_binary_chars, print_char_chars): Add byte_order parameter.
	* printcmd.c (print_scalar_formatted): Introduce gdbarch_byte_order to
	get at the endianness.  Update print_*_char calls to use byte_order.

2008-05-22  Ulrich Weigand  <uweigand@de.ibm.com>

	* symtab.h (struct symbol): Make "aux_value" member a void pointer
	instead of a union.
	(SYMBOL_LOCATION_BATON): Update.

2008-05-22  Ulrich Weigand  <uweigand@de.ibm.com>

	* symtab.h (enum address_class): Remove LOC_BASEREG and
	LOC_BASEREG_ARG.
	(struct symbol): Remove "basereg" member of "aux_value" union.
	(SYMBOL_BASEREG): Remove.

	* ada-exp.y (select_possible_type_sym): Do not handle LOC_BASEREG
	or LOC_BASEREG_ARG.
	* ada-lang.c (resolve_subexp, symtab_for_sym): Likewise.
	(ada_add_block_symbols): Likewise.
	* ax-gdb.c (gen_var_ref): Likewise.
	* buildsym.c (finish_block): Likewise.
	* findvar.c (symbol_read_needs_frame, read_var_value): Likewise.
	* m2-exp.y (yylex): Likewise.
	* mi/mi-cmd-stack.c (list_args_or_locals): Likewise.
	* printcmd.c (address_info): Likewise.
	* stack.c (print_frame_args, print_block_frame_locals): Likewise.
	(print_frame_arg_vars): Likewise.
	* symmisc.c (print_symbol): Likewise.
	* symtab.c (lookup_block_symbol): Likewise.
	* tracepoint.c (collect_symbol, add_local_symbols): Likewise.
	(scope_info): Likewise.

2008-05-22  Ulrich Weigand  <uweigand@de.ibm.com>

	* symtab.h (enum address_class): Remove LOC_LOCAL_ARG.

	* ada-exp.y (select_possible_type_sym): Do not handle LOC_LOCAL_ARG.
	* ada-lang.c (resolve_subexp, symtab_for_sym): Likewise.
	(ada_add_block_symbols): Likewise.
	* ax-gdb.c (gen_var_ref): Likewise.
	* buildsyms.c (finish_block): Likewise.
	* findvar.c (symbol_read_needs_frame, read_var_value): Likewise.
	* m2-exp.y (yylex): Likewise.
	* mi/mi-cmd-stack.c (list_args_or_locals): Likewise.
	* printcmd.c (address_info): Likewise.
	* stack.c (print_frame_args, print_frame_arg_vars): Likewise.
	* symmisc.c (print_symbol, print_partial_symbols): Likewise.
	* symtab.c (lookup_block_symbol): Likewise.
	* tracepoint.c (collect_symbol, add_local_symbols): Likewise.
	(scope_info): Likewise.

2008-05-22  Ulrich Weigand  <uweigand@de.ibm.com>

	* symtab.h (enum address_class): Remove LOC_INDIRECT and
	LOC_HP_THREAD_LOCAL_STATIC.

	* findvar.c (symbol_read_needs_frame, read_var_value): Do not
	handle LOC_INDIRECT or LOC_HP_THREAD_LOCAL_STATIC.
	(read_var_value): Likewise.
	* buildsym.c (finish_block): Likewise.
	* objfiles.c (objfile_relocate): Likewise.
	* printcmd.c (address_info): Likewise.
	* symmisc.c (print_symbol, print_partial_symbols): Likewise.
	* tracepoint.c (scope_info): Likewise.

2008-05-21 Markus Deuling  <deuling@de.ibm.com>
	   Maxim Grigoriev  <maxim2405@gmail.com>

	* xtensa-tdep.c (xtensa_read_register): Remove.
	(xtensa_frame_cache): Get rid of xtensa_read_register. Pass extra
	argument litbase to call0_frame_cache().
	(call0_track_op, call0_analyze_prologue)
	(call0_frame_cache): Use extra argument litbase.

2008-05-21  Joel Brobecker  <brobecker@adacore.com>

	* infcmd.c (_initialize_infcmd): Add new "fin" alias for "finish".

2008-05-21  Ulrich Weigand  <uweigand@de.ibm.com>

	* frame.h (SIZEOF_FRAME_SAVED_REGS): Remove.

2008-05-21  Ulrich Weigand  <uweigand@de.ibm.com>

	* alpha-mdebug-tdep.c: Include "trad-frame.h".
	(struct alpha_mdebug_unwind_cache): Change type of SAVED_REGS to
	struct trad_frame_saved_reg *.
	(alpha_mdebug_frame_unwind_cache): Allocate SAVED_REGS using
	trad_frame_alloc_saved_regs.  Update accesses.  Record previous
	value of SP as being vfp.
	(alpha_mdebug_frame_prev_register): Use trad_frame_get_prev_register.
	* Makefile.in (alpha-mdebug-tdep.o): Update dependencies.

2008-05-21  Markus Deuling  <deuling@de.ibm.com>

	* score-tdep.c (score_print_insn): Get the current endianess from
	disassemble_info instead of gdbarch_byte_order.

2008-05-21  Pedro Alves  <pedro@codesourcery.com>

	* frame.c (get_prev_frame_1): Build frame id before setting
	this_frame->prev_p, not after.

2008-05-21  Nick Roberts  <nickrob@snap.net.nz>

	* annotate.c (annotate_new_thread): New function for new-thread
	annotation.
	* annotate.h: (annotate_new_thread): New extern.
	* thread.c (add_thread_with_info): Use it.
	* Makefile.in (thread.o): Add dependency on annotate.h.

2008-05-20  Joel Brobecker  <brobecker@adacore.com>

	* win32-nat.c (win32_wait): Block the control-c event while
	waiting for a debug event.

2008-05-19  Pedro Alves  <pedro@codesourcery.com>

	* symtab.h (lookup_symbol_in_language): Update comment.
	* symtab.c (lookup_symbol_aux_block): Update comment.
	* ada-lang.c (ada_lookup_symbol_list): Update comment.

2008-05-19  Ulrich Weigand  <uweigand@de.ibm.com>

	* symtab.h (lookup_symbol_in_language): Remove SYMTAB parameter.
	(lookup_symbol): Likewise.
	* symtab.c (lookup_symbol_in_language): Remove SYMTAB parameter.
	(lookup_symbol): Likewise.
	(search_symbols): Update.

	* linespec.c (find_methods, collect_methods): Update.
	(add_matching_methods, add_constructors): Update.
	(decode_compound, decode_dollar, decode_variable): Update.
	(lookup_prefix_sym): Update.

	(symbol_found): Remove SYM_SYMTAB parameter.
	Use SYMBOL_SYMTAB (sym) instead.

	* gdbtypes.c (lookup_typename): Update.
	(lookup_struct, lookup_union, lookup_enum): Update.
	(lookup_template_type): Update.
	(check_typedef): Update.
	* language.c (lang_bool_type): Update.
	* mdebugread.c (parse_procedure): Update.
	* mi/mi-cmd-stack.c (list_args_or_locals): Update.
	* parse.c (write_dollar_variable): Update.
	* printcmd.c (address_info): Update.
	* source.c (select_source_symtab): Update.
	* stack.c (print_frame_args, print_frame_arg_vars): Update.
	* valops.c (find_function_in_inferior): Update.
	(value_struct_elt_for_reference): Update.
	* value.c (value_static_field, value_fn_field): Update.

	* alpha-mdebug-tdep.c (find_proc_desc): Update.
	* arm-tdep.c (arm_skip_prologue): Update.
	* mt-tdep.c (mt_skip_prologue): Update.
	* xstormy16-tdep.c (xstormy16_skip_prologue): Update.

	* ada-lang.h (struct ada_symbol_info): Remove SYMTAB member.
	* ada-lang.c (ada_add_block_symbols): Remove SYMTAB parameter.
	(add_defn_to_vec): Likewise.
	(ada_add_block_symbols): Likewise.
	(lookup_cached_symbol, cache_symbol): Likewise.
	(standard_lookup): Update.
	(ada_lookup_symbol_list): Update.

	* c-valprint.c (c_val_print): Update.
	* cp-support.c (cp_lookup_rtti_type): Update.
	* jv-lang.c (java_lookup_class, get_java_object_type): Update.
	* objc-lang.c (lookup_struct_typedef, find_imps): Update.
	* p-valprint.c (pascal_val_print): Update.
	* scm-lang.c (scm_lookup_name): Update.

	* c-exp.y: Update.
	* f-exp.y: Update.
	* jv-exp.y: Update.
	* m2-exp.y: Update.
	* objc-exp.y: Update.
	* p-exp.y: Update.

2008-05-19  Ulrich Weigand  <uweigand@de.ibm.com>

	* language.h (struct language_defn): Remove SYMTAB parameter from
	la_lookup_symbol_nonlocal callback function pointer.

	* ada-lang.h (ada_lookup_encoded_symbol): Remove SYMTAB parameter.
	(ada_lookup_encoded_symbol): Likewise.
	* ada-lang.c (ada_lookup_encoded_symbol): Remove SYMTAB parameter.
	Always call fixup_symbol_section.
	(ada_lookup_symbol): Remove SYMTAB parameter.
	(ada_lookup_symbol_nonlocal): Likewise.
	* ada-exp.y (write_object_renaming): Update.
	(find_primitive_type): Likewise.

	* cp-support.h (cp_lookup_symbol_nonlocal): Remove SYMTAB parameter.
	(cp_lookup_symbol_namespace): Likewise.
	* cp-namespace.c (lookup_namespace_scope): Remove SYMTAB parameter.
	(lookup_symbol_file): Likewise.
	(lookup_possible_namespace_symbol): Likewise.
	(cp_lookup_symbol_nonlocal): Likewise.
	(cp_lookup_symbol_namespace): Likewise.
	(cp_lookup_nested_type): Update.

	* scm-valprint.c (scm_inferior_print): Update.
	* valops.c (value_maybe_namespace_elt): Update.

	* solist.h (struct target_so_ops): Remove SYMTAB parameter from
	lookup_lib_global_symbol callback function pointer.
	(solib_global_lookup): Remove SYMTAB parameter.
	* solib.c (solib_global_lookup): Remove SYMTAB parameter.
	* solib-svr4.c (elf_lookup_lib_symbol): Likewise.

	* symtab.h (basic_lookup_symbol_nonlocal): Remove SYMTAB parameter.
	(lookup_symbol_static): Likewise.
	(lookup_symbol_global): Likewise.
	(lookup_symbol_aux_block): Likewise.
	(lookup_global_symbol_from_objfile): Likewise.
	* symtab.c (lookup_symbol_aux): Remove SYMTAB parameter.
	(lookup_symbol_aux_local): Likewise.
	(lookup_symbol_aux_block): Likewise.
	(lookup_symbol_aux_symtabs): Likewise.
	(lookup_symbol_aux_psymtabs): Likewise.
	(lookup_global_symbol_from_objfile): Likewise.
	(basic_lookup_symbol_nonlocal): Likewise.
	(lookup_symbol_static): Likewise.
	(lookup_symbol_global): Likewise.

	(lookup_symbol_in_language): Do not pass SYMTAB to lookup_symbol_aux.

2008-05-17  Pedro Alves  <pedro@codesourcery.com>

	* remote.c (init_extended_remote_ops): Fix typo.

2008-05-16  Pedro Alves  <pedro@codesourcery.com>

	* NEWS: Mention new DICOS x86 target configuration.

2008-05-16  Pedro Alves  <pedro@codesourcery.com>
	    Ulrich Weigand  <uweigand@de.ibm.com>

	* minsyms.c (lookup_minimal_symbol_by_pc_name): New function.
	* symtab.h (lookup_minimal_symbol_by_pc_name): Add prototype.

	* symtab.c (fixup_section): Remove prototype.  Add ADDR parameter;
	use it instead of ginfo->value.address.  Look up minimal symbol by
	address and name.  Assume OBJFILE is non-NULL.
	(fixup_symbol_section): Ensure we always have an objfile to look
	into.  Extract and pass to fixup_section the symbol's address that
	will match the minimal symbol's address.
	(fixup_psymbol_section): Likewise.

	(find_pc_sect_psymtab): Fall back to non-addrmap case when debugging
	overlays and the addrmap returned the wrong section.

	* dwarf2read.c (var_decode_location): Set SYMBOL_CLASS before
	calling fixup_symbol_section.

2008-05-16  Ulrich Weigand  <uweigand@de.ibm.com>

	* minsyms.c: Include "target.h".
	(find_solib_trampoline_target): Handle minimal symbols pointing
	to function descriptors as well.
	* Makefile.in (minsyms.o): Update dependencies.

	* ppc-linux-tdep.c (ppc64_standard_linkage): Rename to ...
	(ppc64_standard_linkage1): ... this.  Fix optional instructions.
	(PPC64_STANDARD_LINKAGE_LEN): Rename to ...
	(PPC64_STANDARD_LINKAGE1_LEN): ... this.
	(ppc64_standard_linkage2, ppc64_standard_linkage3): New.
	(PPC64_STANDARD_LINKAGE2_LEN, PPC64_STANDARD_LINKAGE3_LEN): New.
	(ppc64_standard_linkage_target): Rename to ...
	(ppc64_standard_linkage1_target): ... this.
	(ppc64_standard_linkage2_target, ppc64_standard_linkage3_target): New.
	(ppc64_skip_trampoline_code): Support three variants of standard
	linkage stubs.  Call find_solib_trampoline_target to handle
	glink stubs.

2008-05-16  Ulrich Weigand  <uweigand@de.ibm.com>

	* ppc-linux-tdep.c (ppc_linux_init_abi): Do not install
	ppc64_sysv_abi_adjust_breakpoint_address.
	* ppc-sysv-tdep.c (ppc64_sysv_abi_adjust_breakpoint_address): Remove.
	* ppc-tdep.h (ppc64_sysv_abi_adjust_breakpoint_address): Remove.

2008-05-16  Ulrich Weigand  <uweigand@de.ibm.com>

	* ppc-linux-tdep.c (ppc_linux_skip_trampoline_code): Remove.
	(ppc_linux_init_abi): Install find_solib_trampoline_target instead
	of ppc_linux_skip_trampoline_code.

2008-05-15  Daniel Jacobowitz  <dan@codesourcery.com>

	* gdbarch.sh: Delete dwarf_reg_to_regnum.
	* gdbarch.c, gdbarch.h: Regenerated.
	* amd64-tdep.c, arm-tdep.c, h8300-tdep.c, hppa-linux-tdep.c,
	hppa-tdep.c, i386-tdep.c, m32c-tdep.c, m68k-tdep.c, mips-tdep.c,
	s390-tdep.c, xtensa-tdep.c: Do not set dwarf_reg_to_regnum.

2008-05-15  Pedro Alves  <pedro@codesourcery.com>

	* linux-nat.c (trap_ptid): Delete.
	(linux_nat_detach, linux_nat_wait, linux_nat_mourn_inferior):
	Adjust.
	* linux-thread-db.c (thread_db_wait): Adjust.

2008-05-15  Joel Brobecker  <brobecker@adacore.com>

	* linespec.c (decode_line_1): Fix a couple of comments.

2008-05-15  Alan Modra  <amodra@bigpond.net.au>

	* dbxread.c: Formatting.
	(INTERNALIZE_SYMBOL): Init n_other.
	(set_namestring): Take pointer to nlist arg rather than struct
	copy.  Update all callers.

2008-05-15  Andreas Schwab  <schwab@suse.de>

	* Makefile.in (dwarf2loc.o): Remove $(addrmap_h).
	(dwarf2read.o): Add $(addrmap_h).

2008-05-14  Ulrich Weigand  <uweigand@de.ibm.com>

	* ppc-linux-tdep.c (ppc_linux_convert_from_func_ptr_addr): Rename ...
	(ppc64_linux_convert_from_func_ptr_addr): ... to this.  No longer try
	to handle ppc32 PLT entries.
	(ppc_linux_init_abi): Install ppc64_linux_convert_from_func_ptr_addr
	only on ppc64.

2008-05-14  Daniel Jacobowitz  <dan@codesourcery.com>

	* elfread.c (elf_symtab_read): Create trampolines for @plt symbols.
	* minsyms.c (lookup_minimal_symbol_by_pc_section_1): Renamed from
	lookup_minimal_symbol_by_pc_section.  Prefer trampolines if requested.
	(lookup_minimal_symbol_by_pc_section): Use
	lookup_minimal_symbol_by_pc_section_1.
	(lookup_solib_trampoline_symbol_by_pc): Likewise.

2008-05-13  Joel Brobecker  <brobecker@adacore.com>

	* findcmd.c: Add #include "gdb_stdint.h".
	* Makefile.in (findcmd.o): Update dependencies.

2008-05-11  David S. Miller  <davem@davemloft.net>

	* sparc-linux-tdep.c (sparc32_linux_init_abi): Remove
	long double size override, Linux does use 128-bit now.

	* sparc-linux-tdep.c (PSR_SYSCALL): Define.
	(sparc_linux_write_pc): New function.
	(sparc32_linux_init_abi): Register it.
	* sparc64-linux-tdep.c (TSTATE_SYSCALL): Define.
	(sparc64_linux_write_pc): New function.
	(sparc64_linux_init_abi): Register it.

 	* sparc-linux-tdep.c, sparc64-linux-tdep.c: Use
	dwarf2_append_unwinders(), not dwarf2_frame_sniffer.

2008-05-11  Ulrich Weigand  <uweigand@de.ibm.com>

	* rs6000-tdep.c (rs6000_gdbarch_init): Set up info.target_desc
	and info.tdep_info before calling gdbarch_init_osabi.

2008-05-09  Joel Brobecker  <brobecker@adacore.com>

	* ada-lang.c (ada_evaluate_subexp) [BINOP_ASSIGN]: Do not force
	the type of the right hand side of the assignment to the type
	of the left hand side if the left hand side is a convenience
	variable.

2008-05-09  Ulrich Weigand  <uweigand@de.ibm.com>

	* NEWS: Mention gdbserver bi-arch capability.

2008-05-09  Doug Evans  <dje@google.com>

	New "find" command.
	* NEWS: Document find command and qSearch:memory packet.
	* Makefile.in (SFILES): Add findcmd.c.
	(COMMON_OBJS): Add findcmd.o.
	(findcmd.o): New rule.
	* findcmd.c: New file.
	* target.h (target_ops): New member to_search_memory.
	(simple_search_memory): Declare.
	(target_search_memory): Declare.
	* target.c (simple_search_memory): New fn.
	(target_search_memory): New fn.
	* remote.c (PACKET_qSearch_memory): New packet kind.
	(remote_search_memory): New fn.
	(init_remote_ops): Init to_search_memory.
	(init_extended_remote_ops): Ditto.
	(_initialize_remote): Add qSearch:memory packet config command.

2008-05-09  Eli Zaretskii  <eliz@gnu.org>

	* thread.c (_initialize_thread): Don't use commas and periods in
	first line of doc string of "set/show print thread-events".

2008-05-08  Joel Brobecker  <brobecker@adacore.com>

	* alpha-mdebug-tdep.c, alpha-osf1-tdep.c, alpha-tdep.c:
	Update for unwinder changes.

2008-05-08  Joel Brobecker  <brobecker@adacore.com>

	* frame.c (get_frame_base_address, get_frame_locals_address)
	(get_frame_args_address): Pass the correct frame when calling
	frame_base_find_by_frame.

2008-05-08  Ulrich Weigand  <uweigand@de.ibm.com>

	* remote.c (extended_remote_attach_1): Call target_find_description.

2008-05-08  Daniel Jacobowitz  <dan@codesourcery.com>

	* remote.c (extended_remote_create_inferior_1): Clean up
	before marking the target running.

2008-05-08  Joel Brobecker  <brobecker@adacore.com>

	* hppa-tdep.h, hppa-tdep.c, hppa-hpux-tdep.c: Update for unwinder
	changes.

2008-05-07  Joel Brobecker  <brobecker@adacore.com>

	* sparc-tdep.c, sparc-tdep.h, sparc-sol2-tdep.c, sparc64-tdep.c,
	sparc64-sol2-tdep.c: Update for unwinder changes.

2008-05-07  Daniel Jacobowitz  <dan@codesourcery.com>

	* cp-support.c (mangled_name_to_comp): Initialize storage.
	(unqualified_name_from_comp): Likewise.

2008-05-07  Jie Zhang  <jie.zhang@analog.com>

	* remote.c (remote_insert_breakpoint): Call get_remote_state
	after gdbarch_breakpoint_from_pc is called.
	(remote_insert_hw_breakpoint): Likewise.

2008-05-06  Joel Brobecker  <brobecker@adacore.com>

	* valprint.c (val_print): Add new language parameter and use it
	instead of using the current_language. Update calls to val_print
	throughout.
	(common_val_print): Add new langauge parameter and pass it to
	val_print.
	* value.h (struct language_defn): Add opaque declaration.
	(val_print, common_val_print): Update declarations.
	* stack.c (print_frame_args): Update call to common_val_print
	using the appropriate language.
	* mi/mi-cmd-stack.c (list_args_or_locals): Likewise.
	* c-valprint, f-valprint.c, m2-valprint.c, mt-tdep.c, infcmd.c,
	mi/mi-main.c, jv-valprint.c, ada-valprint.c, varobj.c, p-valprint.c,
	scm-valprint.c, cp-valprint.c, sh64-tdep.c, printcmd.c:
	#include "language.h" if necessary.
	Update calls to val_print and common_val_print.
	* Makefile.in (mt-tdep.o, sh64-tdep.o, mi-cmds.o, mi-main.o):
	Update dependencies.

2008-05-06  Joel Brobecker  <brobecker@adacore.com>

	* ia64-tdep.c (ia64_convert_from_func_ptr_addr): Treat addresses
	pointing inside a non-executable section as function descriptors.

2008-05-06  Pedro Alves  <pedro@codesourcery.com>

	* inf-loop.c (inferior_event_handler): Run all continuations and
	print any language change before running the breakpoint commands.

2008-05-06  Joel Brobecker  <brobecker@adacore.com>

	* frame-unwind.c (frame_unwind_got_bytes): New function.
	* frame-unwind.h (frame_unwind_got_bytes): Add declaration.
	* libunwind-frame.h, libunwind-frame.c, ia64-tdep.c: Update
	for unwinder changes.

2008-05-05  Doug Evans  <dje@google.com>

	* NEWS: Mention new /m modifier for disassemble command.
	* cli/cli-cmds.c (print_disassembly): New function.
	(disassemble_current_function): New function
	(disassemble_command): Recognize /m modifier, print mixed
	source+assembly.
	(init_cli_cmds): Update disassemble help text.

2008-05-05  Maxim Grigoriev  <maxim2405@gmail.com>

	* xtensa-tdep.c: Update for unwinder changes.

2008-05-05  Andreas Schwab  <schwab@suse.de>

	Update m68k port for unwinder changes.
	* m68k-tdep.c (m68k_frame_cache): Expect this_frame.
	(m68k_frame_this_id, m68k_frame_prev_register): Update signature.
	(m68k_frame_unwind): Use default_frame_sniffer.
	(m68k_frame_sniffer): Remove.
	(m68k_frame_base_address): Expect this_frame.
	(m68k_dummy_id): Renamed from m68k_unwind_dummy_id.  Expect
	this_frame.
	(m68k_gdbarch_init): Use set_gdbarch_dummy_id,
	dwarf2_append_unwinders, and frame_unwind_append_unwinder.
	* m68klinux-tdep.c (m68k_linux_pc_in_sigtramp): Expect frame_info
	parameter instead of pc value.
	(m68k_linux_get_sigtramp_info, m68k_linux_sigtramp_frame_cache):
	Expect this_frame.
	(m68k_linux_sigtramp_frame_this_id)
	(m68k_linux_sigtramp_frame_prev_register)
	(m68k_linux_sigtramp_frame_sniffer): Update signature.
	(m68k_linux_sigtramp_frame_unwind): Use
	m68k_linux_sigtramp_frame_sniffer.
	(m68k_linux_init_abi): Use frame_unwind_append_unwinder.

	* m68klinux-nat.c (store_register): Fix typo.

2008-05-05  Pedro Alves  <pedro@codesourcery.com>

	* infcmd.c (step_1): Put thread id on the stack to avoid possible
	NULL dereferencing.

2008-05-05  Luis Machado  <luisgpm@br.ibm.com>

	* symfile.c (reread_symbols): Update objfile's entry point.

2008-05-05  Aleksandar Ristovski  <aristovski@qnx.com>
	    Joel Brobecker  <brobecker@adacore.com>

	* ada-lang.c: Update throughout to use symbol_matches_domain
	instead of matching the symbol domain explictly.
	* dwarf2read.c (add_partial_symbol): Do not add new psym for
	STRUCT_DOMAIN. Make sure you recognize c++ struct and java and ada
	class as typedefs. See lookup_partial_symbol function.
	(new_symbol): Similar to add_partial_symbol, do not create
	symbol for the typedef. See lookup_block_symbol.
	* symtab.c (symbol_matches_domain): New function, takes care
	of dual meaning of STRUCT_DOMAIN symbol for c++, ada and java.
	(lookup_partial_symbol): Use symbol_matches_domain to see if the
	found psym domain matches the given domain.
	(lookup_block_symbol): Likewise.

2008-05-05  Vladimir Prus  <vladimir@codesourcery.com>

	* top.c (command_line_handler_continuation): Remove.
	(execute_command): Do not install the above.

2008-05-05  Vladimir Prus  <vladimir@codesourcery.com>

	* inf-loop.c (inferior_event_handler): Call bpstat_do_action,
	and catch all exceptions from it.
	* top.c (command_line_handler_continuation): Don't
	call bpstat_do_action here.

2008-05-04  Daniel Jacobowitz  <dan@codesourcery.com>

	* dwarf2read.c (struct dwarf2_cu): Add type_hash.
	(struct die_info): Remove type.
	(read_type_die, read_typedef, read_base_type, read_subrange_type)
	(read_structure_type, read_enumeration_type, read_array_type)
	(read_tag_pointer_type, read_tag_ptr_to_member_type)
	(read_tag_reference_type, read_tag_const_type, read_tag_volatile_type)
	(read_tag_string_type, read_subroutine_type, read_set_type)
	(read_unspecified_type): Delete prototypes.  Remove check for
	already-loaded type.  Return the new type.
	(set_die_type): Return the new type.
	(reset_die_and_siblings_types): Delete.
	(load_comp_unit, load_full_comp_unit): Set type_hash.
	(process_queue): Remove call to reset_die_and_siblings_types.
	(process_die): Do not read most types here.  Use read_type_die
	for others.
	(read_func_scope, dwarf2_add_member_fn): Use read_type_die.
	(quirk_gcc_member_function_pointer): Return the new type.
	(process_structure_scope, process_enumeration_scope): Use
	get_die_type and read the DIE's type.
	(read_full_die): Do not initialize die->type.
	(tag_type_to_type): Use read_type_die.
	(read_type_die): Check for already defined types.  Return the
	type.
	(determine_prefix): Use get_die_type.
	(set_die_type): Return the type.
	(get_die_type): Take a CU argument.  Check for no type_hash.

2008-05-04  Daniel Jacobowitz  <dan@codesourcery.com>

	* dwarf2read.c (dwarf2_ranges_read, read_partial_die): Initialize
	locals.

2008-05-04  Pedro Alves  <pedro@codesourcery.com>

	* breakpoint.c (update_breakpoints_after_exec): Delete bp_longjmp
	and bp_longjmp_resume breakpoints.
	(breakpoint_address_is_meaningful): Claim bp_longjmp_resume as
	meaningful.
	(create_longjmp_breakpoint): Don't create bp_longjmp_resume
	breakpoints.  Create bp_longjmp breakpoints as momentary
	breakpoints.
	(enable_longjmp_breakpoint): Delete.
	(set_longjmp_breakpoint): New.
	(disable_longjmp_breakpoint): Delete.
	(delete_longjmp_breakpoint): New.
	(set_longjmp_resume_breakpoint): Delete.
	(set_momentary_breakpoint_at_pc): New.
	(breakpoint_re_set_one): Don't delete bp_longjmp and
	bp_longjmp_resume breakpoints.
	(breakpoint_re_set): Don't create longjmp and longjmp-resume
	breakpoints.

	* infrun.c (step_resume_breakpoint): Add comment.
	(struct execution_control_state): Delete handling_longjmp member.
	(init_execution_control_state). Don't clear handling_longjmp.
	(context_switch): Don't context switch handling_longjmp.
	(handle_inferior_event): If handling a bp_longjmp breakpoint,
	create a bp_longjmp_resume breakpoint, and set it as current
	step_resume_breakpoint, then step over the longjmp breakpoint.  If
	handling a bp_longjmp_resume breakpoint, don't delete the longjmp
	breakpoint, delete the longjmp-resume breakpoint, and stop
	stepping.
	(currently_stepping): Remove handling_longjmp from expression.
	(insert_step_resume_breakpoint_at_sal): Update comment.
	(insert_longjmp_resume_breakpoint): New.

	* breakpoint.h (set_momentary_breakpoint_at_pc): Declare.
	(enable_longjmp_breakpoint, disable_longjmp_breakpoint): Delete
	declarations.
	(set_longjmp_breakpoint, delete_longjmp_breakpoint): Declare.
	(set_longjmp_resume_breakpoint): Delete declaration.

	* gdbthread.h (save_infrun_state): Remove handling_longjmp
	parameter.
	(load_infrun_state): Delete *handling_longjmp parameter.
	* thread.c (save_infrun_state): Remove handling_longjmp parameter.
	Update body.
	(load_infrun_state): Delete *handling_longjmp parameter.  Update
	body.

	* infcmd.c (disable_longjmp_breakpoint_cleanup): Delete.
	(delete_longjmp_breakpoint_cleanup): New.
	(step_1): Call set_longjmp_breakpoint instead of
	enable_longjmp_breakpoint.  Use delete_longjmp_breakpoint_cleanup
	instead of disable_longjmp_breakpoint_cleanup when making cleanup.
	(step_1_continuation): Pass thread id in the continuation args to
	step_once.
	(step_once): Add thread parameter.  Pass thread id the the
	continuation.

2008-05-04  Jan Kratochvil  <jan.kratochvil@redhat.com>

	Set CU BASE_ADDRESS already from partial DIEs.
	* dwarf2read.c (read_partial_die): New variables BASE_ADDRESS and
	BASE_ADDRESS_TYPE.  Set these variables from DW_AT_LOW_PC and
	DW_AT_ENTRY_PC.  Set CU->HEADER.BASE_KNOWN and CU->HEADER.BASE_ADDRESS
	from these variables if it was still unset.

	* Makefile.in: Update dependencies.
	* dwarf2read.c: Include "addrmap.h"
	(struct dwarf2_cu): New fields RANGES_OFFSET and HAS_RANGES_OFFSET.
	(dwarf2_ranges_read): New prototype.
	(dwarf2_build_psymtabs_hard): Initialize and prepare PSYMTABS_ADDRMAP.
	Add discontiguous range to PSYMTABS_ADDRMAP by DWARF2_RANGES_READ on
	HAS_RANGES_OFFSET, otherwise add there the contiguous range.
	(dwarf2_ranges_read): New parameter RANGES_PST, update the function
	comment for it.  Add the found ranges to RANGES_PST.  New variable
	BASEADDR, initialize it the common way.
	(dwarf2_get_pc_bounds): Update the caller for the new parameter.
	(read_partial_die): `DW_AT_ranges' now only sets RANGES_OFFSET and
	HAS_RANGES_OFFSET for the later processing.
	* objfiles.h (struct objfile): New field PSYMTABS_ADDRMAP.
	* symtab.c: Include "addrmap.h"
	(find_pc_sect_psymtab): Support reading the field PSYMTABS_ADDRMAP.
	Move the psymtab locator into ...
	(find_pc_sect_psymtab_closer): ... a new function.

2008-05-04  Ulrich Weigand  <uweigand@de.ibm.com>

	* arch-utils.c (gdbarch_update_p): Use default values for
	info.abfd and info.target_desc if they are NULL.
	(gdbarch_from_bfd): Remove assertion.
	(set_gdbarch_from_file): Call gdbarch_find_by_info directly,
	using the current target description.
	(gdbarch_info_fill): Do not use default values for info->abfd
	and info->target_desc.

2008-05-04  Jan Kratochvil  <jan.kratochvil@redhat.com>

	* symfile.c (reread_symbols): Reload EXEC_BFD on its change.

2008-05-04  Ulrich Weigand  <uweigand@de.ibm.com>

	* inferior.h (read_pc_pid, write_pc_pid): Remove.
	* regcache.h (regcache_read_pc, regcache_write_pc): Add prototypes.

	* regcache.c (read_pc_pid): Remove, replace by ...
	(regcache_read_pc): ... this function.
	(write_pc_pid): Remove, replace by ...
	(regcache_write_pc): ... this function.
	(read_pc, write_pc): Update.

	* infrun.c (displaced_step_prepare): Replace read_pc_pid and
	write_pc_pid by regcache_read_pc and regcache_write_pc.
	(displaced_step_fixup): Likewise.
	(resume): Likewise.  Use regcache arch instead of current_gdbarch.
	(prepare_to_proceed): Likewise.
	(proceed): Likewise.
	(adjust_pc_after_break): Likewise.
	(handle_inferior_event): Likewise.

	* linux-nat.c (cancel_breakpoint): Likewise.
	* linux-thread-db.c (check_event): Likewise.
	* aix-thread.c (aix_thread_wait): Likewise.
	* tracepoint.c (trace_dump_command): Likewise.

2008-05-04  Jan Kratochvil  <jan.kratochvil@redhat.com>

	* dwarf2loc.c (dwarf_expr_frame_base): Error out on missing
	SYMBOL_LOCATION_BATON.

2008-05-04  Vladimir Prus  <vladimir@codesourcery.com>

	* target.h (struct target_ops): New field to_auxv_parse.
	* auxv.c (default_auxv_parse): New, renamed from previous
	target_auxv_parse.
	(target_auxv_parse): Try to call target method.  Fallback to
	default_auxv_parse if not found.
	* procfs.c (procfs_auxv_parse): New.
	(init_procfs_ops): On Solaris, in 64-bit mode, install
	procfs_auxv_parse.

2008-05-03  Adam Nemet  <anemet@caviumnetworks.com>

	* symfile.c (add_symbol_file_command):  Use paddress rather than
	hex_string to print the address.

2008-05-03  Ulrich Weigand  <uweigand@de.ibm.com>

	* rs6000-tdep.c (rs6000_frame_this_id): If info->base is 0,
	return the null frame ID to terminate the backtrace.

2008-05-03  Ulrich Weigand  <uweigand@de.ibm.com>

	* rs6000-tdep.c: Do not include "rs6000-tdep.h".
	(rs6000_find_toc_address_hook): Move to rs6000-aix-tdep.c.
	(SIG_FRAME_PC_OFFSET): Likewise.
	(SIG_FRAME_LR_OFFSET): Likewise.
	(SIG_FRAME_FP_OFFSET): Likewise.
	(rs6000_push_dummy_call): Likewise.
	(rs6000_return_value): Likewise.
	(rs6000_convert_from_func_ptr_addr): Likewise.
	(branch_dest, rs6000_software_single_step): Likewise.
	(deal_with_atomic_sequence): Rename to ...
	(ppc_deal_with_atomic_sequence): ... this.  Adapt all callers.
	Do not call branch_dest; inline required parts of that function.
	(rs6000_skip_trampoline_code): Replace DEPRECATED_SYMBOL_NAME
	with SYMBOL_LINKAGE_NAME.
	(struct reg, regsize): Delete.
	(read_memory_addr): Delete; inline into callers.
	(rs6000_skip_prologue): Move after skip_prologue.
	(skip_prologue): Remove prototype.
	(rs6000_gdbarch_init): Remove sysv_abi variable; perform all
	initialization as if this variable were true.  Do not install
	ppc64_sysv_abi_adjust_breakpoint_address.

	* rs6000-aix-tdep.c: Include "gdb_assert.h", "gdbtypes.h",
	"gdbcore.h", "target.h", "value.h", "infcall.h", "objfiles.h",
	and "breakpoint.h".
	(rs6000_find_toc_address_hook): Move here from rs6000-tdep.c.
	(SIG_FRAME_PC_OFFSET): Likewise.
	(SIG_FRAME_LR_OFFSET): Likewise.
	(SIG_FRAME_FP_OFFSET): Likewise.
	(rs6000_push_dummy_call): Likewise.
	(rs6000_return_value): Likewise.
	(rs6000_convert_from_func_ptr_addr): Likewise.
	(branch_dest, rs6000_software_single_step): Likewise.  Replace
	tdep->text_segment_base by AIX_TEXT_SEGMENT_BASE.
	(rs6000_aix_init_osabi): Install rs6000_push_dummy_call,
	rs6000_return_value, and rs6000_convert_from_func_ptr_addr.
	Call set_gdbarch_long_double_bit and set_gdbarch_frame_red_zone_size.
	Set tdep->lr_frame_offset.  Do not set tdep->text_segment_base.

	* rs6000-tdep.h (rs6000_software_single_step): Remove prototype.
	(AIX_TEXT_SEGMENT_BASE): New macro.
	* rs6000-nat.c (exec_one_dummy_insn): Replace tdep->text_segment_base
	by AIX_TEXT_SEGMENT_BASE.

	* ppc-tdep.h (ppc_deal_with_atomic_sequence): Add prototype.
	(struct gdbarch_tdep): Remove text_segment_base member.
	* ppc-linux-tdep.c (ppc_linux_init_abi): On 64-bit, install
	ppc64_sysv_abi_adjust_breakpoint_address.

	* Makefile.in (rs6000-tdep.o): Update dependencies.
	(rs6000-aix-tdep.o): Likewise.

2008-05-03  Luis Machado  <luisgpm@br.ibm.com>
	    Thiago Jung Bauermann  <bauerman@br.ibm.com>

	* cli/cli-decode.c (lookup_cmd_1): Fix indentation.
	* doublest.c (convert_typed_floating): Fix typo in comment.
	* dwarf2-frame.c (dwarf2_frame_cache): Likewise.
	* frame-unwind.h (frame_sniffer_ftype): Likewise.
	* frame.c (frame_unwind_address_in_block): Likewise.
	* ppc-sysv-tdep.c (ppc64_sysv_abi_push_dummy_call): Likewise.
	* symtab.h (struct symbol): Likewise.
	* tramp-frame.h (struct trad_frame_cache): Likewise.
	* value.c (allocate_repeat_value): Likewise.

2008-05-03  Ulrich Weigand  <uweigand@de.ibm.com>

	* infrun.c (handle_inferior_event): Do not insert breakpoints at
	TARGET_WAITKIND_LOADED events during startup (i.e. in the shell).

2008-05-03  Pedro Alves  <pedro@codesourcery.com>

	* parse.c (parse_exp_in_context): Don't override
	expression_context_pc if get_selected_block returned a valid
	block.

2008-05-03  Daniel Jacobowitz  <dan@codesourcery.com>

	* alpha-tdep.h (ALPHA_REGISTER_BYTES): Delete.
	* arm-tdep.h (STATUS_REGISTER_SIZE): Delete.
	* breakpoint.c (args_for_catchpoint_enable, current_exception_event):
	Delete.
	* c-typeprint.c (c_type_print_base): Delete handling of template
	instantiations.
	* cp-support.h (METHOD_PTR_IS_VIRTUAL, METHOD_PTR_FROM_VOFFSET)
	(METHOD_PTR_TO_VOFFSET): Delete.
	* defs.h (QUIT_FIXME): Delete.
	* f-lang.h (DEFAULT_DOTMAIN_NAME_IN_MF77, DEFAULT_MAIN_NAME_IN_MF77)
	(DEFAULT_DOTMAIN_NAME_IN_XLF_BUGGY, DEFAULT_DOTMAIN_NAME_IN_XLF): Delete.
	* gdbtypes.h (struct cplus_struct_type): Delete is_inlined,
	ninstantiations, and instantiations.
	(TYPE_INSTANTIATIONS, TYPE_NINSTANTIATIONS, TYPE_INSTANTIATION)
	(TYPE_FN_FIELD_INLINED): Delete.
	* srec.h (SREC_BINARY): Delete.
	* symtab.c (symbol_init_demangled_name): Delete.
	* symtab.h (SYMBOL_INIT_DEMANGLED_NAME, symbol_init_demangled_name)
	(SYMBOL_OBJFILE, struct exception_event_record, CURRENT_EXCEPTION_KIND)
	(CURRENT_EXCEPTION_CATCH_SAL, CURRENT_EXCEPTION_CATCH_LINE)
	(CURRENT_EXCEPTION_CATCH_FILE, CURRENT_EXCEPTION_CATCH_PC)
	(CURRENT_EXCEPTION_THROW_SAL, CURRENT_EXCEPTION_THROW_LINE)
	(CURRENT_EXCEPTION_THROW_FILE, CURRENT_EXCEPTION_THROW_PC): Delete.
	* target.h (enum thread_control_capabilities): Delete tc_switch.
	(target_can_switch_threads): Delete.

2008-05-03  Daniel Jacobowitz  <dan@codesourcery.com>

	* Makefile.in (objfiles.o): Update.
	* exec.c (exec_set_section_address): Support p->addr != 0.
	* objfiles.c (objfile_relocate): Update exec_ops section
	addresses.
	* symfile.c (place_section): Move exec_set_section_address call...
	(default_symfile_offsets): ...to here.

2008-05-03  Ulrich Weigand  <uweigand@de.ibm.com>

	* Makefile.in (ppc_linux_tdep_h): New macro.
	(powerpc_32l_c, powerpc_altivec32_c, powerpc_altivec32l_c): Likewise.
	(powerpc_64l_c, powerpc_altivec64_c, powerpc_altivec64l_c): Likewise.
	(powerpc_e500l_c): Likewise.
	(ppc-linux-nat.o): Update dependencies.
	(ppc-linux-tdep.o): Update dependencies.
	(rs6000-tdep.o): Update dependencies.

	* ppc-tdep.h (ppc_linux_memory_remove_breakpoint): Remove.
	(ppc_linux_svr4_fetch_link_map_offsets): Remove.
	(ppc_linux_gregset, ppc_linux_fpregset): Move to ppc-linux-tdep.h
	(ppc_supply_reg, ppc_collect_reg): Add prototypes.
	(tdesc_powerpc_e500): Remove.

	* rs6000.c: Include "features/rs6000/powerpc-altivec32.c"
	and "features/rs6000/powerpc-altivec64.c".
	(ppc_supply_reg, ppc_collect_reg): Make global.
	(variants): Use tdesc_powerpc_32 for "powerpc" and
	tdesc_powerpc_altivec64 for "powerpc64".
	(_initialize_rs6000_tdep): Initialize AltiVec descriptions.

	* ppc-linux-tdep.h: New file.

	* ppc-linux-tdep.c: Include "ppc-linux-tdep.c".
	Include "features/rs6000/powerpc-32l.c".
	Include "features/rs6000/powerpc-altivec32l.c".
	Include "features/rs6000/powerpc-64l.c".
	Include "features/rs6000/powerpc-altivec64l.c".
	Include "features/rs6000/powerpc-e500l.c".
	(ppc_linux_supply_gregset): New function.
	(ppc_linux_collect_gregset): Handle orig_r3 and trap registers.
	(ppc32_linux_gregset): Use ppc_linux_supply_gregset.
	(ppc64_linux_gregset): Likewise.
	(ppc_linux_sigtramp_cache): Handle orig_r3 and trap registers.
	(ppc_linux_trap_reg_p): New function.
	(ppc_linux_write_pc): New function.
	(ppc_linux_core_read_description): New function.
	(ppc_linux_init_abi): Install ppc_linux_write_pc and
	ppc_linux_core_read_description.  Install orig_r3 and trap
	registers if present in the target description.
	(_initialize_ppc_linux_tdep): Initialize Linux target descriptions.

	* ppc-linux-nat.c: Include "ppc-linux-tdep.h".
	(PT_ORIG_R3, PT_TRAP): Define if necessary.
	(ppc_register_u_addr): Handle orig_r3 and trap registers.
	(fetch_ppc_registers): Likewise.
	(store_ppc_registers): Likewise.
	(store_register): Likewise.
	(ppc_linux_read_description): Check whether AltiVec is supported.
	Check whether inferior is 32-bit or 64-bit.  Return the appropriate
	Linux target description.

	* features/Makefile (WHICH): Use rs6000/powerpc-32l and
	rs6000/powerpc-altivec32l instead of rs6000/powerpc-32.
	Use rs6000/powerpc-64l and rs6000/powerpc-altivec64l instead
	of rs6000/powerpc-64.  Use rs6000/powerpc-e500l instead of
	rs6000/powerpc-e500.  Update -expedite variables accordingly.

	* features/rs6000/power-spe.xml: Use regnum 73 for "acc".
	* features/rs6000/powerpc-32.xml: Do not include power-altivec.xml.
	* features/rs6000/powerpc-64.xml: Do not include power-altivec.xml.
	* features/rs6000/powerpc-e500.c: Regenerate.
	* features/rs6000/powerpc-32.c: Regenerate.
	* features/rs6000/powerpc-64.c: Regenerate.

	* features/rs6000/power-linux.xml: New file.
	* features/rs6000/power64-linux.xml: New file.
	* features/rs6000/powerpc-32l.xml: New file.
	* features/rs6000/powerpc-altivec32l.xml: New file.
	* features/rs6000/powerpc-64l.xml: New file.
	* features/rs6000/powerpc-altivec64l.xml: New file.
	* features/rs6000/powerpc-e500l.xml: New file.
	* features/rs6000/powerpc-32l.c: New (generated) file.
	* features/rs6000/powerpc-altivec32l.c: New (generated) file.
	* features/rs6000/powerpc-64l.c: New (generated) file.
	* features/rs6000/powerpc-altivec64l.c: New (generated) file.
	* features/rs6000/powerpc-e500l.xml: New (generated) file.

	* regformats/reg-ppc.dat: Remove.
	* regformats/reg-ppc64.dat: Remove.
	* regformats/rs6000/powerpc-32.dat: Remove.
	* regformats/rs6000/powerpc-64.dat: Remove.
	* regformats/rs6000/powerpc-e500.dat: Remove.
	* regformats/rs6000/powerpc-32l.dat: New (generated) file.
	* regformats/rs6000/powerpc-altivec32l.dat: New (generated) file.
	* regformats/rs6000/powerpc-64l.dat: New (generated) file.
	* regformats/rs6000/powerpc-altivec64l.dat: New (generated) file.
	* regformats/rs6000/powerpc-e500l.dat: New (generated) file.

2008-05-03  Pedro Alves  <pedro@codesourcery.com>

	* thread.c (delete_thread): Call observer_notify_thread_exit.
	* mi/mi-interp.c (mi_interpreter_init): Register mi_thread_exit as
	thread_exit observer.
	(mi_thread_exit): New.

2008-05-03  Thiago Jung Bauermann  <bauerman@br.ibm.com>

	* breakpoint.c (create_exception_catchpoint): Remove prototype
	for already deleted function.
	* breakpoint.h (ep_is_exception_catchpoint): Likewise.
	* frame.h (show_stack_frame): Remove prototype.
	* stack.c (show_stack_frame): Remove empty, unused function.
	* source.c (symtab_to_fullname, print_source_lines): Small fix
	in comment.
	* value.c (show_values): Update comments to mention "show values"
	command instead of "info history".

2008-05-02  Ulrich Weigand  <uweigand@de.ibm.com>

	* linespec.c: Include "target.h".
	(minsym_found): Handle minimal symbols pointing to function
	descriptors.  Use find_function_start_pc.
	* minsyms.c (msymbol_objfile): New function.
	* parse.c (write_exp_msymbol): Handle minimal symbols pointing
	to function descriptors.
	* symtab.c (fixup_section): Only use minimal symbol at the same
	address to determine section of a symbol.
	(find_function_start_pc): New function.
	(find_function_start_sal): Use it.
	* symtab.h (msymbol_objfile): Add prototype.
	(find_function_start_pc): Likewise.
	* value.c: Include "objfiles.h".
	(value_fn_field): Handle minimal symbols pointing to function
	descriptors.
	* Makefile.in (linespec.o): Update dependencies.
	(value.o): Likewise.

2008-05-02  Joel Brobecker  <brobecker@adacore.com>

	* ada-lang.c (unwrap_value): Handle the case where the "F" field
	inside a PAD type is a bitfield.

2008-05-02  Ulrich Weigand  <uweigand@de.ibm.com>

	* ppc-sysv-tdep.c (ppc64_sysv_abi_push_dummy_call): Handle
	TYPE_CODE_BOOL and TYPE_CODE_CHAR the same as TYPE_CODE_INT.
	Handle TYPE_CODE_REF the same as TYPE_CODE_PTR.
	Handle TYPE_CODE_METHOD the same as TYPE_CODE_FUNC.
	Allow typedefs when checking for function pointer arguments.
	Right-align small structs passed on the stack.
	(ppc64_sysv_abi_return_value): Handle TYPE_CODE_BOOL and
	TYPE_CODE_CHAR the same as TYPE_CODE_INT.
	Handle TYPE_CODE_REF the same as TYPE_CODE_PTR.

2008-05-02  Daniel Jacobowitz  <dan@codesourcery.com>

	* Makefile.in (arm-tdep.o): Update.
	* arm-tdep.c (arm_objfile_data_key, struct arm_mapping_symbol)
	(struct arm_per_objfile, arm_compare_mapping_symbols): New.
	(arm_pc_is_thumb): Use mapping symbols.
	(arm_objfile_data_cleanup, arm_record_special_symbol): New.
	(arm_gdbarch_init): Call set_gdbarch_record_special_symbol.
	(_initialize_arm_tdep): Initialize arm_objfile_data_key.
	* elfread.c (elf_symtab_read): Use gdbarch_record_special_symbol.
	* gdbarch.sh: Add record_special_symbol.
	* gdbarch.c, gdbarch.h: Regenerated.
	* objfiles.c (struct objfile_data): Add cleanup member.
	(register_objfile_data_with_cleanup): New function, from
	register_objfile_data.
	(register_objfile_data): Use it.
	(objfile_free_data): Call clear_objfile_data.
	(clear_objfile_data): Call cleanup functions.
	* objfiles.h (register_objfile_data_with_cleanup): Declare.

2008-05-02  Daniel Jacobowitz  <dan@codesourcery.com>

	* objfiles.c (init_entry_point_info): Handle shared libraries.

2008-05-02  Daniel Jacobowitz  <dan@codesourcery.com>

	* arm-tdep.c (arm_prologue_this_id): Compare pc, not func, to
	lowest_pc.

2008-05-02  Jim Blandy  <jimb@codesourcery.com>
	    Pedro Alves  <pedro@codesourcery.com>

	Implement displaced stepping.

	* gdbarch.sh (max_insn_length): New 'variable'.
	(displaced_step_copy, displaced_step_fixup)
	(displaced_step_free_closure, displaced_step_location): New
	functions.
	(struct displaced_step_closure): Add forward declaration.
	* gdbarch.c, gdbarch.h: Regenerated.

	* arch-utils.c: #include "objfiles.h".
	(simple_displaced_step_copy_insn)
	(simple_displaced_step_free_closure)
	(displaced_step_at_entry_point): New functions.
	* arch-utils.h (simple_displaced_step_copy_insn)
	(simple_displaced_step_free_closure)
	(displaced_step_at_entry_point): New prototypes.

	* i386-tdep.c (I386_MAX_INSN_LEN): Rename to...
	(I386_MAX_MATCHED_INSN_LEN): ... this.
	(i386_absolute_jmp_p, i386_absolute_call_p)
	(i386_ret_p, i386_call_p, i386_breakpoint_p, i386_syscall_p)
	(i386_displaced_step_fixup): New functions.
	(struct i386_insn, i386_match_insn): Update.
	(i386_gdbarch_init): Set gdbarch_max_insn_length.
	* i386-tdep.h (I386_MAX_INSN_LEN): New.
	(i386_displaced_step_fixup): New prototype.
	* i386-linux-tdep.c (i386_linux_init_abi): Include "arch-utils.h".
	Register gdbarch_displaced_step_copy,
	gdbarch_displaced_step_fixup, gdbarch_displaced_step_free_closure,
	and gdbarch_displaced_step_location functions.

	* infrun.c (debug_displaced): New variable.
	(show_debug_displaced): New function.
	(struct displaced_step_request): New struct.
	(displaced_step_request_queue, displaced_step_ptid)
	(displaced_step_gdbarch, displaced_step_closure)
	(displaced_step_original, displaced_step_copy)
	(displaced_step_saved_copy, can_use_displaced_stepping): New
	variables.
	(show_can_use_displaced_stepping, use_displaced_stepping)
	(displaced_step_clear, cleanup_displaced_step_closure)
	(displaced_step_dump_bytes, displaced_step_prepare)
	(displaced_step_clear_cleanup, write_memory_ptid)
	(displaced_step_fixup): New functions.
	(resume): Call displaced_step_prepare.
	(proceed): Call read_pc once, and remember the value.  If using
	displaced stepping, don't remove breakpoints.
	(handle_inferior_event): Call displaced_step_fixup.  Add some
	debugging output.  When we try to step over a breakpoint, but get
	a signal to deliver to the thread instead, ensure the step-resume
	breakpoint is actually inserted.  If a thread hop is needed, and
	displaced stepping is enabled, don't remove breakpoints.
	(init_wait_for_inferior): Call displaced_step_clear.
	(_initialize_infrun): Add "set debug displaced" command.  Add
	"maint set can-use-displaced-stepping" command.  Clear
	displaced_step_ptid.
	* inferior.h (debug_displaced): Declare variable.
	(displaced_step_dump_bytes): Declare function.

	* Makefile.in (arch-utils.o, i386-linux-tdep.o): Update
	dependencies.

2008-05-02  Daniel Jacobowitz  <dan@codesourcery.com>

	* arm-tdep.c (arm_mode_strings, arm_fallback_mode_string)
	(arm_force_mode_string, arm_show_fallback_mode)
	(arm_show_force_mode): New.
	(arm_pc_is_thumb): Honor fallback-mode and force-mode.  Use
	arm_frame_is_thumb.
	(_initialize_arm_tdep): Add "set arm fallback-mode"
	and "set arm force-mode".
	* NEWS: Document new commands.

2008-05-02  Andrew Stubbs  <andrew.stubbs@st.com>

	* main.h (batch_silent): Declare.
	* event-top.c: Include main.h.
	(gdb_setup_readline): Remove extern batch_silent declaration.
	* infrun.c (normal_stop): Don't print source location when running in
	--batch-silent mode.
	* Makefile.in (event-top.o): Add main.h dependency.

2008-05-02  Andreas Schwab  <schwab@suse.de>

	* target.h (struct target_ops): Add
	to_watchpoint_addr_within_range.
	(target_watchpoint_addr_within_range): New function.
	* target.c (update_current_target): Inherit
	to_watchpoint_addr_within_range, defaulting to
	default_watchpoint_addr_within_range.
	(default_watchpoint_addr_within_range): New function.
	(debug_to_watchpoint_addr_within_range): New function.
	(setup_target_debug): Set to_watchpoint_addr_within_range.
	* ppc-linux-nat.c (ppc_linux_watchpoint_addr_within_range):
	New function.
	(_initialize_ppc_linux_nat): Set to_watchpoint_addr_within_range.
	* breakpoint.c (watchpoints_triggered): Use
	target_watchpoint_addr_within_range.

2008-05-01  Pedro Alves  <pedro@codesourcery.com>

	* configure.tgt: Add i[34567]86-*-dicos* and x86_64-*-dicos*.
	(i[34567]86-*-dicos*, x86_64-*-dicos*):
	Set gdb_osabi to GDB_OSABI_DICOS.

	* defs.h (enum gdb_osabi): Add GDB_OSABI_DICOS.
	* osabi.c (gdb_osabi_name): Add "DICOS".

	* i386-dicos-tdep.c: New file.

	* Makefile.in (ALL_TARGET_OBS): Add i386-dicos-tdep.o.
	(ALLDEPFILES): Add i386-dicos-tdep.c.
	(i386-dicos-tdep.o): New rule.

2008-05-01  Pedro Alves  <pedro@codesourcery.com>

	* linux-nat.c (linux_nat_switch_fork): Reinit GDB's thread list
	and register the fork's PTID as a thread.

2008-05-01  Aleksandar Ristovski  <aristovski@qnx.com>

	PR gdb/1665
	* breakpoint.c (create_breakpoint): Add breakpoint_ops argument and
	assign its value to the breakpoint created.
	(create_breakpoints): Add breakpoint_ops argument and pass it
	to create_breakpoint call.
	(break_command_really): Add breakpoint_ops argument and pass/assign
	appropriately.
	(break_command_1): Pass NULL as ops argument.
	(set_breakpoint): Pass NULL as ops argument.
	(print_one_exception_catchpoint): Print <PENDING> if no loc available.
	(handle_gnu_v3_exceptions): Call generic breakpoint code to insert
	catch and throw catchpoints.

2008-05-01  Aleksandar Ristovski  <aristovski@qnx.com>

	PR gdb/2343
	* corelow.c (core_open): Use gdbarch_target_signal_from_host to
	translate signal numeric value from the target to GDB's enum
	target_signal.
	* gdbarch.c, gdbarch.h: Regenerated.
	* gdbarch.sh: Added two new functions target_signal_from_host and
	target_signal_to_host.
	* target.h (default_target_signal_from_host,
	default_target_signal_to_host): New functions - declarations.
	* signals/signals.c (struct gdbarch): New declaration.
	(default_target_signal_to_host, default_target_signal_from_host): New
	functions.

2008-05-01  Daniel Jacobowitz  <dan@codesourcery.com>
	    Pedro Alves  <pedro@codesourcery.com>

	Based on work by Jan Kratochvil <jan.kratochvil@redhat.com> and Jeff
 	Johnston <jjohnstn@redhat.com>.

	* NEWS: Mention attach to stopped process fix.
	* infcmd.c (detach_command, disconnect_command): Discard the thread
	list.
	* infrun.c (handle_inferior_event): Do not ignore non-SIGSTOP while
	attaching.  Use signal_stop_state.
	(signal_stop_state): Check stop_soon.
	* linux-nat.c (kill_lwp): Declare earlier.
	(pid_is_stopped, linux_nat_post_attach_wait): New.
	(lin_lwp_attach_lwp): Use linux_nat_post_attach_wait.  Update
	comments.
	(linux_nat_attach): Use linux_nat_post_attach_wait.
	(detach_callback, linux_nat_detach): Improve handling for signalled
	processes.
	(linux_nat_pid_to_str): Always print out the LWP ID if it differs
	from the process ID.
	* Makefile.in (infcmd.o): Update.

2008-05-01  Daniel Jacobowitz  <dan@codesourcery.com>

	* arm-linux-tdep.h (ARM_CPSR_REGNUM): Delete definition.
	* arm-tdep.c (arm_frame_is_thumb): New.
	(arm_pc_is_thumb): Clarify comment.
	(thumb_analyze_prologue): Remove PC special case.
	(thumb_scan_prologue): Take a block_addr argument.  Use it for
	find_pc_partial_function.  Remove unused variables.
	(arm_scan_prologue): Use arm_frame_is_thumb.  Use the block address
	for find_pc_partial_function.  Remove PC special case.
	(arm_prologue_prev_register): Add special handling for PC and CPSR.
	(arm_dwarf2_prev_register, arm_dwarf2_frame_init_reg): New.
	(arm_get_next_pc): Use arm_frame_is_thumb.
	(arm_write_pc): Use CPSR_T instead of 0x20.
	(arm_gdbarch_init): Call dwarf2_frame_set_init_reg.
	* arm-tdep.h (enum gdb_regnum): Add ARM_CPSR_REGNUM.
	(CPSR_T): Define.
	* dwarf2-frame.c (dwarf2_frame_prev_register): Handle
	DWARF2_FRAME_REG_FN.
	* dwarf2-frame.h (enum dwarf2_frame_reg_rule): Add
	DWARF2_FRAME_REG_FN.
	(struct dwarf2_frame_state_reg): Add FN to loc union.

2008-05-01  Nick Roberts  <nickrob@snap.net.nz>

	* exec.c (print_section_info): Add missing '\n'.

2008-05-01  Vladimir Prus  <vladimir@codesourcery.com>

	* thread.c (add_thread): Move observer call to ...
	(add_thread_silent): ... here.

2008-04-30  Ulrich Weigand  <uweigand@de.ibm.com>

	* rs6000-tdep.c: Update for unwinder changes.
	* ppcobsd-tdep.c: Likewise.

2008-04-30  Ulrich Weigand  <uweigand@de.ibm.com>

	* s390-tdep.c: Update for unwinder changes.

2008-04-30  Ulrich Weigand  <uweigand@de.ibm.com>

	* spu-tdep.c: Update for unwinder changes.

2008-04-30  Daniel Jacobowitz  <dan@codesourcery.com>

	* hppanbsd-tdep.c, m68kbsd-tdep.c, mn10300-linux-tdep.c,
	ppc-linux-tdep.c, ppcnbsd-tdep.c, sparc-linux-tdep.c,
	sparc64-linux-tdep.c: Update for unwinder changes.

2008-04-30  Daniel Jacobowitz  <dan@codesourcery.com>

	* mipsnbsd-tdep.c, mips64obsd-tdep.c, mips-linux-tdep.c: Update
	for unwinder changes.
	* mips-tdep.c: Likewise.
	(mips_stub_frame_cache): Unwind the ABI stack pointer, not the
	raw one.

2008-04-30  Daniel Jacobowitz  <dan@codesourcery.com>

	* arm-linux-tdep.c, arm-tdep.c, armobsd-tdep.c: Update for
	unwinder changes.

2008-04-30  Daniel Jacobowitz  <dan@codesourcery.com>

	Update i386 and amd64 ports for unwinder changes.

	* amd64-tdep.c (amd64_frame_cache): Expect this_frame.
	(amd64_frame_this_id, amd64_frame_prev_register): Update signature.
	(amd64_frame_unwind): Use default_frame_sniffer.
	(amd64_frame_sniffer): Delete.
	(amd64_sigtramp_frame_cache): Expect this_frame.
	(amd64_sigtramp_frame_this_id, amd64_sigtramp_frame_prev_register)
	(amd64_sigtramp_frame_sniffer): Update signature.
	(amd64_sigtramp_frame_unwind): Add amd64_sigtramp_frame_sniffer.
	(amd64_frame_base_address): Expect this_frame.
	(amd64_dummy_id): Renamed from amd64_unwind_dummy_id.  Expect
	this_frame.
	(amd64_init_abi): Use set_gdbarch_dummy_id and
	frame_unwind_append_unwinder.
	* i386-tdep.c (i386_frame_cache): Expect this_frame.
	(i386_frame_this_id, i386_frame_prev_register): Update signature.
	(i386_frame_unwind): Use default_frame_sniffer.
	(i386_frame_sniffer): Delete.
	(i386_sigtramp_frame_cache): Expect this_frame.
	(i386_sigtramp_frame_this_id, i386_sigtramp_frame_prev_register)
	(i386_sigtramp_frame_sniffer): Update signature.
	(i386_sigtramp_frame_unwind): Use i386_sigtramp_frame_sniffer.
	(i386_frame_base_address): Update signature.
	(i386_dummy_id): Rename from i386_unwind_dummy_id.  Expect this_frame.
	(i386_push_dummy_call): Update comment.
	(i386_sigtramp_p, i386_svr4_sigtramp_p, i386_svr4_sigcontext_addr):
	Expect this_frame.
	(i386_gdbarch_init): Use set_gdbarch_dummy_id, dwarf2_append_unwinders,
	and frame_unwind_append_unwinder.
	* amd64-linux-tdep.c, amd64-sol2-tdep.c, amd64fbsd-tdep.c,
	amd64nbsd-tdep.c, amd64obsd-tdep.c, i386-linux-tdep.c,
	i386-nto-tdep.c, i386bsd-tdep.c, i386-sol2-tdep.c, i386obsd-tdep.c,
	i386nbsd-tdep.c: Update for unwinder changes.

2008-04-30  Daniel Jacobowitz  <dan@codesourcery.com>

	* trad-frame.c (struct trad_frame_cache): Rename next_frame to this_frame.
	(trad_frame_cache_zalloc, trad_frame_alloc_saved_regs): Expect
	this_frame.
	(trad_frame_get_prev_register, trad_frame_get_register): Update signature.
	* trad-frame.h (trad_frame_cache_zalloc, trad_frame_get_register)
	(trad_frame_alloc_saved_regs, trad_frame_get_prev_register): Update
	signature.
	* tramp-frame.c (tramp_frame_cache, tramp_frame_start): Expect
	this_frame.
	(tramp_frame_this_id, tramp_frame_prev_register, tramp_frame_sniffer):
	Update signature.
	* tramp-frame.h (struct tramp_frame): Update signature of init.
	* Makefile.in (trad-frame.o): Update.

2008-04-30  Daniel Jacobowitz  <dan@codesourcery.com>

	* dwarf2-frame.c (read_reg): Expect this_frame in the baton.
	(execute_stack_op): Put this_frame in the baton.
	(execute_cfa_program): Take this_frame.
	(struct dwarf2_frame_ops): Update comment for signal_frame_p.
	(dwarf2_frame_default_init_reg, dwarf2_frame_init_reg)
	(dwarf2_frame_signal_frame_p, dwarf2_frame_cache)
	(dwarf2_frame_this_id): Adjust to work on this_frame.
	(dwarf2_signal_frame_this_id): Delete.
	(dwarf2_frame_prev_register): Update signature.  Use new frame
	unwind methods.
	(dwarf2_frame_sniffer): Update signature.  Expect this_frame.
	(dwarf2_frame_unwind, dwarf2_signal_frame_unwind): Add
	dwarf2_frame_sniffer.
	(dwarf2_append_unwinders): New.
	(dwarf2_frame_base_address, dwarf2_frame_base_sniffer): Expect
	this_frame.
	* sparc-tdep.c (sparc32_dwarf2_struct_return_p)
	(sparc32_dwarf2_frame_init_reg): Expect this_frame.
	* cris-tdep.c (cris_dwarf2_frame_init_reg): Likewise.
	* rs6000-tdep.c (ppc_dwarf2_frame_init_reg): Likewise.
	* s390-tdep.c (s390_dwarf2_frame_init_reg): Likewise.
	* sh-tdep.c (sh_dwarf2_frame_init_reg): Likewise.
	* sparc64-tdep.c (sparc64_dwarf2_frame_init_reg): Likewise.
	* dwarf2-frame.h (dwarf2_frame_sniffer): Delete declaration.
	(dwarf2_append_unwinders): Declare.
	(dwarf2_frame_base_sniffer): Update declaration.
	* i386-linux-tdep.c (i386_linux_dwarf_signal_frame_p): Expect
	this_frame.

2008-04-30  Daniel Jacobowitz  <dan@codesourcery.com>

	Convert frame unwinders to use the current frame and
	"struct value".

	* frame.c (frame_debug): Make global.
	(get_frame_id): Pass this frame to unwinder routines.
	(frame_pc_unwind): Remove unused unwind->prev_pc support.
	(do_frame_register_read): Do not discard the return value of
	frame_register_read.
	(frame_register_unwind): Remove debug messages.  Use
	frame_unwind_register_value.
	(frame_unwind_register_value, get_frame_register_value): New
	functions.
	(create_new_frame, get_frame_base_address, get_frame_locals_address)
	(get_frame_args_address, get_frame_type): Pass this frame to
	unwinder routines.
	(frame_cleanup_after_sniffer, frame_prepare_for_sniffer): New
	functions.
	* frame.h: Update comments.
	(frame_debug, frame_unwind_register_value, get_frame_register_value)
	(frame_prepare_for_sniffer): Declare.
	* frame-unwind.h: Update comments and parameter names.
	(default_frame_sniffer): Declare.
	(frame_prev_register_ftype): Return a struct value *.
	(struct frame_unwind): Remove prev_pc member.
	(frame_unwind_sniffer_ftype, frame_unwind_append_sniffer): Delete.
	(frame_unwind_append_unwinder, frame_unwind_got_optimized)
	(frame_unwind_got_register, frame_unwind_got_memory)
	(frame_unwind_got_constant, frame_unwind_got_address): Declare.
	* frame-base.h: Update comments and parameter names.
	* valops.c (value_fetch_lazy): Use get_frame_register_value.  Iterate
	if necessary.  Add debugging output.
	* sentinel-frame.c (sentinel_frame_prev_register)
	(sentinel_frame_this_id): Update for new signature.
	(sentinel_frame_prev_pc): Delete.
	(sentinel_frame_unwinder): Remove prev_pc.
	* ia64-tdep.c (ia64_libunwind_frame_unwind): Do not initialize
	prev_pc.
	* libunwind-frame.c (libunwind_frame_unwind): Likewise.
	* frame-unwind.c (struct frame_unwind_table_entry): Remove sniffer.
	(frame_unwind_append_sniffer): Delete.
	(frame_unwind_append_unwinder): New function.
	(frame_unwind_find_by_frame): Take this frame.  Only use sniffers
	from unwinders.  Use frame_prepare_for_sniffer.
	(default_frame_sniffer, frame_unwind_got_optimized)
	(frame_unwind_got_register, frame_unwind_got_memory)
	(frame_unwind_got_constant, frame_unwind_got_address): New functions.
	* dummy-frame.c (dummy_frame_sniffer): Use gdbarch_dummy_id.
	(dummy_frame_prev_register, dummy_frame_this_id): Update for new
	signature.
	* gdbarch.sh: Replace unwind_dummy_id with dummy_id.
	* gdbarch.c, gdbarch.c: Regenerated.
	* frame-base.c (default_frame_base_address)
	(default_frame_locals_address, default_frame_args_address): Update
	for new signature.
	(frame_base_find_by_frame): Pass this frame to unwinder routines.
	* infcall.c (call_function_by_hand): Update comments.
	* Makefile.in (frame-unwind.o): Update dependencies.

2008-04-30  Daniel Jacobowitz  <dan@codesourcery.com>

	* ada-lang.c (ada_value_primitive_packed_val): Only check
	value_lazy for memory lvals.
	* findvar.c (value_of_register_lazy): New function.
	(locate_var_value): Only check value_lazy for memory lvals.
	* valarith.c (value_subscripted_rvalue): Likewise.
	* valops.c (value_fetch_lazy): Handle both memory and register
	lvals.
	(search_struct_field, value_slice): Only check value_lazy for memory
	lvals.
	* value.c (struct value): Update comment for lazy.
	(value_primitive_field): Only check value_lazy for memory lvals.
	* value.h (value_lazy): Update comment.
	(value_of_register_lazy): Declare.

2008-04-30  Daniel Jacobowitz  <dan@codesourcery.com>

	* corefile.c (reopen_exec_file): Close any open files.

2008-04-29  Joel Brobecker  <brobecker@adacore.com>

	* ia64-tdep.c (ia64_memory_remove_breakpoint): Set
	show_memory_breakpoints to 1 while reading the instruction bundle.

2008-04-29  Joel Brobecker  <brobecker@adacore.com>

	* gdbarch.sh: Document the return_value method. Explain that
	the FUNCTYPE parameter might be NULL.
	* gdbarch.h: Regenerated.
	* sparc-tdep.c (sparc32_push_dummy_code): Do not pass the function
	type when calling using_struct_return, as this is unnecessary
	on this target.

2008-04-28  Joel Brobecker  <brobecker@adacore.com>

	* terminal.h (create_tty_session): Fix return type.

2008-04-26  Vladimir Prus  <vladimir@codesourcery.com>

	* mi/mi-interp.c (mi_new_thread): Quote the thread id.

2008-04-26  Joel Brobecker  <brobecker@adacore.com>

	* breakpoint.c (condition_command, commands_from_control_command)
	(break_command_really): Minor reformatting.

2008-04-25  Pedro Alves  <pedro@codesourcery.com>

	* dwarf2read.c (dwarf2_const_value): Handle DW_FORM_strp.

2008-04-25  Pedro Alves  <pedro@codesourcery.com>

	* amd64-tdep.c (amd64_get_longjmp_target): New.
	(amd64_init_abi): Register amd64_get_longjmp_target as
	gdbarch_get_longjmp_target callback.
	* i386-tdep.c (i386_get_longjmp_target): Remove 64-bit handling.

2008-04-25  Pedro Alves  <pedro@codesourcery.com>

	* breakpoint.h (enum bpstat_what_main_action): Delete
	BPSTAT_WHAT_CLEAR_LONGJMP_RESUME_SINGLE.

	* breakpoint.c (clrs): Delete.
	(bpstat_what): Update table.

	* infrun.c (handle_inferior_event): Remove
	BPSTAT_WHAT_CLEAR_LONGJMP_RESUME_SINGLE handling.

2008-04-24  Vladimir Prus  <vladimir@codesourcery.com>

	* mi/mi-cmds.h (mi_cmd_args_ftype): Remove.
	Adjust all prototypes using mi_cmd_args_ftype to use
	mi_cmd_argv_ftype.
	(struct mi_cmd): Remove the args_func field.
	* mi/mi-cmds.c: Don't provide value for the args_func field.
	* mi/mi-main.c (mi_execute_async_cli_command)
	(mi_cmd_exec_run, mi_cmd_exec_next, mi_cmd_exec_next_instruction)
	(mi_cmd_exec_step, mi_cmd_exec_step_instruction)
	(mi_cmd_exec_finish, mi_cmd_exec_until, mi_cmd_exec_return)
	(mi_cmd_exec_continue, mi_cmd_exec_interrupt)
	(mi_cmd_target_download): Adjust.
	(mi_cmd_target_select): Adjust. Pass 0 for from_tty parameter.
	(mi_cmd_execute): Do not check for args_func.
	(mi_execute_async_cli_command): Adjust.
	* mi/mi-parse.c: Don't check for args_func.

2008-04-24  Vladimir Prus  <vladimir@codesourcery.com>

	* breakpoint.c (bpstat_check_location)
	(bpstat_check_watchpoint, bpstat_check_breakpoint_conditions):
	New, extracted from bpstat_stop_status.
	(bpstat_stop_status): Use the above.

2008-04-24  Vladimir Prus  <vladimir@codesourcery.com>

	* mi/mi-main.c (last_async_command): Rename to current_token.
	(previous_async_command): Remove.
	(mi_cmd_gdb_exit): Adjust.
	(mi_cmd_exec_interrupt): Don't dance with previous_async_command.
	(mi_cmd_target_select): Adjust.
	(mi_cmd_execute): Don't set previous_async_command.  Free token
	here even in async mode.
	(mi_execute_async_cli_command): Adjust.
	(mi_exec_async_cli_cmd_continuation): Adjust.  Do not free the
	token.
	(mi_load_progress): Adjust.

2008-04-24  Vladimir Prus  <vladimir@codesourcery.com>

	* infcmd.c (step_1_continuation): Always disable longjmp
	breakpoint if we're not going to do another step.

2008-04-24  Vladimir Prus  <vladimir@codesourcery.com>

	exec_cleanup murder.
	* breakpoint.c (until_break_command_continuation): Add
	the 'error' parameter.  Directly delete the breakoint as
	opposed to running cleanups.
	(until_break_command): Install continuation only
	after starting the target.  Don't use exec cleanups,
	use ordinary cleanups.  Discard cleanups is successfully
	started the target in async mode.
	(make_cleanup_delete_breakpoint): Remove.
	* breakpoint.h (make_cleanup_delete_breakpoint): Remove
	declaration.
	* defs.h (do_exec_cleanups, make_exec_cleanup): Remove
	declarations.
	(struct continations): Add the 'error' parameter to the
	continuation_hook field.
	(add_continuation, do_all_continuations)
	(add_intermediate_continuation)
	(do_all_intermediate_continuations): Add the 'error' parameter.
	* exceptions.c (throw_exception): Don't call do_exec_cleanups.
	* inf-loop.c (inferior_event_handler): Instead of calling
	discard_all_continuations, use do_all_continuations with 1 as
	'error' parameter.  Pass 0 as 'error' parameter in existing uses
	of discard_all_continuations.
	* infcmd.c (step_1): Do not use exec cleanup.  For async case, discard
	cleanups.
	(step_once): Install continuation only after resuming the target.
	(step_1_continuation): Disable longjmp breakpoint on error.
	(finish_command_continuation): Add the error parameter.  Delete
	the finish breakpoint directly, do not use cleanups.
	(finish_command): Do not use exec_cleanups. Always setup
	continuation.  For sync case, immediately run them.
	(attach_command_continuation): Add the error parameter.
	* infrun.c (fetch_inferior_event): Do not use exec cleanups to
	remove step_resume_breakpoint -- adjust delete it directly.
	* interps.c (interp_set): Adjust call to do_all_continations.
	* mi/mi-interp.c (mi_interpreter_exec_continuation): Do not
	do exec cleanups.
	* mi/mi-main.c (mi_cmd_target_select): Do not do exec
	cleanups.
	(mi_cmd_execute): Do not use exec_cleanup.
	(mi_execute_async_cli_command): Simplify the string concatenation
	logic.  Do no use exec cleanup.
	(mi_exec_async_cli_cmd_continuation): New parameter error.
	Free last_async_command.
	* top.c (command_line_handler_continuation): New parameter error.
	* utils.c (exec_cleanup_chain, make_exec_cleanup)
	(do_exec_cleanups): Remove.
	(add_continuation, do_all_continations)
	(add_intermediate_continuation)
	(do_all_intermediate_continuations): New parameter error.

2008-04-24  Vladimir Prus  <vladimir@codesourcery.com>

	* breakpoint.h (bp_location_p): New typedef.
	Register a vector of bp_location_p.
	* breakpoint.c (always_inserted_mode)
	(show_always_inserted_mode): New.
	(unlink_locations_from_global_list): Remove.
	(update_global_location_list)
	(update_global_location_list_nothrow): New.
	(update_watchpoint): Don't free locations.
	(should_insert_location): New.
	(insert_bp_location): Use should_insert_location.
	(insert_breakpoint_locations): Copied from
	insert_breakpoints.
	(insert_breakpoint): Use insert_breakpoint_locations.
	(bpstat_stop_status): Call update_global_location_list
	when disabling breakpoint.
	(allocate_bp_location): Don't add to bp_location_chain.
	(set_raw_breakpoint)
	(create_longjmp_breakpoint, enable_longjmp_breakpoint)
	(disable_longjmp_breakpoint, create_overlay_event_breakpoint)
	(enable_overlay_breakpoints, disable_overlay_breakpoints)
	(set_longjmp_resume_breakpoint)
	(enable_watchpoints_after_interactive_call_stop)
	(disable_watchpoints_before_interactive_call_start)
	(create_internal_breakpoint)
	(create_fork_vfork_event_catchpoint)
	(create_exec_event_catchpoint, set_momentary_breakpoint)
	(create_breakpoints, break_command_1, watch_command_1)
	(create_exception_catchpoint)
	(handle_gnu_v3_exceptions)
	(disable_breakpoint, breakpoint_re_set_one)
	(create_thread_event_breakpoint, create_solib_event_breakpoint)
	(create_ada_exception_breakpoint): : Don't call check_duplicates.
	Call update_global_location_list.
	(delete_breakpoint): Don't remove locations and don't
	try to reinsert them. Call update_global_location_list.
	(update_breakpoint_locations): Likewise.
	(restore_always_inserted_mode): New.
	(update_breakpoints_after_exec): Temporary disable
	always inserted mode.
	* Makefile.in: Update dependencies.

	* infrun.c (proceed): Remove breakpoints while stepping
	over breakpoint.
	(handle_inferior_event): Don't remove or insert
	breakpoints.
	* linux-fork.c (checkpoint_command): Remove breakpoints
	before fork and insert after.
	(linux_fork_context): Remove breakpoints before switch
	and insert after.
	* target.c (target_disconnect, target_detach): Remove
	breakpoints from target.


2008-04-24  Vladimir Prus  <vladimir@codesourcery.com>

	* breakpoint.c (print_one_breakpoint_location): In MI
	mode, report the location string the breakpoint was
	originally created with.

2008-04-23  Maxim Grigoriev  <maxim2405@gmail.com>

	* Makefile.in (xtensa-tdep.o): Update dependencies.
	* configure.tgt (xtensa*): Update dependencies.
	* xtensa-tdep.c (arreg_number): Renamed from areg_number.
	Local variable areg renamed to arreg.
	(areg_number): New function.
	(xtensa_pseudo_register_read, xtensa_pseudo_register_write)
	(xtensa_extract_return_value, xtensa_store_return_value): areg_number
	replaced by arreg_number.
	(xtensa_windowed_frame_cache, struct xtensa_frame_cache): New comments.
	(xtensa_alloc_frame_cache): Initialize cache->wd.ws.
	(xtensa_scan_prologue): New function.
	(xtensa_frame_cache): New local fp_regnum. Handle separately the case,
	when ENTRY instraction hasn't been executed yet. Get the frame pointer
	value based on prologue analysis. Fix the bugs preventing WS and
	AR4-AR7/A11 registers from getting right values for intermediate frames,
	whose registers have been already spilled.
	(xtensa_frame_prev_register): Fix WS register value. Use are_number
	and arreg_number appropriately.
	(xtensa_gdbarch_init): Set solib_svr4_fetch_link_map_offsets to
	svr4_ilp32_fetch_link_map_offsets.

2008-04-23  Andrew Stubbs  <andrew.stubbs@st.com>

	* printcmd.c: Define USE_PRINTF_I64 and PRINTF_HAS_LONG_LONG on MinGW.
	(printf_command): Convert %lld to %I64d when USE_PRINTF_I64 set.

2008-04-23  Paolo Bonzini  <bonzini@gnu.org>

	* acinclude.m4: Add override.m4.
	* configure: Regenerate.

2008-04-22  Jan Kratochvil  <jan.kratochvil@redhat.com>

	* ada-lang.c (get_selections): Variable PROMPT made non-const and
	initialized with a trailing space now.  Use PROMPT_ARG of
	COMMAND_LINE_INPUT instead of printing it ourselves.

2008-04-22  Joel Brobecker  <brobecker@adacore.com>

	* NEWS: Document support for 64-bit core file.

2008-04-22  Corinna Vinschen  <vinschen@redhat.com>

	* NEWS: Add information on calling convention and new SH CLI options.

	* sh-tdep.c (sh_cc_gcc): New static string.
	(sh_cc_renesas): Ditto.
	(sh_cc_enum): New static string array.
	(sh_active_calling_convention): New static string pointer denoting
	active user chosen ABI.
	(sh_is_renesas_calling_convention): New function to return function
	specific ABI, or user choice if necessary.
	(sh_use_struct_convention): Rename first argument and turn around its
	meaning.  Check for renesas ABI and return accordingly.
	(sh_use_struct_convention_nofpu): New function.
	(sh_next_flt_argreg): Get function type as third parameter.  Check
	for renesas ABI and choose floating registers accordingly.
	(sh_push_dummy_call_fpu): Check for ABI and choose argument slot and
	struct return slot accordingly.
	(sh_push_dummy_call_nofpu): Ditto.
	(sh_return_value_nofpu): Call sh_use_struct_convention_nofpu from here.
	Evaluate ABI and give to sh_use_struct_convention_nofpu.
	(sh_return_value_fpu):  Evaluate ABI and give to
	sh_use_struct_convention.
	(show_sh_command): New function.
	(set_sh_command): Ditto.
	(_initialize_sh_tdep): Initialize `set/show sh calling-convention
	CLI command.

	* gdbarch.sh (return_value): Add func_type argument.
	* gdbarch.c: Regenerate.
	* gdbarch.h: Ditto.
	* eval.c (evaluate_subexp_standard): Rename local variable value_type to
	val_type so as not to collide with value_type function.  Call
	using_struct_return with additional function type argument.
	* infcall.c (call_function_by_hand): Call using_struct_return and
	gdbarch_return_value with additional function type argument.
	* infcmd.c (print_return_value): Take addition func_type argument.
	Call gdbarch_return_value with additional function type argument.
	(finish_command_continuation): Call print_return_value with additional
	function type argument.
	(finish_command): Ditto.
	* sparc-tdep.c (sparc32_push_dummy_code): Call using_struct_return with
	additional function type argument.
	* stack.c (return_command): Call using_struct_return and
	gdbarch_return_value with additional function type argument.
	* value.c (using_struct_return): Take additional function type argument.
	* value.h (using_struct_return): Accommodate declaration.
	* alpha-tdep.c (alpha_return_value): Add func_type argument.
	* amd64-tdep.c (amd64_return_value): Ditto.
	* arm-tdep.c (arm_return_value): Ditto.
	* avr-tdep.c (avr_return_value): Ditto.
	* cris-tdep.c (cris_return_value): Ditto.
	* frv-tdep.c (frv_return_value): Ditto.
	* h8300-tdep.c (h8300_return_value): Ditto.
	(h8300h_return_value): Ditto.
	* hppa-tdep.c (hppa32_return_value): Ditto.
	(hppa64_return_value): Ditto.
	* i386-tdep.c (i386_return_value): Ditto.
	* ia64-tdep.c (ia64_return_value): Ditto.
	* iq2000-tdep.c (iq2000_return_value): Ditto.
	* m32c-tdep.c (m32c_return_value): Ditto.
	* m32r-tdep.c (m32r_return_value): Ditto.
	* m68hc11-tdep.c (m68hc11_return_value): Ditto.
	* m68k-tdep.c (m68k_return_value): Ditto.
	(m68k_svr4_return_value): Ditto.
	* m88k-tdep.c  (m88k_return_value): Ditto.
	* mep-tdep.c (mep_return_value): Ditto.
	* mips-tdep.c (mips_eabi_return_value): Ditto.
	(mips_n32n64_return_value): Ditto.
	(mips_o32_return_value): Ditto.
	(mips_o64_return_value): Ditto.
	* mn10300-tdep.c (mn10300_return_value): Ditto.
	* mt-tdep.c (mt_return_value): Ditto.
	* ppc-linux-tdep.c (ppc_linux_return_value): Ditto.
	* ppc-sysv-tdep.c (ppc_sysv_abi_return_value): Ditto.
	(ppc_sysv_abi_broken_return_value): Ditto.
	(ppc64_sysv_abi_return_value): Ditto.
	* ppc-tdep.h (ppc_sysv_abi_return_value): Ditto.
	(ppc_sysv_abi_broken_return_value): Ditto.
	(ppc64_sysv_abi_return_value): Ditto.
	* ppcnbsd-tdep.c (ppcnbsd_return_value): Ditto.
	* rs6000-tdep.c (rs6000_return_value): Ditto.
	* s390-tdep.c (s390_return_value): Ditto.
	* score-tdep.c (score_return_value): Ditto.
	* sh-tdep.c (sh_return_value_nofpu): Ditto.
	(sh_return_value_fpu): Ditto.
	* sh64-tdep.c (sh64_return_value): Ditto.
	* sparc-tdep.c (sparc32_return_value): Ditto.
	* sparc64-tdep.c (sparc64_return_value): Ditto.
	* spu-tdep.c (spu_return_value): Ditto.
	* v850-tdep.c (v850_return_value): Ditto.
	* vax-tdep.c (vax_return_value): Ditto.
	* xstormy16-tdep.c (xstormy16_return_value): Ditto.
	* xtensa-tdep.c (xtensa_return_value): Ditto.

	* gdbtypes.h (struct type): Add calling_convention member.
	* dwarf2read.c (read_subroutine_type): Add calling convention read
	from DW_AT_calling_convention attribute to function type.

2008-04-22  Markus Deuling  <deuling@de.ibm.com>

	* eval.c (evaluate_subexp_standard): Use value_subscripted_rvalue for
	multi_f77_subscript to support values from registers.
	* valarith.c (value_subscripted_rvalue): Remove prototype and static.
	* value.h (value_subscripted_rvalue): Add prototype.

	* f-typeprint.c (f_type_print_base): Add support for TYPE_CODE_UNION.
	Fix output.
	* f-valprint.c (f_val_print): Likewise.

2008-04-21  Craig Silverstein  <csilvers@google.com>

	* dwarf2read.c (zlib_decompress_section): Define abfd in the
	!HAVE_ZLIB_H case.

2008-04-21  Pedro Alves  <pedro@codesourcery.com>

	* symfile.c (syms_from_objfile): Don't warn if lowest loadable
	section is not a code section.

2008-04-19  Craig Silverstein  <csilvers@google.com>

	* NEWS: Add information on compressed debug sections.

2008-04-19  Vladimir Prus  <vladimir@codesourcery.com>

	* mi/mi-cmd-var.c (varobj_update_one): Print new
	value for variable objects that changed type.

2008-04-19  Vladimir Prus  <vladimir@codesourcery.com>

	* varobj.c (varobj_invalidate): Don't touch floating
	varobjs.

2008-04-19  Mark Kettenis  <kettenis@gnu.org>

	* symtab.c: (multiple_symbols_modes, multiple_symbols_ask)
	(multiple_symbols_cancel): Remove extra const.
	* symtab.h: Likewise.

2008-04-19  Nick Roberts  <nickrob@snap.net.nz>

	* interps.c (top_level_interpreter): Rename static variable...
	(top_level_interpreter_ptr): ...to this.
 	(top_level_interpreter): New function.

	* interps.h: New extern for top_level_interpreter.

	* linespec.c: Include interps.h and mi/mi-cmds.h.
	(decode_line_2): When using MI, always set all breakpoints in menu.

	* Makefile.in (linespec.o, mi-interp.o): Add dependencies.

2008-04-18  Craig Silverstein  <csilvers@google.com>

	* configure.ac (AC_SEARCH_LIBS): Add check for zlib.
	* config.in, configure: Regenerate.
	* dwarf2read.c: Include zlib.h if present.
	Modified *_SECTION macros.
	(section_is_p): New.
	(dwarf2_locate_sections): Use section_is_p instead of strcmp
	(dwarf2_resize_section): New.
	to determine whether a given section has a given name.
	(zlib_decompress_section): New.
	(dwarf2_read_section): Read the compressed section if present
	in the binary.
	* MAINTAINERS: Added myself to section Write After Approval.

2008-04-18  Thiago Jung Bauermann  <bauerman@br.ibm.com>

	* defs.h (exec_set_section_offsets): Remove prototype.
	* exec.c (exec_set_section_offsets): Remove function.

2008-04-18  Joel Brobecker  <brobecker@adacore.com>

	* stabsread.c (cleanup_undefined_types_1): Add instance flags check
	in the search for the matching symbol.

2008-04-17  Marc Khouzam  <marc.khouzam@ericsson.com>

	* breakpoint.c (update_watchpoint): Always reparse
	condition.

2008-04-17  Joel Brobecker  <brobecker@adacore.com>

	* breakpoint.c (print_one_breakpoint_location): Make sure to print
	the breakpoint address only once.

2008-04-17  Dennis Roberts  <dennis.roberts@sunquestinfo.com>

	* rs6000-tdep.c (rs6000_gdbarch_init): Use the BFD architecture,
	rather than a hard-coded architecture, for xcoff executables.

2008-04-17  Doug Evans  <dje@google.com>

	* buildsym.c (watch_main_source_file_lossage): New fn.
	(end_symtab): Call it.

	* source.c (find_and_open_source): Add some comments clarifying
	handling of FULLNAME argument.	Make static.  Remove pointless
	xstrdup/xfree.

2008-04-17  Pedro Alves  <pedro@codesourcery.com>

	* inf-loop.c (inferior_event_handler): Also run the intermediate
	continuations in the INF_EXEC_COMPLETE case.

2008-04-16  Tom Tromey  <tromey@redhat.com>

	* cli/cli-decode.h (CMD_ASYNC_OK): New define.
	(set_cmd_async_ok, get_cmd_async_ok): Declare.
	* cli/cli-decode.c (set_cmd_async_ok): New function.
	(get_cmd_async_ok): New function.
	* cli/cli-cmds.c (init_cli_cmds): Mark "pwd", "help", "info", and
	"show" as async-ok.
	* top.c (execute_command): Use get_cmd_async_ok.
	* infcmd.c: Include cli/cli-decode.h.
	(_initialize_infcmd): Mark "interrupt" as async-ok.
	* Makefile.in (infcmd.o): Depend on cli_decode_h.

2008-04-16  Daniel Jacobowitz  <dan@codesourcery.com>

	PR gdb/2445
	* exec.c: Correct "arch-utils.h" include.

2008-04-15  Aleksandar Ristovski  <aristovski@qnx.com>

	PR gdb/2424
	* infrun.c (normal_stop) Move breakpoint_auto_delete further down
	to allow printing to 'see' real reason of stop. This fixes PR 2424.
	* breakpoint.c (bpdisp_texst): New function. The function takes over
	the role of bpstats static array in print_one_breakpoint_location.
	(print_it_typical): Print "Temporary breakpoint" instead
	of just "Breakpoint" when breakpoint is, well, temporary. For mi-like
	protocols, print disp field.
	(print_one_breakpoint_location): Removed bpdisps static definition.
	Call new bpstat_text function to get value for 'disp' field.
	(mention): Print "Temporary breakpoint" instead of just "Breakpoint".

2008-04-15  Daniel Jacobowitz  <dan@codesourcery.com>

	* gnulib/Makefile.am, gnulib/m4/gnulib-cache.m4,
	gnulib/aux/link-warning.h, gnulib/extra/link-warning.h: Adjust
	by rerunning gnulib-tool with --aux-dir=gnulib/extra.
	* gnulib/Makefile.in: Regenerate.

2008-04-14  Daniel Jacobowitz  <dan@codesourcery.com>

	* Makefile.in (GNULIB_H): New.  Trigger all-lib.
	(defs_h): Use $(GNULIB_H).
	(all-lib): Depend on gnulib/Makefile.
	(gnulib/Makefile): Regenerate gnulib/Makefile and gnulib/.deps.
	* config.in, gnulib/Makefile.in: Regenerated.

2008-04-14  Daniel Jacobowitz  <dan@codesourcery.com>

	* Makefile.in (LIBGNU, INCGNU): Define.
	(INTERNAL_CFLAGS_BASE): Add INCGNU.
	(INTERNAL_LIBS, CLIBS, CDEPS): Add LIBGNU.
	(CLEANDIRS): New.
	($(LIBGNU), all-lib): New rules.
	(clean, distclean, do-maintainer-clean): Use CLEANDIRS.
	* configure.ac: Use gl_EARLY, gl_INIT, and AM_INIT_AUTOMAKE.
	Simplify AC_CONFIG_AUX_DIR.  Generate gnulib/Makefile.
	* gnulib: New directory, from gnulib-tool.
	* configure, aclocal.m4: Regenerated.

2008-04-14  Daniel Jacobowitz  <dan@codesourcery.com>

	* linux-thread-db.c (have_threads_callback): Check thread->private.

2008-04-13  Nick Roberts  <nickrob@snap.net.nz>
	    Vladimir Prus  <vladimir@codesourcery.com>

	Fix @-varobjs.
	* varobj.c (value_of_root): Update the expression for
	floating varobjs.
	* mi/mi-cmd-var.c (varobj_update_one): If type has changed,
	report that.

2008-04-09  Marc Khouzam  <marc.khouzam@ericsson.com>

	* mi/mi-cmd-var.c: Include "mi-getopt.h".
	(mi_parse_format): New.  Factored out from mi_cmd_var_set_format.
	(mi_cmd_var_set_format): Use new mi_parse_format.
	(mi_cmd_var_evaluate_expression): Support for -f option to specify
	format.
	* Makefile.in (mi-cmd-var.o): Update dependencies.

	* varobj.h (varobj_get_formatted_value): Declare.
	* varobj.c (my_value_of_variable): Added format parameter.
	(cplus_value_of_variable): Likewise.
	(java_value_of_variable): Likewise.
	(c_value_of_variable): Likewise.  Evaluate expression based
	on format parameter.
	(struct language_specific): Add format parameter to function member
	*value_of_variable.
	(varobj_get_formatted_value): New.
	(varobj_get_value): Added format parameter to method call.

2008-04-08  Joel Brobecker  <brobecker@adacore.com>

	* stabsread.c (cleanup_undefined_types_noname): Manually set the
	instance flags of the undefined type before calling replace_type.

2008-04-08  Vladimir Prus  <vladimir@codesourcery.com>

	* target.h (enum strata): Remove the download_stratum.

2008-04-07  Doug Evans  <dje@google.com>

	* buildsym.h (last_source_file): Add dwarf info to comment.
	(last_source_start_addr): Ditto.

2008-04-07  Pedro Alves  <pedro@codesourcery.com>

	* alphanbsd-tdep.c: Include "target.h".
	* mn10300-tdep.c: Include "target.h".
	* Makefile.in (alphanbsd-tdep.o, mn10300-tdep.o): Update.

2008-04-06  Vladimir Prus  <vladimir@codesourcery.com>

	Fix breakpoint condition that use member variables.
	* valops.c (check_field): Remove.
	(check_field_in): Rename to check_field.
	(value_of_this): Use la_name_of_this.
	* value.h (check_field): Adjust prototype.

	* language.h (la_value_of_this): Rename to la_name_of_this.
	* language.c (unknown_language_defn): Specify "this" for
	name_of_this.
	(auto_language_defn): Likewise.
	(local_language_defn): Likewise.
	* ada-lang.c (ada_language_defn): Adjust comment.
	* c-lang.c (c_language_defn): Adjust comment.
	(cplus_language_defn): Specify "this" for name_of_this.
	(asm_language_defn): Adjust comment.
	(minimal_language_defn): Adjust comment.
	* f-lang.c (f_language_defn): Specify NULL for name_of_this.
	* jv-lang.c (java_language_defn): Specify "this" for name_of_this.
	* m2-lang.c (m2_language_defn): Specify "this" for name_of_this.
	* objc-lang.c (objc_language_defn): Specify "self" for
	name_of_this.
	* p-lang.c (pascal_language_defn): Specify "this" for
	name_of_this.
	* scm-lang.c (scm_language_defn): Specify NULL for name_of_this.

	* symtab.c (lookup_symbol_aux): Lookup "this" in the
	proper scope, and check for field in type of "this", without
	trying to create a value.

2008-04-04  Pedro Alves  <pedro@codesourcery.com>

	* mi/mi-cmds.h (enum mi_cmd_result): Delete MI_CMD_ERROR.
	(mi_error_message): Delete declaration.
	* mi/mi-interp.c (mi_cmd_interpreter_exec): Call error instead of
	returning MI_CMD_ERROR.
	* mi/mi-main.c (mi_error_message): Delete.
	(mi_cmd_exec_interrupt):
	(mi_cmd_thread_select, mi_cmd_thread_list_ids)
	(mi_cmd_thread_info): Call error instead of returning
	MI_CMD_ERROR.
	(mi_cmd_data_list_register_values): Call error instead of
	returning MI_CMD_ERROR.  Adapt to new get_register interface.
	(get_register): Change return typo to void.  Call error instead of
	returning MI_CMD_ERROR.
	(mi_cmd_data_write_register_values): Call error instead of
	returning MI_CMD_ERROR.
	(mi_cmd_list_features): Return MI_CMD_DONE.
	(captured_mi_execute_command): Remove MI_CMD_ERROR handling.
	(mi_execute_command): Always print exceptions with -error.

2008-04-04  Joel Brobecker  <brobecker@adacore.com>

	* NEWS: Mention new commands set/show multiple-symbols.

2008-04-03  Joel Brobecker  <brobecker@adacore.com>

	* symtab.c (multiple_symbols_ask, multiple_symbols_all)
	(multiple_symbols_cancel): New constants.
	(multiple_symbols_modes, multiple_symbols_mode): New static globals.
	(multiple_symbols_select_mode): New function.
	(_initialize_symtab): Add new set/show multiple-symbols commands.
	* symtab.h (multiple_symbols_ask, multiple_symbols_all)
	(multiple_symbols_cancel, multiple_symbols_select_mode): Declare.
	* ada-lang.c (user_select_syms): Add handling of new multiple-symbols
	setting.
	* linespec.c (decode_line_2): Likewise.

2008-04-03  Doug Evans  <dje@sebabeach.org>

	* symtab.h (enum free_code): Delete free_contents, unused.
	* symmisc.c (free_symtab_block): Delete.
	(free_symtab, case free_code): Delete.

2008-04-01  Aleksandar Ristovski  <aristovski@qnx.com>

	* valops.c (value_cast_structs): New function. Cast related
	STRUCT types up/down and return cast value. The body of this
	function comes mostly from value_cast_pointers.
	(value_cast_pointers): Code for actual cast STRUCT-STRUCT moved
	to value_cast_structs. Now value_cast_pointers needs only create
	appropriate reference after using value_cast_structs for actual
	casting.
	(value_cast): Handle references.

2008-04-01  Marc Khouzam  <marc.khouzam@ericsson.com>

	* MAINTAINERS: Added myself to section Write After Approval.

2008-03-30  Daniel Jacobowitz  <dan@codesourcery.com>

	* ia64-tdep.c (examine_prologue): Correct array access.

2008-03-28  Aleksandar Ristovski  <aristovski@qnx.com>

	* cp-support.c (first_component_command): Return if no arguments.

2008-03-28  Carlos O'Donell  <carlos@codesourcery.com>

	* ser-mingw.c (ser_windows_open): Open requested name.

2008-03-28  Aleksandar Ristovski  <aristovski@qnx.com>

	* MAINTAINERS: Added myself.

2008-03-28  Pedro Alves  <pedro@codesourcery.com>

	* target.c (find_default_run_target): Allow a NULL `do_mesg'
	parameter.  If it is NULL, don't call error.
	(find_default_can_async_p, find_default_is_async_p): Pass NULL as
	`do_mesg' parameter to find_default_run_target.  If no target was
	found, return 0.

2008-03-28  Daniel Jacobowitz  <dan@codesourcery.com>

	* mips-linux-tdep.c: Update N32/N64 signal frame comments.
	(N64_SIGCONTEXT_LO, N64_SIGCONTEXT_PC, N64_SIGCONTEXT_FPCSR): Update.
	(N64_SIGCONTEXT_FIR, N64_SIGCONTEXT_CAUSE, N64_SIGCONTEXT_BADVADDR):
	Delete.
	(mips_linux_n32n64_sigframe_init): Do not record cause or badvaddr.

2008-03-27  Joel Brobecker  <brobecker@adacore.com>

	GDB 6.8 released.

2008-03-27  Ulrich Weigand  <uweigand@de.ibm.com>

	* features/Makefile (%.dat): Set xmltarget to the base filename
	of the XML source, without subdirectory.
	* regformats/rs6000/powerpc-32.dat: Regenerate.
	* regformats/rs6000/powerpc-64.dat: Regenerate.
	* regformats/rs6000/powerpc-e500.dat: Regenerate.

2008-03-27  Markus Deuling  <deuling@de.ibm.com>

	* xcoffread.c (scan_xcoff_symtab): Replace current_gdbarch by
	objfile arch.

2008-03-27  Nick Roberts  <nickrob@snap.net.nz>

	* mi/mi-main.c (enum captured_mi_execute_command_actions):
	Spell suppress in EXECUTE_COMMAND_SUPPRESS_PROMPT correctly.

2008-03-26  Ulrich Weigand  <uweigand@de.ibm.com>

	* objfiles.h (struct objfile): New GDBARCH member.
	(get_objfile_arch): Add prototype.
	* objfiles.c: Include "arch-utils.h".
	(allocate_objfile): Look up gdbarch associated with bfd.
	(get_objfile_arch): New function.
	* Makefile (objfiles.o): Update dependencies.

	* dwarf2-frame.c (decode_frame_entry_1): Replace current_gdbarch
	by objfile arch.
	* dwarf2loc.c (dwarf_expr_read_reg): Replace current_gdbarch
	by frame arch.
	(locexpr_describe_location): Replace current_gdbarch by
	objfile arch.
	* dwarf2read.c (die_type): Replace current_gdbarch by objfile arch.
	(dwarf2_add_field): Likewise.
	(read_tag_pointer_type): Likewise.
	(read_base_type): Likewise.
	(new_symbol): Likewise.

	* coffread.c (decode_type): Add OBJFILE argument.  Update callers.
	(decode_base_type, decode_function_type): Likewise.
	(coff_read_struct_type, coff_read_enum_type): Likewise.
	(coff_symtab_read): Replace current_gdbarch by objfile arch.
	(decode_base_type): Likewise.
	(coff_read_enum_type): Likewise.
	(coff_read_struct_type): Replace current_objfile by OBJFILE argument.
	(coff_read_enum_type): Likewise.

	* dbxread.c (read_dbx_symtab): Replace current_gdbarch by objfile arch.
	(end_psymtab): Likewise.
	(process_one_symbol): Likewise.

	* mdebugread.c (parse_symbol): Replace current_gdbarch by objfile arch.
	(parse_procedure): Likewise.
	(parse_partial_symbols): Likewise.

	* somread.c (som_symtab_read): Replace current_gdbarch by objfile arch.

	* stabsread.c (define_symbol): Replace current_gdbarch by objfile arch.
	Replace static pcc_promotion_type and pcc_unsigned_promotion_type by
	built-in types.
	(read_range_type): Replace current_gdbarch by objfile arch.  Replace
	static range_index_type by built-in type.
	(read_one_struct_field): Replace current_gdbarch by objfile arch.
	(read_enum_type): Likewise.

	* xcoffread.c (read_xcoff_symtab): Replace current_gdbarch by
	objfile arch.

2008-03-26  Vladimir Prus  <vladimir@codesourcery.com>

	* varobj.h (varobj_floating_p): Declare.
	* varobj.c (varobj_floating_p): New.
	* mi/mi-cmd-var.c (mi_cmd_var_update): When passed
	'@' as the name, update all floating varobjs.

2008-03-26  Vladimir Prus  <vladimir@codesourcery.com>

	* varobj.c (struct varobj_root): Rename use_selected_frame to
	floating, and clarify the meaning.
	(varobj_create, varobj_update,  new_root_variable): Adjust.
	(value_of_root): Don't use type_changed as in variable,
	adjust comment.
	(c_value_of_root): Adjust.

2008-03-25  Pedro Alves  <pedro@codesourcery.com>

	* linux-nat.c (linux_nat_attach): Add the pid we attached to, to
	gdb's thread list.
	(linux_nat_wait): Add main lwp to gdb's thread list.
	* linux-thread-db.c (find_new_threads_callback): Also attach to
	already listed threads which thread_db didn't know about yet.

2008-03-25  Pedro Alves  <pedro@codesourcery.com>

	* linux-nat.c (drain_queued_events): Fix comment typo.
	(linux_nat_attach): In async mode, don't rely on storing a pending
	status.  Instead place the wait status on the pipe.
	(linux_nat_resume): Remove unreacheable shortcut code in async
	mode.
	(stop_wait_callback): In async mode, don't store pending status.
	Instead, cancel breakpoints or resend the signal appropriatelly.
	(cancel_breakpoint): New, refactored from
	cancel_breakpoints_callback.
	(cancel_breakpoints_callback): Call cancel_breakpoint.
	(pipe_to_local_event_queue): Remove special token processing.
	(linux_nat_wait): Issue an internal error if a pending status is
	found in async mode.

2008-03-24  Daniel Jacobowitz  <dan@codesourcery.com>

	* inflow.c (gdb_has_a_terminal): Guard access to our_process_group.

2008-03-24  Nick Roberts  <nickrob@snap.net.nz>
	    Vladimir Prus  <vladimir@codesourcery.com>

	* varobj.c  (struct varobj_root): New component thread_id.
	(varobj_get_thread_id, check_scope): New functions.
	(c_value_of_root): Use check_scope.  Switch to the
	proper thread if necessary.

	* varobj.h (varobj_get_thread_id): New extern.

	* mi/mi-cmd-var.c (print_varobj): Add thread-id field.

2008-03-23  Daniel Jacobowitz  <dan@codesourcery.com>

	PR gdb/544
	* top.c: Revert 2008-03-21 changes.

2008-03-23  Vladimir Prus  <vladimir@codesourcery.com>

	* thread.c (make_cleanup_restore_current_thread): Make it
	globally visible.
	* gdbthread.h (make_cleanup_restore_current_thread): Declare.
	* varobj.c (varobj_update): Don't save/restore frame.
	(c_value_of_root): Save/restore thread and frame here,
	using make_cleanup_restore_current_thread.
	* Makefile.in: Update dependecies.

2008-03-23  Vladimir Prus  <vladimir@codesourcery.com>

	* varobj.c (struct varobj_root): Clarify
	comment on the frame field.
	(varobj_create): Don't set frame if we have no
	block.

2008-03-21  Daniel Jacobowitz  <dan@codesourcery.com>

	PR gdb/544
	Suggested by Jan Kratochvil:
	* top.c (gdb_rl_operate_and_get_next_completion): Call
	rl_redisplay_function.
	(gdb_rl_redisplay): New.
	(init_main): Set rl_redisplay_function.

2008-03-21  Thomas Mittelstaedt  <T.Mittelstaedt@cadenas.de>  (tiny change)

	* aix-thread.c (pdc_read_regs): Fix compiler warning.
	(pdc_write_regs, aix_thread_resume, fetch_regs_kernel_thread)
	(store_regs_kernel_thread): Likewise.

2008-03-21  Pedro Alves  <pedro@codesourcery.com>

	Linux native async support.

	* target.h (struct target_ops): Delete to_async_mask_value and add
	to_async_mask.
	(target_is_async_p, target_async): Formatting.
	(target_async_mask_value): Delete.
	(target_async_mask): Delete function declaration, and add new
	target macro with the same name.

	* target.c (update_current_target): Replace to_async_mask_value by
	to_async_mask.  Default to_async_mask to return_one.
	(target_async_mask): Delete.
	(find_default_can_async_p, find_default_is_async_p): New.
	(init_dummy_target): register find_default_can_async_p and
	find_default_is_async_p on the dummy target.

	* linux-nat.c: Include inf-loop.h, event-loop.h and event-top.h.
	(debug_linux_nat_async): New global.
	(show_debug_linux_nat_async): New function.
	(linux_nat_async_enabled, linux_nat_async_mask_value)
	(linux_nat_event_pipe, linux_nat_num_queued_events)
	(linux_nat_async_events_enabled): New globals.
	(struct waitpid_result): New struct.
	(waitpid_queue): New global.
	(queued_waitpid, push_waitpid, drain_queued_events): New.
	(my_waitpid): Call queued_waitpid.
	(linux_child_follow_fork): Disable async events during the call.
	(blocked_mask): Delete.
	(sync_sigchld_action, async_sigchld_action): New globals.
	(lin_lwp_attach_lwp): In sync mode, don't reblock SIGCHLD.  In
	async mode, block events during the call.
	(linux_nat_create_inferior): New.
	(linux_nat_attach): In sync mode, restore the mask states.  In
	async mode, wake the event loop immediatelly.
	(detach_callback): Drain all queued events of the lwp we're
	detaching from.
	(linux_nat_detach): Block async mode, and drain events of the main
	process.
	(linux_nat_resume): If in async mode, mask async events during the
	call.  If short circuiting, force event loop to wake up.  If
	resuming, set target_executing, and register target events in the
	event loop.
	(pipe_to_local_event_queue, local_event_queue_to_pipe): New.
	(linux_nat_wait): In async mode, block events during the call.
	Only enable/disable passing SIGINT to the inferior in sync mode.
	Get events from local waitpid queue.  If no interesting events was
	found, return to events loop.  Reregister target events in the
	event loop on exit.  In sync mode, no need to reblock SIGCHLD.
	(linux_nat_kill): Disable events on entry.
	(linux_nat_mourn_inferior): In sync mode, don't restore the masks
	here.  Detach async mode from the event loop if there are no more
	forks available, otherwise leave it on.
	(sigchld_handler): Assure this is called only in sync mode.
	(linux_async_permitted, linux_async_permitted_1): New globals.
	(set_maintenance_linux_async_permitted)
	(show_maintenance_linux_async_permitted): New functions.
	(linux_nat_is_async_p, linux_nat_can_async_p)
	(linux_nat_async_mask): New.
	(linux_nat_event_pipe_pop, linux_nat_event_pipe_push): New.
	(get_pending_events, async_sigchld_handler): New.
	(linux_nat_async_events): New.
	(async_terminal_is_ours): New global.
	(linux_nat_terminal_inferior, linux_nat_terminal_ours): New.
	(async_client_callback, async_client_context): New.
	(linux_nat_async_file_handler, linux_nat_async)
	(linux_nat_disable_async, linux_nat_enable_async): New.
	(linux_nat_add_target): Register linux_nat_create_inferior,
	linux_nat_can_async_p, linux_nat_is_async_p, linux_nat_async,
	linux_nat_async_mask, linux_nat_terminal_inferior and
	linux_nat_terminal_ours.
	(_initialize_linux_nat): Remove local action variable, and update
	code that used it to use sync_sigchld_action.  Add new
	"lin-lwp-async" debug set/show command.  Put the "lin-lwp" debug
	set/show command in the maintenance class.  Add new "linux-async"
	maintenance set/show command.  Block SIGCHLD by default.  Setup
	async_sichld_action, and sync_sigchld_action.  Install the default
	async mode.
	(lin_thread_get_thread_signals): Use a local sigset_t for blocking
	the cancel signals.

	* linux-thread-db.c (re_check_for_thread_db): New.
	(clear_lwpid_callback): Handle TARGET_WAITKIND_IGNORE.
	(thread_db_can_async_p, thread_db_is_async_p, thread_db_async)
	(thread_db_async_mask): New.
	(init_thread_db_ops): Register thread_db_can_async_p,
	thread_db_is_async_p, thread_db_async and thread_db_async_mask.

	* remote.c (remote_async_mask_value): New.
	(remote_return_zero): New.
	(init_remote_ops): Register remote_return_zero as callbacks of
	to_can_async_p and to_is_async_p.
	(remote_can_async_p, remote_is_async_p, remote_async): Update to
	use remote_async_mask_value.
	(remote_async_mask): New.
	(init_remote_async_ops): Remove to_async_mask_value setting and
	register remote_async_mask as to_async_mask callback in
	remote_async_ops.

	* Makefile.in (linux-nat.o): Update.

2008-03-21  Daniel Jacobowitz  <dan@codesourcery.com>

	* gdbthread.h (add_thread_with_info): New.
	* linux-thread-db.c: Add some documentation.
	(GET_LWP, GET_PID, GET_THREAD, is_lwp, is_thread, BUILD_LWP): Delete.
	(struct private_thread_info): Remove th_valid and ti_valid.
	Replace ti with tid.
	(thread_get_info_callback): Do not add TID to the new ptid.  Do
	not cache th or ti.
	(thread_db_map_id2thr, lwp_from_thread): Delete functions.
	(thread_from_lwp): Assert that the LWP is set.  Do not add TID to the
	new PTID.
	(attach_thread): Handle an already-existing thread.  Use
	add_thread_with_info.  Cache the th and tid.
	(detach_thread): Verify that private was set.  Remove verbose
	argument and printing.  Update caller.
	(thread_db_detach): Do not adjust inferior_ptid.
	(clear_lwpid_callback, thread_db_resume, thread_db_kill): Delete.
	(check_event, find_new_threads_callback): Do not add TID to the new PTID.
	(thread_db_wait): Do not use lwp_from_thread.
	(thread_db_pid_to_str): Use the cached TID.
	(thread_db_extra_thread_info): Check that private is set.
	(same_ptid_callback): Delete.
	(thread_db_get_thread_local_address): Do not use it or check
	is_thread.  Check that private is set.  Assume that the thread
	handle is already cached.
	(init_thread_db_ops): Remove to_resume and to_kill.
	* thread.c (add_thread_with_info): New.
	(add_thread): Use it.
	* linux-nat.c (find_thread_from_lwp): Delete.
	(exit_lwp): Do not use it.  Check print_thread_events.  Print before
	deleting the thread.
	(GET_PID, GET_LWP, BUILD_LWP, is_lwp): Move to...
	* linux-nat.h (GET_PID, GET_LWP, BUILD_LWP, is_lwp): ...here.
	* inf-ttrace.c (inf_ttrace_wait): Use print_thread_events and
	printf_unfiltered for thread exits.
	* procfs.c (procfs_wait): Likewise.

2008-03-21  Chris Demetriou  <cgd@google.com>

	* symtab.c (rbreak_command): Quote symbol name before passing
	it to break_command.

2008-03-21  Daniel Jacobowitz  <dan@codesourcery.com>

	* eval.c (evaluate_subexp_for_address): Clarify error message.
	Use value_must_coerce_to_target.
	* infcall.c (value_arg_coerce): Call value_coerce_to_target.
	* valops.c (value_assign): Call value_coerce_to_target when
	assigning to anything but internalvars.  Leave GDB-side arrays
	as arrays when assigning to internalvars.
	(value_must_coerce_to_target, value_coerce_to_target): New.
	(value_coerce_array, value_addr): Call value_coerce_to_target.
	(value_array): Create the array in GDB's memory instead of
	the inferior's.
	* value.h (value_must_coerce_to_target, value_coerce_to_target):
	Declare.

2008-03-21  Daniel Jacobowitz  <dan@codesourcery.com>

	* top.c (quit_confirm): Warn that we will kill the program.

2008-03-19  Pedro Alves  <pedro@codesourcery.com>

	* inflow.c (terminal_ours_1): Guard access to
	inferior_process_group with #ifdef PROCESS_GROUP_TYPE.

2008-03-18  Ulrich Weigand  <uweigand@de.ibm.com>
	    Jim Blandy  <jimb@codesourcery.com>
	    Daniel Jacobowitz  <drow@false.org>

	* dwarf2expr.h (struct dwarf_expr_context): Add ADDR_SIZE member.
	(dwarf2_read_address): Update prototype.

	* dwarf2expr.c (unsigned_address_type): Add ADDR_SIZE parameter.
	(signed_address_type): Likewise.
	(dwarf2_read_address): Replace BYTES_READ parameter with ADDR_SIZE.
	(execute_stack_op): Update calls to unsigned_address_type,
	signed_address_type and dwarf2_read_address.  Fix implementation
	of DW_OP_deref_size.

	* dwarf2loc.h (dwarf2_per_cu_objfile): Add prototype.
	(dwarf2_per_cu_addr_size): Likewise.
	(struct dwarf2_locexpr_baton): Replace OBJFILE with PER_CU.
	(struct dwarf2_loclist_baton): Likewise.

	* dwarf2loc.c (find_location_expression): Update calls to
	dwarf2_read_address.  Use dwarf2_per_cu_objfile and
	dwarf2_per_cu_addr_size to retrieve PER_CU parameters.
	(locexpr_describe_location): Likewise.
	(dwarf2_evaluate_loc_desc): Replace OBJFILE with PER_CU parameter.
	Set ctx->addr_size to dwarf2_per_cu_addr_size (per_cu).
	(dwarf2_loc_desc_needs_frame): Add PER_CU parameter.  Set ctx->addr_size
	to dwarf2_per_cu_addr_size (per_cu).
	(locexpr_read_variable): Update dwarf2_evaluate_loc_desc call.
	(loclist_read_variable): Likewise.
	(locexpr_read_needs_frame): Update dwarf2_loc_desc_needs_frame call.

	* dwarf2read.c (dwarf2_symbol_mark_computed): Set baton->per_cu
	instead of baton->objfile.
	(dwarf2_per_cu_obfile): New function.
	(dwarf2_per_cu_addr_size): Likewise.

	* dwarf2-frame.c (struct comp_unit): Move higher.
	(struct dwarf2_cie): Add UNIT and ADDR_SIZE members.
	(execute_stack_op): Add ADDR_SIZE parameter; set ctx->addr_size.
	(execute_cfa_program): Add FDE parameter.  Replace EH_FRAME_P
	parameter by using fde->eh_frame_p.  Use read_encoded_value
	to implement DW_CFA_set_loc.
	(struct dwarf2_frame_cache): Add ADDR_SIZE member.
	(dwarf2_frame_cache): Set cache->addr_size.  Update calls to
	execute_stack_op and execute_cfa_program.
	(dwarf2_frame_prev_register): Update calls to execute_stack_op.
	(size_of_encoded_value): Remove.
	(read_encoded_value): Add PTR_LEN and FUNC_BASE parameters.
	Remove call to size_of_encoded_value.  Implement DW_EH_PE_funcrel.
	(add_cie): Set cie->unit backlink.
	(decode_frame_entry_1): Set cie->addr_size.  Update calls to
	read_encoded_value.
	(dwarf2_build_frame_info): Allocate UNIT on objfile obstack.

2008-03-17  Markus Deuling  <deuling@de.ibm.com>

	* i386-tdep.c (i386_print_insn): Remove unnecessary call to
	gdbarch_bfd_arch_info.

2008-03-17  Joel Brobecker  <brobecker@adacore.com>

	* aix-thread.c (pdc_read_regs): Minor reformatting.

2008-03-17  Vladimir Prus  <vladimir@codesourcery.com>

	* thread.c (print_thread_info): Don't insist
	on having current thread if there are no
	threads at all.

2008-03-17  Pedro Alves  <pedro@codesourcery.com>

	* infcmd.c (attach_command_post_wait)
	(attach_command_continuation): New.
	(attach_command): Support background async execution, and async
	execution in synchronous mode.

2008-03-17  Daniel Jacobowitz  <dan@codesourcery.com>

	* stack.c (print_stack_frame, print_frame): Use RETURN_MASK_ERROR.
	* symmisc.c (dump_symtab_1): Likewise.
	* wrapper.c (gdb_value_struct_elt): Likewise.

2008-03-17  Pedro Alves  <pedro@codesourcery.com>

	* linux-nat.c (linux_nat_filter_event): Fix comment typo.

2008-03-17  Pedro Alves  <pedro@codesourcery.com>

	* linux-nat.c (linux_nat_filter_event): New, refactored from
	linux_nat_wait.
	(linux_nat_wait): Call linux_nat_filter_event.

2008-03-17  Ulrich Weigand  <uweigand@de.ibm.com>

	* top.c (execute_command): Fix uninitialized variable error.

2008-03-16  Nick Hudson  <nick.hudson@dsl.pipex.com>

	* 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-15  Vladimir Prus  <vladimir@codesourcery.com>

	Remove ignoring leading exec events code.
	* fork-child.c (startup_inferior): Do not set
	inferior_ignoring_leading_exec_events.
	* inf-child.c (inf_child_reported_exec_events_per_exec_call): Remove.
	(inf_child_target): Do not set to_reported_exec_events_per_exec_call.
	* infrun.c (inferior_ignoring_leading_exec_events): Remove.
	(handle_inferior_event): Remove code for ignoring leading exec
	events.
	* target.c (update_current_target): Do not inherit, or default,
	to_reported_exec_events_per_exec_call.
	(debug_to_reported_exec_events_per_exec_call): Remove.
	(setup_target_debug): Do not set to_reported_exec_events_per_exec_call.
	* target.h (target_reported_exec_events_per_exec_call): Remove.
	(struct target): Remove the to_reported_exec_events_per_exec_call
	field.

2008-03-15  Vladimir Prus  <vladimir@codesourcery.com>

	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-14  Kevin Buettner  <kevinb@redhat.com>

	* mips-tdep.c (mips32_scan_prologue): Use the ABI register size
	to decide whether to match instruction patterns using "sw" and "sd".

2008-03-14  Pedro Alves  <pedro@codesourcery.com>

	* infcmd.c (jump_command): Postpone disabling stdin until after
	the possible query.

2008-03-14  Pedro Alves  <pedro@codesourcery.com>

	* inflow.c (gdb_getpgrp): New.
	(gdb_has_a_terminal): Use get_getpgrp.
	(terminal_ours_1): If attach_flag is set, don't refetch
	inferior_process_group.

2008-03-14  Pedro Alves  <pedro@codesourcery.com>

	* features/library-list.dtd: Allow "section" elements as children
	of "library".  Add "section" element and describe its attributes.

	* solib-target.c (struct lm_info): Add section_bases member.
	(library_list_start_segment): Error out if seen a section element.
	(library_list_start_section): New.
	(library_list_end_library): New.
	(solib_target_free_library_list): Free section_bases.
	(section_attributes): New.
	(library_children): Make "segment" optional.  Add "section" child.
	(library_list_children): Register library_list_end_library.
	(solib_target_relocate_section_addresses): Handle section bases.

	* NEWS: Mention new qXfer:libraries:read section offsets support.

2008-03-14  Vladimir Prus  <vladimir@codesourcery.com>

	* defs.h (do_exec_error_cleanups, discard_exec_error_cleanups)
	(make_exec_error_cleanup): Remove declarations.
	* utils.c (exec_error_cleanup_chain): Remove.
	(do_exec_error_cleanups, discard_exec_error_cleanups)
	(make_exec_error_cleanup): Remove.
	* event-loop.c (start_event_loop): Adjust call to
	async_enable_stdin.
	* event-top.c (async_enable_stdin): Remove the paramater dummy.
	(async_disable_stdin): Don't register async_enable_stdin via
	cleanup.
	* inf-loop.c (inferior_event_handler): Don't
	call do_exec_error_cleanups.  Call async_enable_stdin instead.
	* event-loop.c (start_event_loop): Adjust call to
	async_enable_stdin.
	* tui/tui-interp.c (tui_command_loop): Adjust call to
	async_enable_stdin.

2008-03-14  Vladimir Prus  <vladimir@codesourcery.com>

	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  Daniel Jacobowitz  <dan@codesourcery.com>

	* corefile.c (reopen_exec_file): Use exec_bfd_mtime.
	* exec.c (exec_bfd_mtime): Define.
	(exec_close): Clear it.
	(exec_file_attach): Set it.
	* gdbcore.h (exec_bfd_mtime): Declare.
	* source.c (find_source_lines): Do not use bfd_get_mtime.

2008-03-14  Vladimir Prus  <vladimir@codesourcery.com>

	* top.c (simplified_command_loop): Remove.

2008-03-14  Vladimir Prus  <vladimir@codesourcery.com>

	Remove unused remote.c hooks.
	* remote.c (deprecated_target_resume_hook)
	(deprecated_target_wait_loop_hook): Remove.
	(remote_resume): Do not call deprecated_target_resume_hook.
	(remote_wait): Do not call deprecated_target_wait_loop_hook.
	(remote_async_wait): Likewise.

2008-03-14  Vladimir Prus  <vladimir@codesourcery.com>

	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  Pedro Alves  <pedro@codesourcery.com>

	* top.c (execute_command): Disable break and stop
	commands in async mode.

2008-03-14  Pedro Alves  <pedro@codesourcery.com>

	revert:
	2008-03-14  Pedro Alves  <pedro@codesourcery.com>
	* inf-loop.c (inferior_event_handler): Don't include remote.h.
	Call target_stop in the INF_QUIT_REQ case.
	* Makefile.in (inf-loop.o): Update.

2008-03-14  Pedro Alves  <pedro@codesourcery.com>

	* inf-loop.c (inferior_event_handler): Don't include remote.h.
	Call target_stop in the INF_QUIT_REQ case.
	* Makefile.in (inf-loop.o): Update.

2008-03-14  Pedro Alves  <pedro@codesourcery.com>

	* top.c (execute_command): Enable break, info and interrupt
	commands in async mode.

2008-03-13  Vladimir Prus  <vladimir@codesourcery.com>
	    Daniel Jacobowitz  <dan@codesourcery.com>

	* 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_breakpoints_cleanup): New.
	(show_memory_breakpoints): New.
	* target.h (make_show_memory_breakpoints_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-12  Pedro Alves  <pedro@codesourcery.com>

	* thread.c (add_thread): Use printf_unfiltered to print.

2008-03-12  Joel Brobecker  <brobecker@gnat.com>

	* sol-thread.c: Replace use of TM_I386SOL2_H by an expression
	that is true only on x86-solaris and x86_64-solaris.
	* procfs.c: Likewise. Move procfs_find_LDT_entry up together
	with proc_get_LDT_entry.

2008-03-12  Thiago Jung Bauermann  <bauerman@br.ibm.com>

	* configure.ac (AC_CHECK_FUNCS): Add check for setsid.
	* config.in, configure: Regenerate.
	* fork-child.c (fork_inferior): Call create_tty_session.
	* inflow.c (new_tty): Set controlling terminal with TIOCSCTTY.
	(create_tty_session): New function.
	* terminal.h: Declare create_tty_session.

2008-03-12  Alan Modra  <amodra@bigpond.net.au>

	PR 5900
	* elfread.c (elf_symtab_read): Make shndx an unsigned int.
	* mipsread.c: Include elf/internal.h.
	(read_alphacoff_dynamic_symtab): Map external reserved sym_shndx
	to internal range.

2008-03-11  Markus Deuling  <deuling@de.ibm.com>

	* win32-nat.c (do_win32_fetch_inferior_registers): Use get_regcache_arch
	to get at the current architecture and at the target specific vector.
	Add target specific vector to I387_FISEG_REGNUM and I387_FOP_REGNUM and
	remove define of I387_ST0_REGNUM.

	* amd64-tdep.c (I387_ST0_REGNUM): Remove define.

	(amd64_supply_fxsave, amd64_collect_fxsave): Use get_regcache_arch to
	get at the current architecture
	(I387_FISEG_REGNUM, I387_FOSEG_REGNUM): Add target specific vector as
	parameter.

	* i386-tdep.c: Remove various define's and undef's of I387_ST0_REGNUM,
	I387_NUM_XMM_REGS and I387_MM0_REGNUM.

	(I387_NUM_XMM_REGS, I387_XMM0_REGNUM, I387_MXCSR_REGNUM,
	I387_ST0_REGNUM, I387_FCTRL_REGNUM, I387_MM0_REGNUM,
	(I387_FSTAT_REGNUM): Add target specific vector as parameter.

	(i386_register_name, i386_dbx_reg_to_regnum): Use gdbarch_tdep to get
	at the target specific vector.

	(i386_get_longjmp_target): Use get_frame_arch to get at the current
	architecture. Use gdbarch_tdep to get at the target specific vector.

	(i386_fp_regnum_p, i386_fpc_regnum_p): Add gdbarch as parameter and
	update caller. Use gdbarch_tdep to get at the target specific vector.

	(i386_register_to_value: Use get_frame_arch to get at the current
	architecture.

	* i386-tdep.h (i386_fp_regnum_p, i386_fpc_regnum_p): Add gdbarch as
	parameter.

	* i387-tdep.c (I387_FCTRL_REGNUM, I387_FSTAT_REGNUM, I387_FTAG_REGNUM,
	I387_FISEG_REGNUM, I387_FIOFF_REGNUM, I387_FOSEG_REGNUM
	I387_FOOFF_REGNUM, I387_FOP_REGNUM, I387_ST0_REGNUM, FSAVE_ADDR,
	FXSAVE_ADDR, I387_XMM0_REGNUM): Add target specific vector as parameter.

	(I387_ST0_REGNUM, I387_NUM_XMM_REGS): Remove various define's and
	undef's.

	(i387_convert_register_p, i387_register_to_value,
	i387_value_to_register): Update call for i386_fp_regnum_p.

	* i387-tdep.h: Remove comment.
	(I387_ST0_REGNUM, I387_NUM_XMM_REGS, I387_MM0_REGNUM): Add define.
	(I387_FCTRL_REGNUM, I387_FSTAT_REGNUM, I387_FTAG_REGNUM,
	I387_FISEG_REGNUM, I387_FIOFF_REGNUM, I387_FOSEG_REGNUM,
	I387_FOOFF_REGNUM, I387_FOP_REGNUM, I387_XMM0_REGNUM,
	I387_MXCSR_REGNUM): Add target specific vector as parameter.

2008-03-10  Daniel Jacobowitz  <dan@codesourcery.com>

	* 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.

2008-03-10  Hidetaka Takano  <hidetaka.takano@glb.toshiba.co.jp>

	* source.c (directory_command): Modify the determination of
	condition of terminal "from_tty".

2008-03-10  Matt Rice  <ratmice@gmail.com>

	* dwarf2read.c (set_cu_language): Add DW_LANG_ObjC.

2008-03-10  Hidetaka Takano  <hidetaka.takano@glb.toshiba.co.jp>

	* spu-tdep.c (info_spu_event_command): Insert a '\0' to the end
	of the data passing to strtoulst function.
	(info_spu_signal_command): Likewise.

2008-03-08  Vladimir Prus  <vladimir@codesourcery.com>

	* mi/mi-interp.c (mi_command_loop): Remove
	commented-out code.

2008-03-07  Joel Brobecker  <brobecker@adacore.com>

	* remote.c (extended_remote_attach_1): Make local variable pid an int
	instead of a pid_t.

2008-03-07  Joel Brobecker  <brobecker@adacore.com>

	* solib-svr4.c (svr4_same_1): New function, originally extracted
	from svr4_same and expanded to handle the sparc64 case.
	(svr4_same): Move up and reimplement using svr4_same_1.
	(enable_break): Use svr4_same_1 to do shared library name comparisons.

2008-03-07  Ramana Radhakrishnan  <ramana.r@gmail.com>

	* MAINTAINERS: Move self to Paper trail.

2008-03-05  Daniel Jacobowitz  <dan@codesourcery.com>

	* 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-04  Joel Brobecker  <brobecker@adacore.com>

	* features/rs6000/power-core.xml, features/rs6000/power64-core.xml,
	features/rs6000/powerpc-601.xml, features/rs6000/rs6000.xml:
	Change the type of the lr register to code_ptr.
	* features/rs6000/powerpc-32.c, features/rs6000/powerpc-403.c,
	features/rs6000/powerpc-403gc.c, features/rs6000/powerpc-505.c,
	features/rs6000/powerpc-601.c, features/rs6000/powerpc-602.c,
	features/rs6000/powerpc-603.c, features/rs6000/powerpc-604.c,
	features/rs6000/powerpc-64.c, features/rs6000/powerpc-7400.c,
	features/rs6000/powerpc-750.c, features/rs6000/powerpc-860.c,
	features/rs6000/powerpc-e500.c, features/rs6000/rs6000.c: Regenerate.

2008-03-03  James E. Wilson  <wilson@tuliptree.org>

	* MAINTAINERS: Update my email address.

2008-03-03  Keith Seitz  <keiths@redhat.com>

	From Dave Murphy  <davem@devkitpro.org>:
	* configure.ac: Set tcl configdir to win under mingw.
	* configure: Regenerate.

2008-03-03  Daniel Jacobowitz  <dan@codesourcery.com>

	* breakpoint.c (fetch_watchpoint_value): New function.
	(update_watchpoint): Set and clear val_valid.  Use
	fetch_watchpoint_value.  Handle unreadable values on the
	value chain.  Correct check for user-requested array watchpoints.
	(breakpoint_init_inferior): Clear val_valid.
	(watchpoint_value_print): New function.
	(print_it_typical): Use it.  Do not free or clear old_val.  Print
	watchpoints even if old_val == NULL.
	(watchpoint_check): Use fetch_watchpoint_value.  Check for values
	becoming readable or unreadable.
	(watch_command_1): Use fetch_watchpoint_value.  Set val_valid.
	(do_enable_watchpoint): Likewise.
	* breakpoint.h (struct breakpoint): Update comment for val.  Add
	val_valid.
	* NEWS: Mention watchpoints on inaccessible memory.

2008-02-29  Daniel Jacobowitz  <dan@codesourcery.com>

	* 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-02-29  Joel Brobecker  <brobecker@adacore.com>

	GDB 6.8 branch created (branch timestamp: 2008-02-26 10:00 UTC)
	* version.in: Bump version to 6.8.50.20080229-cvs.

2008-02-28  Markus Deuling  <deuling@de.ibm.com>

	* f-typeprint.c (f_print_type): Handle NULL pointer in VARSTRING
	properly.

2008-02-28  Tom Tromey  <tromey@redhat.com>

	* infcmd.c (notice_args_read): Print result of get_inferior_args.

2008-02-28  Daniel Jacobowitz  <dan@codesourcery.com>

	* infcmd.c (kill_if_already_running): Make static.  Use
	target_require_runnable.
	* target.c (target_require_runnable): New.
	* target.h (target_require_runnable): Declare.

2008-02-28  Daniel Jacobowitz  <dan@codesourcery.com>

	* frame.c (reinit_frame_cache): Only annotate if frames were
	previously valid.

2008-02-28  Ulrich Weigand  <uweigand@de.ibm.com>

	* regformats/reg-ppc.dat: Rename "ps" to "msr".
	* regformats/reg-ppc64.dat: Likewise.

2008-02-28  Ulrich Weigand  <uweigand@de.ibm.com>

	* features/Makefile (%.dat): Emit xmltarget statement.

	* regformats/regdat.sh: Support xmltarget and xmlarch statments.
	Generate code to set gdbserver_xmltarget in init_registers_${name}.

	* regformats/arm-with-iwmmxt.dat: Regenerate.
	* regformats/mips64-linux.dat: Regenerate.
	* regformats/mips-linux.dat: Regenerate.
	* regformats/rs6000/powerpc-32.dat: Regenerate.
	* regformats/rs6000/powerpc-64.dat: Regenerate.
	* regformats/rs6000/powerpc-e500.dat: Regenerate.

	* regformats/reg-arm.dat: Add xmlarch statement.
	* regformats/reg-i386.dat: Likewise.
	* regformats/reg-i386-linux.dat: Likewise.
	* regformats/reg-x86-64-linux.dat: Likewise.
	* regformats/reg-spu.dat: Likewise.

2008-02-27  Daniel Jacobowitz  <dan@codesourcery.com>

	* remote.c (remote_wait, remote_async_wait): Stop if we receive
	an error.

2008-02-27  Daniel Jacobowitz  <dan@codesourcery.com>

	* utils.c (debug_timestamp): New.
	(vfprintf_unfiltered): Print timestamps if requested.
	(show_debug_timestamp): New.
	(initialize_utils): Register "set debug timestamp".
	* NEWS: Mention "set debug timestamp".  Add GDB 6.8 section.

2008-02-27  Joel Brobecker  <brobecker@adacore.com>

	* breakpoint.c (skip_prologue_sal): New function.
	(resolve_sal_pc): Adjust SAL past prologue if the SAL was
	computed from a line number.

2008-02-27  Joel Brobecker  <brobecker@adacore.com>

	* features/rs6000/power-core.xml, features/rs6000/power64-core.xml
	features/rs6000/powerpc-601.xml, features/rs6000/rs6000.xml:
	Set PC register type to "code_ptr".
	* features/rs6000/powerpc-32.c, features/rs6000/powerpc-403.c,
	features/rs6000/powerpc-403gc.c, features/rs6000/powerpc-505.c,
	features/rs6000/powerpc-601.c, features/rs6000/powerpc-602.c,
	features/rs6000/powerpc-603.c, features/rs6000/powerpc-604.c,
	features/rs6000/powerpc-64.c, features/rs6000/powerpc-7400.c,
	features/rs6000/powerpc-750.c, features/rs6000/powerpc-860.c,
	features/rs6000/powerpc-e500.c, features/rs6000/rs6000.c:
	Regenerate.

2008-02-27  Ulrich Weigand  <uweigand@de.ibm.com>

	* regformats/regdat.sh: Rename init_registers function in
	generated file to init_registers_${name}.

	* regformats/reg-crisv32.dat: Set "name" to crisv32.
	* regformats/reg-ppc64.dat: Set "name" to ppc64.
	* regformats/reg-s390x.dat: Set "name" to s390x.

2008-02-26  Greg Law  <glaw@undo-software.com>

	* regcache.c (registers_changed): Call reinit_frame_cache.

2008-02-26  Daniel Jacobowitz  <dan@codesourcery.com>

	* 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-26  Thiago Jung Bauermann  <bauerman@br.ibm.com>

	* amd64-tdep.c (amd64_classify): Add support for decimal float
	types.
	* i386-tdep.c (i386_return_value): Make 128-bit decimal float
	use the struct return convention.

2008-02-26  Nick Roberts  <nickrob@snap.net.nz>

	* breakpoint.c (print_one_breakpoint_location): Revert Enb field
	to old format.  Discard breakpoint address if shared library is
	unloaded.
	(breakpoint_1): Adjust formatting of table header accordingly.

2008-02-25  Vladimir Prus  <vladimir@codesourcery.com>

       * remote.c (remote_get_threadlist): If the response
       is empty, don't try to parse it.

2008-02-23  Vladimir Prus  <vladimir@codesourcery.com>

	Unbreak 'target async'.
	* serial.c (serial_async): Set the
	handler function before enabling async
	mode.

2008-02-22  Daniel Jacobowitz  <dan@codesourcery.com>

	* solib-svr4.c (enable_break): Convert r_brk to a code address.

2008-02-21  Pedro Alves  <pedro@codesourcery.com>

	* remote.c (extended_remote_attach_1): Set attach_flag.
	(extended_remote_create_inferior_1): Clear attach_flag.

2008-02-20  Daniel Jacobowitz  <dan@codesourcery.com>

	* mipsnbsd-tdep.c (mipsnbsd_ilp32_fetch_link_map_offsets): Set
	r_brk_offset.
	(mipsnbsd_lp64_fetch_link_map_offsets): Likewise.
	* solib-svr4.c (solib_svr4_r_brk): New.
	(open_symbol_file_object, svr4_current_sos): Always check the
	debug base.
	(svr4_fetch_objfile_link_map): Do not set debug_base.
	(enable_break): Use r_brk if it is set.
	(svr4_ilp32_fetch_link_map_offsets): Set r_brk_offset.
	(svr4_lp64_fetch_link_map_offsets): Likewise.
	* solib-svr4.h (struct link_map_offsets): Add r_brk_offset.

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  Markus Deuling  <deuling@de.ibm.com>

	* rs6000-tdep.c (gdb_print_insn_powerpc): Get the current endianess
	from disassemble_info instead of gdbarch_byte_order.

	* mips-tdep.c (gdb_print_insn_mips): Likewise.
	* arm-tdep.c (gdb_print_insn_arm): Likewise.

2008-02-20  Markus Deuling  <deuling@de.ibm.com>

	* gdbarch.sh (memory_insert_breakpoint, memory_remove_breakpoint): Add
	gdbarch as parameter.

	* gdbarch.{c,h}: Regenerate.

	* ppc-tdep.h (ppc_linux_memory_remove_breakpoint): Add gdbarch as
	parameter.
	* mem-break.c (default_memory_insert_breakpoint)
	(default_memory_remove_breakpoint): Likewise.
	* target.h (default_memory_remove_breakpoint)
	(default_memory_insert_breakpoint): Likewise.

	* ppc-linux-tdep.c (ppc_linux_memory_remove_breakpoint): Add gdbarch as
	parameter. Replace current_gdbarch by gdbarch.
	* m32r-tdep.c (m32r_memory_insert_breakpoint)
	(m32r_memory_remove_breakpoint): Likewise.

2008-02-19  Daniel Jacobowitz  <dan@codesourcery.com>

	* MAINTAINERS: Add Vladimir Prus as MI maintainer.

2008-02-19  Joel Brobecker  <brobecker@adacore.com>

	* NEWS: Add entry describing Add support improvements.

2008-02-18  Markus Deuling  <deuling@de.ibm.com>

	* m68klinux-nat.c (getfpregs_supplies): Replace gdbarch_fp0_regnum by
	M68K_FP0_REGNUM.

2008-02-18  Markus Deuling  <deuling@de.ibm.com>

	* sentinel-frame.c (sentinel_frame_prev_register): Do not call
	register_offset_hack anymore.

	* regcache.{c,h} (register_offset_hack): Remove.

2008-02-18  Markus Deuling  <deuling@de.ibm.com>

	* hppa-tdep.h (find_global_pointer): Add gdbarch as parameter.

	* hppa-hpux-tdep.c (hppa32_hpux_find_global_pointer): Likewise. Replace
	current_gdbarch by gdbarch.
	(hppa64_hpux_find_global_pointer): Likewise.
	* hppa-tdep.c (hppa_find_global_pointer): Likewise.
	(hppa32_push_dummy_call, hppa64_push_dummy_call): Update call for
	find_global_pointer.

	* hppabsd-tdep.c (hppabsd_find_global_pointer): Add gdbarch as
	parameter.
	* hppa-linux-tdep.c (hppa_linux_find_global_pointer): Likewise.

	* hppa-linux-nat.c (hppa_linux_register_addr): Use ARRAY_SIZE instead
	of gdbarch_num_regs.

	* hppa-hpux-tdep.c (hppa_hpux_sr_for_addr): Add gdbarch as parameter and
	replace current_gdbarch by gdbarch.
	(hppa_hpux_push_dummy_code): Update call for hppa_hpux_sr_for_addr.

2008-02-18  Markus Deuling  <deuling@de.ibm.com>

	* rs6000-nat.c (exec_one_dummy_insn, regmap): Add gdbarch as parameter
	and replace current_gdbarch by gdbarch.

	(store_register): Update call for exec_one_dummy_insn.
	(fetch_register, store_register): Update call of regmap.

	* ppcnbsd-nat.c (getregs_supplies, getfpregs_supplies): Add gdbarch as
	parameter and replace current_gdbarch by gdbarch.

	(ppcnbsd_store_inferior_registers): Use get_regcache_arch to get at
	the current architecture. Update call for getregs_supplies and
	getfpregs_supplies.
	(ppcnbsd_fetch_inferior_registers): Likewise.

	* ppcobsd-nat.c (getfpregs_supplies): Add gdbarch as parameter and
	replace current_gdbarch by gdbarch.
	(ppcobsd_fetch_registers, ppcobsd_store_registers): Use
	get_regcache_arch to get at the current architecture. Update call for
	getfpregs_supplies.

2008-02-18  Markus Deuling  <deuling@de.ibm.com>

	* arch-utils.c (gdbarch_from_bfd): Remove unnecessary {old,new}_gdbarch
	variables.

2008-02-15  Markus Deuling  <deuling@de.ibm.com>

	* mips-linux-tdep.c (mips_linux_init_abi): Remove internal error.

2008-02-14  Vladimir Prus  <vladimir@codesourcery.com>

	* NEWS: Mention pending breakpints in MI.

2008-02-14  Markus Deuling  <deuling@de.ibm.com>

	* Makefile.in (ALL_TARGET_OBS): Remove dependency to xtensa-linux-nat.o.

2008-02-13  Markus Deuling  <deuling@de.ibm.com>

	Add script to build and test GDB using enable-targets=all.

	* gdb_buildall.sh: New file.

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-09  Aleksandar Ristovski  <aristovski@qnx.com>  (tiny change)

	* corelow.c (core_open): Use IS_ABSOLUTE_PATH.
	(filenames.h): New include.
	* Makefile.in (corelow.o): Add dependency for filenames.h.

2008-02-08  Doug Evans  <dje@google.com>

	* source.c (find_and_open_source): Always rewrite absolute filenames.

2008-02-07  Doug Evans  <dje@google.com>

	* 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.

2008-02-07  Joel Brobecker  <brobecker@adacore.com>

	* ada-lang.c (symbol_completion_add): Make SV parameter a VEC**
	instead of just a VEC*. Update use of SV.
	(ada_make_symbol_completion_list): Update symbol_completion_add calls.

2007-02-07  Joel Brobecker  <brobecker@adacore.com>

	* NEWS: Put all new commands since gdb-6.7 together.

2007-02-07  Joel Brobecker  <brobecker@adacore.com>

	* 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-06  Pierre Muller  <muller@ics.u-strasbg.fr>

	* p-exp.y: Set current_type in missing places.
	(leftdiv_is_integer): New static variable.
	Typecast right operand of BINOP_DIV to long_double if both operands
	are integers.

2008-02-06  Maciej W. Rozycki  <macro@mips.com>

	* remote-mips.c (set_breakpoint): Rename to...
	(mips_set_breakpoint): ... this.
	(clear_breakpoint): Rename to...
	(mips_clear_breakpoint): ... this.
	(common_breakpoint): Rename to...
	(mips_common_breakpoint): ... this.
	(check_lsi_error): Rename to...
	(mips_check_lsi_error): ... this.

2007-02-05  Joel Brobecker  <brobecker@adacore.com>

	* language.h (struct language_defn): Add new field
	la_make_symbol_completion_list.
	* symtab.c (default_make_symbol_completion_list): Renames
	make_symbol_completion_list.
	(make_symbol_completion_list): New function.
	* symtab.h (default_make_symbol_completion_list): Add declaration.
	* langauge.c (unknown_language): Set la_make_symbol_completion_list.
	(auto_language, local_language): Likewise.
	* objc-lang.c (objc_language_defn): Likewise.
	* scm-lang.c (scm_language_defn): Likewise.
	* m2-lang.c (m2_language_defn): Likewise.
	* f-lang.c (f_language_defn): Likewise.
	* jv-lang.c (java_language_defn): Likewise.
	* p-lang.c (pascal_language_defn): Likewise.
	* c-lang.c (c_language_defn, cplus_language_defn, asm_language_defn)
	(minimal_language_defn): Likewise.
	* ada-lang.c (struct string_vector): New structure.
	(new_string_vector, string_vector_append, ada_unqualified_name)
	(add_angle_brackets, symbol_completion_match, symbol_completion_add)
	(ada_make_symbol_completion_list): New functions.
	(ada_language_defn): Set la_make_symbol_completion_list.
	* ada-lang.h (ada_make_symbol_completion_list): Remove declaration,
	this function is static.

2008-02-05  Kevin Buettner  <kevinb@redhat.com>

	* mn10300-tdep.c (mn10300_push_dummy_call): Adjust stack pointer
	to account for call site optimizations.

2008-02-05  Andrzej Zaborowski  <balrogg@gmail.com>

	* tracepoint.c (read_actions): Handle end-of-text indicator
	in action list properly.  (Committed by Jim Blandy)

2008-02-05  Jim Blandy  <jimb@red-bean.com>

	* ax-gdb.c (gen_expr): Yield ordinary error if asked to trace a
	pseudoregister, not an internal error.
	Reported by: Andrzej Zaborowski

2008-02-04  Vladimir Prus  <vladimir@codesourcery.com>

	* varobj.c (c_value_of_variable): Use xstrdup.

2008-02-04  Vladimir Prus  <vladimir@codesourcery.com>

	Update stored rendition of varobj value when format changes.
	* varobj.c (varobj_set_display_format): Recomputed
	print_value.
	(c_value_of_variable): Return print_value.

2008-02-03  Doug Evans  <dje@google.com>

	* eval.c (evaluate_subexp_standard): Fix type of result of mixed
	integer/float division operations when EVAL_AVOID_SIDE_EFFECTS.
	* valops.c (value_one): New function.
	* value.h (value_one): Declare.

	Fix argument promotion for binary arithmetic ops for C.
	* valarith.c (unop_result_type): New fn.
	(binop_result_type): New fn.
	(value_binop): Move result type computation to binop_result_type.
	(value_pos, value_neg, value_complement): Move result type
	computation to unop_result_type.

	PR 2384
	* gdbtypes.c (get_vptr_fieldno): Renamed from fill_in_vptr_fieldno.
	Return basetype, fieldno if found.  All callers updated.
	Don't cache TYPE_VPTR_FIELDNO, TYPE_VPTR_BASETYPE if from different
	objfile.
	* gdbtypes.h (get_vptr_fieldno): Renamed from fill_in_vptr_fieldno.
	* symfile.h (fill_in_vptr_fieldno): Delete.

2008-02-02  Doug Evans  <dje@google.com>

	* valarith.c (value_binop): Handle unsigned BINOP_REM division by zero.

	* typeprint.c (*): Whitespace cleanup.

2008-02-02  Mark Kettenis  <kettenis@gnu.org>
	    Luis Machado  <luisgpm@br.ibm.com>
	    Thiago Jung Bauermann  <bauerman@br.ibm.com>

	* ppc-sysv-tdep.c (ppc_sysv_abi_push_dummy_call): Pass floats that
	don't fit into registerson the stack the way GCC does.

2008-02-01  Joel Brobecker  <brobecker@adacore.com>

	* symtab.c (symbol_set_names): Do not add an entry in the demangling
	hash table for Ada symbols. Just store the linkage name as is,
	and leave the demangled_name as NULL.

2007-02-01  Joel Brobecker  <brobecker@adacore.com>

	* dwarf2read.c (add_partial_symbol): Always store all Ada subprograms
	in the global scope.
	(new_symbol): Likewise.

2008-02-01  Vladimir Prus  <vladimir@codesourcery.com>

	* breakpoint.c (break_command_1): Return void.
	(break_command_really): Return void.  Rethrow
	exceptions instead of returning.
	(gdb_breakpoint): Remove the error_message parameter.
	Return void.  Rename to set_breakpoint.
	* gdb.h (gdb_breakpoint): Rename and move to...
	* breakpoint.h (set_breakpoint): ...here.
	* mi/mi-cmb-break.c (mi_cmd_break_insert): Restore
	event hooks even if exception is thrown.  Adjust to
	gdb_breakpoint interface changes.


2008-02-01  Thiago Jung Bauermann  <bauerman@br.ibm.com>

	* ppc-sysv-tdep.c (ppc64_sysv_abi_push_dummy_call): Write 32-bit
	float in both first and second word in the doubleword, to support
	old and new ABIs.

2008-02-01  Vladimir Prus  <vladimir@codesourcery.com>

	Properly rethrow exception.  This fixes errors
	about non-existent functions for -break-insert.
	* breakpoint.c (break_command_really): Use throw_exception
	for rethrowing.  If rethrowing, don't print the exception.

2008-01-31  Thiago Jung Bauermann  <bauerman@br.ibm.com>

	* NEWS: Mention Decimal Floating Point support.

2008-01-31  Joel Brobecker  <brobecker@adacore.com>

	* std-regs.c (value_of_builtin_frame_pc_reg): Change the returned
	value type to builtin_type_void_func_ptr.

2008-01-31  Andreas Krebbel  <krebbel1@de.ibm.com>

	* s390-tdep.c (is_float_singleton, is_float_like,
	alignment_of, s390_return_value): Make checks for
	TYPE_CODE_FLT to match TYPE_CODE_DECFLOAT as well.

2008-01-31  Luis Machado  <luisgpm@br.ibm.com>
	    Thiago Jung Bauermann  <bauerman@br.ibm.com>

	* infcmd.c (default_print_registers_info): Also print hex
	raw contents for TYPE_CODE_DECFLOAT registers.
	* ppc-tdep.h (gdbarch_tdep): Add ppc_dl0_regnum member.
	* rs6000-tdep.c (IS_DFP_PSEUDOREG): New macro.
	(rs6000_register_name): Add support for DFP pseudo-registers.
	(rs6000_pseudo_register_type): Likewise.
	rs6000_pseudo_register_reggroup_p): Likewise.
	(ppc_pseudo_register_read): New function.
	(ppc_pseudo_register_write): Likewise.
	(rs6000_pseudo_register_read): Likewise.
	(rs6000_pseudo_register_write): Likewise.
	(e500_pseudo_register_read): Move checks to
	rs6000_pseudo_register_read.
	(e500_pseudo_register_write): Move checks to
	rs6000_pseudo_register_write.
	(rs6000_gdbarch_init): Initialize tdep->ppc_dl0_regnum.  Install
	rs6000_pseudo_register_read and rs6000_pseudo_register_write
	in gdbarch if SPE or DFP is available.  Adjust gdbarch's
	num_pseudo_regs to account for DFP pseudo regs.

2008-01-31  Thiago Jung Bauermann  <bauerman@br.ibm.com>

	* ppc-tdep.h (struct gdbarch_tdep): Remove ppc_ev31_regnum member.
	* rs6000-tdep.c (IS_SPE_PSEUDOREG): New macro.
	(spe_register_p, rs6000_register_name, rs6000_pseudo_register_type,
	rs6000_pseudo_register_reggroup_p, e500_move_ev_register,
	e500_pseudo_register_read, e500_pseudo_register_write): Use
	IS_SPE_PSEUDOREG macro.
	(rs6000_frame_cache): Remove use of tdep->ppc_ev31_regnum.
	(rs6000_gdbarch_init): Remove unnecessary num_sprs local variable.
	Remove initialization of tdep->ppc_ev31_regnum.

2008-01-08  Paul Hilfinger  <hilfinger@adacore.com>

	* printcmd.c (print_formatted): Handle references as for unformatted
	prints.

2008-01-30  Joel Brobecker  <brobecker@adacore.com>

	* eval.c (evaluate_subexp_standard): Add handling of user
	registers when in EVAL_AVOID_SIDE_EFFECTS mode.

2008-01-30  Pierre Muller  <muller@ics.u-strasbg.fr>

	* eval.c (evaluate_subexp_standard): Support
	BINOP_INTDIV opcode.

2008-01-30  Paul N. Hilfinger  <hilfinger@adacore.com>

	* valarith.c (value_binop): Add floating-point BINOP_MIN and
	BINOP_MAX cases.
	For BINOP_EXP, use length and signedness of left operand only for
	result, as for shifts.
	For integral operands to BINOP_EXP, use new integer_pow and
	uinteger_pow functions so as to get full range of results.
	(integer_pow): New function.
	(uinteger_pow): New function.

2008-01-30  Vladimir Prus  <vladimir@codesourcery.com>

	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  Thiago Jung Bauermann  <bauerman@br.ibm.com>

	* ppc-sysv-tdep.c (ppc_sysv_abi_push_dummy_call): Add support for
	TYPE_CODE_DECFLOAT arguments.
	(ppc64_sysv_abi_push_dummy_call) Likewise.
	(get_decimal_float_return_value): New function.
	(do_ppc_sysv_return_value): Add support for TYPE_CODE_DECFLOAT return
	values by calling get_decimal_float_return_value.
	(ppc64_sysv_abi_return_value): Likewise.

2008-01-30  Nick Roberts  <nickrob@snap.net.nz>

	* mi/mi-cmd-file.c (mi_cmd_file_list_exec_source_file):  Add field
	for preprocessor macro information.  Formatting changes.

2008-01-29  Daniel Jacobowitz  <dan@codesourcery.com>

	* remote.c (struct remote_state): Add cached_wait_status.
	(remote_exec_file): New variable.
	(PACKET_vAttach, PACKET_vRun): New constants.
	(extended_remote_restart): Do not query for status.
	(struct start_remote_args): New.
	(remote_start_remote): Take it as a second argument.  Check
	whether the target is running.  Issue an error for non-running
	non-extended targets.  Cache the wait status.  Set inferior_ptid
	here.
	(remote_open_1): Prompt to disconnect non-running targets.  Make
	sure the target is marked running.  Do not set inferior_ptid here.
	Update call to remote_start_remote.  Do not call remote_check_symbols
	if the target is not running.
	(remote_detach_1): Rename from remote_detach.  Take an EXTENDED
	argument.  Handle a non-running target.
	(remote_detach): Use it.
	(extended_remote_detach): New.
	(remote_disconnect): Fix typo.  Use remoute_mourn_1.
	(extended_remote_attach_1, extended_remote_attach)
	(extended_async_remote_attach): New.
	(remote_vcont_resume): Remove unused variable.
	(remote_wait, remote_async_wait): Use any cached wait status.
	(putpkt_binary, getpkt): Clear any cached wait status.
	(extended_remoute_mourn_1): New.
	(extended_remote_mourn): Use it.
	(extended_async_remote_mourn, extended_remote_run): New.
	(extended_remote_create_inferior_1): New.
	(extended_remote_create_inferior): Use it.
	(extended_remote_async_create_inferior): Likewise.
	(remote_xfer_partial): Skip for non-executing targets.
	(init_extended_remote_ops): Set to_detach and to_attach.
	(init_extended_async_remote_ops): Likewise.  Use
	extended_async_remote_mourn.
	(_initialize_remote): Register vAttach, vRun, and
	set remote exec-file.
	* NEWS: Mention vAttach, vRun, and gdbserver extended-remote support.

2008-01-29  Daniel Jacobowitz  <dan@codesourcery.com>

	* 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.

2008-01-29  Joel Brobecker  <brobecker@adacore.com>

	* amd64-tdep.c (amd64_classify): Add handling of TYPE_CODE_CHAR.

2008-01-29  Joel Brobecker  <brobecker@adacore.com>

	* 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  Joel Brobecker  <brobecker@adacore.com>

	* infrun.c (wait_for_inferior): Add treat_exec_as_sigtrap parameter
	and use it.
	(proceed, start_remote): Update call to wait_for_inferior.
	* inferior.h (wait_for_inferior): Update declaration.
	* fork-child.c, infcmd.c, solib-irix.c, solib-osf.c, solib-sunos.c,
	solib-svr4.c, win32-nat.c: Update calls to wait_for_inferior.
	* inf-ttrace.c (inf_ttrace_wait): Report TTEVT_EXEC events as
	TARGET_WAITKIND_EXECD instead of TARGET_WAITKIND_STOPPED.

2008-01-29  Aleksandar Ristovski  <aristovski@qnx.com>

	* varobj (adjust_value_for_child_access): Added checking for
	returned value from gdb_value_ind.
	(c_describe_child): Likewise.
	(cplus_describe_child): Fixed a typo.

2008-01-29  Jim Blandy  <jimb@red-bean.com>

	* MAINTAINERS: Update my info.

2008-01-29  Vladimir Prus  <vladimir@codesourcery.com>

	Use multiple locations for hardware watchpoints.
	This eliminates the need to traverse value chain, doing
	various checks, in three different places.

	* breakpoint.h (struct bp_location): New fields
	lengths and watchpoint_type.
	(struct breakpoint): Remove the val_chain field.
	* breakpoint.c (is_hardware_watchpoint): New.
	(free_valchain): Remove.
	(update_watchpoint): New.
	(insert_bp_location): For hardware watchpoint, just
	directly insert it.
	(insert_breakpoints): Call update_watchpoint_locations
	on all watchpoints.  If we have failed to insert
	any location of a hardware watchpoint, remove all inserted
	locations.
	(remove_breakpoint): For hardware watchpoints, directly
	remove location.
	(watchpoints_triggered): Iterate over locations.
	(bpstat_stop_status): Use only first location of
	a resource watchpoint.
	(delete_breakpoint): Don't call free_valchain.
	(print_one_breakpoint): Don't print all
	locations for watchpoints.
	(breakpoint_re_set_one): Use update_watchpoint for
	watchpoints.

2008-01-29  Vladimir Prus  <vladimir@codesourcery.com>

	Don't reset watchpoint block on solib load.

	* breakpoint.c (insert_bp_location): For watchpoints,
	recompute condition.
	(breakpoint_re_set_one): Instead of recomputing value
	and condition for watchpoints, just reset value and
	let insert_breakpoints/insert_bp_location recompute it.
	Don't do anything about disabled watchpoint.

2008-01-29  Pierre Muller  <muller@ics.u-strasbg.fr>

	* valarith.c (value_binop): Handle unsigned integer
	division by zero.

2008-01-28  Kevin Buettner  <kevinb@redhat.com>

	* mn10300-tdep.c (mn10300_analyze_prologue): Check for an
	instruction pattern that appears frequently in position
	independent code.  Fix bug in code which looks for "fmov" and
	backtracks if no "fmov" is found.

2008-01-28  Doug Evans  <dje@google.com>

	* dbxread.c (read_dbx_symtab): Fix indentation.
	Reformat comments to 80 columns.
	Move local var def closer to only use.

2008-01-28  Daniel Jacobowitz  <dan@codesourcery.com>

	* fork-child.c (SHELL_FILE): Remove #ifndef.
	(fork_inferior): Remove SHELL_COMMAND_CONCAT.

2008-01-25  Pierre Muller  <muller@ics.u-strasbg.fr>

	* i386-tdep.c (i386_skip_noop): New function.
	(i386_analyze_prologue): Call i386_skip_noop function.

2008-01-24  Michael Snyder  <msnyder@specifix.com>

	* procfs.c (procfs_xfer_partial): Comment, cut/paste error.
	* win32-nat.c (win32_xfer_partial): Ditto.
	* target.c (default_xfer_partial): Minor whitespace adjustment.

2008-01-24  Pedro Alves  <pedro@codesourcery.com>

	* arm-tdep.c (arm_addr_bits_remove): In non 26-bit mode, don't
	strip bit 1 even if pc doesn't point to thumb code.

2008-01-23  Daniel Jacobowitz  <dan@codesourcery.com>

	* remote.c (remote_wait): Handle SIGINT between packets.
	(remote_async_wait): Likewise.

2008-01-23  Vladimir Prus  <vladimir@codesourcery.com>
	    Chris Demetriou  <cgd@google.com>

	* thread.c (add_thread_silent): Renamed
	from add_thread.
	(print_thread_events): New variable definition.
	(show_print_thread_events): New function.
	(_initialize_thread): Add "set print thread-events" and
	"show print thread-events" commands.
	(add_thread): Announce new thread.
	* gdbthread.h (add_thread_silent): Declare.
	(print_thread_events): New variable declaration.
	* inf-ttrace.c (inf_ttrace_wait): Don't
	inform about new thread, as add_thread is always
	called too, and will take care of that.
	* infrun.c (handle_inferior_event): Likewise.
	* procfs.c (procfs_wait): Likewise.
	* remote.c (remote_currthread): Likewise.
	* sol-thread.c (sol_thread_wait): Likewise.
	* win32-nat.c (get_win32_debug_event): Likewise.
	* linux-thread-db.c (attach_thread): Likewise.
	Remove the verbose parameter.
	(check_event): Make detach_thread be verbose
	only if print_thread_events is set.
	* linux-nat.c (lin_lwp_attach_lwp): Don't inform
	about new thread.  This is called only from
	linux-thread-db.c:attach_thread, which will take care.
	Remove the verbose parameter.
	* linux-nat.h (lin_lwp_attach_lwp): Adjust prototype.

2008-01-23  Nick Roberts  <nickrob@snap.net.nz>

	* mi/mi-cmd-var.c (mi_cmd_var_set_format): Add value field to output.

2008-01-22  Vladimir Prus  <vladimir@codesourcery.com>

	* breakpoint.c (break_command_really): New parameter
	ignore_count.
	(break_command_1): Pass 0 as
	ignore_count to break_command_really.
	(gdb_breakpoint): Pass ignore_count to
	break_command_really.

2008-01-21  Kevin Buettner  <kevinb@redhat.com>

	* mn10300-linux-tdep.c (am33_linux_sigframe_cache_init): Find
	sigcontext struct via pointer.
	(struct sigframe comment): Update to show new field `psc'.

2008-01-21  Vladimir Prus  <vladimir@codesourcery.com>

	* infrun.c (handle_inferior_event): If
	we failed to remove breakpoints, error,
	don't try to increment PC by hand.

2008-01-18  Nick Hudson  <nick.hudson@dsl.pipex.com>

	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-18  Markus Deuling  <deuling@de.ibm.com>

	* gdbarch.sh (function_list): Add new property bits_big_endian to
	gdbarch structure.
	* gdbarch.{c,h}: Regenerate.

	* value.c (struct value): Replace BITS_BIG_ENDIAN by
	gdbarch_bits_big_endian (comment).
	(unpack_field_as_long, modify_field): Likewise.
	* value.h: Likewise (comment).
	* valops.c (value_slice): Likewise.
	* valarith.c (value_subscript, value_bit_index): Likewise.
	* gdbtypes.h (field): Likewise (comment).
	* eval.c (evaluate_subexp_standard): Likewise.
	* dwarf2read.c (dwarf2_add_field): Likewise.
	* ada-lang.c (decode_packed_array, ada_value_primitive_packed_val)
	(move_bits, ada_value_assign, value_assign_to_component): Likewise.

	* defs.h (BITS_BIG_ENDIAN): Remove.

2008-01-18  Markus Deuling  <deuling@de.ibm.com>

	* jv-exp.y (yylex): Replace DEPRECATED_STREQN with the appropriate
	function calls.
	* m2-exp.y (yylex): Likewise.
	* objc-exp.y (yylex): Likewise.

	* defs.h (DEPRECATED_STREQN): Remove.

2008-01-17  H.J. Lu  <hjl.tools@gmail.com>

	* MAINTAINERS: Update my email address.

2008-01-17  Jim Blandy  <jimb@codesourcery.com>

	* README: Mention gdbserver/README.

2008-01-17  Pierre Muller  <muller@ics.u-strasbg.fr>

	* valarith.c (value_binop): Handle BINOP_INTDIV
	for unsigned and signed integers.

2008-01-17  Ulrich Weigand  <uweigand@de.ibm.com>

	* s390-tdep.c (s390_gdbarch_init): Set default long double
	type to 128-bit IEEE quad.

2008-01-17  Joel Brobecker  <brobecker@adacore.com>

	* hpux-thread.c (hpux_thread_resume): Delete commented-out code.

2008-01-16  Mark Kettenis  <kettenis@gnu.org>

	* auxv.c (fprint_target_auxv): Add support for AT_SUN_AUXFLAGS.

	* dfp.c, dfp.h: Rename decimal_to_double to decimal_to_doublest.
	* value.c: All callers changed.

2008-01-16  Markus Deuling  <deuling@de.ibm.com>

	* rs6000-nat.c (add_vmap, vmap_ldinfo, vmap_exec): Replace
	DEPRECATED_STREQ by its expression.
	* coffread.c (coff_locate_sections, coff_symtab_read): Likewise.
	* xcoffread.c (read_xcoff_symtab, read_symbol_lineno, find_linenos)
	(scan_xcoff_symtab): Likewise.
	* hppa-hpux-tdep.c (hppa_hpux_skip_trampoline_code): Likewise.
	* f-lang.c (find_common_for_function): Likewise.
	* objc-exp.y (parse_number): Likewise.

	* defs.h (DEPRECATED_STREQ): Remove.

2008-01-16  Markus Deuling  <deuling@de.ibm.com>

	* mn10300-tdep.h (AM33_MODE): Add gdbarch as parameter.
	* mn10300-tdep.c (set_reg_offsets, mn10300_analyze_prologue): Use
	get_frame_arch to get at the current_architecture. Update AM33_MODE
	call.
	(mn10300_analyze_prologue): Add gdbarch as parameter. Update caller.
	(mn10300_frame_unwind_cache): Use get_frame_arch to get at the current
	architecture.
	(set_reg_offsets, mn10300_analyze_prologue): Fix indentation.

2008-01-16  Markus Deuling  <deuling@de.ibm.com>

	* amd64-nat.h (amd64_native_gregset_supplies_p): Add gdbarch as
	parameter.
	* amd64-nat.c (amd64_native_gregset_supplies_p): Likewise.

	(amd64_native_gregset_reg_offset): Add gdbarch as parameter. Replace
	current_gdbarch by gdbarch. Update caller.

	* amd64-linux-nat.c (amd64_linux_fetch_inferior_registers)
	(amd64_linux_store_inferior_registers): Use get_regcache_arch to get at
	the current architecture. Update calls of
	amd64_native_gregset_supplies_p.
	* amd64bsd-nat.c (amd64bsd_fetch_inferior_registers)
	(amd64bsd_store_inferior_registers): Likewise.

2008-01-16  Markus Deuling  <deuling@de.ibm.com>

	* ppc-linux-nat.c (ppc_register_u_addr): Add gdbarch as parameter.
	Replace current_gdbarch by gdbarch. Update caller.

2008-01-16  Markus Deuling  <deuling@de.ibm.com>

	* dbxread.c (repeated_header_complaint, dbx_symfile_init)
	(read_dbx_dynamic_symtab, function_outside_compilation_unit_complaint)
	(read_dbx_symtab, end_psymtab, dbx_psymtab_to_symtab_1)
	(dbx_psymtab_to_symtab, read_ofile_symtab, process_one_symbol)
	(stabsect_build_psymtabs): Fix indentation.

2008-01-15  Michael Snyder  <msnyder@specifix.com>

	* corelow.c (core_xfer_partial): Comment, cut/paste error.

2008-01-14  Pierre Muller  <muller@ics.u-strasbg.fr>

	* win32-nat.c (win32_create_inferior): Restore code calling
	CloseHandle on ProcessInformation structure.

2008-01-13  Nick Hudson  <nick.hudson@dsl.pipex.com>

	* configure.ac: Check for void * as 3 argument of ptrace.
	* configure: regenerate.

2008-01-11  Markus Deuling  <deuling@de.ibm.com>

	* alpha-tdep.c (alpha_heuristic_proc_start)
	(alpha_sigtramp_register_address): Add gdbarch as parameter. Replace
	current_gdbarch by gdbarch.

	(alpha_heuristic_frame_unwind_cache): Use get_frame_arch to get at the
	current architecture by frame_info. Update alpha_heuristic_proc_start
	call.

	(alpha_sigtramp_frame_this_id, alpha_sigtramp_frame_prev_register): Use
	get_frame_arch to get at the current architecture by frame_info. Update
	alpha_sigtramp_register_address call.

	* arm-tdep.c (thumb_scan_prologue): Add gdbarch as parameter and replace
	current_gdbarch by gdbarch. Update caller.
	(convert_to_extended, convert_from_extended): Add endianess parameter
	for comparison. Update caller.
	(arm_extract_return_value, arm_store_return_value): Use
	get_regcache_arch to get at the current	architecture.

	* cris-tdep.c (cris_register_size): Add gdbarch as parameter. Replace
	current_gdbarch by gdbarch. Update caller.
	(cris_gdb_func, move_to_preg_op, none_reg_mode_move_from_preg_op): Add
	gdbarch as parameter. Update caller. Replace current_gdbarch by gdbarch.

	* h8300-tdep.c (E_PSEUDO_CCR_REGNUM, E_PSEUDO_EXR_REGNUM, BINWORD): Add
	gdbarch	as parameter. Update caller.
	(h8300_init_frame_cache): Add gdbarch as parameter. Replace
	current_gdbarch by gdbarch. Update caller.

	* hppa-tdep.c (skip_prologue_hard_way): Add gdbarch as parameter and
	update caller. Replace current_gdbarch by gdbarch.

	* m32c-tdep.c (m32c_skip_trampoline_code): Use get_frame_arch to get at
	the current architecture. Replace current_gdbarch by gdbarch.
	* m68hc11-tdep.c (m68hc11_frame_unwind_cache): Likewise.
	(STACK_CORRECTION, USE_PAGE_REGISTER): Replace M6811_TDEP by its
	expression. Add gdbarch as parameter and replace current_gdbarch with
	it. Update caller.
	(M6811_TDEP): Remove.
	(m68hc11_frame_prev_register): Use get_frame_arch to get at the current
	architecture.
	(m68hc11_scan_prologue): Add gdbarch as parameter. Replace
	current_gdbarch by gdbarch. Update caller.

	* m68k-tdep.c (m68k_analyze_prologue): Add gdbarch as parameter and
	update caller.
	(m68k_analyze_register_saves): Likewise. Also replace current_gdbarch
	by gdbarch.

	* rs6000-tdep.c (skip_prologue): Add gdbarch as parameter and update
	caller. Relace current_gdbarch by gdbarch.
	(altivec_register_p, spe_register_p): Likewise.
	* ppc-tdep.h (altivec_register_p, spe_register_p): Add gdbarch as
	parameter.
	* ppc-linux-nat.c (fetch_register, store_register): Update caller of
	altivec_register_p and spe_register_p.

	* score-tdep.c (score_fetch_inst): Add gdbarch as parameter. Update
	caller. Replace current_gdbarch by gdbarch.
	(score_analyze_prologue): use get_frame_arch to get at the current
	architecture.

	* sparc-tdep.h (sparc_analyze_prologue): Add gdbarch as parameter.
	* sparc-tdep.c (sparc_analyze_prologue): Likewise. Replace
	current_gdbarch by gdbarch. Update caller.
	(sparc_frame_cache): Use get_frame_arch to get at the current
	architecture.
	* sparce64-tdep.c (sparc64_skip_prologue): Update call of
	sparc_analyze_prologue.

	* mn10300-tdep.c (mn10300_dwarf2_reg_to_regnum): Add gdbarch as
	parameter.

2008-01-11  Markus Deuling  <deuling@de.ibm.com>

	* 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  Markus Deuling  <deuling@de.ibm.com>

	* gdbarch.sh (skip_prologue): Add gdbarch
	as parameter.
	* gdbarch.{c,h}: Regenerate.

	* alpha-tdep.c (alpha_skip_prologue): Add gdbarch as parameter.
	* amd64-tdep.c (amd64_skip_prologue): Likewise.
	* avr-tdep.c (avr_skip_prologue): Likewise.
	* cris-tdep.c (cris_skip_prologue): Likewise.
	* frv-tdep.c (frv_skip_prologue): Likewise.
	* h8300-tdep.c (h8300_skip_prologue): Likewise.
	* hppa-tdep.c (hppa_skip_prologue): Likewise.
	* i386-tdep.c (i386_skip_prologue): Likewise.
	* ia64-tdep.c (ia64_skip_prologue): Likewise.
	* iq2000-tdep.c (iq2000_skip_prologue): Likewise.
	* m32r-tdep.c (m32r_skip_prologue): Likewise.
	* m68hc11-tdep.c (m68hc11_skip_prologue): Likewise.
	* m68k-tdep.c (m68k_skip_prologue): Likewise.
	* m88k-tdep.c (m88k_skip_prologue): Likewise.
	* mep-tdep.c (mep_skip_prologue): Likewise.
	* mips-tdep.c (mips_skip_prologue): Likewise.
	* mn10300-tdep.c (mn10300_skip_prologue): Likewise.
	* mt-tdep.c (mt_skip_prologue): Likewise.
	* rs6000-tdep.c (rs6000_skip_prologue): Likewise.
	* score-tdep.c (score_skip_prologue): Likewise.
	* sh64-tdep.c (sh64_skip_prologue): Likewise.
	* sh-tdep.c (sh_skip_prologue): Likewise.
	* sparc64-tdep.c (sparc64_skip_prologue): Likewise.
	* sparc-tdep.c (sparc32_skip_prologue): Likewise.
	* spu-tdep.c (spu_skip_prologue): Likewise.
	* v850-tdep.c (v850_skip_prologue): Likewise.
	* vax-tdep.c (vax_skip_prologue): Likewise.
	* xstormy16-tdep.c (xstormy16_skip_prologue): Likewise.
	* xtensa-tdep.c (xtensa_skip_prologue): Likewise.

	* arm-tdep.c (arm_skip_prologue): Add gdbarch as parameter. Replace
	current_gdbarch by gdbarch.
	* m32c-tdep.c (m32c_skip_prologue): Likewise.
	* s390-tdep.c (s390_skip_prologue): Likewise.

2008-01-10  Doug Evans  <dje@google.com>

	* defs.h (struct continuation_arg): Fix typo in comment.
	* target.c (target_translate_tls_address): Fix comment spelling error.

2008-01-09  Thiago Jung Bauermann  <bauerman@br.ibm.com>

	* doublest.h (DOUBLEST_PRINT_FORMAT): Remove % from string.
	(DOUBLEST_SCAN_FORMAT): Likewise.
	* dfp.c (decimal_from_floating): Use DOUBLEST_PRINT_FORMAT.
	* ada-lex.l (processReal): Prepend "%" to use of DOUBLEST_SCAN_FORMAT.
	* c-exp.y (parse_number): Likewise.
	* jv-exp.y (parse_number): Likewise.
	* objc-exp.y (parse_number): Likewise.
	* p-exp.y (parse_number): Likewise.

2008-01-09  Joel Brobecker  <brobecker@adacore.com>

	* gdbtypes.c (create_array_type): Add handling of null Ada arrays.
	(check_typedef): Likewise.

2008-01-09  Luis Machado  <luisgpm@br.ibm.com>

	* printcmd.c (printf_command): Add seen_big_h, seen_big_d and
	seen_double_big_d, treat the new H, D, and DD modifiers as length
	modifiers.

2008-01-08  Joel Brobecker  <brobecker@adacore.com>

	* dwarf2read.c (read_enumeration_type): Add comment.

2008-01-08  Thiago Jung Bauermann  <bauerman@br.ibm.com>

	* config.in: Regenerate.

2008-01-08  Joel Brobecker  <brobecker@adacore.com>

	* 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  Paul Hilfinger  <hilfinger@adacore.com>

	* ada-lang.c (ensure_lval): Fix value lval kind.
	(convert_actual): Add handling for arguments passed by reference.

2008-01-08  Doug Evans  <dje@google.com>

	* dbxread.c (read_dbx_symtab): Fix indentation.

2008-01-07  Thiago Jung Bauermann  <bauerman@br.ibm.com>

	* 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  Vladimir Prus  <vladimir@codesourcery.com>

	Ignore change in name of dynamic linker during
	execution on Solaris.  This also unbreaks pending breakpoints.

	* solist.h (struct target_so_ops): New field same.
	* solib-svr4.c (svr4_same): New.
	(_initialize_svr4_solib): Register svr4_same.
	* solib.c (update_solib_list): Use ops->same, if available.

2008-01-06  Christopher Faylor  <me+cygwin@cgf.cx>

	* win32-nat.c (win32_make_so): Use cygwin-style path to avoid warnings
	when using MS-DOS paths.

2008-01-05  Pedro Alves  <pedro@codesourcery.com>

	* NEWS: Mention --pid and --core command line behaviour changes.

2008-01-05  Pedro Alves  <pedro@codesourcery.com>

	* main.c (captured_main): Remove 'count' varible and the
	ALIGN_STACK_ON_ENTRY block that used it.  Error out if --core and
	--pid options were issued simultaneously.  If an explicit pid
	option was passed, don't fallback to core file.  Detect extra
	arguments better in the presence of explicit pid or core
	arguments.

2008-01-05  Joel Brobecker  <brobecker@adacore.com>

	* ada-lang.c (ada_which_variant_applies): Correctly compute
	the value of the discriminant when the variant record is packed.

2008-01-04  Joel Brobecker  <brobecker@adacore.com>

	* ada-lang.c (is_name_suffix): Handle middle-name numeric suffixes
	that are used to differentiate homonyms.

2008-01-04  Jerome Guitton  <guitton@adacore.com>

	* ada-lang.c (decode_packed_array_type): Avoid a seg fault
	when the type is an anonymous pointer type.
	(ada_check_typedef): Avoid a seg fault when the type is null.
	* ada-typeprint.c (print_array_type): Add support for pointer
	to packed arrays.

2008-01-04  Paul N. Hilfinger  <hilfinger@adacore.com>

	* ada-exp.y: Allow '{type} ADDRESS' notation on left of assignment.

2008-01-04  Joel Brobecker  <brobecker@adacore.com>

	* ada-lang.c (ada_evaluate_subexp): Evaluate tagged types in
	EVAL_NORMAL mode when noside is EVAL_AVOID_SIDE_EFFECTS.

2008-01-04  Joel Brobecker  <brobecker@adacore.com>

	* ada-exp.y (chop_separator): New function.
	(write_selectors): Rewrite to re-use chop_separator.
	(ada_nget_field_index, get_symbol_field_type): New functions.
	(write_var_or_type): Add support for "ptype TYPENAME.FIELD"
	expressions.

2008-01-03  Thiago Jung Bauermann  <bauerman@br.ibm.com>

	* symtab.c (find_pc_sect_line): Use SYMBOL_VALUE_ADDRESS instead
	of SYMBOL_VALUE when working with function symbols.

2008-01-03  Joel Brobecker  <brobecker@adacore.com>

	* ada-lang.c (resolve_subexp): Add handling of OP_REGISTER
	expressions.  These expressions do not need to be rewriten.

2008-01-03  Joel Brobecker  <brobecker@adacore.com>

	* dwarf2read.c (read_enumeration_type): Flag type as stub if
	the given die is a declaration.

2008-01-03  Joel Brobecker  <brobecker@adacore.com>

	* ada-lang.c (ada_array_bound_from_type): Make non-static.
	Handle properly the case when the index type is an enumerated type.
	Do not return the subtype of the bounds type, just return the
	bounds type directly - this is not needed and is more consistent
	with what we do for arrays when no XA parallel type exists.

2008-01-03  Joel Brobecker  <brobecker@adacore.com>

	* ada-lang.c (static_unwrap_type): Add forward declaration.
	(template_to_static_fixed_type): Fields of dynamic types sometimes
	also need to be unwrapped. Take this into account.
	(ada_to_fixed_type_1): Renamed from ada_to_fixed_type.
	(ada_to_fixed_type): New wrapper around ada_to_fixed_type_1.
	* ada-typeprint.c (ada_print_type): Get the typename from
	the original type, not the base type.

2008-01-03  Jerome Guitton  <guitton@adacore.com>

	* ada-lang.c (ada_value_struct_elt, to_fixed_array_type)
	(to_fixed_array_type, ada_to_fixed_value_create, unwrap_value):
	Update calls to ada_to_fixed_type.
	(ada_template_to_fixed_record_type_1): Ditto, but without looking
	for the tag.
	(ada_to_fixed_type): Add check_tag parameter; do not look for
	tag if null.  When looking for a tag, use a fixed record type.
	* ada-lang.h (ada_to_fixed_type): Add check_tag parameter.
	* ada-valprint.c (printable_val_type, ada_value_print): Update
	calls to ada_to_fixed_type.

2008-01-03  Luis Machado  <luisgpm@br.ibm.com>

	* doublest.c (convert_floatformat_to_doublest): Call
	floatformat_to_doublest instead of floatformat_to_double and use
	DOUBLEST variables.
	(convert_doublest_to_floatformat): Call floatformat_from_doublest
	instead of floatformat_from_double and use DOUBLEST variables.

2008-01-03  Nick Hudson  <nick.hudson@dsl.pipex.com>

	* MAINTAINERS (Write After Approval): Add self.

2008-01-03  Joel Brobecker  <brobecker@adacore.com>

	* symfile.c (set_initial_language): Make non-static.
	* symfile.h (set_initial_language): Add declaration.
	* language.c: #include "symfile.h".
	(set_language): Call set_initial_language if the frame language
	could not be determined.

2008-01-03  Paul N. Hilfinger  <hilfinger@adacore.com>

	* eval.c (evaluate_subexp_for_address): Provide frame address to
	locate_var_value only if it will be needed.

2008-01-02  Jan Kratochvil  <jan.kratochvil@redhat.com>

	* linux-nat.c (linux_child_follow_fork): Call also CHECK_FOR_THREAD_DB.

2008-01-02  Joel Brobecker  <brobecker@adacore.com>

	* ada-lang.c (ada_evaluate_subexp): Modify the value returned
	when noside is EVAL_AVOID_SIDE_EFFECTS to be an lval_memory.
	This is needed to make sure that any other treatment applied
	to the resulting value does not fail for spurious reason,
	such as trying to take the address of this value.

2008-01-02  Joel Brobecker  <brobecker@adacore.com>

	* ada-lang.c (ada_value_equal): Dereference reference types when
	comparing arrays.

2008-01-01  Daniel Jacobowitz  <dan@codesourcery.com>

	Updated copyright notices for most files.

2008-01-01  Christopher Faylor  <me+gdb@cgf.cx>

	* win32-nat.c (psapi_module_handle): Remove static.
	(get_module_name): Rename from psapi_get_dll_name.  Revamp slightly to
	return first module found if base_address is zero.  Don't initialize
	psapi function pointers here.  Convert to cygwin paths when
	appropriate.
	(win32_pid_to_exec_file): Use Cygwin's /proc interface to determine
	executable name.  Use get_module_name when that fails or when
	!__CYGWIN__.
	(_initialize_psapi): New function.  Initialize psapi stuff before it is
	needed or issue a warning if it is not found.  Move psapi_module_handle
	here.

2008-01-01  Joel Brobecker  <brobecker@adacore.com>

	* ada-lang.c (ada_remove_trailing_digits): New function.
	(ada_remove_po_subprogram_suffix): New function.
	(ada_decode): Improve. Move the description of the algorithm
	directly inside the code, instead of in the function global
	description.

2008-01-01  Joel Brobecker  <brobecker@adacore.com>

	* ada-valprint.c (ada_val_print_1) [TYPE_CODE_REF]: Ignore deref_ref
	and always print the dereferenced value.

2008-01-01  Joel Brobecker  <brobecker@adacore.com>

	* ada-lang.c (ada_evaluate_subexp, case BINOP_SUB): Add handling
	of the case where the first argument is a reference.
	(ada_evaluate_subexp, case BINOP_ADD): Likewise.

2008-01-01  Joel Brobecker  <brobecker@adacore.com>

	Implement support for Ada interface types.

	* ada-lang.c (ada_is_dispatch_table_ptr_type): New function.
	(ada_is_ignored_field): Ignore fields that are a dispatch table
	of a tagged type.

2008-01-01  Joel Brobecker  <brobecker@adacore.com>

	* top.c (print_gdb_version): Update copyright year.

2008-01-01  Joel Brobecker  <brobecker@adacore.com>

	* ChangeLog-2007: New ChangeLog rotation.
	* ChangeLog: Reset for 2008.
	* config/djgpp/fnchange.lst: Add entries for ChangeLog-2006 and
	ChangeLog-2007.

For older changes see ChangeLog-2007.

Local Variables:
mode: change-log
left-margin: 8
fill-column: 74
version-control: never
coding: utf-8
End:
