Commit Graph

21559 Commits

Author SHA1 Message Date
gdbadmin d61b794ead *** empty log message *** 2007-10-04 00:00:02 +00:00
Daniel Jacobowitz 8d5f9c6f02 * NEWS: Use uniform spacing. Correct version number for GDB 6.7
news.  Mention XML support for M68K in GDB 6.7.
2007-10-03 20:42:08 +00:00
Daniel Jacobowitz 1969d2ed60 * gdbtypes.c (create_range_type): Do not set TYPE_FIELD_TYPE for the
bounds.
	(init_vector_type): Use builtin_type_int32.
2007-10-03 20:37:31 +00:00
gdbadmin 64b4c5f889 *** empty log message *** 2007-10-03 00:00:03 +00:00
Ulrich Weigand e31dcd201e * s390-tdep.c (s390_regset_from_core_section): Allow excess section
size to enable bi-arch generate-core-file support.
2007-10-02 19:25:52 +00:00
Ulrich Weigand b94c4f7d5f 2007-10-02 Markus Deuling <deuling@de.ibm.com>
* spu-tdep.c (info_spu_signal_command): Fix output for SPU signal.
2007-10-02 17:34:32 +00:00
Ulrich Weigand 9612b5ec13 2007-10-02 Carlos Eduardo Seo <cseo@linux.vnet.ibm.com>
* tui/tui-interp.c (tui_init): Initialize tui's SIGWINCH
	signal handler.
	* tui/tui-win.c (tui_initialize_win): New function for
	initializing tui's SIGWINCH signal handler.
	* tui/tui-win.h (tui_initialize_win): Declare.
2007-10-02 16:50:08 +00:00
Ulrich Weigand 407f1a2e17 * ppc-linux-nat.c (ppc_linux_stopped_data_address): Cast
pointer to uintptr_t before casting to CORE_ADDR.
2007-10-02 16:39:29 +00:00
Ulrich Weigand 02d3ff8c47 2007-10-02 Markus Deuling <deuling@de.ibm.com>
* linux-nat.c (PTRACE_GETSIGINFO): Add define.
2007-10-02 16:33:35 +00:00
Daniel Jacobowitz 4577549b8f 2007-10-02 Mark Mitchell <mark@codesourcery.com>
* mingw-hdep.c (gdb_select): Stop helper threads before returning.
	* ser-mingw.c (enum select_thread_state): New type.
	(struct ser_console_state): Add have_started and thread_state.
	(select_thread_wait): New function.
	(thread_fn_type): New type.
	(create_select_thread): New function.
	(destroy_select_thread): Likewise.
	(start_select_thread): Likewise.
	(stop_select_thread): Likewise.
	(console_select_thread): Use new functions.
	(pipe_select_thread): Likewise.
	(file_select_thread): Likewise.
	(ser_console_wait_handle): Likewise.
	(ser_console_done_wait_handle): Likewise.
	(ser_console_close): Likewise.
	(free_pipe_state): Likewise.
	(pipe_wait_handle): Likewise.
	(pipe_done_wait_handle): Likewise.
	(struct net_windows_state): Derive from ser_console_state.
	(net_windows_select_thread): Use new functions.
	(net_windows_wait_handle): Likewise.
	(net_windows_done_wait_handle): Likewise.
	(net_windows_close): Likewise.
2007-10-02 16:09:53 +00:00
Daniel Jacobowitz b0b951d937 * inflow.c (terminal_ours_1): Remove useless line. 2007-10-02 15:56:51 +00:00
Daniel Jacobowitz 82e9138962 * mips-tdep.c (mips_read_fp_register_double): Correct check for
odd FP registers.
	(mips_print_fp_register): Correct check for even FP registers.
	(mips_virtual_frame_pointer): New function.
	(mips_gdbarch_init): Call set_gdbarch_virtual_frame_pointer.
