Commit Graph

24629 Commits

Author SHA1 Message Date
Pedro Alves 4b477ade4f * exec.h (section_table_xfer_memory_partial): Improve description,
mention SECTION_NAME.
	* exec.c (section_table_xfer_memory_partial): Remove stale
	description.
2009-06-12 18:38:36 +00:00
Aleksandar Ristovski c59fcb4cd4 * nto-tdep.h (nto_generic_supply_gpregset)
(nto_generic_supply_fpregset, nto_generic_supply_altregset): Remove.
* nto-tdep.c (nto_generic_supply_gpregset)
(nto_generic_supply_fpregset, nto_generic_supply_altregset): Remove.
2009-06-12 02:32:10 +00:00
gdbadmin cabc9e9a23 *** empty log message *** 2009-06-12 00:00:32 +00:00
Aleksandar Ristovski 19a934d888 * i386-nto-tdep.c (I386_NTO_SIGCONTEXT_OFFSET): Remove define.
(i386nto_sigcontext_addr): Change the way context address is calculated.
	(i386nto_init_abi): Remove usage of deprecated sc_reg_offset and
	sc_sp_offset and set sc_reg_offset and sc_num_regs.
2009-06-11 20:55:19 +00:00
Aleksandar Ristovski 80b1849c68 * i386-nto-tdep.c (i386_nto_target): Remove definition.
(init_i386nto_ops): Use macros to set fields to global
	current_nto_target directly.
	(i386nto_init_abi): Remove unused nto_set_target call.
	* nto-tdep.h (nto_set_target): Remove unused declaration.
	* nto-tdep.c (nto_set_target): Remove unused function.
2009-06-11 19:29:00 +00:00
Pedro Alves 80c99de1bc * breakpoint.c (break_command_really): Rename local variable
breakpoint_chain to bkpt_chain.
2009-06-11 18:51:42 +00:00
Aleksandar Ristovski dbfb31a45c Add support for XMM registers.
* i386-nto-tdep.c (i386nto_regset_id): Add case for SSE register set.
	(i386nto_register_area): Correctly calculate offsets and sizes for
	all supported registers.
2009-06-11 17:12:11 +00:00
Tom Tromey 17dd65ce9a * eval.c (evaluate_subexp_standard) <OP_OBJC_MSGCALL>: Remove
'static' from local variable definitions.
2009-06-11 16:49:47 +00:00
Pedro Alves 828cd292ea * symtab.c (append_expanded_sal): Remove unused local variables. 2009-06-11 14:24:24 +00:00
Pedro Alves d4db2f362f gdb/
* infrun.c (sched_multi): New global.
	(resume): If sched_multi is set, resume only threads of the
	current inferior.
	(prepare_to_proceed): Don't switch over to wait_ptid if we're
	resuming a different inferior, and sched_multi is off.
	(show_schedule_multiple): New.
	(_initialize_infrun): Register new "set schedule-multiple" command.
	* inferior.h (sched_multi): Declare.
	* NEWS: Mention new "schedule-multiple" setting.
gdb/doc/
	* gdb.texinfo (All-Stop): Document new 'set schedule-multiple'
	command.
2009-06-11 11:57:46 +00:00
gdbadmin e433f867b0 *** empty log message *** 2009-06-11 00:00:33 +00:00
Pedro Alves e21458b242 * varobj.c (varobj_create): Properly restore the selected frame. 2009-06-10 23:39:45 +00:00
Tom Tromey 8bb318c686 * inferior.c (print_inferior): Make a table, not a list. Emit
table headers.
2009-06-10 22:08:19 +00:00
Pedro Alves bbb2952039 2009-06-10 Jonas Maebe <jonas.maebe@elis.ugent.be>
* darwin-nat.c (darwin_stop_inferior): Pass 0 as options to
	darwin_wait (blocking wait).
	(darwin_kill_inferior): Likewise.
2009-06-10 21:08:27 +00:00
Pedro Alves 66852e9c4d * infrun.c (handle_inferior_event): Update comment around trying
to revert back to a stepping thread that has exited.
2009-06-10 17:26:36 +00:00
Cary Coutant d0c6ba3d4d * dwarf2read.c (dwarf_decode_lines): Recognize and ignore
DW_LNE_set_discriminator.
2009-06-10 14:55:14 +00:00
Pierre Muller 059fb39f2a * breakpoint.c: ARI fixes.
(create_overlay_event_breakpoint): Avoid assignment inside if statement.
	(print_one_breakpoint_location): Likewise.
	(create_longjmp_breakpoint): Likewise.
	(tracepoint_save_command): Likewise
	(bpstat_find_step_resume_breakpoint): No operator at end of line.
	(bpstat_stop_status): Likewise.
	(describe_other_breakpoints): Likewise.
	(hw_watchpoint_used_count): Likewise.
	(expand_line_sal_maybe): Likewise.
	(break_command_really): Likewise.
	(delete_command): Likewise.
	(do_enable_breakpoint): Likewise.
	(delete_trace_command): Likewise.
	(catch_exception_command_1): Likewise and remove extra parentheses.
2009-06-10 04:32:08 +00:00
gdbadmin 3052cdc29e *** empty log message *** 2009-06-10 00:00:08 +00:00
Daniel Jacobowitz 3788363dac * gdb.mi/mi-async.exp, gdb.mi/mi-basics.exp,
gdb.mi/mi-break.exp, gdb.mi/mi-cli.exp,
	gdb.mi/mi-disassemble.exp, gdb.mi/mi-eval.exp,
	gdb.mi/mi-file-transfer.exp, gdb.mi/mi-file.exp,
	gdb.mi/mi-regs.exp, gdb.mi/mi-return.exp,
	gdb.mi/mi-simplerun.exp, gdb.mi/mi-stepi.exp,
	gdb.mi/mi-var-block.exp, gdb.mi/mi-var-cmd.exp,
	gdb.mi/mi-var-display.exp, gdb.mi/mi-var-invalidate.exp,
	gdb.mi/mi-watch.exp, gdb.mi/mi2-basics.exp,
	gdb.mi/mi2-break.exp, gdb.mi/mi2-cli.exp,
	gdb.mi/mi2-disassemble.exp, gdb.mi/mi2-eval.exp,
	gdb.mi/mi2-file.exp, gdb.mi/mi2-regs.exp,
	gdb.mi/mi2-return.exp, gdb.mi/mi2-simplerun.exp,
	gdb.mi/mi2-stepi.exp, gdb.mi/mi2-var-block.exp,
	gdb.mi/mi2-var-child.exp, gdb.mi/mi2-var-cmd.exp,
	gdb.mi/mi2-var-display.exp, gdb.mi/mi2-watch.exp,
	gdb.server/ext-run.exp, gdb.server/file-transfer.exp,
	gdb.server/server-mon.exp, gdb.server/server-run.exp,
	gdb.trace/actions.exp, gdb.trace/backtrace.exp,
	gdb.trace/deltrace.exp, gdb.trace/infotrace.exp,
	gdb.trace/packetlen.exp, gdb.trace/passc-dyn.exp,
	gdb.trace/passcount.exp, gdb.trace/report.exp,
	gdb.trace/save-trace.exp, gdb.trace/tfind.exp,
	gdb.trace/tracecmd.exp, gdb.trace/while-dyn.exp,
	gdb.trace/while-stepping.exp: Use a unique name for the compiled
	executable.
2009-06-09 17:12:43 +00:00
gdbadmin 46a8f92a3e *** empty log message *** 2009-06-09 00:00:33 +00:00
Pierre Muller 7681d515c3 * breakpoint.c (_initialize_breakpoint): Remove "bu" command alias of
"ubreak" command that does not exist.
2009-06-08 16:05:14 +00:00
Pierre Muller 300d028478 * cli/cli-decode.c (add_alias_cmd): Correct assertion. 2009-06-08 15:45:39 +00:00
gdbadmin dccb44cf06 *** empty log message *** 2009-06-08 00:00:03 +00:00
Pedro Alves 72753510ea * hppa-tdep.c (_initialize_hppa_tdep): Add declaration. 2009-06-07 22:52:44 +00:00
Pedro Alves d1a7880c77 2009-06-07 Pedro Alves <pedro@codesourcery.com>
* procfs.h: New.
	* proc-utils.h (procfs_first_available): Don't declare here.
	* sol-thread.c: Include procfs.h instead of sys/procfs.h and
	proc-utils.h.
	* procfs.c: Include procfs.h.
	(procfs_target): Make it public.  Don't register
	procfs_can_use_hw_breakpoint here.
	(proc_set_watchpoint): Check for PCWATCH or PIOCSWATCH being
	defined instead of TARGET_HAS_HARDWARE_WATCHPOINTS.
	(procfs_can_use_hw_breakpoint): Remove check of
	TARGET_HAS_HARDWARE_WATCHPOINTS.
	(procfs_use_watchpoints): Register procfs_can_use_hw_breakpoint
	here.
	(_initialize_procfs): Don't add the procfs target here.

	* i386-sol2-nat.c: Include target.h and procfs.h.
	(_initialize_amd64_sol2_nat): Install the procfs target here,
	customized with watchpoints support.
	* irix5-nat.c: Include target.h.
	(_initialize_core_irix5): Rename to ...
	(_initialize_irix5_nat): ... this.  Install the procfs target
	here, customized with watchpoints support.
	* alpha-nat.c: Include procfs.h.
	(_initialize_core_alpha): Rename to...
	(_initialize_alpha_nat): ... this.  Install the procfs target
	here, customized with watchpoints support.
	* sparc-sol2-nat.c: Include target.h and procfs.h.
	(_initialize_sparc_sol2_nat): New.

	* config/i386/nm-i386sol2.h (TARGET_HAS_HARDWARE_WATCHPOINTS): Delete.
	* config/sparc/nm-sol2.h (TARGET_HAS_HARDWARE_WATCHPOINTS): Delete.
	* config/mips/irix5.mh (NAT_FILE): Delete.
	* config/mips/irix6.mh (NAT_FILE): Delete.
	* config/mips/nm-irix5.h: Delete.

2009-06-07  Pedro Alves  <pedro@codesourcery.com>

	* gdbint.texinfo (TARGET_HAS_HARDWARE_WATCHPOINTS): Delete all
	references.
