Commit graph

15831 commits

Author SHA1 Message Date
Paul Pluzhnikov
269f82e5eb gdb/ChangeLog:
2009-11-13  Paul Pluzhnikov  <ppluzhnikov@google.com>

	* python/py-prettyprint.c (print_string_repr): Suppress
	address printing


testsuite/ChangeLog:

2009-11-13  Paul Pluzhnikov  <ppluzhnikov@google.com>

	* gdb.python/py-prettyprint.exp: Adjust.
2009-11-13 17:17:57 +00:00
Tristan Gingold
fd6d681553 2009-11-13 Tristan Gingold <gingold@adacore.com>
* avr-tdep.c (avr_push_dummy_call): Fix endianness issue and avoid
	overlap between returned structure and return address/parameters.
2009-11-13 10:32:58 +00:00
Daniel Jacobowitz
b86ab4ff15 * remote-fileio.c (remote_fileio_func_read): Limit console
reads to 16K.
2009-11-12 21:01:00 +00:00
Daniel Jacobowitz
d48cc9dd6f 2009-11-12 Daniel Jacobowitz <dan@codesourcery.com>
Paul Brook  <paul@codesourcery.com>

	* c-typeprint.c (c_type_print_base): Skip artificial fields.
	Use get_vptr_fieldno to skip the vtable pointer.
	* dwarf2read.c (dwarf2_add_field): Set FIELD_ARTIFICIAL on artificial
	fields.
	(dwarf2_add_member_fn): Complain about virtual member functions
	without DW_AT_vtable_elem_location and force TYPE_CPLUS_DYNAMIC.
	* gdbtypes.c (get_vptr_fieldno): Update comment.
	* gdbtypes.h (struct cplus_struct_type): Add is_dynamic.
	(TYPE_CPLUS_DYNAMIC): New macro.
	* gnu-v3-abi.c (gnuv3_dynamic_class): New.
	(gnuv3_get_vtable): Rewrite to use gnuv3_dynamic_class.  Move higher.
	(gnuv3_rtti_type, gnuv3_get_virtual_fn, gnuv3_baseclass_offset): Use
	gnuv3_get_vtable.
	* varobj.c (cplus_class_num_children, cplus_describe_child): Skip
	artificial fields.  Use get_vptr_fieldno to skip the vtable pointer.
2009-11-12 19:47:25 +00:00
Daniel Jacobowitz
0d564a3135 2009-11-12 Paul Brook <paul@codesourcery.com>
Daniel Jacobowitz  <dan@codesourcery.com>

	* dwarf2read.c (dwarf2_add_member_fn): Calculate virtual function
	offset for classes without DW_AT_containing_type.
2009-11-12 19:10:06 +00:00
Daniel Jacobowitz
7d0ccb6133 2009-11-12 Paul Brook <paul@codesourcery.com>
Daniel Jacobowitz  <dan@codesourcery.com>

	* dwarf2read.c (struct field_info): Add baseclasses.
	(dwarf2_add_field): Add base classes to a separate list.
	(dwarf2_attach_fields_to_type): Merge base classes and fields.
2009-11-12 19:05:28 +00:00
Daniel Jacobowitz
328c9494f5 * dwarf2read.c (process_psymtab_comp_unit): Initialize per_cu backlink
at the same time as the forward link.
	(load_partial_comp_unit): Initialize per_cu links before calling
	init_cu_die_reader.
2009-11-12 18:59:40 +00:00
Paul Pluzhnikov
21e1bee4d2 gdb/ChangeLog:
2009-11-11  Paul Pluzhnikov  <ppluzhnikov@google.com>

	PR gdb/10838
	* linux-thread-db.c (thread_db_info): New member.
	(disable_thread_event_reporting): Call td_ta_clear_event.

gdbserver/ChangeLog:

2009-11-11  Paul Pluzhnikov  <ppluzhnikov@google.com>

	PR gdb/10838
	* thread-db.c (thread_db_free): Call td_ta_clear_event.
2009-11-12 00:47:39 +00:00
Keith Seitz
1e5a1abc15 * linespec.c (lookup_prefix_sym): Lookup the symbol
in both STRUCT_DOMAIN and VAR_DOMAIN.
2009-11-11 23:34:11 +00:00
Michael Snyder
f801e1e0ba 2009-11-11 Michael Snyder <msnyder@vmware.com>
* darwin-nat-info.c: Update copyright.
	* dbxread.c: Ditto.
	* gdbarch.sh: Ditto.
	* gdbarch.c: Ditto.
	* gdbarch.h: Ditto.
	* inline-frame.c: Ditto.
	* inline-frame.h: Ditto.
2009-11-11 20:07:39 +00:00
Michael Snyder
1e061d1a6b 2009-11-11 Michael Snyder <msnyder@vmware.com>
* s390-nat.c: Update copyright.
2009-11-11 19:38:34 +00:00
Michael Snyder
5efc7e4417 ChangeLog, typo, obvious. 2009-11-11 19:30:23 +00:00
Michael Snyder
9659616a96 2009-10-28 Michael Snyder <msnyder@vmware.com>
* findvar.c (top level): Fix and add comments.
2009-11-11 19:27:02 +00:00
Keith Seitz
66c53f2b15 * c-expy. (operator_stoken): New function.
(OPERATOR): New token.
	(NEW): New token.
	(DELETE): New token.
	(operator): New rule.
	(name): Add operator.
	(ident_tokens): Add "new", "delete", and "operator".
	* gdbtypes.c (rank_one_type): Don't complain about
	void pointer conversion badness if both types are
	void pointers.
2009-11-11 16:45:46 +00:00
Jan Kratochvil
32a0e54790 gdb/
* symfile.c (separate_debug_file_exists): Change parameter parent_name
	to parent_objfile.  New variables parent_stat and abfd_stat.  Call
	strcmp and then bfd_stat functions to verify if NAME matches.
	(find_separate_debug_file): Update the passed parameter at caller.
2009-11-11 05:04:34 +00:00
Jan Kratochvil
9b14d7aa41 gdb/
* objfiles.c (objfile_relocate): Update also the field psymtabs_addrmap.

gdb/testsuite/
	* gdb.dwarf2/dw2-ranges.exp: Call runto_main.
2009-11-11 04:59:48 +00:00
Jan Kratochvil
da2f07f1aa bfd/
* configure.in: Call ACX_LARGEFILE.  Stop calling AC_PLUGINS,
	AC_SYS_LARGEFILE and checking the Solaris largefile exception.
	* aclocal.m4: Regenerate.
	* configure: Regenerate.

binutils/
	* configure.in: Call ACX_LARGEFILE.  Stop calling AC_PLUGINS,
	AC_SYS_LARGEFILE and checking the Solaris largefile exception.
	* aclocal.m4: Regenerate.
	* configure: Regenerate.

gas/
	* configure.in: Call ACX_LARGEFILE.  Stop calling AC_SYS_LARGEFILE.
	* aclocal.m4: Regenerate.
	* configure: Regenerate.

gdb/
	* configure.ac: Call ACX_LARGEFILE.
	* aclocal.m4: Call m4_include for ../config/largefile.m4 and
	../config/plugins.m4.
	* configure: Regenerate.
	* config.in: Regenerate.

gprof/
	* configure.in: Call ACX_LARGEFILE.  Stop calling AC_SYS_LARGEFILE.
	* aclocal.m4: Regenerate.
	* configure: Regenerate.

ld/
	* configure.in: Call ACX_LARGEFILE.  Stop calling AC_SYS_LARGEFILE.
	* aclocal.m4: Regenerate.
	* configure: Regenerate.
2009-11-11 04:42:42 +00:00
Keith Seitz
072bba3b0f * c-exp.y: Add new rule for resolving method overloads.
* eval.c (make_params): New function.
	(free_param_types): New function.
	(evaluate_subexp_standard): Pass expect_type to value_aggregate_elt.
	Handle case TYPE_INSTANCE.
	(evaluate_subexp_for_address): Pass expect_type to value_aggregate_elt.
	* expression.h (enum exp_opcode): Add TYPE_INSTANCE.
	(compare_parameters): Add declaration.
	* parse.c (operator_length_standard): Add TYPE_INSTANCE.
	* valops.c (value_aggregate_elt): Add new expect_type parameter.
	Pass expect_type to value_struct_elt_for_reference.
	(value_struct_elt_for_reference): Add expect_type parameter and use
	compare_parameters.
	Check for overload matches with and without artificial parameters.
	Skip artificial methods.
	(compare_parameters): New function.
	* value.h (value_aggregate_elt): Add new expect_type parameter.
2009-11-10 22:17:58 +00:00
Joseph Myers
de64a9acc6 * solib-svr4.c (enable_break): Call
gdbarch_convert_from_func_ptr_addr on results of looking up
	fallback symbol names.
2009-11-10 21:36:48 +00:00
Daniel Jacobowitz
751254059d 2009-11-10 Daniel Gutson <dgutson@codesourcery.com>
* procfs.c (procfs_do_thread_registers): Added a call to fetch
	register values before saving them in the core file
	through the gcore command.
	(procfs_corefile_thread_callback): Removed the backup of
	inferior_ptid before calling procfs_do_thread_registers since
	the function already saves and restores it before returning.
2009-11-10 21:00:41 +00:00
Michael Snyder
e124be18d9 2009-11-10 Michael Snyder <msnyder@vmware.com>
* dcache.c: Fix typo, shorten long lines in comment.
2009-11-10 18:36:50 +00:00
Tristan Gingold
7d2552b4b6 2009-11-10 Tristan Gingold <gingold@adacore.com>
* avr-tdep.c: Add AVR_PSEUDO_PC_REGNUM and AVR_NUM_PSEUDO_REGS.
	(struct gdbarch_tdep): Add void_type, func_void_type and pc_type
	fields.
	(avr_register_name): Add "pc" name, renames "PC" to "PC2".
	(avr_register_type): Handle AVR_PSEUDO_PC_REGNUM.
	(avr_write_pc): Fix indentation.
	(avr_pseudo_register_read): New function.
	(avr_pseudo_register_write): New function.
	(avr_frame_prev_register): Handle AVR_PSEUDO_PC_REGNUM.
	(avr_gdbarch_init): Create types for pc.  Register pseudo regs.
2009-11-10 11:14:38 +00:00
Tristan Gingold
8a1d23b2ab 2009-11-10 Tristan Gingold <gingold@adacore.com>
* avr-tdep.c (avr_integer_to_address): New function.
	(avr_gdbarch_init): Set integer_to_address.
2009-11-10 10:48:51 +00:00
Tristan Gingold
8c201e543a 2009-11-10 Tristan Gingold <gingold@adacore.com>
* avr-tdep.c (avr_skip_prologue): First try to skip prologue
	using skip_prologue_using_sal.
2009-11-10 10:35:57 +00:00
Tristan Gingold
1bd0bb725f 2009-11-10 Tristan Gingold <gingold@adacore.com>
* avr-tdep.c (avr_extract_return_value): Remove.
	(avr_return_value): Mostly rewritten.  Fix handling for structures.
	(avr_push_dummy_call): Handle struct_return.

2009-11-10  Tristan Gingold  <gingold@adacore.com>

	* avr-tdep.c (avr_scan_prologue): Decode instructions used for
	small stack allocation.
	Adjust code for prologue that don't write SP.
2009-11-10 10:22:22 +00:00
Tristan Gingold
ee143e8142 2009-11-10 Tristan Gingold <gingold@adacore.com>
* avr-tdep.c (avr_make_saddr): Return 0 for NULL.
2009-11-10 10:05:47 +00:00
Tristan Gingold
53f6a2c9fa 2009-11-10 Tristan Gingold <gingold@adacore.com>
* avr-tdep.c (avr_dwarf_reg_to_regnum): New function.
	(avr_gdbarch_init): Call set_gdbarch_dwarf2_reg_to_regnum.
2009-11-10 09:49:52 +00:00
Joel Brobecker
3ffc00b87a PR mi/9583:
* symtab.c (find_line_symtab, append_exact_match_to_sals)
        (expand_line_sal): Use full filename when setting breakpoints if
        available
2009-11-09 22:02:55 +00:00
Cary Coutant
de4affc9ce * dwarf2read.c (read_import_statement): Don't clobber original cu. 2009-11-09 21:39:40 +00:00
Tom Tromey
86c6265d62 * python/python.c (execute_gdb_command): Copy the argument text. 2009-11-09 18:29:12 +00:00
Vladimir Prus
bbaa04b8d0 * m68k-tdep.c (m68k_convert_register_p): Correct
messup.
2009-11-06 19:26:18 +00:00
Vladimir Prus
3c1ac6e7f7 * m68k-tdep.c (m68k_convert_register_p): Compare with
the actual type of fp registers, not one of the possible
	values.
2009-11-06 17:22:33 +00:00
Vladimir Prus
c271b6e2b5 Prevent program output from mix with "^running".
gdb/
	* mi/mi-interp.c (mi_on_resume): Output token
	and "^running" together, so that nothing else gets
	in between.
2009-11-06 14:26:13 +00:00
Daniel Jacobowitz
d85a05f07f * dwarf2read.c (struct dwarf2_cu): Remove ranges_offset and
has_ranges_offset.
	(struct partial_die_info): Remove language, has_stmt_list, dirname,
	and line_offset.
	(dwarf2_build_include_psymtabs): Take a die_info.  Handle a missing
	line table.
	(dwarf2_get_pc_bounds): Take PST argument.  Pass it
	to dwarf2_ranges_read.  Update all callers.
	(init_cu_die_reader): Move earlier.
	(dwarf2_find_base_address): New function.
	(process_psymtab_comp_unit): Rewrite to use a full DIE for the
	compilation unit.  Use dwarf2_get_pc_bounds and
	dwarf2_find_base_address.
	(load_comp_unit): Rewrite to use a full DIE for the compilation unit.
	(process_full_comp_unit): Use dwarf2_find_base_address.
	(read_partial_die): Remove support for attributes only used
	in the compilation unit DIE.
	* symfile.c (allocate_psymtab): Make FILENAME const.
	(start_psymtab_common): Likewise.
	* symfile.h (allocate_psymtab, start_psymtab_common): Update
	prototypes.
2009-11-05 23:18:01 +00:00
Tom Tromey
10abe6bf36 * symmisc.c (print_symbol_bcache_statistics): Print filename cache
statistics.
	(print_objfile_statistics): Likewise.
	* symfile.c (reread_symbols): Initialize filename_cache.
	(allocate_symtab): Cache the file name.
	(allocate_psymtab): Likewise.
	* solib-sunos.c (allocate_rt_common_objfile): Initialize
	filename_cache.
	* objfiles.h (struct objfile) <filename_cache>: New field.
	* objfiles.c (allocate_objfile): Initialize filename_cache.
	(free_objfile): Free filename_cache.
2009-11-05 22:26:10 +00:00
Tom Tromey
69a943f005 * symfile.c (add_psymbol_to_bcache): Make 'psymbol' static again.
Zero the 'value' field.
2009-11-05 22:19:09 +00:00
Doug Evans
bba66b87ef * amd64-tdep.c (amd64_init_frame_cache): Enhance comment describing
saved_regs.
2009-11-05 21:17:00 +00:00
Daniel Jacobowitz
52efb61a1c * top.c (execute_command): Select a frame before checking the current
language.  Only output a message if verbose.
2009-11-05 20:43:52 +00:00
Tom Tromey
1c9e835890 * symtab.h (SYMBOL_SET_LINKAGE_NAME): Update comment.
* symfile.c (allocate_symtab): Don't use obsavestring on a
	constant string.
	* stabsread.c (define_symbol): Don't use obsavestring on a
	constant string.
	* mdebugread.c (parse_type): Don't use obsavestring on a constant
	string.
	(new_symtab): Likewise.
	* elfread.c (elf_symtab_read): Don't use obsavestring on a
	constant string.
2009-11-05 19:53:04 +00:00
Tom Tromey
8c2963fbcf * symfile.c (add_psymbol_to_bcache): Don't copy name. Make
'psymbol' non-static.
2009-11-04 23:06:50 +00:00
Paul Pluzhnikov
12b6a1106b 2009-11-03 Paul Pluzhnikov <ppluzhnikov@google.com>
* linux-thread-db.c (disable_thread_event_reporting): Adjust.
2009-11-03 17:14:56 +00:00
Joel Brobecker
b06adb8115 * MAINTAINERS (Responsible Maintainers): Add Tristan Gingold as
maintainer of the avr target.
2009-11-03 14:36:11 +00:00
Daniel Jacobowitz
ad09a54881 * elfread.c (elf_symfile_segments): Do not warn about
uninitialized sections outside of load segments.
2009-11-02 17:16:14 +00:00
Jan Kratochvil
24ddea6286 gdb/
* symfile.c (build_id_to_debug_filename): New variable debugdir.  Move
	variables size, s and data into a new inner block.  Change xmalloc for
	alloca, use direct BUILDID->SIZE there now.  Loop for the
	DEBUG_FILE_DIRECTORY components.
	(find_separate_debug_file): New variable debugdir and debugdir_end.
	Loop for the DEBUG_FILE_DIRECTORY components.
	(_initialize_symfile): For "debug-file-directory" use plural and note
	one can use multiple components now.

gdb/doc/
	* gdb.texinfo (set debug-file-directory, show debug-file-directory)
	(Auto-loading): Use plural and note one can use multiple components now.

gdb/testsuite/
	* gdb.base/sepdebug.exp: New test_different_dir call for multiple-dirs.
2009-11-02 14:59:53 +00:00
Jan Kratochvil
25522fae98 gdb/
* symfile.c (find_separate_debug_file): Initialize dir, debugfile and
	canon_name to NULL.  Change alloca to xmalloc, newly call xfree for it.
	New label cleanup_return_debugfile, jump to it from the failure paths.
2009-11-02 14:57:02 +00:00
Jan Kratochvil
287ccc17ed gdb/
* symfile.c (separate_debug_file_exists): When the CRCs mismatch
	print a warning.
	(find_separate_debug_file): Pass in the objfile's name.

gdb/testsuite/
	* gdb.base/sepdebug.exp (CRC mismatch is reported): New test.
	* gdb.base/sepdebug2.c: New file.