2007-10-02 15:17:44 +00:00
Daniel Jacobowitz 471ba8c90c * gdb.cp/classes.exp (do_tests): Always step to the line after the
call.
	* gdb.mi/mi-simplerun.exp (test_controlled_execution): Allow finish
	to return to the call.
	* gdb.mi/mi2-simplerun.exp (test_controlled_execution): Likewise.
	* gdb.mi/mi-return.exp (test_return_simple): Likewise.
	* gdb.mi/mi2-return.exp (test_return_simple): Likewise.
	* gdb.mi/mi-until.exp (test_until): Likewise.
	* gdb.mi/mi2-until.exp (test_until): Likewise.
2007-10-02 14:57:46 +00:00
gdbadmin 40961791a2 *** empty log message *** 2007-10-02 00:00:02 +00:00
Daniel Jacobowitz fef8a650d0 * gdb.mi/var-cmd.c (do_locals_tests): Define lcharacter as a
two-char array.
	* gdb.mi/mi-var-cmd.exp, gdb.mi/mi2-var-cmd.exp: Use lcharacter[0].
2007-10-01 14:07:46 +00:00
Mike Frysinger c4a3d09a71 2007-09-30 Mike Frysinger <vapier@gentoo.org>
* value.h (lookup_only_internalvar): New prototype.
	(create_internalvar): Likewise.
	* value.c (lookup_only_internalvar): New function.
	(create_internalvar): Likewise.
	(lookup_internalvar): Use new lookup_only_internalvar and
	create_internalvar functions.
	* parse.c (write_dollar_variable): Look up $ symbols in internal
	table first rather than last.
2007-10-01 01:39:52 +00:00
Daniel Jacobowitz 9f0bdab802 * linux-nat.c (linux_nat_new_thread): New variable.
(linux_child_follow_fork): Set inferior_ptid to include LWP ID.  Use
	linux_nat_switch_fork.
	(lwp_list): Make public.
	(add_lwp): Call linux_nat_new_thread.
	(lin_lwp_attach_lwp, linux_nat_attach): Call add_lwp after stopping
	the new thread.
	(resume_callback): Clear lp->siginfo.  Remove unused variable.
	(linux_nat_resume): Assert that the LWP list is already initialized.
	Clear lp->siginfo.
	(save_siginfo): New.
	(stop_wait_callback, linux_nat_wait): Call it.
	(linux_nat_set_new_thread, linux_nat_get_siginfo): New.
	* linux-nat.h (struct lwp_info): Add siginfo.
	(lwp_list, linux_nat_set_new_thread, linux_nat_get_siginfo): Declare.
	(ALL_LWPS): Define.

	* amd64-linux-nat.c (amd64_linux_dr): New.
	(amd64_linux_dr_get): Take a PTID argument.  Correct typo.
	(amd64_linux_dr_set): Take a PTID argument.
	(amd64_linux_dr_set_control, amd64_linux_dr_set_addr): Use ALL_LWPS.
	(amd64_linux_dr_reset_addr): Use amd64_linux_dr_set_addr.
	(amd64_linux_dr_get_status): Pass inferior_ptid to amd64_linux_dr_get.
	(amd64_linux_new_thread): New.
	(_initialize_amd64_linux_nat): Call linux_nat_set_new_thread.
	* i386-linux-nat.c (i386_linux_dr): New.
	(i386_linux_dr_get, i386_linux_dr_set): Take a PTID argument.
	(i386_linux_dr_set_control, i386_linux_dr_set_addr): Use ALL_LWPS.
	(i386_linux_dr_reset_addr): Use i386_linux_dr_set_addr.
	(i386_linux_dr_get_status): Pass inferior_ptid to i386_linux_dr_get.
	(i386_linux_new_thread): New.
	(i386_linux_resume): Remove unnecessary PID check.
	(_initialize_i386_linux_nat): Call linux_nat_set_new_thread.
	* ia64-linux-nat.c (enable_watchpoints_in_psr): Take PTID argument.
	(fetch_debug_register, fetch_debug_register_pair): Delete.
	(debug_registers): New.
	(ia64_linux_insert_watchpoint, ia64_linux_remove_watchpoint): Use
	ALL_LWPS and debug_registers.
	(ia64_linux_new_thread): New.
	(ia64_linux_stopped_data_address): Use linux_nat_get_siginfo.
	(_initialize_ia64_linux_nat): Call linux_nat_set_new_thread.
	* ppc-linux-nat.c (last_stopped_data_address): Delete.
	(saved_dabr_value): New.
	(ppc_linux_insert_watchpoint, ppc_linux_remove_watchpoint): Use
	ALL_LWPS.
	(ppc_linux_new_thread): New.
	(ppc_linux_stopped_data_address): Use linux_nat_get_siginfo.
	(ppc_linux_stopped_by_watchpoint): Call ppc_linux_stopped_data_address.
	(_initialize_ppc_linux_nat): Call linux_nat_set_new_thread.
	* s390-nat.c (s390_stopped_by_watchpoint): Clear the watchpoint status
	after reading it.
	(s390_fix_watch_points): Take a PTID argument.
	(s390_insert_watchpoint, s390_remove_watchpoint): Use ALL_LWPS.
	(_initialize_s390_nat): Call linux_nat_set_new_thread.