2009-06-07 22:33:25 +00:00
Pedro Alves 17592de300 * gdb.threads/manythreads.c (main): Check if PTHREAD_STACK_MIN is
defined before referencing it.
2009-06-07 19:50:52 +00:00
Pedro Alves 81b9222220 * auxv.c (procfs_xfer_auxv): Change type of the `object' argument
to enum target_object.  Cleanup comments.
	* auxv.h: Include "target.h".  Cleanup comments to not mention
	NATIVE_XFER_AUXV anymore.
2009-06-07 19:07:08 +00:00
Pedro Alves cc35222d22 * inferior.h (procfs_first_available): Move declaration to...
* proc-utils.h: ... here.
	* sol-thread.c: Include procfs.h and proc-utils.h.
2009-06-07 18:41:40 +00:00
Pedro Alves 09d3bde977 * inferior.h (proc_iterate_over_mappings): Delete declaration.
* nto-tdep.h (proc_iterate_over_mappings): Delete declaration.
	* procfs.c (proc_iterate_over_mappings): Delete.
2009-06-07 17:58:24 +00:00
Pedro Alves c35b149212 * target.h (struct target_ops): Make to_has_all_memory,
to_has_memory, to_has_stack, to_has_registers and to_has_execution
	methods instead of variables.
	(target_has_all_memory_1, target_has_memory_1, target_has_stack_1)
	(target_has_registers_1, target_has_execution_1): Declare
	functions.
	(target_has_all_memory): Rewrite to call target_has_all_memory_1.
	(target_has_memory): Rewrite to call target_has_memory_1.
	(target_has_stack): Rewrite to call target_has_all_stack_1.
	(target_has_registers): Rewrite to call target_has_registers_1.
	(target_has_execution): Rewrite to call target_has_execution_1.
	(default_child_has_all_memory, default_child_has_memory)
	(default_child_has_stack, default_child_has_registers)
	(default_child_has_execution): Declare.
	(target_mark_running, target_mark_exited): Delete declarations.
	* target.c (default_child_has_all_memory,
	default_child_has_memory, default_child_has_stack,
	default_child_has_registers, default_child_has_execution): New.
	(target_has_all_memory_1, target_has_memory_1, target_has_stack_1,
	target_has_registers_1, target_has_execution_1): New.
	(add_target): Default the to_has_all_memory, to_has_all_memory,
	to_has_memory, to_has_stack, to_has_registers and to_has_execution
	callbacks to return 0.
	(update_current_target): Do not inherit to_has_all_memory,
	to_has_memory, to_has_stack, to_has_registers or to_has_execution.
	(target_mark_running, target_mark_exited): Delete.
	(memory_xfer_partial): Adjust.
	(target_read_memory, target_write_memory, target_search_memory):
	Dispatch to the the top-most target, not the flattened
	current_target.
	(target_info): Adjust.
	(init_dummy_target): Install return_zero as callback for
	to_has_all_memory, to_has_memory, to_has_stack, to_has_registers,
	to_has_execution.
	(set_maintenance_target_async_permitted): Use have_live_inferiors
	instead of target_has_execution.
	* target-memory.c (target_write_memory_blocks): Dispatch memory
	writes to the the top-most target, not the flattened
	current_target.

	* breakpoint.c (insert_breakpoints): Don't check for
	target_has_execution here.
	(update_global_location_list): Check if there are live inferiors
	to debug instead of target_has_execution.
	* infcmd.c (kill_command, detach_command): Check if there are
	inferiors instead of target_has_execution.
	* inferior.h (have_live_inferiors): Declare.
	* inferior.c (have_live_inferiors): New.
	* infrun.c (normal_stop): Don't check for target_has_execution to
	finish the thread states.
	* thread.c (is_thread_state, is_stopped, is_exited, is_running)
	(any_running, is_executing): Remove checks for
	target_has_execution.
	* top.c (kill_or_detach): Don't try to kill core inferiors.
	(quit_target): Don't check for target_has_execution.

	* corelow.c (core_has_memory, core_has_stack, core_has_registers):
	New.
	(init_core_ops): Install core_has_memory, core_has_stack and
	core_has_registers.
	* exec.c (exec_has_memory): New.
	(init_exec_ops): Install exec_has_memory.
	* remote.c (remote_add_inferior): Don't call target_mark_running.
	(remote_start_remote): Don't call target_mark_exited or call
	target_mark_running.
	(remote_open_1): Use have_inferiors instead of
	target_has_execution.  Don't use target_mark_exited.
	(init_remote_ops): Install deafult_child_has_all_memory,
	default_child_has_memory, default_child_has_stack,
	default_child_has_registers, default_child_has_execution.
	* bsd-kvm.c (bsd_kvm_return_one): New.
	(bsd_kvm_add_target): Register bsd_kvm_return_one as
	to_has_memory, to_has_stack and to_has_registers callbacks.
	* remote-m32r-sdi.c (m32r_return_one): New.
	(init_m32r_ops): Register it.
	* inf-child.c (inf_child_target): Adjust to register
	default_child_has_all_memory, default_child_has_memory,
	default_child_has_stack, default_child_has_registers,
	default_child_has_execution callbacks.
	* gnu-nat.c (init_gnu_ops): Likewise.
	* go32-nat.c (init_go32_ops): Likewise.
	* hpux-thread.c (init_hpux_thread_ops): Likewise.
	* monitor.c (init_base_monitor_ops): Likewise.
	* nto-procfs.c (init_procfs_ops): Likewise.
	* remote-mips.c (_initialize_remote_mips): Likewise.
	* windows-nat.c (init_windows_ops): Likewise.
	* remote-sim.c (gdbsim_create_inferior): Don't use
	target_mark_running or target_mark_exited.
	(gdbsim_mourn_inferior): Don't call target_mark_exited.
	(init_gdbsim_ops): Adjust to register
	default_child_has_all_memory, default_child_has_memory,
	default_child_has_stack, default_child_has_registers,
	default_child_has_execution callbacks.

	* linux-nat.c (linux_nat_xfer_partial): If reading memory, and
	there's no inferior selected, defer to a lower stratum.
2009-06-07 16:46:48 +00:00
Pedro Alves 68c9c31474 Tiny formatting fix. 2009-06-07 16:09:28 +00:00
gdbadmin 6e29563e70 *** empty log message *** 2009-06-07 00:00:34 +00:00
gdbadmin d8985ced1d *** empty log message *** 2009-06-06 00:00:33 +00:00
Tom Tromey da1f277114 * varobj.c (update_dynamic_varobj_children): Wrap error text in
_().
	(install_visualizer): Likewise.
	(varobj_set_visualizer): Likewise.
2009-06-05 19:43:01 +00:00
Vladimir Prus 4b45997780 * mi/mi-main.c (mi_cmd_exec_continue)
(mi_cmd_exec_interrupt): Adjust parsing of thread group
	ids to current reality, where they don't have any 'p' prefix.
2009-06-05 18:34:21 +00:00
Aleksandar Ristovski b3ed98d264 * corelow.c (core_open): Check for core_gdbarch before calling
gdbarch_target_signal_from_host.
2009-06-05 18:08:53 +00:00
Tom Tromey 68c1b02dc9 * c-exp.y (parse_number): Don't use K&R definition.
(yylex): Likewise.
	(yyerror): Likewise.
2009-06-05 17:18:37 +00:00
gdbadmin 445f26dc8a *** empty log message *** 2009-06-05 00:00:03 +00:00
Jan Kratochvil 0b4bc29af3 gdb/
* varobj.c (varobj_update): Fix out of scope varobjs to not to change.
2009-06-04 21:56:22 +00:00
Ulrich Weigand 473f94e69c * gdbint.texinfo: Rename formal parameters to gdbarch function
protoypes from "current_gdbarch" to "gdbarch".
2009-06-04 15:15:48 +00:00
Ulrich Weigand 768a979c31 * symtab.h: Rename SYMBOL_OPS to SYMBOL_COMPUTED_OPS.
* ax-gdb.c (gen_var_ref): Likewise.
	* findvar.c (read_var_value, symbol_read_needs_frame): Likewise.
	* printcmd.c (address_info): Likewise.
	* dwarf2loc.c (dwarf_expr_frame_base): Likewise.
	* dwarf2read.c (dwarf2_symbol_mark_computed): Likewise.
	* symtab.h: Rename struct symbol_ops to struct symbol_computed_ops.
	* dwarf2loc.h: Likewise.
	* dwarf2loc.c (dwarf2_locexpr_funcs, dwarf2_loclist_funcs): Likewise.

	* symtab.h: (struct symbol_register_ops): New struct definition.
	(struct symbol): Make "ops" member a union of symbol_computed_ops and
	symbol_register_ops callback pointers.
	(SYMBOL_REGISTER_OPS): New macro.
	* tracepoint.c: Include "objfiles.h".
	(scope_info, collect_symbol): Use SYMBOL_REGISTER_OPS register_number
	callback to retrieve register numbers.
	* ax-gdb.c (gen_var_ref): Likewise.
	* findvar.c (read_var_value): Likewise.
	* printcmd.c (address_info): Likewise.

	* coffread.c (coff_reg_to_regnum): New function.
	(coff_register_funcs): New static variable.
	(process_coff_symbol): Do not call gdbarch_sdb_reg_to_regnum.
	Install SYMBOL_REGISTER_OPS callbacks.
	* mdebugread.c (mdebug_reg_to_regnum): New function.
	(mdebug_register_funcs): New static variable.
	(parse_symbol): Do not call gdbarch_ecoff_reg_to_regnum.
	Install SYMBOL_REGISTER_OPS callbacks.
	* stabsread.c (stab_reg_to_regnum): New function.
	(stab_register_funcs): New static variable.
	(define_symbol): Do not call gdbarch_stab_reg_to_regnum.
	Install SYMBOL_REGISTER_OPS callbacks.
2009-06-04 12:28:39 +00:00
Doug Evans 930123b7a1 * symfile.c (reread_symbols): Reset psymtabs_addrmap to NULL
after discarding its contents.
2009-06-04 00:50:16 +00:00
gdbadmin db468abb98 *** empty log message *** 2009-06-04 00:00:33 +00:00
Pedro Alves 07b82ea5f9 * target.c: Include "exec.h".
(update_current_target): Don't inherit to_sections or
	to_sections_end.
	(target_get_section_table): New.
	(target_section_by_addr): Fetch the section table from the passed
	in target.
	(memory_xfer_partial): Handle unmapped overlay sections before
	anything else.  Get the overlay mapped address here.  Adjust to
	use section_table_xfer_memory_partial.
	(get_target_memory): Request a TARGET_OBJECT_RAW_MEMORY object
	instead of TARGET_OBJECT_MEMORY.
	(target_resize_to_sections): Delete.
	(remove_target_sections): Adjust to remove target sections from
	`current_target_sections', and use resize_section_table.
	* target.h (struct target_ops) <to_sections, to_sections_end>:
	Remove fields.
	<to_get_section_table>: New method.
	(xfer_memory, print_section_info): Delete declarations.
	(struct target_section_table): New type.
	(target_get_section_table): Declare.
	(target_resize_to_sections): Delete declaration.
	(remove_target_sections): Delete declaration.
	* bfd-target.c (target_bfd_xfer_partial): Get the section table
	from to_data.
	(target_bfd_get_section_table): New.
	(target_bfd_xclose): Adjust.
	(target_bfd_reopen): Store the section table in the to_data field.
	* corelow.c (core_data): New.
	(core_close): Adjust to release core_data and its sections.
	(core_open): Allocate core_data, and build its target sections
	table.
	(deprecated_core_resize_section_table): New.
	(core_files_info): Pass core_data to print_section_info.
	(core_xfer_partial): Adjust to use
	section_table_xfer_memory_partial for TARGET_OBJECT_MEMORY xfers.
	(init_core_ops): Do not install a deprecated_xfer_memory callback
	anymore.
	* solib.c (update_solib_list): Add the shared library sections
	to the current target sections table.
	* exec.c (current_target_sections_1): New global.
	(current_target_sections): New global.
	(exec_close_1): New function, refactored from exec_close.  Remove
	the exec_bfd's sections from the current target sections table.
	Adjust to not use to_sections.
	(exec_close): Remove all target sections.  Call exec_close_1.
	(exec_file_clear): Use exec_close_1 instead of unpushing the
	target.
	(exec_file_attach): Likewise.  Adjust to not use to_sections.  Add
	exec_bfd's sections to the current target sections table.  Don't
	push the exec_ops target here.
	(resize_section_table): New.
	(add_target_sections): New.
	(remove_target_sections): Moved here.
	(section_table_xfer_memory): Adjust to implement the xfer_partial
	interface, and rename to...
	(section_table_xfer_memory_partial): ... this, replacing the
	current function of that same name.
	(exec_get_section_table): New.
	(exec_xfer_partial): New.
	(xfer_memory): Delete.
	(print_section_info): Replace the target_ops parameter by a
	target_section_table parameter.
	(exec_files_info, set_section_command, exec_set_section_address):
	Adjust to use the current sections table.
	(init_exec_ops): Do not register a deprecated_xfer_memory
	callback.  Register to_xfer_partial and to_get_section_table
	callbacks.
	* infrun.c (handle_inferior_event): Update comments around
	solib_add.
	* rs6000-nat.c (xcoff_relocate_core): Adjust to use
	deprecated_core_resize_section_table.
	* exec.h (resize_section_table): Declare.
	(section_table_xfer_memory_partial): Add const char * argument.
	(remove_target_sections): Declare here.
	(add_target_sections): Declare.
	(print_section_info): Declare here.
	* gdbcore.h (deprecated_core_resize_section_table): Declare.
