diff options
Diffstat (limited to 'meta/recipes-devtools/gdb/gdb/0005-Add-support-for-Renesas-SH-sh4-architecture.patch')
-rw-r--r-- | meta/recipes-devtools/gdb/gdb/0005-Add-support-for-Renesas-SH-sh4-architecture.patch | 153 |
1 files changed, 71 insertions, 82 deletions
diff --git a/meta/recipes-devtools/gdb/gdb/0005-Add-support-for-Renesas-SH-sh4-architecture.patch b/meta/recipes-devtools/gdb/gdb/0005-Add-support-for-Renesas-SH-sh4-architecture.patch index cb1b7abd07..f678598284 100644 --- a/meta/recipes-devtools/gdb/gdb/0005-Add-support-for-Renesas-SH-sh4-architecture.patch +++ b/meta/recipes-devtools/gdb/gdb/0005-Add-support-for-Renesas-SH-sh4-architecture.patch @@ -1,7 +1,7 @@ -From 60ac68f601885ea6480229a5c8a89a0257da376c Mon Sep 17 00:00:00 2001 +From 8757b36be6109f6d7ea0bd8dafbaed647e0d2192 Mon Sep 17 00:00:00 2001 From: Khem Raj <raj.khem@gmail.com> Date: Mon, 2 Mar 2015 02:31:12 +0000 -Subject: [PATCH 05/10] Add support for Renesas SH (sh4) architecture. +Subject: [PATCH 05/11] Add support for Renesas SH (sh4) architecture. gdb (7.4-1~cvs20111117.2) experimental; urgency=low . @@ -15,35 +15,35 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com> --- gdb/Makefile.in | 2 + gdb/configure.host | 1 + - gdb/sh-linux-tdep.c | 519 +++++++++++++++++++++++++++++++++++ - gdb/sh-tdep.c | 54 ++-- - gdb/sh-tdep.h | 49 ++++ + gdb/sh-linux-tdep.c | 519 +++++++++++++++++++++++++++ + gdb/sh-tdep.c | 53 ++- + gdb/sh-tdep.h | 49 +++ gdb/testsuite/gdb.asm/asm-source.exp | 5 + gdb/testsuite/gdb.asm/sh.inc | 3 +- gdb/testsuite/gdb.base/annota1.c | 3 + gdb/testsuite/gdb.base/annota3.c | 4 + gdb/testsuite/gdb.base/sigall.c | 3 + gdb/testsuite/gdb.base/signals.c | 4 + - 11 files changed, 618 insertions(+), 29 deletions(-) + 11 files changed, 617 insertions(+), 29 deletions(-) -diff --git a/gdb/Makefile.in b/gdb/Makefile.in -index 8be73ba423..e287ff6a2e 100644 ---- a/gdb/Makefile.in -+++ b/gdb/Makefile.in -@@ -2638,6 +2638,8 @@ ALLDEPFILES = \ - sh-nbsd-tdep.c \ - sh-tdep.c \ - sh64-tdep.c \ -+ sh-linux-tdep.c \ -+ sh-linux-nat.c \ - sol2-tdep.c \ - solib-aix.c \ - solib-spu.c \ -diff --git a/gdb/configure.host b/gdb/configure.host -index d74fd04934..be12de1446 100644 ---- a/gdb/configure.host -+++ b/gdb/configure.host -@@ -150,6 +150,7 @@ powerpc*-*-linux*) gdb_host=linux ;; +Index: gdb-8.1/gdb/Makefile.in +=================================================================== +--- gdb-8.1.orig/gdb/Makefile.in ++++ gdb-8.1/gdb/Makefile.in +@@ -758,6 +758,8 @@ ALL_TARGET_OBS = \ + sh-linux-tdep.o \ + sh-nbsd-tdep.o \ + sh-tdep.o \ ++ sh-linux-tdep.o \ ++ sh-linux-nat.o \ + sh64-tdep.o \ + sol2-tdep.o \ + solib-aix.o \ +Index: gdb-8.1/gdb/configure.host +=================================================================== +--- gdb-8.1.orig/gdb/configure.host ++++ gdb-8.1/gdb/configure.host +@@ -152,6 +152,7 @@ powerpc*-*-linux*) gdb_host=linux ;; s390*-*-linux*) gdb_host=linux ;; @@ -51,10 +51,10 @@ index d74fd04934..be12de1446 100644 sh*-*-netbsdelf* | sh*-*-knetbsd*-gnu) gdb_host=nbsd ;; sh*-*-openbsd*) gdb_host=nbsd ;; -diff --git a/gdb/sh-linux-tdep.c b/gdb/sh-linux-tdep.c -index c5c745d218..84e539aad3 100644 ---- a/gdb/sh-linux-tdep.c -+++ b/gdb/sh-linux-tdep.c +Index: gdb-8.1/gdb/sh-linux-tdep.c +=================================================================== +--- gdb-8.1.orig/gdb/sh-linux-tdep.c ++++ gdb-8.1/gdb/sh-linux-tdep.c @@ -18,14 +18,37 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. */ @@ -93,7 +93,7 @@ index c5c745d218..84e539aad3 100644 #include "glibc-tdep.h" #include "sh-tdep.h" #include "linux-tdep.h" -@@ -180,9 +203,505 @@ static struct tramp_frame sh_linux_rt_sigreturn_tramp_frame = { +@@ -180,9 +203,505 @@ static struct tramp_frame sh_linux_rt_si sh_linux_rt_sigreturn_init }; @@ -599,10 +599,10 @@ index c5c745d218..84e539aad3 100644 linux_init_abi (info, gdbarch); /* GNU/Linux uses SVR4-style shared libraries. */ -diff --git a/gdb/sh-tdep.c b/gdb/sh-tdep.c -index 2c2b26847d..14f5281ed4 100644 ---- a/gdb/sh-tdep.c -+++ b/gdb/sh-tdep.c +Index: gdb-8.1/gdb/sh-tdep.c +=================================================================== +--- gdb-8.1.orig/gdb/sh-tdep.c ++++ gdb-8.1/gdb/sh-tdep.c @@ -21,6 +21,9 @@ sac@cygnus.com. */ @@ -613,15 +613,7 @@ index 2c2b26847d..14f5281ed4 100644 #include "frame.h" #include "frame-base.h" #include "frame-unwind.h" -@@ -35,6 +38,7 @@ - #include "arch-utils.h" - #include "floatformat.h" - #include "regcache.h" -+#include "regset.h" - #include "doublest.h" - #include "osabi.h" - #include "reggroups.h" -@@ -68,23 +72,6 @@ static const char *const sh_cc_enum[] = { +@@ -67,23 +70,6 @@ static const char *const sh_cc_enum[] = static const char *sh_active_calling_convention = sh_cc_gcc; @@ -645,7 +637,7 @@ index 2c2b26847d..14f5281ed4 100644 static int sh_is_renesas_calling_convention (struct type *func_type) { -@@ -1052,7 +1039,7 @@ sh_treat_as_flt_p (struct type *type) +@@ -1051,7 +1037,7 @@ sh_treat_as_flt_p (struct type *type) return 0; /* Otherwise if the type of that member is float, the whole type is treated as float. */ @@ -654,7 +646,7 @@ index 2c2b26847d..14f5281ed4 100644 return 1; /* Otherwise it's not treated as float. */ return 0; -@@ -1102,7 +1089,7 @@ sh_push_dummy_call_fpu (struct gdbarch *gdbarch, +@@ -1101,7 +1087,7 @@ sh_push_dummy_call_fpu (struct gdbarch * in four registers available. Loop thru args from first to last. */ for (argnum = 0; argnum < nargs; argnum++) { @@ -663,7 +655,7 @@ index 2c2b26847d..14f5281ed4 100644 len = TYPE_LENGTH (type); val = sh_justify_value_in_reg (gdbarch, args[argnum], len); -@@ -1828,7 +1815,7 @@ sh_dwarf2_frame_init_reg (struct gdbarch *gdbarch, int regnum, +@@ -1835,7 +1821,7 @@ sh_dwarf2_frame_init_reg (struct gdbarch reg->how = DWARF2_FRAME_REG_UNDEFINED; } @@ -672,7 +664,7 @@ index 2c2b26847d..14f5281ed4 100644 sh_alloc_frame_cache (void) { struct sh_frame_cache *cache; -@@ -1855,7 +1842,7 @@ sh_alloc_frame_cache (void) +@@ -1862,7 +1848,7 @@ sh_alloc_frame_cache (void) return cache; } @@ -681,7 +673,7 @@ index 2c2b26847d..14f5281ed4 100644 sh_frame_cache (struct frame_info *this_frame, void **this_cache) { struct gdbarch *gdbarch = get_frame_arch (this_frame); -@@ -1922,9 +1909,9 @@ sh_frame_cache (struct frame_info *this_frame, void **this_cache) +@@ -1929,9 +1915,9 @@ sh_frame_cache (struct frame_info *this_ return cache; } @@ -694,7 +686,7 @@ index 2c2b26847d..14f5281ed4 100644 { struct gdbarch *gdbarch = get_frame_arch (this_frame); struct sh_frame_cache *cache = sh_frame_cache (this_frame, this_cache); -@@ -1938,7 +1925,7 @@ sh_frame_prev_register (struct frame_info *this_frame, +@@ -1945,7 +1931,7 @@ sh_frame_prev_register (struct frame_inf the current frame. Frob regnum so that we pull the value from the correct place. */ if (regnum == gdbarch_pc_regnum (gdbarch)) @@ -703,7 +695,7 @@ index 2c2b26847d..14f5281ed4 100644 if (regnum < SH_NUM_REGS && cache->saved_regs[regnum] != -1) return frame_unwind_got_memory (this_frame, regnum, -@@ -2247,8 +2234,8 @@ sh_return_in_first_hidden_param_p (struct gdbarch *gdbarch, +@@ -2254,8 +2240,8 @@ sh_return_in_first_hidden_param_p (struc static struct gdbarch * sh_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches) { @@ -713,7 +705,7 @@ index 2c2b26847d..14f5281ed4 100644 /* SH5 is handled entirely in sh64-tdep.c. */ if (info.bfd_arch_info->mach == bfd_mach_sh5) -@@ -2264,6 +2251,18 @@ sh_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches) +@@ -2271,6 +2257,18 @@ sh_gdbarch_init (struct gdbarch_info inf tdep = XCNEW (struct gdbarch_tdep); gdbarch = gdbarch_alloc (&info, tdep); @@ -732,7 +724,7 @@ index 2c2b26847d..14f5281ed4 100644 set_gdbarch_short_bit (gdbarch, 2 * TARGET_CHAR_BIT); set_gdbarch_int_bit (gdbarch, 4 * TARGET_CHAR_BIT); set_gdbarch_long_bit (gdbarch, 4 * TARGET_CHAR_BIT); -@@ -2418,10 +2417,11 @@ sh_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches) +@@ -2425,10 +2423,11 @@ sh_gdbarch_init (struct gdbarch_info inf break; } @@ -745,10 +737,10 @@ index 2c2b26847d..14f5281ed4 100644 frame_unwind_append_unwinder (gdbarch, &sh_stub_unwind); frame_unwind_append_unwinder (gdbarch, &sh_frame_unwind); -diff --git a/gdb/sh-tdep.h b/gdb/sh-tdep.h -index d15ef050e0..c4642cefa4 100644 ---- a/gdb/sh-tdep.h -+++ b/gdb/sh-tdep.h +Index: gdb-8.1/gdb/sh-tdep.h +=================================================================== +--- gdb-8.1.orig/gdb/sh-tdep.h ++++ gdb-8.1/gdb/sh-tdep.h @@ -21,6 +21,12 @@ /* Contributed by Steve Chamberlain sac@cygnus.com. */ @@ -828,10 +820,10 @@ index d15ef050e0..c4642cefa4 100644 /* Non-NULL when debugging from a core file. Provides the offset where each general-purpose register is stored inside the associated core file section. */ -diff --git a/gdb/testsuite/gdb.asm/asm-source.exp b/gdb/testsuite/gdb.asm/asm-source.exp -index e07e5543f2..f5e60e1002 100644 ---- a/gdb/testsuite/gdb.asm/asm-source.exp -+++ b/gdb/testsuite/gdb.asm/asm-source.exp +Index: gdb-8.1/gdb/testsuite/gdb.asm/asm-source.exp +=================================================================== +--- gdb-8.1.orig/gdb/testsuite/gdb.asm/asm-source.exp ++++ gdb-8.1/gdb/testsuite/gdb.asm/asm-source.exp @@ -116,6 +116,11 @@ switch -glob -- [istarget] { append link-flags " -m elf32ppc" } @@ -844,10 +836,10 @@ index e07e5543f2..f5e60e1002 100644 "sh*-*-*" { set asm-arch sh set debug-flags "-gdwarf-2" -diff --git a/gdb/testsuite/gdb.asm/sh.inc b/gdb/testsuite/gdb.asm/sh.inc -index a4a5fc545e..89efed7795 100644 ---- a/gdb/testsuite/gdb.asm/sh.inc -+++ b/gdb/testsuite/gdb.asm/sh.inc +Index: gdb-8.1/gdb/testsuite/gdb.asm/sh.inc +=================================================================== +--- gdb-8.1.orig/gdb/testsuite/gdb.asm/sh.inc ++++ gdb-8.1/gdb/testsuite/gdb.asm/sh.inc @@ -40,9 +40,8 @@ mov.l .Lconst\@,r1 bra .Lafterconst\@ @@ -859,10 +851,10 @@ index a4a5fc545e..89efed7795 100644 .long \subr .align 1 .Lafterconst\@: -diff --git a/gdb/testsuite/gdb.base/annota1.c b/gdb/testsuite/gdb.base/annota1.c -index 424e1b8327..0de2e7b633 100644 ---- a/gdb/testsuite/gdb.base/annota1.c -+++ b/gdb/testsuite/gdb.base/annota1.c +Index: gdb-8.1/gdb/testsuite/gdb.base/annota1.c +=================================================================== +--- gdb-8.1.orig/gdb/testsuite/gdb.base/annota1.c ++++ gdb-8.1/gdb/testsuite/gdb.base/annota1.c @@ -1,6 +1,9 @@ #include <stdio.h> #include <signal.h> @@ -873,10 +865,10 @@ index 424e1b8327..0de2e7b633 100644 void handle_USR1 (int sig) -diff --git a/gdb/testsuite/gdb.base/annota3.c b/gdb/testsuite/gdb.base/annota3.c -index 424e1b8327..952aaf218a 100644 ---- a/gdb/testsuite/gdb.base/annota3.c -+++ b/gdb/testsuite/gdb.base/annota3.c +Index: gdb-8.1/gdb/testsuite/gdb.base/annota3.c +=================================================================== +--- gdb-8.1.orig/gdb/testsuite/gdb.base/annota3.c ++++ gdb-8.1/gdb/testsuite/gdb.base/annota3.c @@ -1,6 +1,10 @@ #include <stdio.h> #include <signal.h> @@ -888,10 +880,10 @@ index 424e1b8327..952aaf218a 100644 void handle_USR1 (int sig) -diff --git a/gdb/testsuite/gdb.base/sigall.c b/gdb/testsuite/gdb.base/sigall.c -index 81f3b08d6b..1574b2d6cb 100644 ---- a/gdb/testsuite/gdb.base/sigall.c -+++ b/gdb/testsuite/gdb.base/sigall.c +Index: gdb-8.1/gdb/testsuite/gdb.base/sigall.c +=================================================================== +--- gdb-8.1.orig/gdb/testsuite/gdb.base/sigall.c ++++ gdb-8.1/gdb/testsuite/gdb.base/sigall.c @@ -1,6 +1,9 @@ #include <signal.h> #include <unistd.h> @@ -902,10 +894,10 @@ index 81f3b08d6b..1574b2d6cb 100644 /* Signal handlers, we set breakpoints in them to make sure that the signals really get delivered. */ -diff --git a/gdb/testsuite/gdb.base/signals.c b/gdb/testsuite/gdb.base/signals.c -index 756606880f..1205a9bc9c 100644 ---- a/gdb/testsuite/gdb.base/signals.c -+++ b/gdb/testsuite/gdb.base/signals.c +Index: gdb-8.1/gdb/testsuite/gdb.base/signals.c +=================================================================== +--- gdb-8.1.orig/gdb/testsuite/gdb.base/signals.c ++++ gdb-8.1/gdb/testsuite/gdb.base/signals.c @@ -3,6 +3,10 @@ #include <signal.h> #include <unistd.h> @@ -917,6 +909,3 @@ index 756606880f..1205a9bc9c 100644 static int count = 0; --- -2.13.1 - |