2009-11-02 14:55:05 +00:00
Jan Kratochvil
abd0a5fa91 gdb/
Remove INVALID_ENTRY_POINT.
	* frame.c (inside_entry_func): New variable entry_point.  Return 0 if
	the entry point is not known.
	* solib-irix.c (enable_break): Likewise.
	* objfiles.c (init_entry_point_info): Stop using INVALID_ENTRY_POINT.
	Initialize EI.ENTRY_POINT_P.
	(entry_point_address): Rename to ...
	(entry_point_address_query): ... a new function.  Use EI.ENTRY_POINT_P.
	(entry_point_address): New function.
	(objfile_relocate): Use EI.ENTRY_POINT_P.
	* objfiles.h (struct entry_info): Simplify entry_point comment.  New
	field entry_point_p.
	(INVALID_ENTRY_POINT): Remove.
	(entry_point_address_query): New prototype.
	* solib-frv.c (enable_break): Check for NULL SYMFILE_OBJFILE and its
	EI.ENTRY_POINT_P.  Return 0 if ".interp" is not found.
2009-11-02 14:50:29 +00:00
Michael Snyder
399cd16192 2009-11-01 Michael Snyder <msnyder@vmware.com>
* NEWS (New Commands): Mention record save/restore.
2009-11-01 21:20:18 +00:00
Michael Snyder
3d947dffe0 2009-10-31 Michael Snyder <msnyder@vmware.com>
* breakpoint.c (bpstat_stop_status): Fix broken comment.
2009-10-31 18:30:40 +00:00
Pedro Alves
07b7cff327 * record.c (record_restore, cmd_record_save): Debug output goes to
gdb_stdlog.
2009-10-31 14:56:26 +00:00
Sergio Durigan Junior
08bca2595a Fixing the date format for the last ChangeLog entry. 2009-10-31 06:05:15 +00:00
Sergio Durigan Junior
bccd0dd203 gdb/ChangeLog:
2009-31-10  Sergio Durigan Junior <sergiodj@linux.vnet.ibm.com>

	* breakpoint.c (catch_syscall_split_args): Remove unecessary warning
	displayed when the user provided a syscall name and there is no
	XML support.
	* xml-syscall.c: Renamed `_sysinfo' to `sysinfo'.
	(set_xml_syscall_file_name): Remove syscall_warn_user.
	(xml_init_syscalls_info): Remove warning.
	(init_sysinfo): Update warnings.

gdb/testsuite/ChangeLog:

2009-31-10  Sergio Durigan Junior <sergiodj@linux.vnet.ibm.com>

	* gdb.base/catch-syscall.exp: Adapt the testcase in order to accept
	the modified warnings for catch syscall.  Verify if GDB was compiled
	with support for lib expat, and choose which tests to run depending
	on this.
2009-10-31 06:00:13 +00:00
Vladimir Prus
5d4e2b767e Fix breakpoint commands in MI.
* mi/mi-main.c (mi_execute_command): Run bpstat_do_actions.
	* mi/mi-cmd-break.c (mi_cmd_break_commands): Pass 1 to
	read_command_line_1 to actually parse composite commands.
2009-10-30 17:34:53 +00:00
Sandra Loosemore
8a35fb51cd 2009-10-29 Sandra Loosemore <sandra@codesourcery.com>
PR gdb/10783

	gdb/
	* target.c (simple_search_memory): Correct read_addr initialization
	in loop for searching subsequent chunks.

	gdb/gdbserver/
	* server.c (handle_search_memory_1): Correct read_addr initialization
	in loop for searching subsequent chunks.
2009-10-29 20:12:26 +00:00
Daniel Jacobowitz
5fed8c4358 Reported by Antti Hatala <ahatala@nvidia.com>.
* arm-tdep.c (thumb_get_next_pc): Limit check to IT instructions
	correctly.
2009-10-28 20:17:36 +00:00
Pedro Alves
875cdfbb54 * dwarf2-frame.c (dwarf2_build_frame_info): Discard --gc-section
leftover FDEs.
2009-10-28 19:28:57 +00:00
Pedro Alves
1a587334a9 Revert previous patch. Applied an old version by mistake. 2009-10-28 19:01:16 +00:00
Pedro Alves
917bdf821d * dwarf2-frame.c (dwarf2_build_frame_info): Discard --gc-section
leftover FDEs.
2009-10-28 18:37:11 +00:00
Pedro Alves
c4dbc9afcc * infrun.c (keep_going): Wrap with resume_cleanups. 2009-10-28 16:33:01 +00:00
Paul Pluzhnikov
7dbc3bd245 2009-10-27 Paul Pluzhnikov <ppluzhnikov@google.com>
* MAINTAINERS: Add self to "modify-after-approval" maintainers.
2009-10-27 21:41:27 +00:00
Paul Pluzhnikov
02c6c94291 2009-10-27 Paul Pluzhnikov <ppluzhnikov@google.com>
PR gdb/10757
	* linux-thread-db.c (attach_thread): Return success/failure
	indicator.
	(thread_db_find_new_threads_silently): Retry until no new threads.
	(struct callback_data): New.
	(find_new_threads_callback): Count new threads, stop iteration
	on error.
	(find_new_threads_once): New function.
	(thread_db_find_new_threads_2): Rename from
	thread_db_find_new_threads_1 and adjust.
	(thread_db_find_new_threads_1): New function.
2009-10-27 21:32:49 +00:00
Michael Eager
0cf5390e3a Add self to MAINTAINERS. 2009-10-26 18:43:48 +00:00
Hui Zhu
0ebc209651 2009-10-26 Michael Snyder <msnyder@vmware.com>
Hui Zhu  <teawater@gmail.com>

	* Makefile.in (SFILES): Add gcore.c.
	(COMMON_OBS): Add gcore.o.
	* config/alpha/alpha-linux.mh (NATDEPFILES): Delete gcore.o.
	* config/alpha/fbsd.mh (NATDEPFILES): Ditto.
	* config/arm/linux.mh (NATDEPFILES): Ditto.
	* config/i386/fbsd.mh (NATDEPFILES): Ditto.
	* config/i386/fbsd64.mh (NATDEPFILES): Ditto.
	* config/i386/i386sol2.mh (NATDEPFILES): Ditto.
	* config/i386/linux.mh (NATDEPFILES): Ditto.
	* config/i386/linux64.mh (NATDEPFILES): Ditto.
	* config/i386/sol2-64.mh (NATDEPFILES): Ditto.
	* config/ia64/linux.mh (NATDEPFILES): Ditto.
	* config/m32r/linux.mh (NATDEPFILES): Ditto.
	* config/m68k/linux.mh (NATDEPFILES): Ditto.
	* config/mips/linux.mh (NATDEPFILES): Ditto.
	* config/pa/linux.mh (NATDEPFILES): Ditto.
	* config/powerpc/linux.mh (NATDEPFILES): Ditto.
	* config/powerpc/ppc64-linux.mh (NATDEPFILES): Ditto.
	* config/s390/s390.mh (NATDEPFILES): Ditto.
	* config/sparc/fbsd.mh (NATDEPFILES): Ditto.
	* config/sparc/linux.mh (NATDEPFILES): Ditto.
	* config/sparc/linux64.mh (NATDEPFILES): Ditto.
	* config/sparc/sol2.mh (NATDEPFILES): Ditto.
	* config/xtensa/linux.mh (NATDEPFILES): Ditto.
	* target.c (dummy_find_memory_regions): Change output.
	(dummy_make_corefile_notes): Ditto.
2009-10-26 18:28:13 +00:00
Tristan Gingold
6d1915d4fa 2009-10-26 Tristan Gingold <gingold@adacore.com>
* avr-tdep.c (avr_push_dummy_call): Handle avr6 architecture.
	Fix the returned value.  Fix style.
2009-10-26 16:53:57 +00:00
Joel Brobecker
599ec1349a * MAINTAINERS (Responsible Maintainers): Add info about the microblaze
targets.  Add Michael Eager as the maintainer for this target.
2009-10-26 16:23:20 +00:00
Jan Kratochvil
876fa593f0 gdb/
Performance optimize large bp_location count.
	* breakpoint.c (ALL_BP_LOCATIONS_SAFE): Remove.
	(ALL_BP_LOCATIONS): New parameter BP_TMP.  Use now bp_location and
	bp_location_count.
	(bp_location_chain): Remove variable.
	(bp_location, bp_location_count)
	(bp_location_placed_address_before_address_max)
	(bp_location_shadow_len_after_address_max): New variables.
	(moribund_locations, update_watchpoint): Update the bp_location
	variable name.
	(breakpoint_restore_shadows): Extend the comment.  Move the variable
	b to local blocks.  Move the variables bp_addr, bp_size and bptoffset
	to a local block.  New variables bc_l, bc_r and bc.  New binary search
	for the left range boundary.  New break on reaching the right range
	boundary.  Move shadow existence conditionals to ...
	(bp_location_has_shadow): ... a new function.
	(insert_breakpoint_locations): Replace the temp variable by bp_tmp.
	Use now ALL_BP_LOCATIONS instead of ALL_BP_LOCATIONS_SAFE.
	(remove_breakpoints, remove_hw_watchpoints, reattach_breakpoints)
	(detach_breakpoints): New variable bp_tmp.  Update the ALL_BP_LOCATIONS
	calling convention.
	(update_breakpoints_after_exec): New variable bplocp_tmp.  Update the
	ALL_BP_LOCATIONS calling convention.
	(breakpoint_here_p, software_breakpoint_inserted_here_p)
	(breakpoint_thread_match): New variable bptp_tmp.  Drop the const
	attribute of bpt.  Update the ALL_BP_LOCATIONS calling convention.
	(regular_breakpoint_inserted_here_p): Likewise.  Update the bp_location
	variable name.
	(mark_breakpoints_out, breakpoint_init_inferior): New variable
	bptp_tmp.  Update the ALL_BP_LOCATIONS calling convention.
	(bpstat_stop_status): New variables blp_tmp and update_locations.  Drop
	the const attribute of bl.  Update the ALL_BP_LOCATIONS calling
	convention.  Protect HIT_COUNT increment by an ENABLE_STATE check.
	Delay the update_global_location_list call using update_locations.
	(set_default_breakpoint): Drop the check_duplicates name from comment.
	(disable_breakpoints_in_shlibs, disable_breakpoints_in_unloaded_shlib):
	New variable locp_tmp.  Update the ALL_BP_LOCATIONS calling convention.
	(bp_location_compare, bp_location_compare_for_qsort)
	(bp_location_target_extensions_update): New functions.
	(check_duplicates, check_duplicates_for): Remove, moving their code ...
	(update_global_location_list): ... into this existing function.  Remove
	variables next, loc2, old_locations, ret and ix.  New variables locp,
	loc_first, old_location, old_locp and old_location_count.  Stop using
	global_next, create now the array bp_location, sort it by
	bp_location_compare_for_qsort and call
	bp_location_target_extensions_update.  Change quadratic iteration by
	loc2 into an in-sync scanning by locp and loc2p.  Rename former loc
	usage as old_loc.
	(do_vec_free): Remove.
	(breakpoint_program_space_exit): Update the ALL_BP_LOCATIONS calling
	convention.
	(remove_breakpoints_pid): New variable b_tmp.  Update the
	ALL_BP_LOCATIONS calling convention.
	* breakpoint.h (struct bp_location <global_next>): Remove.
2009-10-25 19:35:26 +00:00
Jan Kratochvil
342b5fef2a gdb/
* mep-tdep.c: Update include for the new location cgen/bitset.h.
2009-10-25 09:09:02 +00:00
Michael Snyder
6aa96d0323 2009-10-23 Michael Snyder <msnyder@vmware.com>
* record.c (top level): Don't include byteswap.h.
	(netorder64): Use store_unsigned_integer instead of bswap_64.
	(netorder32): Use store_unsigned_integer instead of bswap_32.
	(netorder16): Use store_unsigned_integer instead of bswap_16.
2009-10-23 23:42:25 +00:00
Tom Tromey
a515ee8202 * blockframe.c (_initialize_blockframe): Remove declaration. 2009-10-23 19:40:31 +00:00
Doug Evans
bcbfd75943 * record.c (record_core_xfer_partial): Pass correct offset to
record_beneath_to_xfer_partial.
2009-10-23 17:12:25 +00:00
Michael Snyder
3332cef88a 2009-10-23 Michael Snyder <msnyder@vmware.com>
* record.c (netorder64): Use BFD_ENDIAN_LITTLE not LITTLE_ENDIAN.
	(netorder32): Ditto.
	(netorder16): Ditto.
2009-10-23 16:41:50 +00:00
Paul Pluzhnikov
6a0fa04300 2009-10-23 Paul Pluzhnikov <ppluzhnikov@google.com>
* objfiles.c (allocate_objfile): Use xzalloc.
2009-10-23 14:36:30 +00:00
Hui Zhu
1de1372dc9 2009-10-23 Hui Zhu <teawater@gmail.com>
* record.c (record_restore): Use phex_nz.
2009-10-23 14:35:30 +00:00
Tristan Gingold
7e2183ccaf 2009-10-23 Tristan Gingold <gingold@adacore.com>
* frame.c (frame_unwind_pc): Fix typo: remove duplicate 0x.
2009-10-23 14:31:33 +00:00
Tristan Gingold
2f6e5d7e9d 2009-10-23 Tristan Gingold <gingold@adacore.com>
* objfiles.c (allocate_objfile): Remove useless test.  Move
	declaration of last_one to the block that uses it.
2009-10-23 13:22:46 +00:00
Paul Pluzhnikov
9c4191458a 2009-10-22 Paul Pluzhnikov <ppluzhnikov@google.com>
* disasm.h (DISASSEMBLY_OMIT_FNAME) New define.
	(gdb_disassembly): Correct parameter name.
	* disasm.c (dump_insns): Adjust.
	(gdb_disassembly): Fix indentation.
	* cli/cli-cmds.c (disassemble_command): Adjust.

doc/ChangeLog:

2009-10-22  Paul Pluzhnikov  <ppluzhnikov@google.com>

	* gdb.texinfo (Machine Code): Mention function name in disasssembly
	and adjust example.

testsuite/ChangeLog:

2009-10-22  Paul Pluzhnikov  <ppluzhnikov@google.com>

	* gdb.asm/asm-source.exp: Adjust.
2009-10-23 00:49:33 +00:00
Michael Snyder
97bd5475e3 2009-10-22 Michael Snyder <msnyder@vmware.com>
* infrun.c (keep_going): If insert_breakpoints fails,
	print the reason.
2009-10-22 23:10:52 +00:00
Paul Pluzhnikov
ca621225e4 Fix commit dates 2009-10-22 21:22:47 +00:00
Paul Pluzhnikov
65a97ab329 2009-10-22 Paul Pluzhnikov <ppluzhnikov@google.com>
PR gdb/10819
	* dwarf2-frame.c (find_cie): Don't call bsearch on empty cie_table.
	* objfiles.c (find_pc_section): Likewise.
	(update_section_map): Don't allocate empty table.
2009-10-22 20:20:27 +00:00
Michael Snyder
0156b21832 2009-10-16 Hui Zhu <teawater@gmail.com>
Michael Snyder  <msnyder@msnyder-server.eng.vmware.com>

	* record.c (RECORD_FILE_MAGIC): New constant.
	(record_arch_list_cleanups): Renamed from record_message_cleanups.
	(bfdcore_read): New function.
	(netorder64): New function.
	(netorder32): New function.
	(netorder16): New function.
	(record_restore): New function.  Restore a saved record log.
	(bfdcore_write): New function.
	(cmd_record_restore): New function.
	(cmd_record_save): New function.  Save a record log to a file.
	(_initialize_record): Set up commands for save and restore.

2009-10-17  Michael Snyder  <msnyder@vmware.com>

	* gcore.h: New file.
	* gcore.c (create_gcore_bfd): New function.
	(write_gcore_file): New function.
	(call_target_sbrk): New function.  Abstracted from gcore_command.
	(gcore_command): Call call_target_sbrk.
2009-10-22 19:36:06 +00:00
Michael Snyder
27699eeaab 2009-10-22 Hui Zhu <teawater@gmail.com>
Michael Snyder  <msnyder@vmware.com>

	* record.c (record_core_ops): New ops target vector.
	(record_core_open_1): New function.  Open core target.
	(record_open_1): New function.  Open normal process record.
	(record_open): Call one of the above.
	(record_close): Allow for both core and normal targets.
	(record_core_resume): New function.
	(record_core_kill): New function.
	(record_core_fetch_registers): New function.
	(record_core_prepare_to_store): New function.
	(record_core_store_registers): New function.
	(record_core_xfer_partial): New function.
	(record_core_insert_breakpoint): New function.
	(record_core_remove_breakpoint): New function.
	(record_core_has_execution): New function.
	(init_record_core_ops): New function.
	(_initialize_record): Call init_record_core_ops, add_target.
2009-10-22 19:32:11 +00:00
Tristan Gingold
46187dff42 2009-10-22 Tristan Gingold <gingold@adacore.com>
* i386-darwin-nat.c (i386_darwin_fetch_inferior_registers): Use
	amd64_supply_fxsave for amd64.  Fix the offset.
	(i386_darwin_store_inferior_registers): Use amd64_collect_fxsave
	for amd64.
2009-10-22 12:43:57 +00:00
Maxim Grigoriev
d470961845 2009-10-21 Maxim Grigoriev <maxim2405@gmail.com>
* xtensa-tdep.c (XTENSA_ISA_BADPC): New.
	(xtensa_scan_prologue): Replace read_memory with target_read_memory.
	(call0_analyze_prologue): Use XTENSA_ISA_BADPC instead of "0".
	(call0_frame_cache): Check error conditions on call0_analyze_prologue.
2009-10-21 18:51:42 +00:00
Paul Pluzhnikov
2b28d20924 2009-10-21 Paul Pluzhnikov <ppluzhnikov@google.com>
* defs.h (pc_prefix): New prototype.
	* disasm.c (dump_insns): Mark current instruction.
	* printcmd.c (do_examine): Likewise.
	(pc_prefix): New function.
	* stack.c (print_frame_info): Disassemble entire current line.

