gdb/gdb-7.2.50-sparc-add-workaround-to-broken-debug-files.patch
Michael Matz e7db4ec014 - Rebase to 8.1 release:
* ptype/o prints offsets and sizes of members (like pahole)
  * tab-completion improved: quoting function names is not generally
    necessary anymore, completion offers for breakpoint don't include
    data symbol
  * enable/disable breakpoints now accept ranges: 'disable 1.3-5'
  * new commands:
    - set/show cwd: working directory of debuggee
    - set/show compile-gcc: program to use for 'compile' command
    - starti: start program and stop at first instruction
    - TUI single-key commands: 'i' for stepi and 'o' for nexti
  * --readnever option disables any reading of debug info (for dumping)
  * s390: guarded storage register access for z14
  * gcore option -a dumps all memory mapping
  * C++ breakpoints: 'b foo' will now set a breakpoint on all functions
    and methods named 'foo' no matter the scope.  Use -qualified if you
    don't want that
  * python scripting: new events gdb.new_inferior, gdb.inferior_deleted
    and gdb.new_thread; new command rbreak (breakpoint accepting regexps)
  * gdbserver can be passed environment parameters to remote debuggee
- Added patches from Fedora:
  gdb-ppc64-stwux-tautological-compare.patch
  gdb-rhbz1540559-gdbaddindex-glibcdebug-regression.patch
  gdb-vla-intel-fix-print-char-array.patch
- Removed unused gdb-libstdc++-v3-python-7.1.1-20170526.tar.bz2
- Removed obsolete upstream patches:
  gdb-s390x-1b63490.patch
  gdb-s390x-289e23a.patch
  gdb-s390x-8fe09d7.patch
  gdb-s390x-96235dc.patch

OBS-URL: https://build.opensuse.org/package/show/devel:gcc/gdb?expand=0&rev=177
2018-03-09 16:46:37 +00:00

78 lines
2.1 KiB
Diff

From FEDORA_PATCHES Mon Sep 17 00:00:00 2001
From: Fedora GDB patches <invalid@email.com>
Date: Fri, 27 Oct 2017 21:07:50 +0200
Subject: gdb-7.2.50-sparc-add-workaround-to-broken-debug-files.patch
FileName: gdb-7.2.50-sparc-add-workaround-to-broken-debug-files.patch
;; Toolchain on sparc is slightly broken and debuginfo files are generated
;; with non 64bit aligned tables/offsets.
;; See for example readelf -S ../Xvnc.debug.
;;
;; As a consenquence calculation of sectp->filepos as used in
;; dwarf2_read_section (gdb/dwarf2read.c:1525) will return a non aligned buffer
;; that cannot be used directly as done with MMAP.
;; Usage will result in a BusError.
;;
;; While we figure out what's wrong in the toolchain and do a full archive
;; rebuild to fix it, we need to be able to use gdb :)
;;=push
---
gdb/gdb_bfd.c | 6 ++++++
1 file changed, 6 insertions(+)
diff --git a/gdb/gdb_bfd.c b/gdb/gdb_bfd.c
index 80ddd427af..3e4d3e4444 100644
--- a/gdb/gdb_bfd.c
+++ b/gdb/gdb_bfd.c
@@ -24,12 +24,14 @@
#include "hashtab.h"
#include "filestuff.h"
#include "vec.h"
+#ifndef __sparc__
#ifdef HAVE_MMAP
#include <sys/mman.h>
#ifndef MAP_FAILED
#define MAP_FAILED ((void *) -1)
#endif
#endif
+#endif
#include "target.h"
#include "gdb/fileio.h"
#include "inferior.h"
@@ -484,6 +486,7 @@ free_one_bfd_section (bfd *abfd, asection *sectp, void *ignore)
if (sect != NULL && sect->data != NULL)
{
+#ifndef __sparc__
#ifdef HAVE_MMAP
if (sect->map_addr != NULL)
{
@@ -493,6 +496,7 @@ free_one_bfd_section (bfd *abfd, asection *sectp, void *ignore)
gdb_assert (res == 0);
}
else
+#endif
#endif
xfree (sect->data);
}
@@ -659,6 +663,7 @@ gdb_bfd_map_section (asection *sectp, bfd_size_type *size)
if (descriptor->data != NULL)
goto done;
+#ifndef __sparc__
#ifdef HAVE_MMAP
if (!bfd_is_section_compressed (abfd, sectp))
{
@@ -693,6 +698,7 @@ gdb_bfd_map_section (asection *sectp, bfd_size_type *size)
}
}
#endif /* HAVE_MMAP */
+#endif
/* Handle compressed sections, or ordinary uncompressed sections in
the no-mmap case. */
--
2.14.3