mirror of
https://sourceware.org/git/binutils-gdb.git
synced 2024-12-21 04:42:53 +08:00
9accd112a6
We define the following packets: Qbtrace:bts enable branch tracing for the current thread returns "OK" or "Enn" Qbtrace:off disable branch tracing for the current thread returns "OK" or "Enn" qXfer:btrace:read read the full branch trace data for the current thread gdb/ * target.h (enum target_object): Add TARGET_OBJECT_BTRACE. * remote.c: Include btrace.h. (struct btrace_target_info): New struct. (remote_supports_btrace): New function. (send_Qbtrace): New function. (remote_enable_btrace): New function. (remote_disable_btrace): New function. (remote_teardown_btrace): New function. (remote_read_btrace): New function. (init_remote_ops): Add btrace ops. (enum <unnamed>): Add btrace packets. (struct protocol_feature remote_protocol_features[]): Add btrace packets. (_initialize_remote): Add packet configuration for branch tracing. gdbserver/ * target.h (struct target_ops): Add btrace ops. (target_supports_btrace): New macro. (target_enable_btrace): New macro. (target_disable_btrace): New macro. (target_read_btrace): New macro. * gdbthread.h (struct thread_info): Add btrace field. * server.c: Include btrace-common.h. (handle_btrace_general_set): New function. (handle_btrace_enable): New function. (handle_btrace_disable): New function. (handle_general_set): Call handle_btrace_general_set. (handle_qxfer_btrace): New function. (struct qxfer qxfer_packets[]): Add btrace entry. * inferiors.c (remove_thread): Disable btrace. * linux-low: Include linux-btrace.h. (linux_low_enable_btrace): New function. (linux_low_read_btrace): New function. (linux_target_ops): Add btrace ops. * configure.srv (i[34567]86-*-linux*): Add linux-btrace.o. Add srv_linux_btrace=yes. (x86_64-*-linux*): Add linux-btrace.o. Add srv_linux_btrace=yes. * configure.ac: Define HAVE_LINUX_BTRACE. * config.in: Regenerated. * configure: Regenerated.
315 lines
8.4 KiB
Plaintext
315 lines
8.4 KiB
Plaintext
/* config.in. Generated from configure.ac by autoheader. */
|
|
|
|
/* Define to one of `_getb67', `GETB67', `getb67' for Cray-2 and Cray-YMP
|
|
systems. This function is required for `alloca.c' support on those systems.
|
|
*/
|
|
#undef CRAY_STACKSEG_END
|
|
|
|
/* Define to 1 if using `alloca.c'. */
|
|
#undef C_ALLOCA
|
|
|
|
/* Define to 1 if you have `alloca', as a function or macro. */
|
|
#undef HAVE_ALLOCA
|
|
|
|
/* Define to 1 if you have <alloca.h> and it should be used (not on Ultrix).
|
|
*/
|
|
#undef HAVE_ALLOCA_H
|
|
|
|
/* Define to 1 if you have the <arpa/inet.h> header file. */
|
|
#undef HAVE_ARPA_INET_H
|
|
|
|
/* Define to 1 if you have the declaration of `ADDR_NO_RANDOMIZE', and to 0 if
|
|
you don't. */
|
|
#undef HAVE_DECL_ADDR_NO_RANDOMIZE
|
|
|
|
/* Define to 1 if you have the declaration of `perror', and to 0 if you don't.
|
|
*/
|
|
#undef HAVE_DECL_PERROR
|
|
|
|
/* Define to 1 if you have the declaration of `strerror', and to 0 if you
|
|
don't. */
|
|
#undef HAVE_DECL_STRERROR
|
|
|
|
/* Define to 1 if you have the declaration of `strstr', and to 0 if you don't.
|
|
*/
|
|
#undef HAVE_DECL_STRSTR
|
|
|
|
/* Define to 1 if you have the declaration of `vasprintf', and to 0 if you
|
|
don't. */
|
|
#undef HAVE_DECL_VASPRINTF
|
|
|
|
/* Define to 1 if you have the declaration of `vsnprintf', and to 0 if you
|
|
don't. */
|
|
#undef HAVE_DECL_VSNPRINTF
|
|
|
|
/* Define to 1 if you have the <dirent.h> header file, and it defines `DIR'.
|
|
*/
|
|
#undef HAVE_DIRENT_H
|
|
|
|
/* Define to 1 if you have the `dladdr' function. */
|
|
#undef HAVE_DLADDR
|
|
|
|
/* Define to 1 if the system has the type `Elf32_auxv_t'. */
|
|
#undef HAVE_ELF32_AUXV_T
|
|
|
|
/* Define to 1 if the system has the type `Elf64_auxv_t'. */
|
|
#undef HAVE_ELF64_AUXV_T
|
|
|
|
/* Define if <sys/procfs.h> has elf_fpregset_t. */
|
|
#undef HAVE_ELF_FPREGSET_T
|
|
|
|
/* Define if errno is available */
|
|
#undef HAVE_ERRNO
|
|
|
|
/* Define to 1 if you have the <errno.h> header file. */
|
|
#undef HAVE_ERRNO_H
|
|
|
|
/* Define to 1 if you have the <fcntl.h> header file. */
|
|
#undef HAVE_FCNTL_H
|
|
|
|
/* Define to 1 if you have the <inttypes.h> header file. */
|
|
#undef HAVE_INTTYPES_H
|
|
|
|
/* Define to 1 if you have the `dl' library (-ldl). */
|
|
#undef HAVE_LIBDL
|
|
|
|
/* Define if the target supports branch tracing. */
|
|
#undef HAVE_LINUX_BTRACE
|
|
|
|
/* Define to 1 if you have the <linux/elf.h> header file. */
|
|
#undef HAVE_LINUX_ELF_H
|
|
|
|
/* Define to 1 if you have the <linux/perf_event.h> header file. */
|
|
#undef HAVE_LINUX_PERF_EVENT_H
|
|
|
|
/* Define if the target supports register sets. */
|
|
#undef HAVE_LINUX_REGSETS
|
|
|
|
/* Define if the target supports PTRACE_PEEKUSR for register access. */
|
|
#undef HAVE_LINUX_USRREGS
|
|
|
|
/* Define if <thread_db.h> has lwpid_t. */
|
|
#undef HAVE_LWPID_T
|
|
|
|
/* Define to 1 if you have the <malloc.h> header file. */
|
|
#undef HAVE_MALLOC_H
|
|
|
|
/* Define to 1 if you have the <memory.h> header file. */
|
|
#undef HAVE_MEMORY_H
|
|
|
|
/* Define to 1 if you have the <ndir.h> header file, and it defines `DIR'. */
|
|
#undef HAVE_NDIR_H
|
|
|
|
/* Define to 1 if you have the <netdb.h> header file. */
|
|
#undef HAVE_NETDB_H
|
|
|
|
/* Define to 1 if you have the <netinet/in.h> header file. */
|
|
#undef HAVE_NETINET_IN_H
|
|
|
|
/* Define to 1 if you have the <netinet/tcp.h> header file. */
|
|
#undef HAVE_NETINET_TCP_H
|
|
|
|
/* Define if you support the personality syscall. */
|
|
#undef HAVE_PERSONALITY
|
|
|
|
/* Define to 1 if you have the `pread' function. */
|
|
#undef HAVE_PREAD
|
|
|
|
/* Define to 1 if you have the `pread64' function. */
|
|
#undef HAVE_PREAD64
|
|
|
|
/* Define if <sys/procfs.h> has prgregset_t. */
|
|
#undef HAVE_PRGREGSET_T
|
|
|
|
/* Define to 1 if you have the <proc_service.h> header file. */
|
|
#undef HAVE_PROC_SERVICE_H
|
|
|
|
/* Define if <thread_db.h> has psaddr_t. */
|
|
#undef HAVE_PSADDR_T
|
|
|
|
/* Define if the target supports PTRACE_GETFPXREGS for extended register
|
|
access. */
|
|
#undef HAVE_PTRACE_GETFPXREGS
|
|
|
|
/* Define if the target supports PTRACE_GETREGS for register access. */
|
|
#undef HAVE_PTRACE_GETREGS
|
|
|
|
/* Define to 1 if you have the `pwrite' function. */
|
|
#undef HAVE_PWRITE
|
|
|
|
/* Define to 1 if you have the `readlink' function. */
|
|
#undef HAVE_READLINK
|
|
|
|
/* Define to 1 if you have the <sgtty.h> header file. */
|
|
#undef HAVE_SGTTY_H
|
|
|
|
/* Define to 1 if you have the <signal.h> header file. */
|
|
#undef HAVE_SIGNAL_H
|
|
|
|
/* Define to 1 if the system has the type `socklen_t'. */
|
|
#undef HAVE_SOCKLEN_T
|
|
|
|
/* Define to 1 if you have the <stdint.h> header file. */
|
|
#undef HAVE_STDINT_H
|
|
|
|
/* Define to 1 if you have the <stdlib.h> header file. */
|
|
#undef HAVE_STDLIB_H
|
|
|
|
/* Define to 1 if you have the <strings.h> header file. */
|
|
#undef HAVE_STRINGS_H
|
|
|
|
/* Define to 1 if you have the <string.h> header file. */
|
|
#undef HAVE_STRING_H
|
|
|
|
/* Define to 1 if the target supports __sync_*_compare_and_swap */
|
|
#undef HAVE_SYNC_BUILTINS
|
|
|
|
/* Define to 1 if you have the <sys/dir.h> header file, and it defines `DIR'.
|
|
*/
|
|
#undef HAVE_SYS_DIR_H
|
|
|
|
/* Define to 1 if you have the <sys/file.h> header file. */
|
|
#undef HAVE_SYS_FILE_H
|
|
|
|
/* Define to 1 if you have the <sys/ioctl.h> header file. */
|
|
#undef HAVE_SYS_IOCTL_H
|
|
|
|
/* Define to 1 if you have the <sys/ndir.h> header file, and it defines `DIR'.
|
|
*/
|
|
#undef HAVE_SYS_NDIR_H
|
|
|
|
/* Define to 1 if you have the <sys/procfs.h> header file. */
|
|
#undef HAVE_SYS_PROCFS_H
|
|
|
|
/* Define to 1 if you have the <sys/reg.h> header file. */
|
|
#undef HAVE_SYS_REG_H
|
|
|
|
/* Define to 1 if you have the <sys/socket.h> header file. */
|
|
#undef HAVE_SYS_SOCKET_H
|
|
|
|
/* Define to 1 if you have the <sys/stat.h> header file. */
|
|
#undef HAVE_SYS_STAT_H
|
|
|
|
/* Define to 1 if you have the <sys/types.h> header file. */
|
|
#undef HAVE_SYS_TYPES_H
|
|
|
|
/* Define to 1 if you have the <sys/un.h> header file. */
|
|
#undef HAVE_SYS_UN_H
|
|
|
|
/* Define to 1 if you have the <sys/wait.h> header file. */
|
|
#undef HAVE_SYS_WAIT_H
|
|
|
|
/* Define if TD_VERSION is available. */
|
|
#undef HAVE_TD_VERSION
|
|
|
|
/* Define to 1 if you have the <termios.h> header file. */
|
|
#undef HAVE_TERMIOS_H
|
|
|
|
/* Define to 1 if you have the <termio.h> header file. */
|
|
#undef HAVE_TERMIO_H
|
|
|
|
/* Define to 1 if you have the <thread_db.h> header file. */
|
|
#undef HAVE_THREAD_DB_H
|
|
|
|
/* Define to 1 if you have the <unistd.h> header file. */
|
|
#undef HAVE_UNISTD_H
|
|
|
|
/* Define if UST is available */
|
|
#undef HAVE_UST
|
|
|
|
/* Define to 1 if you have the `vasprintf' function. */
|
|
#undef HAVE_VASPRINTF
|
|
|
|
/* Define to 1 if you have the `vsnprintf' function. */
|
|
#undef HAVE_VSNPRINTF
|
|
|
|
/* Define to 1 if you have the <wait.h> header file. */
|
|
#undef HAVE_WAIT_H
|
|
|
|
/* Checking if errno must be defined */
|
|
#undef MUST_DEFINE_ERRNO
|
|
|
|
/* Define to the address where bug reports for this package should be sent. */
|
|
#undef PACKAGE_BUGREPORT
|
|
|
|
/* Define to the full name of this package. */
|
|
#undef PACKAGE_NAME
|
|
|
|
/* Define to the full name and version of this package. */
|
|
#undef PACKAGE_STRING
|
|
|
|
/* Define to the one symbol short name of this package. */
|
|
#undef PACKAGE_TARNAME
|
|
|
|
/* Define to the home page for this package. */
|
|
#undef PACKAGE_URL
|
|
|
|
/* Define to the version of this package. */
|
|
#undef PACKAGE_VERSION
|
|
|
|
/* Additional package description */
|
|
#undef PKGVERSION
|
|
|
|
/* Bug reporting address */
|
|
#undef REPORT_BUGS_TO
|
|
|
|
/* If using the C implementation of alloca, define if you know the
|
|
direction of stack growth for your system; otherwise it will be
|
|
automatically deduced at runtime.
|
|
STACK_DIRECTION > 0 => grows toward higher addresses
|
|
STACK_DIRECTION < 0 => grows toward lower addresses
|
|
STACK_DIRECTION = 0 => direction of growth unknown */
|
|
#undef STACK_DIRECTION
|
|
|
|
/* Define to 1 if you have the ANSI C header files. */
|
|
#undef STDC_HEADERS
|
|
|
|
/* Define if we should use libthread_db directly. */
|
|
#undef USE_LIBTHREAD_DB_DIRECTLY
|
|
|
|
/* Enable extensions on AIX 3, Interix. */
|
|
#ifndef _ALL_SOURCE
|
|
# undef _ALL_SOURCE
|
|
#endif
|
|
/* Enable GNU extensions on systems that have them. */
|
|
#ifndef _GNU_SOURCE
|
|
# undef _GNU_SOURCE
|
|
#endif
|
|
/* Enable threading extensions on Solaris. */
|
|
#ifndef _POSIX_PTHREAD_SEMANTICS
|
|
# undef _POSIX_PTHREAD_SEMANTICS
|
|
#endif
|
|
/* Enable extensions on HP NonStop. */
|
|
#ifndef _TANDEM_SOURCE
|
|
# undef _TANDEM_SOURCE
|
|
#endif
|
|
/* Enable general extensions on Solaris. */
|
|
#ifndef __EXTENSIONS__
|
|
# undef __EXTENSIONS__
|
|
#endif
|
|
|
|
|
|
/* Define if we should use the Windows API, instead of the POSIX API. On
|
|
Windows, we use the Windows API when building for MinGW, but the POSIX API
|
|
when building for Cygwin. */
|
|
#undef USE_WIN32API
|
|
|
|
/* Define if an XML target description is available. */
|
|
#undef USE_XML
|
|
|
|
/* Number of bits in a file offset, on hosts where this is settable. */
|
|
#undef _FILE_OFFSET_BITS
|
|
|
|
/* Define for large files, on AIX-style hosts. */
|
|
#undef _LARGE_FILES
|
|
|
|
/* Define to 1 if on MINIX. */
|
|
#undef _MINIX
|
|
|
|
/* Define to 2 if the system does not provide POSIX.1 features except with
|
|
this defined. */
|
|
#undef _POSIX_1_SOURCE
|
|
|
|
/* Define to 1 if you need to in order for `stat' and other things to work. */
|
|
#undef _POSIX_SOURCE
|