diff options
Diffstat (limited to 'poky/meta/recipes-devtools/gdb/gdb/0005-Add-support-for-Renesas-SH-sh4-architecture.patch')
-rw-r--r-- | poky/meta/recipes-devtools/gdb/gdb/0005-Add-support-for-Renesas-SH-sh4-architecture.patch | 64 |
1 files changed, 28 insertions, 36 deletions
diff --git a/poky/meta/recipes-devtools/gdb/gdb/0005-Add-support-for-Renesas-SH-sh4-architecture.patch b/poky/meta/recipes-devtools/gdb/gdb/0005-Add-support-for-Renesas-SH-sh4-architecture.patch index cb1b7abd0..f840cafe2 100644 --- a/poky/meta/recipes-devtools/gdb/gdb/0005-Add-support-for-Renesas-SH-sh4-architecture.patch +++ b/poky/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 215486b53a7a6dfca064cd2e9196a9de6ed6f0c2 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 +index c76a4e4394..921fdadb49 100644 --- a/gdb/Makefile.in +++ b/gdb/Makefile.in -@@ -2638,6 +2638,8 @@ ALLDEPFILES = \ +@@ -2326,6 +2326,8 @@ ALLDEPFILES = \ + sh-nbsd-nat.c \ 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 +index 23a2f16399..39a886ec53 100644 --- a/gdb/configure.host +++ b/gdb/configure.host -@@ -150,6 +150,7 @@ powerpc*-*-linux*) gdb_host=linux ;; +@@ -153,6 +153,7 @@ riscv*-*-linux*) gdb_host=linux ;; s390*-*-linux*) gdb_host=linux ;; @@ -52,7 +52,7 @@ index d74fd04934..be12de1446 100644 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 +index db93967910..4109c549e8 100644 --- a/gdb/sh-linux-tdep.c +++ b/gdb/sh-linux-tdep.c @@ -18,14 +18,37 @@ @@ -600,7 +600,7 @@ index c5c745d218..84e539aad3 100644 /* GNU/Linux uses SVR4-style shared libraries. */ diff --git a/gdb/sh-tdep.c b/gdb/sh-tdep.c -index 2c2b26847d..14f5281ed4 100644 +index fe64cf979a..4417114cd0 100644 --- a/gdb/sh-tdep.c +++ b/gdb/sh-tdep.c @@ -21,6 +21,9 @@ @@ -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[] = { +@@ -66,23 +69,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) +@@ -1050,7 +1036,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, +@@ -1100,7 +1086,7 @@ sh_push_dummy_call_fpu (struct gdbarch *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, +@@ -1834,7 +1820,7 @@ sh_dwarf2_frame_init_reg (struct gdbarch *gdbarch, int regnum, 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) +@@ -1861,7 +1847,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) +@@ -1928,9 +1914,9 @@ sh_frame_cache (struct frame_info *this_frame, void **this_cache) 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, +@@ -1944,7 +1930,7 @@ sh_frame_prev_register (struct frame_info *this_frame, 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, +@@ -2255,8 +2241,8 @@ sh_return_in_first_hidden_param_p (struct gdbarch *gdbarch, static struct gdbarch * sh_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches) { @@ -711,9 +703,9 @@ index 2c2b26847d..14f5281ed4 100644 struct gdbarch_tdep *tdep; + struct gdbarch *gdbarch; - /* 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) + /* If there is already a candidate, use it. */ + arches = gdbarch_list_lookup_by_info (arches, &info); +@@ -2268,6 +2254,18 @@ sh_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches) 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) +@@ -2422,10 +2420,11 @@ sh_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches) break; } @@ -746,7 +738,7 @@ index 2c2b26847d..14f5281ed4 100644 frame_unwind_append_unwinder (gdbarch, &sh_frame_unwind); diff --git a/gdb/sh-tdep.h b/gdb/sh-tdep.h -index d15ef050e0..c4642cefa4 100644 +index 59acd35b88..be3f998d84 100644 --- a/gdb/sh-tdep.h +++ b/gdb/sh-tdep.h @@ -21,6 +21,12 @@ @@ -829,7 +821,7 @@ index d15ef050e0..c4642cefa4 100644 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 +index 9879f0ca47..cbc0e4d5f7 100644 --- a/gdb/testsuite/gdb.asm/asm-source.exp +++ b/gdb/testsuite/gdb.asm/asm-source.exp @@ -116,6 +116,11 @@ switch -glob -- [istarget] { @@ -918,5 +910,5 @@ index 756606880f..1205a9bc9c 100644 static int count = 0; -- -2.13.1 +2.18.0 |