2007-10-01 00:22:50 +00:00
Daniel Jacobowitz d983da9c3d 2007-09-16 Daniel Jacobowitz <dan@codesourcery.com>
Jeff Johnston  <jjohnstn@redhat.com>

	* breakpoint.c (watchpoints_triggered): New.
	(bpstat_stop_status): Remove STOPPED_BY_WATCHPOINT argument.
	Check watchpoint_triggered instead.  Combine handling for software
	and hardware watchpoints.  Do not use target_stopped_data_address
	here.  Always check a watchpoint if its scope breakpoint triggers.
	Do not stop for thread or overlay events.  Improve check for
	triggered watchpoints without a value change.
	(watch_command_1): Insert the scope breakpoint first.  Link the
	scope breakpoint to the watchpoint.
	* breakpoint.h (enum watchpoint_triggered): New.
	(struct breakpoint): Add watchpoint_triggered.
	(bpstat_stop_status): Update prototype.
	(watchpoints_triggered): Declare.
	* infrun.c (enum infwait_status): Add infwait_step_watch_state.
	(stepped_after_stopped_by_watchpoint): Delete.
	(handle_inferior_event): Make stepped_after_stopped_by_watchpoint
	local.  Handle infwait_step_watch_state.  Update calls to
	bpstat_stop_status.  Use watchpoints_triggered to check
	watchpoints.
	* remote.c (stepped_after_stopped_by_watchpoint): Remove extern.
	(remote_stopped_data_address): Do not check it.

	* gdb.texinfo (Setting Watchpoints): Adjust warning text about
	multi-threaded watchpoints.
	* gdbint.texinfo (Watchpoints): Describe how watchpoints are
	checked.  Describe sticky notification.  Expand description
	of steppable and continuable watchpoints.
	(Watchpoints and Threads): New subsection.

	* gdb.threads/watchthreads.c (thread_function): Sleep between
	iterations.
	* gdb.threads/watchthreads.exp: Allow two watchpoints to trigger
	at once for S/390.  Generate matching fails and passes.
2007-10-01 00:17:58 +00:00
gdbadmin 9f62ccd0e1 *** empty log message *** 2007-10-01 00:00:37 +00:00
gdbadmin baac0a8a36 *** empty log message *** 2007-09-30 00:00:02 +00:00
Daniel Jacobowitz 7921a279e3 * configure.ac: Add $LIBINTL when testing libbfd.
* configure: Regenerated.
2007-09-29 20:53:46 +00:00
gdbadmin f2476b303a *** empty log message *** 2007-09-29 00:00:04 +00:00
Eli Zaretskii fcda367bb9 (Set Breaks): Fix a typo. 2007-09-28 11:09:55 +00:00
Vladimir Prus fe6fbf8b6e * NEW: Mention pending breakpoint changes and
support for breakpoints at multiple locations.
	* gdb.texinfo (Setting Breakpoints): Revise
	documentation for pending breakpoints.  Document
	breakpoints with multiple locations.
