Don't allow mov-to-lea optimization for __ehdr_start.
[external/binutils.git] / gold / ChangeLog
1 2017-01-31  Cary Coutant  <ccoutant@gmail.com>
2
3         PR gold/21090
4         * x86_64.cc (Target_x86_64::can_convert_mov_to_lea): Add check
5         for predefined symbol.
6         (Target_x86_64::Relocate::relocate): Fix formatting.
7
8 2017-01-23  Rahul Chaudhry  <rahulchaudhry@google.com>
9
10         * testsuite/icf_safe_so_test.sh: Use "set -e".
11         * testsuite/icf_safe_test.sh: Likewise.
12         * testsuite/icf_test.sh: Likewise.
13
14 2017-01-23  Vladimir Radosavljevic  <Vladimir.Radosavljevic@imgtec.com>
15
16         * mips.cc (Mips_output_data_plt::rel_plt): Remove const from return
17         type.
18         (Target_mips::make_plt_entry): Make the sh_info field of .rel.plt
19         point to .plt.
20
21 2017-01-23  Vladimir Radosavljevic  <Vladimir.Radosavljevic@imgtec.com>
22
23         PR gold/21054
24         * mips.cc (Mips_got_info::record_global_got_symbol): Don't add symbol
25         to the dynamic symbol table if it is forced to local visibility.
26         (Target_mips::do_finalize_sections): Don't add __RLD_MAP symbol to the
27         dynamic symbol table if it is forced to local visibility.
28
29 2017-01-20  Nick Clifton  <nickc@redhat.com>
30
31         * aarch64.cc (Stub_template_repertoire): Change ST_E_835769_INSNS
32         from a pointer to an array.
33
34 2017-01-13  H.J. Lu  <hongjiu.lu@intel.com>
35
36         PR gold/21040
37         * powerpc.cc (Powerpc_relobj<size, big_endian>::make_toc_relative):
38         Cast 0x80008000 to uint64_t.
39
40 2017-01-12  Cary Coutant  <ccoutant@gmail.com>
41
42         * object.cc (Sized_relobj_file): Fix byte counts for calls to memmem.
43
44 2017-01-11  Cary Coutant  <ccoutant@gmail.com>
45
46         PR gold/21040
47         * x86_64.cc (Output_data_plt_x86_64_bnd::do_fill_first_plt_entry):
48         Remove unnecessary 'typename' keyword.
49         (Output_data_plt_x86_64_bnd::do_fill_plt_entry): Likewise.
50         (Output_data_plt_x86_64_bnd::fill_aplt_entry): Likewise.
51         (Output_data_plt_x86_64_bnd::do_fill_tlsdesc_entry): Likewise.
52         (Output_data_plt_x86_64_bnd::do_write): Likewise.
53
54 2017-01-11  Cary Coutant  <ccoutant@gmail.com>
55
56         PR gold/21040
57         * x86_64.cc (Output_data_plt_x86_64_bnd::do_fill_first_plt_entry):
58         Remove unnecessary 'typename' keyword.
59         (Output_data_plt_x86_64_bnd::do_fill_plt_entry): Likewise.
60         (Output_data_plt_x86_64_bnd::do_fill_tlsdesc_entry): Likewise.
61         (Output_data_plt_x86_64_bnd::fill_aplt_entry): Likewise.
62         * testsuite/copy_test_relro_1.cc (p, b, c, q): Add separate extern
63         declarations.
64
65 2017-01-11  Cary Coutant  <ccoutant@gmail.com>
66
67         PR gold/21039
68         * testsuite/script_test_13.sh: Adjust patterns to work for i386.
69         * testsuite/script_test_15a.sh: Likewise.
70         * testsuite/script_test_15b.sh: Likewise.
71         * testsuite/script_test_15c.sh: Likewise.
72
73 2017-01-11  Alan Modra  <amodra@gmail.com>
74
75         * powerpc.cc (class Powerpc_copy_relocs): New.
76         (Powerpc_copy_relocs::emit): New function.
77         (Powerpc_relobj::relatoc_, toc_, no_toc_opt_): New variables.
78         (Powerpc_relobj::toc_shndx, set_no_toc_opt, no_toc_opt): New inlines.
79         (Powerpc_relobj::do_relocate_sections): New function.
80         (Powerpc_relobj::make_toc_relative): Likewise.
81         (Powerpc_relobj::do_find_special_sections): Stash away .rela.toc
82         and .toc too.
83         (ok_lo_toc_insn): Move earlier, and handle more insns.
84         (Target_powerpc::Scan::local): If optimizing toc accesses, set
85         no_toc_opt for entries we can't edit.  Check insn validity.
86         Emit "toc optimization is not supported" warning, downgraded
87         from error.
88         (Target_powerpc::Scan::global): Likewise.
89         (Target_powerpc::Relocate::relocate): Edit TOC indirect code
90         to TOC relative.  Don't emit "toc optimization is not supported"
91         error here.
92
93 2017-01-10  Cary Coutant  <ccoutant@gmail.com>
94
95         * aarch64.cc (AArch64_relobj::do_relocate_sections): Call
96         Sized_relobj_file::relocate_section_range().
97         * arm.cc (Arm_relobj::do_relocate_sections): Likewise.
98         * object.h (Sized_relobj_file::relocate_section_range): New method.
99         * reloc.cc (Sized_relobj_file::do_relocate_sections): Move
100         implementation...
101         (Sized_relobj_file::relocate_section_range): ...to new method.
102
103 2017-01-10  Alan Modra  <amodra@gmail.com>
104
105         * testsuite/ver_test_8.sh: Accept .TOC. in lieu of
106         _GLOBAL_OFFSET_TABLE_.  Allow zero count.
107         * testsuite/copy_test_relro_1.cc (c, q): New vars.
108         * testsuite/copy_test_relro.cc: Rewrite to test read-only
109         status of variables directly.  Reference new vars in
110         read-only data.
111
112 2017-01-10  Alan Modra  <amodra@gmail.com>
113
114         * options.h: Add --secure-plt option.
115         * powerpc.cc (Target_powerpc::Scan::local): Detect and error
116         on -fPIC -mbss-plt code.
117         (Target_powerpc::Scan::global): Likewise.
118
119 2017-01-09  Alan Modra  <amodra@gmail.com>
120
121         * powerpc.cc (Target_powerpc::make_plt_section): Point sh_info of
122         ".rela.plt" at ".plt".
123
124 2017-01-07  Alan Modra  <amodra@gmail.com>
125
126         * powerpc.cc: Use shorter equivalent elfcpp typedef for
127         Reltype and reloc_size throughout.
128         (Target_powerpc::symval_for_branch): Exclude dynamic symbols.
129         (Target_powerpc::Scan::local): Use local var r_sym.
130         (Target_powerpc::Scan::global: Likewise.
131         (Target_powerpc::Relocate::relocate): Delete shadowing r_sym.
132
133 2017-01-02  Alan Modra  <amodra@gmail.com>
134
135         Update year range in copyright notice of all files.
136
137 For older changes see ChangeLog-2016
138 \f
139 Copyright (C) 2017 Free Software Foundation, Inc.
140
141 Copying and distribution of this file, with or without modification,
142 are permitted in any medium without royalty provided the copyright
143 notice and this notice are preserved.
144
145 Local Variables:
146 mode: change-log
147 left-margin: 8
148 fill-column: 74
149 version-control: never
150 End: