From 68c50e1ca2a2c0f4b99a40f60a496336be70bc8a Mon Sep 17 00:00:00 2001 From: Koen Vandeputte Date: Mon, 14 Oct 2019 16:09:08 +0200 Subject: [PATCH] toolchain/gdb: bump to 8.3.1 GDB 8.3.1 brings the following fixes and enhancements over GDB 8.3: PR c++/20020 (GDB segfault on printing objects) PR gdb/24454 (nat/x86-linux-dregs.c failed assertion) PR breakpoints/24541 (Incorrect evaluation of systemtap probes due to register being signed and probe expression assuming unsigned) PR symtab/24545 (Symbol loading performance regression with cc1) PR gdb/24592 (amd64->i386 linux syscall restart problem) PR gdb/25009 (terminate called after throwing an instance of 'srchilite::ParserException') PR gdb/25010 (Calls to error () can cause SIGTTOU to send gdb to the background) PR breakpoints/25011 (Breakpoints on file reloads broken for PIE binaries) This corrective release also brings the following testsuite fixes and enhancements: PR testsuite/25005 (gdb-caching-proc.exp takes a lot of time on skip_opencl_tests) PR testsuite/25016 (Test-case failures for -pie) GDB 8.3 includes the following changes and enhancements: * Support for new native configurations (also available as a target configuration): - RISC-V GNU/Linux (riscv*-*-linux*) - RISC-V FreeBSD (riscv*-*-freebsd*) * Support for new target configurations: - CSKY ELF (csky*-*-elf) - CSKY GNU/Linux (csky*-*-linux) - NXP S12Z ELF (s12z-*-elf) - OpenRISC GNU/Linux (or1k*-*-linux*) * Native Windows debugging is only supported on Windows XP or later. * The Python API in GDB now requires Python 2.6 or later. * GDB now supports terminal styling for the CLI and TUI. Source highlighting is also supported by building GDB with GNU Highlight. * Experimental support for compilation and injection of C++ source code into the inferior (requires GCC 7.1 or higher, built with libcp1.so). * GDB and GDBserver now support IPv6 connections. * Target description support on RISC-V targets. * Various enhancements to several commands: - "frame", "select-frame" and "info frame" commands - "info functions", "info types", "info variables" - "info thread" - "info proc" - System call alias catchpoint support on FreeBSD - "target remote" support for Unix Domain sockets. * Support for displaying all files opened by a process * DWARF index cache: GDB can now automatically save indices of DWARF symbols on disk to speed up further loading of the same binaries. * Various GDB/MI enhancements. * GDBserver on PowerPC GNU/Linux now supports access to the PPR, DSCR, TAR, EBB/PMU, and HTM registers. * Ada task switching support when debugging programs built with the Ravenscar profile added to aarch64-elf. * GDB in batch mode now exits with status 1 if the last executed command failed. * Support for building GDB with GCC's Undefined Behavior Sanitizer. Signed-off-by: Koen Vandeputte --- toolchain/gdb/Makefile | 4 ++-- toolchain/gdb/patches/100-no_extern_inline.patch | 12 ++---------- toolchain/gdb/patches/110-no_testsuite.patch | 6 +++--- .../gdb/patches/120-fix-compile-flag-mismatch.patch | 2 +- 4 files changed, 8 insertions(+), 16 deletions(-) diff --git a/toolchain/gdb/Makefile b/toolchain/gdb/Makefile index 3b884f9e79..41ba9853fd 100644 --- a/toolchain/gdb/Makefile +++ b/toolchain/gdb/Makefile @@ -17,11 +17,11 @@ PKG_HASH:=7e3c2a763bf500a40c5c4591a7e22c591dafc1f214b1d514895c1096e85c883a GDB_DIR:=binutils-$(PKG_NAME)-$(PKG_VERSION) PATCH_DIR:=./patches-arc else -PKG_VERSION:=8.2.1 +PKG_VERSION:=8.3.1 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz PKG_SOURCE_URL:=@GNU/gdb -PKG_HASH:=0a6a432907a03c5c8eaad3c3cffd50c00a40c3a5e3c4039440624bae703f2202 +PKG_HASH:=1e55b4d7cdca7b34be12f4ceae651623aa73b2fd640152313f9f66a7149757c4 GDB_DIR:=$(PKG_NAME)-$(PKG_VERSION) endif diff --git a/toolchain/gdb/patches/100-no_extern_inline.patch b/toolchain/gdb/patches/100-no_extern_inline.patch index 8c18c6e2e7..4036f70301 100644 --- a/toolchain/gdb/patches/100-no_extern_inline.patch +++ b/toolchain/gdb/patches/100-no_extern_inline.patch @@ -1,24 +1,16 @@ --- a/sim/common/sim-arange.c +++ b/sim/common/sim-arange.c -@@ -280,11 +280,7 @@ sim_addr_range_delete (ADDR_RANGE *ar, a +@@ -277,9 +277,7 @@ sim_addr_range_delete (ADDR_RANGE *ar, a build_search_tree (ar); } --#endif /* DEFINE_NON_INLINE_P */ -- --#if DEFINE_INLINE_P +-#else /* SIM_ARANGE_C_INCLUDED */ - -SIM_ARANGE_INLINE int +int sim_addr_range_hit_p (ADDR_RANGE *ar, address_word addr) { ADDR_RANGE_TREE *t = ar->range_tree; -@@ -301,4 +297,4 @@ sim_addr_range_hit_p (ADDR_RANGE *ar, ad - return 0; - } - --#endif /* DEFINE_INLINE_P */ -+#endif /* DEFINE_NON_INLINE_P */ --- a/sim/common/sim-arange.h +++ b/sim/common/sim-arange.h @@ -73,7 +73,7 @@ extern void sim_addr_range_delete (ADDR_ diff --git a/toolchain/gdb/patches/110-no_testsuite.patch b/toolchain/gdb/patches/110-no_testsuite.patch index bcb10e69b4..f4a2cde5c8 100644 --- a/toolchain/gdb/patches/110-no_testsuite.patch +++ b/toolchain/gdb/patches/110-no_testsuite.patch @@ -1,16 +1,16 @@ --- a/gdb/configure +++ b/gdb/configure -@@ -915,8 +915,7 @@ MAKEINFOFLAGS +@@ -918,8 +918,7 @@ MAKEINFOFLAGS YACC YFLAGS XMKMF' -ac_subdirs_all='testsuite -gdbtk +ac_subdirs_all='gdbtk - multi-ice gdbserver' -@@ -6577,7 +6576,7 @@ $as_echo "$with_auto_load_safe_path" >&6 + # Initialize some variables set by options. +@@ -6628,7 +6627,7 @@ $as_echo "$with_auto_load_safe_path" >&6 diff --git a/toolchain/gdb/patches/120-fix-compile-flag-mismatch.patch b/toolchain/gdb/patches/120-fix-compile-flag-mismatch.patch index d971e28d88..2b6610673c 100644 --- a/toolchain/gdb/patches/120-fix-compile-flag-mismatch.patch +++ b/toolchain/gdb/patches/120-fix-compile-flag-mismatch.patch @@ -1,6 +1,6 @@ --- a/gdb/gdbserver/configure +++ b/gdb/gdbserver/configure -@@ -2508,7 +2508,7 @@ $as_echo "$as_me: error: \`$ac_var' was +@@ -2511,7 +2511,7 @@ $as_echo "$as_me: error: \`$ac_var' was ac_cache_corrupted=: ;; ,);; *)