summaryrefslogtreecommitdiffstats
path: root/meta-microblaze/recipes-devtools/binutils/binutils/0021-Revert-ld-Remove-unused-expression-state.patch
diff options
context:
space:
mode:
Diffstat (limited to 'meta-microblaze/recipes-devtools/binutils/binutils/0021-Revert-ld-Remove-unused-expression-state.patch')
-rw-r--r--meta-microblaze/recipes-devtools/binutils/binutils/0021-Revert-ld-Remove-unused-expression-state.patch82
1 files changed, 82 insertions, 0 deletions
diff --git a/meta-microblaze/recipes-devtools/binutils/binutils/0021-Revert-ld-Remove-unused-expression-state.patch b/meta-microblaze/recipes-devtools/binutils/binutils/0021-Revert-ld-Remove-unused-expression-state.patch
new file mode 100644
index 00000000..ab7f2077
--- /dev/null
+++ b/meta-microblaze/recipes-devtools/binutils/binutils/0021-Revert-ld-Remove-unused-expression-state.patch
@@ -0,0 +1,82 @@
1From 6238123cdc680941f3b3a253cca5be06d5c81492 Mon Sep 17 00:00:00 2001
2From: Mahesh Bodapati <mbodapat@xilinx.com>
3Date: Wed, 27 Feb 2019 15:12:32 +0530
4Subject: [PATCH 21/34] Revert "ld: Remove unused expression state" --defsym
5 symbol=expression Create a global symbol in the output file, containing the
6 absolute address given by expression.
7
8This reverts commit 65f14869fd3fbee8ed4c4ca49de8aaa86dbc66cb.
9
10Conflicts:
11 ld/ChangeLog
12
13Conflicts:
14 ld/ldexp.c
15 ld/ldexp.h
16---
17 ld/ldexp.c | 8 +++++---
18 ld/ldexp.h | 1 +
19 2 files changed, 6 insertions(+), 3 deletions(-)
20
21diff --git a/ld/ldexp.c b/ld/ldexp.c
22index d4d8706968d..b7f4361129f 100644
23--- a/ld/ldexp.c
24+++ b/ld/ldexp.c
25@@ -1380,6 +1380,7 @@ static etree_type *
26 exp_assop (const char *dst,
27 etree_type *src,
28 enum node_tree_enum class,
29+ bool defsym,
30 bool hidden)
31 {
32 etree_type *n;
33@@ -1391,6 +1392,7 @@ exp_assop (const char *dst,
34 n->assign.type.node_class = class;
35 n->assign.src = src;
36 n->assign.dst = dst;
37+ n->assign.defsym = defsym;
38 n->assign.hidden = hidden;
39 return n;
40 }
41@@ -1400,7 +1402,7 @@ exp_assop (const char *dst,
42 etree_type *
43 exp_assign (const char *dst, etree_type *src, bool hidden)
44 {
45- return exp_assop (dst, src, etree_assign, hidden);
46+ return exp_assop (dst, src, etree_assign, false, hidden);
47 }
48
49 /* Handle --defsym command-line option. */
50@@ -1408,7 +1410,7 @@ exp_assign (const char *dst, etree_type *src, bool hidden)
51 etree_type *
52 exp_defsym (const char *dst, etree_type *src)
53 {
54- return exp_assop (dst, src, etree_assign, false);
55+ return exp_assop (dst, src, etree_assign, true, false);
56 }
57
58 /* Handle PROVIDE. */
59@@ -1416,7 +1418,7 @@ exp_defsym (const char *dst, etree_type *src)
60 etree_type *
61 exp_provide (const char *dst, etree_type *src, bool hidden)
62 {
63- return exp_assop (dst, src, etree_provide, hidden);
64+ return exp_assop (dst, src, etree_provide, false, hidden);
65 }
66
67 /* Handle ASSERT. */
68diff --git a/ld/ldexp.h b/ld/ldexp.h
69index ed6fb8be715..e838b736306 100644
70--- a/ld/ldexp.h
71+++ b/ld/ldexp.h
72@@ -66,6 +66,7 @@ typedef union etree_union {
73 node_type type;
74 const char *dst;
75 union etree_union *src;
76+ bool defsym;
77 bool hidden;
78 } assign;
79 struct {
80--
812.37.1 (Apple Git-137.1)
82