From 7ae7e7e09a0ecb76413754c70e12fda14d64a0be Mon Sep 17 00:00:00 2001 From: Saul Wold Date: Fri, 5 Aug 2011 22:35:31 -0700 Subject: gdb: Update to 7.3 This has one upstream patch removed and a couple rebased (From OE-Core rev: e1e9ee24e82e0ad45cf18387e131d2365c8e77b4) Signed-off-by: Saul Wold Signed-off-by: Richard Purdie --- .../fix_for_build_error_internal_error_call.patch | 20 ------------ .../gdb/gdb/gdbserver-cflags-last.diff | 16 +++++----- .../gdb/gdb/kill_arm_map_symbols.patch | 36 +++++++++++----------- 3 files changed, 27 insertions(+), 45 deletions(-) delete mode 100644 meta/recipes-devtools/gdb/gdb/fix_for_build_error_internal_error_call.patch (limited to 'meta/recipes-devtools/gdb/gdb') diff --git a/meta/recipes-devtools/gdb/gdb/fix_for_build_error_internal_error_call.patch b/meta/recipes-devtools/gdb/gdb/fix_for_build_error_internal_error_call.patch deleted file mode 100644 index afb1783..0000000 --- a/meta/recipes-devtools/gdb/gdb/fix_for_build_error_internal_error_call.patch +++ /dev/null @@ -1,20 +0,0 @@ -Upstream-Status: Pending - -The prototype of function internall_error has changed. And one place in the code was not synced up with the new prototype, causing build error. This patche fixes that. - -Nitin A Kamble -2010/11/12 - -Index: gdb-7.2/gdb/gdbserver/linux-i386-ipa.c -=================================================================== ---- gdb-7.2.orig/gdb/gdbserver/linux-i386-ipa.c -+++ gdb-7.2/gdb/gdbserver/linux-i386-ipa.c -@@ -178,7 +178,7 @@ supply_static_tracepoint_registers (stru - } - break; - default: -- internal_error ("unhandled register size: %d", -+ internal_error (__FILE__, __LINE__, "unhandled register size: %d", - i386_st_collect_regmap[i].size); - } - } diff --git a/meta/recipes-devtools/gdb/gdb/gdbserver-cflags-last.diff b/meta/recipes-devtools/gdb/gdb/gdbserver-cflags-last.diff index 0475a42..8256f17 100644 --- a/meta/recipes-devtools/gdb/gdb/gdbserver-cflags-last.diff +++ b/meta/recipes-devtools/gdb/gdb/gdbserver-cflags-last.diff @@ -2,16 +2,18 @@ Upstream-Status: Pending Index: gdb/gdbserver/Makefile.in =================================================================== ---- gdb/gdbserver/Makefile.in.orig -+++ gdb/gdbserver/Makefile.in -@@ -89,8 +89,8 @@ WARN_CFLAGS = -Wall +--- gdb/gdbserver/Makefile.in.orig 2011-03-09 23:32:02.000000000 -0800 ++++ gdb/gdbserver/Makefile.in 2011-08-05 21:16:43.592202579 -0700 +@@ -94,10 +94,10 @@ CFLAGS = @CFLAGS@ # INTERNAL_CFLAGS is the aggregate of all other *CFLAGS macros. --INTERNAL_CFLAGS = $(WARN_CFLAGS) ${CFLAGS} ${GLOBAL_CFLAGS} \ -- ${PROFILE_CFLAGS} ${INCLUDE_CFLAGS} -+INTERNAL_CFLAGS = $(WARN_CFLAGS) ${GLOBAL_CFLAGS} \ -+ ${PROFILE_CFLAGS} ${INCLUDE_CFLAGS} ${CFLAGS} +-INTERNAL_CFLAGS_BASE = ${CFLAGS} ${GLOBAL_CFLAGS} \ ++INTERNAL_CFLAGS_BASE = ${GLOBAL_CFLAGS} \ + ${PROFILE_CFLAGS} ${INCLUDE_CFLAGS} + INTERNAL_WARN_CFLAGS = ${INTERNAL_CFLAGS_BASE} $(WARN_CFLAGS) +-INTERNAL_CFLAGS = ${INTERNAL_WARN_CFLAGS} $(WERROR_CFLAGS) ++INTERNAL_CFLAGS = ${INTERNAL_WARN_CFLAGS} $(WERROR_CFLAGS) ${CFLAGS} # LDFLAGS is specifically reserved for setting from the command line # when running make. diff --git a/meta/recipes-devtools/gdb/gdb/kill_arm_map_symbols.patch b/meta/recipes-devtools/gdb/gdb/kill_arm_map_symbols.patch index c1756f7..9fc45b9 100644 --- a/meta/recipes-devtools/gdb/gdb/kill_arm_map_symbols.patch +++ b/meta/recipes-devtools/gdb/gdb/kill_arm_map_symbols.patch @@ -1,26 +1,26 @@ Upstream-Status: Inappropriate [embedded specific] -Index: gdb-6.3/gdb/arm-tdep.c +Index: gdb-7.3/gdb/arm-tdep.c =================================================================== ---- gdb-6.3.orig/gdb/arm-tdep.c 2004-08-03 02:02:20.000000000 +0000 -+++ gdb-6.3/gdb/arm-tdep.c 2005-11-09 15:13:29.000000000 +0000 -@@ -2491,6 +2491,19 @@ +--- gdb-7.3.orig/gdb/arm-tdep.c 2011-05-17 14:27:01.000000000 -0700 ++++ gdb-7.3/gdb/arm-tdep.c 2011-08-05 22:29:58.784201850 -0700 +@@ -7806,6 +7806,19 @@ static void arm_elf_make_msymbol_special(asymbol *sym, struct minimal_symbol *msym) { + -+ /* FIXME: We want gdb to ignore the ARM ELF mapping symbols when -+ displaying disassembly so we use this horrible hack here to -+ artifically set their address to the highest possible value. -+ This is wrong of course, and it prevents the symbols from being -+ used for their intended purpose - to distinguish between ARM -+ and THUMB code. So we ought to find a better way to do this. */ -+ if (bfd_asymbol_name (sym) -+ && bfd_asymbol_name (sym)[0] == '$' -+ && bfd_asymbol_name (sym)[1] != 0 -+ && bfd_asymbol_name (sym)[2] == 0) -+ SYMBOL_VALUE_ADDRESS(msym) = (CORE_ADDR) 0x7ffffffc; ++ /* FIXME: We want gdb to ignore the ARM ELF mapping symbols when ++ displaying disassembly so we use this horrible hack here to ++ artifically set their address to the highest possible value. ++ This is wrong of course, and it prevents the symbols from being ++ used for their intended purpose - to distinguish between ARM ++ and THUMB code. So we ought to find a better way to do this. */ ++ if (bfd_asymbol_name (sym) ++ && bfd_asymbol_name (sym)[0] == '$' ++ && bfd_asymbol_name (sym)[1] != 0 ++ && bfd_asymbol_name (sym)[2] == 0) ++ SYMBOL_VALUE_ADDRESS(msym) = (CORE_ADDR) 0x7ffffffc; + - /* Thumb symbols are of type STT_LOPROC, (synonymous with - STT_ARM_TFUNC). */ - if (ELF_ST_TYPE (((elf_symbol_type *)sym)->internal_elf_sym.st_info) + if (ARM_SYM_BRANCH_TYPE (&((elf_symbol_type *)sym)->internal_elf_sym) + == ST_BRANCH_TO_THUMB) + MSYMBOL_SET_SPECIAL (msym); -- cgit v1.1