2007-09-28 06:24:20 +00:00
gdbadmin 8be878263a *** empty log message *** 2007-09-28 00:00:03 +00:00
Daniel Jacobowitz daddc3c15f * arm-linux-tdep.c (arm_linux_software_single_step): New.
(arm_linux_init_abi): Use it.
	* arm-tdep.c (arm_get_next_pc): Make global.  Handle all-ones
	condition correctly.
	* arm-tdep.h (arm_get_next_pc): Declare.
	* Makefile.in (arm-linux-tdep.o): Update.
2007-09-27 18:48:33 +00:00
Vladimir Prus 7a4d50bfe0 * varobj.c (install_new_value): Don't
call value_get_print_value when a value is
	lazy.  Update the print_value member in a
	single place.
2007-09-27 18:04:12 +00:00
Vladimir Prus 6902ff2f04 Undo this part of previous checkin:
* gdb.mi/mi2-var-child.exp: Step over said
     initialization.

It's not necessary, and breaks the test.
2007-09-27 12:44:08 +00:00
Vladimir Prus 17f62551fb * gdb.mi/var-cmd.c (do_children_tests): Initialize
the 'struct_declarations' variable to zeros.
        * gdb.mi/mi2-var-child.exp: Step over said
        initialization.
2007-09-27 12:25:20 +00:00
gdbadmin e03a35752c *** empty log message *** 2007-09-27 00:00:33 +00:00
Vladimir Prus d32a698258 * breakpoint.c (create_breakpoint): Set
condition on each location, not on the first
	location of breakpoint.
2007-09-26 18:44:55 +00:00
Jim Blandy 489eaebade * remote.c (getpkt_sane): Fix error message. No animals were
harmed in the making of this debugger.
2007-09-26 18:32:54 +00:00
Pierre Muller 3e9313abcf 2007-09-26 Pierre Muller <muller@ics.u-strasbg.fr>
* p-typeprint.c: Fix 11 ARI reported problems.
	(pascal_print_type): Fix 4 operator at end of line.
	(pascal_type_print_method_args) : Replace 2 DEPRECATED_STREQN macros
	using strncmp function.
	(pascal_type_print_base): Fix 2 operator at end of line.
	(pascal_type_print_base) : Replace 3 DEPRECATED_STREQN macros
	using strncmp function.
2007-09-26 15:37:16 +00:00
Pierre Muller 5b8101ae7b 2007-09-26 Pierre Muller <muller@ics.u-strasbg.fr>
* Fix PR pascal/2231
	dwarf2read.c (read_subroutine_type):
	All pascal functions are prototyped.
2007-09-26 13:59:54 +00:00
Pierre Muller c45f11dab9 2007-09-26 Pierre Muller <muller@ics.u-strasbg.fr>
* Fix PR pascal/2283
	p-valprint.c (pascal_val_print): correct current language check.
	Also print array of char as strings.
2007-09-26 12:25:16 +00:00
Maciej W. Rozycki 59aa1faa75 * mips-tdep.c (mips_n32n64_return_value): Fix a comment. 2007-09-26 11:36:30 +00:00
gdbadmin da90be63ac *** empty log message *** 2007-09-26 00:00:02 +00:00
Pierre Muller 0b058123a0 2007-09-25 Pierre Muller <muller@ics.u-strasbg.fr>
* p-exp.y: Fix 12 ARI reported problems.
	(name_not_typename): Fix 2 operator at end of line issues.
	(yylex): Fix 3 operator at end of line issues.
	Replace 7 DEPRECATED_STREQ macros using strcmp function.