doc/ChangeLog:

2009-10-21  Paul Pluzhnikov  <ppluzhnikov@google.com>

	* gdb.texinfo (Machine Code): Mention current pc marker.
	(Memory): Likewise.

testsuite/ChangeLog:

2009-10-21  Paul Pluzhnikov  <ppluzhnikov@google.com>

	* gdb.base/consecutive.exp: Adjust.
	* gdb.base/display.exp: Likewise.
	* gdb.base/pc-fp.exp: Likewise.
	* gdb.base/sigbpt.exp: Likewise.
2009-10-21 18:02:27 +00:00
Michael Snyder
b54295a786 2009-10-21 Michael Snyder <msnyder@vmware.com>
Elaborate "info record".
	* record.c (struct record_end_entry): New field 'insn_num'.
	(record_insn_count): New variable.
	(record_open): Initialize record_insn_count.
	(info_record_command): Display contents of record log as
	lowest, current, and highest instruction counts.
	(show_record_insn_number): Delete.
	(_initialize_record): Remove add_cmd show_record_insn_number.
2009-10-21 15:21:16 +00:00
Andrew Stubbs
c9ac0a72c9 2009-10-21 Andrew Stubbs <ams@codesourcery.com>
Joel Brobecker  <brobecker@adacore.com>

	* Makefile.in (HFILES_NO_SRCDIR): Remove shnbsd-tdep.h
	* configure.tgt (sh*-*-linux*): Add corelow.o to gdb_target_obs.
	* sh-linux-tdep.c: Include sh-tdep.h.
	(REGSx16): New macro.
	(gregs_table, fpregs_table): New variables.
	(sh_linux_init_abi): Set core_gregmap and fpregmap.
	* sh-tdep.c: Include regset.h.
	(sh_corefile_supply_regset): New function.
	(sh_corefile_collect_regset): New function.
	(sh_corefile_gregset, sh_corefile_fpregset): New variables.
	(sh_regset_from_core_section): New function.
	(sh_gdbarch_init): Set up tdep value.
	Call set_gdbarch_regset_from_core_section.
	* sh-tdep.h (PC_REGNUM): New enum value.
	(struct sh_corefile_regs): New type.
	(sh_corefile_gregset): Export variable.
	(sh_corefile_supply_regset): New prototype.
	(sh_corefile_collect_regset): New prototype.
	* shnbsd-tdep.c: Remove include of regcache.h, gdb_assert.h and
	shnbsd-tdep.h.
	(regmap): Use new definition using struct sh_corefile_regs.
	(shnbsd_supply_gregset, shnbsd_collect_gregset): Delete.
	(shnbsd_gregset): Delete.
	(shnbsd_regset_from_core_section): Delete.
	(shnbsd_supply_reg, shnbsd_fill_reg): Use new regset interface.
	(shnbsd_init_abi): Set core_gregmap.
	(shnbsd_supply_reg): Delete.
	(shnbsd_fill_reg): Delete.
	(SHNBSD_SIZEOF_GREGS): Move ...
	* shnbsd-nat.c (SHNBSD_SIZEOF_GREGS): ... to here.
	Remove include of shnbsd-tdep.h.
	(shnbsd_fetch_inferior_registers): Replace shnbsd_supply_reg call
	with sh_corefile_supply_regset.
	(shnbsd_store_inferior_registers): Replace shnbsd_fill_reg call with
	sh_corefile_collect_regset.
	* shnbsd-tdep.h: Delete file.
2009-10-21 14:14:57 +00:00
Pierre Muller
47607d6f7c * rs6000-nat.c (exec_one_dummy_insn): Add missing new ASPACE parameter
to depreacted_insert_raw_breakpoint function call.
	* procfs.c (insert_dbx_link_bpt_in_file): Likewise.
2009-10-21 08:27:25 +00:00
Michael Snyder
6df6766768 2009-10-20 Michael Snyder <msnyder@vmware.com>
* record.c: Add some top-level comments for general explanation.
2009-10-20 23:06:13 +00:00
Michael Snyder
90ca047913 2009-10-20 Hui Zhu <teawater@gmail.com>
Michael Snyder  <msnyder@vmware.com>

	* record.c (record_exec_insn): New function.  Emulate one
	instruction, forward or backward.  Abstracted from record_wait.
	(record_wait) Call record_exec_insn.
2009-10-20 22:56:04 +00:00
Michael Snyder
9d1807c37c 2009-10-20 Michael Snyder <msnyder@msnyder-server.eng.vmware.com>
* infrun.c (handle_inferior_event): Add pspace field to sal
	for reverse execution cases.
2009-10-20 19:46:22 +00:00
Pedro Alves
20176d8fbf * go32-nat.c (go32_create_inferior): Use inferior_appeared, not
inferior_appeared_silent.
	* remote-sim.c (gdbsim_create_inferior): Ditto.
2009-10-20 16:34:00 +00:00
Pedro Alves
40625c9de3 * darwin-nat.c (cancel_breakpoint): Pass the regcache's address
space to breakpoint_inserted_here_p.
2009-10-20 11:23:28 +00:00
Pedro Alves
c069425482 * linux-nat.c (linux_nat_thread_address_space): New.
(linux_nat_add_target): Install it.
	* progspace.c (address_space_num): New.
	* progspace.h (address_space_num): Declare.
	* target.c (target_thread_address_space): Really query the target.
	* target.h (struct target_ops) <to_thread_address_space>: New
	field.
2009-10-20 11:09:01 +00:00
Joel Brobecker
ffeecfface * amd64fbsd-nat.c (amd64fbsd_supply_pcb): Add comment. 2009-10-19 19:48:43 +00:00
Pedro Alves
6c95b8df7f 2009-10-19 Pedro Alves <pedro@codesourcery.com>
Stan Shebs	<stan@codesourcery.com>

	Add base multi-executable/process support to GDB.

	gdb/
	* Makefile.in (SFILES): Add progspace.c.
	(COMMON_OBS): Add progspace.o.
	* progspace.h: New.
	* progspace.c: New.

	* breakpoint.h (struct bp_target_info) <placed_address_space>: New
	field.
	(struct bp_location) <pspace>: New field.
	(struct breakpoint) <pspace>: New field.
	(bpstat_stop_status, breakpoint_here_p)
	(moribund_breakpoint_here_p, breakpoint_inserted_here_p)
	(regular_breakpoint_inserted_here_p)
	(software_breakpoint_inserted_here_p, breakpoint_thread_match)
	(set_default_breakpoint): Adjust prototypes.
	(remove_breakpoints_pid, breakpoint_program_space_exit): Declare.
	(insert_single_step_breakpoint, deprecated_insert_raw_breakpoint):
	Adjust prototypes.
	* breakpoint.c (executing_startup): Delete.
	(default_breakpoint_sspace): New.
	(breakpoint_restore_shadows): Skip if the address space doesn't
	match.
	(update_watchpoint): Record the frame's program space in the
	breakpoint location.
	(insert_bp_location): Record the address space in target_info.
	Adjust to pass the symbol space to solib_name_from_address.
	(breakpoint_program_space_exit): New.
	(insert_breakpoint_locations): Switch the symbol space and thread
	when inserting breakpoints.  Don't insert breakpoints in a vfork
	parent waiting for vfork done if we're not attached to the vfork
	child.
	(remove_breakpoints_pid): New.
	(reattach_breakpoints): Switch to a thread of PID.  Ignore
	breakpoints of other symbol spaces.
	(create_internal_breakpoint): Store the symbol space in the sal.
	(create_longjmp_master_breakpoint): Iterate over all symbol
	spaces.
	(update_breakpoints_after_exec): Ignore breakpoints for other
	symbol spaces.
	(remove_breakpoint): Rename to ...
	(remove_breakpoint_1): ... this.  Pass the breakpoints symbol
	space to solib_name_from_address.
	(remove_breakpoint): New.
	(mark_breakpoints_out): Ignore breakpoints from other symbol
	spaces.
	(breakpoint_init_inferior): Ditto.
	(breakpoint_here_p): Add an address space argument and adjust to
	use breakpoint_address_match.
	(moribund_breakpoint_here_p): Ditto.
	(regular_breakpoint_inserted_here_p): Ditto.
	(breakpoint_inserted_here_p): Ditto.
	(software_breakpoint_inserted_here_p): Ditto.
	(breakpoint_thread_match): Ditto.
	(bpstat_check_location): Ditto.
	(bpstat_stop_status): Ditto.
	(print_breakpoint_location): If there's a location to print,
	switch the current symbol space.
	(print_one_breakpoint_location): Add `allflag' argument.
	(print_one_breakpoint): Ditto.	Adjust.
	(do_captured_breakpoint_query): Adjust.
	(breakpoint_1): Adjust.
	(breakpoint_has_pc): Also match the symbol space.
	(describe_other_breakpoints): Add a symbol space argument and
	adjust.
	(set_default_breakpoint): Add a symbol space argument.	Set
	default_breakpoint_sspace.
	(breakpoint_address_match): New.
	(check_duplicates_for): Add an address space argument, and adjust.
	(set_raw_breakpoint): Record the symbol space in the location and
	in the breakpoint.
	(set_longjmp_breakpoint): Skip longjmp master breakpoints from
	other symbol spaces.
	(remove_thread_event_breakpoints, remove_solib_event_breakpoints)
	(disable_breakpoints_in_shlibs): Skip breakpoints from other
	symbol spaces.
	(disable_breakpoints_in_unloaded_shlib): Match symbol spaces.
	(create_catchpoint): Set the symbol space in the sal.
	(disable_breakpoints_before_startup): Skip breakpoints from other
	symbol spaces.	Set executing_startup in the current symbol space.
	(enable_breakpoints_after_startup): Clear executing_startup in the
	current symbol space.  Skip breakpoints from other symbol spaces.
	(clone_momentary_breakpoint): Also copy the symbol space.
	(add_location_to_breakpoint): Set the location's symbol space.
	(bp_loc_is_permanent): Switch thread and symbol space.
	(create_breakpoint): Adjust.
	(expand_line_sal_maybe): Expand comment to mention symbol spaces.
	Switch thread and symbol space when reading memory.
	(parse_breakpoint_sals): Set the symbol space in the sal.
	(break_command_really): Ditto.
	(skip_prologue_sal): Switch and space.
	(resolve_sal_pc): Ditto.
	(watch_command_1): Record the symbol space in the sal.
	(create_ada_exception_breakpoint): Adjust.
	(clear_command): Adjust.  Match symbol spaces.
	(update_global_location_list): Use breakpoint_address_match.
	(breakpoint_re_set_one): Switch thread and space.
	(breakpoint_re_set): Save symbol space.
	(breakpoint_re_set_thread): Also reset the symbol space.
	(deprecated_insert_raw_breakpoint): Add an address space argument.
	Adjust.
	(insert_single_step_breakpoint): Ditto.
	(single_step_breakpoint_inserted_here_p): Ditto.
	(clear_syscall_counts): New.
	(_initialize_breakpoint): Install it as inferior_exit observer.

	* exec.h: Include "progspace.h".
	(exec_bfd, exec_bfd_mtime): New defines.
	(exec_close): Declare.
	* exec.c: Include "gdbthread.h" and "progspace.h".
	(exec_bfd, exec_bfd_mtime, current_target_sections_1): Delete.
	(using_exec_ops): New.
	(exec_close_1): Rename to exec_close, and make public.
	(exec_close): Rename to exec_close_1, and adjust all callers.  Add
	description.  Remove target sections and close executables from
	all program spaces.
	(exec_file_attach): Add comment.
	(add_target_sections): Check on `using_exec_ops' to check if the
	target should be pushed.
	(remove_target_sections): Only unpush the target if there are no
	more target sections in any symbol space.
	* gdbcore.h: Include "exec.h".
	(exec_bfd, exec_bfd_mtime): Remove declarations.

	* frame.h (get_frame_program_space, get_frame_address_space)
	(frame_unwind_program_space): Declare.
	* frame.c (struct frame_info) <pspace, aspace>: New fields.
	(create_sentinel_frame): Add program space argument.  Set the
	pspace and aspace fields of the frame object.
	(get_current_frame, create_new_frame): Adjust.
	(get_frame_program_space): New.
	(frame_unwind_program_space): New.
	(get_frame_address_space): New.
	* stack.c (print_frame_info): Adjust.
	(print_frame): Use the frame's program space.

	* gdbthread.h (any_live_thread_of_process): Declare.
	* thread.c (any_live_thread_of_process): New.
	(switch_to_thread): Switch the program space as well.
	(restore_selected_frame): Don't warn if trying to restore frame
	level 0.

	* inferior.h: Include "progspace.h".
	(detach_fork): Declare.
	(struct inferior) <removable, aspace, pspace>
	<vfork_parent, vfork_child, pending_detach>
	<waiting_for_vfork_done>: New fields.
	<terminal_info>: Remove field.
	<data, num_data>: New fields.
	(register_inferior_data, register_inferior_data_with_cleanup)
	(clear_inferior_data, set_inferior_data, inferior_data): Declare.
	(exit_inferior, exit_inferior_silent, exit_inferior_num_silent)
	(inferior_appeared): Declare.
	(find_inferior_pid): Typo.
	(find_inferior_id, find_inferior_for_program_space): Declare.
	(set_current_inferior, save_current_inferior, prune_inferiors)
	(number_of_inferiors): Declare.
	(inferior_list): Declare.
	* inferior.c: Include "gdbcore.h" and "symfile.h".
	(inferior_list): Make public.
	(delete_inferior_1): Always delete thread silently.
	(find_inferior_id): Make public.
	(current_inferior_): New.
	(current_inferior): Use it.
	(set_current_inferior): New.
	(restore_inferior): New.
	(save_current_inferior): New.
	(free_inferior): Free the per-inferior data.
	(add_inferior_silent): Allocate per-inferior data.
	Call inferior_appeared.
	(delete_threads_of_inferior): New.
	(delete_inferior_1): Adjust interface to take an inferior pointer.
	(delete_inferior): Adjust.
	(delete_inferior_silent): Adjust.
	(exit_inferior_1): New.
	(exit_inferior): New.
	(exit_inferior_silent): New.
	(exit_inferior_num_silent): New.
	(detach_inferior): Adjust.
	(inferior_appeared): New.
	(discard_all_inferiors): Adjust.
	(find_inferior_id): Make public.  Assert pid is not zero.
	(find_inferior_for_program_space): New.
	(have_inferiors): Check if we have any inferior with pid not zero.
	(have_live_inferiors): Go over all pushed targets looking for
	process_stratum.
	(prune_inferiors): New.
	(number_of_inferiors): New.
	(print_inferior): Add executable column.  Print vfork parent/child
	relationships.
	(inferior_command): Adjust to cope with not running inferiors.
	(remove_inferior_command): New.
	(add_inferior_command): New.
	(clone_inferior_command): New.
	(struct inferior_data): New.
	(struct inferior_data_registration): New.
	(struct inferior_data_registry): New.
	(inferior_data_registry): New.
	(register_inferior_data_with_cleanup): New.
	(register_inferior_data): New.
	(inferior_alloc_data): New.
	(inferior_free_data): New.
	(clear_inferior_data): New.
	(set_inferior_data): New.
	(inferior_data): New.
	(initialize_inferiors): New.
	(_initialize_inferiors): Register "add-inferior",
	"remove-inferior" and "clone-inferior" commands.

	* objfiles.h: Include "progspace.h".
	(struct objfile) <pspace>: New field.
	(symfile_objfile, object_files): Don't declare.
	(ALL_PSPACE_OBJFILES): New.
	(ALL_PSPACE_OBJFILES_SAFE): New.
	(ALL_OBJFILES, ALL_OBJFILES_SAFE): Adjust.
	(ALL_PSPACE_SYMTABS): New.
	(ALL_PRIMARY_SYMTABS): Adjust.
	(ALL_PSPACE_PRIMARY_SYMTABS): New.
	(ALL_PSYMTABS): Adjust.
	(ALL_PSPACE_PSYMTABS): New.
	* objfiles.c (object_files, symfile_objfile): Delete.
	(struct objfile_sspace_info): New.
	(objfiles_pspace_data): New.
	(objfiles_pspace_data_cleanup): New.
	(get_objfile_pspace_data): New.
	(objfiles_changed_p): Delete.
	(allocate_objfile): Set the objfile's program space.  Adjust to
	reference objfiles_changed_p in pspace data.
	(free_objfile): Adjust to reference objfiles_changed_p in pspace
	data.
	(objfile_relocate): Ditto.
	(update_section_map): Add pspace argument.  Adjust to iterate over
	objfiles in the passed in pspace.
	(find_pc_section): Delete sections and num_sections statics.
	Adjust to refer to program space's objfiles_changed_p.	Adjust to
	refer to sections and num_sections store in the objfile's pspace
	data.
	(objfiles_changed): Adjust to reference objfiles_changed_p in
	pspace data.
	(_initialize_objfiles): New.
	* linespec.c (decode_all_digits, decode_dollar): Set the sal's
	program space.
	* source.c (current_source_pspace): New.
	(get_current_source_symtab_and_line): Set the sal's program space.
	(set_current_source_symtab_and_line): Set current_source_pspace.
	(select_source_symtab): Ditto.	Use ALL_OBJFILES.
	(forget_cached_source_info): Iterate over all program spaces.
	* symfile.c (clear_symtab_users): Adjust.
	* symmisc.c (print_symbol_bcache_statistics): Iterate over all
	program spaces.
	(print_objfile_statistics): Ditto.
	(maintenance_print_msymbols): Ditto.
	(maintenance_print_objfiles): Ditto.
	(maintenance_info_symtabs): Ditto.
	(maintenance_info_psymtabs): Ditto.
	* symtab.h (SYMTAB_PSPACE): New.
	(struct symtab_and_line) <pspace>: New field.
	* symtab.c (init_sal): Clear the sal's program space.
	(find_pc_sect_symtab): Set the sal's program space.  Switch thread
	and space.
	(append_expanded_sal): Add program space argument.  Iterate over
	all program spaces.
	(expand_line_sal): Iterate over all program spaces.  Switch
	program space.

	* target.h (enum target_waitkind) <TARGET_WAITKIND_VFORK_DONE>: New.
	(struct target_ops) <to_thread_address_space>: New field.
	(target_thread_address_space): Define.
	* target.c (target_detach): Only remove breakpoints from the
	inferior we're detaching.
	(target_thread_address_space): New.

	* defs.h (initialize_progspace): Declare.
	* top.c (gdb_init): Call it.

	* solist.h (struct so_list) <sspace>: New field.
	* solib.h (struct program_space): Forward declare.
	(solib_name_from_address): Adjust prototype.
	* solib.c (so_list_head): Replace with a macro referencing the
	program space.
	(update_solib_list): Set the so's program space.
	(solib_name_from_address): Add a program space argument and adjust.

	* solib-svr4.c (struct svr4_info) <pid>: Delete field.
	<interp_text_sect_low, interp_text_sect_high, interp_plt_sect_low>
	<interp_plt_sect_high>: New fields.
	(svr4_info_p, svr4_info): Delete.
	(solib_svr4_sspace_data): New.
	(get_svr4_info): Rewrite.
	(svr4_sspace_data_cleanup): New.
	(open_symbol_file_object): Adjust.
	(svr4_default_sos): Adjust.
	(svr4_fetch_objfile_link_map): Adjust.
	(interp_text_sect_low, interp_text_sect_high, interp_plt_sect_low)
	(interp_plt_sect_high): Delete.
	(svr4_in_dynsym_resolve_code): Adjust.
	(enable_break): Adjust.
	(svr4_clear_solib): Revert bit that removed the svr4_info here,
	and reinstate clearing debug_base, debug_loader_offset_p,
	debug_loader_offset and debug_loader_name.
	(_initialize_svr4_solib): Register solib_svr4_pspace_data.  Don't
	install an inferior_exit observer anymore.

	* printcmd.c (struct display) <pspace>: New field.
	(display_command): Set the display's sspace.
	(do_one_display): Match the display's sspace.
	(display_uses_solib_p): Ditto.

	* linux-fork.c (detach_fork): Moved to infrun.c.
	(_initialize_linux_fork): Moved "detach-on-fork" command to
	infrun.c.
	* infrun.c (detach_fork): Moved from linux-fork.c.
	(proceed_after_vfork_done): New.
	(handle_vfork_child_exec_or_exit): New.
	(follow_exec_mode_replace, follow_exec_mode_keep)
	(follow_exec_mode_names, follow_exec_mode_string)
	(show_follow_exec_mode_string): New.
	(follow_exec): New.  Reinstate the mark_breakpoints_out call.
	Remove shared libraries before attaching new executable.  If user
	wants to keep the inferior, keep it.
	(displaced_step_fixup): Adjust to pass an address space to the
	breakpoints module.
	(resume): Ditto.
	(clear_proceed_status): In all-stop mode, always clear the proceed
	status of all threads.
	(prepare_to_proceed): Adjust to pass an address space to the
	breakpoints module.
	(proceed): Ditto.
	(adjust_pc_after_break): Ditto.
	(handle_inferior_event): When handling a process exit, switch the
	program space to the inferior's that had exited.  Call
	handle_vfork_child_exec_or_exit.  Adjust to pass an address space
	to the breakpoints module.  In non-stop mode, when following a
	fork and detach-fork is off, also resume the other branch.  Handle
	TARGET_WAITKIND_VFORK_DONE.  Set the program space in sals.
	(normal_stop): Prune inferiors.
	(_initialize_infrun): Install the new "follow-exec-mode" command.
	"detach-on-fork" moved here.

	* regcache.h (get_regcache_aspace): Declare.
	* regcache.c (struct regcache) <aspace>: New field.
	(regcache_xmalloc): Clear the aspace.
	(get_regcache_aspace): New.
	(regcache_cpy): Copy the aspace field.
	(regcache_cpy_no_passthrough): Ditto.
	(get_thread_regcache): Fetch the thread's address space from the
	target, and store it in the regcache.

	* infcall.c (call_function_by_hand): Set the sal's pspace.

	* arch-utils.c (default_has_shared_address_space): New.
	* arch-utils.h (default_has_shared_address_space): Declare.

	* gdbarch.sh (has_shared_address_space): New.
	* gdbarch.h, gdbarch.c: Regenerate.

	* linux-tdep.c: Include auxv.h, target.h, elf/common.h.
	(linux_has_shared_address_space): New.
	(_initialize_linux_tdep): Declare.

	* arm-tdep.c (arm_software_single_step): Pass the frame's address
	space to insert_single_step_breakpoint.
	* arm-linux-tdep.c (arm_linux_software_single_step): Pass the
	frame's pspace to breakpoint functions.
	* cris-tdep.c (crisv32_single_step_through_delay): Ditto.
	(cris_software_single_step): Ditto.
	* mips-tdep.c (deal_with_atomic_sequence): Add frame argument.
	Pass the frame's pspace to breakpoint functions.
	(mips_software_single_step): Adjust.
	(mips_single_step_through_delay): Adjust.
	* rs6000-aix-tdep.c (rs6000_software_single_step): Adjust.
	* rs6000-tdep.c (ppc_deal_with_atomic_sequence): Adjust.
	* solib-irix.c (enable_break): Adjust to pass the current frame's
	address space to breakpoint functions.
	* sparc-tdep.c (sparc_software_single_step): Ditto.
	* spu-tdep.c (spu_software_single_step): Ditto.
	* alpha-tdep.c (alpha_software_single_step): Ditto.
	* record.c (record_wait): Adjust to pass an address space to the
	breakpoints module.

	* fork-child.c (fork_inferior): Set the new inferior's program and
	address spaces.
	* inf-ptrace.c (inf_ptrace_follow_fork): Copy the parent's program
	and address spaces.
	(inf_ptrace_attach): Set the inferior's program and address spaces.
	* linux-nat.c: Include "solib.h".
	(linux_child_follow_fork): Manage parent and child's program and
	address spaces.	 Clone the parent's program space if necessary.
	Don't wait for the vfork to be done here.  Refuse to resume if
	following the vfork parent while leaving the child stopped.
	(resume_callback): Don't resume a vfork parent.
	(linux_nat_resume): Also check for pending events in the
	lp->waitstatus field.
	(linux_handle_extended_wait): Report TARGET_WAITKIND_VFORK_DONE
	events to the core.
	(stop_wait_callback): Don't wait for SIGSTOP on vfork parents.
	(cancel_breakpoint): Adjust.
	* linux-thread-db.c (thread_db_wait): Don't remove thread event
	breakpoints here.
	(thread_db_mourn_inferior): Don't mark breakpoints out here.
	Remove thread event breakpoints after mourning.
	* corelow.c: Include progspace.h.
	(core_open): Set the inferior's program and address spaces.
	* remote.c (remote_add_inferior): Set the new inferior's program
	and address spaces.
	(remote_start_remote): Update address spaces.
	(extended_remote_create_inferior_1): Don't init the thread list if
	we already debugging other inferiors.
	* darwin-nat.c (darwin_attach): Set the new inferior's program and
	address spaces.
	* gnu-nat.c (gnu_attach): Ditto.
	* go32-nat.c (go32_create_inferior): Ditto.
	* inf-ttrace.c (inf_ttrace_follow_fork, inf_ttrace_attach): Ditto.
	* monitor.c (monitor_open): Ditto.
	* nto-procfs.c (procfs_attach, procfs_create_inferior): Ditto.
	* procfs.c (do_attach): Ditto.
	* windows-nat.c (do_initial_windows_stuff): Ditto.

	* inflow.c (inferior_process_group)
	(terminal_init_inferior_with_pgrp, terminal_inferior,
	(terminal_ours_1, inflow_inferior_exit, copy_terminal_info)
	(child_terminal_info, new_tty_postfork, set_sigint_trap): Adjust
	to use per-inferior data instead of inferior->terminal_info.
	(inflow_inferior_data): New.
	(inflow_new_inferior): Delete.
	(inflow_inferior_data_cleanup): New.
	(get_inflow_inferior_data): New.

	* mi/mi-interp.c (mi_new_inferior): Rename to...
	(mi_inferior_appeared): ... this.
	(mi_interpreter_init): Adjust.

	* tui/tui-disasm.c: Include "progspace.h".
	(tui_set_disassem_content): Pass an address space to
	breakpoint_here_p.

	* NEWS: Mention multi-program debugging support.  Mention new
	commands "add-inferior", "clone-inferior", "remove-inferior",
	"maint info program-spaces", and new option "set
	follow-exec-mode".

2009-10-19  Pedro Alves	 <pedro@codesourcery.com>
	    Stan Shebs	<stan@codesourcery.com>

	gdb/doc/
	* observer.texi (new_inferior): Rename to...
	(inferior_appeared): ... this.

2009-10-19  Pedro Alves	 <pedro@codesourcery.com>
	    Stan Shebs	<stan@codesourcery.com>

	gdb/testsuite/
	* gdb.base/foll-vfork.exp: Adjust to spell out "follow-fork".
	* gdb.base/foll-exec.exp: Adjust to expect a process id before
	"Executing new program".
	* gdb.base/foll-fork.exp: Adjust to spell out "follow-fork".
	* gdb.base/multi-forks.exp: Ditto.  Adjust to the inferior being
	left listed after having been killed.
	* gdb.base/attach.exp: Adjust to spell out "symbol-file".
	* gdb.base/maint.exp: Adjust test.

	* Makefile.in (ALL_SUBDIRS): Add gdb.multi.
	* gdb.multi/Makefile.in: New.
	* gdb.multi/base.exp: New.
	* gdb.multi/goodbye.c: New.
	* gdb.multi/hangout.c: New.
	* gdb.multi/hello.c: New.
	* gdb.multi/bkpt-multi-exec.c: New.
	* gdb.multi/bkpt-multi-exec.exp: New.
	* gdb.multi/crashme.c: New.

2009-10-19  Pedro Alves	 <pedro@codesourcery.com>
	    Stan Shebs	<stan@codesourcery.com>

	gdb/doc/
	* gdb.texinfo (Inferiors): Rename node to ...
	(Inferiors and Programs): ... this.  Mention running multiple
	programs in the same debug session.
	<info inferiors>: Mention the new 'Executable' column if "info
	inferiors".  Update examples.  Document the "add-inferior",
	"clone-inferior", "remove-inferior" and "maint info
	program-spaces" commands.
	(Process): Rename node to...
	(Forks): ... this.  Document "set|show follow-exec-mode".
2009-10-19 09:51:43 +00:00
Don Lee
8dcb1aa7ca * gdb/score-tdep.c: Delete dead codes. 2009-10-19 08:44:28 +00:00
Michael Snyder
44389f9b9a 2009-10-15 Michael Snyder <msnyder@vmware.com>
* record.c (struct record_reg_entry): Replace ptr with union
	of ptr and buf.
	(struct record_mem_entry): Ditto.
	(record_reg_alloc): Don't alloc ptr if reg will fit into buf.
	(record_mem_alloc): Ditto.
	(record_reg_release): Don't free ptr if reg was stored in buf.
	(record_mem_release): Ditto.
	(record_get_loc): New function.  Return a pointer to where the
	value (mem or reg) is to be stored.
	(record_arch_list_add_reg): Call record_get_loc instead of using ptr.
	(record_arch_list_add_mem): Ditto.
	(record_wait): Ditto.
2009-10-18 16:10:42 +00:00
Joel Brobecker
5d583aa867 Add a "(tiny patch)" marker to Steve Kargl's entry. 2009-10-16 23:25:21 +00:00
Michael Eager
6254b3e32d Fix build failure for microblaze-xilinx-linux.
* microblaze-linux-tdep.c:
	microblaze_linux_memory_remove_breakpoint(): Add gdbarch to param,
	replace frame_pc_unwind with get_frame_address_in_block.
	* microblaze-tdep.c: Remove MICROBLAZE_REGISTER_SIZE.
	* microblaze-tdep.h: Add MICROBLAZE_REGISTER_SIZE.
2009-10-16 23:21:23 +00:00
Joel Brobecker
1f596238d5 * amd64fbsd-nat.c (amd64fbsd_supply_pcb): Conditionally compile in
support for pcb->pcb_{fs,ds,es,gs} on FreeBSD older than 8.0.
2009-10-16 23:18:27 +00:00
Michael Eager
2d1c1221e2 * config/djgpp/fnchange.lst: Add translations for cpu-microblaze.c,
elf32-microblaze.c, microblaze-rom.c, microblaze-linux-tdep.c,
	microblaze-tdep.h, microblaze-tdep.c, microblaze-opc.h,
	microblaze-opcm.h, microblaze-dis.c, microblaze-dis.h, sim/microblaze,
	microblaze.h, and microblaze.isa.
	* configure.tgt: Add targets microblaze*-linux-*, microblaze*-xilinx-*.
	* Makefile.in: Build microblaze-tdep.o, microblaze-linux-tdep.o.
	HFILES_NO_SRCDIR: Add microblaze-tdep.h.
	* microblaze-linux-tdep.c: New.
	* microblaze-tdep.c: New.
	* microblaze-tdep.h: New.
	* NEWS: Announce Xilinx MicroBlaze support.
2009-10-15 19:28:52 +00:00
Paul Pluzhnikov
58ad35c453 Forgot to mention PR gdb/10757. 2009-10-15 18:17:39 +00:00
Paul Pluzhnikov
dacc9cb281 2009-10-15 Paul Pluzhnikov <ppluzhnikov@google.com>
* linux-nat.c (linux_nat_post_attach_wait): Adjust assert.
	(lin_lwp_attach_lwp, linux_nat_attach): Handle disappearing LWP.
2009-10-15 18:06:15 +00:00
Michael Snyder
191e181311 2009-10-15 Michael Snyder <msnyder@vmware.com>
* record.c (record_insn_max_num): Make unsigned.
	(_initialize_record): Use uinteger instead of zinteger for
	set command, so that it will report "unlimited" for zero.
2009-10-15 17:27:54 +00:00
Michael Snyder
61f75dd8bf 2009-10-15 Michael Snyder <msnyder@vmware.com>
* record.c (record_reg_alloc): New function.
	(record_reg_release): New function.
	(record_mem_alloc): New function.
	(record_mem_release): New function.
	(record_end_alloc): New function.
	(record_end_release): New function.
	(record_entry_release): New function.
	(record_list_release): Simplify, call record_entry_release.
	(record_list_release_next): Rename to record_list_release_following.
	Simplify and call record_entry_release.
	(record_list_release_first): Simplify, comment, and use
	record_entry_release.
	(record_arch_list_add_reg): Simplify, call record_reg_alloc.
	(record_arch_list_add_mem): Simplify, call record_mem_alloc.
	(record_arch_list_add_end): Simplify, call record_end_alloc.
2009-10-15 17:15:56 +00:00
Michael Snyder
265aad3493 2009-10-12 Michael Snyder <msnyder@vmware.com>
* record.c (record_list_release_first): Do not decrement
	record_insn_num.
	(set_insn_num_max): Remove printf.
	Decrement record_insn_num in the loop.
2009-10-15 16:57:36 +00:00
Cary Coutant
1256eeda7d 2009-10-14 Cary Coutant <ccoutant@google.com>
* dwarf2read.c (read_import_statement): Call follow_die_ref_or_sig.
2009-10-14 23:48:01 +00:00
Keith Seitz
72f2769e82 * dwarf2read.c (dwarf2_const_value): Fix order of arguments to
store_unsigned_integer.
2009-10-14 22:50:32 +00:00
Pedro Alves
481cb1bb45 Remove spurious gdb/ ... 2009-10-14 19:48:27 +00:00
Pedro Alves
e23525a055 gdb/
* configure.ac (build_warnings): Add -Wunused-value.
	* configure: Regenerate.
2009-10-14 19:44:38 +00:00
Tristan Gingold
70d4c67377 2009-10-14 Tristan Gingold <gingold@adacore.com>
* solib-darwin.c: Remove trailing whitespaces.
	(darwin_dyld_version_ok): Fix typo.
2009-10-14 13:15:34 +00:00
Andrew Stubbs
46e8a76b3b 2009-10-14 Andrew Stubbs <ams@codesourcery.com>
* sh-tdep.c (sh_gdbarch_init): Add show_regs settings for
	bfd_mach_sh3_nommu, bfd_mach_sh2a_nofpu_or_sh3_nommu,
	bfd_mach_sh2a_or_sh3e, bfd_mach_sh2a_or_sh4, bfd_mach_sh4_nommu_nofpu,
	and bfd_mach_sh2a_nofpu_or_sh4_nommu_nofpu.
	Move bfd_mach_sh2a_or_sh4 to use the same configuration as
	bfd_mach_sh4.
2009-10-14 10:17:31 +00:00
Daniel Jacobowitz
9dca557831 * arm-tdep.c (arm_push_dummy_call): Set the low bit of LR for
a Thumb entry point.
	(thumb_get_next_pc): Handle Thumb-2 and ARM v6 instructions.  Refuse
	to single step into IT blocks.
2009-10-13 22:48:45 +00:00
Pedro Alves
88e3b899d7 2009-10-13 Pedro Alves <pedro@codesourcery.com>
gdb/
	* infcall.c (call_function_by_hand): Formatting.

2009-10-13  Pedro Alves  <pedro@codesourcery.com>

	gdb/gdbserver/
	* proc-service.c (ps_lgetregs): Formatting.
2009-10-13 13:51:21 +00:00
Tristan Gingold
066d7383ac 2009-10-13 Tristan Gingold <gingold@adacore.com>
* solib-darwin.c: Add an empty line after comment for functions.
	(struct gdb_dyld_all_image_infos): Improve comment.
	(DYLD_VERSION): Removed and replaced by ...
	(DYLD_VERSION_MAX, DYLD_VERSION_MIN): ... New macros.
	(darwin_dyld_version_ok): New function.
	(darwin_load_image_infos): Call darwin_dyld_version_ok.
	(darwin_current_sos): Ditto.
	(darwin_solib_create_inferior_hook): Ditto.
2009-10-13 10:31:40 +00:00
Tristan Gingold
f192ea96fd 2009-10-13 Tristan Gingold <gingold@adacore.com>
* machoread.c: Add an empty line after comment for functions.
	(oso_el_compare_name): New function.
	(macho_add_oso_symfile): New function.
	(macho_oso_symfile): Use macho_add_oso_symfile.  Sort the oso
	and optimize accesses to libraries.
2009-10-13 09:42:57 +00:00
Tristan Gingold
e361b228f2 2009-10-12 Tristan Gingold <gingold@adacore.com>
* objfiles.c (objfile_has_symbols): New function.
	* objfiles.h (objfile_has_symbols): Add prototype.
	* symfile.c (symbol_file_add_with_addrs_or_offsets): Call
	objfile_has_symbols.
	(reread_symbols): Ditto.
2009-10-13 07:56:29 +00:00
Michael Snyder
3800e64539 2009-10-12 Jiang Jilin <freephp@gmail.com>
* i386-tdep.c (i386_process_record): Add xgetbv/xsetbv
	instructions support.
2009-10-12 15:52:28 +00:00
Pedro Alves
8903eff681 * procfs.c (procfs_make_note_section): Go back to only outputing
an NT_PSTATUS note when UNIXWARE is defined.
2009-10-11 22:50:08 +00:00
Daniel Jacobowitz
9108f110ee * features/xinclude.dtd: Correct EMPTY typo. 2009-10-11 20:24:18 +00:00
Michael Snyder
7afee70046 2009-10-09 Michael Snyder <msnyder@vmware.com>
* i386-tdep.c (i386_process_record): Or-equals, not not-equals.
2009-10-11 03:20:44 +00:00
Pedro Alves
d6fd467483 * mi/mi-cmd-stack.c (list_args_or_locals): Use internal_error.
Put "break" statements on their own line.
2009-10-10 16:58:13 +00:00
Pedro Alves
287369626f * linux-nat.c (linux_nat_wait_1): Bail out, if TARGET_WNOHANG and
we found no event while waiting for a specific LWP.
	* infrun.c (handle_inferior_event): Handle TARGET_WAITKIND_IGNORE
	before anything else.
2009-10-09 01:57:12 +00:00
Pedro Alves
651c8d2d6c * procfs.c (procfs_make_note_section): Always output a NT_PSTATUS
note when NEW_PROC_API is defined.
2009-10-09 01:28:02 +00:00
Pedro Alves
62f33d08c8 * corelow.c (add_to_thread_list): Fix typo. 2009-10-09 01:01:22 +00:00
Pedro Alves
3cdd9356b1 * corelow.c (core_has_fake_pid): New.
(core_close): Clear it.
	(add_to_thread_list): Fake a pid if one is not found on a Solaris
	core.  Add the inferior here.  Always add the thread, don't use
	thread_change_ptid.
	(core_open): Don't add the main thread or the inferior here unless
	we find that the core had no .reg/NN sections.
	(get_core_register_section): Handle Solaris cores with fake pids.
2009-10-09 00:49:06 +00:00
Paul Pluzhnikov
1800f484a2 2009-10-08 Paul Pluzhnikov <ppluzhnikov@google.com>
PR gdb/10457
	* elfread.c (elf_symtab_read): Don't use alloca in a loop.
2009-10-08 16:38:42 +00:00
Jan Kratochvil
fc5abaaec1 gdb/
* i386-nat.c (i386_stopped_by_hwbp): Remove.
2009-10-07 19:35:06 +00:00
Joel Brobecker
abc7453d9c * NEWS: Update following the GDB 7.0 release. 2009-10-07 18:27:22 +00:00
Pierre Muller
905e0470f4 ARI fix: OP eol rule.
* doublest.c (floatformat_from_length): Avoid operator at end of line.
	* dwarf2-frame.c (dwarf2_build_frame_info): Idem.
	* dwarf2read.c (read_array_order, dwarf_decode_macros): Idem.
	* eval.c (evaluate_subexp_standard): Idem.
	* event-loop.c (create_timer, handle_timer_event): Idem.
	* expprint.c (print_subexp_standard): Idem.
	* f-exp.y (variable): Idem.
	* f-typeprint.c (f_print_type): Idem.
2009-10-06 23:27:05 +00:00
Pierre Muller
5aafa1cc49 ARI fix: OP eol rule.
* blockframe.c (find_pc_partial_function): Avoid operator at end of
	line.
	* buildsym.c (find_symbol_in_list): Idem.
	(start_subfile, patch_subfile_names): Idem.
	* c-exp.y (variable, yylex): Idem.
	* c-typeprint.c (c_print_type, c_type_print_base): Idem.
	* c-valprint.c (c_val_print): Idem.
	* coffread.c (patch_opaque_types, process_coff_symbol): Idem.
	* corelow.c (core_open): Idem.
	* cris-tdep.c (move_reg_to_mem_movem_op): Idem.
	* cli/cli-decode.c (help_cmd_list, find_command_name_length): Idem.
2009-10-06 22:47:20 +00:00
Pierre Muller
f8bf576366 ARI fix: OP eol rule.
* ada-exp.y (block_lookup): Avoid operator at end of line.
	* aix-thread.c (pd_enable): Idem.
	* alpha-tdep.c (alpha_next_pc): Idem.
	* arm-tdep.c (arm_skip_prologue, arm_scan_prologue): Idem.
	(condition_true, coff_sym_is_thumb): Idem.
2009-10-06 21:27:59 +00:00
gdbadmin
0969f4e9e5 GDB 7.0 released. 2009-10-06 17:40:34 +00:00
Joel Brobecker
37e5cb2bc7 Minor reformatting of the last entry. 2009-10-06 16:04:05 +00:00
Pierre Muller
67e5d36c36 * ARI fix: "%p" rule.
target.c (debug_to_thread_architecture): Replace %p by %s using
	host_address_to_string function.
2009-10-06 15:32:18 +00:00
Tristan Gingold
15c19d39c2 2009-10-06 Tristan Gingold <gingold@adacore.com>
* darwin-nat.c: Add __TEXT __info_plist content.
	(darwin_attach_pid): Update error message.
2009-10-06 07:23:05 +00:00
Joel Brobecker
3e6b03994f * MAINTAINERS: Add Tristan Gingold as Maintainer of the Darwin port. 2009-10-06 05:14:46 +00:00
Joel Brobecker
606139a190 * MAINTAINERS: Add Jan Kratochvil as Maintainer of the ia64 target. 2009-10-06 02:56:04 +00:00
Pedro Alves
5b564bb74d Revert:
2009-10-04  Pedro Alves  <pedro@codesourcery.com>
	* gdbinit.in: Set data-directory to @srcdir@.
2009-10-05 13:46:52 +00:00
Pedro Alves
11ade57aac * NEWS: Mention non-stop mode. 2009-10-04 17:39:30 +00:00
Pedro Alves
d166c213e0 * gdbinit.in: Set data-directory to @srcdir@. 2009-10-04 13:50:08 +00:00
Pedro Alves
ca2163eb33 * linux-nat.c (TRAP_IS_SYSCALL, TRAP_REMOVE_SYSCALL_FLAG): Delete.
(SYSCALL_SIGTRAP): New.
	(status_to_str): Adjust.
	(get_pending_status): Pending events in lp->waitstatus don't map
	to any signal.  Simplify.
	(linux_handle_syscall_trap): New.
	(linux_handle_extended_wait): When handling PTRACE_EVENT_CLONE
	events, use linux_ops->to_resume instead of direct ptrace with
	PTRACE_CONT.  Remove all TRAP_IS_SYSCALL handling.
	(wait_lwp): Handle syscall traps with linux_handle_syscall_trap,
	and clear the sysgood bit.
	(status_callback): Make it clearer and add comments.
	(cancel_breakpoints_callback): Ignore if LP has waitstatus set.
	(linux_nat_filter_event): Handle syscall traps with
	linux_handle_syscall_trap, and clear the sysgood bit.  Move the
	check for storing siginfo to after handling extended statuses and
	syscall traps.  Store status in the lwp object.
	(linux_wait_1): Don't swap the pending status out of the lwp
	object until after deciding we found an lwp with an interesting
	event.  Requeue a new pending signal if we find one while getting
	rid or a pending SIGSTOP we sent ourselves.  Don't clear the
	sysgood bit here.

	* infrun.c (deal_with_syscall_event): Rename to ...
	(handle_syscall_event): ... this.  Always context switch and set
	stop_pc, even if not catching the syscall.  If not catching the
	syscall, always resume with keep_going.
	(handle_inferior_event): Adjust.
2009-10-02 16:51:04 +00:00
Jan Kratochvil
a71e0887e3 gdb/
Fix compatibility of --with-system-readline and readline-6.0+.
	* configure.ac <--with-system-readline> (for readline_echoing_p): New
	test.
	* config.in: Regenerate.
	* configure: Regenerate.
2009-10-02 16:02:34 +00:00
Joel Brobecker
c838b5167a * MAINTAINERS: Move Don Lee to the correct section (Write After
Approval).
2009-10-01 23:11:02 +00:00
Phil Muldoon
2f2da8f6fb 2009-10-01 Phil Muldoon <pmuldoon@redhat.com>
* infcall.c (call_function_by_hand): Add a new cleanup branch for
	std::terminate breakpoints.
2009-10-01 20:09:21 +00:00
Jan Kratochvil
e453266f58 gdb/
* ia64-tdep.c (ia64_convert_from_func_ptr_addr): New variable buf.
	Check first the descriptor memory is readable.
2009-09-29 16:27:05 +00:00
Tom Tromey
31158f0e2a * python/py-value.c (valpy_string): NULL-terminate 'keywords'. 2009-09-29 15:13:45 +00:00
Ulrich Weigand
beaabab239 * s390-tdep.c (s390_displaced_step_fixup): Use type ULONGEST
instead of CORE_ADDR for "amode".
2009-09-29 12:51:34 +00:00
Joel Brobecker
ca8b503212 * ia64-tdep.c: Update the comments on how we insert/remove
breakpoints for L-X instructions.
        (ia64_memory_insert_breakpoint, ia64_memory_remove_breakpoint):
        Update the comments inside these functions.
2009-09-29 01:25:37 +00:00
Ulrich Weigand
99e4058030 * gdbarch.sh (displaced_step_hw_singlestep): New callback.
* gdbarch.c, gdbarch.h: Regenerate.
	* arch-utils.c (default_displaced_step_hw_singlestep): New function.
	* arch-utils.h (default_displaced_step_hw_singlestep): Add prototype.

	* ppc-linux-tdep.c (ppc_displaced_step_hw_singlestep): New function.
	(rs6000_gdbarch_init): Install it.

	* infrun.c (displaced_step_fixup): Use new callback to determine
	whether to "step" or "continue" displaced copy.
	(resume): Likewise.  Do not call maybe_software_singlestep
	for displaced stepping.
	(maybe_software_singlestep): Do not handle displaced stepping.
2009-09-29 00:53:04 +00:00
Ulrich Weigand
69368a60a4 * eval.c (evaluate_subexp_standard) [OP_OBJC_MSGCALL]: Support
platforms that use function descriptors.  Prefer to use function
	pointer types instead of function types.
	* linespec.c (decode_objc): Support function descriptors.  Fully
	initialize SAL result.
	* objc-lang.c (find_methods): Support function descriptors.
	Do not require function symbol to point to text section.

	* ppc-sysv-tdep.c (ppc64_sysv_abi_push_dummy_call): When calling
	via a function pointer, use the descriptor it points to.
2009-09-29 00:48:32 +00:00
Joel Brobecker
73a9714c1a Fix ia64 breakpoints in the L-X slot.
* ia64-tdep.c (ia64_memory_insert_breakpoint): Extend the comment.
        New variable shadow_slotnum, use it appropriately instead of slotnum.
        Move shadow_len initialization before SLOTNUM adjustment, cover now the
        whole remaining bundle.  Error now on breakpoints requested for the
        slot 2 of L-X bundles.  Better sanity check the requested slot 1 of L-X
        bundles.
        (ia64_memory_remove_breakpoint): New variable shadow_slotnum, use it
        appropriately instead of slotnum.  Warn now on breakpoints requested
        for the slot 2 of L-X bundles.  Better sanity check the requested slot
        1 of L-X bundles.  Update the assertio check of PLACED_SIZE.
        (ia64_breakpoint_from_pc): New variable shadow_slotnum, use it
        appropriately instead of slotnum.  Move *lenptr initialization before
        SLOTNUM adjustment, cover now the whole remaining bundle.  Error now
        on breakpoints requested for the slot 2 of L-X bundles.  Better sanity
        check the requested slot 1 of L-X bundles.  Simplify the returned
        expression.
2009-09-28 23:54:01 +00:00
Joel Brobecker
35ec2a3e66 * ia64-tdep.c (ia64_memory_insert_breakpoint): Check the slotnum
and the type of instruction before deciding which slot to save
        in the breakpoint shadown contents.
2009-09-28 23:47:02 +00:00
Doug Evans
66d990c749 (TRAP_REMOVE_SYSCALL_FLAG): New macro.
(linux_nat_wait_1): Mask off is-syscall bit in wait status for
	TRAP_IS_SYSCALL before passing value to caller.
2009-09-28 21:09:15 +00:00
Doug Evans
206aa7673d * linux-nat.c (status_to_str): Handle TRAP_IS_SYSCALL. 2009-09-28 18:39:29 +00:00
Ulrich Weigand
2d88202ad4 * valops.c (value_assign): Respect parent offset when
assigning to a bitfield.
2009-09-28 09:16:15 +00:00
Hui Zhu
926569ae8e 2009-09-28 Hui Zhu <teawater@gmail.com>
* i386-tdep.c (i386_process_record): Remove "0x" that
	don't need.
2009-09-28 07:11:36 +00:00
Ulrich Weigand
1db4e8a0b4 * s390-tdep.c (op_bctr, op_bctgr, op_bct, op1_bctg, op2_bctg,
op_bxh, op1_bxhg, op2_bxhg, op_bxle, op1_bxleg, op2_bxleg,
	op1_brct, op2_brct, op1_brctg, op2_brctg, op_brxh, op1_brxhg,
	op2_brxhg, op_brxle, op1_brxlg, op2_brxlg): New enum values.
	(is_rsi, is_rie): New insn format decoder routines.
	(s390_displaced_step_fixup): New function.
	(s390_gdbarch_init): Install displaced stepping routines.
2009-09-27 20:47:42 +00:00
Ulrich Weigand
1ba3a4f4b8 * configure.tgt (powerpc-*-linux* | powerpc64-*-linux*):
Add linux-tdep.o to gdb_target_obs.
	(s390*-*-*): Likewise.
2009-09-27 20:46:35 +00:00
Don Lee
5b6912fbdb * score-tdep.c: Comment out some simulator dependent codes.
* score-tdep.h: Delete some simulator dependent macro definitions.
2009-09-27 08:45:12 +00:00
Hui Zhu
5d40bb8544 2009-09-27 Hui Zhu <teawater@gmail.com>
* record.c (record_open): Change "query" to "error".
	(cmd_record_stop): Change "query" to "printf_unfiltered".
2009-09-27 02:49:34 +00:00
Pierre Muller
087b74b25b gdb ChangeLog entry:
* i386-nat.c (i386_stopped_data_address): Also check that
	hitted watch register is not vacant.

	gdb/testsuite ChangeLog entry:
	New test for two watchpoints, with disabling of
	the first inserted.
	* testsuite/gdb.base/watchpoints.c: New file.
	* testsuite/gdb.base/watchpoints.exp: New file.
2009-09-26 12:08:31 +00:00
Tom Tromey
96c07c5b96 gdb
PR python/10664:
	* language.h (struct language_defn) <la_get_string>: Add
	'char_type' argument.
	(LA_GET_STRING): Likewise.
	(default_get_string, c_get_string): Update.
	* language.c (default_get_string): Add 'char_type' argument.
	* c-valprint.c (c_textual_element_type): Rename from
	textual_element_type.  No longer static.  Update callers.
	* c-lang.h (c_textual_element_type): Declare.
	* c-lang.c (c_get_string): Add 'char_type' argument.
gdb/testsuite
	PR python/10664:
	* gdb.base/charset.exp: Test utf-16 strings with Python.
2009-09-25 21:39:53 +00:00
Tom Tromey
b8899f2b68 gdb
* charset.c (iconv_open): Use UTF-16 and UTF-32, not UCS-2 and
	UCS-4.
	(iconv): Rename 'ucs_flag'.
	(GDB_DEFAULT_TARGET_WIDE_CHARSET): Use UTF-32.
	* c-lang.c (charset_for_string_type): Use UTF-16 and UTF-32, not
	UCS-2 and UCS-4.
	(convert_ucn): Use UTF-32.
gdb/testsuite
	* gdb.base/charset.exp: Use UTF-16 and UTF-32, not UCS-2 and
	UCS-4.
	* gdb.base/charset.c (utf_32_string): Rename.
	(init_utf32): Rename.
	(main): Update.
2009-09-25 20:53:14 +00:00
Nick Roberts
b7c313290a *** empty log message *** 2009-09-25 01:57:35 +00:00
Joel Brobecker
604ad007ee * record.c (record_open, record_store_registers, record_xfer_partial):
Replace calls to nquery by calls to query.
2009-09-24 17:58:04 +00:00
Tom Tromey
20bb6bc822 2009-09-23 John Wright <john.wright@hp.com>
PR gdb/10684:
	* event-top.c (command_line_handler): Terminate linebuffer before
	xstrdup.
2009-09-23 17:27:39 +00:00
Joel Brobecker
69e2bf1796 * solib.c (solib_bfd_open): Relax a bit the compatibility check. 2009-09-22 23:03:30 +00:00
Daniel Jacobowitz
c4e86dd4d0 * source.c (forget_cached_source_info): Clear last_source_visited.
(init_last_source_visited): Delete.
	(directory_command): Do not clear last_source_visited.  Call
	forget_cached_source_info only if required.
	(unset_substitute_path_command, set_substitute_path_command): Call
	forget_cached_source_info.
	* mi/mi-cmd-env.c (mi_cmd_env_dir): Do not call
	init_last_source_visited.
	* defs.h (init_last_source_visited): Delete declaration.
2009-09-22 22:34:17 +00:00
Tom Tromey
89fa5381cb PR gdb/10583:
* python/py-value.c (valpy_int): Use PyLong_FromLongLong.
	(valpy_long): Likewise.
2009-09-22 21:14:58 +00:00
Tom Tromey
329719ec1d gdb
PR python/10680:
	* eval.c (evaluate_subexp_standard) <do_call_it>: Handle internal
	functions in EVAL_AVOID_SIDE_EFFECTS case.
gdb/testsuite
	* gdb.python/py-function.exp: Add regression tests.
2009-09-22 17:39:54 +00:00
Jie Zhang
a13d7b9046 * MAINTAINERS: Add myself under Write After Approval. 2009-09-22 03:22:58 +00:00
Pierre Muller
bb0613a5d5 * windows-nat.c (ctrl_c_handler): Also handle CTRL_BREAK_EVENT. 2009-09-21 22:37:59 +00:00
Keith Seitz
1290797801 * cp-support.h (cp_validate_operator): Declare new function.
* cp-support.c (cp_validate_operator): New function.
	* linespec.c (decode_compound): For C++ check for a valid operator.
2009-09-21 19:46:43 +00:00
Keith Seitz
e8269d5fd9 * c-exp.y (qualified_name): Call CHECK_TYPEDEF before deciding
that a type is not an aggregate type.
2009-09-21 19:23:46 +00:00
Tom Tromey
ce0420dced 2009-09-21 Jason Orendorff <jason.orendorff@gmail.com>
PR python/10666:
	* python/py-function.c (fnpy_init): Use xstrdup.
2009-09-21 16:18:42 +00:00
Jie Zhang
4f412fd0b6 * doc/gdb.texinfo: Escape "{" and "}". 2009-09-21 12:48:36 +00:00
Phil Muldoon
7a9fe1016c 2009-09-21 Phil Muldoon <pmuldoon@redhat.com>
PR python/10633

	* c-lang.c (c_printstr): Do not loop past  options->print_max when
	iterating with wchar_iterate.

2009-09-21  Phil Muldoon <pmuldoon@redhat.com>

	PR python/10633

	* gdb.python/py-prettyprint.exp (gdb_py_test_silent_cmd): New
	Function.
	(run_lang_tests): Add print elements test.
2009-09-21 09:39:53 +00:00
Phil Muldoon
2e4d963fb2 2009-09-21 Phil Muldoon <pmuldoon@redhat.com>
* python/py-value.c (valpy_getitem): Test value before allowing
	subscript operation.

2009-09-21  Phil Muldoon <pmuldoon@redhat.com>

	* gdb.python/py-value.exp (test_subscript_regression): New
	function.  Test for invalid subscripts.
	* gdb.python/py-value.c (main): Add test array, and pointer to it.
	(ptr_ref): New function.
2009-09-21 09:32:28 +00:00
Hui Zhu
cdfbdf303d 2009-09-21 Hui Zhu <teawater@gmail.com>
Michael Snyder  <msnyder@vmware.com>

	* amd64-linux-tdep.c (amd64_all_but_ip_registers_record): New
	function.
	(amd64_linux_syscall_record): Call
	amd64_all_but_ip_registers_record if syscall is
	sys_rt_sigreturn.
	(AMD64_LINUX_redzone, AMD64_LINUX_xstate,
	AMD64_LINUX_frame_size): New macros.
	(amd64_linux_record_signal): New function.
	(amd64_linux_init_abi): Call set_gdbarch_process_record_signal.
2009-09-21 05:57:09 +00:00
Hui Zhu
8a2e0e28d0 2009-09-21 Hui Zhu <teawater@gmail.com>
Michael Snyder  <msnyder@vmware.com>

	* i386-linux-tdep.c (i386_all_but_ip_registers_record): New
	function.
	(i386_linux_intx80_sysenter_record): Call
	i386_all_but_ip_registers_record if syscall is sys_sigreturn
	or sys_rt_sigreturn.
	(I386_LINUX_xstate, I386_LINUX_frame_size): New macros.
	(i386_linux_record_signal): New function.
	(i386_linux_init_abi): Call set_gdbarch_process_record_signal.
2009-09-21 05:55:53 +00:00
Hui Zhu
8b739a963c 2009-09-21 Hui Zhu <teawater@gmail.com>
Michael Snyder  <msnyder@vmware.com>

	* record.c (record_end_entry): New struct.
	(record_type): Add end.
	(record_arch_list_add_end): Set rec->u.end.sigval to
	TARGET_SIGNAL_0.
	(record_message_args): New struct.
	(record_message): Call gdbarch_process_record_signal.
	(do_record_message): Add argument "signal".
	(record_resume): Ditto.
	(record_wait): Ditto.  Check record_list->u.end.sigval
	in replay mode.
2009-09-21 05:54:09 +00:00
Hui Zhu
3846b520e4 2009-09-21 Hui Zhu <teawater@gmail.com>
Michael Snyder  <msnyder@vmware.com>

	* gdbarch.sh (process_record_signal): New interface.
2009-09-21 05:52:06 +00:00
Joel Brobecker
26f9bcee59 * varobj.c (varobj_update): Initialize children_changed. 2009-09-19 16:02:36 +00:00
Vladimir Prus
654e7c1f80 * mi/mi-cmd-stack.c (list_args_or_locals): Workaround
gcc warning.
2009-09-19 11:12:42 +00:00
Vladimir Prus
daf3c9776f * mi/mi-cmds.h (mi_cmd_stack_list_variables): Declare.
* mi/mi-cmds.c (mi_cmds): Register -stack-list-variables.
	* mi/mi-cmd-stack.c (enum what_to_list): New.
	(list_args_or_locals): Accept what_to_list parameter.
	Use 'variables' as output name of all are requested.
	(mi_cmd_stack_list_variables): New.
	(mi_cmd_stack_list_locals, mi_cmd_stack_list_args): Adjust.
2009-09-19 09:59:29 +00:00
Eli Zaretskii
3145548fd3 * config/djgpp/fnchange.lst: Add missing edits. 2009-09-19 09:46:45 +00:00
Maxim Grigoriev
8179e73991 2009-09-18 Maxim Grigoriev <maxim2405@gmail.com>
* xtensa-tdep.c (call0_analyze_prologue): Replace INT_MAX by UNIT_MAX.
2009-09-19 03:56:31 +00:00
Jan Kratochvil
adb7f3388f gdb/
* objfiles.c (free_objfile): Clear SYMFILE_OBJFILE if it is OBJFILE.
	* rs6000-nat.c (vmap_ldinfo): Only assertion check SYMFILE_OBJFILE now.
	* symfile.c (syms_from_objfile, symbol_file_clear): Likewise.
2009-09-18 17:33:51 +00:00
Ulrich Weigand
924731f649 Fix ChangeLog date. 2009-09-18 15:49:26 +00:00
Ulrich Weigand
db9f5df8d2 * rs6000-tdep.c (rs6000_builtin_type_vec128): Add v2_double
union member.
2009-09-18 15:48:23 +00:00
Joel Brobecker
01dedca21d Fix a build failure on pa-hpux:
* gdb_ptrace.h (PT_SYSCALL): Define here if not already defined.
        * inf-ttrace.c (inf_ttrace_wait): Fix compilation failure
        introduced after field syscall_id inside struct target_waitstatus
        has been renamed into syscall_number.
2009-09-17 19:19:59 +00:00
H.J. Lu
11e6390e80 2009-09-16 H.J. Lu <hongjiu.lu@intel.com>
PR gdb/10649
	* Makefile.in (GDB_DATADIR_PATH): Renamed to ...
	(GDB_DATADIR): This.
	(xml-syscall-install): Updated.
2009-09-16 21:55:57 +00:00
gdbadmin
191cfd08b6 Record GDB 7.0 branch creation. Bump version number to 7.0.50.20090916-cvs. 2009-09-16 21:54:22 +00:00
Tom Tromey
0cc7d26fe4 gdb
* varobj.h (varobj_update_result_t) <new>: New field.
	(varobj_get_child_range, varobj_set_child_range): Declare.
	(varobj_list_children): Update.
	(varobj_enable_pretty_printing, varobj_has_more)
	(varobj_pretty_printed_p): Declare.
	* varobj.c (pretty_printing): New global.
	(varobj_enable_pretty_printing): New function.
	(struct varobj_root) <from, to, constructor, child_iter,
	saved_item>: New fields.
	(varobj_create): Don't call install_default_visualizer.
	(instantiate_pretty_printer): Don't use value_copy.
	(varobj_has_more): New function.
	(restrict_range): New function.
	(install_dynamic_child): Likewise.
	(dynamic_varobj_has_child_method): Likewise.
	(update_dynamic_varobj_children): Remove 'new_and_unchanged'
	argument; add 'new', 'unchanged', 'from', and 'to' arguments.
	Rewrite.
	(varobj_get_num_children): Call update_dynamic_varobj_children.
	(varobj_list_children): Add 'from' and 'to' arguments.  Ignore
	result of update_dynamic_varobj_children.  Don't call
	install_default_visualizer.  Restrict result range.
	(varobj_add_child): Don't call install_default_visualizer.
	(varobj_pretty_printed_p): New function.
	(install_visualizer): Rewrite.  Move earlier in file.
	(install_default_visualizer): Likewise.
	(construct_visualizer): New function.
	(install_new_value_visualizer): Likewise.
	(install_new_value): Don't call release_value.  Special case
	pretty-printed objects.  Use value_incref.  Rearrange "changed"
	logic.
	(varobj_get_child_range): New function.
	(varobj_set_child_range): Likewise.
	(varobj_set_visualizer): Rewrite.
	(varobj_update): Rewrite pretty-printing logic.
	(new_variable): Initialize new fields.
	(free_variable): Destroy new fields.
	(value_of_root): Copy 'from' and 'to'.
	(my_value_of_variable): Handle pretty-printers.
	(value_get_print_value): Rework pretty-printing logic.
	(cplus_describe_child): Don't use release_value.
	* mi/mi-cmds.h (mi_cmd_enable_pretty_printing)
	(mi_cmd_var_set_update_range): Declare.
	* mi/mi-cmds.c (mi_cmds): Add enable-pretty-printing and
	var-set-update-range.
	* mi/mi-cmd-var.c (print_varobj): Update.  Emit "dynamic"
	attribute.
	(mi_cmd_var_create): Emit "has_more" attribute.
	(mi_cmd_var_set_format): Plug memory leak.
	(mi_print_value_p): Replace 'type' argument with 'var'.  Handle
	pretty-printed varobjs.
	(mi_cmd_var_list_children): Accept 'from' and 'to' arguments.
	Emit "has_more" attribute.
	(mi_cmd_var_evaluate_expression): Plug memory leak.
	(mi_cmd_var_assign): Likewise.
	(varobj_update_one): Likewise.  Emit "dynamic", "has_more", and
	"new_children" attributes.
	(mi_cmd_enable_pretty_printing): New function.
	(mi_cmd_var_set_update_range): Likewise.
gdb/doc
	* gdb.texinfo (GDB/MI Variable Objects): Document
	-enable-pretty-printing, -var-set-update-range, dynamic varobjs.
	Expand -var-update documentation.
gdb/testsuite
	* lib/mi-support.exp (mi_create_varobj): Update.
	(mi_create_floating_varobj): Likewise.
	(mi_create_dynamic_varobj): New proc.
	(mi_varobj_update): Update.
	(mi_varobj_update_with_type_change): Likewise.
	(mi_varobj_update_kv_helper): New proc.
	(mi_varobj_update_dynamic_helper): Rewrite.
	(mi_varobj_update_dynamic): New proc.
	(mi_list_varobj_children): Update.
	(mi_list_varobj_children_range): Add 'from' and 'to' arguments.
	* gdb.python/python-prettyprint.py (pp_outer): New class.
	(pp_nullstr): Likewise.
	(lookup_function): Register new printers.
	* gdb.python/python-prettyprint.c (struct substruct): New type.
	(struct outerstruct): Likewise.
	(substruct_test): New function.
	(struct nullstr): New type.
	(string_1, string_2): New globals.
	(main): Add new tests.
	* gdb.python/python-mi.exp: Added regression tests.
	* gdb.mi/mi2-var-display.exp: Update.
	* gdb.mi/mi2-var-cmd.exp: Update.
	* gdb.mi/mi2-var-child.exp: Update.
	* gdb.mi/mi2-var-block.exp: Update.
	* gdb.mi/mi-var-invalidate.exp: Update.
	* gdb.mi/mi-var-display.exp: Update.
	* gdb.mi/mi-var-cmd.exp: Update.
	* gdb.mi/mi-var-child.exp: Update.
	* gdb.mi/mi-var-block.exp: Update.
	* gdb.mi/mi-break.exp: Update.
	* gdb.mi/gdb701.exp: Update.
2009-09-15 18:51:26 +00:00
Doug Evans
44353522ec * dwarf2expr.h (dwarf_value_location): Add more comments describing
enum values.
	(struct dwarf_stack_value): New struct.
	(struct dwarf_expr_context): Change type of `stack' from CORE_ADDR*
	to struct dwarf_stack_value*.
	(struct dwarf_expr_piece): Move `v.value' into its own struct, v.expr,
	all uses updated.  Add v.expr.in_stack_memory.
	(dwarf_expr_push): Update declaration.
	(dwarf_expr_fetch_in_stack_memory): Declare.
	* dwarf2expr.c (dwarf_expr_grow_stack): Update calculation of
	size of stack value.
	(dwarf_expr_push): New arg in_stack_memory, all callers updated.
	(dwarf_expr_fetch_in_stack_memory): New function.
	(add_piece): Set in_stack_memory for non-literal values.
	(execute_stack_op): Allow ops to specify whether the value is on the
	program's stack.
	(execute_stack_op, case DW_OP_fbreg): Mark value as in stack memory.
	(execute_stack_op, case DW_OP_call_frame_cfa): Ditto.
	(execute_stack_op, case DW_OP_dup): Copy in_stack_memory flag.
	(execute_stack_op, cases DW_OP_pick, DW_OP_over): Ditto.
	(execute_stack_op, cases DW_OP_swap, DW_OP_rot): Update type of
	dwarf stack value.
	* dwarf2loc.c (read_pieced_value): Call read_stack for values known
	to be on the program's stack.
	(dwarf2_evaluate_loc_desc, case DWARF_VALUE_MEMORY): Call
	set_value_stack only for objects known to be in stack memory.
	* dwarf2-frame.c (execute_stack_op): New arg initial_in_stack_memory,
	all callers updated.
2009-09-15 16:20:53 +00:00
Doug Evans
7d4f32d36a * target.c (memory_xfer_partial): Pass correct length to dcache_update. 2009-09-15 16:16:40 +00:00
Jan Kratochvil
8285870aeb gdb/
Fix gcc-4.5 HEAD warnings for enum ada_operator.
	* Makefile.in (HFILES_NO_SRCDIR): Add ada-operator.inc.
	* ada-lang.h (enum ada_operator): Move it to ...
	* ada-operator.inc: ... a new file.
	* expression.h (enum exp_opcode): Include ada-operator.inc.
	New element OP_UNUSED_LAST.  Update comment for OP_EXTENDED0.

gdb/
	Fix gcc-4.5 HEAD warnings for GDB_FORM_cached_string.
	* dwarf2read.c (GDB_FORM_cached_string)
	(dwarf_form_name <GDB_FORM_cached_string>): Remove.
	(struct attribute <dwarf_form>): Reduce the bit width.
	(struct attribute <string_is_canonical>, DW_STRING_IS_CANONICAL): New.
	(read_attribute_value <DW_FORM_string>)
	(read_attribute_value <DW_FORM_strp>): Initialize
	DW_STRING_IS_CANONICAL.
	(dwarf2_name, dump_die_shallow <DW_FORM_string>)
	(dump_die_shallow <DW_FORM_strp>): Update the code using former
	GDB_FORM_cached_string.
2009-09-15 16:09:32 +00:00
Sergio Durigan Junior
a96d9b2e9a Implementing catch syscall.
* amd64-linux-tdep.c: Include xml-syscall.h header, define the XML
syscall name for the architecture.
(amd64_linux_get_syscall_number): New function.
(amd64_linux_init_abi): Register the correct functions for syscall
catchpoint; set the correct syscall file name.
* breakpoint.c: New include: xml-syscall.h.
(set_raw_breakpoint_without_location): Setting the parameters
for the catch syscall feature.
(insert_catch_syscall): New.
(remove_catch_syscall): New.
(breakpoint_hit_catch_syscall): New.
(print_it_catch_syscall): New.
(print_one_catch_syscall): New.
(print_mention_catch_syscall): New.
(catch_syscall_breakpoint_ops): New.
(syscall_catchpoint_p): New.
(create_catchpoint_without_mention): New.
(create_catchpoint): Modified in order to use
create_catchpoint_without_mention.
(create_syscall_event_catchpoint): New.
(clean_up_filters): New.
(catch_syscall_split_args): New.
(catch_syscall_command_1): New.
(delete_breakpoint): Add cleanup for catch syscall.
(is_syscall_catchpoint_enabled): New.
(catch_syscall_enabled): New.
(catching_syscall_number): New.
(catch_syscall_completer): New completer function.
(add_catch_command): Add the completer function for catchpoints.
* breakpoint.h (syscalls_to_be_caught): New vector.
(catch_syscall_enabled): New.
(catching_syscall_number): New.
* gdbarch.c: Regenerated.
* gdbarch.h: Regenerated.
* gdbarch.sh: Add syscall catchpoint functions and structures.
(get_syscall_number): New.
(UNKNOWN_SYSCALL): New definition.
* i386-linux-nat.c (i386_linux_resume): Select the proper request
to be made for ptrace() considering if we are catching syscalls
or not.
* i386-linux-tdep.c: Include xml-syscall.h header, define the XML
syscall name for the architecture.
(i386_linux_get_syscall_number): New.
(i386_linux_init_abi): Register the correct functions for syscall
catchpoint; set the correct syscall file name.
* inf-child.c (inf_child_set_syscall_catchpoint): New.
(inf_child_target): Assign default values to target_ops.
* inf-ptrace.c (inf_ptrace_resume): Select the proper request
to be made for ptrace() considering if we are catching syscalls
or not.
* inferior.h (struct inferior): Included new variables
any_syscall_count, syscalls_counts and total_syscalls_count,
used to keep track of requested syscall catchpoints.
* infrun.c (resume): Add syscall catchpoint.
(deal_with_syscall_event): New.
(handle_inferior_event): Add syscall entry/return events.
(inferior_has_called_syscall): New.
* linux-nat.c: Define some helpful variables to track wether we have
support for the needed ptrace option.
(linux_test_for_tracesysgood): New.
(linux_supports_tracesysgood): New.
(linux_enable_tracesysgood): New.
(linux_enable_event_reporting): Save the current used ptrace
options.
(linux_child_post_attach): Calling linux_enable_tracesysgood.
(linux_child_post_startup_inferior): Likewise.
(linux_child_set_syscall_catchpoint): New function.
(linux_handle_extended_wait): Handle the case which the inferior stops
because it has called or returned from a syscall.
(linux_target_install_ops): Install the necessary functions to handle
syscall catchpoints.
* linux-nat.h (struct lwp_info): Include syscall_state into the
structure, which indicates if we are in a syscall entry or return.
* ppc-linux-tdep.c: Include xml-syscall.h header, define the XML
syscall filename for the arch.
(ppc_linux_get_syscall_number): New.
(ppc_linux_init_abi): Register the correct functions for syscall
catchpoint; setting the correct name for the XML syscall file.
* target.c (update_current_target): Update/copy functions related to
syscall catchpoint.
(target_waitstatus_to_string): Add syscall catchpoint entry/return
events.
* target.h (struct target_waitstatus): Add syscall number.
(struct syscall): New struct to hold information about syscalls
in the system.
(struct target_ops): Add ops for syscall catchpoint.
(inferior_has_called_syscall): New.
(target_set_syscall_catchpoint): New.
* xml-support.c (xml_fetch_content_from_file): New function,
transferred from xml-tdesc.c.
* xml-support.h (xml_fetch_content_from_file): New.
* xml-tdesc.c (fetch_xml_from_file): Function removed;
transferred to xml-support.c.
(file_read_description_xml): Updated to use the new
xml_fetch_content_from_file function.
* syscalls/gdb-syscalls.dtd: New definition file for syscall's XML
support.
* syscalls/amd64-linux.xml: New file containing information about
syscalls for GNU/Linux systems that use amd64 architecture.
* syscalls/i386-linux.xml: New file containing information about
syscalls for GNU/Linux systems that use i386 architecture.
* syscalls/ppc-linux.xml: New file containing information about
syscalls for GNU/Linux systems that use PPC architecture.
* syscalls/ppc64-linux.xml: New file containing information about
syscalls for GNU/Linux systems that use PPC64 architecture.
* xml-syscall.c: New file containing functions for manipulating
syscall's XML files.
* xml-syscall.h: New file, exporting the functions above mentioned.
* Makefile.in: Support for relocatable GDB datadir and XML
syscall.
* NEWS: Added information about the catch syscall feature.
* doc/gdb.texinfo (Set Catchpoints): Documentation about the new
feature.
* testsuite/Makefile.in: Inclusion of catch-syscall object.
* testsuite/gdb.base/catch-syscall.c: New file.
* testsuite/gdb.base/catch-syscall.exp: New file.
2009-09-15 03:30:08 +00:00
Doug Evans
41dcd03ff7 * target.c (memory_xfer_partial): Only update dcache after we know
the write succeeded.
2009-09-14 20:49:11 +00:00
Paul Pluzhnikov
00878c6e41 2009-09-14 Paul Pluzhnikov <ppluzhnikov@google.com>
*minsyms.c (lookup_minimal_symbol_by_pc_section_1): Assert non-NULL
	section.
	(lookup_minimal_symbol_by_pc_section): Check for NULL section.
	(lookup_minimal_symbol_by_pc): Adjust.
2009-09-14 17:17:30 +00:00
Paul Pluzhnikov
6fbf07cd38 2009-09-14 Paul Pluzhnikov <ppluzhnikov@google.com>
* objfiles.c (qsort_cmp): Remove asserts.
	(insert_section_p, filter_debuginfo_sections): New function.
	(filter_overlapping_sections): Likewise.
	(update_section_map): Adjust.
2009-09-14 17:12:07 +00:00
Joel Brobecker
005ca36a8b gdb/
* frame.c (get_frame_id): Default to outer_frame_id if the this_id
        method does not supply an ID.  Assert that the result is not
        null_frame_id.
        (outer_frame_id): New.
        (frame_id_p): Accept outer_frame_id.
        (frame_id_eq): Allow outer_frame_id to be equal to itself.
        (frame_find_by_id): Revert previous local workarounds.
        (get_prev_frame_1): Adjust end-of-stack check to test outer_frame_id.
        * frame.h (null_frame_id, frame_id_p): Update comments.
        (outer_frame_id): Declare.
        * infrun.c (handle_inferior_event): Do not treat all steps from the
        outermost frame as subroutine calls.

        * libunwind-frame.c (libunwind_frame_this_id): Do not clear THIS_ID.
        * hppa-tdep.c (hppa_stub_frame_this_id): Likewise.
        * ia64-tdep.c (ia64_frame_this_id): Likewise.
        (ia64_libunwind_frame_this_id, ia64_libunwind_sigtramp_frame_this_id):
        Use outer_frame_id instead of null_frame_id.
        * amd64obsd-tdep.c (amd64obsd_trapframe_cache): Use outer_frame_id.
        * i386obsd-tdep.c (i386obsd_trapframe_cache): Likewise.
        * inline-frame.c (inline_frame_this_id): Refuse outer_frame_id.
        * thread.c (restore_selected_frame): Update comment and remove
        frame_id_p check.

        gdb/doc/
        * gdbint.texinfo (Unwinding the Frame ID): Reference outer_frame_id.
2009-09-13 16:28:29 +00:00
Doug Evans
411c71a82f * dwarf2expr.c (execute_stack_op, case DW_OP_piece): Delete unused
local addr_or_regnum.
2009-09-11 23:11:34 +00:00
Doug Evans
c1bd65d042 * objfiles.c (struct objfile_data): Delete member cleanup and replace
with save, free.
	(register_objfile_data_with_cleanup): Delete arg cleanup and replace
	with save, free.  All callers updated.
	(clear_objfile_data): Replace cleanup loop with separate save and
	free loops.
	* objfiles.h (register_objfile_data_with_cleanup): Update.
	* arm-tdep.c (arm_objfile_data_free): Renamed from
	arm_objfile_data_cleanup, all callers updated.
	* dwarf2read.c (dwarf2_per_objfile_free): Renamed from
	dwarf2_per_objfile_cleanup, all callers updated.
	* python/py-objfile.c (py_free_objfile): Renamed from clean_up_objfile,
	all callers updated.
	* python/py-type.c (save_objfile_types): Renamed from
	clean_up_objfile_types, all callers updated.
2009-09-11 18:51:31 +00:00
Tom Tromey
cec03d703f gdb
* dwarf2loc.c (struct piece_closure) <arch>: New field.
	(dwarf2_evaluate_loc_desc): Update.
	(dwarf2_loc_desc_needs_frame): Likewise.
	(allocate_piece_closure): Initialize new field.
	(read_pieced_value): Update.
	(write_pieced_value): Update.
	(copy_pieced_value_closure): Update.
	* dwarf2expr.h (enum dwarf_value_location): New.
	(struct dwarf_expr_context) <in_reg>: Remove.
	<location, len, data>: New fields.
	(struct dwarf_expr_piece) <in_reg, value>: Remove.
	<location, v>: New fields.
	* dwarf2expr.c (add_piece): Remove in_reg, value arguments.
	Update.
	(require_composition): New function.
	(execute_stack_op): Update.
	<DW_OP_implicit_value, DW_OP_stack_value>: New cases.
	<DW_OP_reg0>: Set location, not in_reg.
	<DW_OP_regx>: Likewise.  Use require_composition.
	<DW_OP_fbreg>: Update.
	<DW_OP_piece>: Likewise.
	* dwarf2-frame.c (execute_stack_op): Update.
gdb/testsuite
	* gdb.dwarf2/valop.S: New file.
	* gdb.dwarf2/valop.exp: New file.
2009-09-11 18:38:39 +00:00
Anthony Green
ce0bf48891 Recognize new moxie prologues 2009-09-10 21:12:25 +00:00
Michael Snyder
40ab02cedc 2009-09-10 Michael Snyder <msnyder@vmware.com>
* remote.c (PACKET_bc, PACKET_bs): New enums.
	(remote_protocol_features): Add ReverseStep, ReverseContinue.
	(remote_resume): Check for reverse capability.
	(_initialize_remote): Add packet config for "bs" and "bc" packets.
	* NEWS (new options): Mention set/show for "bs" and "bc" packets.
2009-09-10 21:02:46 +00:00
Joel Brobecker
910c5da8fe * top.c (interactive_mode): New static variable.
(show_interactive_mode): New function.
        (input_from_terminal_p): If interactive_mode is not auto, then
        use that rather than checking the stdin settings.
        (init_main): Add "set/show interactive-mode" command.
        * NEWS: Add entry for new "set/show interactive-mode" command.
2009-09-10 18:56:45 +00:00
Joel Brobecker
2c9e3c696d * configure.ac: Fix the names of the python source and object files
following the renaming done in an earlier change.
        * configure: Regenerate.
2009-09-10 03:59:37 +00:00
Joel Brobecker
397dbc8b2b Fix a build failure on AIX.
* rs6000-nat.c (vmap_exec): Rewrite using target_get_section_table
        instead of relying on the to_sections/to_section_end target_ops
        field, since the latter have been removed in a previous patch.
2009-09-09 17:59:18 +00:00
Joel Brobecker
5172aecbd2 Checking in this patch for Thiago: Rename python-* files into py-*,
more 8+3 friendly.


gdb/
        * Makefile.in (py-cmd.o): Renamed from python-cmd.o.  Updated
        references.
        (py-frame.o): Renamed from python-frame.o.  Updated references.
        (py-function.o): Renamed from python-function.o.  Updated references.
        (py-objfile.o): Renamed from python-objfile.o.  Updated references.
        (py-prettyprint.o): Renamed from python-prettyprint.o.  Updated
+references.
        (py-type.o): Renamed from python-type.o.  Updated references.
        (py-utils.o): Renamed from python-utils.o.  Updated references.
        (py-value.o): Renamed from python-value.o.  Updated references.
        * py-cmd.o: Renamed from python-cmd.o.
        * py-frame.o: Renamed from python-frame.o.
        * py-function.o: Renamed from python-function.o.
        * py-objfile.o: Renamed from python-objfile.o.
        * py-prettyprint.o: Renamed from python-prettyprint.o.
        * py-type.o: Renamed from python-type.o.
        * py-utils.o: Renamed from python-utils.o.
        * py-value.o: Renamed from python-value.o.

gdb/testsuite/
        * gdb.python/Makefile.in (EXECUTABLES): Adjust to new executable
        names, add missing ones.
        * gdb.python/py-cmd.exp: Rename from python-cmd.exp.
        * gdb.python/py-frame.c: Rename from python-frame.c.
        * gdb.python/py-frame.exp: Rename from python-frame.exp.  Adjust
        testfile name.
        * gdb.python/py-function.exp: Rename from python-function.exp.
        * gdb.python/py-mi.exp: Rename from python-mi.exp.  Adjust
        testfile name.
        * gdb.python/py-prettyprint.c: Rename from python-prettyprint.c.
        * gdb.python/py-prettyprint.exp: Rename from python-prettyprint.exp.
        Adjust testfile name.
        * gdb.python/py-prettyprint.py: Rename from python-prettyprint.py.
        * gdb.python/py-template.cc: Rename from python-template.cc.
        * gdb.python/py-template.exp: Rename from python-template.exp.
        Adjust testfile name.
        * gdb.python/py-value.c: Rename from python-value.c.
        * gdb.python/py-value.exp: Rename from python-value.exp.  Adjust
        testfile name.
2009-09-09 17:45:42 +00:00
Joel Brobecker
b83e9eb71c Avoid quadratic behavior when computing the value of a register.
* frame.c (frame_stash): New static constant.
        (frame_stash_add, frame_stash_find, frame_stash_invalidate):
        New functions.
        (get_frame_id): Minor reformatting. Add the frame to the frame stash.
        (frame_find_by_id): Search the frame stash first before walking all
        frames starting from te current_frame.
        (reinit_frame_stash): Add call to frame_stash_invalidate ();
2009-09-09 17:39:21 +00:00
Joel Brobecker
49e794ac62 * block.c (contained_in): Return zero for nested functions.
* blockframe.c (block_innermost_frame): Delete unreferenced local
        variable.
2009-09-09 17:23:55 +00:00
Doug Evans
9cf1b57289 * target.c (initialize_targets): Fix thinko in stack_cache_enabled_p. 2009-09-08 23:52:45 +00:00
Michael Snyder
13b6d1d459 2009-09-08 Michael Snyder <msnyder@vmware.com>
* amd64-linux-tdep.h (enum amd64_syscall): New enum consts,
	to replace literal consts used in amd64-linux-tdep.c
	* linux-record.h (enum gdb_syscall): New enum consts, to replace
	literal consts used in amd64-linux-tdep.c and linux-record.c.
	* amd64-linux-tdep.c (amd64_canonicalize_syscall): New function,
	translate from native amd64 Linux syscall id to internal gdb id.
	(amd64_linux_syscall_record): Switch statement abstracted out
	and replaced with a call to amd64_canonicalize_syscall.
	* linux-record.c (record_linux_system_call): Replace literal
	consts with enum consts.
	* i386-linux-tdep.c (i386_canonicalize_syscall): New function,
	trivially translate from native i386 Linux syscalls to gdb syscalls.
	(i386_linux_intx80_sysenter_record):
2009-09-08 22:50:59 +00:00
Ralf Wildenhues
a5bbabf3b5 Fix parallel check//% rule in gdb for non-VPATH build.
gdb/:
	* gdb/Makefile.in (check//%): Parse 'config.status --version'
	output to recreate the configuration from the testsuite directory,
	rather than running 'config.status --recheck' from a different
	build directory.  Let configure do the recursion rather than
	doing it manually.
2009-09-08 18:50:40 +00:00
Jan Kratochvil
a58162c257 gdb/
* ia64-tdep.c (ia64_memory_remove_breakpoint): Call do_cleanups
	before a return.
2009-09-08 18:07:23 +00:00
Jan Kratochvil
fbfaaae50b gdb/
* ia64-tdep.c (ia64_memory_insert_breakpoint)
	(ia64_memory_remove_breakpoint): Return immediately if any of memory
	reads fail.  Do not combine the VAL values.
2009-09-08 17:52:27 +00:00
Jan Kratochvil
b554e4bd53 gdb/
Fix ia64 shadowing of breakpoints in multiple slots of a single bundle.
	* ia64-tdep.c (ia64_memory_insert_breakpoint): New call
	of make_show_memory_breakpoints_cleanup with parameter 0.  Move the
	reading of SHADOW_CONTENTS to this memory state point of code.  Update
	comment for the memory re-read.

gdb/testsuite/
	* gdb.base/breakpoint-shadow.exp (Second breakpoint placed): Initialize
	$bpt2address.
	(Second breakpoint address is valid on ia64)
	(Third breakpoint on ia64 in the Second breakpoint's bundle): New.
2009-09-08 17:39:22 +00:00
Michael Snyder
fda458eeb1 2009-09-07 Michael Snyder <msnyder@vmware.com>
* record.c: Minor comment and white space fix-ups.
2009-09-08 00:50:42 +00:00
Jan Kratochvil
1390fcc2ff gdb/
* m68k-tdep.c (m68k_gdbarch_init): Allocate TDEP as cleared.
	* sparc-tdep.c (sparc32_gdbarch_init): Allocate TDEP as cleared.
	Remove explicit clearing of TDEP fields.
2009-09-07 17:52:41 +00:00
Hui Zhu
d7877f7ecf 2009-09-06 Hui Zhu <teawater@gmail.com>
* i386-tdep.c (i386_record_check_override): Deleted.
	(i386_record_lea_modrm): Ditto.
	(i386_process_record): Ditto.
2009-09-07 11:09:33 +00:00
Eli Zaretskii
348e86d958 * config/djgpp/djconfig.sh: Fix for Autoconf 2.64.
* config/djgpp/config.sed: Fix for Autoconf 2.64.
2009-09-05 15:43:31 +00:00
Hui Zhu
df61f520ce 2009-09-05 Hui Zhu <teawater@gmail.com>
* i386-tdep.c (i386_record_s): Add orig_addr.
	(i386_record_check_override): New function.
	(i386_record_lea_modrm): Call i386_record_check_override.
	(i386_process_record): Ditto.
2009-09-05 15:37:02 +00:00
Nathan Froyd
052b950219 * dwarf2loc.c (struct piece_closure): New.
(allocate_piece_closure): New function.
	(read_pieced_value): New function.
	(write_pieced_value): New function.
	(copy_pieced_value_closure): New function.
	(free_pieced_value_closure): New function.
	(pieced_value_funcs): Define.
	(dwarf2_evaluate_loc_desc): Return a computed value for a variable
	described with pieces.
2009-09-04 20:05:25 +00:00
Joel Brobecker
97b9747c0c * arm-tdep.c (displaced_write_reg): Replace call to abort by call
to internal_error.
2009-09-03 18:52:02 +00:00
Tom Tromey
e78022079c gdb
* frame.h (frame_unwinder_is): Declare.
	* frame.c (frame_unwinder_is): New function.
	* dwarf2loc.c: Include dwarf2-frame.h.
	(dwarf_expr_frame_cfa): New function.
	(dwarf2_evaluate_loc_desc): Use it.
	(needs_frame_frame_cfa): New function.
	(dwarf2_loc_desc_needs_frame): Use it.
	* dwarf2expr.h (struct dwarf_expr_context) <get_frame_cfa>: New
	field.
	* dwarf2expr.c (execute_stack_op) <DW_OP_call_frame_cfa>: New
	case.
	* dwarf2-frame.h (dwarf2_frame_cfa): Declare.
	* dwarf2-frame.c (no_get_frame_cfa): New function.
	(execute_stack_op): Use it.
	(dwarf2_frame_cfa): New function.
gdb/testsuite
	* gdb.dwarf2/callframecfa.exp: New file.
	* gdb.dwarf2/callframecfa.S: New file.
2009-09-02 14:53:57 +00:00
Hui Zhu
c9e78e0c8b 2009-09-02 Hui Zhu <teawater@gmail.com>
* record.c (record_resume): Change "signal" to "siggnal".
2009-09-02 01:31:09 +00:00
Hui Zhu
14c6ee207a 2009-09-01 Hui Zhu <teawater@gmail.com>
* record.c (record_resume): Change "siggnal" to "signal".
2009-09-01 11:41:41 +00:00
Hui Zhu
88fef4406f 2009-08-31 Hui Zhu <teawater@gmail.com>
* record.c (record_resume_siggnal): Deleted.
	(record_resume): Ditto.
	(record_wait): Change record_resume_siggnal to
	TARGET_SIGNAL_0.
2009-09-01 03:32:49 +00:00
Doug Evans
4e5d721fc0 Implement TARGET_OBJECT_STACK_MEMORY.
* NEWS: Add note on new "set stack-cache" option.
	* corefile.c (read_stack): New function.
	* dcache.c (dcache_struct): New member ptid.
	(dcache_enable_p): Mark as obsolete.
	(show_dcache_enabled_p): Flag option as deprecated.
	(dcache_invalidate): Update ptid.
	(dcache_invalidate_line): New function.
	(dcache_read_line): No longer check cacheable attribute, stack
	accesses get cached despite attribute.
	(dcache_init): Set ptid.
	(dcache_xfer_memory): Flush cache if from different ptid than before.
	Update cache after write.
	(dcache_update): New function.
	(dcache_info): Report ptid.
	(_initialize_dcache): Update text for `remotecache' to indicate it
	is obsolete.
	* dcache.h (dcache_update): Declare.
	* dwarf2loc.c (dwarf2_evaluate_loc_desc): Mark values on stack with
	set_value_stack.
	* frame-unwind.c (frame_unwind_got_memory): Ditto.
	* gdbcore.h (read_stack): Declare.
	* memattr.c (mem_enable_command): Call target_dcache_invalidate
	instead of dcache_invalidate.
	(mem_disable_command, mem_delete_command): Ditto.
	* target.c (stack_cache_enabled_p_1): New static global.
	(stack_cache_enabled_p): New static global.
	(set_stack_cache_enabled_p): New function.
	(show_stack_cache_enabled_p): New function.
	(target_dcache): Make static.
	(target_dcache_invalidate): New function.
	(target_load, target_resume): Call target_dcache_invalidate
	instead of dcache_invalidate.
	(memory_xfer_partial): New arg object, all callers updated.
	Check for existing inferior before calling dcache routines.
	When writing non-TARGET_OBJECT_STACK_MEMORY, notify dcache.
	(target_xfer_partial): Call memory_xfer_partial for
	TARGET_OBJECT_STACK_MEMORY.
	(target_read_stack): New function.
	(initialize_targets): Install new option `stack-cache'.
	* target.h: Remove #include of dcache.h.
	(enum target_object): New value TARGET_OBJECT_STACK_MEMORY.
	(target_dcache): Delete.
	(target_dcache_invalidate): Declare.
	(target_read_stack): Declare.
	* top.c (prepare_execute_command): New function.
	(execute_command): Call prepare_execute_command
	instead of free_all_values.
	* top.h (prepare_execute_command): Declare.
	* valops.c (get_value_at): New function.
	(value_at): Guts moved to get_value_at.
	(value_at_lazy): Similarly.
	(value_fetch_lazy): Call read_stack for stack values.
	* value.c (struct value): New member `stack'.
	(value_stack, set_value_stack): New functions.
	* value.h (value_stack, set_value_stack): Declare.
	* mi/mi-main.c (mi_cmd_execute): Call prepare_execute_command
	instead of free_all_values.

	doc/
	* gdb.texinfo (Caching Data of Remote Targets): Update text.
	Mark `set/show remotecache' options as obsolete.
	Document new `set/show stack-cache' option.
	Update text for `info dcache'.
2009-08-31 20:18:46 +00:00
Hui Zhu
77d7dc9283 2009-08-29 Hui Zhu <teawater@gmail.com>
* i386-tdep.c (i386_process_record): Fix the error of string
	ops instructions's handler.
2009-08-29 05:32:16 +00:00
Doug Evans
648bf66730 * top.c (execute_command): Remove redundant comment. 2009-08-28 23:26:54 +00:00
Daniel Jacobowitz
4a76eae594 PR gdb/10565
* value.c (value_primitive_field): Do not save value_offset for
	bitfields.
	(unpack_bits_as_long): Do not read an entire ULONGEST.

	testsuite/
	PR gdb/10565

	* gdb.base/bitfields.c (struct container, container): New.
	(main): Initialize it and call break5.
	* gdb.base/bitfields.exp (bitfield_at_offset): New test.
2009-08-28 18:50:49 +00:00
Jan Kratochvil
d4b96c9a78 gdb/
Support constant DW_AT_data_member_location by GCC PR debug/40659.
	* dwarf2read.c
	(dwarf2_add_field <DW_TAG_member> <DW_AT_data_member_location>):
	Initialize BYTE_OFFSET to 0 by default.  Explicitly check if
	attr_form_is_block.
	(dwarf2_add_field <DW_TAG_inheritance> <DW_AT_data_member_location>)
	(read_common_block <DW_AT_data_member_location>): New variable
	byte_offset.  Fix crash on non-DW_BLOCK ATTR values.

gdb/testsuite/
	Support constant DW_AT_data_member_location by GCC PR debug/40659.
	* gdb.dwarf2/dw2-inheritance.exp, gdb.dwarf2/dw2-inheritance.S: New.
2009-08-28 10:49:06 +00:00
Hui Zhu
12b1a97932 2009-08-28 Hui Zhu <teawater@gmail.com>
* record.c (record_list_release_next): Change the first
	record_reg to record_end.
2009-08-28 02:10:18 +00:00
Doug Evans
725e88af6f * value.c (free_all_values): Tweak comment. 2009-08-27 23:37:35 +00:00
Doug Evans
55333a841d * NEWS: Add note on "info sharedlibrary".
Remove note on "set print symbol-loading".
	* main.c (captured_main): Pass !batch for from_tty when calling
	symbol_file_add_main.
	* objfiles.h (objfile_has_partial_symbols): Declare.
	(objfile_has_full_symbols): Declare.
	* objfiles.c (objfile_has_partial_symbols): New function.
	(have_partial_symbols): Use it.
	(objfile_has_full_symbols): New function.
	(have_full_symbols): Use it.
	* solib.c: Include interps.h.
	(solib_read_symbols): Back out patch of 2008-07-10.
	Add test for info_verbose for symbol loading messages for
	consistency with symfile.c.
	(info_sharedlibrary_command): Handle optional parameter of regex of
	libraries to list.  Inform user of libraries without debugging info.
	Rewrite to use ui_out routines to format output.
	* symfile.c (print_symbol_loading): Delete.
	(symbol_file_add_with_addrs_or_offsets): Back out patch of 2008-07-10.
	Print "no debugging symbols found" only if from_tty || info_verbose;
	and only check file being loaded, not all files.
	(reread_symbols): Test file being loaded for whether it has symbols,
	not all files.
	(__initialize_symfile): Delete `set print symbol-loading'.
	* symfile.h (print_symbol_loading): Delete.

	* doc/gdb.texinfo (Symbols): Delete `set print symbol-loading'.
	(Files): Add note on new optional regex arg to `info sharedlibrary'.
2009-08-27 21:56:38 +00:00
Jan Kratochvil
4e22772d17 gdb/
* varobj.c (varobj_create): Error if the specified frame was not found
	and it is needed.

gdb/testsuite/
	* gdb.mi/mi2-var-cmd.exp (create variable with invalid FRAME-ADDR): New.
2009-08-27 06:33:25 +00:00
Michael Snyder
d691bec739 2009-08-22 Michael Snyder <msnyder@vmware.com>
* i386-tdep.c (i386_process_record): Break out of prefix loop
	if not amd64.  Otherwise inc/dec instructions are lost.
2009-08-26 23:59:19 +00:00
Keith Seitz
ec7f2efef8 * c-exp.y (yylex): Add cxx_only check for tokentab2 and tokentab3
searches.
	(tokentab3): Add cxx_only for DOT_STAR.
2009-08-25 18:40:45 +00:00
Pedro Alves
3a1ff0b639 gdb/
* inferior.c (print_inferior): Align columns left.  Remove header
	for the the "current" column.  Rename column "Id" to "Num".
	Rename column "PID" to "Description".  Print if there's no selected
	inferior.

	gdb/doc/
	* gdb.texinfo (Debugging Multiple Inferiors): Add "info inferiors"
	small example, and describe its columns.  Replace "inferior-id" by
	"infno" throughout.
2009-08-25 15:24:12 +00:00
Jan Kratochvil
924d6a4f7f gdb/
Fix ia64 start crash when GDB built with -lmcheck.
	* ia64-tdep.c (ia64_gdbarch_init): Allocate TDEP as cleared.  Remove
	specific clearing of TDEP SIGCONTEXT_REGISTER_ADDRESS and
	PC_IN_SIGTRAMP.
2009-08-25 14:06:47 +00:00
Keith Seitz
c1af96a0c5 * c-exp.y (tokentab3): Add new token, ARROW_STAR. Changed all users.
(tokentab2): Add new token, DOT_STAR. Changed all users.
2009-08-25 00:23:07 +00:00
Keith Seitz
95699ff037 * symtab.c (default_make_symbol_completion_list): Keep
':', too, so that we can limit searches in namespaces
	and classes.
2009-08-24 22:00:55 +00:00
Tom Tromey
f02779d8c5 * python/python-value.c (valpy_richcompare): Don't return from
inside a TRY_CATCH.
2009-08-24 18:55:21 +00:00
Paul Pluzhnikov
f93ea91d26 2009-08-21 Paul Pluzhnikov <ppluzhnikov@google.com>
* objfiles.h (gdb_bfd_ref): New prototype.
	* objfiles.c (gdb_bfd_ref): New function.
	(allocate_objfile): Call it.
	(gdb_bfd_unref): Adjust assertion.
	* solib.c (solib_map_sections): Add reference.
	(symbol_add_stub): Don't add reference here.
	* symfile.c (reread_symbols): Add reference.
2009-08-22 18:00:28 +00:00
Ralf Wildenhues
af542c2e31 Cleanups after the update to Autoconf 2.64, Automake 1.11.
/:
	* README-maintainer-mode: Point directly to upstream locations
	for autoconf, automake, libtool, gettext, instead of copies on
	sources.redhat.com.  Document required versions.
	* configure.ac: Do not substitute datarootdir, htmldir,
	pdfdir, docdir.  Do not process --with-datarootdir,
	--with-htmldir, --with-pdfdir, --with-docdir.
	* configure: Regenerate.

gdb/:
	* CONTRIBUTE: Bump documented Autoconf version.
	* configure.ac: Do not substitute datarootdir, htmldir,
	pdfdir, docdir.  Do not process --with-datarootdir,
	--with-htmldir, --with-pdfdir, --with-docdir.
	* configure: Regenerate.

gdb/doc/:
	* gdbint.texinfo (Releasing GDB): Point to
	README-maintainer-mode file for required autoconf version.
	* configure.ac: Do not substitute datarootdir, htmldir,
	pdfdir, docdir.  Do not process --with-datarootdir,
	--with-htmldir, --with-pdfdir, --with-docdir.
	* configure: Regenerate.

gprof/:
	* Makefile.am (pdf__strip_dir, install-pdf, install-pdf-am)
	(install-pdf-recursive, html__strip_dir, install-html)
	(install-html-am, install-html-recursive): Remove.
	* Makefile.in: Regenerate.

opcodes/:
	* Makefile.am (install-pdf, install-html): Remove.
	* Makefile.in: Regenerate.

gas/:
	* Makefile.am (install-pdf, install-pdf-recursive, install-html)
	(install-html-recursive): Remove.
	* Makefile.in: Regenerate.
	* doc/Makefile.am (pdf__strip_dir, install-pdf, install-pdf-am)
	(html__strip_dir, install-html, install-html-am): Remove.
	* doc/Makefile.in: Regenerate.

ld/:
	* Makefile.am (pdf__strip_dir, install-pdf, install-pdf-am)
	(install-pdf-recursive, html__strip_dir, install-html)
	(install-html-am, install-html-recursive): Remove.
	* Makefile.in: Regenerate.

binutils/:
	* Makefile.am (install-pdf, install-pdf-recursive, install-html)
	(install-html-recursive): Remove.
	* Makefile.in: Regenerate.
	* doc/Makefile.am (pdf__strip_dir, install-pdf, install-pdf-am)
	(html__strip_dir, install-html, install-html-am): Remove.
	* doc/Makefile.in: Regenerate.

bfd/:
	* Makefile.am (datarootdir, docdir, htmldor, pdfdir)
	(install-pdf, install-pdf-recursive, install-html)
	(install-html-recursive): Remove.
	* Makefile.in: Regenerate.

bfd/doc/:
	* Makefile.am (pdf__strip_dir, install-pdf, install-pdf-am)
	(html__strip_dir, install-html, install-html-am): Remove.
	* Makefile.in: Regenerate.
2009-08-22 17:08:11 +00:00
Ralf Wildenhues
81ecdfbb4d Regenerate tree using Autoconf 2.64 and Automake 1.11.
config/:
	* override.m4 (_GCC_AUTOCONF_VERSION): Bump to 2.64.

/:
	* configure: Regenerate.

etc/:
	* configure: Regenerate.

sim/common/:
	* config.in: Regenerate.
	* configure: Likewise.

sim/iq2000/:
	* config.in: Regenerate.
	* configure: Likewise.

sim/d10v/:
	* config.in: Regenerate.
	* configure: Likewise.

sim/igen/:
	* config.in: Regenerate.
	* configure: Likewise.

sim/m32r/:
	* config.in: Regenerate.
	* configure: Likewise.

sim/frv/:
	* config.in: Regenerate.
	* configure: Likewise.

sim/:
	* avr/config.in: Regenerate.
	* avr/configure: Likewise.
	* configure: Likewise.
	* cris/config.in: Likewise.
	* cris/configure: Likewise.

sim/h8300/:
	* config.in: Regenerate.
	* configure: Likewise.

sim/mn10300/:
	* config.in: Regenerate.
	* configure: Likewise.

sim/ppc/:
	* config.in: Regenerate.
	* configure: Likewise.

sim/erc32/:
	* config.in: Regenerate.
	* configure: Likewise.

sim/arm/:
	* config.in: Regenerate.
	* configure: Likewise.

sim/m68hc11/:
	* config.in: Regenerate.
	* configure: Likewise.

sim/lm32/:
	* config.in: Regenerate.
	* configure: Likewise.

sim/sh64/:
	* config.in: Regenerate.
	* configure: Likewise.

sim/v850/:
	* config.in: Regenerate.
	* configure: Likewise.

sim/cr16/:
	* config.in: Regenerate.
	* configure: Likewise.

sim/moxie/:
	* config.in: Regenerate.
	* configure: Likewise.

sim/m32c/:
	* config.in: Regenerate.
	* configure: Likewise.

sim/mips/:
	* config.in: Regenerate.
	* configure: Likewise.

sim/mcore/:
	* config.in: Regenerate.
	* configure: Likewise.

sim/testsuite/d10v-elf/:
	* configure: Regenerate.

sim/testsuite/:
	* configure: Regenerate.

sim/testsuite/frv-elf/:
	* configure: Regenerate.

sim/testsuite/m32r-elf/:
	* configure: Regenerate.

sim/testsuite/mips64el-elf/:
	* configure: Regenerate.

sim/sh/:
	* config.in: Regenerate.
	* configure: Likewise.

gold/:
	* Makefile.in: Regenerate.
	* aclocal.m4: Likewise.
	* config.in: Likewise.
	* configure: Likewise.
	* testsuite/Makefile.in: Likewise.

gprof/:
	* Makefile.in: Regenerate.
	* aclocal.m4: Likewise.
	* configure: Likewise.
	* gconfig.in: Likewise.

opcodes/:
	* Makefile.in: Regenerate.
	* aclocal.m4: Likewise.
	* config.in: Likewise.
	* configure: Likewise.

gas/:
	* Makefile.in: Regenerate.
	* aclocal.m4: Likewise.
	* config.in: Likewise.
	* configure: Likewise.
	* doc/Makefile.in: Likewise.

ld/:
	* Makefile.in: Regenerate.
	* aclocal.m4: Likewise.
	* config.in: Likewise.
	* configure: Likewise.

gdb/:
	* aclocal.m4: Regenerate.
	* config.in: Likewise.
	* configure: Likewise.
	* gnulib/Makefile.in: Likewise.

gdb/doc/:
	* configure: Regenerate.

gdb/gdbserver/:
	* aclocal.m4: Regenerate.
	* config.in: Likewise.
	* configure: Likewise.

gdb/testsuite/:
	* configure: Regenerate.
	* gdb.hp/configure: Likewise.
	* gdb.hp/gdb.aCC/configure: Likewise.
	* gdb.hp/gdb.base-hp/configure: Likewise.
	* gdb.hp/gdb.compat/configure: Likewise.
	* gdb.hp/gdb.defects/configure: Likewise.
	* gdb.hp/gdb.objdbg/configure: Likewise.
	* gdb.stabs/configure: Likewise.

binutils/:
	* Makefile.in: Regenerate.
	* aclocal.m4: Likewise.
	* config.in: Likewise.
	* configure: Likewise.
	* doc/Makefile.in: Likewise.

bfd/:
	* Makefile.in: Regenerate.
	* aclocal.m4: Likewise.
	* config.in: Likewise.
	* configure: Likewise.

bfd/doc/:
	* Makefile.in: Regenerate.

readline/:
	* configure: Regenerate.

readline/examples/rlfe/:
	* configure: Regenerate.
2009-08-22 16:56:56 +00:00