* gdbarch.sh: Document the return_value method. Explain that
[deliverable/binutils-gdb.git] / gdb / ChangeLog
index 4d80d5fa35a96d1db341bdc5c5aafe42a3af2144..35c6ceac1041ee3461f86b33a50e035fcca687d1 100644 (file)
@@ -1,3 +1,368 @@
+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.
This page took 0.044713 seconds and 4 git commands to generate.