2009-06-03 18:50:36 +00:00
Ulrich Weigand 4fa6249465 * value.h (struct internalvar): Remove.
(get_internalvar_integer): Add prototype.
	(set_internalvar_integer): Add prototype.
	(clear_internalvar): Add prototype.

	* value.c (struct internalvar): Move here.  Add type member.  Remove
	endian member.  Add union_internalvar member instead of value member.
	(init_if_undefined_command): Use intvar->type.
	(create_internalvar): Do not initialize value/endian, but type.
	(create_internalvar_type_lazy): Call create_internalvar.
	(value_of_internalvar): Handle host-side internalvar contents.
	(set_internalvar_component): Likewise.
	(set_internalvar): Likewise.
	(get_internalvar_integer): New function.
	(clear_internalvar): Likewise.
	(set_internalvar_integer): Likewise.
	(preserve_values): Handle host-side internalvar contents.

	* breakpoint.c (set_breakpoint_count, set_tracepoint_count): Call
	set_internalvar_integer instead of set_internalvar.
	* findcmd.c (find_command): Likewise.
	* infrun.c (handle_inferior_event): Likewise.
	* source.c (forward_search_command, reverse_search_command): Likewise.
	* tracepoint.c (set_traceframe_num, set_tracepoint_num,
	set_traceframe_context): Likewise.

	* printcmd.c (x_command): Call clear_internalvar instead of
	set_internalvar.
	* tracepoint.c (set_traceframe_context): Likewise.

	* breakpoint.c (get_number_trailer): Call get_internalvar_integer
	instead of value_of_internalvar.
	* linespec.c (decode_dollar): Likewise.

	* expprint.c (dump_subexp_body_standard): Use internalvar_name
	instead of accessing internalvar private elements.
	* valops.c (value_assign): Copy from original source instead of
	accessing internalvar private elements.
2009-06-03 18:16:44 +00:00
Ulrich Weigand 6ceaaae577 * scm-lang.c (builtin_type_scm): Remove.
(scm_lookup_name): Add GDBARCH parameter.  Use it instead of
	objfile architecture.  Use per-architecture builtin_scm_type instead
	of builtin_type_scm.
	(evaluate_exp): Pass expression architecture to scm_lookup_name.

	(scm_get_field): Add SIZE parameter.  Use it instead of
	TYPE_LENGTH (builtin_type_scm).

	(build_scm_types): New function.
	(scm_type_data): New variable.
	(builtin_scm_type): New function.
	(_initialize_scheme_language): Do not initialize builtin_type_scm.
	Register build_scm_types as post-init function for scm_type_data.

	* scm-exp.c (scm_lreadr): Use per-architecture builtin_scm_type
	instead of builtin_type_scm.

	* scm-lang.h (SCM_CAR, SCM_CDR): Pass SCM_SIZE to scm_get_field.
	(scm_get_field): Add SIZE paramter.
	(scm_scmval_print): Remove prototype.
	(builtin_type_scm): Remove.
	(struct builtin_scm_type): Add structure definition.
	(builtin_scm_type): Add prototype.

	* scm-valprint.c (scm_inferior_print): Add TYPE parameter.  Use it
	instead of builtin_core_addr type; do not use objfile architecture.
	(scm_scmlist_print): Add TYPE parameter.  Use it to define SCM_SIZE.
	Pass type to scm_scmval_print.
	(scm_ipruk): Add TYPE parameter.  Use it to define SCM_SIZE.
	(scm_scmval_print): Make static.  Add TYPE parameter.  Use it to
	define SCM_SIZE.  Pass type to scm_ipruk and scm_scmlist_print.
	(scm_val_print): Pass type to scm_inferior_print and scm_scmval_print.
2009-06-03 18:10:06 +00:00
Ulrich Weigand 0a9d309acd ChangeLog:
* mdebugread.c (mdebug_type_void, mdebug_type_char, mdebug_type_short,
	mdebug_type_int, mdebug_type_int_32, mdebug_type_int_64,
	mdebug_type_long_32, mdebug_type_long_64, mdebug_type_long_long_64,
	mdebug_type_unsigned_char, mdebug_type_unsigned_short,
	mdebug_type_unsigned_int_32, mdebug_type_unsigned_int_64,
	mdebug_type_unsigned_long_32, mdebug_type_unsigned_long_64,
	mdebug_type_unsigned_long_long_64, mdebug_type_adr_32,
	mdebug_type_adr_64, mdebug_type_float, mdebug_type_double,
	mdebug_type_complex, mdebug_type_double_complex,
	mdebug_type_fixed_dec, mdebug_type_float_dec, mdebug_type_string):
	Remove.

	(basic_type_data): New global variable.
	(basic_type): New function.
	(parse_type): Remove static basic type map map_bt.  Call basic_type
	to get basic types instead of using mdebug_type_ variables.

	(parse_symbol): Use builtin types instead of mdebug_type_ variables.
	(upgrade_type): Likewise.
	(parse_procedure): Likewise.
	(psymtab_to_symtab_1): Likewise.

	(_initialize_mdebugread): Do not initialize mdebug_type_ variables.
	Initialize basic_type_data.

include/coff/ChangeLog:

	* symconst.h (btLong64, btULong64, btLongLong64, btULongLong64,
	btAdr64, btInt64, btUInt64): New defines.
2009-06-03 18:08:14 +00:00
Ulrich Weigand 289bd67a5d * dfp.h (decimal_binop): Convert LEN_RESULT to input parameter.
* dfp.c (promote_decimal): Remove.
	(decimal_binop): Convert LEN_RESULT to input parameter.
	Remove call to decimal_binop.
	(decimal_compare): Remove call to decimal_binop.

	* valarith.c (value_binop): Pass desired result type length
	to decimal_binop.
2009-06-03 17:47:54 +00:00
Doug Evans 701e355da0 * gdb.arch/i386-sse.exp: Test xmm[8-15] if amd64.
* gdb.arch/i386-see.c: Ditto.
2009-06-03 16:46:06 +00:00
gdbadmin 05b48798fb *** empty log message *** 2009-06-03 00:00:33 +00:00
gdbadmin 492e2b8b08 *** empty log message *** 2009-06-02 05:00:32 +00:00
Michael Snyder c141c6961a 2009-05-29 Michael Snyder <msnyder@vmware.com>
* gdb.base/break-always.exp: Change "1" to "on".
	Add confirmation check.
2009-06-01 19:31:52 +00:00
Tristan Gingold 64c9be2ef3 2009-06-01 Tristan Gingold <gingold@adacore.com>
* configure.tgt (avr): Set gdb_sim to use the simulator.
2009-06-01 08:12:21 +00:00
gdbadmin 6047d5ae4d *** empty log message *** 2009-06-01 00:00:03 +00:00
gdbadmin 8d3c040f17 *** empty log message *** 2009-05-31 00:00:34 +00:00
Pierre Muller f2292c6500 * gdb.base/macscp.exp (info_macro): Return undefined if undefined.
(check_macro): Return 1 if undefined.
	If first test fails, check if macro debug information is available,
	and report unsupported test if no macro information is found.
2009-05-30 07:58:42 +00:00
Doug Evans 5a43797524 * infrun.c (prepare_to_proceed): Document. Assert !non_stop.
If scheduler-locking is enabled, we're not going to be singlestepping
	any other previously stopped thread.

	* gdb.threads/hand-call-in-threads.exp: New file.
	* gdb.threads/hand-call-in-threads.c: New file.
2009-05-30 00:19:13 +00:00
gdbadmin 17c3b0a8bf *** empty log message *** 2009-05-30 00:00:34 +00:00
Pedro Alves ab730e720d * mi/mi-interp.c (mi_on_resume): Initialize `count' to 0. 2009-05-29 19:06:12 +00:00
Eli Zaretskii 3d22076f96 * i386-tdep.c (i386_go32_init_abi): Use SVR4 register numbering
for stabs and COFF debug info.
2009-05-29 11:38:39 +00:00
gdbadmin cc15404449 *** empty log message *** 2009-05-29 00:00:33 +00:00
Pedro Alves b3444185bd gdb/
2009-05-28  Pedro Alves  <pedro@codesourcery.com>

	* infrun.c (handle_inferior_event): When thread hoping, switch
	inferior_ptid to the event thread before removing breakpoints from
	the target.  If not stopping, also try to revert back to a thread
	that was doing a "next".  Check if that thread still exists before
	resuming.
	(currently_stepping_thread): Delete and merge with ...
	(currently_stepping): ... this.
	(currently_stepping_callback): Rename to ...
	(currently_stepping_or_nexting_callback): ... this, and also
	return true if the thread was stepping over a call (has a
	step-resume breakpoint).

gdb/testsuite/
2009-05-28  Pedro Alves  <pedro@codesourcery.com>

	* gdb.threads/threxit-hop-specific.c: New.
	* gdb.threads/threxit-hop-specific.exp: New.
	* gdb.threads/thread-execl.c: New.
	* gdb.threads/thread-execl.exp: New.
2009-05-28 17:19:58 +00:00
Tom Tromey 8f5008704e gdb
* python/python.c (gdbpy_parameter): Rename.  Fix error message.
	(GdbMethods): Change "get_parameter" to "parameter".
gdb/doc
	* gdb.texinfo (Basic Python): Change get_parameter to parameter.
2009-05-28 16:49:55 +00:00
Paul Pluzhnikov 6bf0ce2bed 2009-05-28 Pierre Muller <muller@ics.u-strasbg.fr>
Paul Pluzhnikov  <ppluzhnikov@google.com>

	* configure.ac (!have_libpython): Add python-prettyprint source
	and object files.
	* configure: Regenerate.
	* python/python-prettyprint.c: Move "#ifdef HAVE_PYTHON" before
	python headers.
2009-05-28 16:30:39 +00:00
Tom Tromey b631324398 gdb
2009-05-27  Vladimir Prus  <vladimir@codesourcery.com>
	    Tom Tromey  <tromey@redhat.com>
	    Thiago Jung Bauermann  <bauerman@br.ibm.com>

	* mi/mi-main.c (mi_cmd_list_features): List "python" feature.
	* varobj.h (varobj_set_visualizer): Declare.
	(varobj_get_display_hint): Likewise.
	(varobj_update_result_t) <children_changed, value_installed>: New
	fields.
	* mi/mi-cmds.c (mi_cmds): Add var-set-visualizer.
	* mi/mi-cmds.h (mi_cmd_var_set_visualizer,
	mi_cmd_var_set_child_range): Declare.
	* mi/mi-cmd-var.c (mi_cmd_var_set_visualizer): New function.
	(mi_cmd_var_list_children): Emit display hint.
	(varobj_update_one): Emit display hint.  Handle dynamic children.
	* python/python.c (GdbMethods): Add "default_visualizer".
	* python/python-internal.h (apply_varobj_pretty_printer,
	gdbpy_get_varobj_pretty_printer, gdbpy_get_display_hint):
	Declare.
	(gdbpy_default_visualizer): Likewise.
	* varobj.c: Include python.h, python-internal.h.
	(PyObject): New typedef.
	(struct varobj) <children_requested, pretty_printer>: New fields.
	(varobj_create): Call install_default_visualizer.
	(instantiate_pretty_printer): New function.
	(varobj_set_display_format): Update.
	(varobj_get_display_hint): New function.
	(update_dynamic_varobj_children): New function.
	(varobj_get_num_children): Handle dynamic children.
	(varobj_list_children): Likewise.
	(install_new_value): Likewise.
	(varobj_add_child): New function.
	(install_visualizer): Likewise.
	(install_default_visualizer): Likewise.
	(varobj_set_visualizer): Likewise.
	(varobj_update): Handle dynamic children.
	(create_child): Use create_child_with_value.
	(create_child_with_value): New function.
	(value_get_print_value): Call pretty printer.  Add value_formatter
	argument.
	(c_value_of_variable): Update.
	(varobj_invalidate): Always free all_rootvarobj.
	* python/python-prettyprint.c (apply_varobj_pretty_printer): New
	function.
	(gdbpy_get_varobj_pretty_printer): Likewise.
	(gdbpy_default_visualizer): Likewise.

gdb/doc

2009-05-27  Tom Tromey  <tromey@redhat.com>

	* gdb.texinfo (GDB/MI Miscellaneous Commands): Document "python"
	feature.
	(GDB/MI Variable Objects): Document -var-set-visualizer.

gdb/testsuite

2009-05-27  Tom Tromey  <tromey@redhat.com>
	    Thiago Jung Bauermann  <bauerman@br.ibm.com>

	* lib/mi-support.exp (mi_varobj_update_dynamic): New proc.
	(mi_child_regexp): Likewise.
	(mi_list_varobj_children_range): Likewise.
	(mi_get_features): Likewise.
	(mi_list_varobj_children): Rewrite.
	* gdb.python/python-mi.exp: New file.
2009-05-28 01:09:20 +00:00
Tom Tromey a6bac58e84 gdb
2009-05-27  Tom Tromey  <tromey@redhat.com>
	    Thiago Jung Bauermann  <bauerman@br.ibm.com>
	    Phil Muldoon  <pmuldoon@redhat.com>
	    Paul Pluzhnikov  <ppluzhnikov@google.com>
	    Vladimir Prus  <vladimir@codesourcery.com>

	* python/python-value.c (value_object_to_value): New function.
	* python/python-internal.h: Include frameobject.h.
	(gdbpy_children_cst, gdbpy_to_string_cst, gdbpy_display_hint_cst):
	Declare.
	(value_object_to_value): Declare.
	* printcmd.c (struct format_data) <raw>: New field.
	(last_format): Default to 0.
	(decode_format): Initialize val.raw.  Handle /r flag.
	(print_command_1): Initialize fmt.raw and opts.raw.
	(output_command): Likewise.
	(x_command): Fix initialization of fmt.format.  Initialize
	fmt.raw.
	(display_command): Initialize fmt.raw.
	(do_one_display): Set opts.raw.
	* python/python.c (gdbpy_to_string_cst, gdbpy_children_cst,
	gdbpy_display_hint_cst): New globals.
	(_initialize_python): Initialize them.  Set gdb.pretty_printers.
	* cp-valprint.c: Include python.h.
	(cp_print_value): Call apply_val_pretty_printer.
	* python/python.h (apply_val_pretty_printer): Declare.
	* stack.c (print_this_frame_argument_p): Remove.
	(print_frame_args): Compute summary flag.  Don't use
	print_this_frame_argument_p.
	* valprint.c: Include python.h.
	(user_print_options): Initialize new fields.
	(scalar_type_p): New function.
	(val_print): Handle 'raw' and 'summary' modes.  Call
	apply_val_pretty_printer.
	(value_print): Handle 'raw' mode.
	* valprint.h (struct value_print_options) <raw, summary>: New
	fields.
	* Makefile.in (SUBDIR_PYTHON_OBS): Add python-prettyprint.o
	(SUBDIR_PYTHON_SRCS): Add python-prettyprint.c.
	(python-prettyprint.o): New target.
	* python/python-prettyprint.c: New file.

gdb/doc

2009-05-27  Tom Tromey  <tromey@redhat.com>
	    Thiago Jung Bauermann  <bauerman@br.ibm.com>
	    Phil Muldoon  <pmuldoon@redhat.com>

	* gdb.texinfo (Objfiles In Python): Reference pretty printing.
	(Pretty Printing): New node.
	(Selecting Pretty-Printers): Likewise.
	(Python API): Update.
	(Output Formats): Document /r format.

gdb/testsuite

2009-05-27  Tom Tromey  <tromey@redhat.com>
	    Thiago Jung Bauermann  <bauerman@br.ibm.com>
	    Phil Muldoon  <pmuldoon@redhat.com>
	    Paul Pluzhnikov  <ppluzhnikov@google.com>

	* gdb.python/python-prettyprint.exp: New file.
	* gdb.python/python-prettyprint.c: New file.
	* gdb.python/python-prettyprint.py: New file.
	* gdb.base/display.exp: print/r is now valid.
2009-05-28 01:05:14 +00:00
Tom Tromey 42ae523077 2009-05-27 Tom Tromey <tromey@redhat.com>
Paul Pluzhnikov  <ppluzhnikov@google.com>

	* mi/mi-main.c (mi_cmd_data_evaluate_expression): Use
	value_address.
	* cli/cli-dump.c (dump_value_to_file): Use value_address.
	* valprint.c (common_val_print): Likewise.
	* v850-tdep.c (v850_push_dummy_call): Use value_address.
	* tracepoint.c (encode_actions): Use value_address.
	* printcmd.c (print_formatted): Use value_address.
	(x_command): Likewise.
	* p-valprint.c (pascal_object_print_static_field): Use
	value_address.
	* mn10300-tdep.c (mn10300_push_dummy_call): Use value_address.
	* mips-tdep.c (mips_eabi_push_dummy_call): Use value_address.
	* m32r-tdep.c (m32r_push_dummy_call): Use value_address.
	* jv-valprint.c (java_value_print): Use value_address.
	* infcall.c (find_function_addr): Use value_address.
	* gnu-v3-abi.c (gnuv3_rtti_type): Use value_address.
	* gnu-v2-abi.c (gnuv2_value_rtti_type): Use value_address.
	* frv-tdep.c (frv_push_dummy_call): Use value_address.
	* frame.c (frame_register_unwind): Use value_address.
	(frame_unwind_register_value): Likewise.
	* darwin-nat-info.c (info_mach_region_command): Use
	value_address.
	* cp-valprint.c (cp_print_static_field): Use value_address.
	* c-valprint.c (c_value_print): Use value_address.
	* breakpoint.c (update_watchpoint): Use value_address.
	(can_use_hardware_watchpoint): Likewise.
	* ada-valprint.c (ada_val_print_1): Use value_address.
	(ada_value_print): Likewise.
	* ada-tasks.c (read_fat_string_value): Use value_address.
	* jv-lang.c (java_link_class_type): Use set_value_address.
	(java_link_class_type): Likewise.
	(get_java_utf8_name): Use value_address.
	(type_from_class): Likewise.
	(java_link_class_type): Likewise.
	* findvar.c (value_of_register): Use set_value_address.
	(read_var_value): Likewise.
	(read_var_value): Likewise.
	* eval.c (evaluate_subexp_standard): Use set_value_address.
	(evaluate_subexp_standard): Use value_address.
	* dwarf2loc.c (dwarf2_evaluate_loc_desc): Use set_value_address.
	* ada-lang.c (coerce_unspec_val_to_type): Use set_value_address.
	(ada_value_primitive_packed_val): Likewise.
	(ensure_lval): Likewise.
	(thin_data_pntr): Use value_address.
	(desc_bounds): Likewise.
	(ada_value_primitive_packed_val): Likewise.
	(value_assign_to_component): Likewise.
	(ensure_lval): Likewise.
	(make_array_descriptor): Likewise.
	(ada_to_fixed_value): Likewise.
	(unwrap_value): Likewise.
	* value.c (deprecated_value_address_hack): Remove.
	(value_address): New function.
	(value_raw_address): Likewise.
	(set_value_address): Likewise.
	(value_fn_field): Use set_value_address.
	(value_from_contents_and_address): Likewise.
	(value_fn_field): Likewise.
	(allocate_value_lazy): Don't use VALUE_ADDRESS.
	(value_as_address): Use value_address.
	(value_static_field): Likewise.
	* valops.c (search_struct_field): Use set_value_address.
	(value_at): Likewise.
	(value_at_lazy): Likewise.
	(value_repeat): Likewise.
	(value_cast_structs): Use value_address.
	(value_cast): Likewise.
	(value_fetch_lazy): Likewise.
	(value_assign): Likewise.
	(value_repeat): Likewise.
	(address_of_variable): Likewise.
	(value_coerce_array): Likewise.
	(value_coerce_function): Likewise.
	(value_addr): Likewise.
	(search_struct_field): Likewise.
	(search_struct_method): Likewise.
	(find_method_list): Likewise.
	(value_struct_elt_for_reference): Likewise.
	(value_full_object): Likewise.
	* jv-valprint.c (java_value_print): Use set_value_address.
	* value.h (deprecated_value_address_hack): Remove.
	(VALUE_ADDRESS): Remove.
	(value_address): Declare.
	(value_raw_address): Declare.
	(set_value_address): Declare.
2009-05-28 00:53:52 +00:00
Tom Tromey 2c74e83381 gdb
2009-05-27  Tom Tromey  <tromey@redhat.com>
	    Thiago Jung Bauermann  <bauerman@br.ibm.com>
	    Phil Muldoon  <pmuldoon@redhat.com>
	    Paul Pluzhnikov  <ppluzhnikov@google.com>

	* python/python.c (_initialize_python): Call
	gdbpy_initialize_types.
	(GdbMethods): Add "lookup_type".
	* python/python-value.c (value_object) <type>: New field.
	(valpy_dealloc): Decref type.
	(valpy_new): Initialize type.
	(valpy_get_type): New function.
	(value_to_value_object): Initialize type.
	(valpy_cast): New function.
	(value_object_getset): Add "type".
	(value_object_methods): Add "cast".
	* python/python-internal.h (type_to_type_object): Declare.
	(type_object_to_type): Likewise.
	(gdbpy_initialize_types): Likewise.
	(gdbpy_lookup_type): Declare.
	* Makefile.in (SUBDIR_PYTHON_OBS): Add python-type.o.
	(SUBDIR_PYTHON_SRCS): Add python-type.c.
	(python-type.o): New target.
	* python/python-type.c: New file.

gdb/doc

2009-05-27  Thiago Jung Bauermann  <bauerman@br.ibm.com>
	    Tom Tromey  <tromey@redhat.com>

	* gdb.texinfo (Types In Python): New node.
	(Values From Inferior): "type" is now an attribute.
	(Python API): Update.


gdb/testsuite

2009-05-27  Thiago Jung Bauermann  <bauerman@br.ibm.com>
	    Tom Tromey  <tromey@redhat.com>
	    Pedro Alves  <pedro@codesourcery.com>
	    Paul Pluzhnikov  <ppluzhnikov@google.com>

	* gdb.python/python-template.exp: New file.
	* gdb.python/python-template.cc: New file.
	* gdb.python/python.exp (gdb_py_test_multiple): Add two objfile
	tests.
	* gdb.python/python-value.exp (py_objfile_tests): New proc.
	Call it.
	(test_value_after_death): New proc.
	* gdb.python/python-value.c (PTR): New typedef.
	(main): New variable 'x'.
2009-05-28 00:47:20 +00:00
Tom Tromey 89c73adef9 gdb
2009-04-01  Tom Tromey  <tromey@redhat.com>
	    Thiago Jung Bauermann  <bauerman@br.ibm.com>
	    Phil Muldoon  <pmuldoon@redhat.com>

	* python/python.c: Include objfiles.h, observer.h.
	(gdbpy_auto_load): New global.
	(gdbpy_current_objfile): Likewise.
	(GDBPY_AUTO_FILENAME): New define.
	(gdbpy_new_objfile): New function.
	(gdbpy_get_current_objfile): Likewise.
	(gdbpy_objfiles): Likewise.
	(_initialize_python): Add "maint set auto-load".  Call
	gdbpy_initialize_objfile.  Attach objfile observer.
	(GdbMethods): New methods current_objfile, objfiles.
	* python/python-objfile.c: New file.
	* python/python-internal.h (objfile_to_objfile_object): Declare.
	(objfpy_get_printers): Likewise.
	(gdbpy_initialize_objfile): Likewise.
	* Makefile.in (SUBDIR_PYTHON_OBS): Add python-objfile.o.
	(SUBDIR_PYTHON_SRCS): Add python-objfile.c.
	(python-objfile.o): New target.

gdb/doc

2009-04-01  Tom Tromey  <tromey@redhat.com>
	    Thiago Jung Bauermann  <bauerman@br.ibm.com>

	* gdb.texinfo (Python API): Update.
	(Auto-loading): New node.
	(Objfiles In Python): New node.

gdb/testsuite

2009-04-06  Tom Tromey  <tromey@redhat.com>

	* gdb.python/python.exp (gdb_py_test_multiple): Add two objfile
	tests.
	* gdb.python/python-value.exp (py_objfile_tests): New proc.
	Call it.
2009-05-28 00:40:24 +00:00
gdbadmin 5edd40ef3b *** empty log message *** 2009-05-28 00:00:03 +00:00
Pedro Alves a75724bceb gdb/
* infrun.c (follow_exec): Clear the stop_requested flag.
	* linux-nat.c (linux_handle_extended_wait) <PTRACE_EVENT_EXEC>:
	Add debug output.

gdb/testsuite/
	* gdb.mi/nsthrexec.c, gdb.mi/mi-nsthrexec.exp: New.
2009-05-27 19:44:53 +00:00
Aleksandar Ristovski 97c4411662 * nto-procfs.c (get_regset): Pass correct pointer. 2009-05-27 18:28:31 +00:00
gdbadmin 6243187bec *** empty log message *** 2009-05-27 00:00:35 +00:00
Doug Evans f504f079c0 * dwarf2read.c (follow_die_ref): Add comment.
(dwarf2_mark_helper): Tweak comment.
	(dwarf2_mark): Move description to its proper place.
2009-05-26 21:24:07 +00:00
gdbadmin 6e56e9fe37 *** empty log message *** 2009-05-26 00:00:03 +00:00
Pierre Muller 4fcbb49441 * procfs.c (procfs_wait): Add options parameter. 2009-05-25 12:28:57 +00:00
gdbadmin fa0d14dd3a *** empty log message *** 2009-05-25 00:00:03 +00:00
Doug Evans e09875d410 gdb:
Global renaming of find_thread_pid to find_thread_ptid.
	* gdbthread.h (find_thread_ptid): Renamed from find_thread_pid.
	* thread.c (find_thread_ptid): Renamed from find_thread_pid.
	All callers updated.
gdbserver:
	Global renaming of find_thread_pid to find_thread_ptid.
	* server.h (find_thread_ptid): Renamed from find_thread_pid.
	* inferiors.c (find_thread_ptid): Renamed from find_thread_pid.
	All callers updated.
2009-05-24 21:06:53 +00:00
Doug Evans 4e3990f4f9 * infrun.c (follow_fork): Initialize new step_* locals
to avoid "may be used uninitialized" warnings.
2009-05-24 20:55:33 +00:00
Pedro Alves 98b54c187e * inflow.c (copy_terminal_info): Deep copy `run_terminal'. 2009-05-24 18:16:53 +00:00
Pedro Alves e58b0e63bb gdb/
* gdbthread.h (struct thread_info): New `pending_follow' field.
	* thread.c (new_thread): New function.
	(add_thread_silent): Use it.
	* breakpoint.c (internal_breakpoint_number): New global, moved
	from inside...
	(create_internal_breakpoint): ... this.
	(clone_momentary_breakpoint): New.
	* breakpoint.h (clone_momentary_breakpoint): Declare.
	* infrun.c (nullify_last_target_wait_ptid): Move declaration
	higher.
	(pending_follow): Delete.
	(follow_fork): Handle pending follow fork event here.  Moved the
	preserving of thread stepping state here.
	(resume): Don't handle pending follow fork events here.  Only
	install the inferior's terminal modes if we're about to resume it.
	(proceed): Handle possible pending follow fork events here.
	(init_wait_for_inferior): No need to clear pending_follow anymore,
	it's gone.
	(handle_inferior_event): Adjust to per-thread `pending_follow'.
	Call `follow_fork' to handle following the fork.  If the
	follow-fork is cancelled, stop stepping.
	* linux-nat.c (linux_child_follow_fork): Adjust to per-thread
	`pending_follow' events.  Remove code that handled preserving the
	thread stepping state.
	* inf-ptrace.c (inf_ptrace_follow_fork): Ditto.
	* inf-ttrace.c (inf_ttrace_follow_fork): Ditto.