2007-09-25 16:23:55 +00:00
Maciej W. Rozycki b18bb924a2 * mips-tdep.c (mips_n32n64_return_value): Per N32/N64 ABI
rules return composite types in registers as appropriate.
2007-09-25 16:08:17 +00:00
gdbadmin 74a6051b58 *** empty log message *** 2007-09-25 00:00:02 +00:00
Jim Blandy 28c32713ac * symfile.h (struct symfile_segment_data): Doc fixes.
* symfile.c (symfile_map_offsets_to_segments): Doc fixes.
Assert that we were passed some loaded segment addresses,
and that sections' segment numbers are valid.
Simplify offset calculation.
* remote.c (get_offsets): Clarify selection of relocate-by-segment
strategy, and set num_segments correctly.  Delete redundant
assignments to do_sections.
2007-09-24 21:48:29 +00:00
Daniel Jacobowitz 3227663267 * frame.c (get_prev_frame_1): Also check for PC in the same register. 2007-09-24 21:34:58 +00:00
Vladimir Prus ed0616c6b7 * breakpoint.c (remove_sal): New.
(expand_line_sal_maybe): New.
	(create_breakpoints): Call expand_line_sal_maybe.
	(clear_command): Add comment.
	(breakpoint_re_set_one): Call expand_line_sal_maybe.
	* linespec.c (decode_indirect): Set explicit_pc to 1.
	(decode_all_digits): Set explicit_line to 1.
	(append_expanded_sal): New.
	(expand_line_sal): New.
	* linespec.h (expand_line_sal): Declare.
	* symtab.c (init_sal): Initialize explicit_pc
	and explicit_line.
	* symtab.h (struct symtab_and_line): New fields
	explicit_pc and explicit_line.
2007-09-24 07:40:32 +00:00
gdbadmin d83b1de40b *** empty log message *** 2007-09-24 00:00:02 +00:00
Daniel Jacobowitz 41f1b6975d * infcall.c (call_function_by_hand): Handle language-specific
pass and return by reference.

	* cp-abi.c (cp_pass_by_reference): New.
	* cp-abi.h (cp_pass_by_reference): Declare.
	(struct cp_abi_ops): Add pass_by_reference.
	* gnu-v3-abi.c (gnuv3_pass_by_reference): New.
	(init_gnuv3_ops): Set pass_by_reference.

	* language.c (language_pass_by_reference): New.
	(default_pass_by_reference): New.
	(unknown_language_defn, auto_language_defn, local_language_defn): Add
	default_pass_by_reference.
	* langauge.h (struct language_defn): Add la_pass_by_reference.
	(language_pass_by_reference, default_pass_by_reference): Declare.
	* ada-lang.c (ada_language_defn): Add default_pass_by_reference.
	* c-lang.c (c_language_defn, asm_language_defn)
	(minimal_language_defn): Likewise.
	(cplus_language_defn): Add cp_pass_by_reference.
	* f-lang.c (f_language_defn): Add default_pass_by_reference.
	* jv-lang.c (java_language_defn): Likewise.
	* m2-lang.c (m2_language_defn): Likewise.
	* objc-lang.c (objc_language_defn): Likewise.
	* p-lang.c (pascal_language_defn): Likewise.
	* scm-lang.c (scm_language_defn): Likewise

	* gdb.cp/pass-by-ref.cc, gdb.cp/pass-by-ref.exp: New files.
2007-09-23 16:25:06 +00:00
Pedro Alves 3f213f78ed * configure.ac: Do gdb.stabs tests by default on Cygwin and MinGW
targets.
	* configure: Regenerate.
