diff options
Diffstat (limited to 'meta-xilinx/meta-microblaze/recipes-devtools/gdb/gdb/0042-porting-GDB-for-linux.patch')
-rw-r--r-- | meta-xilinx/meta-microblaze/recipes-devtools/gdb/gdb/0042-porting-GDB-for-linux.patch | 151 |
1 files changed, 0 insertions, 151 deletions
diff --git a/meta-xilinx/meta-microblaze/recipes-devtools/gdb/gdb/0042-porting-GDB-for-linux.patch b/meta-xilinx/meta-microblaze/recipes-devtools/gdb/gdb/0042-porting-GDB-for-linux.patch deleted file mode 100644 index 947ac9a97..000000000 --- a/meta-xilinx/meta-microblaze/recipes-devtools/gdb/gdb/0042-porting-GDB-for-linux.patch +++ /dev/null @@ -1,151 +0,0 @@ -From ecccc76dd8ea2e75cc31435b5885173690b3e07a Mon Sep 17 00:00:00 2001 -From: Mahesh Bodapati <mbodapat@xilinx.com> -Date: Thu, 12 Dec 2019 14:56:17 +0530 -Subject: [PATCH 42/52] porting GDB for linux - ---- - gdb/features/microblaze-linux.xml | 12 ++++++++++ - gdb/gdbserver/Makefile.in | 2 ++ - gdb/gdbserver/configure.srv | 3 ++- - gdb/microblaze-linux-tdep.c | 39 ++++++++++++++++++++++++------- - 4 files changed, 47 insertions(+), 9 deletions(-) - create mode 100644 gdb/features/microblaze-linux.xml - -Index: gdb-9.2/gdb/features/microblaze-linux.xml -=================================================================== ---- /dev/null -+++ gdb-9.2/gdb/features/microblaze-linux.xml -@@ -0,0 +1,12 @@ -+<?xml version="1.0"?> -+<!-- Copyright (C) 2014-2018 Free Software Foundation, Inc. -+ -+ Copying and distribution of this file, with or without modification, -+ are permitted in any medium without royalty provided the copyright -+ notice and this notice are preserved. --> -+ -+<!DOCTYPE target SYSTEM "gdb-target.dtd"> -+<target> -+ <osabi>GNU/Linux</osabi> -+ <xi:include href="microblaze-core.xml"/> -+</target> -Index: gdb-9.2/gdb/gdbserver/Makefile.in -=================================================================== ---- gdb-9.2.orig/gdb/gdbserver/Makefile.in -+++ gdb-9.2/gdb/gdbserver/Makefile.in -@@ -659,6 +659,8 @@ gdbsupport/%.o: ../gdbsupport/%.c - - %-generated.c: ../regformats/rs6000/%.dat | $(regdat_sh) - $(ECHO_REGDAT) $(SHELL) $(regdat_sh) $< $@ -+microblaze-linux.c : $(srcdir)/../regformats/reg-microblaze.dat $(regdat_sh) -+ $(ECHO_REGDAT) $(SHELL) $(regdat_sh) $(srcdir)/../regformats/reg-microblaze.dat microblaze-linux.c - - # - # Dependency tracking. -Index: gdb-9.2/gdb/gdbserver/configure.srv -=================================================================== ---- gdb-9.2.orig/gdb/gdbserver/configure.srv -+++ gdb-9.2/gdb/gdbserver/configure.srv -@@ -184,8 +184,9 @@ case "${target}" in - srv_linux_usrregs=yes - srv_linux_thread_db=yes - ;; -- microblaze*-*-linux*) srv_regobj=microblaze-linux.o -+ microblaze*-*-linux*) srv_regobj="microblaze-linux.o" - srv_tgtobj="$srv_linux_obj linux-microblaze-low.o " -+ srv_xmlfiles="microblaze-linux.xml" - srv_linux_regsets=yes - srv_linux_usrregs=yes - srv_linux_thread_db=yes -Index: gdb-9.2/gdb/microblaze-linux-tdep.c -=================================================================== ---- gdb-9.2.orig/gdb/microblaze-linux-tdep.c -+++ gdb-9.2/gdb/microblaze-linux-tdep.c -@@ -41,7 +41,7 @@ - - #ifndef REGSET_H - #define REGSET_H 1 -- -+int MICROBLAZE_REGISTER_SIZE=4; - struct gdbarch; - struct regcache; - -@@ -115,7 +115,7 @@ microblaze_debug (const char *fmt, ...) - va_end (args); - } - } -- -+#if 0 - static int - microblaze_linux_memory_remove_breakpoint (struct gdbarch *gdbarch, - struct bp_target_info *bp_tgt) -@@ -131,7 +131,7 @@ microblaze_linux_memory_remove_breakpoin - bp = gdbarch_breakpoint_from_pc (gdbarch, &addr, &bplen); - - /* Make sure we see the memory breakpoints. */ -- cleanup = make_show_memory_breakpoints_cleanup (1); -+ cleanup = make_scoped_restore_show_memory_breakpoints (1); - val = target_read_memory (addr, old_contents, bplen); - - /* If our breakpoint is no longer at the address, this means that the -@@ -146,6 +146,7 @@ microblaze_linux_memory_remove_breakpoin - do_cleanups (cleanup); - return val; - } -+#endif - - static void - microblaze_linux_sigtramp_cache (struct frame_info *next_frame, -@@ -248,8 +249,8 @@ microblaze_linux_init_abi (struct gdbarc - - linux_init_abi (info, gdbarch); - -- set_gdbarch_memory_remove_breakpoint (gdbarch, -- microblaze_linux_memory_remove_breakpoint); -+// set_gdbarch_memory_remove_breakpoint (gdbarch, -+// microblaze_linux_memory_remove_breakpoint); - - /* Shared library handling. */ - set_solib_svr4_fetch_link_map_offsets (gdbarch, -@@ -261,10 +262,30 @@ microblaze_linux_init_abi (struct gdbarc - - /* BFD target for core files. */ - if (gdbarch_byte_order (gdbarch) == BFD_ENDIAN_BIG) -- set_gdbarch_gcore_bfd_target (gdbarch, "elf32-microblaze"); -+ { -+ if (info.bfd_arch_info->mach == bfd_mach_microblaze64) { -+ set_gdbarch_gcore_bfd_target (gdbarch, "elf64-microblaze"); -+ MICROBLAZE_REGISTER_SIZE=8; -+ } -+ else -+ set_gdbarch_gcore_bfd_target (gdbarch, "elf32-microblaze"); -+ } - else -- set_gdbarch_gcore_bfd_target (gdbarch, "elf32-microblazeel"); -+ { -+ if (info.bfd_arch_info->mach == bfd_mach_microblaze64) { -+ set_gdbarch_gcore_bfd_target (gdbarch, "elf64-microblazeel"); -+ MICROBLAZE_REGISTER_SIZE=8; -+ } -+ else -+ set_gdbarch_gcore_bfd_target (gdbarch, "elf32-microblazeel"); -+ } - -+ switch (info.bfd_arch_info->mach) -+ { -+ case bfd_mach_microblaze64: -+ set_gdbarch_ptr_bit (gdbarch, 64); -+ break; -+ } - - /* Shared library handling. */ - set_gdbarch_skip_trampoline_code (gdbarch, find_solib_trampoline_target); -@@ -278,6 +299,8 @@ microblaze_linux_init_abi (struct gdbarc - void - _initialize_microblaze_linux_tdep (void) - { -- gdbarch_register_osabi (bfd_arch_microblaze, 0, GDB_OSABI_LINUX, -+ gdbarch_register_osabi (bfd_arch_microblaze, bfd_mach_microblaze, GDB_OSABI_LINUX, -+ microblaze_linux_init_abi); -+ gdbarch_register_osabi (bfd_arch_microblaze, bfd_mach_microblaze64, GDB_OSABI_LINUX, - microblaze_linux_init_abi); - } |