gdb/testsuite/
	* gdb.threads/fork-thread-pending.c: New.
	* gdb.threads/fork-thread-pending.exp: New.
2009-05-24 18:00:08 +00:00
Doug Evans e27d73f6b0 * linux-low.c (handle_extended_wait): Use linux_resume_one_lwp
to resume the newly created thread, don't call ptrace (PTRACE_CONT)
	directly.
2009-05-24 17:44:19 +00:00
Doug Evans 47c0c97542 * linux-low.c (get_stop_pc): Print pc if debug_threads.
(check_removed_breakpoint, linux_wait_for_lwp): Ditto.
	(linux_resume_one_lwp): Ditto.
2009-05-24 17:37:34 +00:00
Pierre Muller ea26755da7 * Correct date for last commit 2009-05-24 12:31:43 +00:00
Pierre Muller 7099259781 * symfile.c (add_shared_symbol_files_command): Remove
prototype and function.
	(_initialize _symfile): Move "add-shared-symbol-files"
	command and "assf" alias.
	* windows-nat.c (_initialize_windows_nat): to here.
	Change "add-shared-symbol-files" to alias.

	* config/i386/cygwin.mh: Remove NAT_FILE.
	* config/i386/mingw.mh: Remove NAT_FILE.
	* config/i386/mingw64.mh: Remove NAT_FILE.
	* config/i386/nm-cygwin.h: Remove file.
	* config/i386/nm-cygwin64.h: Remove file.
2009-05-24 12:27:35 +00:00
Hui Zhu 5e31abdf71 * i386-linux-tdep.c (I386_LINUX_RECORD_SIZE_*,
I386_LINUX_RECORD_IOCTL_*,
	I386_LINUX_RECORD_FCNTL_*) Removed.
	(i386_linux_init_abi): Change size of record from macros to
	numbers.
	* i386-linux-tdep.c (i386_linux_init_abi): Remove size_char.
	* linux-record.c (record_linux_system_call): Ditto.
	* linux-record.h (linux_record_tdep): Ditto.
2009-05-24 04:42:51 +00:00
Doug Evans 2acc282a5a * linux-low.c (linux_resume_one_lwp): Change type of first arg
from struct inferior_list_entry * to struct lwp_info *.
	All callers updated.
2009-05-24 01:09:22 +00:00
gdbadmin 9d0f77e9d0 *** empty log message *** 2009-05-24 00:00:03 +00:00
Jan Kratochvil 1b36a34b7a gdb/
Replace the savestring calls by xstrdup calls where possible.
	* breakpoint.c (condition_command, set_raw_breakpoint)
	(create_catchpoint, update_breakpoint_locations): Replace the
	savestring calls by xstrdup calls where possible.
	* buildsym.c (start_subfile, patch_subfile_names, record_debugformat)
	(record_producer): Likewise.
	* coffread.c (coff_start_symtab, complete_symtab): Likewise.
	* corefile.c (set_gnutarget): Likewise.
	* dbxread.c (add_new_header_file): Likewise.
	* demangle.c (set_demangling_command, set_demangling_style): Likewise.
	* event-top.c (push_prompt, pop_prompt, command_line_handler)
	(set_async_prompt): Likewise.
	* infcmd.c (set_inferior_io_terminal, attach_command_post_wait):
	Likewise.
	* language.c (set_language_command, _initialize_language): Likewise.
	* linespec.c (decode_line_2): Likewise.
	* rs6000-nat.c (add_vmap): Likewise.
	* top.c (set_prompt, init_history, init_main): Likewise.
	* tracepoint.c (stringify_collection_list): Likewise.
	* varobj.c (varobj_create): Remove variable expr_len.  Replace the
	savestring calls by xstrdup calls where possible.
	(value_of_root, c_name_of_variable, c_describe_child): Replace the
	savestring calls by xstrdup calls where possible.
	* xcoffread.c (complete_symtab): Likewise.
	* cli/cli-script.c (build_command_line, define_command): Likewise.
	* cli/cli-setshow.c (do_setshow_command): Likewise.
