1 |
vapier 11/12/03 01:45:08 |
2 |
|
3 |
Modified: README.history |
4 |
Added: 10_all_binutils-2.22-ppc-textrels.patch |
5 |
Log: |
6 |
add patch from upstream for textrels on ppc32 #392645 by hiyuh |
7 |
|
8 |
Revision Changes Path |
9 |
1.2 src/patchsets/binutils/2.22/README.history |
10 |
|
11 |
file : http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/binutils/2.22/README.history?rev=1.2&view=markup |
12 |
plain: http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/binutils/2.22/README.history?rev=1.2&content-type=text/plain |
13 |
diff : http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/binutils/2.22/README.history?r1=1.1&r2=1.2 |
14 |
|
15 |
Index: README.history |
16 |
=================================================================== |
17 |
RCS file: /var/cvsroot/gentoo/src/patchsets/binutils/2.22/README.history,v |
18 |
retrieving revision 1.1 |
19 |
retrieving revision 1.2 |
20 |
diff -u -r1.1 -r1.2 |
21 |
--- README.history 21 Nov 2011 19:57:36 -0000 1.1 |
22 |
+++ README.history 3 Dec 2011 01:45:08 -0000 1.2 |
23 |
@@ -1,3 +1,6 @@ |
24 |
+1.1 [pending] |
25 |
+ + 10_all_binutils-2.22-ppc-textrels.patch |
26 |
+ |
27 |
1.0 21 Nov 2011 |
28 |
+ 03_all_binutils-2.15.92.0.2-ppc64-pie.patch |
29 |
+ 08_all_binutils-RPATH_ENVVAR-smack.patch |
30 |
|
31 |
|
32 |
|
33 |
1.1 src/patchsets/binutils/2.22/10_all_binutils-2.22-ppc-textrels.patch |
34 |
|
35 |
file : http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/binutils/2.22/10_all_binutils-2.22-ppc-textrels.patch?rev=1.1&view=markup |
36 |
plain: http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/binutils/2.22/10_all_binutils-2.22-ppc-textrels.patch?rev=1.1&content-type=text/plain |
37 |
|
38 |
Index: 10_all_binutils-2.22-ppc-textrels.patch |
39 |
=================================================================== |
40 |
http://bugs.gentoo.org/392645 |
41 |
http://sourceware.org/bugzilla/show_bug.cgi?id=13470 |
42 |
|
43 |
2011-12-03 Alan Modra <amodra@×××××.com> |
44 |
|
45 |
PR ld/13470 |
46 |
* elf32-ppc.c (ppc_elf_copy_indirect_symbol): Revert substantive |
47 |
change in 2011-07-01 commit. Comment. |
48 |
* elf64-ppc.c (ppc64_elf_copy_indirect_symbol): Likewise. |
49 |
|
50 |
=================================================================== |
51 |
RCS file: /cvs/src/src/bfd/elf32-ppc.c,v |
52 |
retrieving revision 1.302.2.1 |
53 |
retrieving revision 1.302.2.2 |
54 |
diff -u -r1.302.2.1 -r1.302.2.2 |
55 |
--- src/bfd/elf32-ppc.c 2011/11/15 11:36:52 1.302.2.1 |
56 |
+++ src/bfd/elf32-ppc.c 2011/12/03 00:58:01 1.302.2.2 |
57 |
@@ -2987,10 +2987,6 @@ |
58 |
edir->elf.needs_plt |= eind->elf.needs_plt; |
59 |
edir->elf.pointer_equality_needed |= eind->elf.pointer_equality_needed; |
60 |
|
61 |
- /* If we were called to copy over info for a weak sym, that's all. */ |
62 |
- if (eind->elf.root.type != bfd_link_hash_indirect) |
63 |
- return; |
64 |
- |
65 |
if (eind->dyn_relocs != NULL) |
66 |
{ |
67 |
if (edir->dyn_relocs != NULL) |
68 |
@@ -3022,6 +3018,16 @@ |
69 |
eind->dyn_relocs = NULL; |
70 |
} |
71 |
|
72 |
+ /* If we were called to copy over info for a weak sym, that's all. |
73 |
+ You might think dyn_relocs need not be copied over; After all, |
74 |
+ both syms will be dynamic or both non-dynamic so we're just |
75 |
+ moving reloc accounting around. However, ELIMINATE_COPY_RELOCS |
76 |
+ code in ppc_elf_adjust_dynamic_symbol needs to check for |
77 |
+ dyn_relocs in read-only sections, and it does so on what is the |
78 |
+ DIR sym here. */ |
79 |
+ if (eind->elf.root.type != bfd_link_hash_indirect) |
80 |
+ return; |
81 |
+ |
82 |
/* Copy over the GOT refcount entries that we may have already seen to |
83 |
the symbol which just became indirect. */ |
84 |
edir->elf.got.refcount += eind->elf.got.refcount; |
85 |
=================================================================== |
86 |
RCS file: /cvs/src/src/bfd/elf64-ppc.c,v |
87 |
retrieving revision 1.363.2.4 |
88 |
retrieving revision 1.363.2.5 |
89 |
diff -u -r1.363.2.4 -r1.363.2.5 |
90 |
--- src/bfd/elf64-ppc.c 2011/11/08 13:46:36 1.363.2.4 |
91 |
+++ src/bfd/elf64-ppc.c 2011/12/03 00:58:02 1.363.2.5 |
92 |
@@ -4435,10 +4435,6 @@ |
93 |
edir->elf.ref_regular_nonweak |= eind->elf.ref_regular_nonweak; |
94 |
edir->elf.needs_plt |= eind->elf.needs_plt; |
95 |
|
96 |
- /* If we were called to copy over info for a weak sym, that's all. */ |
97 |
- if (eind->elf.root.type != bfd_link_hash_indirect) |
98 |
- return; |
99 |
- |
100 |
/* Copy over any dynamic relocs we may have on the indirect sym. */ |
101 |
if (eind->dyn_relocs != NULL) |
102 |
{ |
103 |
@@ -4471,6 +4467,16 @@ |
104 |
eind->dyn_relocs = NULL; |
105 |
} |
106 |
|
107 |
+ /* If we were called to copy over info for a weak sym, that's all. |
108 |
+ You might think dyn_relocs need not be copied over; After all, |
109 |
+ both syms will be dynamic or both non-dynamic so we're just |
110 |
+ moving reloc accounting around. However, ELIMINATE_COPY_RELOCS |
111 |
+ code in ppc64_elf_adjust_dynamic_symbol needs to check for |
112 |
+ dyn_relocs in read-only sections, and it does so on what is the |
113 |
+ DIR sym here. */ |
114 |
+ if (eind->elf.root.type != bfd_link_hash_indirect) |
115 |
+ return; |
116 |
+ |
117 |
/* Copy over got entries that we may have already seen to the |
118 |
symbol which just became indirect. */ |
119 |
if (eind->elf.got.glist != NULL) |