diff options
Diffstat (limited to 'meta-microblaze/recipes-devtools/gdb/gdb/0005-upstream-change-to-garbage-collection-sweep-causes-m.patch')
-rw-r--r-- | meta-microblaze/recipes-devtools/gdb/gdb/0005-upstream-change-to-garbage-collection-sweep-causes-m.patch | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/meta-microblaze/recipes-devtools/gdb/gdb/0005-upstream-change-to-garbage-collection-sweep-causes-m.patch b/meta-microblaze/recipes-devtools/gdb/gdb/0005-upstream-change-to-garbage-collection-sweep-causes-m.patch new file mode 100644 index 00000000..d5195308 --- /dev/null +++ b/meta-microblaze/recipes-devtools/gdb/gdb/0005-upstream-change-to-garbage-collection-sweep-causes-m.patch | |||
@@ -0,0 +1,36 @@ | |||
1 | From c78337f4e6459e18e1d2af95d8e313b9dcb3f097 Mon Sep 17 00:00:00 2001 | ||
2 | From: David Holsgrove <david.holsgrove@xilinx.com> | ||
3 | Date: Wed, 27 Feb 2013 13:56:11 +1000 | ||
4 | Subject: [PATCH 05/52] upstream change to garbage collection sweep causes mb | ||
5 | regression | ||
6 | |||
7 | Upstream change for PR13177 now clears the def_regular during gc_sweep of a | ||
8 | section. (All other archs in binutils/bfd/elf32-*.c received an update | ||
9 | to a warning about unresolvable relocations - this warning is not present | ||
10 | in binutils/bfd/elf32-microblaze.c, but this warning check would not | ||
11 | prevent the error being seen) | ||
12 | |||
13 | The visible issue with this change is when running a c++ application | ||
14 | in Petalinux which links libstdc++.so for exception handling it segfaults | ||
15 | on execution. | ||
16 | |||
17 | This does not occur if static linking libstdc++.a, so its during the | ||
18 | relocations for a shared lib with garbage collection this occurs | ||
19 | |||
20 | Signed-off-by: David Holsgrove <david.holsgrove@xilinx.com> | ||
21 | --- | ||
22 | bfd/elflink.c | 1 - | ||
23 | 1 file changed, 1 deletion(-) | ||
24 | |||
25 | Index: gdb-9.2/bfd/elflink.c | ||
26 | =================================================================== | ||
27 | --- gdb-9.2.orig/bfd/elflink.c | ||
28 | +++ gdb-9.2/bfd/elflink.c | ||
29 | @@ -6274,7 +6274,6 @@ elf_gc_sweep_symbol (struct elf_link_has | ||
30 | |||
31 | inf = (struct elf_gc_sweep_symbol_info *) data; | ||
32 | (*inf->hide_symbol) (inf->info, h, TRUE); | ||
33 | - h->def_regular = 0; | ||
34 | h->ref_regular = 0; | ||
35 | h->ref_regular_nonweak = 0; | ||
36 | } | ||