2009-05-23 16:17:18 +00:00
Jan Kratochvil 61d8f2758f gdb/
Remove already unreachable code.
	* varobj.c (varobj_get_handle): Fix comment when error is called.
	All callers updated.
2009-05-23 15:34:36 +00:00
Eli Zaretskii 70926f6373 * README (`configure' options): Document GDB-specific options to
`configure'.
2009-05-23 13:18:38 +00:00
Eli Zaretskii 8c7a1ee80b * symtab.c (skip_prologue_using_lineinfo): New function.
(find_function_start_sal): Use it to get to the first line of
	function's body that has an entry in the lineinfo table.
2009-05-23 10:11:42 +00:00
Eli Zaretskii 754dd03107 * coffread.c (process_coff_symbol): Set the symbol's language to
the language of current_subfile.
2009-05-23 09:32:47 +00:00
Eli Zaretskii 969107c54a * symmisc.c (dump_symtab): Switch the current language to
the language of the symtab we are dumping only if the symtab's
	language is neither language_auto nor language_unknown.

	* coffread.c (coff_symtab_read): Set language_minimal as the
	language for the "_globals_" pseudo-file.
2009-05-23 09:26:06 +00:00
gdbadmin f312058d26 *** empty log message *** 2009-05-23 00:00:02 +00:00
Pedro Alves 0542c86dbb * target.h (struct section_table): Rename to ...
(struct target_section): ... this.
	* exec.c: Adjust all references.
	* exec.h: Adjust all references.
	* nto-tdep.c: Adjust all references.
	* nto-tdep.h: Adjust all references.
	* ppc-linux-tdep.c: Adjust all references.
	* rs6000-nat.c: Adjust all references.
	* s390-tdep.c: Adjust all references.
	* solib-darwin.c: Adjust all references.
	* solib-frv.c: Adjust all references.
	* solib-irix.c: Adjust all references.
	* solib-null.c: Adjust all references.
	* solib-osf.c: Adjust all references.
	* solib-pa64.c: Adjust all references.
	* solib-som.c: Adjust all references.
	* solib-sunos.c: Adjust all references.
	* solib-svr4.c: Adjust all references.
	* solib-target.c: Adjust all references.
	* solib.c: Adjust all references.
	* solist.h: Adjust all references.
	* symfile.c: Adjust all references.
	* symfile.h: Adjust all references.
	* target.c: Adjust all references.
2009-05-22 23:49:14 +00:00
Hui Zhu b34fab9a49 Add sys_fcntl argument interfaces to linux_record_tdep.
* linux-record.h (linux_record_tdep): Add fcntl_F_GETLK,
	fcntl_F_GETLK64, fcntl_F_SETLK64 and fcntl_F_SETLKW64 to be
	interfaces.
	* i386-linux-tdep.c (I386_LINUX_RECORD_FCNTL_F_GETLK,
	I386_LINUX_RECORD_FCNTL_F_GETLK64,
	I386_LINUX_RECORD_FCNTL_F_SETLK64,
	I386_LINUX_RECORD_FCNTL_F_SETLKW64): New macros. The values
	of I386 Linux sys_fcntl arguments.
	(i386_linux_init_abi): Set macros values to linux_record_tdep.
	* linux-record.c (record_linux_system_call): Change to use
	the interface in linux_record_tdep in sys_fcntl and
	sys_fcntl64.

	* linux-record.c (record_linux_system_call): Fix the process
	record build error about type in CYGWIN.
2009-05-22 14:15:20 +00:00
Hui Zhu 50ef67b36b Add sys_fcntl argument interfaces to linux_record_tdep.
* linux-record.h (linux_record_tdep): Add fcntl_F_GETLK,
	fcntl_F_GETLK64, fcntl_F_SETLK64 and fcntl_F_SETLKW64 to be
	interfaces.
	* i386-linux-tdep.c (I386_LINUX_RECORD_FCNTL_F_GETLK,
	I386_LINUX_RECORD_FCNTL_F_GETLK64,
	I386_LINUX_RECORD_FCNTL_F_SETLK64,
	I386_LINUX_RECORD_FCNTL_F_SETLKW64): New macros. The values
	of I386 Linux sys_fcntl arguments.
	(i386_linux_init_abi): Set macros values to linux_record_tdep.
	* linux-record.c (record_linux_system_call): Change to use
	the interface in linux_record_tdep in sys_fcntl and
	sys_fcntl64.

	* linux-record.c (record_linux_system_call): Fix the process
	record build error about type in CYGWIN.
2009-05-22 14:07:27 +00:00
Pedro Alves 88c0ab9dd9 * inflow.c (kill_command): Delete left over static declaration. 2009-05-22 10:52:26 +00:00
Pedro Alves 348f8c02f4 * bfd-target.c: Don't include gdb_assert.h or gdb_string.h.
Include exec.h.
	(struct section_closure): Delete.
	(add_to_section_table): Delete.
	(build_target_sections_from_bfd): Delete.
	(target_bfd_xfer_partial): Use section_table_xfer_memory_partial.
	(target_bfd_reopen): Use build_section_table.
	* exec.c (xfer_memory): Move most code except for overlay
	debugging support from here...
	(section_table_xfer_memory): ... to this new function.
	(section_table_xfer_memory_partial): New.
	* exec.h (section_table_xfer_memory_partial): Declare.
	* bfd-target.h (build_target_sections_from_bfd): Delete
	declaration.
2009-05-22 03:01:45 +00:00
Pedro Alves 415756309f * remote.c (compare_sections_command): Don't declare exec_bfd.
* tracepoint.c: Include "gdbcore.h".
	(remote_set_transparent_ranges): Don't declare exec_bfd.
2009-05-22 00:52:05 +00:00
gdbadmin b77ed0a435 *** empty log message *** 2009-05-22 00:00:33 +00:00
Pedro Alves 783425fcb0 * aix-thread.c (init_aix_thread_ops): Whitespace. 2009-05-21 23:19:50 +00:00
Pedro Alves 61439e34f1 * dec-thread.c (dec_thread_wait): Add options parameter. Use it
to call the to_wait method in the target beneath.
	* remote-m32r-sdi.c (m32r_wait): Add options parameter.
2009-05-21 22:53:29 +00:00
Joel Brobecker 8914d83b2f * aix-thread.c (aix_thread_wait): Add options parameter. Use it
to call the to_wait method in the target_beneath.
2009-05-21 22:33:46 +00:00
Pedro Alves d9d2d8b6c0 * linux-nat.c (linux_nat_terminal_inferior)
(linux_nat_terminal_ours): Don't check sync_execution.
	* remote.c (remote_terminal_inferior, remote_terminal_ours):
	Don't check sync_execution.  Update comments.
	* target.c (target_terminal_inferior): New.
	* target.h (target_terminal_inferior): Delete macro, and declare
	as function.
	* event-top.c (async_disable_stdin): Make idempotent.  Don't give
	the target the terminal here.
	* inflow.c (terminal_ours_1): Don't return early without setting
	`terminal_is_ours'.
2009-05-21 16:00:14 +00:00
Pedro Alves 47608cb1ac * target.h (TARGET_WNOHANG): New.
* target.c (target_wait): Add `options' argument.  Adjust.
	(struct target_ops) <to_wait>: Add `options' argument.
	(target_wait): Add `options' argument.
	* infrun.c (wait_for_inferior): Pass 0 as options to
	target_wait (blocking wait).
	(fetch_inferior_event): Pass TARGET_WNOHANG as options to
	target_wait.
	* fork-child.c (startup_inferior): Pass 0 as options to
	target_wait (blocking wait).
	* linux-nat.c (linux_nat_create_inferior): Remove async masking.
	(linux_nat_wait_1): Add `target_options' argument.  Use it instead
	of checking on target_can_async_p.
	(linux_nat_wait): Add `target_options' argument.  Adjust.
	* remote.c (remote_wait_ns): Add `options' argument.  Adjust to
	check on TARGET_WNOWAIT instead of checking on remote_is_async_p.
	(remote_wait_as): Add `options' argument.  Adjust to check on
	TARGET_WNOWAIT instead of checking on remote_is_async_p.  If doing
	a blocking wait, keep waiting until an interesting event comes
	out.
	(remote_wait): Add `options' argument.  Don't loop here if the
	target is in async mode, and a blocking wait has been requested.

	* top.c (deprecated_target_wait_hook): Add `options' argument.
	* linux-thread-db.c (thread_db_wait): Add `options' argument, and
	pass it down to the layer beneath.
	* inf-ptrace.c (inf_ptrace_wait): Add `options' argument.
	* record.c (record_beneath_to_wait): Add `options' argument.
	(record_wait): Add `options' argument, and pass it down to the
	layer beneath.
	* bsd-uthread.c (bsd_uthread_wait): Add `options' argument.
	* darwin-nat.c (darwin_wait): Likewise.
	* defs.h (deprecated_target_wait_hook): Likewise.
	* gnu-nat.c (gnu_wait): Add `options' argument.
	* go32-nat.c (go32_wait): Likewise.
	* hpux-thread.c (hpux_thread_wait): Add `options' argument, and
	pass it down to the layer beneath.
	* inf-ttrace.c (inf_ttrace_wait): Add `options' argument.
	* monitor.c (monitor_wait): Likewise.
	* nto-procfs.c (procfs_wait): Likewise.
	* remote-mips.c (mips_wait): Add `options' argument.
	* remote-sim.c (gdbsim_wait): Likewise.
	* rs6000-nat.c (rs6000_wait): Add `options' argument.
	* sol-thread.c (sol_thread_wait): Add `options' argument, and pass
	it down to the layer beneath.
	* spu-linux-nat.c (spu_child_wait): Add `options' argument.
	* windows-nat.c (windows_wait): Likewise.
	* tui/tui-hooks.c (tui_target_wait_hook): Likewise.  Adjust.
2009-05-21 15:48:42 +00:00
Pedro Alves 9944e9c2ac * mi/mi-interp.c (mi_on_resume): Account for whole process
resumes.
2009-05-21 15:21:28 +00:00
Jan Kratochvil c244a140a5 gdb/
* m2-exp.y (MAX_FUNC): Fix trailing UNOP_MAX.
2009-05-21 14:38:20 +00:00
Jan Kratochvil 76bee0cceb gdb/
* dwarf2read.c (set_cu_language): Recognize also DW_LANG_C99.
2009-05-21 07:57:45 +00:00
Jan Kratochvil 4ac3663827 gdb/
Fix parsing DW_AT_const_value using DW_FORM_string.
	* dwarf2read.c (dwarf2_const_value <DW_FORM_string>): New.

gdb/testsuite/
	* gdb.dwarf2/dw2-strp.exp (p a_string2, ptype a_string2): New.
	* gdb.dwarf2/dw2-strp.S (a_string2): New.
2009-05-21 07:15:47 +00:00
gdbadmin 029c7a49e0 *** empty log message *** 2009-05-21 00:00:03 +00:00
Joel Brobecker 77f0be4ee1 * aix-thread.c (giter_count): Do not count the main thread.
(giter_accum): Do not include the main thread.
2009-05-20 18:21:20 +00:00
Nathan Sidwell 92a610f322 fix filename in 2009-01-14 Kai Tietz <kai.tietz@onevision.com> changelog 2009-05-20 10:42:06 +00:00
gdbadmin 261c7b2e78 *** empty log message *** 2009-05-20 00:00:03 +00:00
Jan Kratochvil fbdebf4657 gdb/
Remove the PROT parameter from openp.
	* source.c (openp): Remove the parameter PROT.  Assertion check MODE.
	defs.h (openp): Update the prototype.
	Update all the openp callers.
2009-05-19 13:51:37 +00:00
Pedro Alves 5fd62852f6 * inflow.c (kill_command): Moved to infcmd.c.
(_initialize_inflow): Don't add the "kill" command or clear
	inferior_ptid here.
	* infcmd.c (kill_command): Moved here from inflow.c.
	(_initialize_infcmd): Add the "kill" command here.
2009-05-19 10:08:19 +00:00
Pedro Alves 191c4426c1 * fork-child.c: Don't include frame.h. Include terminal.h.
(fork_inferior): Call new_tty_postfork after forking adn adding
	the child to the inferior list.
	* inferior.h (new_tty_prefork, gdb_has_a_terminal): Don't declare
	here.
	* inflow.c (struct terminal_info): Remove const qualifier from
	`run_terminal' field.
	(inferior_thisrun_terminal): Tweak comment.
	(inflow_inferior_exit): Release the `run_terminal' field.
	(copy_terminal_info): New function.
	(new_tty_postfork): New function.
	* terminal.h (new_tty_prefork, new_tty, new_tty_postfork,
	(copy_terminal_info, gdb_has_a_terminal, gdb_setpgid): Declare.
	* inf-ptrace.c: Include terminal.h.
	(inf_ptrace_follow_fork): Copy the parent's terminal info to the
	child.
	* linux-nat.c: Include terminal.h.
	(linux_child_follow_fork): Copy the parent's terminal info to the
	child.
	* inf-ttrace.c: Include terminal.h.
	(inf_ttrace_follow_fork): Copy the parent's terminal info to the
	child.
2009-05-19 02:46:45 +00:00
Pedro Alves 2ea7b6479f Forgot to check in the ChangeLog entry for the previous change. Here goes...
2009-05-19  Pedro Alves  <pedro@codesourcery.com>

	* breakpoint.c (insert_breakpoints, breakpoint_init_inferior)
	(update_global_location_list): Use gdbarch_has_global_breakpoints
	instead of gdbarch_has_global_solist and
	target_supports_multi_process.
	* dicos-tdep.c (dicos_init_abi): Set
	gdbarch_has_global_breakpoints.
	* gdbarch.sh (has_global_solist): Update comment.
	(has_global_breakpoints): New.
	* remote.c (remote_start_remote): Use
	gdbarch_has_global_breakpoints instead of
	gdbarch_has_global_solist.
	* target.c (target_detach): Use gdbarch_has_global_breakpoints
	instead of gdbarch_has_global_solist.
	* infcmd.c (attach_command): Use gdbarch_has_global_solist instead
	of target_supports_multi_process.
2009-05-19 00:26:48 +00:00
Pedro Alves 2567c7d9cc * breakpoint.c (insert_breakpoints, breakpoint_init_inferior)
(update_global_location_list): Use gdbarch_has_global_breakpoints
	instead of gdbarch_has_global_solist and
	target_supports_multi_process.
	* dicos-tdep.c (dicos_init_abi): Set
	gdbarch_has_global_breakpoints.
	* gdbarch.sh (has_global_solist): Update comment.
	(has_global_breakpoints): New.
	* remote.c (remote_start_remote): Use
	gdbarch_has_global_breakpoints instead of
	gdbarch_has_global_solist.
	* target.c (target_detach): Use gdbarch_has_global_breakpoints
	instead of gdbarch_has_global_solist.
	* infcmd.c (attach_command): Use gdbarch_has_global_solist instead
	of target_supports_multi_process.
2009-05-19 00:23:49 +00:00
gdbadmin 9256fd28dd *** empty log message *** 2009-05-19 00:00:03 +00:00
Paul Pluzhnikov 6342b74acd 2009-05-18 Paul Pluzhnikov <ppluzhnikov@google.com>
* objc-lang.c (find_methods): Plug a small memory leak.
2009-05-18 22:57:11 +00:00
Pedro Alves 1a816a8780 * solib-svr4.c: Include observer.h.
(debug_base, debug_loader_offset_p, debug_loader_offset)
	(debug_loader_name, main_lm_addr): Move these globals...
	(struct svr4_info): ... into this new structure.
	(svr4_info_p): New typedef.
	(svr4_info): New global.
	(get_svr4_info, remove_svr4_info, solib_svr4_inferior_exit): New
	functions.
	(locate_base, solib_svr4_r_map, solib_svr4_r_brk)
	(solib_svr4_r_ldsomap): Add svr4_info argument.  Adjust to
	per-inferior svr4.
	(open_symbol_file_object): Adjust to per-inferior svr4.
	(svr4_default_sos, svr4_current_sos, svr4_fetch_objfile_link_map):
	Ditto.
	(enable_break): Add svr4_info argument.  Adjust to per-inferior
	svr4.
	(enable_break, svr4_solib_create_inferior_hook, svr4_clear_solib):
	Adjust to per-inferior svr4.
	(_initialize_svr4_solib): Install the solib_svr4_inferior_exit
	observer.
2009-05-18 19:08:10 +00:00
Pedro Alves 4d062f1ad5 * linux-nat.h (linux_proc_get_tgid): Declare.
* linux-nat.c (linux_proc_get_tgid): New.
	* linux-thread-db.c (struct thread_db_info): New field
	`need_stale_parent_threads_check'.
	(add_thread_db_info): Set it.
	(find_new_threads_callback): Ignore stale fork parent threads.
	(thread_db_resume): New.
	(init_thread_db_ops): Install thread_db_resume.
2009-05-18 17:11:25 +00:00
Pedro Alves d90e17a74d * fork-child.c (fork_inferior): Only reset the thread list if this
is the first inferior.
	(startup_inferior): If the target support multi-process, tell it
	to resume only the new process.
	* linux-nat.c (num_lwps): Delete global.
	(purge_lwp_list): New function.
	(num_lwps): New function.
	(add_lwp, delete_lwp): Adjust.
	(ptid_match): New.
	(iterate_over_lwps): Add filter argument.  Handle it.
	(linux_nat_attach): Remove FIXME note.
	(linux_nat_detach): Adjust to iterate over threads of the inferior
	we're detaching from.  Adjust to num_lwps being a function.  Don't
	assume the head of the lwp list is the main thread of the process
	we're detaching from.  Don't destroy the LWP list.
	(resume_callback): Add debug output.
	(linux_nat_resume): Handle resuming a single inferior.  Allow a
	wildcard resume in non-stop mode.
	(linux_handle_extended_wait): Don't assume inferior_ptid is the
	correct inferior of the parent LWP.
	(status_callback): Also check lp->waitstatus.
	(select_event_lwp): Add new filter parameter.  Handle it.
	(linux_nat_filter_event): Adjust to num_lwps being a function.
	(linux_nat_wait_1): When adding the first lwp of the inferior, use
	an is_lwp check instead of checking for the number of lwps.
	(linux_nat_wait_1): Handle waiting for a specific tgid.  Handle
	pending process exit statuses.
	(linux_nat_mourn_inferior): Don't destroy all the LWP info.
	Instead delete LWPs of the inferior that we're mourning.  Don't
	unregister from the event loop here.
	(linux_nat_pid_to_str): Use `num_lwps'.
	(linux_nat_make_corefile_notes): Adjust to walk over lwps of a
	single inferior.
	(linux_nat_is_async_p): Check if async was masked out.
	(linux_multi_process): New global.
	(linux_nat_supports_multi_process): New.
	(linux_nat_stop_lwp): Remove LWP filtering.  It is done by the
	caller.
	(linux_nat_stop): Adjust to make iterate_over_lwps itself do the
	LWP filtering.
	(linux_nat_close): New.
	(linux_nat_add_target): Register linux_nat_close and
	linux_nat_supports_multi_process.
	* linux-nat.h (iterate_over_lwps): Add filter argument.
	* linux-thread-db.c (thread_db_handle): Delete.
	(proc_handle, thread_agent, td_init_p, td_ta_new_p)
	(td_ta_map_id2thr_p, td_ta_map_lwp2thr_p, td_ta_thr_iter_p)
	(td_ta_event_addr_p, td_ta_set_event_p, td_ta_event_getmsg_p)
	(td_thr_validate_p, td_thr_get_info_p, td_thr_event_enable_p)
	(td_thr_tls_get_addr_p, td_create_bp_addr, td_death_bp_addr): No
	longer globals, moved to...
	(struct thread_db_info): ... this new structure.
	(thread_db_list): New.
	(add_thread_db_info, get_thread_db_info, delete_thread_db_info):
	New.
	(have_threads_callback): Filter out threads of all inferiors but
	the one specified by the ARGS argument.
	(have_threads): Add ptid argument specifying the inferior we're
	interested in.  Handle it.
	(struct thread_get_info_inout): New.
	(thread_get_info_callback, thread_from_lwp): Adjust to use it.
	(thread_db_attach_lwp): Check that inferior of the passed in
	thread is using thread-db.  Adjust.
	(enable_thread_event): Remove thread_agent parameter.  Instead,
	get it from the per-inferior thread-db info.
	(dladdr_to_soname): Move higher up.
	(enable_thread_event_reporting): Adjust to use per-inferior
	thread-db info.
	(try_thread_db_load_1): Replace `handle' parameter by a
	thread_db_info parameter.  Adjust to use per-inferior thread-db
	info.
	(try_thread_db_load): Adjust to use per-inferior thread-db info.
	(thread_db_load, disable_thread_event_reporting): Ditto.
	(check_for_thread_db): Remove conditional reporting of which
	libthread_db is in use.
	(thread_db_new_objfile): Add comment about inferior_ptid.
	(attach_thread): Adjust to use per-inferior thread-db info.
	(thread_db_detach): Adjust to use per-inferior thread-db info.
	Remove thread event breakpoints of the current inferior.  Only
	unpush the thread-db target if there are no more processes using
	it.
	(check_event): Adjust to use per-inferior thread-db info.
	(thread_db_wait): Adjust to use per-inferior thread-db info.  Only
	unpush the thread-db target if there are no more processes using
	it.
	(thread_db_mourn_inferior): Adjust to use per-inferior thread-db
	info.  Mark breakpoints of the current inferior out before
	deleting them.  Only unpush the thread-db target if there are no
	more processes using it.
	(find_new_threads_callback): Adjust to use per-inferior thread_db
	info.
	(thread_db_find_new_threads_1): Add new ptid argument.  Adjust to
	use per-inferior thread-db info.
	(thread_db_find_new_threads): Adjust to use per-inferior thread-db
	info.
	(thread_db_get_thread_local_address): Adjust.
	(thread_db_get_ada_task_ptid): Adjust.
	* inf-ptrace.c (inf_ptrace_mourn_inferior): Only unpush the target
	if there no more processes left to debug.
	* thread.c (set_running, set_executing): Handle resuming all
	threads of a single inferior.
	* mi/mi-interp.c (mi_output_running_pid): New.
	(mi_inferior_count): New.
	(mi_on_resume): For backwards compatibility, if resuming all
	threads of an inferior, and there is only one inferior, output
	"all".
2009-05-18 14:07:18 +00:00
Ulrich Weigand dddfab26ac * ada-lang.c (ada_find_any_type): Move check for primitive types ...
(to_fixed_range_type): ... to here.
2009-05-18 14:00:08 +00:00
Ulrich Weigand 556bdfd450 * ada-lang.c (desc_data_type): Remove, replace by ...
(desc_data_target_type): ... this.
	(thin_data_pntr): Use desc_data_target_type instead of desc_data_type.
	(ada_is_array_descriptor_type): Likewise.
	(ada_type_of_array): Likewise.
	(ada_coerce_to_simple_array_type): Likewise.
	(ada_array_element_type): Likewise.
2009-05-18 13:55:49 +00:00
Ulrich Weigand aaa88a990d * ada-valprint.c (ada_val_print_1): Use val_print_string to print
result of ada_vax_float_print_function inferior call.
2009-05-18 13:51:52 +00:00
Ulrich Weigand 17280b9f0a * ada-lang.c (ada_coerce_to_simple_array_type): Reimplement to
avoid creating a dummy value.
2009-05-18 13:47:44 +00:00
Ulrich Weigand 830bb937a1 * p-valprint.c (pascal_val_print): Use extract_typed_address
to extract reference value.
2009-05-18 13:45:51 +00:00
Ulrich Weigand e035e3736f * doublest.c (NAN): Remove unused define.
(extract_floating_by_length, deprecated_extract_floating): Remove.
	(store_floating_by_length, deprecated_store_floating): Remove.
	(extract_typed_floating): Do not call extract_floating_by_length.
	(store_typed_floating): Do not call store_floating_by_length.
	(convert_typed_floating): Remove redundant assertions.
	* doublest.h (deprecated_extract_floating): Remove.
	(deprecated_store_floating): Remove.
	* sh64-tdep.c (sh64_register_convert_to_raw): Call
	extract_typed_floating instead of deprecated_extract_floating.
2009-05-18 13:43:35 +00:00
Jon Beniston c28c63d86b gdb/
2009-05-18  Jon Beniston <jon@beniston.com>

        * MAINTAINERS: Add lm32 target.
        * Makefile.in: Add lm32 dependencies.
        * NEWS: Indicate lm32 is a new target.
        * configure.tgt: Add lm32 targets.
        * lm32-tdep.c: New file.

gdb/testsuite
2009-05-18  Jon Beniston <jon@beniston.com>

        * gdb.asm/asm-source.exp: Add lm32 target.

include/gdb/
2009-05-18  Jon Beniston <jon@beniston.com>

        * sim-lm32.h: New file.

sim/
2009-05-18  Jon Beniston <jon@beniston.com>

        * MAINTAINERS: Add Jon Beniston as maintainer of lm32 sim.
        * configure.ac: Add lm32 target.
        * lm32: New directory.

sim/common
2009-05-18  Jon Beniston <jon@beniston.com>

        * gennltvals.sh: Add lm32 target.
        * nltvals.def: Add lm32 syscall definitions.

sim/lm32/
2009-05-18  Jon Beniston <jon@beniston.com>

        * Makefile.in: New file.
        * arch.c: New file.
        * arch.h: New file.
        * config.in: New file.
        * configure: New file.
        * configure.ac: New file.
        * cpu.c: New file.
        * cpu.h: New file.
        * cpuall.h: New file.
        * decode.c: New file.
        * decode.h: New file.
        * dv-lm32cpu.c: New file.
        * dv-lm32timer.c: New file.
        * dv-lm32uart.c: New file.
        * lm32.c: New file.
        * lm32-sim.h: New file.
        * mloop.in: New file.
        * model.c: New file.
        * sem.c: New file.
        * sem-switch.c: New file.
        * sim-if.c: New file.
        * sim-main.c: New file.
        * tconfig.in: New file.
        * traps.c: New file.
        * user.c: New file.
2009-05-18 13:25:35 +00:00
Pedro Alves 739fc47ac9 * corelow.c (core_open): Flush the register cache before doing
anything with registers.
2009-05-18 12:12:16 +00:00
Pedro Alves 7e1789f556 * inflow.h (our_process_group): Remove declaration.
(inferior_process_group): Delete global variable declaration.
	(inferior_process_group): New function declaration.
	* inflow.c: Include observer.h.
	(inferior_ttystate, our_ttystate, tflags_inferior, tflags_ours):
	Delete.
	(struct terminal_info): New struct.
	(our_terminal_info): New global.
	(inferior_process_group): New function.
	(inferior_thisrun_terminal): Extend description comment.
	(gdb_has_a_terminal): Adjust to write to our_terminal_info fields
	instead of globals.
	(terminal_init_inferior_with_pgrp): Adjust to per-inferior
	terminal settings.
	(terminal_inferior): Ditto.
	(terminal_ours_1): Ditto.
	(inflow_new_inferior, inflow_inferior_exit): New functions.
	(child_terminal_info): Adjust to per-inferior terminal settings.
	(osig_set): New global.
	(set_sigint_trap): Adjust to per-inferior terminal settings.  Set
	or clear `osig_set' accordingly.
	(clear_sigint_trap): Check `osig_set' to decide wheater to restore
	SIGINT handler, instead of checking the current inferior (which
	may be none).
	(_initialize_inflow): Attach inflow_new_inferior and
	inflow_inferior_exit to the "new_inferior" and "inferior_exit"
	notifications, respectively.
	* inferior.h (struct terminal_info): Forward declare.
	(struct inferior): Add `terminal_info' field.
	* inferior.c (delete_inferior_1): Notify the inferior_exit
	observers before removing the inferior from the lists and deleting
	it.
	* inf-ptrace.c (inf_ptrace_stop): `inferior_process_group' is now
	a function instead of a variable.  Adjust.
	* procfs.c (procfs_stop): Ditto.
2009-05-18 00:58:38 +00:00
gdbadmin 7a1c0c5cb1 *** empty log message *** 2009-05-18 00:00:33 +00:00
Pedro Alves 60a7d074bf Fix typo... 2009-05-17 19:30:04 +00:00
Pedro Alves b242c3c237 gdb/
2009-05-17  Pedro Alves  <pedro@codesourcery.com>

	* infrun.c (handle_inferior_event): When handling a
	TARGET_WAITKIND_FORKED, detach breakpoints from the fork child
	immediatelly.
	* linux-nat.c (linux_child_follow_fork): Only detach breakpoint
	from the child if vforking.
	* inf-ptrace.c (inf_ptrace_follow_fork): No need to detach
	breakpoints from the child here.

gdb/testsuite/
2009-05-17  Pedro Alves  <pedro@codesourcery.com>

	* gdb.base/foll-fork.c: Include stdlib.h.  Add markers for
	`gdb_get_line_number'.  Call `callee' in both parent and child.
	* gdb.base/foll-fork.exp (catch_fork_child_follow): Use
	`gdb_get_line_number' instead of hardcoding line numbers.
	(catch_fork_unpatch_child): New procedure to test detaching
	breakpoints from child fork.
	(tcatch_fork_parent_follow): Use `gdb_get_line_number' instead of
	hardcoding line numbers.
	(do_fork_tests): Run `catch_fork_unpatch_child'.
2009-05-17 19:20:33 +00:00
Pedro Alves 235f2b04ae * infrun.c (pending_follow): Remove mention of exec events. 2009-05-17 16:46:20 +00:00
Pedro Alves 71b43ef89e * infrun.c (pending_follow): Remove execd_pathname member.
(resume): No longer handle TARGET_WAITKIND_EXECD pending follow.
	(handle_inferior_event): When handling a TARGET_WAITKIND_EXECD
	event, don't copy `execd_pathname' to pending_follow, use the
	event copy instead.  Release `execd_pathname' once done with
	handling the event.
2009-05-17 16:31:21 +00:00
Hui Zhu d5f3b87372 Fix a typo error. 2009-05-17 12:39:18 +00:00
Hui Zhu a6b808b408 * i386-tdep.c (i386_process_record): Make it extern.
(i386_gdbarch_init): Don't call set_gdbarch_process_record
here.
* i386-tdep.c (i386_process_record): Declare.
* i386-linux-tdep.c (i386_linux_init_abi): Call
set_gdbarch_process_record.
2009-05-17 12:26:44 +00:00
Vladimir Prus ee342b2344 Always report varobj as changed when in_scope attribute changes.
* varobj.c (install_new_value): If non-NULL-ness of value
	changed, return 1.
2009-05-17 07:13:19 +00:00
gdbadmin 6ec7285688 *** empty log message *** 2009-05-17 00:00:33 +00:00
gdbadmin 63ee802758 *** empty log message *** 2009-05-16 00:00:04 +00:00
Paul Pluzhnikov 17a37d488c 2009-05-15 Paul Pluzhnikov <ppluzhnikov@google.com>
* NEWS: Mention set/show libthread-db-search-path.
	* gdb_thread_db.h (LIBTHREAD_DB_SEARCH_PATH): New define.
	(LIBTHREAD_DB_SO): Moved from linux-thread-db.c
	* linux-thread-db.c (libthread_db_search_path): New setting.
	(thread_db_handle): New variable (replaces using_thread_db).
	(try_thread_db_load_1): New function.
	(try_thread_db_load, thread_db_load_search): Likewise.
	(dladdr_to_soname): Likewise.
	(thread_db_load): Iterate over possibly multiple libthread_db's.
	(check_for_thread_db): Attempt to load new libthread_db.
	(thread_db_detach, thread_db_wait): Unload libthread_db.
	(thread_db_mourn_inferior): Likewise.
	(_initialize_thread_db): Add new libthread-db-search-path option.
	Defer loading of libthread_db to check_for_thread_db.
	* solib.c (libpthread_name_p): New function.
	(libpthread_solib_p): Call it.
	* solib.h (libpthread_name_p): New prototype.
2009-05-15 16:53:45 +00:00
Pierre Muller 0643c12ee1 * MAINTAINERS: Update my email address. 2009-05-15 10:11:32 +00:00
Pierre Muller 39a90fcaaf * fix my email address 2009-05-15 10:09:14 +00:00
gdbadmin 70b24e7fb2 *** empty log message *** 2009-05-15 00:00:33 +00:00
Paul Pluzhnikov e62c965a4f 2009-05-14 Paul Pluzhnikov <ppluzhnikov@google.com>
* breakpoint.h: Add breakpoint_re_set_objfile prototype.
	* breakpoint.c (create_overlay_event_breakpoint): Renamed
	from create_overlay_event_breakpoint_1, old
	create_overlay_event_breakpoint deleted.
	(breakpoint_re_set_objfile): Don't rescan all objfiles
	unnecessarily.
	(breakpoint_re_set): New function.
	* symfile.c (new_symfile_objfile): Call breakpoint_re_set_objfile
	instead of breakpoint_re_set.
	* objfiles.c (objfile_relocate): Likewise.
2009-05-14 23:33:08 +00:00
Nick Roberts 508094de01 (GDB/MI General Design): Break up into four nodes. 2009-05-14 21:43:09 +00:00