Unmap the buffer if plugin didn't claim the file
[binutils-gdb.git] / ld / ChangeLog
1 2015-02-10 H.J. Lu <hongjiu.lu@intel.com>
2
3 * plugin.c (plugin_input_file_t): Add use_mmap.
4 (plugin_pagesize): New.
5 (get_view): Use plugin_pagesize. Set use_mmap if mmap is used.
6 (plugin_load_plugins): Initialize plugin_pagesize.
7 (plugin_maybe_claim): Unmap the buffer if plugin didn't claim the
8 file.
9
10 2015-02-10 H.J. Lu <hongjiu.lu@intel.com>
11
12 * plugin.c (get_view): Align offset passed to mmap.
13
14 2015-02-08 H.J. Lu <hongjiu.lu@intel.com>
15
16 * ldfile.c (ldfile_try_open_bfd): Don't call bfd_check_format
17 if plugin isn't active or there is no thing more to claim.
18
19 2015-02-08 H.J. Lu <hongjiu.lu@intel.com>
20
21 * plugin.c (plugin_maybe_claim): Check format against bfd_object
22 directly.
23
24 2015-02-07 H.J. Lu <hongjiu.lu@intel.com>
25
26 * plugin.c (plugin_maybe_claim): Replace entry->the_bfd with
27 ibfd.
28
29 2015-02-07 H.J. Lu <hongjiu.lu@intel.com>
30
31 * plugin.c: Include "libbfd.h".
32 (plugin_strdup): New.
33 (plugin_maybe_claim): Remove the argument of pointer to struct
34 ld_plugin_input_file. Open and handle input entry.
35 * plugin.h (plugin_maybe_claim): Updated.
36 * ldfile.c (ldfile_try_open_bfd): Call plugin_maybe_claim directly
37 without passing a pointer to struct ld_plugin_input_file.
38 * ldmain.c: Don't include "libbfd.h".
39 (add_archive_element): Call plugin_maybe_claim directly without
40 passing a pointer to struct ld_plugin_input_file.
41
42 2015-02-06 H.J. Lu <hongjiu.lu@intel.com>
43
44 * ld.texinfo: Document -z text, -z notext and -z textoff.
45 * emultempl/elf32.em (gld${EMULATION_NAME}_list_options): Add
46 -z text, -z notext and -z textoff.
47
48 2015-02-06 H.J. Lu <hongjiu.lu@intel.com>
49
50 * configure.ac: Add AC_FUNC_MMAP.
51 * config.in: Regenerated.
52 * configure: Likewise.
53 * plugin.c: Include <sys/mman.h>.
54 (MAP_FAILED): New. Defined if not defined.
55 (PROT_READ): Likewise.
56 (MAP_PRIVATE): Likewise.
57 (view_buffer_t): New.
58 (plugin_input_file_t): Add view_buffer.
59 (get_view): Try mmap and cache the view buffer.
60 (plugin_maybe_claim): Initialize view_buffer.
61
62 2015-02-05 H.J. Lu <hongjiu.lu@intel.com>
63
64 * plugin.c (release_input_file): Set fd to -1 after closing it.
65 (plugin_maybe_claim): Close fd only if fd != -1.
66
67 2015-02-05 H.J. Lu <hongjiu.lu@intel.com>
68
69 PR ld/17878
70 * plugin.c: Include <errno.h>.
71 (errno): New. Declare if needed.
72 (plugin_input_file_t): New.
73 (get_input_file): Implemented.
74 (get_view): Likewise.
75 (release_input_file): Likewise.
76 (add_symbols): Updated.
77 (get_symbols): Likewise.
78 (plugin_maybe_claim): Allocate a plugin_input_file_t. Close fd
79 only for a bfd_object input.
80
81 2015-02-02 Alan Modra <amodra@gmail.com>
82
83 * emultempl/ppc64elf.em (toc_section_name): New var.
84 (ppc_after_open): Set it.
85 (ppc_before_allocation): Use it.
86 (gld${EMULATION_NAME}_after_allocation): Here too.
87
88 2015-01-29 H.J. Lu <hongjiu.lu@intel.com>
89
90 * ldfile.c (ldfile_try_open_bfd): Replace plugin_active_plugins_p()
91 with link_info.lto_plugin_active.
92 * ldlang.c (lang_process): Likewise.
93 * ldmain.c (add_archive_element): Likewise.
94 * plugin.c (plugin_active_plugins_p): Removed.
95 * plugin.h (plugin_active_plugins_p): Likewise.
96
97 2015-01-28 H.J. Lu <hongjiu.lu@intel.com>
98
99 * plugin.h (plugin_get_ir_dummy_bfd): Removed. Move comments to
100 ...
101 * plugin.c (plugin_get_ir_dummy_bfd): Here. Make it static.
102
103 2015-01-28 H.J. Lu <hongjiu.lu@intel.com>
104
105 PR ld/17878
106 * plugin.c (tv_header_tags(): Add LDPT_GET_VIEW.
107 (get_view): New function.
108 (set_tv_header): Handle LDPT_GET_VIEW.
109 * testplug.c (tag_names): Add LDPT_GET_VIEW.
110 (tv_get_view): New.
111 (dump_tv_tag): Handle LDPT_GET_VIEW.
112 (parse_tv_tag): Likewise.
113
114 2015-01-28 Alan Modra <amodra@gmail.com>
115
116 * emulparams/elf64ppc.sh (INITIAL_READWRITE_SECTIONS): Define.
117 * emultempl/ppc64elf.em (params): Init new field.
118 (ppc_after_open): New function.
119 (LDEMUL_AFTER_OPEN): Define.
120 * ldlang.c (lang_final): Whitespace fix.
121
122 2015-01-28 James Bowman <james.bowman@ftdichip.com>
123
124 * Makefile.am: Add FT32 files.
125 * configure.tgt: Handle FT32 target.
126 * emulparams/elf32ft32.sh: New file.
127 * scripttempl/ft32.sc: New file.
128 * Makefile.in: Regenerate.
129
130 2015-01-28 Senthil Kumar Selvaraj <senthil_kumar.selvaraj@atmel.com>
131
132 PR 4643
133 * ldexp.c (fold_name): Fold LENGTH only after
134 lang_first_phase_enum.
135 * ldgram.y (memory_spec): Don't evaluate ORIGIN and LENGTH
136 rightaway.
137 * ldlang.h (struct memory_region_struct): Add origin_exp and
138 length_exp fields.
139 * ldlang.c (lang_do_memory_regions): New.
140 (lang_memory_region_lookup): Initialize origin_exp and
141 length_exp fields.
142 (lang_process): Call lang_do_memory_regions.
143
144 2015-01-20 Andrew Burgess <andrew.burgess@embecosm.com>
145
146 * ldlang.c (print_assignment): Only evaluate the expression for a
147 PROVIDE'd assignment when the destination is being defined.
148 Display a special message for PROVIDE'd symbols that are not being
149 provided.
150
151 2015-01-20 Alan Modra <amodra@gmail.com>
152
153 * emulparams/elf64ppc.sh (OTHER_SDATA_SECTIONS): Use in place of..
154 (OTHER_BSS_SYMBOLS): ..this.
155 (OTHER_PLT_RELOC_SECTIONS): Don't define.
156 (OTHER_GOT_RELOC_SECTIONS): Add rela.toc1 and rela.tocbss.
157 (OTHER_READWRITE_SECTIONS): Don't define. Move .toc1 to..
158 (OTHER_RELRO_SECTIONS_2): ..here.
159 * scripttempl/elf.sc: Move SBSS too when DATA_SDATA.
160
161 2015-01-20 Alan Modra <amodra@gmail.com>
162
163 * emulparams/elf64ppc.sh (BSS_PLT): Don't define.
164 (OTHER_READWRITE_SECTIONS): Move .branch_lt to..
165 (OTHER_RELRO_SECTIONS_2): ..here.
166 (DATA_GOT, SEPARATE_GOTPLT, DATA_SDATA, DATA_PLT,
167 PLT_BEFORE_GOT): Define.
168 * scripttempl/elf.sc: Handle DATA_SDATA and DATA_GOT/DATA_PLT/
169 PLT_BEFORE_GOT combination.
170 (DATA_GOT, SDATA_GOT): Don't define if either is already defined.
171
172 2015-01-20 Alan Modra <amodra@gmail.com>
173
174 * emulparams/elf64ppc.sh (OTHER_READWRITE_SECTIONS): Move .opd to..
175 (OTHER_RELRO_SECTIONS_2): ..here, new define.
176 * scripttempl/elf.sc: Add OTHER_RELRO_SECTIONS_2.
177
178 2015-01-19 Alan Modra <amodra@gmail.com>
179
180 PR ld/17615
181 * ldlang.c (lang_process): Run lang_common before lang_gc_sections.
182
183 2015-01-14 Jiong Wang <jiong.wang@arm.com>
184
185 * ld-arm/elf32-reject.s: New testcase.
186 * ld-arm/elf32-reject.d: Likewise.
187 * ld-arm/elf32-reject-pie.s: Likewise.
188 * ld-arm/elf32-reject-pie.d: Likewise.
189 * ld-arm/arm-elf.exp: Run new testcases.
190 * ld-arm/ifunc-7.s: Delete f2/f4 test items.
191 * ld-arm/ifunc-7.rd: Likewise.
192 * ld-arm/ifunc-7.gd: Likewise.
193 * ld-arm/ifunc-7.dd: Likewise.
194 * ld-arm/ifunc-8.s: Likewise.
195 * ld-arm/ifunc-8.rd: Likewise.
196 * ld-arm/ifunc-8.gd: Likewise.
197 * ld-arm/ifunc-8.dd: Likewise.
198
199 2015-01-01 Alan Modra <amodra@gmail.com>
200
201 * ldver.c (ldversion): Just print current year.
202
203 2015-01-01 Alan Modra <amodra@gmail.com>
204
205 Update year range in copyright notice of all files.
206
207 For older changes see ChangeLog-2014
208 \f
209 Copyright (C) 2015 Free Software Foundation, Inc.
210
211 Copying and distribution of this file, with or without modification,
212 are permitted in any medium without royalty provided the copyright
213 notice and this notice are preserved.
214
215 Local Variables:
216 mode: change-log
217 left-margin: 8
218 fill-column: 74
219 version-control: never
220 End: