Commit graph

14931 commits

Author SHA1 Message Date
Thiago Jung Bauermann
12453b93bd gdb/
2009-02-05  Tom Tromey  <tromey@redhat.com>
	    Thiago Jung Bauermann  <bauerman@br.ibm.com>

	* python/python.c (GdbMethods): Move to bottom of file.
	(get_parameter, execute_gdb_command, gdbpy_write,
	gdbpy_flush): Remove forward declarations.
	(eval_python_from_control_command): Fix error checking of function
	PyRun_SimpleString.  Fix error string.
	(python_command): Likewise.
	(execute_gdb_command): Added from_tty argument.

gdb/doc/
2009-02-05  Tom Tromey  <tromey@redhat.com>

	* gdb.texinfo (Basic Python): Document execute's from_tty
	argument.
2009-02-05 16:40:34 +00:00
Thiago Jung Bauermann
ae6a3a4c2a 2009-02-05 Thiago Jung Bauermann <bauerman@br.ibm.com>
* language.h (language_dfn): Add la_get_string member.
	(LA_GET_STRING): New macro.
	(default_get_string): New prototype.
	* language.c (default_get_string): New function.
	(unknown_language_defn, auto_language_defn, local_language_defn): Use
	default_get_string for la_get_string.
	* c-lang.c (c_get_string): New function.
	(c_language_defn, cplus_language_defn, asm_language_defn): Use
	c_get_string for la_get_string.
	(minimal_language_defn): Likewise
	* ada-lang.c (ada_language_defn): Likewise.
	* f-lang.c (f_language_defn): Use default_get_string for
	la_get_string.
	* jv-lang.c (java_language_defn): Likewise.
	* m2-lang.c (m2_language_defn): Likewise.
	* objc-lang.c (objc_language_defn): Likewise.
	* p-lang.c (p_language_defn): Likewise.
	* scm-lang.c (scm_language_defn): Likewise.
	* typeprint.c (type_to_string): New function.
	* value.h (type_to_string): New prototype.
	* valprint.c (val_print_string): Factor out code for reading string
	from the inferior into its own function.  Put 2 spaces after period
	in comments.
	(read_string): New function.
	* valprint.h (read_string): New prototype.
2009-02-05 12:16:25 +00:00
Tom Tromey
fa8a61dc87 2009-01-07 Pierre Muller <muller@ics.u-strasbg.fr>
Tom Tromey  <tromey@redhat.com>

	PR breakpoints/8079:
	* breakpoint.c (print_one_breakpoint): Use exp_string field
	to display expression of watchpoints.
	(mention): Likewise.
	(watch_command_1): Remove trailing whitespace from expression.
	* printcmd.c (struct display) <exp_string>: New field.
	(display_command): Set exp_string.
	(free_display): Free exp_string.
	(clear_displays): Use free_display.
	(do_one_display): Print exp_string.
	(display_info): Likewise.
2009-02-05 00:13:43 +00:00
Thiago Jung Bauermann
08c637dee2 gdb/
2009-02-04  Tom Tromey  <tromey@redhat.com>
	    Thiago Jung Bauermann  <bauerman@br.ibm.com>
	    Phil Muldoon  <pmuldoon@redhat.com>

	* python/python-internal.h (gdbpy_get_value_from_history): Rename
	prototype to gdbpy_history.
	(gdbpy_is_string): Declare.
	(python_string_to_host_string): Declare.
	* python/python-utils.c (gdbpy_is_string): New function.
	(unicode_to_encoded_string): New function.
	(unicode_to_target_string): Use it.
	(python_string_to_host_string): New function.
	* python/python-value.c (valpy_address): New function.
	(convert_value_from_python): Use gdbpy_is_string.  Change to throw
	Python exception instead of a GDB exception on error.  Properly check
	Python booleans.
	(valpy_getitem): Convert field name to host string.  Handle array
	accesses.  Adapt to new behaviour of convert_value_from_python.
	(valpy_new): Adapt to new behaviour of convert_value_from_python.
	(enum valpy_opcode) <VALPY_LSH, VALPY_RSH, VALPY_BITAND,
	VALPY_BITXOR, VALPY_BITOR>: New constants.
	(valpy_binop): Update.  Adapt to new behaviour of
	convert_value_from_python.
	(valpy_invert): New function.
	(valpy_lsh): Likewise.
	(valpy_rsh): Likewise.
	(valpy_and): Likewise.
	(valpy_or): Likewise.
	(valpy_xor): Likewise.
	(valpy_richcompare): Call convert_value_from_python instead of doing
	conversions itself.
	(is_intlike, valpy_int, valpy_long, valpy_float): New functions.
	(gdbpy_get_value_from_history): Rename
	function to gdbpy_history.
	(gdbpy_initialize_values): Don't set tp_new.
	(value_object_type): Add valpy_new.
	(value_object_methods): Add `address' entry.
	(value_object_as_number): Update for new methods.
	* python/python.c (GdbMethods): Rename entry from
	`get_value_from_history' to `history'.

gdb/doc/
2009-02-04  Tom Tromey  <tromey@redhat.com>

	* gdb.texinfo (Basic Python): Document gdb.history.

gdb/testsuite/
2009-02-04  Tom Tromey  <tromey@redhat.com>
	    Thiago Jung Bauermann  <bauerman@br.ibm.com>

	* gdb.python/python-value.exp: Use `gdb.history' instead of
	`gdb.value_from_history'.
	(test_value_numeric_ops): Add test for conversion of enum constant.
	* gdb.python/python-value.c (enum e): New type.
	(evalue): New global.
	(main): Use argv.
2009-02-04 21:55:40 +00:00
Jerome Guitton
538e13a60c Fix a type in the last entry. 2009-02-04 17:48:45 +00:00
Jerome Guitton
b530497149 * ada-lang.c (ada_template_to_fixed_record_type_1): Check size
of type to guard against a crash.
2009-02-04 17:46:36 +00:00
Jerome Guitton
33d502b41a * value.c (value_from_contents_and_address): Always return
a lval_memory value, even if address is null.
2009-02-04 15:49:30 +00:00
Tristan Gingold
9f08ae4f53 2008-12-05 Tristan Gingold <gingold@adacore.com>
* i386-darwin-tdep.c (darwin_sigtramp_p): New function.
	(i386_darwin_sigcontext_addr): Ditto.
	(amd64_darwin_sigcontext_addr): Ditto.
	(darwin_dwarf_signal_frame_p): Ditto.
	(i386_darwin_init_abi): Handle signal frames, use the const for
	sc_num_regs.
	(x86_darwin_init_abi_64): Ditto.
2009-02-04 15:10:50 +00:00
Tristan Gingold
4bd207efc8 2009-02-04 Tristan Gingold <gingold@adacore.com>
* i386-tdep.c (i386_sigtramp_p): Make it public.
	* i386-tdep.h (i386_sigtramp_p): Declare.
2009-02-04 14:49:41 +00:00
Tristan Gingold
4aa99a8802 (I forgot to commit the ChangeLog file in my last commit).
2009-02-04  Tristan Gingold  <gingold@adacore.com>

	* machoread.c (macho_symfile_read): Read minsymtab also from
	shared libraries.
	(macho_symfile_read): Try to read dwarf2 frame info from main
	object file, but not from OSO files.
	(macho_symfile_offsets): Update section names for latest BFD
	changes.
	* i386-darwin-tdep.c (i386_darwin_init_abi): Call set_solib_ops.
	(x86_darwin_init_abi_64): Ditto.
	* solib-darwin.c: New file.
	* solib-darwin.h: New file.
	* configure.tgt: Add solib.o solib-darwin.o for Darwin.
2009-02-04 14:48:38 +00:00
Jerome Guitton
4eb7c0169a Add a missing Changelog entry:
2009-01-28  Daniel Jacobowitz  <dan@codesourcery.com>
	    Jerome Guitton  <guitton@adacore.com>

	* configure, config.in: Regenerated.
	* configure.ac: Add --with-system-gdbinit.
	* main.c (get_init_files): New.
	(captured_main): Use get_init_files.  Load system gdbinit before
	$HOME/.gdbinit.
	(print_gdb_help): Print location of init files.
2009-02-04 11:41:44 +00:00
Tristan Gingold
7a848be1e4 2009-02-04 Tristan Gingold <gingold@adacore.com>
* solist.h (struct target_so_ops): Comment fallback behavior for
	operation same.
2009-02-04 08:42:11 +00:00
Tom Tromey
b32d97f3d2 * completer.c (add_struct_fields): Check type_name against NULL
before use.
2009-02-03 19:20:02 +00:00
Joel Brobecker
692263b89b * MAINTAINERS: Update Elena's email address. 2009-02-03 18:51:38 +00:00
Joel Brobecker
bfa149ac1e * breakpoint (update_watchpoint): Minor comment adjustment. 2009-02-03 01:09:35 +00:00
Tom Tromey
52e44b4398 Fix ChangeLog to point to the correct bug, PR gdb/9594.
gdb/testsuite
	* gdb.cp/cpcompletion.exp: Name the test "pr9594".
	* gdb.cp/pr2489.cc: Rename...
	* gdb.cp/pr9594.cc: ... to this.
2009-02-03 01:09:01 +00:00
Tom Tromey
1c71341a8f gdb
PR gdb/2489:
	* completer.c (count_struct_fields): Count method names.
	(add_struct_fields): Add matching method names.
gdb/testsuite
	* gdb.cp/Makefile.in (EXECUTABLES): Add pr2489.
	* gdb.cp/pr2489.cc: New file.
	* gdb.cp/cpcompletion.exp: New file.
2009-02-03 01:00:40 +00:00
Doug Evans
85541719ae * config/tcl.m4 (SC_PATH_TCLCONFIG): Don't exit 0 if tclconfig fails.
(SC_PATH_TKCONFIG): Don't exit 0 if tkconfig fails.
	(SC_LOAD_TCLCONFIG): Quote all uses of TCL_BIN_DIR, it may contain
	"# no Tcl configs found".
	(SC_LOAD_TKCONFIG): Similarily for TK_BIN_DIR.

	* gdb/configure.ac (gdbkt): Check both no_tcl/no_tk first, before
	doing any further tcl/tk configury.  Don't configure gdbtk if
	tcl or tk check fails.
	* gdb/aclocal.m4: Regenerate.
	* gdb/configure: Regenerate.
	* gdb/gdbtk/plugins/aclocal.m4: Regenerate.
	* gdb/gdbtk/plugins/configure: Regenerate.
2009-02-02 23:18:05 +00:00
Tom Tromey
a42952252f gdb
PR exp/9059:
	* valops.c (find_overload_match): Follow typedefs before taking
	address of object argument.
gdb/testsuite
	PR exp/9059:
	* gdb.cp/call-c.exp: Add regression test.
	* gdb.cp/call-c.cc (FooHandle): New typedef.
	(main): New variable 'handle'.
2009-02-02 21:50:13 +00:00
Doug Evans
f00150c95d * target.h (target_waitstatus_to_string): Declare.
* target.c (target_waitstatus_to_string): New function.  Copied from
	debug_to_wait.  Add missing entries for TARGET_WAITKIND_SYSCALL_ENTRY,
	TARGET_WAITKIND_SYSCALL_RETURN, TARGET_WAITKIND_IGNORE,
	TARGET_WAITKIND_NO_HISTORY.
	(debug_to_wait): Call it.
	* infrun.c (wait_for_inferior): If debug_infrun, print result of
	target_wait.
	(fetch_inferior_event): Ditto.
2009-02-01 23:31:03 +00:00
Tom Tromey
5abdf4bdf2 * Makefile.in (HFILES_NO_SRCDIR): Remove i386-cygwin-tdep.h. 2009-01-30 22:14:52 +00:00
Vladimir Prus
592375cda9 PR 8145.
* thread.c (do_captured_list_thread_ids): Report the current
	thread id.
2009-01-30 18:43:05 +00:00
Vladimir Prus
41447f92e2 * breakpoint.c (create_breakpoint, create_breakpoints)
(break_command_really, set_breakpoint): New parameter enabled.
	(create_breakpoint, break_command_really): Make breakpoint
	disabled if so requested.
	* breakpoint.h (set_breakpoint): New parameter enabled.
	* mi/mi-cmd-break.c (mi_cmd_break_insert): Handle the -d option.
2009-01-30 18:28:01 +00:00
Doug Evans
35669430c8 * opcode/i386.h: Add multiple inclusion protection.
(EAX_REG_NUM,ECX_REG_NUM,EDX_REGNUM,EBX_REG_NUM,ESI_REG_NUM)
	(EDI_REG_NUM): New macros.
	(MODRM_MOD_FIELD,MODRM_REG_FIELD,MODRM_RM_FIELD): New macros.
	(SIB_SCALE_FIELD,SIB_INDEX_FIELD,SIB_BASE_FIELD): New macros.
	(REG_PREFIX_P): New macro.

	* amd64-tdep.h (amd64_displaced_step_copy_insn): Declare.
	(amd64_displaced_step_fixup): Declare.
	* amd64-tdep.c: #include opcode/i386.h, dis-asm.h.
	(amd64_arch_regmap): Move out of amd64_analyze_stack_align
	and make static global.
	(amd64_arch_regmap_len): New static global.
	(amd64_arch_reg_to_regnum): New function.
	(struct amd64_insn): New struct.
	(struct displaced_step_closure): New struct.
	(onebyte_has_modrm,twobyte_has_modrm): New static globals.
	(rex_prefix_p,skip_prefixes)
	(amd64_insn_length_fprintf,amd64_insn_length_init_dis)
	(amd64_insn_length,amd64_get_unused_input_int_reg)
	(amd64_get_insn_details,fixup_riprel,fixup_displaced_copy)
	(amd64_displaced_step_copy_insn)
	(amd64_absolute_jmp_p,amd64_absolute_call_p,amd64_ret_p)
	(amd64_call_p,amd64_breakpoint_p,amd64_syscall_p)
	(amd64_displaced_step_fixup): New functions.
	* amd64-linux-tdep.c: #include arch-utils.h.
	(amd64_linux_init_abi): Install displaced stepping support.

	* gdb.arch/amd64-disp-step.S: New file.
	* gdb.arch/amd64-disp-step.exp: New file.
	* gdb.arch/i386-disp-step.S: New file.
	* gdb.arch/i386-disp-step.exp: New file.
2009-01-29 00:29:57 +00:00
Pedro Alves
7df3ce4769 * corefile.c (generic_search): Delete disabled code.
* gdbcore.h (generic_search): Delete declaration.
2009-01-28 00:09:49 +00:00
Pedro Alves
77435e4c95 * linux-nat.c (linux_child_follow_fork): Copy attach_flag from the
parent to the child.
	* inf-ttrace.c (inf_ttrace_follow_fork): Likewise.
	* inf-ptrace.c (inf_ptrace_follow_fork): Likewise.  Use
	remove_breakpoints to remove breakpoints from the parent.
2009-01-26 22:34:55 +00:00
Pedro Alves
7488432fc2 Add forgotten PR tags:
PR backtrace/9458, PR backtrace/8864
2009-01-26 19:15:24 +00:00
Pedro Alves
1e275f793e * frame.c (create_new_frame): Update the frame's cached PC before
finding its unwinder.  Use frame_id_build to build the new frame's
	id.
	* stack.c (parse_frame_specification_1): Correct setting ``addrs''
	array values from the ``args'' array values.
2009-01-26 19:09:58 +00:00
Pedro Alves
1deafd4ea5 * gdbtypes.c (alloc_type, alloc_type_instance, create_range_type)
(create_array_type, create_set_type, init_flags_type)
	(copy_type_recursive): Replace pairs of calls to XALLOC and memset
	with a call to XZALLOC or XCALLOC, and pairs of calls to
	obstack_alloc and memset with a call to OBSTACK_ZALLOC.
2009-01-26 18:57:44 +00:00
Pedro Alves
3c16cced40 gdb/
Add "maint set|show internal-error|internal-warning quit|corefile
	ask|yes|no" commands.

	PR gdb/7580:
	* utils.c (internal_problem_ask, internal_problem_yes)
	(internal_problem_no, internal_problem_modes): New.
	(struct internal_problem): Remove FIXME.  Make should_quit and
	should_dump_core types to char *.
	(internal_vproblem, internal_error_problem)
	(internal_warning_problem): Adjust.
	(set_internal_problem_cmd, show_internal_problem_cmd): New dummy
	functions.
	(add_internal_problem_command): New.
	(_initialize_utils): New.

gdb/doc/
	PR gdb/7580:
	* gdb.texinfo (Maintenance Commands): Document "maint set|show
	internal-error|internal-warning quit|corefile ask|yes|no".
2009-01-26 16:24:27 +00:00
Pedro Alves
616d7dd2fe * infcmd.c (program_info): Use paddress instead of casting stop_pc
to unsigned long.
2009-01-25 23:35:51 +00:00
Pedro Alves
0516318b5d * infrun.c (normal_stop): Don't call
deprecated_update_frame_pc_hack.
	* frame.c (deprecated_update_frame_pc_hack)
	(deprecated_update_frame_base_hack): Delete, and ...
	(create_new_frame): ... inline here.
	* frame.h (deprecated_update_frame_pc_hack)
	(deprecated_update_frame_base_hack): Delete declarations.
2009-01-24 19:17:24 +00:00
Pedro Alves
1e8fb9762b 2009-01-23 Pedro Alves <pedro@codesourcery.com>
* cli/cli-decode.c (add_setshow_zuinteger_cmd): New.
	* cli/cli-setshow.c (do_setshow_command): Handle it.
	* command.h (enum var_types): Add var_zuinteger.
	(add_setshow_zuinteger_cmd): Declare.

	* valprint.c (_initialize_valprint): Change the set input-radix
	and set output-radix commands to zuinteger type.

2009-01-23  Pedro Alves  <pedro@codesourcery.com>

	* gdb.base/radix.exp: Add tests to ensure that that set
	input-radix 0 and set output-radix 0 are really rejected.
2009-01-23 18:47:46 +00:00
Pedro Alves
dd7e2d2bc7 2009-01-23 Pedro Alves <pedro@codesourcery.com>
PR gdb/9664:
	* infrun.c (normal_stop): Tag threads as stopped, and run the
	hook-stop before printing the stack frame.

2009-01-23  Pedro Alves  <pedro@codesourcery.com>

	PR gdb/9664:
	* gdb.base/hook-stop-frame.c, gdb.base/hook-stop-frame.exp: New.
2009-01-23 15:47:03 +00:00
Pedro Alves
392452f69e 2009-01-22 Pedro Alves <pedro@codesourcery.com>
PR c++/9631:
	* gnu-v3-abi.c (gnuv3_baseclass_offset): Call check_typedef on
	vbasetype.

2009-01-22  Pedro Alves  <pedro@codesourcery.com>

	PR c++/9631:
	* gdb.cp/pr9631.cc, gdb.cp/pr9631.exp: New.
2009-01-22 22:50:39 +00:00
Kazu Hirata
f6a96b83ac * gdb/procfs.c (info_mappings_callback): Cast map->pr_size to
unsigned long.
2009-01-21 01:20:15 +00:00
Daniel Jacobowitz
5d277928c8 Fix changelog year typo. 2009-01-20 15:35:54 +00:00
Daniel Jacobowitz
a12cc160ab PR gdb/9346
* infcmd.c (signal_command): Do not specify a resume PC.

	testsuite/
	PR gdb/9346
	* gdb.base/interrupt.c (sigint_handler): New.
	(main): Install a SIGINT handler if SIGNALS is defined.  Exit
	on error.
	* gdb.base/interrupt.exp: Define SIGNALS unless gdb,nosignals.
	Test "signal SIGINT".
2009-01-20 15:33:14 +00:00
Doug Evans
b89667ebd4 * dummy-frame.c (dummy_frame): Replace regcache member with
caller_state.
	(dummy_frame_push): Replace caller_regcache arg with caller_state.
	All callers updated.
	(remove_dummy_frame,pop_dummy_frame,lookup_dummy_frame): New fns.
	(dummy_frame_pop): Rewrite.  Verify requested frame is in the
	dummy frame stack.  Restore program state.
	(cleanup_dummy_frames): Rewrite.
	(dummy_frame_sniffer): Update.  Make static.
	* dummy-frame.h (regcache,frame_info): Delete forward decls.
	(inferior_thread_state): New forward decl.
	(dummy_frame_push): Update prototype.
	* frame.c (frame_pop): dummy_frame_pop now does all the work for
	DUMMY_FRAMEs.
	* infcall.c (breakpoint_auto_delete_contents): Delete.
	(get_function_name,run_inferior_call): New fns.
	(call_function_by_hand): Simplify by moving some code to
	get_function_name, run_inferior_call.  Inferior function call wrapped
	in TRY_CATCH so there's less need for cleanups and all exits from
	proceed are handled similarily.  Detect program exit.
	Detect program stopping in a different thread.
	Make error messages more consistent.
	* inferior.h (inferior_thread_state): Declare (opaque type).
	(save_inferior_thread_state,restore_inferior_thread_state,
	make_cleanup_restore_inferior_thread_state,
	discard_inferior_thread_state, get_inferior_thread_state_regcache):
	Declare.
	(save_inferior_status): Update prototype.
	* infrun.c: (normal_stop): When stopped for the completion of an
	inferior function call, verify the expected stack frame kind.
	(inferior_thread_state): New struct.
	(save_inferior_thread_state,restore_inferior_thread_state,
	do_restore_inferior_thread_state_cleanup,
	make_cleanup_restore_inferior_thread_state,
	discard_inferior_thread_state,
	get_inferior_thread_state_regcache): New functions.
	(inferior_status): Move stop_signal, stop_pc, registers to
	inferior_thread_state.  Remove restore_stack_info.
	(save_inferior_status): Remove arg restore_stack_info.
	All callers updated.  Remove saving of state now saved by
	save_inferior_thread_state.
	(restore_inferior_status): Remove restoration of state now done by
	restore_inferior_thread_state.
	(discard_inferior_status): Remove freeing of registers, now done by
	discard_inferior_thread_state.

	* gdb.base/break.exp: Update expected gdb output.
	* gdb.base/sepdebug.exp: Ditto.
	* gdb.mi/mi-syn-frame.exp: Ditto.
	* gdb.mi/mi2-syn-frame.exp: Ditto.

	* gdb.base/call-signal-resume.exp: New file.
	* gdb.base/call-signals.c: New file.
	* gdb.base/unwindonsignal.exp: New file.
	* gdb.base/unwindonsignal.c: New file.
	* gdb.threads/interrupted-hand-call.exp: New file.
	* gdb.threads/interrupted-hand-call.c: New file.
	* gdb.threads/thread-unwindonsignal.exp: New file.
2009-01-19 19:05:01 +00:00
Pedro Alves
aefc706471 * tui/tui-disasm.c (tui_vertical_disassem_scroll): Scroll one line
at a time, times NUM_TO_SCROLL.
	* tui/tui-winsource.c (tui_horizontal_source_scroll): Don't try to
	fetch the selected frame if there is no stack.
2009-01-18 21:28:39 +00:00
Pedro Alves
29f49a6a4f PR gdb/9747:
* gdbthread.h (finish_thread_state, finish_thread_state_cleanup):
	Declare.
	* thread.c (finish_thread_state, finish_thread_state_cleanup): New.
	* infrun.c (wait_for_inferior, fetch_inferior_event): If an error
	is thrown while handling an event, finish the thread state.
	(normal_stop): Use finish_thread_state cleanup.
	* infcmd.c (run_command_1): If an error is thrown while starting
	the inferior, finish the thread state.
2009-01-18 17:42:16 +00:00
Pedro Alves
e7243d7347 * tui/tui-winsource.c (tui_update_breakpoint_info): In asm layout,
skip breakpoints without a location (pending breakpoints).
2009-01-18 17:05:49 +00:00
Pedro Alves
e74994b521 * hppa-hpux-tdep.c (hppa_hpux_write_pc): Remove 'return'. 2009-01-18 01:24:12 +00:00
Nick Roberts
8405c36e89 *** empty log message *** 2009-01-17 20:39:33 +00:00
Joel Brobecker
b8bfd3ed7f * NEWS: Document x86_64/MinGW as a new native configuration. 2009-01-16 04:31:09 +00:00
Joel Brobecker
2dde91e9c3 * NEWS: Move the documentation of "info os processes" to
the appropriate section (documenting the new commands).
2009-01-16 04:28:25 +00:00
Doug Evans
0842e7871a fix another cut-n-paste error 2009-01-15 22:18:54 +00:00
Doug Evans
f626972c20 fix cut-n-paste errors in previous checkin 2009-01-15 22:10:05 +00:00
Doug Evans
5436304513 * target.h (target_signal_to_string): Make return type const char *.
(target_signal_to_name): Ditto.
	(target_signal_from_name): Make arg const char *.
	* thread-db.c (thread_db_err_str): Make return type const char *.
	* utils.c (perror_with_name): Make arg const char *.
	* infrun.c (sig_print_info): Update.

	* signals/signals.c (signals): Make array and struct members const.
	(target_signal_to_string): Make return type const char *.
	(target_signal_to_name): Ditto.
	(target_signal_from_name): Make arg const char *.

	* gdbserver/gdbreplay.c (perror_with_name): Make arg const char *.
	* gdbserver/server.h (target_signal_to_name): Make return type
	const char *.
2009-01-15 22:07:20 +00:00
Ulrich Weigand
572d275cf7 * solist.h (struct target_so_ops): New member bfd_open.
(solib_find): Add prototype.
	(solib_bfd_fopen): Add prototype.
	* solib.c (solib_find, solib_bfd_fopen): New functions, extracted
	from solib_bfd_open.
	(solib_bfd_open): Use ops->bfd_open override if present.  Call
	solib_find and solib_bfd_open otherwise.

	* objfiles.h (OBJF_KEEPBFD): New define.
	* objfiles.c (free_objfile): Do not close BFD if OBJF_KEEPBFD
	objfile flag is set.
	* solib.c (symbol_add_stub): Do not allocate second BFD for
	shared library; use OBJF_KEEPBFD flag on solib objfile.
2009-01-15 16:35:22 +00:00
Ulrich Weigand
0701b27131 * frame.c (get_frame_arch): Abort if called with NULL this_frame. 2009-01-15 15:38:57 +00:00
Ulrich Weigand
61212c0fb1 * value.h (address_of_variable): Add prototype.
(locate_var_value): Remove prototype.

	* findvar.c (read_var_value): Do not attempt to default frame
	to selected frame.
	(locate_var_value): Remove function.
	* valops.c (value_of_variable): Retrieve selected frame for
	symbols that require a frame when called with NULL block.
	* valops.c (address_of_variable): New function.

	* eval.c (evaluate_subexp_for_address): Call address_of_variable
	instead of calling locate_var_value.
	(evaluate_subexp_with_coercion): Likewise.
2009-01-15 15:38:07 +00:00
Daniel Jacobowitz
adb483feb8 * NEWS: Document "define" for prefixed commands.
* cli/cli-cmds.c (show_user): Update calls to show_user_1.  Call
	show_user_1 for prefix commands.
	* cli/cli-decode.c (help_cmd_list): Recurse for "help user-defined".
	* cli/cli-script.c (validate_comname): Rewrite to handle prefix
	commands.  Return the containing command list.
	(define_command, document_command): Update to handle prefix commands.
	(show_user_1): Add prefix and name arguments.  Handle prefix
	commands.
	* cli/cli-script.h (show_user_1): Update prototype.

	doc/
	* gdb.texinfo (Define, Hooks): Document prefix command support.

	testsuite/
	* gdb.base/define.exp: Test defining and hooking prefix commands.
	* gdb.python/python.exp: Update test for "show user" output.
2009-01-14 20:40:09 +00:00
Kai Tietz
a32d7317c7 2009-01-14 Kai Tietz <kai.tietz@onevision.com>
* mingw-ser.c (console_select_thread): Add return to make
	compiler happy.
	(pipe_select_thread): Likewise.
	(file_select_thread): Likewise.
2009-01-14 20:21:09 +00:00
Pedro Alves
041d0fd7f4 * mi/mi-main.c (mi_cmd_execute): Clean up parenthesis mess from
previous change.
2009-01-14 15:21:55 +00:00
Pedro Alves
dc1981d769 * remote.c (extended_remote_mourn_1): Invalidate our notion of
current general thread.
2009-01-14 15:00:19 +00:00
Pedro Alves
244bf9aeb1 * mi/mi-main.c (mi_cmd_execute): Also allow -list-thread-groups
without a live selected thread.
2009-01-14 14:22:01 +00:00
Joel Brobecker
e4d013fc0f Update the copyright notice of some of the files I missed
in the previous copyright update.
2009-01-14 10:53:10 +00:00
Joel Brobecker
a588db63bd * windows-nat.c (handle_unload_dll): Use %p to print the DLL
base address instead of casting it to DWORD.
2009-01-14 05:27:48 +00:00
Ulrich Weigand
77a732d97f * dwarf2loc.c (dwarf2_evaluate_loc_desc): Do not call get_frame_arch
for NULL frame pointers.
2009-01-13 18:01:49 +00:00
Joel Brobecker
773698b58c * utils.c (host_address_to_string): Reimplement in a way that
avoids the cast of the address to long.
2009-01-13 12:06:59 +00:00
Joel Brobecker
9918cab95e * mdebugread.c (parse_symbol): Save the symbol private data
using SYMBOL_VALUE_BYTES instead of SYMBOL_VALUE.
        (psymtab_to_symtab_1): Likewise.
        (parse_procedure): Declare variable "e" only in the scope
        where it is used. Extract the symbol private data using
        SYMBOL_VALUE_BYTES.
2009-01-13 11:52:43 +00:00
Pedro Alves
74bcbdf3ce 2009-01-13 Jim Blandy <jimb@codesourcery.com>
Abstract out common code for copying value locations.

	* value.h (set_value_component_location): New declaration.
	* value.c (set_value_component_location): New function.
	(value_primitive_field): Use it.
	* valarith.c (value_subscript, value_subscripted_rvalue): Same.
	* valops.c (search_struct_field, value_slice): Same.
	* ada-lang.c (coerce_unspec_val_to_type)
	(ada_value_primitive_packed_val): Same.
2009-01-13 10:34:31 +00:00
Joel Brobecker
d7dc3873fb * MAINTAINERS (GLOBAL MAINTAINERS): Add Tom Tromey. 2009-01-13 10:04:12 +00:00
Christopher Faylor
dc05df573e * amd64-windows-nat.c Rename gdb-specific win32_* to windows_* throughout.
* i386-cygwin-tdep.c: Ditto.
* i386-windows-nat.c: Ditto.
* windows-nat.h: Ditto.
* windows-tdep.c: Ditto.
* windows-tdep.h: Ditto.
* windows-nat.c: Ditto.
(cygwin_load_start): Redefine as CORE_ADDR.
(cygwin_load_end): Ditto.
(windows_make_so): Coerce result of address arithmetic to to uintptr_t before
coercing to CORE_ADDR to avoid a compiler warning.
(handle_exception): Define addr as CORE_ADDR and coerce ExceptionAddress to
uintptr_t before assigining to avoid a compiler warning.
* config/djgpp/fnchange.lst: Add mappings for recently renamed windows files.
2009-01-13 04:14:07 +00:00
Christopher Faylor
31b060a20f Fix linking with --enable-targets=all:
* Makefile.in (ALL_TARGET_OBS): Add windows-tdep.o.
(HFILES_NO_SRCDIR): Add windows-tdep.h.
(ALLDEPFILES): Add windows-tdep.c.
* win32-tdep.h: Delete.
* windows-tdep.h: Rename from win32-tdep.h.
* win32-nat.h: Delete.
* windows-nat.h: Rename from win32-nat.h.
* win32-nat.c: Delete.
* windows-nat.c: Rename from win32-nat.c.
* win32-termcap.c: Delete.
* windows-termcap.c: Rename from win32-termcap.c.
* amd64-windows-nat.c: Handle rename from win32-nat.h -> windows-nat.h.
* configure.ac: Handle rename from win32-termcap.c -> windows-termcap.c.
* configure: Regenerate.
* gdb_curses.h: Change comment to reflect rename from win32-termcap.c ->
windows-termcap.c.
* i386-cygwin-tdep.c: Handle rename from win32-tdep.h -> windows-tdep.h.
* i386-windows-nat.c: Refect rename from win32-nat.h -> windows-nat.h.
* windows-nat.c: Ditto.  Also reflect rename from from win32-tdep.h ->
windows-tdep.h.
(win32_make_so): Handle cygwin compiler warning due to change of load_addr from
DWORD to LPVOID.
(handle_load_dll): Use %p in format string to properly print address and avoid
a compiler warning.
(DEBUG_EXCEPTION_SIMPLE): Ditto.
(handle_exception): Ditto.
* windows-tdep.c: Handle rename from win32-tdep.h -> windows-tdep.h.
* config/i386/cygwin.mh: Handle rename from win32-nat.o -> windows-nat.o.
* config/i386/mingw.mh: Ditto.
* config/i386/mingw64.mh: Ditto.
2009-01-12 01:10:28 +00:00
Jan Kratochvil
0311118f96 * f-typeprint.c (f_type_print_varspec_suffix): Convert the autovariable
arrayprint_recurse_level to a parameter.  Update all the callers.  New
	comment at autovariables.
2009-01-11 21:39:02 +00:00
Jan Kratochvil
5f61c20e05 * gdbtypes.c (make_qualified_type, replace_type): Reformat to the GNU
coding style.
2009-01-11 16:03:08 +00:00
Joel Brobecker
53b715628b * target.c (target_xfer_partial): Use host_address_to_string to
print the address of readbuf and writebuf. Cast the address of
        elements inside the myaddr buffer into intptr_t.
        (deprecated_debug_xfer_memory): Use paddress to print memaddr.
        Cast the address of elements inside the myaddr buffer into
        intptr_t.
2009-01-11 13:23:42 +00:00
Joel Brobecker
d076129955 * amd64-windows-nat.c, amd64-windows-tdep.c: New files.
* config/i386/mingw64.mh, config/i386/nm-cygwin64.h: New files.
        * configure.host, configure.tgt: Add handling for x86_64/windows.
        * config/djgpp/fnchange.lst: Add entries for amd64-windows-nat.c
        and amd64-windows-tdep.c.
2009-01-11 13:15:56 +00:00
Joel Brobecker
bfb87e33ab * win32-tdep.h, win32-tdep.c: New files.
* i386-cygwin-tdep.h: Delete.
        * i386-cygwin-tdep.c: Include win32-tdep.h instead of
        i386-cygwin-tdep.h.
        (win32_xfer_shared_library): Delete.  Moved to win32-tdep.c.
        * win32-nat.c: Likewise.
        * configure.tgt: Add win32-tdep.o to the list of target object
        files for i386-cygwin and i386-mingw targets.
2009-01-11 13:10:44 +00:00
Joel Brobecker
7e63b4e466 * win32-nat.h: New file.
* win32-nat.c (mappings): Initialize to NULL.
        (win32_set_context_register_offsets): New function.
        * i386-windows-nat.c: New file.
        (mappings): Moved here from win32-nat.c.
        (_initialize_i386_windows_nat): New function.
        * config/i386/mingw.mh (NATDEPFILES): Add i386-windows-nat.o.
        * config/i386/cygwin.mh (NATDEPFILES): Likewise.
2009-01-11 04:13:57 +00:00
Andreas Schwab
25fc659104 * Makefile.in (init.c): Set LANG/LC_ALL to C, not c. 2009-01-09 21:15:10 +00:00
Pedro Alves
87f707814c * gdbtypes.c (append_composite_type_field): Correct the location of
appended fields.
2009-01-09 17:41:53 +00:00
Pedro Alves
58d4abe16b * defs.h (deprecated_error_hook): Delete declaration.
* interps.c (clear_interpreter_hooks): Adjust.
	* remote-sim.c (gdb_os_error): Don't try to call
	deprecated_error_hook.  No need to call exit anymore.
	* top.c (deprecated_error_hook): Delete.
2009-01-09 17:29:52 +00:00
Joel Brobecker
e3cb383209 * arch-utils.c (gdbarch_update_p): Use host_address_to_string
to print the address of the gdbarch pointer.
2009-01-09 11:09:08 +00:00
Joel Brobecker
30737ed99f * gdbarch.sh: Fix all the compilation errors on amd64-windows
due to casting a pointer to a long when printing a function
        address. Instead, use host_address_to_string to convert our
        address to a string.
        * gdbarch.c: Regenerate.
2009-01-09 11:06:48 +00:00
Joel Brobecker
ec4dfccf28 * event-top.c (async_disconnect, async_stop_sig): use "raise"
instead of "kill" to raise a signal.
2009-01-09 11:00:00 +00:00
Joel Brobecker
d3653bf635 * win32-nat.c (get_module_name): Change the type of parameter
"base_address" to LPVOID.  Remove unnecessary cast.
        (struct lm_info): Change type of load_addr to LPVOID.
        (win32_make_so): Change the type of parameter "load_addr"
        to LPVOID.  Remove some unnecessary casts.
        (handle_unload_dll): Change the type of "lpBaseOfDll" to LPVOID.
        (win32_xfer_shared_libraries): Add missing cast.
2009-01-09 10:58:26 +00:00
Joel Brobecker
308a880866 * win32-nat.c (has_detach_ability, set_process_privilege):
Cast the result of GetProcAddress to (void *) to avoid
        a compilation warning.
2009-01-09 10:48:36 +00:00
Joel Brobecker
5851ab761b * win32-nat.c (CONTEXT_EXTENDED_REGISTERS): Define to 0 if not
already defined.
2009-01-09 10:45:42 +00:00
Joel Brobecker
5732a50095 * win32-nat.c (get_image_name, win32_xfer_memory): Fix type
definition of local variable "done".
        (info_w32_command, handle_exception): Remove unnecessary cast.
2009-01-09 10:43:37 +00:00
Joel Brobecker
def4de3a93 * win32-nat.c (kernel32_DebugSetProcessKillOnExit): Renames
DebugSetProcessKillOnExit.  Update all uses in this file.
        (kernel32_DebugActiveProcessStop): Renames DebugActiveProcessStop.
        Update all uses in this file.
2009-01-09 10:39:15 +00:00
Joel Brobecker
0795be10ed * win32-nat.c (do_initial_win32_stuff): Add new ops parameter,
and use it when pushing the target.
        (win32_attach, win32_create_inferior): Update call to
        do_initial_win32_stuff.
        (win32_detach, win32_mourn_inferior): Use our ops parameter
        instead of the global win32_ops to unpush the target.
2009-01-09 10:36:00 +00:00
Joel Brobecker
1be7fe8dba * ser-mingw.c (ser_windows_open): Use proper type when casting
in call to _open_osfhandle.
2009-01-09 10:32:34 +00:00
Kai Tietz
1dac1b4733 2009-01-09 Kai Tietz <kai.tietz@onevision.com>
* coff-pe-read.c (read_pe_exported_syms): Fix typo.
2009-01-09 09:33:31 +00:00
Joel Brobecker
ecf180db9e * CONTRIBUTE: Minor reformatting. 2009-01-09 04:46:22 +00:00
Kai Tietz
a68ddad51d 2009-01-08 Kai Tietz <kai.tietz@onevision.com>
* coff-pe-read.c (read_pe_exported_syms): Enable read of PE+
	export directory.
2009-01-08 20:53:32 +00:00
Kai Tietz
8234eceb5e 2009-01-08 Kai Tietz <kai.tietz@onevision.com>
* MAINTAINERS: Add myself to Write After Approval.
2009-01-08 20:46:13 +00:00
Nathan Froyd
72ee87972e * remote-sim.c (gdb_os_error): Mark as a noreturn function.
Call exit to make it obvious to GCC.
2009-01-08 19:19:27 +00:00
Tom Tromey
f75455520e PR breakpoints/9350:
* varobj.c (varobj_invalidate): Unconditionally free
	all_rootvarobj.
	* symfile.c (syms_from_objfile): Free local_addr when returning
	normally.
	* exec.c (exec_file_attach): Do cleanups before returning.
	(exec_file_command): Likewise.
	* corefile.c (reopen_exec_file): Do cleanups before returning.
	* breakpoint.c (insert_breakpoint_locations): Do cleanups before
	returning.
	(do_vec_free): New function.
	(update_global_location_list): Make a cleanup for old_locations.
	Do cleanups before returning.  Remove unused variable 'e'.
	(find_condition_and_thread): Free result of parsing the
	expression.
	(print_it_typical): Do cleanups before returning.
	(breakpoint_re_set_one): Always free sals.sals.
2009-01-08 16:32:30 +00:00
Emi Suzuki
dde0281261 * breakpoint.c (do_enable_breakpoint): Use update_watchpoint for
watchpoints.
2009-01-08 03:58:06 +00:00
Doug Evans
69bcc6bc50 * top.c (gdb_prompt_string): Delete, unused. 2009-01-07 22:04:47 +00:00
Pedro Alves
fa3a767ffc gdb/
2009-01-07  Pedro Alves  <pedro@codesourcery.com>

	Delete ONE_PROCESS_WRITETEXT leftovers.

	* breakpoint.c (insert_bp_location): Delete process_warning
	argument.  Adjust.
	(insert_breakpoint_locations): Adjust.
	(reattach_breakpoints): Adjust.
	* infrun.c (normal_stop): Drop "It might be running in another
	process" notice.

gdb/doc/
2009-01-07  Pedro Alves  <pedro@codesourcery.com>

	* gdb.texinfo (Error in Breakpoints): Delete mention of "The same
	program may be running in another process" errors.
	* gdbint.texinfo (Native Conditionals): Delete
	ONE_PROCESS_WRITETEXT description.
2009-01-07 21:42:50 +00:00
Stan Shebs
7b93f36dcb * config/pa/linux.mh (XDEPFILES): Remove. 2009-01-07 21:21:11 +00:00
Doug Evans
0380c18b13 * cli/cli-cmds.c (set_debug): Fix cut-n-paste error. 2009-01-07 20:38:16 +00:00
Jan Kratochvil
60023297c3 gdb/
* f-typeprint.c (f_type_print_base <TYPE_CODE_STRUCT>): Fix output
	spacing, a regression from 2008-04-22.

gdb/testsuite/
	* gdb.fortran/derived-type.exp: New variables int4 and real4.  Match
	now the output exactly, using less wildcards.  Expect also the output
	of gfortran-4.3.  Update for the f-valprint.c modification from
	2008-04-22.
	* gdb.fortran/subarray.exp: Expect also the output of gfortran-4.3.
	Remove gdb_test test names where matching the command.
2009-01-07 12:39:13 +00:00
Joel Brobecker
ea8992ce76 * utils.c (gdb_print_host_address): Adjust implementation to
reuse host_address_to_string. Move comment explaining the conversion
        from host address to string from here...
        (host_address_to_string): ... to there.
2009-01-07 12:11:07 +00:00
Emi Suzuki
301d2c47d9 * MAINTAINERS: Add myself for write after approval privileges. 2009-01-07 09:28:31 +00:00
Tom Tromey
170ce85276 * value.c (set_internalvar): Use value_free, not xfree. 2009-01-07 00:45:54 +00:00
Jim Blandy
bf1d7d9ce0 Check return values of functions declared with warn_unused_result
attribute in GLIBC 2.8.
* cli/cli-cmds.c (pwd_command): Check return value from getcwd.
* inflow.c (check_syscall): New function.
(new_tty): Use check_syscall to check return values from open and dup.
* linux-nat.c (linux_nat_info_proc_cmd): Check return value from fgets.
* main.c (captured_main): Call cwd after setting up gdb_stderr;
check for errors from getcwd.
* mi/mi-cmd-env.c (mi_cmd_env_pwd): Check return value from getcwd.
* ui-file.c (stdio_file_write): Ignore return value from fwrite.
(stdio_file_fputs): Same.
* utils.c (internal_vproblem): abort if last-ditch error message
write fails.
2009-01-06 18:31:59 +00:00
Jim Blandy
fdb7262ae4 * top.c (gdb_init): Don't set the current directory here; that's
already been done in captured_main.
2009-01-06 18:28:04 +00:00
Sandra Loosemore
84603566b7 2009-01-06 Sandra Loosemore <sandra@codesourcery.com>
gdb/
	* ser-tcp.c: Adjust includes.
	(tcp_set_cmdlist, tcp_show_cmdlist): Declare.
	(tcp_auto_retry, tcp_retry_limit): Declare.
	(TIMEOUT): Remove, in favor of tcp_retry_limit.
	(POLL_INTERVAL): Increase to 5, in favor of backoff logic.
	(wait_for_connect): New function.
	(net_open): Use it.  Add auto-retry logic.
	(set_tcp_cmd, show_tcp_cmd): New functions.
	(_initialize_ser_tcp): Initialize new "set/show tcp auto-retry"
	and "set/show tcp connect-timeout" commands.
	* NEWS: Document new commands.

	gdb/doc/
	* gdb.texinfo (Remote Configuration): Document new
	"set/show tcp auto-retry" and "set/show tcp connect-timeout"
	commands.
2009-01-06 17:07:08 +00:00
Tom Tromey
5171e6b382 * python/python-internal.h (Py_ssize_t): Define as int. 2009-01-05 20:48:51 +00:00
Jim Blandy
a367a1f22e * MAINTAINERS: Fix my e-mail address as steering committee member. 2009-01-05 17:36:06 +00:00
Joel Brobecker
4d78a12089 Move a 2009 Entry from ChangeLog-2008 to ChangeLog. 2009-01-03 06:02:29 +00:00
Joel Brobecker
0fb0cc7590 Updated copyright notices for most files. 2009-01-03 05:58:08 +00:00
Joel Brobecker
c9fc347d38 * top.c (print_gdb_version): Update copyright year. 2009-01-03 05:18:00 +00:00
Joel Brobecker
a85d99b462 * config/djgpp/fnchange.lst: Add entry for ChangeLog-2008. 2009-01-03 05:15:51 +00:00
Joel Brobecker
67de2a4c95 Rotate the ChangeLog as per the Start of New Year Procedure. 2009-01-03 05:10:18 +00:00
Pedro Alves
ccc57cf9e6 2009-01-01 Pedro Alves <pedro@codesourcery.com>
PR breakpoints/9681:
	* exceptions.h (enum errors): New error type, MEMORY_ERROR.
	* corefile.c (memory_error): Rewrite to throw a MEMORY_ERROR.
	* breakpoint.c (fetch_watchpoint_value): Ignore MEMORY_ERRORs, but
	retrow all other exceptions.

2009-01-01  Pedro Alves  <pedro@codesourcery.com>

	PR breakpoints/9681:
	* gdb.base/watchpoint.exp: Add regression test.
2009-01-01 22:02:03 +00:00
Pedro Alves
3a031f650c 2008-12-31 Pedro Alves <pedro@codesourcery.com>
PR gdb/8812:
	* infrun.c (handle_command): Don't print a header or notify the
	target about signal changes if we didn't change any signal.

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

	PR gdb/8812:
	* gdb.base/signal.exp: Change kfail to fail, and update PR number.
2008-12-31 01:34:10 +00:00
Joel Brobecker
cfe9eade2e * valops.c (find_method_list): Minor reformatting in comment. 2008-12-29 06:02:06 +00:00
Pedro Alves
09e6485fa9 2008-12-29 Pedro Alves <pedro@codesourcery.com>
PR gdb/7536:
	* valprint.c (input_radix_1): New static global.
	(set_input_radix): Use it instead of "input_radix".
	(set_input_radix_1): Always leave input_radix_1 set to
	input_radix.
	(output_radix_1): New static global.
	(set_output_radix): Use it instead of "output_radix".
	(set_output_radix_1): Always leave output_radix_1 set to
	output_radix.
	(_initialize_valprint): Use "input_radix_1" instead of
	"input_radix" with the "input-radix" command.  Use
	"output_radix_1" instead of "output_radix" with the "output-radix"
	command.

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

	PR gdb/7536:
	* gdb.base/radix.exp: Add tests to ensure invalid input radices
	and unsupported output radices are really rejected.
2008-12-29 02:18:48 +00:00
Pedro Alves
7a7d33537f * linux-fork.c (linux_fork_detach): New.
* linux-fork.h (linux_fork_detach): Declare.
	* linux-nat.c (linux_child_follow_fork): When following the fork
	child, add the child inferior before possibly detaching from the
	parent.  Don't reinstall ourselves.
	(linux_nat_detach): Call linux_fork_detach if there are other
	forks to debug.
	* linux-thread-db.c (thread_db_detach): Don't call
	target_mourn_inferior.  Instead inline the necessary bits.
	* inf-ptrace.c (inf_ptrace_detach): Don't unpush the target if
	there are other inferiors to debug.
2008-12-28 16:14:57 +00:00
Jan Kratochvil
262452ec45 Fix TYPE_HIGH_BOUND for TYPE_CODE_RANGE using arbitrary TYPE_NFIELDS in
preparation for supporting DW_AT_byte_stride.
	* ada-lang.c (packed_array_type, ada_index_type): Use TYPE_INDEX_TYPE.
	(ada_array_bound_from_type): Move `index_type' declaration to the
	function start.  New variable `retval'.  Return the bounds for
	TYPE_CODE_RANGE using TYPE_LOW_BOUND and TYPE_HIGH_BOUND.  Abort on
	invalid index type codes.
	* ada-typeprint.c (print_range): Set `upper_bound' for TYPE_CODE_RANGE
	now using TYPE_HIGH_BOUND.
	* ada-valprint.c (val_print_packed_array_elements): Use `index_type'.
	* eval.c (evaluate_subexp_standard): Use TYPE_INDEX_TYPE.
	* gdbtypes.c (create_range_type): Use TYPE_LOW_BOUND, TYPE_HIGH_BOUND,
	refer to the number of fields only through TYPE_NFIELDS.
	(create_array_type): Use TYPE_INDEX_TYPE.
	(check_typedef): Use TYPE_INDEX_TYPE, TYPE_LOW_BOUND, TYPE_HIGH_BOUND.
	* gdbtypes.h (TYPE_ARRAY_UPPER_BOUND_IS_UNDEFINED)
	(TYPE_ARRAY_LOWER_BOUND_IS_UNDEFINED): Use TYPE_INDEX_TYPE.
	(TYPE_ARRAY_UPPER_BOUND_VALUE, TYPE_ARRAY_LOWER_BOUND_VALUE): Use
	TYPE_INDEX_TYPE, TYPE_LOW_BOUND, TYPE_HIGH_BOUND,
	* hppa-tdep.c (hppa_alignof <TYPE_CODE_ARRAY>): Use TYPE_INDEX_TYPE.
	* mdebugread.c (parse_type): Use TYPE_LOW_BOUND, TYPE_HIGH_BOUND,
	* valarith.c (value_bit_index): Use TYPE_INDEX_TYPE.
2008-12-28 14:14:19 +00:00
Sandra Loosemore
ca2d49e822 2008-12-26 Sandra Loosemore <sandra@codesourcery.com>
gdb/
	* breakpoint.c (update_watchpoint): Refactor to avoid compiler
	warning.
2008-12-26 19:11:53 +00:00
Tom Tromey
aad95b57c5 * stack.c (print_block_frame_locals): Print spaces, not tabs.
Update for call to print_variable_and_value.
	(print_frame_arg_vars): Update.
	* value.h (print_variable_and_value): Rename from
	print_variable_value.  Add 'name' and 'indent' parameters.
	* printcmd.c (print_variable_and_value): Rename from
	print_variable_value.  Add 'name' and 'indent' parameters.  Use
	common_val_print.
	* f-valprint.c (info_common_command): Update.
2008-12-22 23:11:56 +00:00
Tom Tromey
1446eb676f * python/python-value.c (valpy_length): Remove #if. 2008-12-22 19:45:58 +00:00
Tom Tromey
f2f35b75ff 2008-12-22 Paul Pluzhnikov <ppluzhnikov@google.com>
* python/python-internal.h (PyEval_ReleaseLock): New define.
2008-12-22 16:25:17 +00:00
Tom Tromey
ba163c7e44 gdb
* c-exp.y (ident_tokens): New global.
	(struct token) <cxx_only>: New field.
	(tokentab3): Update.
	(tokentab2): Update.
	(yylex): Use ident_tokens.
gdb/testsuite
	* gdb.cp/punctuator.exp: New file.
2008-12-22 14:21:01 +00:00
Tom Tromey
9a61c7a6d7 2008-12-22 Adam Denton <adenton@yahoo.com>
PR gdb/8307:
	* environ.c (free_environ): Free e->vector.
2008-12-22 14:06:27 +00:00
Jan Kratochvil
6f4de6c97d gdb/
Fix memory double-free.
	* completer.c (line_completion_function): Clear LIST after called xfree.
gdb/testsuite/
	* gdb.base/completion.exp (Completing non-existing component): New test.
2008-12-22 13:19:30 +00:00
Joel Brobecker
567e1b4ec8 * breakpoint.c (update_watchpoint): Adjust and extend the description
of this function.  Fix one error message accordingly.
2008-12-22 04:37:37 +00:00
Jan Kratochvil
db2ad4c3f7 gdb/
Fix hw watchpoints created before the inferior was started.
	* breakpoint.c (update_watchpoint): Convert the bp_watchpoint and
	bp_hardware_watchpoint types according to the current runtime state.
gdb/testsuite/
	* gdb.base/watchpoint-hw.exp, gdb.base/watchpoint-hw.c: New.
2008-12-21 15:01:32 +00:00
Pedro Alves
0d14fc6327 * linux-nat.c (linux_child_follow_fork): If following the child,
and not detaching the parent, also add the child fork to the fork
	list.
	* linux-fork.c (linux_fork_context): Remove dead error call.
	Assert that the incoming newfp argument is not null.  Do not add a
	new fork for inferior_ptid.  Assert that there is one already.
2008-12-18 21:35:23 +00:00
Tristan Gingold
d26b535418 2008-12-16 Tristan Gingold <gingold@adacore.com>
* inflow.c: Remove old_sigio, handle_sigio, old_fcntl_flags,
	set_sigio_trap, clear_sigio_trap definitions.
	* inferior.h: Remove set_sigio_trap and clear_sigio_trap declarations.
	* inf-ptrace.c (inf_ptrace_wait): Remove call to set_sigio_trap
	and clear_sigio_trap.
	* inf-ttrace.c (inf_ttrace_wait): Ditto.
	* linux-nat.c (linux_nat_wait): Ditto.
	* spu-linux-nat.c (spu_child_wait): Ditto.
	* rs6000-nat.c (rs6000_wait): Ditto.
	* target.c: Remove target_activity_function and target_activity_fd.
	* target.h: Remove target_activity_function and target_activity_fd
	declarations.
2008-12-16 11:15:58 +00:00
Paul Pluzhnikov
7b1f21e5c4 2008-12-15 Paul Pluzhnikov <ppluzhnikov@google.com>
* dbxread.c (read_ofile_symtab): Sign-extend 32-bit N_LSYM and
	N_PSYM STABS values for 64-bit GDB.
2008-12-16 05:06:05 +00:00
Tristan Gingold
9f3fe11c95 2008-12-15 Tristan Gingold <gingold@adacore.com>
* dwarf2expr.c (execute_stack_op): Handle DW_OP_swap.
2008-12-15 11:32:08 +00:00
Jerome Guitton
f5938064bf * ada-lang.c (ada_value_slice_ptr): Rename to...
(ada_value_slice_from_ptr): ... this. Return a lazy value instead
	of a reference.	Update comment.
	(ada_value_struct_elt): Ditto if arg is a pointer or a reference.
	Update comment as well.
	(ada_evaluate_subexp): Update use of ada_value_slice_ptr.
2008-12-15 10:40:28 +00:00
Kevin Buettner
ed09d7da47 * gnu-v3-abi.c (vtable_ptrdiff_type): New function.
(gnuv3_decode_method_ptr, gnuv3_print_method_ptr)
	(gnuv3_method_ptr_to_value): Use a better approximation for
	`ptrdiff_t' instead of `long'.

	* m32c-tdep.c (m32c_gdbarch_init): Call set_gdbarch_vbit_in_delta().
	(m32c_push_dummy_call): Dereference pointer type.
2008-12-13 00:39:53 +00:00
Tom Tromey
fad6eecd5d gdb
PR cli/2563:
	* cli/cli-decode.c (delete_cmd): Add hook-related out parameters.
	(add_cmd): Update.  Install hooks into new command.
	(add_alias_cmd): Update.
gdb/testsuite
	* gdb.base/commands.exp (redefine_hook_test): New proc.
	Call it.
2008-12-12 17:58:48 +00:00
Tom Tromey
17c8aaf507 gdb
* macroexp.c (get_pp_number): Require digit after leading ".".
	Correctly handle suffixes.
gdb/testsuite
	* gdb.base/macscp.exp: New regression test.
2008-12-12 17:03:37 +00:00
Tom Tromey
cc704ebecf * macrocmd.c (macro_define_command): Skip whitespace after
macro name.
	(print_one_macro): Print space after macro name.
2008-12-12 16:58:46 +00:00
Pedro Alves
48844aa658 * infrun.c (handle_inferior_event): Correctly tag non-executing
threads in multi-process.
	(normal_stop): Correctly tag stopped threads in multi-process.
2008-12-12 14:20:48 +00:00
Pedro Alves
48aa3c2705 * remote.c (extended_remote_mourn_1): Always call
generic_mourn_inferior.
2008-12-12 13:45:43 +00:00
Pedro Alves
5f3563ea7a * remote.c (remote_detach_1): Don't delete the inferior here.
(process_stop_reply): Ditto.
	(extended_remote_kill): Ditto.
2008-12-12 01:08:29 +00:00
Pedro Alves
ca19bf2309 * remote.c (read_ptid): If we don't know about any inferior yet,
use the pid of magic_null_ptid.
	(remote_start_remote): In the non-stop mode case, don't set
	inferior_ptid to magic_null_ptid here.
2008-12-12 00:12:03 +00:00
Pedro Alves
37d9480010 * infcmd.c (step_1): Use step_once in the synchronous case too.
(step_1_continuation): Wrap line.
	(step_once): Adjust comment.  Only install the continuation in
	async mode.
2008-12-11 20:34:18 +00:00
Pedro Alves
fb66883a82 * infrun.c (handle_inferior_event): On a TARGET_WAITKIND_EXITED or
TARGET_WAITKIND_SIGNALLED, switch inferior_ptid to the event ptid.
	* linux_thread_db.c (thread_db_wait): On a TARGET_WAITKIND_EXITED
	or TARGET_WAITKIND_SIGNALLED, return the ptid the beneath target
	returned.
	* inf-ptrace.c (inf_ptrace_wait): Return inferior_ptid instead of
	minus_one_ptid if the inferior disappeared.
	* rs6000-nat.c (rs6000_wait): Likewise.
	* spu-linux-nat.c (spu_child_wait): Likewise.
2008-12-11 19:19:12 +00:00
Tom Tromey
7c8adf682b gdb
PR macros/2564:
	* c-exp.y (macro_original_text, expansion_obstack,
	expression_macro_scope): New globals.
	(scan_macro_expansion): New function.
	(scanning_macro_expansion): Likewise.
	(finished_macro_expansion): Likewise.
	(scan_macro_cleanup): Likewise.
	(c_parse): Find macro scope.  Initialize obstack.
	* c-lang.h (scan_macro_expansion, scanning_macro_expansion,
	finished_macro_expansion, expression_macro_lookup_func,
	expression_macro_lookup_baton): Remove.
	* c-lang.c (scan_macro_expansion, scanning_macro_expansion,
	finished_macro_expansion, expression_macro_lookup_func,
	expression_macro_lookup_baton): Remove.
	(macro_original_text, macro_expanded_text,
	c_preprocess_and_parse): Remove.
	(c_language_defn, cplus_language_defn, asm_language_defn,
	minimal_language_defn): Use c_parse.
gdb/testsuite
	* gdb.base/macscp.exp: Print "address.addr".
	* gdb.base/macscp1.c (struct outer): New struct.
	(address): New global.
2008-12-11 18:30:28 +00:00
Pedro Alves
1c7819ef32 * infcmd.c (until_next_command, finish_backward): Use get_frame_pc
instead of read_pc.
2008-12-10 21:32:15 +00:00
Tom Tromey
b05dcbb7f9 gdb
PR gdb/1815:
	* cli/cli-decode.c (delete_cmd): Forward declare.
	(delete_cmd): Now static.  Change return type.  Remove command
	from alias chain.  Rewrite.
	(add_cmd): Initialize new fields.  Update cmd_pointer on all
	aliases.
	(add_alias_cmd): Put command on alias chain.
	* command.h (delete_cmd): Don't declare.
	* cli/cli-decode.h (delete_cmd): Don't declare.
	(struct cmd_list_element) <aliases, alias_chain>: New fields.
gdb/testsuite
	* gdb.base/commands.exp (redefine_backtrace_test): New proc.
	Call it.
2008-12-10 01:05:16 +00:00
Tom Tromey
a8111142cc * config.in, configure: Rebuild.
* configure.ac: Check for locale.h, setlocale.  Call
	AM_LC_MESSAGES.
	* acinclude.m4: Include lcmessage.m4.
2008-12-09 17:18:30 +00:00
Jan Kratochvil
4100683baa * remote.c (remote_parse_stop_reply): Use REG only after its NULL check. 2008-12-09 16:36:15 +00:00
Joel Brobecker
4be15b7a08 * python/python-value.c (values_in_python): Add specific initialization
to NULL to work-around a MacOS linker bug.
2008-12-08 17:13:30 +00:00
Jan Kratochvil
39d6157133 Fix loc_type of `bp_location's created by update_watchpoint.
* breakpoint.c (allocate_bp_location): Remove the bp_type parameter.
	Replace bp_type by bpt->type.  Update prototype.  All callers updated.
	(add_location_to_breakpoint):  Remove the bp_type parameter.
	Replace bp_type by b->type.  All callers updated.
	(set_breakpoint_location_function): Replace bptype by b->type.
2008-12-08 13:27:38 +00:00
Jan Kratochvil
4cd9bd0835 * breakpoint.c (update_global_location_list): Fix the comment. 2008-12-07 15:59:51 +00:00
Pedro Alves
1641cfccdd * infcmd.c (step_1, step_once): Look up the stepping range based
on the current frame's PC, not on stop_pc.
2008-12-05 22:38:10 +00:00
Jan Kratochvil
116e096528 Fix compilation on 32-bit host configurations.
* ia64-tdep.c (ia64_breakpoint_from_pc): Suffix a constant by `LL'.
2008-12-05 18:25:01 +00:00
Tristan Gingold
acdb24a9cf 2008-12-05 Tristan Gingold <gingold@adacore.com>
* i386-darwin-nat.c (i386_darwin_sstep_at_sigreturn): New function.
	(amd64_darwin_sstep_at_sigreturn): New function.
	(darwin_set_sstep): The sigreturn is a special case: the trace flag
	must be set in the mcontext structure.
2008-12-05 11:08:58 +00:00
Pedro Alves
e71c9293b3 * infcmd.c (step_once): Remove dead code. 2008-12-05 02:08:26 +00:00
Doug Evans
3b67623358 * infcall.c (call_function_by_hand): Clean up use of local dummy_addr. 2008-12-04 21:41:00 +00:00
Doug Evans
a020da562e * infrun.c (handle_inferior_event): Remove redundant resetting of
stepping_past_singlestep_breakpoint.
2008-12-02 19:20:23 +00:00
Pedro Alves
e0665bc852 * target.h (target_get_osdata): Describe.
* osdata.h (make_cleanup_osdata_free): Declare.
	* osdata.c (osdata_item_clear): Define even if HAVE_LIBEXPAT is
	not defined.
	(osdata_free_cleanup): New.
	(make_cleanup_osdata_free): New.
	(get_osdata): Fix leak.
	(info_osdata_command): Use make_cleanup_osdata_free.
	(info_processes_command): Delete.
	(_initialize_osdata): Drop undocumented "info processes" alias.
	* mi/mi-main.c (mi_cmd_list_thread_groups): Fix leak.
2008-12-02 15:52:15 +00:00
Jan Kratochvil
e0740f779c gdb/
Fix resolving external references to TLS variables.
	* findvar.c: Include `objfiles.h'.
	(read_var_value <LOC_UNRESOLVED>): New variable `obj_section'.  Handle
	SEC_THREAD_LOCAL variables.
	* printcmd.c (address_info <LOC_UNRESOLVED>): Handle SEC_THREAD_LOCAL
	variables.

gdb/testsuite/
	Test resolving external references to TLS variables.
	* gdb.threads/tls.exp: New tests to examine A_THREAD_LOCAL and
	FILE2_THREAD_LOCAL.
	(testfile2, srcfile2): New variables.
	* gdb.threads/tls.c (file2_thread_local)
	(function_referencing_file2_thread_local): New.
	* gdb.threads/tls2.c: New file.
2008-12-02 14:51:01 +00:00
Doug Evans
c29235ac9f * infrun.c (handle_inferior_event): Delete unused local tp. 2008-12-02 09:52:31 +00:00
Vladimir Prus
07e059b5a9 Implement -list-thread-groups --available
* Makefile.in (XMLFILES): Add osdata.dtd.
        (SFILES): Add osdata.c.
        (COMMON_OBS): Add osdata.o.
        * linux-nat.c: Include pwd.h, sys/types.h, gdb_dirent.h and xml-support.h.
        (linux_nat_xfer_osdata): New function.
        (linux_xfer_partial): Handle TARGET_OBJECT_OSDATA.
        * osdata.c: New file.
        * osdata.h: New file.
        * remote.c (PACKET_qXfer_osdata): New packet enum.
        (remote_protocol_features): Add "qXfer:osdata:read".
        (remote_read_qxfer): Handle TARGET_OBJECT_OSDATA.
        (extended_remote_can_run): New.
        (init_extended_remote_ops): Set to_can_run to
        extended_remote_can_run.
        (_initialize_remote): Add packet config command for
        "qXfer:osdata:read".
        * xml-support.c (obstack_xml_printf): New function.
        * xml-support.h (obstack_xml_printf): Declare.
        * target.c (target_get_osdata): New function.
        * target.h (enum target_object): Add TARGET_OBJECT_OSDATA.
        (target_os_data): Declare.
        * features/osdata.dtd: New file.
        * mi/mi-main.c (mi_list_thread_groups): Handle the --available
        option.
2008-12-02 07:57:38 +00:00
Doug Evans
f3c85de60a * infrun.c (proceed): Delete unused local stop_signal. 2008-12-02 04:42:45 +00:00
Jan Kratochvil
8d90eea314 2008-11-25 monitor.c (monitor_insert_breakpoint): Remove, already in log before. 2008-11-28 21:58:06 +00:00
Tristan Gingold
a80b95ba67 gdb:
2008-11-27  Tristan Gingold  <gingold@adacore.com>

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

gdb/doc:
2008-11-27  Tristan Gingold  <gingold@adacore.com>

	* gdb.texinfo (Darwin): Document Darwin specific features.
2008-11-27 09:23:01 +00:00
Tristan Gingold
5a85c5216d 2008-11-26 Tristan Gingold <gingold@adacore.com>
* MAINTAINERS: Add myself for write after approval privileges.
2008-11-26 16:32:59 +00:00
Jerome Guitton
3e3d7139ee * value.h (allocate_value_lazy): New function declaration.
(value_free): Remove macro, make it a function.
	* value.c (value): Move actual content outside of the memory space
	of the struct; add a pointer to this actual content.
	(allocate_value_lazy, allocate_value_contents): New function.
	(allocate_value): Reimplement using these two new functions.
	(value_contents_raw, value_contents_all_raw): If no memory
	has been allocated yet for the actual content, allocate it.
	(value_contents_all): Resync with struct value's changes.
	(value_free): New function.
	(value_copy, value_primitive_field): Use new function
	allocate_value_lazy to allocate lazy values.
	(value_change_enclosing_type): Resync with struct value's changes.
	As the value is not reallocated, remove the special handling for
	the value chain (now obsolete).
	* valops.c (value_at_lazy): Use new function allocate_value_lazy.
	(value_fetch_lazy): Allocate value content. Use allocate_value_lazy
	to allocate lazy values.
	(value_slice): Use allocate_value_lazy to allocate lazy values.
2008-11-26 16:27:28 +00:00
Jan Kratochvil
5f019e5878 2008-11-25 ia64-tdep.c change: Reflect current `disable' in the ChangeLog entry. 2008-11-26 05:36:38 +00:00
Jan Kratochvil
939c61faff Fix automatic restoration of breakpoints memory for ia64.
* ia64-tdep.c: New #if check on BREAKPOINT_MAX vs. BUNDLE_LEN.
	(ia64_memory_insert_breakpoint): New comment part for SHADOW_CONTENTS
	content.  Remove variable instr.  New variable cleanup.  Force
	automatic breakpoints restoration.  PLACED_SIZE and SHADOW_LEN are now
	set larger, to BUNDLE_LEN - 2.  Variable `bundle' type update.  Return
	error if even just final target_write_memory has failed.
	(ia64_memory_remove_breakpoint): Rename variables bundle to bundle_mem
	and instr to instr_saved.  New variables bundle_saved and
	instr_breakpoint.  Comment new reasons why we need to disable automatic
	restoration of breakpoints.  Assert PLACED_SIZE and SHADOW_LEN.  New
	check of the original memory content.  Return error if even just final
	target_write_memory has failed.
	(ia64_breakpoint_from_pc): Implement the emulation of permanent
	breakpoints compatible with current bp_loc_is_permanent.
	(template_encoding_table): Make it `const'.
	* breakpoint.c (bp_loc_is_permanent): Support unsupported software
	breakpoints.  New variables `cleanup' and `retval'.
	* monitor.c (monitor_insert_breakpoint): Remove unused variable `bp'.
2008-11-26 05:27:48 +00:00
Tom Tromey
8acb6b92f9 * ada-lang.c (value_from_contents_and_address): Move...
* value.c: ... here.
	* ada-lang.h (value_from_contents_and_address): Move
	declaration...
	* value.h: ... here.
2008-11-24 23:21:16 +00:00
Tom Tromey
f9e31323b4 2008-11-24 Paul Pluzhnikov <ppluzhnikov@google.com>
* valprint.c (val_print_array_elements): Pass correct
	element address to val_print.
2008-11-24 18:10:11 +00:00
Jan Kratochvil
a0b7aece70 Fix access of an already freed memory.
* parse.c (parse_field_expression): Call xstrdup on `*name'.
	* completer.c (expression_completer): Free fieldname.
2008-11-24 17:05:43 +00:00
Daniel Jacobowitz
d962ef8246 PR gdb/2474
* remote.c (remote_read_description_p): New function.
	(remote_start_remote): Try to fetch the target description
	before adding shared libraries.  Try again later if the
	target is running but stopped.
	(remote_open_1): Mark extended targets as exited by default.
	(remote_read_description): Check target_has_execution.
2008-11-24 16:53:44 +00:00
Jerome Guitton
88828b324a * alpha-mdebug-tdep.c (alpha_mdebug_frame_unwind_cache): Use
the frame address in block instead of the return address to
        locate the mdebug PDR of the frame.
2008-11-24 13:52:05 +00:00
Joel Brobecker
d81191fc8c Remove the unused BPSTAT_WHAT_CHECK_SHLIBS_RESUME_FROM_HOOK.
* breakpoint.h (enum bpstat_what_main_action): Remove
        BPSTAT_WHAT_CHECK_SHLIBS_RESUME_FROM_HOOK.
        * breakpoint.c (bpstat_what): Delete catch_shlib_event from enum class.
        Remove the BPSTAT_WHAT_CHECK_SHLIBS_RESUME_FROM_HOOK column from
        variable table.
        * infrun.c (wait_for_inferior): Remove handling of
        BPSTAT_WHAT_CHECK_SHLIBS_RESUME_FROM_HOOK.
2008-11-22 04:41:45 +00:00
Tom Tromey
a9322a30ba * configure: Rebuild.
* configure.ac: Merge calls to AC_CHECK_FUNCS, AC_CHECK_HEADERS,
	AC_CHECK_DECLS, and AC_CHECK_MEMBERS.
2008-11-21 22:35:58 +00:00
Tom Tromey
ca30a76297 * python/python-internal.h (PyGILState_Ensure): New define.
(PyGILState_Release): Likewise.
	(PyEval_InitThreads): Likewise.
	(PyThreadState_Swap): Likewise.
	(PyEval_InitThreads): Likewise.
	* python/python.c (_initialize_python): Initialize threads.
	Release GIL.
	(eval_python_from_control_command): Acquire GIL.
	(python_command): Likewise.
	* python/python-internal.h (make_cleanup_py_restore_gil):
	Declare.
	* python/python-utils.c (py_gil_restore): New function.
	(make_cleanup_py_restore_gil): Likewise.
2008-11-21 14:59:56 +00:00
Doug Evans
d2bf72c057 * frame.c (frame_debug_got_null_frame): Remove file arg.
All callers updated.
2008-11-20 22:16:16 +00:00
Pedro Alves
c7e8a53cdd * infrun.c (resume): If following a fork, also reset regcache,
gdbarch and pc.
2008-11-20 17:06:05 +00:00
Doug Evans
e2fd701eb4 * printcmd.c (sym_info): Don't print the offset if it's zero.
* gdb.base/sepsymtab.exp: Update, old "info sym" format restored.
2008-11-20 16:13:11 +00:00
Pedro Alves
607cecd2d4 * infrun.c (resume): If following a fork, reread the current
thread.  Avoid dereferencing a possibly dangling pointer.
2008-11-20 13:23:26 +00:00
Doug Evans
642fd10146 * inferior.h (proceed_to_finish): Delete, unused.
(stop_registers): Tweak comment.
	* infrun.c (stop_registers): Tweak comment.
2008-11-20 00:35:23 +00:00
Kevin Buettner
9bc7b6c67c * frv-tdep.c (frv_skip_main_prologue): New function.
(frv_gdbarch_init): Register frv_skip_main_prologue.
	* solib-frv.c (fetch_loadmap): Return early when no segments are
	found.
	(frv_relocate_main_executable): Return early when both interpreter
	and executable loadmap addresses are zero.
2008-11-19 21:17:07 +00:00
Bob Wilson
d0107bb6ae gdb/
* xtensa-config.c (rmap): Remove entries for ar32 through ar63.  Add
	threadptr, scompare1, mmid, epc5, epc6, epc7, eps5, eps6, eps7,
	excsave5, excsave6, excsave7, cpenable, and vecbase registers.
	(xtensa_submask0, xtensa_submask1, xtensa_submask2)
	(xtensa_submask3, xtensa_submask4, xtensa_submask5, xtensa_submask6)
	(xtensa_submask7, xtensa_submask8, xtensa_submask9, xtensa_submask10)
	(xtensa_submask11, xtensa_submask12, xtensa_submask13, xtensa_submask14)
	(xtensa_submask15): Adjust register numbers.
	* xtensa-xtregs.c (XTENSA_ELF_XTREG_SIZE): Change to 4.
	(xtensa_regmap_table): Add entry for scompare1.
	* regformats/reg-xtensa.dat: Remove ar32 through ar63.  Add threadptr
	and scompare1.
gdb/gdbserver/
	* xtensa-xtregs.c (XTENSA_ELF_XTREG_SIZE): Change to 4.
	(xtensa_regmap_table): Add entry for scompare1.
2008-11-19 18:29:47 +00:00
Pedro Alves
6e5abd65ae * remote.c (escape_buffer): New.
(putpkt_binary, read_frame, getpkt_or_notif_sane_1): Use it.  Make
	sure debug output printing a packet buffer goes through a single
	fprintf_unfiltered call.
	* utils.c (vfprintf_unfiltered): If outputting timestamps, end
	output with a newline if it wasn't going to already.
2008-11-19 14:45:09 +00:00
Paul Pluzhnikov
15c99a447e 2008-11-18 Paul Pluzhnikov <ppluzhnikov@google.com>
* maint.c (maintenance_translate_address): Fix a buglet.
2008-11-18 22:46:27 +00:00
Thiago Jung Bauermann
2c4ad78125 gdb/
* features/Makefile (rs6000/powerpc-isa205-32l-expedite,
	rs6000/powerpc-isa205-altivec32l-expedite,
	powerpc-isa205-vsx32l-expedite, rs6000/powerpc-isa205-64l-expedite,
	rs6000/powerpc-isa205-altivec64l-expedite,
	powerpc-isa205-vsx64l-expedite): New variables.
	* regformats/rs6000/powerpc-isa205-32l.dat: Generate.
	* regformats/rs6000/powerpc-isa205-altivec32l.dat: Generate.
	* regformats/rs6000/powerpc-isa205-vsx32l.dat: Generate.
	* regformats/rs6000/powerpc-isa205-64l.dat: Generate.
	* regformats/rs6000/powerpc-isa205-altivec64l.dat: Generate.
	* regformats/rs6000/powerpc-isa205-vsx64l.dat: Generate.

gdbserver/
	* Makefile.in (powerpc-isa205-32l.o, powerpc-isa205-32l.c,
	powerpc-isa205-altivec32l.o, powerpc-isa205-altivec32l.c,
	powerpc-isa205-vsx32l.o, powerpc-isa205-vsx32l.c,
	powerpc-isa205-64l.o, powerpc-isa205-64l.c,
	powerpc-isa205-altivec64l.o, powerpc-isa205-altivec64l.c,
	powerpc-isa205-vsx64l.o, powerpc-isa205-vsx64l.c): New targets.
	* configure.srv (powerpc*-*-linux*): Add ISA 2.05 object files and
	XML target descriptions.
	* linux-ppc-low.c (ppc_arch_setup): Init registers with 64-bit FPSCR
	when inferior is running on an ISA 2.05 or later processor.  Add
	special case to return offset for full 64-bit slot of FPSCR when
	in 32-bits.
2008-11-18 21:48:48 +00:00
Thiago Jung Bauermann
69abc51c17 gdb/
* ppc-linux-nat.c (ppc_register_u_addr): Add special case to return
	offset for full 64-bit slot of FPSCR when in 32-bits.
	(ppc_linux_read_description): Return target description with 64-bit
	FPSCR when inferior is running on an ISA 2.05 or later processor.
	* ppc-linux-tdep.c (_initialize_ppc_linux_tdep): Call
	initialize_tdec_powerpc_isa205_32l,
	initialize_tdec_powerpc_isa205_altivec32l,
	initialize_tdec_powerpc_isa205_vsx32l,
	initialize_tdec_powerpc_isa205_64l,
	initialize_tdec_powerpc_isa205_altivec64l and
	initialize_tdec_powerpc_isa205_vsx64l.
	* ppc-linux-tdep.h: Add external declaration for
	tdesc_powerpc_isa205_32l, tdesc_powerpc_isa205_altivec32l,
	tdesc_powerpc_isa205_vsx32l, tdesc_powerpc_isa205_64l,
	tdesc_powerpc_isa205_altivec64l and tdesc_powerpc_isa205_vsx64l.
	* features/rs600/powerpc-fpu-isa205.xml: New file.
	* features/rs600/powerpc-isa205-32l.xml: New file.
	* features/rs600/powerpc-isa205-64l.xml: New file.
	* features/rs600/powerpc-isa205-altivec32l.xml: New file.
	* features/rs600/powerpc-isa205-altivec64l.xml: New file.
	* features/rs600/powerpc-isa205-vsx32l.xml: New file.
	* features/rs600/powerpc-isa205-vsx64l.xml: New file.
	* features/rs600/powerpc-isa205-32l.c: Generate.
	* features/rs600/powerpc-isa205-64l.c: Generate.
	* features/rs600/powerpc-isa205-altivec32l.c: Generate.
	* features/rs600/powerpc-isa205-altivec64l.c: Generate.
	* features/rs600/powerpc-isa205-vsx32l.c: Generate.
	* features/rs600/powerpc-isa205-vsx64l.c: Generate.

gdb/testsuite/
	* gdb.arch/ppc-dfp.exp: New file.
	* gdb.arch/ppc-dfp.c: New file.
2008-11-18 21:39:47 +00:00
Paul Pluzhnikov
c14c28ba11 2008-11-18 Paul Pluzhnikov <ppluzhnikov@google.com>
* objfiles.h: New MULTI_OBJFILE_P macro.
	* printcmd.c (sym_info): Print object name.
	* maint.c (maintenance_translate_address): Likewise.
2008-11-18 21:31:27 +00:00
Joel Brobecker
d5cbbe6e68 * NEWS: Document the removal of "catch load" and "catch unload". 2008-11-18 20:41:42 +00:00
Doug Evans
2e74121d77 * infcall.c (call_function_by_hand): Fix punctuation and capitalization
on error messages.

	* gdb.mi/mi-syn-frame.exp: Update expected output.
	* gdb.mi/mi2-syn-frame.exp: Update expected output.
2008-11-18 00:13:04 +00:00
Ulrich Weigand
a721238407 PR gdb/2250
* infrun.c (clear_proceed_status_thread): New function.
	(clear_proceed_status_callback): New function.
	(clear_proceed_status): In all-stop mode, clear per-thread
	proceed status of *all* threads, not only the current.
	(handle_inferior_event): In all-stop mode, if we're stepping
	one thread, but got some inferior event in another thread
	that does not cause GDB to break to the user interface,
	ensure the interrupted stepping operation continues in the
	original thread.
	(currently_stepping): Move thread-related tests to ...
	(currently_stepping_thread): ... this new function.
	(currently_stepping_callback): New function.
2008-11-17 18:50:22 +00:00
Vladimir Prus
66bb093b5f Implement =thread-selected notification.
* mi/mi-common.h (struct mi_interp): New, moved from ...
        * mi/mi-interp.c: ...here.
        * mi/mi-main.c (mi_execute_command): If the thread changed
        as result of command, report that.
2008-11-17 16:43:34 +00:00
Vladimir Prus
8dd4f202ec Implement continue/interrupt of thread groups.
* mi/mi-main.c (proceed_thread_callback): New.
        (mi_cmd_exec_continue): If --thread-group is specified, resume all
        threads in that group.
        (interrupt_thread_callback): New.
        (mi_cmd_exec_interrupt): If --thread-group is specified, interrupt
        all threads in that group.
2008-11-17 16:39:51 +00:00
Vladimir Prus
6418d433f1 Implement '-target-detach pid'.
* infcmd.c (detach_command): Make nonstatic.
        * inferior.h (detach_command): Declare.
        * mi/mi-cmds.c (mi_cmds): Don't route -target-detach via CLI.
        * mi/mi-cmds.h (mi_cmd_target_detach): Declare.
        * mi/mi-main.c (find_thread_of_process, mi_cmd_target_detach): New.
2008-11-17 16:37:35 +00:00
Vladimir Prus
3d043ef6a3 Include group-id in thread-created notification.
* mi/mi-interp.c (mi_new_thread, mi_thread_exit): Include
        group id in the output.
2008-11-17 12:34:19 +00:00
Vladimir Prus
4a92f99bc7 Notification for attach/detach.
* inferior.c: Call the process observers.
        * mi/mi-interp.c (mi_new_inferior, mi_inferior_exit): New.
        (mi_interpreter_init): Register the above.
2008-11-17 12:28:05 +00:00
Vladimir Prus
3ee1c036ac Implement -list-thread-groups.
* thread.c (print_thread_info): New parameter pid, to print
        threads of specific process.
        * gdbthread.h (print_thread_info): New parameter pid.
        * mi/mi-cmds.c (mi_cmds): Register -list-thread-groups.
        * mi/mi-cmds.h (mi_cmd_list_thread_groups): New.
        * mi/mi-main.c (mi_cmd_thread_info): Adjust.
        (print_one_process, mi_cmd_list_thread_groups): New.
2008-11-17 12:13:49 +00:00
Joel Brobecker
283de25fac Remove some unused macros related to the old load/unload catchpoints.
* breakpoint.c (SOLIB_LOADED_LIBRARY_PATHNAME)
        (SOLIB_UNLOADED_LIBRARY_PATHNAME, SOLIB_CREATE_CATCH_LOAD_HOOK)
        (SOLIB_CREATE_CATCH_UNLOAD_HOOK): Delete. No longer used.
2008-11-16 18:05:26 +00:00
Joel Brobecker
533be4dd37 Remove support for catch load and catch unload commands.
* breakpoint.h (enum bptype): Remove bp_catch_load and bp_catch_unload.
        (struct breakpoint): Remove fields dll_pathname and
        triggered_dll_pathname.
        (bpstat_get_triggered_catchpoints, ep_is_shlib_catchpoint): Delete.
        * breakpoint.c (ep_is_catchpoint): Remove handling of
        bp_catch_load and bp_catch_unload.
        (print_it_typical, bpstat_check_location, bpstat_what)
        (print_one_breakpoint_location, print_one_breakpoint_location)
        (user_settable_breakpoint, allocate_bp_location)
        (set_raw_breakpoint_without_location, mention, delete_breakpoint,
        (breakpoint_re_set_one, disable_command, enable_command): Likewise.
        (ep_is_shlib_catchpoint, bpstat_get_triggered_catchpoints)
        (catch_load_command_1, catch_unload_command_1): Delete.
        (_initialize_breakpoint): Remove the "catch load" and "catch unload"
        command creation.
        * infrun.c (handle_inferior_event): Remove the handling of
        load/unload catchpoint events.
2008-11-16 18:01:46 +00:00
Joel Brobecker
59205f5a0e From Jerome Guitton <guitton@adacore.com>
* dwarf2read.c (dwarf2_debug_line_missing_end_sequence_complaint):
        New function.
        (dwarf_decode_lines): Detect null file numbers. Detect the end of
        the line program sequence when no end sequence is emitted.
2008-11-15 18:49:50 +00:00
Joel Brobecker
9696763752 * ada-lang.c (ada_evaluate_subexp): Improve handling of integer
type dereferencing.
2008-11-15 18:27:27 +00:00
Daniel Jacobowitz
da8bd9a3c5 * NEWS: Mention sparc64-linux-gnu gdbserver support. 2008-11-15 16:09:51 +00:00
Daniel Jacobowitz
dfb64f85d3 2008-11-14 Daniel Gutson <dgutson@codesourcery.com>
* configure.tgt (sparc64-*-linux*): Added gdbserver support.
	* regformats/reg-sparc64.dat: New file.

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

	* Makefile.in (SFILES, clean): Added sparc64 files.
	(reg-sparc64.o, reg-sparc64.c): New.
	* configure.srv (sparc*-*-linux*): New configuration.
	* linux-low.c (regsets_fetch_inferior_registers): Swap ptrace
	syscall arguments for SPARC.
	(regsets_store_inferior_registers): Likewise.
	* linux-sparc-low.c: New file.
2008-11-14 22:06:41 +00:00
Tom Tromey
5966943567 gdb
PR mi/2549:
	* mi/mi-main.c (get_register): Use get_formatted_print_options.

gdb/testsuite

2008-11-14  Nick Roberts  <nickrob@snap.net.nz>

	* gdb.mi/gdb2549.exp: New file.
2008-11-14 18:38:32 +00:00
Joel Brobecker
06be140c21 * printcmd.c: define PRINTF_HAS_LONG_LONG only if not yet defined. 2008-11-13 22:26:15 +00:00
Ulrich Weigand
759cc328c6 gdb/ChangeLog:
* auxv.c (fprint_target_auxv): Handle AT_BASE_PLATFORM and
	AT_EXECFN.  Re-sort AT_SECURE.

include/elf/ChangeLog:

	* common.h (AT_BASE_PLATFORM, AT_EXECFN): Define.
2008-11-13 15:07:54 +00:00
Jan Kratochvil
73e113d460 * monitor.c (monitor_insert_breakpoint): Remove unused variable `bp'. 2008-11-13 15:02:15 +00:00
Joel Brobecker
c31ad2a1f7 * ia64-tdep.c: Remove commented out #define. 2008-11-13 05:05:07 +00:00
Joel Brobecker
84290f2fa2 * remote-sim.c (gdbsim_mourn_inferior): Use "target" parameter
instead of the "gdbsim_ops" global.
2008-11-13 01:26:44 +00:00
Doug Evans
de04a24895 * infcall.c (call_function_by_hand): Handle inferior exit.
* gdb.base/callexit.exp: New file.
	* gdb.base/callexit.c: New file.
2008-11-12 00:39:28 +00:00
Thiago Jung Bauermann
3c8b2edaed * remote-sim.c (gdbsim_create_inferior, gdbsim_mourn_inferior): Add
missing struct target_ops argument.
2008-11-11 22:07:40 +00:00
Joel Sherrill
f5d9a29225 2008-11-11 Joel Sherrill <joel.sherrilL@oarcorp.com>
* MAINTAINERS: Add myself for write after approval privileges.
2008-11-11 22:05:45 +00:00
Tom Tromey
de8ee0e21e * gdbtypes.c (copy_type_recursive): Clear new fields. 2008-11-10 20:53:43 +00:00
Tom Tromey
b03a6ea40e * cli/cli-cmds.c (source_script): Clean up full_pathname. Run
cleanups on early return.
2008-11-10 20:38:24 +00:00
Vladimir Prus
136d6dae62 Kill pthread_ops_hack
* target.h (struct target_ops): Make to_attach, to_detach,
	to_create_inferior and to_mourn_inferior accept a pointer
    	to struct target_ops.
	(target_attach, target_create_inferior, target_create_inferior):
	Convert from macros to function.  Find the right target to
	invoke a method of.
	(find_default_attach, find_default_create_inferior): New parameter
	ops.
	* corefile.c (core_file_command): Pass target to to_detach.
	* corelow.c (core_detach): Add 'ops' parameter.
	* fork-child.c (fork_inferior): Return the pid.  Allow
	init_trace_fun to be NULL.
	* inf-ptrace (ptrace_ops_hack): Remove.
	(inf_ptrace_him): Remove, moving all logic into....
	(inf_ptrace_create_inferior): ... here.  Push the target
	passed as parameter.
	(inf_ptrace_mourn_inferior, inf_ptrace_attach, inf_ptrace_detach):
	Push/pop target passed as parameter, no ptrace_ops_hack.
	(inf_ptrace_target): Don't remember result.
	* inferior.h (fork_inferior): Adjust prototype.
	* linux-nat.c (linux_nat_create_inferior, linux_nat_attach)
	(linux_nat_detach, linux_nat_mourn_inferior): New parameter ops.
	Pass it to linux_ops target.
	* linux-thread-db.c (thread_db_detach, thread_db_mourn_inferior):
	New parameter ops. Pass it to the target beneath.
	* remote.c (remote_mourn, extended_remote_mourn, remote_detach)
	(extended_remote_create_inferior): New parameter ops. Pass it
	further.
	* target.c (debug_to_attach, debug_to_detach)
	(debug_to_mourn_inferior): New parameter ops.
	(target_create_inferior): New.
	(update_current_target): Do not inherit to_attach, to_detach,
	to_create_inferiour, to_mourn_inferior.  Do not default
	to_detach and to_mourn_inferior.
	(target_detach): Find the right target to use.
	(target_mourn_inferior): New.
	(find_default_attach, find_default_create_inferior): New parameter
	ops.  Pass the found target when calling its method.
	(init_dummy_target): Provide fallback definition of to_detach.
	(target_attach): New.
	(debug_to_attach, debug_to_detach, debug_to_create_inferior)
	(debug_to_mourn_inferiour): New parameter ops.
        * aix-thread.c: Adjust.
        * bsd-uthread.c: Adjust.
        * gnu-nat.c: Adjust.
        * go32-nat.c: Adjust.
        * hpux-thread.c: Adjust.
        * inf-ttrace.c: Ajust.
        * monitor.c: Adjust.
        * nto-procfs.c: Adjust.
        * procfs.c: Adjust.
        * remote-m32r-sdi.c: Adjust.
        * remote-mips.c: Adjust.
        * remote-sim.c: Adjust.
        * rs6000-nat.c: Adjust.
        * sol-thread.c: Adjust.
        * win32-nat.c: Adjust.
	* dec-thread.c: Adjust.
2008-11-09 11:27:18 +00:00
Vladimir Prus
ed40653276 * thread.c (print_thread_info): Eliminate now useless checks
for exited threads.
2008-11-09 07:54:27 +00:00
Doug Evans
9b7d901949 fix typo in date 2008-11-07 21:05:27 +00:00
Pedro Alves
48fb2d97d4 * i386-dicos-tdep.c (i386_dicos_init_abi): Set decr_pc_after_break
to 0.
2008-11-06 16:44:45 +00:00
Pedro Alves
29c87f7ff2 * remote.c (notice_new_inferiors): Add a new inferior only when
we're going to add a new thread.
2008-11-05 21:19:45 +00:00
Pedro Alves
e0ba674611 * defs.h (add_inferior_continuation)
(do_all_inferior_continuations)
	(discard_all_inferior_continuations): Declare.
	* utils.c (add_inferior_continuation)
	(do_all_inferior_continuations)
	(discard_all_inferior_continuations): New.
	* inferior.h (struct inferior) <continuations>: New field.
	* inferior.c (free_inferior): Discard all the inferior
	continuations.
	* inf-loop.c (inferior_event_handler): Do all current inferior
	continuations.
	* infcmd.c (attach_command): Register an inferior continuation
	instead of a thread continuation.
	* infrun.c (handle_inferior_event): If stop_soon is
	STOP_QUIETLY_NO_SIGSTOP, also expect a TARGET_SIGNAL_0.
2008-11-05 20:23:07 +00:00
Pedro Alves
d3fd534293 * inf-loop.c (inferior_event_handler): On INF_ERROR and
INF_REG_EVENT throwing, don't call target_async or pop_target.
	Call pop_all_targets_above.
	* remote.c (remote_close): Call remote_terminal_ours.  Don't call
	signal or target_async.
2008-11-04 20:52:24 +00:00
Daniel Jacobowitz
1c9f699cd9 * eval.c (evaluate_subexp_standard): Assert that there is at
least one array dimension.
2008-11-04 15:32:54 +00:00
Vladimir Prus
cb0362bb7a Make attach_command exception-safe
* infcmd.c (attach_command): Call async_enable_stdin
        if exception is thrown.
2008-11-03 21:07:28 +00:00
Pedro Alves
9bc9e92779 * gdbarch.sh (has_global_solist): Mention global breakpoints.
* gdbarch.h: Regenerate.
2008-11-03 16:11:45 +00:00
Pedro Alves
50c71eaf0e * remote.c (remote_start_remote): If the solib list is global,
fetch libraries and insert breakpoints after connecting.
	* infcmd.c (post_create_inferior): If the solist is shared between
	inferiors, no need to refetch it on every new inferior.
	(detach_command): If the shared library list is shared between
	inferiors, then don't clear it on every inferior detach.
	* gdbarch.sh (has_global_solist): New.
	* i386-dicos-tdep.c (i386_dicos_init_abi): Set
	gdbarch_has_global_solist.
	* target.c (target_pre_inferior): If the shared library list is
	shared between inferiors, then don't clear it here, neither
	invalidate the memory regions or clear the target description.
	(target_detach): If the shared library list is shared between
	inferiors, then don't remove breakpoints from the target here.
	(target_disconnect): Comment.
	* solib.c (update_solib_list): Check for null_ptid.
	* breakpoint.c (insert_breakpoints, update_global_location_list):
	If the shared library list is shared between inferiors, insert
	breakpoints even if there's no execution.
	(breakpoint_init_inferior): If the shared library list is shared
	between inferiors, don't delete breakpoints or mark them
	uninserted here.

	* gdbarch.c, gdbarch.h: Regenerate.
2008-11-03 14:01:27 +00:00
Tom Tromey
2a2546f0c1 Fix ChangeLog dates 2008-10-31 20:21:13 +00:00
Pedro Alves
2fdf0e429d * inferior.h (inferior_ignoring_leading_exec_events): Delete
declaration.
2008-10-31 20:02:04 +00:00
Pedro Alves
3990c31b8a * inferior.h (write_inferior_status_register): Delete.
* infrun.c (write_inferior_status_register): Delete.
2008-10-31 19:41:37 +00:00
Tom Tromey
f3134b8886 gdb
* value.c (coerce_array): Use check_typedef.
gdb/testsuite
	* gdb.base/pointers.exp: Add test.
	* gdb.base/pointers.c (k, S): New typedefs.
	(instance): New global.
2008-10-30 21:44:15 +00:00
Tom Tromey
724b958c41 * cli/cli-logging.c (handle_redirections): Make a cleanup.
* reggroups.c (maintenance_print_reggroups): Make a cleanup.
	* regcache.c (regcache_print): Make a cleanup.
	* maint.c (maintenance_print_architecture): Make a cleanup.
	* dummy-frame.c (maintenance_print_dummy_frames): Make a cleanup.
2008-10-30 20:35:31 +00:00
Tom Tromey
a05016c09e * utils.c (make_cleanup_close): Use make_cleanup_dtor.
(do_close_cleanup): Don't free 'fd'.
2008-10-30 20:33:51 +00:00
Tom Tromey
9fe4a2165d * source.c (symtab_to_fullname): Test 'r >= 0'.
(psymtab_to_fullname): Likewise.
	(get_filename_and_charpos): Make a cleanup.
	(forward_search_command): Likewise.
	(reverse_search_command): Likewise.
	* exec.c (exec_file_attach): Close scratch_chan on failure.
	* nto-procfs.c (procfs_open): Make a cleanup.
	(procfs_pidlist): Likewise.
	(do_closedir_cleanup): New function.
2008-10-30 18:42:28 +00:00
Andreas Schwab
c22261528c * infcmd.c (construct_inferior_arguments): Handle newlines
specially.

testsuite/:
	* gdb.base/args.exp: Add tests for newlines.
2008-10-30 10:07:16 +00:00
Joel Brobecker
fe798b7549 * breakpoint.h (enum bptype): Delete bp_catch_exec.
* breakpoint.c (insert_catchpoint): Remove handling for
        bp_catch_exec breakpoint kinds.
        (insert_bp_location, update_breakpoints_after_exec, remove_breakpoint)
        (ep_is_catchpoint, print_it_typical, bpstat_check_location),
        (bpstat_check_location, bpstat_what, print_one_breakpoint_location)
        (print_one_breakpoint_location, user_settable_breakpoint)
        (breakpoint_address_is_meaningful, adjust_breakpoint_address)
        (allocate_bp_location, mention, breakpoint_re_set_one)
        (disable_command, enable_command): Likewise.
        (create_exec_event_catchpoint): Delete.
        (insert_catch_exec, remove_catch_exec, breakpoint_hit_catch_exec)
        (print_it_catch_exec, print_one_catch_exec, print_mention_catch_exec):
        New functions.
        (catch_exec_breakpoint_ops): New static global.
        (catch_exec_command_1): Use create_catchpoint instead of
        create_exec_event_catchpoint to create the exec catchpoint.
2008-10-30 05:16:24 +00:00
Tom Tromey
f154cae1fd * Makefile.in (SUBDIR_CLI_OBS): Don't mention cli-utils.o.
(SUBDIR_CLI_DEPS): Don't mention cli-utils.c.
	(HFILES_NO_SRCDIR): Don't mention cli-utils.h.
	(cli-utils.o): Remove.
	* cli/cli-utils.c: Remove.
	* cli/cli-utils.h: Remove.
2008-10-28 20:50:18 +00:00
Tom Tromey
79a45b7d67 gdb
* varobj.c (value_get_print_value): Include valprint.h.
	(value_get_print_value): Use get_formatted_print_options.
	* value.h (struct value_print_options): Declare.
	(value_print, val_print, common_val_print, val_print_string):
	Update.
	* value.c: Include valprint.h.
	(show_values): Use get_user_print_options.
	(show_convenience): Likewise.
	* valprint.h (prettyprint_arrays, prettyprint_structs): Don't
	declare.
	(struct value_print_options): New type.
	(vtblprint, unionprint, addressprint, objectprint, print_max,
	inspect_it, repeat_count_threshold, output_format,
	stop_print_at_null): Don't declare.
	(user_print_options, get_user_print_options,
	get_raw_print_options, get_formatted_print_options): Declare.
	(print_array_indexes_p): Don't declare.
	(maybe_print_array_index, val_print_array_elements): Update.
	* valprint.c (print_max): Remove.
	(user_print_options): New global.
	(get_user_print_options, get_raw_print_options,
	get_formatted_print_options): New functions.
	(print_array_indexes, repeat_count_threshold, stop_print_at_null,
	prettyprint_structs, prettyprint_arrays, unionprint,
	addressprint): Remove.
	(val_print): Remove format, deref_ref, pretty arguments; add
	options.  Update.
	(common_val_print): Likewise.
	(print_array_indexes_p): Remove.
	(maybe_print_array_index): Remove format, pretty arguments; add
	options.  Update.
	(val_print_array_elements): Remove format, deref_ref, pretty
	arguments; add options.  Update.
	(val_print_string): Add options argument.  Update.
	(_initialize_valprint): Use user_print_options.
	(output_format): Remove.
	(set_output_radix_1): Use user_print_options.
	* typeprint.c: Include valprint.h.
	(objectprint): Don't declare.
	(whatis_exp): Use get_user_print_options.
	* tui/tui-regs.c: Include valprint.h.
	(tui_register_format): Use get_formatted_print_options.
	* tracepoint.c: Include valprint.h.
	(addressprint): Don't declare.
	(trace_mention): Use get_user_print_options.
	(tracepoints_info): Likewise.
	* stack.c (print_frame_args): Use get_raw_print_options.
	(print_frame_info): Use get_user_print_options.
	(print_frame): Likewise.
	* sh64-tdep.c: Include valprint.h
	(sh64_do_register): Use get_formatted_print_options.
	* scm-valprint.c (scm_inferior_print): Remove format, deref_ref,
	pretty arguments; add options.
	(scm_scmlist_print): Likewise.  Update.
	(scm_scmval_print): Likewise.
	(scm_val_print): Likewise.
	(scm_value_print): Remove format, pretty arguments; add options.
	Update.
	* scm-lang.h (scm_value_print, scm_val_print, scm_scmval_print):
	Update.
	* scm-lang.c (scm_printstr): Add options argument.
	* python/python-value.c: Include valprint.h.
	(valpy_str): Use get_user_print_options.
	* printcmd.c: Include valprint.h.
	(addressprint): Don't declare.
	(inspect_it): Remove.
	(print_formatted): Remove format option; add options.  Update.
	(print_scalar_formatted): Likewise.
	(print_address_demangle): Use get_user_print_options.
	(do_examine): Use get_formatted_print_options.
	(print_command_1): Likewise.
	(output_command): Use get_formatted_print_options.
	(do_one_display): Likewise.
	(print_variable_value): Use get_user_print_options.
	* p-valprint.c (pascal_val_print): Remove format, deref_ref,
	pretty arguments; add options.  Update.
	(pascal_value_print): Remove format, pretty arguments; add
	options.  Update.
	(vtblprint, objectprint): Don't declare.
	(pascal_static_field_print): Remove.
	(pascal_object_print_value_fields): Remove format, pretty
	arguments; add options.  Update.
	(pascal_object_print_static_field): Likewise.
	(_initialize_pascal_valprint): Use user_print_options.  Update.
	* p-lang.h (pascal_val_print, pascal_value_print,
	pascal_printstr, pascal_object_print_value_fields): Update.
	(vtblprint, static_field_print): Don't declare.
	* p-lang.c (pascal_printstr): Add options argument.  Update.
	* objc-lang.c (objc_printstr): Add options argument.  Update.
	* mt-tdep.c: Include valprint.h.
	(mt_registers_info): Use get_raw_print_options.
	* mips-tdep.c: Include valprint.h.
	(mips_print_fp_register): Use get_formatted_print_options.
	(mips_print_register): Likewise.
	* mi/mi-main.c: Include valprint.h.
	(get_register): Use get_user_print_options.
	(mi_cmd_data_evaluate_expression): Likewise.
	(mi_cmd_data_read_memory): Use get_formatted_print_options.
	* mi/mi-cmd-stack.c: Include valprint.h.
	(list_args_or_locals): Use get_raw_print_options.
	* m2-valprint.c (print_function_pointer_address): Add addressprint
	argument.
	(m2_print_long_set): Remove format, pretty arguments.
	(m2_print_unbounded_array): Remove format, deref_ref, pretty
	arguments; add options.  Update.
	(print_unpacked_pointer): Remove format argument; add options.
	Now static.  Update.
	(print_variable_at_address): Remove format, deref_ref, pretty
	arguments; add options.  Update.
	(m2_print_array_contents): Likewise.
	(m2_val_print): Likewise.
	* m2-lang.h (m2_val_print): Update.
	* m2-lang.c (m2_printstr): Add options argument. Update.
	* language.h (struct value_print_options): Declare.
	(struct language_defn) <la_printstr>: Add options argument.
	<la_val_print>: Remove format, deref_ref, pretty argument; add
	options.
	<la_value_print>: Remove format, pretty arguments; add options.
	<la_print_array_index>: Likewise.
	(LA_VAL_PRINT, LA_VALUE_PRINT, LA_PRINT_STRING,
	LA_PRINT_ARRAY_INDEX): Update.
	(default_print_array_index): Update.
	* language.c (default_print_array_index): Remove format, pretty
	arguments; add options.  Update.
	(unk_lang_printstr): Add options argument.
	(unk_lang_val_print): Remove format, deref_ref, pretty arguments;
	add options.
	(unk_lang_value_print): Remove format, pretty arguments; add
	options.
	* jv-valprint.c (java_value_print): Remove format, pretty
	arguments; add options.  Update.
	(java_print_value_fields): Likewise.
	(java_val_print): Remove format, deref_ref, pretty arguments; add
	options.  Update.
	* jv-lang.h (java_val_print, java_value_print): Declare.
	* infcmd.c: Include valprint.h.
	(print_return_value): Use get_raw_print_options.
	(default_print_registers_info): Use get_user_print_options,
	get_formatted_print_options.
	(registers_info): Use get_formatted_print_options.
	* gdbtypes.h (struct value_print_options): Declare.
	(print_scalar_formatted): Update.
	* f-valprint.c (f77_print_array_1): Remove format, deref_ref,
	pretty arguments; add options.  Update.
	(f77_print_array): Likewise.
	(f_val_print): Likewise.
	* f-lang.h (f_val_print): Update.
	* f-lang.c (f_printstr): Add options argument.  Update.
	(c_value_print): Update declaration.
	* expprint.c: Include valprint.h.
	(print_subexp_standard): Use get_raw_print_options,
	get_user_print_options.
	* eval.c: Include valprint.h.
	(objectprint): Don't declare.
	(evaluate_subexp_standard): Use get_user_print_options.
	* cp-valprint.c (vtblprint, objectprint, static_field_print):
	Remove.
	(cp_print_value_fields): Remove format, pretty arguments; add
	options.  Update.
	(cp_print_value): Likewise.
	(cp_print_static_field): Likewise.
	(_initialize_cp_valprint): Use user_print_options.  Update.
	* c-valprint.c (print_function_pointer_address): Add addressprint
	argument.
	(c_val_print): Remove format, deref_ref, pretty arguments; add
	options.  Update.
	(c_value_print): Add options argument.  Update.
	* c-lang.h (c_val_print, c_value_print, c_printstr): Update.
	(vtblprint, static_field_print): Don't declare.
	(cp_print_value_fields): Update.
	* c-lang.c (c_printstr): Add options argument.  Update.
	* breakpoint.c: Include valprint.h.
	(addressprint): Don't declare.
	(watchpoint_value_print): Use get_user_print_options.
	(print_one_breakpoint_location): Likewise.
	(breakpoint_1, print_it_catch_fork, print_it_catch_vfork, mention,
	print_exception_catchpoint): Likewise.
	* auxv.c (fprint_target_auxv): Don't declare addressprint.  Use
	get_user_print_options.
	* ada-valprint.c (struct ada_val_print_args): Remove format,
	deref_ref, and pretty; add options.
	(print_optional_low_bound): Add options argument.
	(val_print_packed_array_elements): Remove format and pretty
	arguments; add options.  Update.
	(printstr): Add options argument.  Update.
	(ada_printstr): Likewise.
	(ada_val_print): Remove format, deref_ref, pretty arguments; add
	options argument.  Update.
	(ada_val_print_stub): Update.
	(ada_val_print_array): Remove format, deref_ref, pretty arguments;
	add options.  Update.
	(ada_val_print_1): Likewise.
	(print_variant_part): Likewise.
	(ada_value_print): Remove format, pretty arguments; add options.
	Update.
	(print_record): Likewise.
	(print_field_values): Likewise.
	* ada-lang.h (ada_val_print, ada_value_print, ada_printstr):
	Update.
	* ada-lang.c (ada_print_array_index): Add options argument; remove
	format and pretty arguments.
	(print_one_exception): Use get_user_print_options.
gdb/testsuite
	* gdb.base/exprs.exp (test_expr): Add enum formatting tests.
2008-10-28 17:19:58 +00:00
Tom Tromey
7c8a8b0498 * cli/cli-script.c (do_fclose_cleanup): Remove.
(script_from_file): Use make_cleanup_fclose.
	* xml-tdesc.c (do_cleanup_fclose): Remove.
	(fetch_xml_from_file): Use make_cleanup_fclose.
	* tracepoint.c (tracepoint_save_command): Use
	make_cleanup_fclose.  Always free pathname.
	* source.c (print_source_lines_base): Use make_cleanup_fclose.
	* remote.c (fclose_cleanup): Remove.
	(remote_file_put): Use make_cleanup_fclose.
	(remote_file_get): Likewise.
	* linux-nat.c (linux_nat_find_memory_regions): Use
	make_cleanup_fclose.
	(linux_nat_info_proc_cmd): Likewise.
	(linux_proc_pending_signals): Likewise.
	* fbsd-nat.c (fbsd_find_memory_regions): Use make_cleanup_fclose.
	Free file name.
	* cli/cli-dump.c (do_fclose_cleanup): Remove.
	(make_cleanup_fclose): Remove.
	* defs.h (make_cleanup_fclose): Declare.
	* utils.c (do_fclose_cleanup): New function.
	(make_cleanup_fclose): Likewise.
2008-10-28 15:22:13 +00:00
Pedro Alves
5a55c295aa * inflow.c (kill_command): If the target claims there is still
execution, don't clear the thread list.
2008-10-27 22:37:20 +00:00
Pedro Alves
5256a53bb3 * cp-name-parser.y: Include defs.h instead of config.h.
(parse_escape): Rename to ...
	(cp_parse_escape): ... this.
	(yylex): Update.
	(xfree) [TEST_CPNAMES]: New.
2008-10-27 19:28:52 +00:00
Pedro Alves
e8ecdb5c3b * CONTRIBUTE: Mention autoconf 2.59 and configure.ac instead of
2.13 and configure.in.
2008-10-27 17:41:57 +00:00
Pedro Alves
8a30517206 * target.h (struct target_ops) <to_supports_multi_process>: New
field.
	(target_supports_multi_process): New define.
	* target.c (update_current_target): Inherit and de_fault
	to_supports_multi_process.
	* infcmd.c (attach_command): Allow attaching to multiple processes
	if the target supports it.
	(detach_command): If the target claims there is still execution,
	don't clear the thread list.
	* remote.c (remote_supports_multi_process): New.
	(init_remote_ops): Register remote_supports_multi_process.
2008-10-27 12:43:24 +00:00
Pedro Alves
676e87b308 * Makefile.in (.y.c, .l.c): sed free to xfree. 2008-10-27 11:46:24 +00:00
Pedro Alves
f0323ca003 gdb/
* Makefile.in (INSTALLED_LIBS, CLIBS): Remove reference to
	$(TM_CLIBS).
	(CDEPS): Remove reference to $(TM_CDEPS).

gdb/doc/
	* gdbint.texinfo (Adding a New Target): Don't mention TDEPFILES,
	.mt files, TM_CLIBS or TM_CDEPS.
	(x86 Watchpoints): Don't mention TDEPFILES.
2008-10-27 11:37:40 +00:00
Michael Snyder
3067f6e5f1 2008-10-26 Michael Snyder <msnyder@vmware.com>
* infrun.c (handle_inferior_event): Handle dynamic symbol
	resolution in reverse.
2008-10-27 04:53:05 +00:00
Joel Brobecker
6130d0b72b * infrun.c: Minor comment reformatting. 2008-10-25 16:03:14 +00:00
Jan Kratochvil
2da16c8c35 ChangeLog (2008-03-13): Fix a function name typo. 2008-10-25 15:44:22 +00:00
Pedro Alves
bbe2ba601d * ada-exp.y (write_object_renaming): Use malloc instead of
xmalloc.
	* p-exp.y (pop_current_type): Use free instead of xfree.
2008-10-25 02:16:39 +00:00
Pedro Alves
2e979b9404 * fork-child.c (startup_inferior): Only set threads not-executing
after getting all the pending execs.  On TARGET_WAITKIND_IGNORE,
	keep waiting, don't resume.  On all other cases but
	TARGET_WAITKIND_SIGNALLED and TARGET_WAITKIND_EXITED, switch to
	the event ptid.
2008-10-24 22:01:25 +00:00
Pedro Alves
74531fed1f Remote non-stop mode support.
* remote.c (pending_stop_reply): New.
	(struct remote_state) <non_stop_aware, support_vCont_t>: New
	fields.
	(remote_async_inferior_event_token)
	(remote_async_get_pending_events_token): New.
	(notice_new_inferiors): New, abstracted out from record_currthread.
	(record_currthread): Call it.
	(remote_threads_info): Default threads to running in non-stop
	mode.  In non-stop mode, only qfThreadInfo is supported.
	(remote_close): Discard all pending stop_replies.  Close the event
	sources.
	(set_stop_requested_callback): New.
	(remote_start_remote): Implement non-stop mode startup.  In
	all-stop, don't clear the thread list here.
	(remote_non_stop_feature): New.
	(remote_protocol_features): Add a "QNonStop" feature.
	(remote_open_1): Clear cached_wait_status and non_stop_aware.
	Clear the thread list here.
	(remote_detach_1): Discard pending stop replies of the process we
	detached from.
	(extended_remote_attach_1): Implement non-stop mode.
	(remote_vcont_probe): Recognize `vCont;t'.
	(remote_vcont_resume): Implement non-stop mode.
	(remote_resume): Don't set waiting_for_stop_reply in non-stop
	mode.
	(remote_stop_ns): New.
	(remote_stop): Rename to ...
	(remote_stop_as): ... this.  If we have a cached wait status,
	don't bother interrupting the remote.
	(remote_stop): Reimplement as wrapper around remote_stop_as and
	remote_stop_ns.
	(interrupt_query): Don't query in async mode.
	(struct cached_reg, cahed_reg_t): New.
	(struct stop_reply): New.
	(stop_reply_queue): New.
	(stop_reply_xmalloc, stop_reply_xfree)
	(discard_pending_stop_replies, do_stop_reply_xfree)
	(queued_stop_reply, push_stop_reply, peek_stop_reply)
	(remote_parse_stop_reply, remote_get_pending_stop_replies)
	(process_stop_reply): New.
	(remote_wait_ns): New.
	(remote_wait_as): Use remote_parse_stop_reply.  Invalidate the
	notion of current general thread is a process exit was reported.
	(remote_wait): Call remote_wait_ns in non-stop mode.
	(handle_notification): New.
	(putpkt_binary): Handle notifications.  Don't care for
	waiting_for_stop_reply in non-stop mode.
	(getpkt_sane): Rename to ...
	(getpkt_or_notif_sane_1): ... this.  Add `expecting_notif'
	argument.  Handle it.  Handle notifications.
	(getpkt_sane): Reimplement as wrapper around getpkt_or_notif_sane_1.
	(getpkt_or_notif_sane): New.
	(select_new_thread_callback): Check for exited state instead of
	comparing the ptid against minus_one_ptid.
	(extended_remote_create_inferior_1): Query the remote about the
	current thread.
	(remote_supports_non_stop): New.
	(init_remote_ops): Register it.
	(remote_async_inferior_event_handler): New.
	(remote_async_get_pending_events_handler): New.

	* infcmd.c (proceed_thread_callback): Comment.
	(proceed_after_attach_callback, proceed_after_attach): New.
	(attach_command_post_wait): In background attach, resume all
	threads, but only if they are unsignalled, and not explicitly
	stopped.  In foreground attach, in non-stop mode, make sure to
	stop all threads of the just attached to process.
	(attach_command): In non-stop mode: If doing a background attach,
	stop at least one thread.  If a foreground attach, stop all
	threads.
2008-10-24 20:38:26 +00:00
Pedro Alves
50d0174816 * event-loop.h: Mention async_event_handlers.
(async_event_handler): Forward declare.
	(async_event_handler_func): New typedef.
	(create_async_event_handler, delete_async_event_handler)
	(mark_async_event_handler): Declare.
	* event-loop.c (event_data): New.
	(event_handler_func): Take an event_data instead of an integer.
	(struct gdb_event): Replace the integer file descriptor by a
	generic event_data.
	(async_event_handler): New.
	(async_handler_ready): Delete.
	(async_event_handler_list): New.
	(create_event): New.
	(create_file_event): Use it.
	(process_event): Adjust.
	(gdb_do_one_event): Poll from the event sources in round-robin
	fashion across calls.  Be sure to consult all sources before
	blocking.
	(handle_file_event): Take an event_data instead of an integer.
	Adjust.
	(gdb_wait_for_event): Add `block' argument.  Handle it.
	(mark_async_signal_handler): Remove unneeded cast.
	(invoke_async_signal_handler): Rename to ...
	(invoke_async_signal_handlres): ... this.  Return true if any was
	handled.
	(check_async_ready): Delete
	(create_async_event_handler): New.
	(mark_async_event_handler): New.
	(struct async_event_handler_data): New.
	(invoke_async_event_handler): New.
	(check_async_event_handlers): New.
	(delete_async_event_handler): New.
	(handle_timer_event): Adjust.
2008-10-24 19:33:39 +00:00
Doug Evans
6dd47d34c6 * dwarf2read.c (typename_concat): Don't segv if prefix or suffix
is NULL.  Simplify obs == NULL case.
2008-10-24 18:21:00 +00:00
Hui Zhu
fff0886884 2008-10-24 Hui Zhu <teawater@gmail.com>
Pedro Alves  <pedro@codesourcery.com>

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

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

	* gdb.texinfo (displaced-stepping): Describe the auto mode
	setting, and say it's the default.  This is now a mainstream
	setting instead of a maintenance setting.
2008-10-24 02:31:41 +00:00
Pedro Alves
252fbfc86a gdb/
2008-10-23  Pedro Alves  <pedro@codesourcery.com>

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

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

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

	* observer.texi (thread_stop_requested): New.

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

	* lib/mi-support.exp (mi_expect_interrupt): Expect signal 0
	instead of SIGINT.
2008-10-23 23:11:21 +00:00