2007-09-23 13:56:56 +00:00
Vladimir Prus 0d381245e3 * breakpoint.h (enum enable_state): Remove the
bp_shlib_disabled enumerator.
	(struct bp_location): New members shlib_disabled,
	global_next, enabled and function_name.
	Rename pending to condition_not_parsed.

	* breakpoint.c (ALL_BP_LOCATIONS): Iterate over global_next.
	(ALL_BP_LOCATIONS_SAFE): Likewise.
	(breakpoint_enabled): Don't check for pending.
	(condition_command): Free and update all locations of
	a breakpoint.
	(insert_bp_location): Adjust.
	(software_breakpoint_inserted_here_p): Don't care
	if breakpoint is enabled, as soon as it's inserted.
	(print_it_typical): Print bpstat's location, not
	bpstat's breakpoint's location.
	(bpstat_stop_status): Iterate over all locations, not
	all breakpoints.
	(print_breakpoint_location): New.
	(print_one_breakpoint): Renamed to
	(print_one_breakpoint_location): ...this. Take
	parameters to describe which location is being
	printed. Modify code to properly print header
	for several locations and individual locations.
	(print_one_breakpoint): Print all locations.
	(breakpoint_has_pc): New.
	(describe_other_breakpoints): Use the above.
	(check_duplicates): Renamed to...
	(check_duplicates_for): .. this.
	(check_duplicates): Use check_duplicates_for.
	(allocate_bp_location): Adjust.
	(set_raw_breakpoint_without_location): New,
	extracted from set_raw_breakpoint.
	(set_breakpoint_location_function): New.
	(set_raw_breakpoint): Use
	set_raw_breakpoint_without_location.
	(make_breakpoint_permanent): Mark all locations
	as inserted.
	(disable_breakpoints_in_shlibs): Iterate over
	locations.
	(disable_breakpoints_in_unloaded_shlib): Likewise.
	(re_enable_breakpoints_in_shlibs): Likewise.
	(mention): Say "pending" when breakpoint has
	zero locations.  If breakpoint has more than one
	location, say so.
	(add_location_to_breakpoint): New.
	(create_breakpoint): Accept symtabs_and_lines, not
	symtab_and_line. Pass extra sals to
	add_location_to_breakpoint.
	(create_breakpoints): Pass symtabs_and_lines to
	create_breakpoints.
	(break_command_1): Make pending breakpoints
	have zero locations.
	(do_captured_breakpoint): Remove wrong allocation.
	(clear_command): Iterate over all locations.
	(unlink_locations_from_global_list): Renamed
	from unlink_location_from_global_list. Remove
	all locations.
	(delete_breakpoint): Remove all locations.
	Iterate over all locations when deciding which
	other location to re-enable.
	(all_locations_are_pending): New.
	(update_breakpoint_locations): Renamed from
	update_breakpoint_location. Try to match old
	and new locations using names of containing
	functions.
	(breakpoint_re_set_one): Adjust.
	(find_location_by_number): New.
	(disable_command): Allow disabling individual location.
	(enable_command): Allow enabling individual location.
	* breakpoint.c: Adjust all uses of breakpoint's
	enable state to for bp_shlib_disabled change.
2007-09-23 07:56:22 +00:00
gdbadmin f58849bd46 *** empty log message *** 2007-09-23 00:00:36 +00:00
Vladimir Prus fe3f5fa8f9 * breakpoint.c (do_restore_lang_radix_cleanup): Remove.
(resolve_pending_breakpoint): Remove.
	(re_enable_breakpoints_in_shlibs): Remove.
	(unlink_locations_from_global_list): New.
	(update_breakpoint_locations): New.
	(breakpoint_re_set_one): Don't bail out on pending breakpoints.
	Use parse_condition and update_breakpoint_location to
	reset breakpoint.  Ignore 'symbol not found' error from
	decode_line_1.
	(breakpoint_re_set): Don't emit newline before the
	reason why breakpoint is not reset.
	(do_enable_breakpoint): Don't specially process pending
	breakpoints.
	(free_bp_location): New.
	(break_command_1): For pending breakpoints, initialize
	all fields of a sal with zeroes.
	* breakpoint.h (re_enable_breakpoints_in_shlibs): Remove.
	* infcmd.c (post_create_inferior): Don't call
	re_enable_breakpoints_in_shlibs.
	* infrun.c (handle_inferior_event): Likewise.
	* solib-irix.c (irix_solib_create_inferior_hook): Likewise.
	* solib-osf.c (osf_solib_create_inferior_hook): Likewise.
	* win32-nat.c (get_win32_debug_event): Likewise.
2007-09-22 19:33:32 +00:00
Vladimir Prus 018d34a46b * breakpoint.c (create_breakpoint): Split from
create_breakpoints, implementing most of its logic.
	Take just a single sal, single address string and
	single condition.  Do not take parsed condition at
	all.
	(create_breakpoints): Just call create_breakpoint
	for each sal.
	(find_condition_and_thread): New.
	(break_command_1): Use find_condition_and_thread.
	Do not keep parsed conditions.
	(do_captured_breakpoint): Don't convert
	condition string to struct expression.
2007-09-22 19:10:05 +00:00