Commit graph

26975 commits

Author SHA1 Message Date
Yao Qi
96e254033d 2010-08-18 Yao Qi <yao@codesourcery.com>
* gdb.gdb/selftest.exp (do_steps_and_nexts): Update test case
	to reflect latest c source file.
2010-08-18 02:30:07 +00:00
Yao Qi
f9b42018ba 2010-08-18 Yao Qi <yao@codesourcery.com>
* MAINTAINERS : Add myself under Write After Approval.
2010-08-18 02:24:47 +00:00
gdbadmin
5059716008 *** empty log message *** 2010-08-18 00:00:34 +00:00
Tom Tromey
def98928e2 * NEWS: Mention template parameter support. 2010-08-17 21:34:12 +00:00
Jan Kratochvil
36e6adc4a7 gdb/testsuite/
* gdb.cp/infcall-dlopen.exp: New file.
	* gdb.cp/infcall-dlopen.cc: New file.
	* gdb.cp/infcall-dlopen-lib.cc: New file.
2010-08-17 21:31:13 +00:00
Pedro Alves
0807b50c1a * breakpoint.c (decref_bp_location): Assert the reference count is
sane.
2010-08-17 21:12:32 +00:00
Pedro Alves
f431efe540 gdb/
2010-08-17  Pedro Alves  <pedro@codesourcery.com>

	PR breakpoints/11371

	* breakpoint.c (breakpoint_init_inferior): Decrement the
	location's reference count instead of deleting right away.
	(bpstat_free): Decrement the location's reference count.  Make
	static.
	(bpstat_copy): Increment the location's reference count.
	(bpstat_find_breakpoint): Adjust.
	(bpstat_num): Adjust.
	(print_it_typical): Adjust.  Use the breakpoint pointer in the
	bpstat instead of the location's owner.
	(bpstat_alloc): Remove const qualifier from the 'bl' parameter.
	Adjust to record the location's owner in the bpstat.
	(watchpoint_check): Use the breakpoint pointer in the bpstat
	instead of the location's owner.
	(bpstat_check_breakpoint_conditions): Don't handle
	bp_watchpoint_scope here.  Use the breakpoint pointer in the
	bpstat instead of the location's owner.
	(bpstat_stop_status): Defer inferior function calls to after
	building the bpstat list.  Handle bp_watchpoint_scope here.  Use
	the breakpoint pointer in the bpstat instead of the location's
	owner.
	(bpstat_what): Use the breakpoint pointer in the bpstat instead of
	the location's owner.
	(free_bp_location): Don't walk bpstats clearing locations.
	(incref_bp_location): New.
	(decref_bp_location): New.
	(breakpoint_auto_delete): Use the breakpoint pointer in the bpstat
	instead of the location's owner.
	(update_global_location_list): Clear the location's owner, and
	decrement the location's reference count instead of deleting it
	right away.
	(breakpoint_retire_moribund): Decrement the location's reference
	count instead of deleting it right away.
	(bpstat_remove_bp_location): Delete.
	(bpstat_remove_breakpoint): New.
	(bpstat_remove_bp_location_callback): Delete.
	(bpstat_remove_breakpoint_callback): New.
	(delete_breakpoint): Iterate over all threads' stop_bpstat's
	clearing references to the breakpoint that is being deleted.

	* breakpoint.h (struct bp_location) <refc>: New field.
	<owner>: Update comments.
	(bpstat_free): Delete declaration.
	(struct bpstats): Change the type of the breakpoint_at field to
	struct breakpoint point, from struct bp_location pointer.  Add new
	field bp_location_at.

gdb/testsuite/
2010-08-17  Jan Kratochvil  <jan.kratochvil@redhat.com>
	    Pedro Alves  <pedro@codesourcery.com>

	PR breakpoints/11371

	* gdb.base/watch-cond-infcall.exp: New file.
	* gdb.base/watch-cond-infcall.c: New file.
2010-08-17 20:59:04 +00:00
gdbadmin
3025061652 *** empty log message *** 2010-08-17 00:00:03 +00:00
Tom Tromey
14c0d4e182 * NEWS: Fix typo. 2010-08-16 21:19:29 +00:00
Tom Tromey
b56df87389 * NEWS: Mention watch -location. 2010-08-16 21:15:46 +00:00
Jan Kratochvil
d63d0675b6 gdb/
* breakpoint.c (update_watchpoint): Add source empty line.  Prefer
	EXP_STRING_REPARSE to EXP_STRING.
	(watch_command_1): Set also EXP_STRING_REPARSE.
	(delete_breakpoint): Free also EXP_STRING_REPARSE.
	* breakpoint.h (struct breakpoint): New field exp_string_reparse.
	Update comment for exp_string.
2010-08-16 19:53:05 +00:00
Tom Tromey
06a64a0b78 gdb
* value.c (release_value): Clear 'next' pointer.
	* breakpoint.c (watch_command_1): Add 'just_location' argument.
	(watch_command_wrapper): Update.
	(watch_maybe_just_location): New function.
	(watch_command): Update.
	(rwatch_command_wrapper): Update.
	(rwatch_command): Update.
	(awatch_command_wrapper): Update.
	(awatch_command): Update.
	(check_for_argument): New function.
	(_initialize_breakpoint): Update help text.
gdb/testsuite
	* gdb.base/help.exp: Update.
	* gdb.base/watchpoint.exp (test_watchpoint_and_breakpoint): Delete
	watchpoint.
	(test_watch_location): New proc.
	(test_watchpoint_in_big_blob): Delete watchpoint.
	* gdb.base/watchpoint.c (func5): New function.
	(main): Call it.
gdb/doc
	* gdb.texinfo (Set Watchpoints): Document -location option.
2010-08-16 19:19:22 +00:00
Doug Evans
70ebf4ed1a * gdb.python/python.exp: Fix syntax in "post event insertion" test. 2010-08-16 18:01:40 +00:00
gdbadmin
2c1001f6e6 *** empty log message *** 2010-08-16 00:00:33 +00:00
gdbadmin
8363c56db8 *** empty log message *** 2010-08-15 00:00:33 +00:00
Ulrich Weigand
f96b8fa002 * arm-tdep.c (arm_push_dummy_call): Handle pointers to
typedef'ed function types correctly.
2010-08-14 00:45:39 +00:00
gdbadmin
96e13ea4b9 *** empty log message *** 2010-08-14 00:00:04 +00:00
Tom Tromey
4eb5405278 * python/python-internal.h (gdbpy_get_hook_function): Don't
declare.
2010-08-13 20:50:47 +00:00
Doug Evans
a3a7127eb0 * gdb.texinfo (.debug_gdb_scripts section): Fix typo. 2010-08-13 20:39:09 +00:00
Jan Kratochvil
44be957ed6 gdb/
* cli-logging.c (logging_overwrite, logging_redirect): Make them
	static.
2010-08-13 17:35:39 +00:00
Ken Werner
76d8b686dc gdb:
* python/python.c (gdbpy_solib_name): Remove the const qualifier of
the format strings to be compatible with Python 2.4.
2010-08-13 16:19:48 +00:00
Vladimir Prus
8dedea0203 Easier and more stubborn MI memory read commands.
* mi/mi-cmds.c (mi_cmds): Register data-read-memory-bytes
	and data-write-memory-bytes.
	* mi/mi-cmds.h (mi_cmd_data_read_memory_bytes)
	(mi_cmd_data_write_memory_bytes): New.
	* mi/mi-main.c (mi_cmd_data_read_memory): Use regular target_read.
	(mi_cmd_data_read_memory_bytes, mi_cmd_data_write_memory_bytes):
	New.
	(mi_cmd_list_features): Add "data-read-memory-bytes" feature.
	* target.c (target_read_until_error): Remove.
	(read_whatever_is_readable, free_memory_read_result_vector)
	(read_memory_robust): New.
	* target.h (target_read_until_error): Remove.
	(struct memory_read_result, free_memory_read_result_vector)
	(read_memory_robust): New.
2010-08-13 13:22:44 +00:00
Hui Zhu
1d9ec526ee 2010-08-13 Hui Zhu <teawater@gmail.com>
* dwarf2read.c (load_partial_comp_unit): Initialize free_cu_cleanup.
	(read_comp_unit): Initialize back_to.
2010-08-13 03:14:03 +00:00
gdbadmin
e06bb621df *** empty log message *** 2010-08-13 00:00:33 +00:00
Pedro Alves
98bfdba52e 2010-08-12 Daniel Jacobowitz <dan@codesourcery.com>
Pedro Alves  <pedro@codesourcery.com>

	* dwarf2read.c: Include "c-lang.h" and "valprint.h".
	(struct dwarf2_per_objfile) <reading_partial_symbols>: New field.
	(struct partial_die_info) <has_template_arguments>: New field.
	<num_attrs>: Change type to unsigned char.
	<building_fullname>: New field.
	(dwarf2_build_psymtabs_hard): Set reading_partial_symbols.  Only
	allocate a CU if we don't have one already.  Add a cleanup for the
	CU.
	(partial_die_full_name): Handle template arguments not in
	DW_AT_name.
	(dwarf2_psymtab_to_symtab): Clear reading_partial_symbols.
	(load_full_comp_unit): Only allocate a CU if we don't have one
	already.
	(do_ui_file_peek_last): New.
	(dwarf2_compute_name): Handle template parameters not in
	DW_AT_name.
	(read_comp_unit): Read and free abbrevs if not read yet.
	(load_partial_dies): Handle template arguments not in DW_AT_name.
	(find_partial_die): If we have a CU, but no a partial dies yet,
	also read in the CU.
	(dwarf2_const_value_attr): New, abstracted out from
	dwarf2_const_value.
	(dwarf2_const_value, dwarf2_const_value_data): Adjust to use
	dwarf2_const_value_attr.
	(determine_prefix): Detect and break loops created by RCVT's debug
	info.
	(maybe_queue_comp_unit): Bail out early if reading partial
	symbols.
	(follow_die_offset): Load full CU if we have no dies.
	* dwarf2loc.c (dwarf2_evaluate_loc_desc): Make public.
	* dwarf2loc.h (dwarf2_evaluate_loc_desc): Declare.
2010-08-12 19:55:38 +00:00
Pedro Alves
ce1a5b52ee Really commit server.c bits of 2010-08-09's change... 2010-08-12 15:16:12 +00:00
gdbadmin
36d427c454 *** empty log message *** 2010-08-12 00:00:03 +00:00
Phil Muldoon
ca5c20b6d3 2010-08-11 Tom Tromey <tromey@redhat.com>
Phil Muldoon  <pmuldoon@redhat.com>

	* python/python.c (gdbpy_run_events): New function.
	(gdbpy_post_event): Likewise.
	(gdbpy_initialize_events): Likewise.
	(_initialize_python): Call gdbpy_initialize_events.


2010-08-11  Tom Tromey  <tromey@redhat.com>
            Phil Muldoon <pmuldoon@redhat.com>

	* gdb.texinfo (Basic Python): Describe post_event API.

2010-08-11  Phil Muldoon  <pmuldoon@redhat.com>

	* gdb.python/python.exp (gdb_py_test_multiple): Add gdb.post_event
	tests.
2010-08-11 20:54:12 +00:00
Ken Werner
7346b668d7 gdb/ChangeLog:* gdb/valarith.c (vector_binop): New function.(scalar_binop): Likewise.(value_binop): Call scalar_binop or vector_binop depending on the types.* gdb/eval.c (ptrmath_type_p): Return 0 in case of TYPE_VECTOR.(evaluate_subexp_with_coercion): Add vector check to not convert vectorsto pointers.* gdb/value.c (coerce_array): Add vector check to not coerce vectors.testsuite/ChangeLog:* gdb.base/Makefile.in (EXECUTABLES): Add gnu_vector.* gdb.base/gnu_vector.c: New File.* gdb.base/gnu_vector.exp: Likewise. 2010-08-11 16:48:26 +00:00
Thomas Schwinge
3e4c123525 2010-08-11 Thomas Schwinge <thomas@codesourcery.com>
* linux-low.c (linux_wait_1): Correctly return the ptid of the child
	after its termination.
2010-08-11 15:53:04 +00:00
Tom Tromey
62183e15d8 2010-08-11 Brad Roberts <braddr@puremagic.com>
* d-lang.c (extract_identifiers): Handle multiple digits.
2010-08-11 15:41:37 +00:00
Jan Kratochvil
39d7b0e292 gdb/
Code cleanup.
	* dummy-frame.c (dummy_frame_unwinder): Remove its static qualifier.
	Rename to dummy_frame_unwind.
	(dummy_frame_unwind): Remove.
	* dummy-frame.h (dummy_frame_unwind): Reference directly the struct.
	* frame-unwind.c (frame_unwind_init): Use address of
	dummy_frame_unwind and inline_frame_unwind.
	* frame.c (create_sentinel_frame): Use address of
	sentinel_frame_unwind.
	* inline-frame.c (inline_frame_unwinder): Rename to
	inline_frame_unwind.
	(inline_frame_unwind): Remove.
	* inline-frame.h (inline_frame_unwind): Reference directly the struct.
	* sentinel-frame.c (sentinel_frame_unwinder): Rename to
	sentinel_frame_unwind.
	(sentinel_frame_unwind): Remove.
	* sentinel-frame.h (sentinel_frame_unwind): Reference directly the
	struct.
2010-08-11 13:24:32 +00:00
Jan Kratochvil
9f9a8002f0 gdb/
Code cleanup.
	* frame-unwind.c (frame_unwind_find_by_frame): Remove the return type
	and returned value.  New comment from frame-unwind.h.
	* frame-unwind.h (frame_unwind_find_by_frame): Remove the return type.
	Extend the comment.
	* frame.c (get_frame_id, frame_unwind_register_value)
	(create_new_frame, get_prev_frame_1, frame_unwinder_is)
	(get_frame_type, frame_unwind_arch): Do not use the return value of
	frame_unwind_find_by_frame.
2010-08-11 13:22:57 +00:00
Phil Muldoon
cb2e07a6f0 2010-08-11 Phil Muldoon <pmuldoon@redhat.com>
Thiago Jung Bauermann  <bauerman@br.ibm.com>
	    Tom Tromey  <tromey@redhat.com>

	* python/python.c (gdbpy_solib_address):  New function.
	(gdbpy_decode_line): Likewise.

2010-08-11  Phil Muldoon  <pmuldoon@redhat.com>

	* gdb.texinfo (Basic Python): Describe solib_address and
          decode_line Python APIs

2010-08-11  Phil Muldoon  <pmuldoon@redhat.com>

	* gdb.python/python.c: New File.
	* gdb.python/python-sl.c: New File.
	* gdb.python/python.exp: Test solib_address and decode_line
	* functions.
2010-08-11 12:48:24 +00:00
gdbadmin
ea63ca6fce *** empty log message *** 2010-08-11 00:00:04 +00:00
Tom Tromey
464b3efb95 * gdb.texinfo (Pretty Printing API): Document
gdb.default_visualizer.
2010-08-10 20:25:30 +00:00
Tom Tromey
c29c521f43 gdb
Revert gdb-add-index addition:
	* Makefile.in (install-only): Don't install gdb-add-index.
	* gdb-add-index.sh: Remove.
gdb/doc
	Revert gdb-add-index addition:
	* gdb.texinfo (Index Files): Don't document gdb-add-index.
2010-08-10 18:35:53 +00:00
Kevin Buettner
0c012db1eb * remote-sim.c (gdbsim_xfer_inferior_memory): Replace
`target_has_execution' check with `to_has_memory' check.
	(gdbsim_has_all_memory, gdbsim_has_memory): New functions.
	(init_gdbsym_ops): Initialize relevant fields of `gdbsim_ops'
	with `gdbsim_has_all_memory' and `gdbsim_has_memory'.
2010-08-10 04:39:26 +00:00
Kevin Buettner
db04efe6af * remote-sim.c (program_loaded, gdbsim_desc, remote_sim_ptid)
(resume_siggnal, resume_step): Move these static globals...
	(struct sim_inferior_data): ...into this new struct.
	(sim_inferior_data_key, next_pid, sim_argv, gdbsim_is_open):
	New static globals.
	(gdb_callback, callbacks_initialized): Move these globals to
	a point earlier in the file.
	(check_for_duplicate_sim_descriptor, get_sim_inferior_data)
	(get_sim_inferior_data_by_ptid, sim_inferior_data_cleanup)
	(gdbsim_close_inferior, gdbsim_resume_inferior)
	(gdbsim_stop_inferior): New functions.
	(SIM_INSTANCE_NOT_NEEDED, SIM_INSTANCE_NEEDED, INITIAL_PID):
	New constants.
	(gdbsim_fetch_register, gdbsim_store_register, gdbsim_load)
	(gdbsim_create_inferior, gdbsim_open, gdbsim_close, gdbsim_resume)
	(gdbsim_stop, gdbsim_cntrl_c, gdbsim_wait)
	(gdbsim_xfer_inferior_memory, gdbsim_files_info)
	(gdbsim_mourn_inferior, simulator_command, gdbsim_thread_alive,
	(gdbsim_pid_to_str): Invoke `get_sim_inferior_data' to set
	new local variable `sim_data' in each of these functions.  Use
	`sim_data' to reference former globals `program_loaded',
	`gdbsim_desc', `remote_sim_ptid', `resume_siggnal', and
	`resume_step'.
	(gdbsim_open): Remove local variable `argv'.  Put results of call
	to `gdb_buildargv' in `sim_argv' rather than in `argv'.  Don't
	make a cleanup for it.  Free it though when a sim instance cannot
	be obtained.
	(gdbsim_close): Free sim_argv and null it out as appropriate.
	Close sim instances in all inferiors.
	(gdbsim_cntrl_c): Stop all inferiors.
	(gdbsim_wait):
	(_initialize_remote_sim): Initialize `sim_inferior_data_key'.
2010-08-10 00:19:26 +00:00
gdbadmin
a8d1ba1945 *** empty log message *** 2010-08-10 00:00:33 +00:00
Sami Wagiaalla
e37fd15a52 Complete symbol construction before adding to pending list.
2010-08-09  Sami Wagiaalla  <swagiaal@redhat.com>

	* dwarf2read.c (new_symbol): Add symbol to variable list at end of
	function after symbol construction is complete.
	Do the same for template symbol addition to template_symbols list.
2010-08-09 20:34:06 +00:00
Sami Wagiaalla
45c58896fc Fixed stabs cplus_specific issue
2010-08-09  Sami Wagiaalla  <swagiaal@redhat.com>

	* symtab.c (symbol_get_demangled_name): Remove assertion and
	return NULL when language_specific.cplus_specific is not initialized.
	* stabsread.c (define_symbol): Set the name before calling
	cp_scan_for_anonymous_namespaces.
2010-08-09 20:13:51 +00:00
Sami Wagiaalla
33e5013ed2 create and use symbol_set_language.
2010-08-09  Sami Wagiaalla  <swagiaal@redhat.com>

	* symtab.h: Renamed SYMBOL_INIT_LANGUAGE_SPECIFIC to
	SYMBOL_SET_LANGUAGE.
	(symbol_init_language_specific): Renamed to symbol_set_language.
	* symtab.c (symbol_init_language_specific): Removed redundant check
	for language_cplus.
	Renamed to symbol_set_language.
	* stabsread.c (define_symbol): Updated.
	(read_enum_type): Updated
	* psymtab.c (add_psymbol_to_bcache): Updated.
	* minsyms.c (install_minimal_symbols): Updated.
	* coffread.c (process_coff_symbol): SYMBOL_SET_LANGUAGE instead of
	SYMBOL_LANGUAGE to set the language.
	* minsyms.c (prim_record_minimal_symbol_full): Ditto.
	* mdebugread.c (new_symbol): Ditto.
	* cp-namespace.c (check_one_possible_namespace_symbol): Ditto.
	* dwarf2read.c (new_symbol_full): Ditto.
	* jv-lang.c (add_class_symbol): Ditto.
2010-08-09 19:42:48 +00:00
Pedro Alves
1971b03393 * linux-low.c (gdb_wants_lwp_stopped): Delete.
(gdb_wants_all_stopped): Delete.
	(linux_wait_1): Don't call them.
	* server.c (handle_v_cont): Tag all threads as want-stopped.
	(gdb_wants_thread_stopped): Fix comments.  Tag the thread that
	stopped as "client-wants-stopped".
2010-08-09 14:59:23 +00:00
gdbadmin
43c32ed05e *** empty log message *** 2010-08-09 00:00:03 +00:00
gdbadmin
bf36b2c754 *** empty log message *** 2010-08-08 00:00:34 +00:00
Jan Kratochvil
5da1313be2 gdb/
* defs.h (make_cleanup_restore_uinteger, make_cleanup_restore_ui_file)
	(make_cleanup_restore_page_info)
	(set_batch_flag_and_make_cleanup_restore_page_info): New declarations.
	* gdbcmd.h (execute_command_to_string): New declaration.
	* python/python.c (struct restore_ui_file_closure, restore_ui_file)
	(make_cleanup_restore_ui_file): Move to utils.c
	(execute_gdb_command) <to_string>: Move ...
	* top.c (execute_command_to_string): ... here.  Call
	set_batch_flag_and_make_cleanup_restore_page_info.
	* utils.c (make_cleanup_restore_integer): New source file blank line.
	(make_cleanup_restore_uinteger): New.
	(struct restore_ui_file_closure, do_restore_ui_file)
	(make_cleanup_restore_ui_file): Move here from python/python.c.
	(init_page_info) <batch_flag>
	(do_restore_page_info_cleanup, make_cleanup_restore_page_info)
	(set_batch_flag_and_make_cleanup_restore_page_info): New.

gdb/testsuite/
	* gdb.python/python.exp (show height, set height 10)
	(verify pagination beforehand, verify pagination beforehand: q)
	(gdb.execute does not page, verify pagination afterwards)
	(verify pagination afterwards: q): New.

gdb/doc/
	* gdb.texinfo (Mode Options) <-batch>
	(Basic Python) <gdb.execute>: Describe setting width and height.
2010-08-07 15:00:39 +00:00
gdbadmin
69742b7827 *** empty log message *** 2010-08-07 00:00:02 +00:00
Pedro Alves
c820c52a91 * thread.c (add_thread_silent): Use null_ptid instead of
minus_one_ptid while getting rid of stale inferior_ptid.
2010-08-06 19:45:58 +00:00
Corinna Vinschen
8da614df64 * dwarf2-frame.c (struct dwarf2_cie): Add ptr_size member.
Throughout, call read_encoded_value with ptr_size rather than addr_size.
	(decode_frame_entry_1): Remove redundant setting of
	addr_size.  Call gdbarch_dwarf2_addr_size rather than gdbarch_ptr_bit
	to determine addr_size in Dwarf versions < 4.  Set ptr_size dependent
	on examined frame section.  Add comment to explain why.
	* gdbarch.sh (dwarf2_addr_size): Define as variable.  Add lengthy
	comment to explain usage.
	* gdbarch.c: Regenerate.
	* gdbarch.h: Regenerate.

	* xstormy16-tdep.c (xstormy16_gdbarch_init): Set dwarf2_addr_size to 4.
2010-08-06 19:02:15 +00:00