From ce195afa2f566ed2f9d0284257a488bd8918db92 Mon Sep 17 00:00:00 2001 From: Ralf Corsepius Date: Sun, 16 Dec 2007 12:38:14 +0000 Subject: New. --- .../patches/gdb-6.6-rtems4.8-20071216.diff | 173 +++++++++++++++++++++ 1 file changed, 173 insertions(+) create mode 100644 contrib/crossrpms/patches/gdb-6.6-rtems4.8-20071216.diff diff --git a/contrib/crossrpms/patches/gdb-6.6-rtems4.8-20071216.diff b/contrib/crossrpms/patches/gdb-6.6-rtems4.8-20071216.diff new file mode 100644 index 0000000000..d9c615a748 --- /dev/null +++ b/contrib/crossrpms/patches/gdb-6.6-rtems4.8-20071216.diff @@ -0,0 +1,173 @@ +diff -uNr gdb-6.6.orig/bfd/sysdep.h gdb-6.6/bfd/sysdep.h +--- gdb-6.6.orig/bfd/sysdep.h 2005-05-05 20:51:14.000000000 +0200 ++++ gdb-6.6/bfd/sysdep.h 2007-12-14 17:51:58.000000000 +0100 +@@ -135,7 +135,7 @@ + #endif + + #if !HAVE_DECL_STRSTR +-extern char *strstr (); ++/* extern char *strstr (); */ + #endif + + #ifdef HAVE_FTELLO +diff -uNr gdb-6.6.orig/configure gdb-6.6/configure +--- gdb-6.6.orig/configure 2006-11-15 00:26:39.000000000 +0100 ++++ gdb-6.6/configure 2007-12-14 17:51:58.000000000 +0100 +@@ -3679,7 +3679,7 @@ + # For an installed makeinfo, we require it to be from texinfo 4.4 or + # higher, else we use the "missing" dummy. + if ${MAKEINFO} --version \ +- | egrep 'texinfo[^0-9]*([1-3][0-9]|4\.[4-9]|[5-9])' >/dev/null 2>&1; then ++ | egrep 'texinfo[^0-9]*(4\.([4-9]|[1-9][0-9])|[5-9]|[1-9][0-9])' >/dev/null 2>&1; then + : + else + MAKEINFO="$MISSING makeinfo" +diff -uNr gdb-6.6.orig/configure.in gdb-6.6/configure.in +--- gdb-6.6.orig/configure.in 2006-12-18 08:22:58.000000000 +0100 ++++ gdb-6.6/configure.in 2007-12-14 17:51:58.000000000 +0100 +@@ -2228,7 +2228,7 @@ + # For an installed makeinfo, we require it to be from texinfo 4.4 or + # higher, else we use the "missing" dummy. + if ${MAKEINFO} --version \ +- | egrep 'texinfo[^0-9]*([1-3][0-9]|4\.[4-9]|[5-9])' >/dev/null 2>&1; then ++ | egrep 'texinfo[^0-9]*(4\.([4-9]|[1-9][0-9])|[5-9]|[1-9][0-9])' >/dev/null 2>&1; then + : + else + MAKEINFO="$MISSING makeinfo" +diff -uNr gdb-6.6.orig/gdb/arch-utils.c gdb-6.6/gdb/arch-utils.c +--- gdb-6.6.orig/gdb/arch-utils.c 2006-11-10 20:20:35.000000000 +0100 ++++ gdb-6.6/gdb/arch-utils.c 2007-12-14 17:51:58.000000000 +0100 +@@ -349,6 +349,15 @@ + }; + static const char *set_endian_string; + ++enum bfd_endian ++selected_byte_order (void) ++{ ++ if (target_byte_order_user != BFD_ENDIAN_UNKNOWN) ++ return TARGET_BYTE_ORDER; ++ else ++ return BFD_ENDIAN_UNKNOWN; ++} ++ + /* Called by ``show endian''. */ + + static void +diff -uNr gdb-6.6.orig/gdb/arch-utils.h gdb-6.6/gdb/arch-utils.h +--- gdb-6.6.orig/gdb/arch-utils.h 2006-11-10 20:20:35.000000000 +0100 ++++ gdb-6.6/gdb/arch-utils.h 2007-12-14 17:51:58.000000000 +0100 +@@ -126,6 +126,10 @@ + + extern int legacy_register_sim_regno (int regnum); + ++/* Return the selected byte order, or BFD_ENDIAN_UNKNOWN if no byte ++ order was explicitly selected. */ ++extern enum bfd_endian selected_byte_order (void); ++ + /* Return the selected architecture's name, or NULL if no architecture + was explicitly selected. */ + extern const char *selected_architecture_name (void); +diff -uNr gdb-6.6.orig/gdb/ChangeLog.rtems gdb-6.6/gdb/ChangeLog.rtems +--- gdb-6.6.orig/gdb/ChangeLog.rtems 1970-01-01 01:00:00.000000000 +0100 ++++ gdb-6.6/gdb/ChangeLog.rtems 2007-12-14 17:51:58.000000000 +0100 +@@ -0,0 +1,6 @@ ++2007-02-08 Daniel Jacobowitz ++ ++ * arch-utils.c (selected_byte_order): New. ++ * arch-utils.h (selected_byte_order): New prototype. ++ * remote-sim.c (gdbsim_open): Use selected_byte_order. ++ +diff -uNr gdb-6.6.orig/gdb/memory-map.c gdb-6.6/gdb/memory-map.c +--- gdb-6.6.orig/gdb/memory-map.c 2006-10-05 21:42:31.000000000 +0200 ++++ gdb-6.6/gdb/memory-map.c 2007-12-14 17:51:58.000000000 +0100 +@@ -141,10 +141,10 @@ + { + if (strcmp (data->property_name, "blocksize") == 0) + { ++ char *end = NULL; + if (!data->character_data) + throw_error (XML_PARSE_ERROR, + _("Empty content of 'property' element")); +- char *end = NULL; + data->currently_parsing->attrib.blocksize + = strtoul (data->character_data, &end, 0); + if (*end != '\0') +diff -uNr gdb-6.6.orig/gdb/remote-sim.c gdb-6.6/gdb/remote-sim.c +--- gdb-6.6.orig/gdb/remote-sim.c 2006-11-10 20:20:36.000000000 +0100 ++++ gdb-6.6/gdb/remote-sim.c 2007-12-14 17:51:58.000000000 +0100 +@@ -504,9 +504,9 @@ + + 50) /* slack */ ; + arg_buf = (char *) alloca (len); + strcpy (arg_buf, "gdbsim"); /* 7 */ +- /* Specify the byte order for the target when it is both selectable +- and explicitly specified by the user (not auto detected). */ +- switch (TARGET_BYTE_ORDER) ++ /* Specify the byte order for the target when it is explicitly ++ specified by the user (not auto detected). */ ++ switch (selected_byte_order ()) + { + case BFD_ENDIAN_BIG: + strcat (arg_buf, " -E big"); +diff -uNr gdb-6.6.orig/sim/erc32/erc32.c gdb-6.6/sim/erc32/erc32.c +--- gdb-6.6.orig/sim/erc32/erc32.c 1999-04-16 03:35:00.000000000 +0200 ++++ gdb-6.6/sim/erc32/erc32.c 2007-12-14 17:51:58.000000000 +0100 +@@ -413,7 +413,7 @@ + if (rom8) mec_memcfg &= ~0x20000; + else mec_memcfg |= 0x20000; + +- mem_ramsz = (256 * 1024) << ((mec_memcfg >> 10) & 7); ++ mem_ramsz = (512 * 1024) << ((mec_memcfg >> 10) & 7); + mem_romsz = (128 * 1024) << ((mec_memcfg >> 18) & 7); + + if (sparclite_board) { +diff -uNr gdb-6.6.orig/sim/erc32/exec.c gdb-6.6/sim/erc32/exec.c +--- gdb-6.6.orig/sim/erc32/exec.c 2005-03-07 12:09:05.000000000 +0100 ++++ gdb-6.6/sim/erc32/exec.c 2007-12-14 17:51:58.000000000 +0100 +@@ -1713,7 +1713,7 @@ + sregs->fdp[rs2 | 1] = sregs->fs[rs2 & ~1]; + sregs->fdp[rs2 & ~1] = sregs->fs[rs2 | 1]; + default: +- ; ++ break; + } + #endif + +@@ -1886,7 +1886,7 @@ + sregs->fs[rd & ~1] = sregs->fdp[rd | 1]; + sregs->fs[rd | 1] = sregs->fdp[rd & ~1]; + default: +- ; ++ break; + } + #endif + if (sregs->fpstate == FP_EXC_PE) { +diff -uNr gdb-6.6.orig/sim/ppc/ppc-instructions gdb-6.6/sim/ppc/ppc-instructions +--- gdb-6.6.orig/sim/ppc/ppc-instructions 2006-11-29 16:25:26.000000000 +0100 ++++ gdb-6.6/sim/ppc/ppc-instructions 2007-12-14 17:52:11.000000000 +0100 +@@ -3402,6 +3402,14 @@ + case spr_dec: + *rT = cpu_get_decrementer(processor); + break; ++ case spr_tbrl: ++ if (is_64bit_implementation) *rT = TB; ++ else *rT = EXTRACTED64(TB, 32, 63); ++ break; ++ case spr_tbru: ++ if (is_64bit_implementation) *rT = EXTRACTED64(TB, 0, 31); ++ else *rT = EXTRACTED64(TB, 0, 31); ++ break; + case spr_tbu: + case spr_tbl: + /* NOTE - these SPR's are not readable. Use mftb[ul] */ +diff -uNr gdb-6.6.orig/sim/ppc/ppc-spr-table gdb-6.6/sim/ppc/ppc-spr-table +--- gdb-6.6.orig/sim/ppc/ppc-spr-table 2003-06-22 18:48:12.000000000 +0200 ++++ gdb-6.6/sim/ppc/ppc-spr-table 2007-12-14 17:52:11.000000000 +0100 +@@ -32,6 +32,8 @@ + SRR0:26:0:0 + SRR1:27:0:0 + VRSAVE:256:0:0 ++TBRL:268:0:0 ++TBRU:269:0:0 + SPRG0:272:0:0 + SPRG1:273:0:0 + SPRG2:274:0:0 -- cgit v1.2.3