aboutsummaryrefslogtreecommitdiff
path: root/gdb/gdbserver
AgeCommit message (Collapse)AuthorFilesLines
2011-02-18gdbTom Tromey3-106/+30
* common/ax.def: New file. * ax.h (enum agent_op): Use ax.def. * ax-general.c (aop_map): Use ax.def. gdbserver * Makefile.in (tracepoint-ipa.o): Depend on ax.def. (tracepoint.o): Likewise. * tracepoint.c (enum gdb_agent_op): Use ax.def. (gdb_agent_op_names): Likewise.
2011-02-18gdbTom Tromey2-0/+30
* ax-general.c (aop_map): Add pick and rot. * dwarf2loc.c (compile_dwarf_to_ax) <DW_OP_over>: Reimplement. <DW_OP_rot>: Implement. * ax.h (enum agent_op) <aop_pick, aop_rot>: New constants. (ax_pick): Declare. * ax-general.c (ax_pick): New function. doc * agentexpr.texi (Bytecode Descriptions): Document pick and rot. gdbserver * tracepoint.c (enum gdb_agent_op) <gdb_agent_op_pick, gdb_agent_op_rot>: New constants. (gdb_agent_op_names): Add pick and roll. (eval_agent_expr) <gdb_agent_op_pick, gdb_agent_op_rot>: New cases.
2011-02-15gdb/Jan Kratochvil2-1/+5
* Makefile.in (ACLOCAL_AMFLAGS): Add `-I ../config'. * aclocal.m4: Regenerated with aclocal-1.11.1. * common/configure: Regenerate with autoconf-2.64. gdb/gdbserver/ * aclocal.m4: Regenerated with aclocal-1.11.1.
2011-02-14 gdb/Pedro Alves4-3/+176
* target.h (struct traceframe_info): Forward declare. (enum target_object): Add TARGET_OBJECT_TRACEFRAME_INFO. (struct target_ops) <to_traceframe_info>: New field. (target_traceframe_info): New. * target.c (update_current_target): Inherit and default to_traceframe_info. * remote.c (PACKET_qXfer_traceframe_info): New. (remote_protocol_features): Register qXfer:traceframe-info:read. (remote_xfer_partial): Handle TARGET_OBJECT_TRACEFRAME_INFO. (remote_traceframe_info): New. (init_remote_ops): Install it. (_initialize_remote): Install "set/show remote traceframe-info" commands. * tracepoint.h (parse_traceframe_info): Declare. * tracepoint.c (struct mem_range): New. (mem_range_s): New typedef. (struct traceframe_info): New. (traceframe_info): New global. (free_traceframe_info): New function. (clear_traceframe_info): New function. (start_tracing, tfind_1, set_traceframe_number): Clear traceframe info. (build_traceframe_info): New function. (tfile_traceframe_info): New function. (init_tfile_ops): Install tfile_traceframe_info. (traceframe_info_start_memory, free_result): New functions. (memory_attributes, traceframe_info_elements): New globals. (parse_traceframe_info, get_traceframe_info): New functions. * features/traceframe-info.dtd: New file. * Makefile.in (XMLFILES): Add traceframe-info.dtd. gdb/gdbserver/ * server.c (handle_qxfer_traceframe_info): New. (qxfer_packets): Register "traceframe-info". (handle_query): Report support for qXfer:traceframe-info:read+. * tracepoint.c (match_blocktype): New. (traceframe_find_block_type): Rename to ... (traceframe_walk_blocks): ... this. Add callback filter argument, and use it. (traceframe_find_block_type): New, reimplemented on top of traceframe_walk_blocks. (build_traceframe_info_xml): New. (traceframe_read_info): New. * server.h (traceframe_read_info): Declare. gdb/doc/ * gdb.texinfo (Remote Configuration): Mention set/show remote traceframe-info. (Tools/Packages Optional for Building GDB): Mention that expat is used for traceframe info. (Remote Protocol) <Menu>: Add "Traceframe Info Format". (General Query Packets) <qSupported>: Describe the qXfer:traceframe-info:read feature. (qXfer::read): Describe qXfer:traceframe-info:read. (Traceframe Info Format): New section.
2011-02-112011-02-11 Yao Qi <yao@codesourcery.com>Yao Qi4-6/+135
* Makefile.in: Remove signals.o from COMMON_OBS. Link libcommon.a. * configure.ac: Add common to sub dir. * configure: Regenerate. common/ 2011-02-11 Yao Qi <yao@codesourcery.com> Build libcommon.a. * Makefile.in: New. * configure.ac: New. * aclocal.m4: New. * configure: Generate. gdbserver/ 2011-02-11 Yao Qi <yao@codesourcery.com> * configure.ac: Call AC_PROG_RANLIB. * Makefile.in: Remove signals.o from OBS. Link libcommon.a. * configure: Regenerate.
2011-02-07 gdb/server/Pedro Alves3-20/+46
* server.c (gdb_read_memory): Change return semantics to allow partial transfers. (handle_search_memory_1): Adjust. (process_serial_event) <'m' packet>: Handle partial transfers. * tracepoint.c (traceframe_read_mem): Handle partial transfers. gdb/testsuite/ * gdb.trace/collection.c (global_pieces): New. * gdb.trace/collection.exp (gdb_collect_global_in_pieces_test): New procedure. (gdb_trace_collection_test): Call it.
2011-01-28 gdb/gdbserver/Pedro Alves5-10/+124
* regcache.c (init_register_cache): Initialize regcache->register_status. (free_register_cache): Release regcache->register_status. (regcache_cpy): Copy register_status. (registers_to_string): Print 'x's for unavailable registers. (supply_register): Mark the register's status valid or unavailable, depending on whether a buffer was passed in or not. (supply_register_zeroed): New. (supply_regblock): Mark the registers' status valid or unavailable, depending on whether a buffer was passed in or not. * regcache.h (REG_UNAVAILABLE, REG_VALID): New defines. (struct regcache): New `register_status' field. (supply_register_zeroed): Declare. * i387-fp.c (i387_xsave_to_cache): Zero out registers using supply_register_zeroed, rather than passing a NULL buffer to supply_register. * tracepoint.c (fetch_traceframe_registers): Update comment.
2011-01-282011-01-28 Pedro Alves <pedro@codesourcery.com>Pedro Alves2-27/+32
* i387-fp.c (i387_xsave_to_cache): Make passing NULL as register buffer explicit.
2011-01-252011-01-25 Pedro Alves <pedro@codesourcery.com>Pedro Alves4-427/+404
* server.h (decode_xfer_write): Change prototype. * remote-utils.c (decode_xfer_write): Remove `annex' parameter, and don't extract the annex here. * server.c (decode_xfer_read): Remove `annex' parameter, and don't extract the annex here. (decode_xfer): New. (struct qxfer): New. (handle_qxfer_auxv, handle_qxfer_features, handle_qxfer_libraries) (handle_qxfer_osdata, handle_qxfer_siginfo, handle_qxfer_spu) (handle_qxfer_statictrace): New functions, abstracted out from handle_query, and made to use the struct qxfer interface. (handle_threads_qxfer_proper): Rename to ... (handle_qxfer_threads_proper): ... this. (handle_threads_qxfer): Rename to ... (handle_qxfer_threads): ... this. Adjust. (qxfer_packets): New array. (handle_qxfer): New function. (handle_query): Use handle_qxfer.
2011-01-062011-01-05 Michael Snyder <msnyder@msnyder-server.eng.vmware.com>Michael Snyder18-66/+151
* gdbreplay.c: Shorten lines of >= 80 columns. * linux-low.c: Ditto. * linux-ppc-low.c: Ditto. * linux-s390-low.c: Ditto. * linux-sparc-low.c: Ditto. * linux-x86-low.c: Ditto. * linux-xtensa-low.c: Ditto. * mem-break.c: Ditto. * nto-low.c: Ditto. * regcache.h: Ditto. * remote-utils.c: Ditto. * server.c: Ditto. * server.h: Ditto. * thread-db.c: Ditto. * tracepoint.c: Ditto. * utils.c: Ditto. * win32-low.h: Ditto.
2011-01-05Update the copyright year for most remaining files in GDBJoel Brobecker3-2/+7
2011-01-01run copyright.sh for 2011.Joel Brobecker58-58/+62
2011-01-01Update copyright year in version of output (gdb/gdbserver/gdbreplay)Joel Brobecker3-2/+8
gdb/ChangeLog: * top.c (print_gdb_version): Update copyright year in version output. gdb/gdbserverChangeLog: * server.c (gdbserver_version): Update copyright year in version output. * gdbreplay.c (gdbreplay_version): Ditto.
2010-12-29gdbserver: bfin: new portMike Frysinger6-3/+136
Signed-off-by: Jie Zhang <jie.zhang@analog.com> Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2010-12-23gdbserver: start a gitignoreMike Frysinger2-0/+8
2010-11-16gdbserver: fix warning in nommu cloneMike Frysinger2-1/+5
Building gdbserver for nommu targets atm fails with: linux-low.c: In function 'linux_tracefork_child': linux-low.c:4151: error: pointer of type 'void *' used in arithmetic So cast the void* to a char*. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2010-10-21 * Makefile.in (install): Remove dependency of install-only andJie Zhang2-1/+41
recursively invoke make for install-only. * data-directory/Makefile.in: Add FLAGS_TO_PASS variable. (install): Pass FLAGS_TO_PASS when recursively make install-only. gdbserver/ * Makefile.in: Add FLAGS_TO_PASS variable. (install): Remove dependency of install-only and recursively invoke make for install-only.
2010-10-04* Makefile.in (uninstall): Use $(DESTDIR).Doug Evans2-1/+5
2010-09-24 PR gdb/11842Pedro Alves1-0/+2
gdb/ * amd64-linux-nat.c (compat_siginfo_from_siginfo) (siginfo_from_compat_siginfo): Also copy si_pid and si_uid when si_code is < 0. Check for si_code == SI_TIMER before checking for si_code < 0. gdb/gdbserver/ * linux-x86-low.c (compat_siginfo_from_siginfo) (siginfo_from_compat_siginfo): Also copy si_pid and si_uid when si_code is < 0. Check for si_code == SI_TIMER before checking for si_code < 0.
2010-09-24 gdb/Pedro Alves2-8/+19
* amd64-linux-nat.c (compat_siginfo_from_siginfo) (siginfo_from_compat_siginfo): Also copy si_pid and si_uid when si_code is < 0. Check for si_code == SI_TIMER before checking for si_code < 0. gdb/gdbserver/ * linux-x86-low.c (compat_siginfo_from_siginfo) (siginfo_from_compat_siginfo): Also copy si_pid and si_uid when si_code is < 0. Check for si_code == SI_TIMER before checking for si_code < 0.
2010-09-13Add support for x86 LynxOSJoel Brobecker3-0/+328
This patch adds support for x86 LynxOS (tested on LynxOS 5.0). gdb/gdbserver/ChangeLog: * lynx-i386-low.c: New file. * configure.srv: Add handling of i[34567]86-*-lynxos* targets.
2010-09-13[LynxOS] Remove handling of PTRACE_* values removed in Lynx5.Joel Brobecker2-40/+5
Some of the PTRACE_ macros/values were removed in LynxOS 5.x. Since we have not use them so far, the chances that we will use them one day are very small. So I decided to delete them. gdb/gdbserver/ChangeLog: * lynx-low.c (ptrace_request_to_str): Remove handling for request values that have been removed in LynxOS 5.x.
2010-09-13[LynxOS] Include sys/ptrace.h instead of ptrace.h.Joel Brobecker3-2/+7
This is one of the changes needed in order to build gdbserver on LynxOS 5.x. Really interesting: On LynxOS 4.x, there is a #warning when sys/ptrace.h is used (explaining that ptrace.h will be used instead), whereas this file was removed from LynxOS 5.x. The contents of sys/ptrace.h on 4.x (or at least the meat of it): #if defined(__GNUC__) || defined(__GNUG__) #if !defined(__NO_INCLUDE_WARN__) #warning Using <ptrace.h> instead of <sys/ptrace.h> #endif /* defined(__NO_INCLUDE_WARN__) */ #endif /* defined(__GNUC__) || defined(__GNUG__) */ #include <ptrace.h> The fix I went for, for now, is to just include <sys/ptrace.h> unconditionally. I could have done some configury, but we already have to build with -D__NO_INCLUDE_WARN__ to avoid the warnings anyway, and that's unvoidable, due to system includes themselves including the "wrong" header file. Since <sys/ptrace.h> seems to be the choice that was made for LynxOS, and since it works to include it on LynxOS 4.x, I think that's the simplest solution. gdb/gdbserver/ChangeLog: * lynx-low.c, lynx-ppc-low.c: Include <sys/ptrace.h> instead of <ptrace.h>
2010-09-09 * configure.ac: Add --enable-inprocess-agent option.Nathan Sidwell3-8/+59
* configure: Rebuilt.
2010-09-062010-09-06 Yao Qi <yao@codesourcery.com>Yao Qi4-14/+10
* linux-low.c (linux_kill): Remove unused variable. (linux_stabilize_threads): Likewise. * server.c (start_inferior): Likewise. (queue_stop_reply_callback): Likewise. * tracepoint.c (do_action_at_tracepoint): Likewise.
2010-09-062010-09-06 Yao Qi <yao@codesourcery.com>Yao Qi2-0/+8
* linux-low.c (maybe_move_out_of_jump_pad): Restore current_inferior on return.
2010-09-06gdb/Jan Kratochvil2-1/+5
* corelow.c (core_open): Use target_signal_from_host if CORE_GDBARCH is NULL. * fork-child.c (startup_inferior) <resume_signal>: Use enum target_signal type. * linux-nat.c (linux_nat_resume): Use target_signal_to_host before calling strsignal. Use enum target_signal type for saved_signo. (linux_handle_extended_wait) <signo>: Use enum target_signal type. (linux_nat_wait_1): Use enum target_signal type for signo. Use target_signal_to_host before calling strsignal. * remote-m32r-sdi.c (m32r_wait, m32r_detach): Replace 0 by TARGET_SIGNAL_0. gdb/gdbserver/ * target.c (mywait) <TARGET_WAITKIND_EXITED>: Fix to use INTEGER.
2010-09-06 * Makefile.in (install-only): Replace $IPA_DEPFILES withPedro Alves2-1/+6
"$(IPA_DEPFILES)".
2010-09-01gdbserver support for powerpc-lynxos (4.x)Joel Brobecker8-0/+1070
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-01Import vsnprintf from libiberty if not available.Joel Brobecker6-6/+65
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-01Generate regformats/rs6000/powerpc-32.datJoel Brobecker1-1/+4
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[gdbserver] Move malloc.h include to server.h.gdbadmin8-16/+16
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-01Put ChangeLog entries in the right ChangeLog file.gdbadmin1-0/+18
2010-09-01Compile memmem.o without -Werror.gdbadmin1-2/+9
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-01use xsnprintf instead of snprintf.gdbadmin7-17/+19
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-01include alloca.h if available.gdbadmin5-1/+222
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-08-28 * linux-low.c (__SIGRTMIN): Define if not already defined.Pedro Alves2-5/+59
(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 * linux-low.c (linux_stabilize_threads): Wrap debug output in aPedro Alves2-7/+14
debug_threads check. Avoid a linear search when not doing debug output.
2010-08-27 * event-loop.c (event_handle_func): Adjust to use gdb_fildes_t.Pedro Alves5-15/+54
(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-27Fix whitespace, tabs/spaces.Pedro Alves1-68/+68
2010-08-27 * configure.ac (build_warnings): Add -Wno-char-subscripts.Pedro Alves3-2/+7
* configure: Regenerate.
2010-08-27 * linux-low.c (linux_unprepare_to_access_memory): Rename to ...Pedro Alves8-13/+27
(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-26 * linux-low.c (linux_prepare_to_access_memory): New.Pedro Alves8-13/+128
(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 * Makefile.in (WARN_CFLAGS): Get it from configure.Pedro Alves1-0/+11
(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 * Makefile.in (WARN_CFLAGS): Get it from configure.Pedro Alves3-2/+114
(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 * mem-break.c [HAVE_MALLOC_H]: Include malloc.h.Pedro Alves2-0/+7
2010-08-26 * gdbreplay.c (remote_error): New.Pedro Alves4-11/+53
(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-25 * linux-low.c (linux_wait_1): Move non-debugging code out ofPedro Alves2-2/+8
`debug_threads' control.
2010-08-25 * linux-low.c (linux_wait_1): Don't set last_status here.Pedro Alves3-7/+47
* 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 PR threads/10729Pedro Alves7-47/+150
* linux-x86-low.c (update_debug_registers_callback): New. (i386_dr_low_set_addr): Use it. (i386_dr_low_get_addr): New. (i386_dr_low_set_control): Use update_debug_registers_callback. (i386_dr_low_get_control): New. (i386_dr_low_get_status): Adjust. * linux-low.c (linux_stop_lwp): New. * linux-low.h (linux_stop_lwp): Declare. * i386-low.c (I386_DR_GET_RW_LEN): Take the dr7 contents as argument instead of a i386_debug_reg_state. (I386_DR_WATCH_HIT): Take the dr6 contents as argument instead of a i386_debug_reg_state. (i386_insert_aligned_watchpoint): Adjust. (i386_remove_aligned_watchpoint): Adjust. (i386_low_stopped_data_address): Read the debug registers from the inferior instead of from the mirrors. * i386-low.h (struct i386_debug_reg_state): Extend comment. (i386_dr_low_get_addr): Declare. (i386_dr_low_get_control): Declare. (i386_dr_low_get_status): Change prototype. * win32-i386-low.c (dr_status_mirror, dr_control_mirror): New globals. (i386_dr_low_get_addr): New. (i386_dr_low_get_control): New. (i386_dr_low_get_status): Adjust prototype. Return dr_status_mirror. (i386_initial_stuff): Clear dr_status_mirror and dr_control_mirror. (i386_get_thread_context): Adjust. (i386_set_thread_context): Adjust. (i386_thread_added): Adjust.