+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.