summaryrefslogtreecommitdiffstats
path: root/meta-microblaze/recipes-devtools/binutils/binutils/0031-ldlang.c-Workaround-for-improper-address-mapping-cau.patch
diff options
context:
space:
mode:
Diffstat (limited to 'meta-microblaze/recipes-devtools/binutils/binutils/0031-ldlang.c-Workaround-for-improper-address-mapping-cau.patch')
-rw-r--r--meta-microblaze/recipes-devtools/binutils/binutils/0031-ldlang.c-Workaround-for-improper-address-mapping-cau.patch38
1 files changed, 0 insertions, 38 deletions
diff --git a/meta-microblaze/recipes-devtools/binutils/binutils/0031-ldlang.c-Workaround-for-improper-address-mapping-cau.patch b/meta-microblaze/recipes-devtools/binutils/binutils/0031-ldlang.c-Workaround-for-improper-address-mapping-cau.patch
deleted file mode 100644
index fda23a1a..00000000
--- a/meta-microblaze/recipes-devtools/binutils/binutils/0031-ldlang.c-Workaround-for-improper-address-mapping-cau.patch
+++ /dev/null
@@ -1,38 +0,0 @@
1From 23f0f6e8281b5cd481ef7636739c07b446828f7e Mon Sep 17 00:00:00 2001
2From: Mahesh Bodapati <mbodapat@xilinx.com>
3Date: Wed, 17 Jun 2020 21:20:26 +0530
4Subject: [PATCH 31/40] ldlang.c: Workaround for improper address mapping
5 causing runtime loops
6
7[Patch,MicroBlaze] : improper address mapping of PROVIDE directive
8symbols[DTOR_END] are causing runtime loops and we don't need to override
9PROVIDE symbols if symbols are defined in libraries and linker so I am
10disabling override for PROVIDE symbols.
11---
12 ld/ldlang.c | 8 +++++++-
13 1 file changed, 7 insertions(+), 1 deletion(-)
14
15diff --git a/ld/ldlang.c b/ld/ldlang.c
16index 9977195074a..9e2c1da066e 100644
17--- a/ld/ldlang.c
18+++ b/ld/ldlang.c
19@@ -3657,9 +3657,15 @@ open_input_bfds (lang_statement_union_type *s, enum open_bfd_mode mode)
20 plugin_insert = NULL;
21 #endif
22 break;
23+ /* This is from a --defsym on the command line. */
24 case lang_assignment_statement_enum:
25 if (s->assignment_statement.exp->type.node_class != etree_assert)
26- exp_fold_tree_no_dot (s->assignment_statement.exp);
27+ {
28+ if(!(s->assignment_statement.exp->assign.defsym) && (s->assignment_statement.exp->type.node_class == etree_provide))
29+ ;
30+ else
31+ exp_fold_tree_no_dot (s->assignment_statement.exp);
32+ }
33 break;
34 default:
35 break;
36--
372.17.1
38