Commit Graph

27068 Commits

Author SHA1 Message Date
Marc Khouzam f75d858b7c * mi/mi-main.c (mi_cmd_list_target_features): Add `reverse'
as a feature reported by -list-target-features.

       * gdb.texinfo (GDB/MI Miscellaneous Commands): Document new
       feature `reverse' output by -list-target-features.
2010-09-01 19:03:54 +00:00
Joel Brobecker 8ed54b31b3 gdbserver support for powerpc-lynxos (4.x)
This patch adds support for powerpc-lynxos.

gdbserver/ChangeLog:

        * gdbserver/lynx-low.c, gdbserver/lynx-low.h,
        gdbserver/lynx-ppc-low.c: New files.
        * Makefile.in (lynx_low_h): New variable.
        (lynx-low.o, lynx-ppc-low.o): New rules.
        * configure.ac: On LynxOS, link with -lnetinet.
        * configure.srv: Add handling of powerpc-*-lynxos* targets.
        * configure: regenerate.
2010-09-01 18:57:12 +00:00
Joel Brobecker bb0116a433 Import vsnprintf from libiberty if not available.
vasprintf and vsnprintf are not available on LynxOS, at least not on
version 4.0.0.  This patch updates the configury to import them from
libiberty if not available out of the box.

gdbserver/
        * Makefile.in (vasprintf.o, vsnprintf.o): New rules.
        * configure.ac: Add check for vasprintf and vsnprintf.
        * configure, config.in: Regenerate.
        * server.h (vasprintf, vsnprintf): Add conditional declarations.
2010-09-01 18:56:45 +00:00
Joel Brobecker 0482b03b6a Generate regformats/rs6000/powerpc-32.dat
I will need this description for the ppc-lynxos debugger where, AFAICT,
we only have access to the core GP and FP registers.  So this adds
powerpc-32 to the list of targets for which a .dat file needs  to be
generated.

2010-04-30  Joel Brobecker  <brobecker@adacore.com>

        * features/Makefile (WHICH): Add rs6000/powerpc-32.
        (powerpc-32.o, powerpc-32.c): New rules.
        (clean): Also remove powerpc-32.c.
        * regformats/rs6000/powerpc-32.dat: Generate.
2010-09-01 18:56:35 +00:00
gdbadmin a778ab81e8 [gdbserver] Move malloc.h include to server.h.
This patch moves all includes of malloc.h, which were introduced
purely to get access to alloca's declaration, to server.h, next
to the include of alloca.h.

There is one exception: gdbreplay.c, which does not include server.h.
In this case, the include of alloca.h was simply moved up a bit, next
to the include of malloc.h.

gdb/gdbserver/ChangeLog:

        * gdbreplay.c: Move include of alloca.h up, next to include of
        malloc.h.
        * server.h: Add include of malloc.h.
        * mem-break.c: Remove include of malloc.h.
        * server.c, tracepoint.c, utils.c, win32-low.c: Likewise.
2010-09-01 17:29:32 +00:00
gdbadmin 8b034a19a7 Put ChangeLog entries in the right ChangeLog file. 2010-09-01 17:27:51 +00:00
gdbadmin eff1410f2b Compile memmem.o without -Werror.
This reproduces the same approach as in GDB to allow us to build
specific files without -Werror.

gdb/gdbserver/ChangeLog:

        * Makefile.in (INTERNAL_CFLAGS_BASE): New variable. Extracted
        from INTERNAL_CFLAGS.
        (INTERNAL_WARN_CFLAGS): New variable.
        (INTERNAL_CFLAGS): Adjust, using INTERNAL_WARN_CFLAGS.
2010-09-01 01:56:04 +00:00
gdbadmin 6cebaf6e1a use xsnprintf instead of snprintf.
snprintf is not available on LynxOS, so I changed the calls to snprintf
to calls to xsnprintf, which should be strictly equivalent.

gdb/gdbserver/ChangeLog:

        * utils.c (xsnprintf): Make non-static.
        * server.h: Add xsnprintf declaration.
        * linux-low.c, nto-low.c, target.c, thread-db.c, tracepoint.c:
        replace calls to snprintf by calls to xsnprintf throughout.
2010-09-01 01:53:43 +00:00
gdbadmin a1723c35ac include alloca.h if available.
On LynxOS, alloca is defined in allocal.h.  This fixes one warning that
occurs when building GDBserver for LynxOS.

gdb/gdbserver/ChangeLog:

        * configure.ac: Add configure check for alloca.
        * configure, config.in: Regenerate.
        * server.h: Include alloca.h if it exists.
        * gdbreplay.c: Include alloca.h if it exists.
2010-09-01 01:51:07 +00:00
gdbadmin 86c80b5af0 *** empty log message *** 2010-09-01 00:00:34 +00:00
Sami Wagiaalla 710e1a31c4 Create and use a specialized bcache type for psymbols
2010-08-31  Sami Wagiaalla  <swagiaal@redhat.com>

	* symfile.c (reread_symbols): Use psymbol_bcache_free, and
	psymbol_bcache_init.
	* psymtab.h (psymbol_bcache_init): New function prototype.
	(psymbol_bcache_free): New function prototype.
	(psymbol_bcache_get_bcache): New function prototype.
	* psymtab.c (psymbol_bcache_init): New function.
	(psymbol_bcache_free): New function.
	(psymbol_bcache_full): New function.
	(psymbol_bcache_get_bcache): New function.
	(add_psymbol_to_bcache): use psymbol_bcache_full.
	* objfiles.h (psymbol_cache): Change type of psymbol_cache to
	psymbol_bcache.
	* symmisc.c (print_symbol_bcache_statistics): Updated.
	(print_objfile_statistics): Updated.
	* objfiles.c (allocate_objfile): Use psymbol_bcache_init to initialize
	psymbol_cache.
	(free_objfile): Use psymbol_bcache_free.
2010-08-31 20:10:42 +00:00
Tom Tromey 6438229074 PR c++/11961:
* dwarf2read.c (new_symbol_full) <DW_TAG_template_type_param>:
	Don't set TYPE_NAME on the type.
2010-08-31 20:03:20 +00:00
Michael Snyder 8bbed40521 2010-08-31 Michael Snyder <msnyder@msnyder-server.eng.vmware.com>
* infrun.c (set_exec_direction_func): Error out if target does not
	support reverse execution.
