diff options
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.patch | 38 |
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 @@ | |||
1 | From 23f0f6e8281b5cd481ef7636739c07b446828f7e Mon Sep 17 00:00:00 2001 | ||
2 | From: Mahesh Bodapati <mbodapat@xilinx.com> | ||
3 | Date: Wed, 17 Jun 2020 21:20:26 +0530 | ||
4 | Subject: [PATCH 31/40] ldlang.c: Workaround for improper address mapping | ||
5 | causing runtime loops | ||
6 | |||
7 | [Patch,MicroBlaze] : improper address mapping of PROVIDE directive | ||
8 | symbols[DTOR_END] are causing runtime loops and we don't need to override | ||
9 | PROVIDE symbols if symbols are defined in libraries and linker so I am | ||
10 | disabling override for PROVIDE symbols. | ||
11 | --- | ||
12 | ld/ldlang.c | 8 +++++++- | ||
13 | 1 file changed, 7 insertions(+), 1 deletion(-) | ||
14 | |||
15 | diff --git a/ld/ldlang.c b/ld/ldlang.c | ||
16 | index 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 | -- | ||
37 | 2.17.1 | ||
38 | |||