2010-08-31 19:31:00 +00:00
Doug Evans 0f254bb76b * gdb.dwarf2/dw4-sig-types.exp: Use .x for executable name. 2010-08-31 18:40:10 +00:00
Jan Kratochvil 06253dd31f gdb/
Make linux_get_siginfo_type `type *' unique.
	* linux-tdep.c (linux_gdbarch_data_handle, struct linux_gdbarch_data)
	(init_linux_gdbarch_data, get_linux_gdbarch_data): New.
	(linux_get_siginfo_type): New variable linux_gdbarch_data.  Initialize
	it.  Use linux_gdbarch_data->siginfo_type as a persistent storage.
	(_initialize_linux_tdep): New.
2010-08-31 18:11:48 +00:00
Jan Kratochvil b8edc417a7 gdb/
Code cleanup.
	* defs.h (find_memory_region_ftype): New typedef.
	(exec_set_find_memory_regions): Use it.
	* exec.c (exec_set_find_memory_regions): Use find_memory_region_ftype.
	* fbsd-nat.c (fbsd_find_memory_regions): Likewise.
	* gcore.c (objfile_find_memory_regions): Likewise.
	* gnu-nat.c (gnu_find_memory_regions): Likewise.
	* linux-nat.c (linux_nat_find_memory_regions): Likewise.
	* procfs.c (iterate_over_mappings_cb_ftype): Remove.
	(iterate_over_mappings): Rename iterate_over_mappings_cb_ftype to
	find_memory_region_ftype.
	(insert_dbx_link_bpt_in_region): Likewise.
	(iterate_over_mappings): Likewise.  Drop the comment part about the
	function prototype.
	(find_memory_regions_callback): Use find_memory_region_ftype.
	(proc_find_memory_regions): Likewise.
	(info_mappings_callback): Rename iterate_over_mappings_cb_ftype to
	find_memory_region_ftype.
	* target.c (dummy_find_memory_regions): Use find_memory_region_ftype.
	* target.h (struct target_ops) <to_find_memory_regions>: Likewise.
2010-08-31 18:08:43 +00:00
Sami Wagiaalla cbd7053759 Enable custom bcache hash function.
2010-08-25  Sami Wagiaalla  <swagiaal@redhat.com>

	* psymtab.c (add_psymbol_to_bcache): Remove 'static' from
	'static partial_symbol psymbol'.
	(psymbol_hash): New function.
	(psymbol_compare): New function.
	* bcache.c (hash_continue): New.
	(hash): Use hash_continue.
	* bcache.c: Add hash_function and compare_function
	pointers to bcache struct.
	(bcache_full): Use bcache->hash_function, and
	bcache->compare_function.
	(bcache_compare): New function.
	(bcache_xmalloc): Take hash_function and
	compare_function arguments and initialize the
	bcach's pointers.
	Updated comment.
	* objfiles.c (allocate_objfile): Updated.
	* symfile.c (reread_symbols): Updated.
	* python/py-type.c (typy_richcompare): Updated.
2010-08-31 17:26:08 +00:00
H.J. Lu 83b9503b40 Remove an extra "@item".
2010-08-31  H.J. Lu  <hongjiu.lu@intel.com>

	* gdb.texinfo (i386 Features): Remove an extra "@item".
2010-08-31 14:45:41 +00:00
gdbadmin 447394e370 *** empty log message *** 2010-08-31 00:00:34 +00:00
Tom Tromey 03f17ccfe1 gdb
2010-08-30  Andre Poenitz  <andre.poenitz@nokia.com>
	    Tom Tromey  <tromey@redhat.com>

	PR python/11792:
	* python/py-value.c (valpy_get_dynamic_type): New function.
	(value_object_getset): Add "dynamic_type".
	(valpy_get_type): Fail on error.
gdb/doc
	PR python/11792:
	* gdb.texinfo (Values From Inferior): Document dynamic_type.
gdb/testsuite
	PR python/11792:
	* gdb.python/py-value.exp (test_subscript_regression): Add
	dynamic_type test.
2010-08-30 20:28:31 +00:00
Daniel Jacobowitz 640617ad17 * gdb.cp/cpexprs.exp (test_breakpoint): Continue to test_function
instead of running to main.  Do not test the main function.
	* gdb/testsuite/gdb.cp/cpexprs.cc (main): Rename to test_function.
	Add new main.
2010-08-30 17:38:10 +00:00
Yao Qi 25b41d01ea 2010-08-30 Yao Qi <yao@codesourcery.com>
* arm-linux-tdep.c (arm_linux_sigreturn_return_addr): New.
	(arm_linux_syscall_next_pc): New.
	(arm_linux_copy_svc): Use arm_linux_sigreturn_return_addr instead.
	(arm_linux_init_abi): Initialize syscall_next_pc.
	* arm-tdep.c (thumb_get_next_pc_raw):  Get next pc of SWI in Thumb mode.
	(arm_get_next_pc_raw): Get next pc of SWI in ARM mode.
	* arm-tdep.h (struct gdbarch_tdep): Add a function pointer syscall_next_pc.
	Declare arm_frame_is_thumb.
2010-08-30 15:26:28 +00:00
Jan Kratochvil 5760d0ab88 gdb/
Code cleanup.
	* breakpoint.c (bpstat_alloc): Remove unused prototype.
	(bpstat_alloc): Change parameters cbs to bs_link_pointer.  Adjust the
	code.
	(bpstat_stop_status): Change root_bs into bs_head and bs_link.  Adjust
	calls of bpstat_alloc.  Remove explicit bs chain termination.
2010-08-30 09:49:12 +00:00
gdbadmin 48cb5944c5 *** empty log message *** 2010-08-30 00:00:34 +00:00
gdbadmin c832319536 *** empty log message *** 2010-08-29 00:00:03 +00:00
Pedro Alves 1a98136022 * linux-low.c (__SIGRTMIN): Define if not already defined.
(linux_create_inferior): Check for __ANDROID__ rather than
	__SIGRTMIN.
	(enqueue_one_deferred_signal): Don't requeue non-RT signals that
	are already deferred.
	(linux_wait_1): Check for __ANDROID__ rather than __SIGRTMIN.
	(linux_resume_one_thread): Don't queue a SIGSTOP if the lwp is
	stopped and already has a pending signal to report.
	(proceed_one_lwp): : Don't queue a SIGSTOP if the lwp already has
	a pending signal to report or is moving out of a jump pad.
	(linux_init_signals): Check for __ANDROID__ rather than
	__SIGRTMIN.
2010-08-28 14:51:29 +00:00
Pedro Alves b4d51a55f9 * linux-low.c (linux_stabilize_threads): Wrap debug output in a
debug_threads check.  Avoid a linear search when not doing debug
	output.
2010-08-28 14:03:27 +00:00
Jan Kratochvil 46a9699269 gdb/
Code cleanup.
	* linux-nat.c (pull_pid_from_list): Rename status to statusp.
	(my_waitpid): Likewise.
2010-08-28 08:38:25 +00:00
gdbadmin 36d359192c *** empty log message *** 2010-08-28 00:00:03 +00:00
Doug Evans 36374493cd * dwarf2read.c (dw2_require_line_header): Read from .debug_types
as appropriate.
2010-08-27 23:09:58 +00:00
Tom Tromey 8b93c54cd7 * dwarf2read.c (dwarf2_attach_fields_to_type): Don't set
TYPE_FIELD_IGNORE_BITS.
2010-08-27 21:03:39 +00:00
Doug Evans 16be1145cb * dwarf2read.c (dwarf2_per_objfile_free): Reorganize buffers to match
the order they're defined in.  munmap .debug_types buffer.
2010-08-27 16:37:03 +00:00
Pedro Alves ec48365dd8 * event-loop.c (event_handle_func): Adjust to use gdb_fildes_t.
(struct gdb_event) <fd>: Change type to gdb_fildes_t.
	(struct file_handler) <fd>: Change type to gdb_fildes_t.
	(process_event): Change local fd's type to gdb_fildes_t.
	(create_file_handler): Adjust prototype.
	(delete_file_handler): Adjust prototype.
	(handle_file_event): Adjust prototype.  Use pfildes.
	(create_file_event): Adjsut prototype.
	* remote-utils.c (remote_desc, listen_desc): Change type to
	gdb_fildes_t.
	* server.h: New gdb_fildes_t typedef.
	[USE_WIN32API]: Include winsock2.h.
	(delete_file_handler, add_file_handler): Adjust prototypes.
	(pfildes): Declare.
	* utils.c (pfildes): New.
2010-08-27 16:02:49 +00:00
Pedro Alves 889bf7c5fa Fix whitespace, tabs/spaces. 2010-08-27 12:02:20 +00:00
Pedro Alves 854d88f03d * configure.ac (build_warnings): Add -Wno-char-subscripts.
* configure: Regenerate.
2010-08-27 10:20:07 +00:00
Pedro Alves 0146f85bf7 * linux-low.c (linux_unprepare_to_access_memory): Rename to ...
(linux_done_accessing_memory): ... this.
	(linux_target_ops): Adjust.
	* linux-x86-low.c (x86_insert_point, x86_remove_point): Adjust.
	* nto-low.c (nto_target_ops): Adjust comment.
	* server.c (gdb_read_memory, gdb_write_memory): Adjust.
	* spu-low.c (spu_target_ops): Adjust comment.
	* target.h (target_ops): Rename unprepare_to_access_memory field
	to done_accessing_memory.
	(unprepare_to_access_memory): Rename to ...
	(done_accessing_memory): ... this.
2010-08-27 00:16:48 +00:00
gdbadmin 7854e87132 *** empty log message *** 2010-08-27 00:00:02 +00:00
Doug Evans e254ef6a5f * dwarf2read.c (dw2_require_full_path): Rename parameter cu to per_cu.
(dw2_forget_cached_source_info): Rename local cu to per_cu.
	(dw2_lookup_symtab, dw2_do_expand_symtabs_matching): Ditto.
	(dw2_print_stats, dw2_expand_all_symtabs): Ditto.
	(dw2_expand_symtabs_with_filename, dw2_find_symbol_file): Ditto.
	(dw2_find_symbol_file, dw2_expand_symtabs_matching): Ditto.
	(dw2_map_symbol_filenames, dwarf2_initialize_objfile): Ditto.
	(dwarf2_free_objfile, write_one_signatured_type): Ditto.
	(write_psymtabs_to_index): Ditto.
2010-08-26 23:36:53 +00:00
Pedro Alves 90d74c301f * linux-low.c (linux_prepare_to_access_memory): New.
(linux_unprepare_to_access_memory): New.
	(linux_target_ops): Install them.
	* server.c (read_memory): Rename to ...
	(gdb_read_memory): ... this.  Use
	prepare_to_access_memory/prepare_to_access_memory.
	(write_memory): Rename to ...
	(gdb_write_memory): ... this.  Use
	prepare_to_access_memory/prepare_to_access_memory.
	(handle_search_memory_1): Adjust.
	(process_serial_event): Adjust.
	* target.h (struct target_ops): New fields
	prepare_to_access_memory and unprepare_to_access_memory.
	(prepare_to_access_memory, unprepare_to_access_memory): New.
	* linux-x86-low.c (x86_insert_point, x86_remove_point): Use
	prepare_to_access_memory/prepare_to_access_memory.
	* nto-low.c (nto_target_ops): Adjust.
	* spu-low.c (spu_target_ops): Adjust.
	* win32-low.c (win32_target_ops): Adjust.
2010-08-26 23:17:22 +00:00
Pedro Alves ae53ffa4b6 * NEWS: Mention libthread_db debugging with core files. 2010-08-26 19:47:23 +00:00
Pedro Alves fd4679698a * Makefile.in (WARN_CFLAGS): Get it from configure.
(WERROR_CFLAGS): New.
	(INTERNAL_CFLAGS): Add WERROR_CFLAGS.
	* configure.ac: Introduce --enable-werror, which adds -Werror to
	the compiler command line.  Enabled by default.  Disable with
	--disable-werror.  Add -Wdeclaration-after-statement
	Wpointer-arith and -Wformat-nonliteral to warning flags.
	* configure: Regenerate.
2010-08-26 18:36:28 +00:00
Pedro Alves d4596a3d79 * Makefile.in (WARN_CFLAGS): Get it from configure.
(WERROR_CFLAGS): New.
	(INTERNAL_CFLAGS): Add WERROR_CFLAGS.
	* configure.ac: Introduce --enable-werror, which adds -Werror to
	the compiler command line.  Enabled by default.  Disable with
	--disable-werror.  Add -Wdeclaration-after-statement
	Wpointer-arith and -Wformat-nonliteral to warning flags.
        * configure: Regenerate.
2010-08-26 18:03:02 +00:00
Doug Evans c6da4ceffb * dwarf2read.c (dwarf2_build_include_psymtabs): Remove unnecessary
forward decl.  Pass pst->dirname to dwarf_decode_lines.
	(psymtab_include_file_name): New function.
	(dwarf_decode_lines): Call it.  Update comments.
2010-08-26 16:47:55 +00:00
Pedro Alves 331e2f5f98 * mem-break.c [HAVE_MALLOC_H]: Include malloc.h. 2010-08-26 16:47:05 +00:00
Pedro Alves e581f2b4a7 * gdbreplay.c (remote_error): New.
(gdbchar): New.
	(expect): Use gdbchar.  Check for error reading from GDB.
	Clarify sync error output.
	(play): Check for errors writing to GDB.
	* linux-low.c (sigchld_handler): Really ignore `write' errors.
	* remote-utils.c (getpkt): Check for errors writing to the remote
	descriptor.
2010-08-26 16:24:41 +00:00
Pedro Alves 2ed91d1b8b * gdb.mi/mi-nsmoribund.exp: Revert back to send_gdb/gdb_expect in
one test.
2010-08-26 14:53:45 +00:00
gdbadmin 5a714bba1c *** empty log message *** 2010-08-26 00:00:03 +00:00
Pedro Alves cd02d79dc8 * dwarf2read.c (inherit_abstract_dies): Handle origin die's
compilation unit being different from target die's.
2010-08-25 18:20:07 +00:00
Pedro Alves 3c11dd799b * linux-low.c (linux_wait_1): Move non-debugging code out of
`debug_threads' control.
2010-08-25 16:49:04 +00:00
Pedro Alves d20a8ad9c0 * linux-low.c (linux_wait_1): Don't set last_status here.
* server.c (push_event, queue_stop_reply_callback): Assert we're
	not pushing a TARGET_WAITKIND_IGNORE event.
	(start_inferior, start_inferior, attach_inferior, handle_v_cont)
	(myresume, handle_target_event): Set the thread's last_resume_kind
	and last_status from the target returned status.
2010-08-25 16:27:05 +00:00