OpenCores
URL https://opencores.org/ocsvn/openrisc/openrisc/trunk

Subversion Repositories openrisc

[/] [openrisc/] [tags/] [gnu-src/] [gdb-7.2/] [gdb-7.2-or32-1.0rc3/] [bfd/] [ChangeLog] - Blame information for rev 584

Go to most recent revision | Details | Compare with Previous | View Log

Line No. Rev Author Line
1 330 jeremybenn
2010-07-06  H.J. Lu  
2
 
3
        * dwarf2.c (add_line_info): Initialize prev_line.
4
 
5
2010-07-06  Alan Modra  
6
 
7
        * elf32-ppc.c (ppc_elf_relax_section): Insert branch around
8
        trampolines only for .init and .fini sections.
9
 
10
2010-07-05  Alan Modra  
11
 
12
        * elf32-ppc.c: Formatting.
13
        (ppc_elf_finish_dynamic_sections): Don't make plt_entry var static.
14
 
15
2010-07-03  Cary Coutant  
16
 
17
        * compress.c (bfd_uncompress_section_contents): Add ATTRIBUTE_UNUSED.
18
        * dwarf2.c (read_and_uncompress_section): New function.
19
        (read_section): Call it.
20
        (find_line): Likewise.
21
 
22
2010-07-01  Alan Modra  
23
 
24
        * elf64-ppc.c (ppc64_elf_edit_toc): Use SYMBOL_CALLS_LOCAL rather
25
        than SYMBOL_REFERENCES_LOCAL.
26
        (ppc64_elf_relocate_section): Likewise.
27
 
28
2010-07-01  Alan Modra  
29
 
30
        * elf64-ppc.c (ppc64_elf_edit_toc): Keep toc entries for ifuncs.
31
 
32
2010-06-29  Alan Modra  
33
 
34
        * cpu-maxq.c: Delete file.
35
        * coff-maxq.c: Delete file.
36
        * Makefile.am: Remove references to maxq.
37
        * archures.c: Likewise.
38
        * coffcode.h: Likewise.
39
        * configure.in: Likewise.
40
        * targets.c: Likewise.
41
        * config.bfd: Move maxq from obsolete to removed.
42
        * Makefile.in: Regenerate.
43
        * bfd-in2.h: Regenerate.
44
        * configure: Regenerate.
45
        * libbfd.h: Regenerate.
46
        * po/SRC-POTFILES.in: Regenerate.
47
 
48
2010-06-28  Alan Modra  
49
 
50
        * compress.c (bfd_uncompress_section_contents): Use ATTRIBUTE_UNUSED
51
        to silence gcc warning.
52
 
53
2010-06-27  Alan Modra  
54
 
55
        * elf64-ppc.c (get_tls_mask): Don't segfault on NULL elf_section_data.
56
        (group_sections): Likewise.
57
 
58
2010-06-27  Alan Modra  
59
 
60
        * bout.c (aligncode): Delete set but unused variables.
61
        * coff-mcore.c (coff_mcore_relocate_section): Likewise.
62
        * coff-ppc.c (ppc_record_toc_entry): Likewise.
63
        (coff_ppc_relocate_section): Likewise.
64
        * coff-rs6000.c (xcoff_complain_overflow_bitfield_func): Likewise.
65
        * elf-m10200.c (mn10200_elf_relax_delete_bytes): Likewise.
66
        * elf-m10300.c (mn10300_elf_final_link_relocate): Likewise.
67
        (mn10300_elf_relax_section): Likewise.
68
        * elf32-arm.c (arm_build_one_stub, arm_size_one_stub): Likewise.
69
        (record_vfp11_erratum_veneer): Likewise.
70
        (bfd_elf32_arm_vfp11_erratum_scan): Likewise.
71
        (elf32_arm_final_link_relocate): Likewise.
72
        (elf32_arm_check_relocs, arm_map_one_stub): Likewise.
73
        * elf32-avr.c (elf32_avr_relax_delete_bytes): Likewise.
74
        (elf32_avr_relax_section): Likewise.
75
        (avr_mark_stub_not_to_be_necessary): Likewise.
76
        * elf32-bfin.c (_bfin_create_got_section): Likewise.
77
        * elf32-cr16.c (cr16_elf_final_link_relocate): Likewise.
78
        (elf32_cr16_relax_delete_bytes): Likewise.
79
        * elf32-cr16c.c (cr16c_elf_final_link_relocate): Likewise.
80
        * elf32-cris.c (elf_cris_finish_dynamic_symbol): Likewise.
81
        * elf32-crx.c (elf32_crx_relax_delete_bytes): Likewise.
82
        * elf32-h8300.c (elf32_h8_relax_section): Likewise.
83
        (elf32_h8_relax_delete_bytes): Likewise.
84
        * elf32-hppa.c (elf32_hppa_check_relocs): Likewise.
85
        * elf32-i370.c (i370_elf_check_relocs): Likewise.
86
        (elf_relocate_section): Likewise.
87
        * elf32-ip2k.c (adjust_all_relocations): Likewise.
88
        (ip2k_elf_relax_section): Likewise.
89
        * elf32-lm32.c (lm32_elf_relocate_section): Likewise.
90
        (lm32_elf_check_relocs): Likewise.
91
        (lm32_elf_finish_dynamic_sections): Likewise.
92
        (lm32_elf_finish_dynamic_symbol): Likewise.
93
        * elf32-m32c.c (m32c_offset_for_reloc): Likewise.
94
        (m32c_elf_relax_delete_bytes): Likewise.
95
        * elf32-m32r.c (m32r_elf_finish_dynamic_symbol): Likewise.
96
        (m32r_elf_finish_dynamic_sections): Likewise.
97
        (m32r_elf_check_relocs, m32r_elf_fake_sections): Likewise.
98
        * elf32-m68hc11.c (m68hc11_elf_relax_section): Likewise.
99
        * elf32-m68hc1x.c (elf32_m68hc11_relocate_section): Likewise.
100
        * elf32-m68k.c (elf_m68k_gc_sweep_hook): Likewise.
101
        * elf32-microblaze.c (microblaze_elf_relocate_section): Likewise.
102
        (microblaze_elf_check_relocs): Likewise.
103
        (microblaze_elf_finish_dynamic_symbol): Likewise.
104
        * elf32-msp430.c (msp430_elf_relax_delete_bytes): Likewise.
105
        * elf32-ppc.c (ppc_elf_tls_optimize): Likewise.
106
        * elf32-rx.c (rx_elf_relocate_section): Likewise.
107
        (elf32_rx_relax_delete_bytes, rx_offset_for_reloc): Likewise.
108
        (elf32_rx_relax_section): Likewise.
109
        * elf32-score.c (score_elf_got_offset_from_index): Likewise.
110
        (score_elf_final_link_relocate): Likewise.
111
        (s3_bfd_score_elf_relocate_section): Likewise.
112
        * elf32-score7.c (score_elf_got_offset_from_index): Likewise.
113
        (s7_bfd_score_elf_relocate_section): Likewise.
114
        * elf32-sh.c (sh_elf_check_relocs): Likewise.
115
        * elf32-spu.c (spu_elf_relocate_section): Likewise.
116
        * elf32-v850.c (v850_elf_check_relocs): Likewise.
117
        (find_remembered_hi16s_reloc): Likewise.
118
        * elf32-vax.c (elf32_vax_merge_private_bfd_data): Likewise.
119
        (elf_vax_relocate_section): Likewise.
120
        * elf32-xc16x.c (elf32_xc16x_relocate_section): Likewise.
121
        * elf32-xtensa.c (xlate_offset_with_removed_text): Likewise.
122
        (move_literal): Likewise.
123
        * elf64-hppa.c (elf64_hppa_section_from_shdr): Likewise.
124
        (elf64_hppa_check_relocs): Likewise.
125
        (elf64_hppa_finish_dynamic_symbol): Likewise.
126
        (elf64_hppa_relocate_section): Likewise.
127
        * elf64-mmix.c (mmix_elf_reloc, mmix_elf_relax_section): Likewise.
128
        * elf64-ppc.c (ppc64_elf_check_relocs): Likewise.
129
        (ppc64_elf_edit_opd, ppc64_elf_edit_toc): Likewise.
130
        * elfxx-ia64.c (elfNN_ia64_section_from_shdr): Likewise.
131
        (elfNN_vms_section_from_shdr): Likewise.
132
        * elfxx-sparc.c (_bfd_sparc_elf_check_relocs): Likewise.
133
        (_bfd_sparc_elf_relocate_section): Likewise.
134
        * hp300hpux.c (slurp_symbol_table): Likewise.
135
        * i386lynx.c (swap_std_reloc_out, swap_std_reloc_in): Likewise.
136
        * mach-o.c (bfd_mach_o_write_thread): Likewise.
137
        * mmo.c (mmo_scan, mmo_write_symbols_and_terminator): Likewise.
138
        * nlm32-sparc.c (nlm_sparc_read_reloc): Likewise.
139
        * pdp11.c (pdp11_aout_link_input_section): Likewise.
140
        (aout_link_input_section, aout_link_input_bfd): Likewise.
141
        * pe-mips.c (mips_swap_reloc_out): Likewise.
142
        (coff_pe_mips_relocate_section): Likewise.
143
        * som.c (som_bfd_ar_write_symbol_stuff): Likewise.
144
        * vms-alpha.c (_bfd_vms_slurp_egsd): Likewise.
145
        * xsym.c (bfd_sym_fetch_type_information_table_ent): Likewise.
146
 
147
        * coff-i860.c (i860_reloc_processing): Avoid set but unused warning.
148
        * coffcode.h (coff_compute_section_file_positions): Likewise.
149
        (coff_slurp_reloc_table): Likewise.
150
        * cpu-arm.c (arm_check_note): Likewise.
151
        * elf-bfd.h (RELOC_FOR_GLOBAL_SYMBOL): Likewise.
152
        * elf32-avr.c (elf32_avr_relocate_section): Likewise.
153
        * elf32-bfin.c (elf32_bfin_merge_private_bfd_data): Likewise.
154
        * elf32-ip2k.c (ip2k_elf_relocate_section): Likewise.
155
        * elf32-moxie.c (moxie_elf_relocate_section): Likewise.
156
        * elf32-msp430.c (elf32_msp430_relocate_section): Likewise.
157
        * elf32-sh64.c (_bfd_sh_align_load_span): Likewise.
158
        * ieee.c (parse_expression): Likewise.
159
        (ieee_slurp_external_symbols, drop_int): Likewise.
160
        * peXXigen.c (pe_print_pdata): Likewise.
161
        * versados.c (process_esd): Likewise.
162
 
163
2010-06-25  Tristan Gingold  
164
 
165
        * vms-alpha.c (_bfd_vms_write_egsd): Check absolute section with
166
        its flags.  Create an absolute section if needed.
167
 
168
2010-06-25  Tristan Gingold  
169
 
170
        * vms-alpha.c (_bfd_vms_write_egsd): Set target_index field of
171
        sections.  Mark .vmsdebug section as SEC_DEBUGGING.  Do not create
172
        dummy psect anymore.  Adjust.
173
        (_bfd_vms_write_eeom): Adjust (use target_index instead of index)
174
        (_bfd_vms_write_etir): Ditto.
175
        (start_etir_or_etbt_record): Test for SEC_DEBUGGING instead of
176
        section name.  Adjust.
177
 
178
2010-06-25  Tristan Gingold  
179
 
180
        * vms-alpha.c (alpha_vms_write_exec): Set linktime field.
181
 
182
2010-06-25  Alan Modra  
183
 
184
        * elf64-ppc.c (toc_skip_enum): Define.
185
        (ppc64_elf_edit_toc): Use two low bits of skip array as markers.
186
        Optimize largetoc sequences.
187
        (adjust_toc_syms): Update for skip array change.
188
        (ppc64_elf_relocate_section): Handle R_PPC64_LO_DS_OPT.
189
 
190
2010-06-25  Alan Modra  
191
 
192
        * elf64-ppc.c (is_static_defined): New function.
193
        (get_tls_mask, ppc_type_of_stub): Use it here.
194
        (ppc64_elf_edit_opd): Ensure we only attempt to edit ppc64 input.
195
        (ppc64_elf_tls_setup): Typo fix.
196
        (adjust_toc_syms): Correctly handle symbols defined past the end
197
        of the toc.  Move syms on removed entries to next entry rather
198
        than to start of toc.
199
        (ppc64_elf_edit_toc): Likewise.  Ensure we only attempt to
200
        edit ppc64 input.  Allocate one extra word in skip array.
201
        Honour info->keep_memory when reading relocs if we can.
202
        Adjust toc relocs after adjusting symbols.
203
 
204
2010-06-23  Nathan Sidwell  
205
 
206
        * archive64.c (bfd_elf64_archive_write_armap): Fix buffer overrun
207
        when scaning map.
208
 
209
2010-06-17  Tristan Gingold  
210
 
211
        * Makefile.am (BFD32_BACKENDS_CFILES): Move vms-alpha.c to ...
212
        (BFD64_BACKENDS_CFILES): ... here.
213
        (BFD32_BACKENDS): Move vms-alpha.lo to ...
214
        (BFD64_BACKENDS): ... here.
215
        * Makefile.in: Regenerate.
216
 
217
2010-06-15  Joseph Myers  
218
 
219
        * elf-bfd.h (LEAST_KNOWN_OBJ_ATTRIBUTE): Decrease to 2.
220
        * elf32-tic6x.c (elf32_tic6x_obj_attrs_arg_type,
221
        elf32_tic6x_merge_arch_attributes, elf32_tic6x_merge_attributes,
222
        elf32_tic6x_merge_private_bfd_data): New.
223
        (bfd_elf32_bfd_merge_private_bfd_data,
224
        elf_backend_obj_attrs_arg_type, elf_backend_obj_attrs_section,
225
        elf_backend_obj_attrs_section_type, elf_backend_obj_attrs_vendor):
226
        Define.
227
        * elf32-tic6x.h (elf32_tic6x_merge_arch_attributes): Declare.
228
 
229
2010-06-15  Joseph Myers  
230
 
231
        * elf-bfd.h (LEAST_KNOWN_OBJ_ATTRIBUTE): Define.
232
        (struct elf_backend_data): Update comment on obj_attrs_order.
233
        * elf-attrs.c (vendor_obj_attr_size, vendor_set_obj_attr_contents,
234
        _bfd_elf_copy_obj_attributes): Use LEAST_KNOWN_OBJ_ATTRIBUTE
235
        instead of hardcoded 4.
236
        * elf32-arm.c (elf32_arm_obj_attrs_order): Use
237
        LEAST_KNOWN_OBJ_ATTRIBUTE and LEAST_KNOWN_OBJ_ATTRIBUTE + 1
238
        instead of hardcoded 4 and 5.
239
        (elf32_arm_merge_eabi_attributes): Use LEAST_KNOWN_OBJ_ATTRIBUTE
240
        instead of hardcoded 4.
241
 
242
2010-06-14  Kevin Buettner  
243
 
244
        * elf32-h8300.c (elf_symbol_leading_char): Define.
245
 
246
2010-06-11  Jan Kratochvil  
247
 
248
        * vms-alpha.c (_bfd_vms_write_egsd): Make sname const.
249
 
250
2010-06-11  Tristan Gingold  
251
 
252
        * vms-alpha.c (_bfd_vms_slurp_egsd): Always set vma of absolute
253
        sections to 0.
254
 
255
2010-06-11  Tristan Gingold  
256
 
257
        * vms-alpha.c (evax_bfd_print_etir): Handle ETIR__C_STO_GBL_LW.
258
 
259
2010-06-11  Tristan Gingold  
260
 
261
        * vms-misc.c (_bfd_vms_output_counted): Make VALUE argument const.
262
        Adjust cast.
263
        (_bfd_vms_output_dump): Make DATA argument const, adjust cast.
264
        * vms.h (_bfd_vms_output_counted, _bfd_vms_output_dump): Adjust.
265
        * vms-alpha.c (evax_section_flags): Make it const.
266
        (vms_secflag_by_name): Remove unused ABFD argument.
267
        Make SECTION_FLAGS and NAME arguments const. Clarify comment.
268
        (vms_esecflag_by_name): Make SECTION_FLAGS and NAME arguments const.
269
        (_bfd_vms_slurp_egsd): Adjust call to vms_secflag_by_name.
270
        (_bfd_vms_write_egsd): Remove useless cast.
271
 
272
2010-06-10  Tristan Gingold  
273
 
274
        * config.bfd: Remove #if/#endif so that som can be compiled on any
275
        host.
276
        * targets.c (_bfd_target_vector): Remove #if/#endif so that som
277
        can be used on any host.
278
 
279
2010-06-10  Tristan Gingold  
280
 
281
        * som.c: Can now be compiled on any host.
282
        Include bfd headers instead of system one.
283
        (som_compute_checksum): Parameter is now a pointer to a
284
        som_external_header structure.  Adjust.
285
        (struct section_to_type): Field section is now const.
286
        (R_DLT_REL, R_AUX_UNWIND, R_SEC_STMT): Removed conditional
287
        definition.
288
        (R_LONG_PCREL_MODE, R_N0SEL, R_N1SEL, R_LINETAB): Ditto.
289
        (R_LINETAB_ESC, R_LTP_OVERRIDE, R_COMMENT): Ditto.
290
        (som_swap_clock_in, som_swap_clock_out): New functions.
291
        (som_swap_header_in, som_swap_header_out): Likewise.
292
        (som_swap_space_dictionary_in): Likewise.
293
        (som_swap_space_dictionary_out): Likewise.
294
        (som_swap_subspace_dictionary_in): Likewise.
295
        (som_swap_subspace_dictionary_record_out): Likewise.
296
        (som_swap_aux_id_in, som_swap_aux_id_out): Likewise.
297
        (som_swap_string_auxhdr_out): Likewise.
298
        (som_swap_compilation_unit_out): Likewise.
299
        (som_swap_exec_auxhdr_in): Likewise.
300
        (som_swap_exec_auxhdr_out): Likewise.
301
        (som_swap_lst_header_in): Likewise.
302
        (som_object_setup): Adjust parameter type using bfd types.
303
        (setup_sections): Likewise.  Ditto for object file types.
304
        Use intermediate variables for external representation and use the
305
        swap functions to convert.
306
        (som_object_p): Ditto.  Remove #ifdef/#endif on always defined
307
        macros.
308
        (som_prep_headers): Likewise.
309
        (som_write_symbol_strings): Likewise.
310
        (som_begin_writing): Likewise.
311
        (som_finish_writing): Likewise.
312
        (som_build_and_write_symbol_table): Likewise.
313
        (bfd_section_from_som_symbol): Likewise.
314
        (som_slurp_symbol_table): Likewise.
315
        (som_bfd_print_private_bfd_data): Likewise.
316
        (bfd_som_attach_aux_hdr): Likewise.  Clear the padding.
317
        (bfd_som_attach_compilation_unit): Likewise.
318
        (som_bfd_count_ar_symbols): Likewise.
319
        (som_bfd_fill_in_ar_symbols): Likewise.
320
        (som_slurp_armap): Likewise.
321
        (som_bfd_ar_write_symbol_stuff): Likewise.
322
        (som_write_armap): Likewise.  Use _bfd_ar_spacepad instead of
323
        sprintf to write header fields.
324
        * som.h: Include bfd headers instead of system one.
325
        (FILE_HDR_SIZE, AUX_HDR_SIZE): Removed.
326
        (struct somdata): Use bfd structures instead of system ones.
327
        (struct som_section_data_struct): Likewise.
328
        (struct som_subspace_dictionary_record): Removed (now in
329
        include/som/internal.h)
330
 
331
2010-06-10  Tristan Gingold  
332
 
333
        * targets.c (bfd_target_list): Remove hp/ux compiler work-around
334
        as bfd requires an ANSI-C compiler.
335
 
336
2010-06-09 Tristan Gingold  
337
 
338
        * bfdio.c (bfd_bread): Fix the code to prevent reading past the
339
        end of archive members.
340
 
341
2010-06-08  Tristan Gingold  
342
 
343
        * som.c (som_bfd_free_cached_info): Do not free relocations as
344
        they were allocated with bfd_zalloc.
345
 
346
2010-06-08  Tristan Gingold  
347
 
348
        * vms-lib.c (_bfd_vms_lib_write_archive_contents): Increment
349
        for the first block.
350
 
351
2010-06-08  Tristan Gingold  
352
 
353
        * vms-lib.c (_bfd_vms_lib_ia64_mkarchive): New function.
354
        * libbfd-in.h (_bfd_vms_lib_ia64_mkarchive): Declare.
355
        * libbfd.h: Regenerate.
356
        * elfxx-ia64.c (bfd_elfNN_write_archive_contents): Redefine for VMS.
357
        (bfd_elfNN_mkarchive): Ditto.
358
 
359
2010-06-02  Tristan Gingold  
360
 
361
        * vms-alpha.c (alpha_vms_bfd_final_link): Fix 64bit constant.
362
 
363
2010-06-01  Ralf Wildenhues  
364
 
365
        * configure: Regenerate.
366
 
367
2010-06-01  Tristan Gingold  
368
 
369
        * vms-alpha.c (struct vms_private_data_struct): Add
370
        transfer_address field.  Remove unused dst_info field.
371
        (alpha_vms_write_exec): Use transfer_address.
372
        (_bfd_vms_write_egsd): Add a comment about LIB$INITIALIZE.
373
        (alpha_vms_bfd_final_link): Set transfer_address.
374
 
375
2010-05-31  Tristan Gingold  
376
 
377
        * vms-lib.c (credat_lo, credat_hi): New fields.
378
        (vms_read_block): Adjust comments.
379
        (vms_write_block): New function.
380
        (_bfd_vms_lib_archive_p): Decode majorid once.  Replace some
381
        hard-coded values with constants.  Set credat_lo and credat_hi.
382
        (_bfd_vms_lib_mkarchive): Add argument kind.
383
        Set ver, mhd_size and type according to kind.
384
        (_bfd_vms_lib_alpha_mkarchive): New function.
385
        (struct lib_index): Renamed from struct vms_index
386
        (lib_index_cmp): Renamed from vms_index_cmp.  Adjusted.
387
        (get_idxlen): Type of idx argument adjusted.  Add is_elfidx
388
        argument and handle it.
389
        (vms_write_index): Adjust argument idx.  Handle elf indexes.
390
        (_bfd_vms_lib_build_map): Adjust type of arguments modules and res.
391
        (_bfd_vms_lib_write_archive_contents): Add is_elfidx variable and
392
        use it.  Handle elf indexes.  Set credat.
393
        * libbfd-in.h (_bfd_vms_lib_mkarchive): Renamed to ...
394
        (_bfd_vms_lib_alpha_mkarchive): ... this.
395
        * libbfd.h: Regenerated.
396
        * vms-alpha.c (vms_alpha_vec): Adjust after previous renaming.
397
 
398
2010-05-28  Sterling Augustine  
399
 
400
        * elf32-xtensa.c (elf_xtensa_relocate_section): Add a large amount
401
        of code to change the bits in the instructions to match the changes
402
        in the relocations.  Declare dest_addr and sym_sec to help.
403
 
404
2010-05-28  Jan Kratochvil  
405
 
406
        Workaround GCC PR middle-end/4210.
407
        * vms-misc.c (vms_time_t_to_vms_time): Use ternary operator for val[2]
408
        and val[3].
409
 
410
2010-05-27  Tristan Gingold  
411
 
412
        * vms-misc.c: Define __NEW_STARLET.  Remove trailing spaces.
413
        (VMS_TIME_FACTOR, VMS_TIME_OFFSET): New macros.
414
        (vms_time_to_time_t): Use them instead of local const.
415
        (vms_time_t_to_vms_time): New function.
416
        (vms_get_time): Likewise.
417
        (vms_raw_get_time): Likewise.
418
        * vms.h (vms_time_t_to_vms_time): New declaration.
419
        (vms_get_time): Likewise.
420
        (vms_raw_get_time): Likewise.
421
 
422
2010-05-26  Tristan Gingold  
423
 
424
        * vms-alpha.c: Update comments.
425
        (alpha_vms_write_exec): Set lnkflags.  Write the GST.
426
        (alpha_vms_link_output_symbol): New function.
427
        (alpha_vms_bfd_final_link): Generate the VMS symbol table.
428
        Set dst_section private field.
429
        (alpha_vms_bfd_final_link): Remove code that set dst_section.
430
 
431
2010-05-26  Tristan Gingold  
432
 
433
        * bfdio.c: Declare and define _bfd_memory_iovec.
434
        (bfd_bread): Move code for BFD_IN_MEMORY...
435
        (bfd_bwrite): ... Ditto ...
436
        (bfd_tell): ... Ditto ...
437
        (bfd_flush): ... Ditto ...
438
        (bfd_stat): ... Ditto ...
439
        (bfd_seek): ... Ditto ...
440
        (bfd_get_size): ... Ditto ...
441
        (bfd_mmap): ... Ditto ...
442
        (memory_bread): ... to these new functions.
443
        (memory_bwrite): Ditto.
444
        (memory_btell): Ditto.
445
        (memory_bseek): Ditto.
446
        (memory_bflush): Ditto.
447
        (memory_bstat): Ditto.
448
        (memory_bmmap): Ditto.
449
        (memory_bclose): New function.
450
        * peicode.h (pe_ILF_build_a_bfd): Use BFD_IN_MEMORY.
451
        * xcofflink.c (bfd_xcoff_link_generate_rtinit): Ditto.
452
        * opncls.c (bfd_close): Do not handle BFD_IN_MEMORY case.
453
        (bfd_make_writable): Use _bfd_memory_iovec.
454
        * elfcode.h (bfd_from_remote_memory): Use _bfd_memory_iovec.
455
        * coff-alpha.c (alpha_ecoff_get_elt_at_filepos): Use
456
        _bfd_memory_iovec.
457
        (alpha_ecoff_openr_next_archived_file): Use proxy_origin
458
        instead of origin.
459
        * libbfd.h: Regenerate.
460
 
461
2010-05-25  Daniel Jacobowitz  
462
            Joseph Myers  
463
            Andrew Stubbs  
464
 
465
        * config.bfd (sh-*-uclinux* | sh[12]-*-uclinux*): Add
466
        bfd_elf32_shl_vec, and FDPIC vectors to targ_selvecs.
467
        * configure.in: Handle FDPIC vectors.
468
        * elf32-sh-relocs.h: Add FDPIC and movi20 relocations.
469
        * elf32-sh.c (DEFAULT_STACK_SIZE): Define.
470
        (SYMBOL_FUNCDESC_LOCAL): Define.  Use it instead of
471
        SYMBOL_REFERENCES_LOCAL for function descriptors.
472
        (fdpic_object_p): New.
473
        (sh_reloc_map): Add FDPIC and movi20 relocations.
474
        (sh_elf_info_to_howto, sh_elf_relocate_section): Handle new invalid
475
        range.
476
        (struct elf_sh_plt_info): Add got20 and short_plt.  Update all
477
        definitions.
478
        (FDPIC_PLT_ENTRY_SIZE, FDPIC_PLT_LAZY_OFFSET): Define.
479
        (fdpic_sh_plt_entry_be, fdpic_sh_plt_entry_le, fdpic_sh_plts): New.
480
        (FDPIC_SH2A_PLT_ENTRY_SIZE, FDPIC_SH2A_PLT_LAZY_OFFSET): Define.
481
        (fdpic_sh2a_plt_entry_be, fdpic_sh2a_plt_entry_le)
482
        (fdpic_sh2a_short_plt_be, fdpic_sh2a_short_plt_le, fdpic_sh2a_plts):
483
        New.
484
        (get_plt_info): Handle FDPIC.
485
        (MAX_SHORT_PLT): Define.
486
        (get_plt_index, get_plt_offset): Handle short_plt.
487
        (union gotref): New.
488
        (struct elf_sh_link_hash_entry): Add funcdesc, rename tls_type to
489
        got_type and adjust all uses.  Add GOT_FUNCDESC.
490
        (struct sh_elf_obj_tdata): Add local_funcdesc.  Rename
491
        local_got_tls_type to local_got_type.
492
        (sh_elf_local_got_type): Renamed from sh_elf_local_got_tls_type.  All
493
        users changed.
494
        (sh_elf_local_funcdesc): Define.
495
        (struct elf_sh_link_hash_table): Add sfuncdesc, srelfuncdesc, fdpic_p,
496
        and srofixup.
497
        (sh_elf_link_hash_newfunc): Initialize new fields.
498
        (sh_elf_link_hash_table_create): Set fdpic_p.
499
        (sh_elf_omit_section_dynsym): New.
500
        (create_got_section): Create .got.funcdesc, .rela.got.funcdesc
501
        and .rofixup.
502
        (allocate_dynrelocs): Allocate local function descriptors and space
503
        for R_SH_FUNCDESC-related relocations, and for rofixups.
504
        Handle GOT_FUNCDESC.  Create fixups.  Handle GOT entries which
505
        require function descriptors.
506
        (sh_elf_always_size_sections): Handle PT_GNU_STACK and __stacksize.
507
        (sh_elf_modify_program_headers): New.
508
        (sh_elf_size_dynamic_sections): Allocate function descriptors for
509
        local symbols.  Allocate .got.funcdesc contents.  Allocate rofixups.
510
        Handle local GOT entries of type GOT_FUNCDESC.  Create fixups for
511
        local GOT entries.  Ensure that FDPIC libraries always have a PLTGOT
512
        entry in the .dynamic section.
513
        (sh_elf_add_dyn_reloc, sh_elf_got_offset, sh_elf_initialize_funcdesc)
514
        (sh_elf_add_rofixup, sh_elf_osec_to_segment)
515
        (sh_elf_osec_readonly_p, install_movi20_field): New functions.
516
        (sh_elf_relocate_section): Handle new relocations, R_SH_FUNCDESC,
517
        R_SH_GOTFUNCDESC and R_SH_GOTOFFFUNCDESC.  Use sh_elf_got_offset
518
        and .got.plt throughout to find _GLOBAL_OFFSET_TABLE_.  Add rofixup
519
        read-only section warnings.  Handle undefined weak symbols.  Generate
520
        fixups for R_SH_DIR32 and GOT entries.  Check for cross-segment
521
        relocations and clear EF_SH_PIC.  Handle 20-bit relocations.
522
        Always generate R_SH_DIR32 for FDPIC instead of R_SH_RELATIVE.
523
        (sh_elf_gc_sweep_hook): Handle R_SH_FUNCDESC, R_SH_GOTOFF20,
524
        R_SH_GOTFUNCDESC, R_SH_GOTFUNCDESC20, and R_SH_GOTOFFFUNCDESC.
525
        Handle 20-bit relocations.
526
        (sh_elf_copy_indirect_symbol): Copy function descriptor reference
527
        counts.
528
        (sh_elf_check_relocs): Handle new relocations.  Make symbols
529
        dynamic for FDPIC relocs.  Account for rofixups.  Error for FDPIC
530
        symbol mismatches.  Allocate a GOT for R_SH_DIR32. Allocate fixups
531
        for R_SH_DIR32.
532
        (sh_elf_copy_private_data): Copy PT_GNU_STACK size.
533
        (sh_elf_merge_private_data): Copy initial flags.  Do not clobber
534
        non-mach flags.  Set EF_SH_PIC for FDPIC.  Reject FDPIC mismatches.
535
        (sh_elf_finish_dynamic_symbol): Do not handle got_funcdesc entries
536
        here.  Rename sgot to sgotplt and srel to srelplt.  Handle short_plt,
537
        FDPIC descriptors, and got20.  Create R_SH_FUNCDESC_VALUE for FDPIC.
538
        Use install_movi20_field.  Rename srel to srelgot.  Always generate
539
        R_SH_DIR32 for FDPIC instead of R_SH_RELATIVE.
540
        (sh_elf_finish_dynamic_sections): Fill in the GOT pointer in rofixup.
541
        Do not fill in reserved GOT entries for FDPIC.  Correct DT_PLTGOT.
542
        Rename sgot to sgotplt.  Assert that the right number of rofixups
543
        and dynamic relocations were allocated.
544
        (sh_elf_use_relative_eh_frame, sh_elf_encode_eh_address): New.
545
        (elf_backend_omit_section_dynsym): Use sh_elf_omit_section_dynsym.
546
        (elf_backend_can_make_relative_eh_frame)
547
        (elf_backend_can_make_lsda_relative_eh_frame)
548
        (elf_backend_encode_eh_address): Define.
549
        (TARGET_BIG_SYM, TARGET_BIG_NAME, TARGET_LITTLE_SYM)
550
        (TARGET_LITTLE_NAME, elf_backend_modify_program_headers, elf32_bed):
551
        Redefine for FDPIC vector.
552
        * reloc.c: Add SH FDPIC and movi20 relocations.
553
        * targets.c (_bfd_target_vector): Add FDPIC vectors.
554
        * configure, bfd-in2.h, libbfd.h: Regenerated.
555
 
556
2010-05-25  Jay Krell  
557
 
558
        PR ld/11624
559
        * archive.c (_bfd_calloc_wrapper): New function.
560
        (_bfd_add_bfd_to_archive_cache): Use it.
561
 
562
        * configure.in: Add alpha*-*-*vms* to list of natives.
563
        * configure: Regenerate.
564
 
565
        * vms-misc.c: Define globalref if necessary.
566
        (vms_convert_to_var_unix_filename): Rename to
567
        _bfd_vms_convert_to_var_unix_filename and export.
568
        * vms.h: Add prototype for _bfd_vms_convert_to_var_unix_filename.
569
        * vms-alpha.c (vms_close_and_cleanup): Update invocation of
570
        vms_convert_to_var_unix_filename.
571
 
572
2010-05-24  Tristan Gingold  
573
 
574
        * vms-alpha.c (add_symbol_entry): New function extrated from ...
575
        (add_symbol): ... adjusted.
576
 
577
2010-05-24  Tristan Gingold  
578
 
579
        * vms-alpha.c (_bfd_vms_slurp_egsd): Fix indentation.
580
        (alpha_vms_write_exec): Add a comment.
581
        (_bfd_vms_write_egsd): Ditto.
582
        (alpha_vms_convert_symbol): Remove a blank line.
583
 
584
2010-05-21  Tristan Gingold  
585
 
586
        * vms-alpha.c (_bfd_vms_slurp_eihs): Do not create a bfd section
587
        for the GST.
588
 
589
2010-05-21  Tristan Gingold  
590
 
591
        * vms-alpha.c (_bfd_vms_slurp_eisd): Set SEC_HAS_CONTENTS and
592
        SEC_LOAD if isect has data.
593
        (vms_get_symbol_info): Refine the condition for 'T' type.
594
 
595
2010-05-18  Tristan Gingold  
596
 
597
        * vms-alpha.c (_bfd_vms_write_emh): New function.
598
        (_bfd_vms_write_lmn): New function.
599
        (_bfd_vms_write_eeom): Moved.
600
        (hash_string): Likewise.
601
        (_bfd_vms_length_hash_symbol): Likewise.
602
        (_bfd_vms_write_ehdr): Code moved to _bfd_vms_write_emh
603
        and _bfd_vms_write_lmn, and call these functions.
604
 
605
2010-05-18  Tristan Gingold  
606
 
607
        * vms-alpha.c (evax_bfd_print_dst): Handle INCR_LINUM_L.
608
        Add details in the messages.
609
        (evax_bfd_print_image): Change message.
610
 
611
2010-05-18  H.J. Lu  
612
 
613
        PR gas/11600
614
        * elf.c (_bfd_elf_make_section_from_shdr): Handle SHF_EXCLUDE
615
        (elf_fake_sections): Likewise.
616
 
617
        * elf32-i370.c (i370_elf_section_from_shdr): Don't handle
618
        SHF_EXCLUDE here.
619
        * elf32-ppc.c (ppc_elf_fake_sections): Likewise.
620
 
621
2010-05-17  Tristan Gingold  
622
 
623
        * vms-alpha.c: Include esgps.h and eidc.h.
624
        (_bfd_vms_slurp_egsd): Ignore SPSC and IDC sub-records.
625
        (evax_bfd_print_egsd_flags): New function, extracted from ...
626
        (evax_bfd_print_egsd): ..., calls evax_bfd_print_egsd_flags.  Handles
627
        EGSD__C_SPSC and EGSD__C_IDC.
628
 
629
2010-05-14  Tristan Gingold  
630
 
631
        * vms-alpha.c (alpha_vms_object_p): Accept header size of 0.
632
        (_bfd_vms_get_object_record): Handle align byte only in the
633
        foreign case.
634
 
635
2010-05-14  Tristan Gingold  
636
 
637
        * vms-lib.c (_bfd_vms_lib_ia64_archive_p): New function.
638
        * libbfd-in.h (_bfd_vms_lib_ia64_archive_p): Add prototype.
639
        * libbfd.h: Regenerate.
640
        * configure.in (havevecs): Define HAVE_all_vecs when
641
        --enable-targets=all is set.  Use AC_SUBST on it.
642
        (tdefaults): Do not add havevecs.
643
        (bfd_elf64_ia64_vms_vec): Add vms-lib.lo and vms-misc.lo
644
        * configure: Regenerate.
645
        * Makefile.am (HAVEVECS): New variable.
646
        (INCLUDES): Add HAVEVECS.
647
        * Makefile.in: Regenerate.
648
        * elfxx-ia64.c (INCLUDE_IA64_VMS): New macro, defined if vms
649
        target is selected.  Add #ifdef/#endif around vms specific code.
650
        (bfd_elfNN_archive_p, bfd_elfNN_archive_slurp_armap,
651
        bfd_elfNN_archive_slurp_extended_name_table,
652
        bfd_elfNN_archive_construct_extended_name_table,
653
        bfd_elfNN_archive_truncate_arname,
654
        bfd_elfNN_archive_write_armap,
655
        bfd_elfNN_archive_read_ar_hdr,
656
        bfd_elfNN_archive_write_ar_hdr,
657
        bfd_elfNN_archive_openr_next_archived_file,
658
        bfd_elfNN_archive_get_elt_at_index,
659
        bfd_elfNN_archive_generic_stat_arch_elt,
660
        bfd_elfNN_archive_update_armap_timestamp): Define to use vms archives.
661
 
662
2010-05-11  Jie Zhang  
663
 
664
        * elf32-arm.c (elf32_arm_merge_eabi_attributes): Merge
665
        Tag_ABI_HardFP_use correctly.
666
 
667
2010-05-11  Alan Modra  
668
 
669
        * coffcode.h (coff_write_object_contents): Enclose all occurrences
670
        of hasdebug and is_reloc_section in #ifdef COFF_IMAGE_WITH_PE.
671
 
672
2010-05-07  Daniel Jacobowitz  
673
 
674
        * elf32-arm.c (struct a8_erratum_reloc): Add hash member.  Move
675
        sym_name to improve packing.
676
        (cortex_a8_erratum_scan): Check for PLT entries.
677
        (elf32_arm_size_stubs): Save the target symbol for a8 relocs.
678
 
679
2010-05-07  Tristan Gingold  
680
 
681
        * Makefile.in: Regenerate with automake 1.11.1.
682
        * aclocal.m4: Ditto.
683
 
684
2010-05-05  Nick Clifton  
685
 
686
        * po/es.po: Updated Spanish translation.
687
 
688
2010-05-03  Tristan Gingold  
689
 
690
        * vms-lib.c (vms_lib_bopen): Fix the size threshold to read
691
        selective_search flag.
692
        Add comments.
693
        * vms-alpha.c (alpha_vms_bfd_final_link): Create the DMT section
694
        before output_has_begun is set.
695
 
696
2010-05-03  Tristan Gingold  
697
 
698
        * vms-alpha.c: Add comments.
699
        (struct vms_private_data_struct): Remove image_autoextend field.
700
        (dst_check_allocation): Removed.
701
        (image_write): Remove call to dst_check_allocation.
702
        (vms_slurp_debug): Do not set image_autoextend.  Adjust section
703
        size.
704
        (_bfd_vms_slurp_object_records): Remove useless new_type variable.
705
        (alpha_vms_write_exec): Use dst_section to get the dst section.
706
        Write the dmt section.
707
        (evax_bfd_print_image): Also print the dst size in hexa.  Fix typo.
708
        (alpha_vms_read_sections_content): Do not set image_autoextend.
709
        (alpha_vms_bfd_final_link): Generate the dst.
710
 
711
2010-05-03  Tristan Gingold  
712
 
713
        * vms-lib.c (_bfd_vms_lib_archive_p): Adjust for a possible empty
714
        next array.
715
        (vms_lib_dcx): Adjust for the above change.
716
 
717
2010-04-30  H.J. Lu  
718
 
719
        PR ld/11542
720
        * elf-bfd.h (RELOC_AGAINST_DISCARDED_SECTION): New.
721
 
722
        * elf32-i386.c (elf_i386_relocate_section): Use it.
723
        * elf64-x86-64.c (elf64_x86_64_relocate_section): Likewise.
724
 
725
2010-04-30  Tristan Gingold  
726
 
727
        * vms-lib.c (vms_read_block): New function.
728
        (vms_traverse_index): Use vms_read_block.  Handle long key names.
729
 
730
2010-04-30  Tristan Gingold  
731
 
732
        * vms-lib.c (struct lib_tdata): Field artdata added, fields nbr_syms
733
        and syms removed.
734
        (struct carsym_mem): New structure.
735
        (vms_add_index): New function.
736
        (vms_add_indexes_from_list): New function.
737
        (vms_traverse_index): Parameter carsym changed to carsym_mem.
738
        Code adjusted to handle elfidx.
739
        (vms_lib_read_index): Adjusted for vms_traverse_index changes.
740
        Parameter NBREL is now a pointer.
741
        (_bfd_vms_lib_archive_p): Adjust for above change.  Handle ia64
742
        archives.
743
        (_bfd_vms_lib_mkarchive): Adjusted for changes in struct lib_tdata.
744
        (_bfd_vms_lib_find_symbol): Ditto.
745
        (vms_lib_bopen): Fix two typos: return FALSE in case of error,
746
        check MHD id.
747
        (_bfd_vms_lib_get_module): New function.
748
        (_bfd_vms_lib_get_elt_at_index): Rewritten using the above
749
        function.
750
        (_bfd_vms_lib_openr_next_archived_file): Use _bfd_vms_lib_get_module.
751
        (_bfd_vms_lib_generic_stat_arch_elt): Handle ia64 archives.
752
        (vms_write_index): Adjust for structure renamed.
753
        * vms-alpha.c (alpha_vms_link_add_archive_symbols): Adjust for
754
        changes of _bfd_vms_lib_find_symbol.
755
 
756
2010-04-28  Kai Tietz  
757
 
758
        * config.bfd: Correct accidential reverted patch
759
        about vax*-*-*vms*.
760
 
761
2010-04-27  Kai Tietz  
762
 
763
        * pe-x86_64.c (TARGET_UNDERSCORE): Set value dependent
764
        to USE_MINGW64_LEADING_UNDERSCORES.
765
        * pei-x86_64.c (TARGET_UNDERSCORE): Likewise.
766
        * config.bfd: Change underscoring default for x64 mingw
767
        to false.
768
        * coffcode.h (coff_write_relocs): Add check that dereferenced
769
        sym_ptr_ptr isn't NULL.
770
        * config.in (USE_MINGW64_LEADING_UNDERSCORES): New.
771
        * configure: Regenerated.
772
        * configure.in: Add option '--enable-leading-mingw64-underscores'
773
        and define config.in variable USE_MINGW64_LEADING_UNDERSCORES.
774
 
775
2010-04-27  Nick Clifton  
776
 
777
        PR binutils/11512
778
        * coffgen.c (coff_find_nearest_line): Incldue the section address
779
        of function name symbols in address comparisons.
780
 
781
2010-04-27  Nick Clifton  
782
 
783
        * po/fr.po: Updated French translation.
784
 
785
2010-04-23  Alan Modra  
786
 
787
        * elf.c: Replace use of ELF_IS_SECTION_IN_SEGMENT and
788
        ELF_IS_SECTION_IN_SEGMENT_FILE with ELF_SECTION_IN_SEGMENT
789
        throughout file.
790
        (assign_file_positions_for_load_sections): Modify section in
791
        segment warning to ignore overlay vmas.
792
        * elf32-spu.c (spu_elf_object_p): Replace use of
793
        ELF_IS_SECTION_IN_SEGMENT_MEMORY with ELF_SECTION_IN_SEGMENT.
794
 
795
2010-04-22  Nick Clifton  
796
 
797
        * po/bfd.pot: Updated by the Translation project.
798
        * po/vi.po: Updated Vietnamese translation.
799
 
800
2010-04-22  Alan Modra  
801
 
802
        * elf.c (assign_file_positions_for_load_sections): Revert 2008-05-29
803
        change.  Tidy.  Don't error on sections not allocated in segment.
804
 
805
2010-04-15  Andrew Haley  
806
 
807
        * bfd-in.h (elf32_arm_fix_exidx_coverage): Add new flag:
808
        merge_exidx_entries.
809
        * bfd-in2.h: Likewise.
810
        * elf32-arm.c (elf32_arm_fix_exidx_coverage): Likewise.  Use it to
811
        control merging of exidx entries.
812
 
813
2010-04-20  Joseph Myers  
814
 
815
        * elf32-tic6x.h: New.
816
        * elf-bfd.h (enum elf_target_id): Define TIC6X_ELF_DATA.
817
        * elf32-tic6x.c (struct elf32_tic6x_obj_tdata, elf32_tic6x_tdata,
818
        elf32_tic6x_howto_table_rel, elf32_tic6x_info_to_howto_rel,
819
        elf32_tic6x_set_use_rela_p, elf32_tic6x_mkobject,
820
        elf32_tic6x_new_section_hook, elf32_tic6x_rel_relocation_p,
821
        bfd_elf32_mkobject, bfd_elf32_new_section_hook): New.
822
        (elf32_tic6x_reloc_type_lookup, elf32_tic6x_reloc_name_lookup,
823
        elf32_tic6x_relocate_section): Handle REL relocations.
824
        (elf_info_to_howto_rel): Define to elf32_tic6x_info_to_howto_rel.
825
 
826
2010-04-20  Jakub Jelinek  
827
 
828
        * dwarf2.c (find_abstract_instance_name, scan_unit_for_symbols): Treat
829
        DW_AT_linkage_name the same as DW_AT_MIPS_linkage_name.
830
 
831
2010-04-19  Nick Clifton  
832
 
833
        * archive64.c (bfd_elf64_archive_slurp_armap): Remove unused
834
        arhdrpos variable.
835
        * elf64-x86-64.c (elf64_x86_64_relocate_section): Add unused
836
        attribute to warned variable.  Remove unused val, type and type2
837
        variables.
838
 
839
2010-04-16  Andreas Schwab  
840
 
841
        * vms-alpha.c (alpha_vms_link_add_object_symbols): Avoid breaking
842
        strict-aliasing rules.
843
 
844
2010-04-16  Tristan Gingold  
845
 
846
        * vms-alpha.c (_bfd_vms_slurp_eihd): Fix typo.
847
        (_bfd_vms_get_object_record): Always assume there is a pad byte
848
        for alignment.
849
 
850
        * vms-lib.c: Add a few comments.
851
 
852
2010-04-15  Matthew Gretton-Dann  
853
 
854
        * elf32-arm.c (elf32_arm_merge_eabi_attributes): Support additions to
855
        attributes in v2.08 of the ABI.
856
 
857
2010-04-15  Alan Modra  
858
 
859
        * config.bfd (vax*-*-*vms*): Delete.
860
 
861
2010-04-14  Tristan Gingold  
862
 
863
        * Makefile.am (BFD32_BACKENDS): Remove vms-gsd.lo, vms-hdr.lo,
864
        vms-tir.lo, vms.lo and add vms-alpha.lo
865
        (BFD32_BACKENDS_CFILES): Remove vms-gsd.c, vms-hdr.c,
866
        vms-tir.c, vms.c and add vms-alpha.c
867
        * Makefile.in: Regenerate.
868
        * configure.in (TDEFINES): Adjust file list for vms_alpha_vec.
869
        Remove vms_vax_vec.
870
        * configure: Regenerate.
871
        * targets.c (vms_vax_vec): Remove the declaration.
872
        (_bfd_target_vector): Remove vms_vax_vec.
873
        * vms-alpha.c: New file.
874
        * vms-gsd.c: Removed, rewritten in vms-alpha.c
875
        * vms-hdr.c: Ditto.
876
        * vms-tir.c: Ditto.
877
        * vms.c: Ditto.
878
        * vms-misc.c: Fix indentation and comments.  Replace most of
879
        #if VMS_DEBUG/vms_debug with vms_debug2.
880
        (_bfd_vms_hash_newfunc): Moved to vms-alpha.c
881
        (hash_string): Ditto.
882
        (_bfd_vms_length_hash_symbol): Ditto.
883
        (maybe_adjust_record_pointer_for_object): Ditto.
884
        (_bfd_vms_get_object_record): Ditto.
885
        (vms_get_remaining_object_record): Ditto.
886
        (_bfd_vms_push): Ditto.
887
        (_bfd_vms_pop): Ditto.
888
        (_bfd_vms_get_header_values): Removed.
889
        (_bfd_vms_get_first_record): Removed.
890
        (vms_get_remaining_image_record): Removed.
891
        (new_symbol): Removed.
892
        (_bfd_vms_enter_symbol): Removed.
893
        (_bfd_vms_save_sized_string): Use memcpy instead of strncpy.
894
        (_bfd_vms_output_begin): Remove rechead parameter.  Replace bfd
895
        parameter with struct vms_rec_wr.
896
        (_bfd_vms_output_push): Removed and replaced by ...
897
        (_bfd_vms_output_begin_subrec): ... new function.
898
        (_bfd_vms_output_alignment): Replace bfd parameter with
899
        struct vms_rec_wr, and adjust.
900
        (_bfd_vms_output_check): Ditto
901
        (_bfd_vms_output_byte): Ditto.
902
        (_bfd_vms_output_short): Ditto.
903
        (_bfd_vms_output_long): Ditto.
904
        (_bfd_vms_output_quad): Ditto.
905
        (_bfd_vms_output_counted): Ditto.
906
        (_bfd_vms_output_dump): Ditto.
907
        (_bfd_vms_output_fill): Ditto.
908
        (_bfd_vms_output_pop): Removed and replaced by ...
909
        (_bfd_vms_output_end_subrec): ... new function.
910
        (_bfd_vms_output_flush): Removed.
911
        (_bfd_vms_output_align): New function.
912
        (_bfd_vms_output_end): Add recwr parameter.  Adjust for this new
913
        parameter.
914
        (vms_convert_to_var): New function imported from vms.c
915
        (vms_convert_to_var_1): Ditto.
916
        (vms_convert_to_var_unix_filename): Ditto.
917
        (vms_get_module_name): Ditto.
918
        (get_vms_time_string): Ditto.
919
        (vms_time_to_time_t): Ditto.
920
        (vms_rawtime_to_time_t): Ditto.
921
        * vms.h: All macros for the VMS file format are now in include/vms.
922
        Prototypes for vms.c, vms-gsd.c, vms-misc.c, vms-hdr.c, vms-tir.c
923
        have been removed.
924
        (struct vms_symbol_struct, struct stack_struct): Moved to vms-alpha.c
925
        (struct fileinfo, struct srecinfo, struct lineinfo): Ditto.
926
        (struct funcinfo, struct vms_private_data_struct): Ditto.
927
        (struct vms_section_data_struct): Ditto.
928
        (struct vms_rec_rd, stryct vms_rec_wr): New declarations.
929
        (vms_get_module_name, get_vms_time_string): New declarations.
930
        (vms_time_to_time_t, vms_rawtime_to_time_t): Ditto.
931
        (_bfd_vms_output_begin_subrec, _bfd_vms_output_end_subrec): Ditto.
932
        (_bfd_vms_save_sized_string, _bfd_vms_save_counted_string): Adjusted.
933
        (_bfd_vms_output_begin, _bfd_vms_output_alignment): Ditto.
934
        (_bfd_vms_output_end,_bfd_vms_output_check): Ditto.
935
        (_bfd_vms_output_byte, _bfd_vms_output_short): Ditto.
936
        (_bfd_vms_output_long, _bfd_vms_output_quad): Ditto.
937
        (_bfd_vms_output_counted, _bfd_vms_output_dump): Ditto.
938
        (_bfd_vms_output_fill): Ditto.
939
        (bfd_vms_set_section_flags): Ditto.
940
 
941
2010-04-14  Matthew Gretton-Dann  
942
 
943
        * elflink.c (_bfd_elf_merge_symbol): Tighten up the test for early
944
        exit due to merging the same weak symbol to test that the symbols are
945
        actually weak.
946
 
947
2010-04-13  Alan Modra  
948
 
949
        * elf64-ppc.c (ppc64_elf_relocate_section): Correct NOP location
950
        when optimizing high got_tlsgd/ld insns.
951
 
952
2010-04-10  H.J. Lu  
953
 
954
        * hosts/x86-64linux.h (HAVE_PRPSINFO32_T): Undefine before
955
        define.
956
        (HAVE_PRSTATUS32_T): Likewise.
957
 
958
2010-04-10  H.J. Lu  
959
 
960
        PR corefiles/11467
961
        * configure.in (CORE_HEADER): New. Set to hosts/x86-64linux.h
962
        for x86_64-*-linux*.
963
        * config.in: Regenerated.
964
        * configure: Likewise.
965
 
966
        * elf.c: Include CORE_HEADER if it is defined.
967
 
968
2010-04-10  H.J. Lu  
969
            Jan Kratochvil  
970
 
971
        * hosts/x86-64linux.h: New.
972
 
973
2010-04-09  Nick Clifton  
974
 
975
        * aoutx.h (aout_link_input_bfd): Remove unused variable sym_count.
976
        * elf-eh-frame.c (_bfd_elf_eh_frame_section_offset): Remove unused
977
        variables htab and hdr_info and mark info parameter as unused.
978
        * elf.c (prep_headers): Remove unused variable i_phdrp.
979
        (_bfd_elf_write_object_contents): Remove unused variable i_ehdrp.
980
        * elf32-i386.c (elf_i386_relocate_section): Mark variabled warned
981
        as unused.
982
        * peXXigen.c (pe_print_reloc): Remove unused variable datasize.
983
        * verilog.c (verilog_write_section): Remove unused variable
984
        address.
985
 
986
2010-04-07  Alan Modra  
987
 
988
        * warning.m4 (GCC_WARN_CFLAGS): Only add -Wshadow for gcc-4 and above.
989
        * configure: Regenerate.
990
 
991
2010-04-06  H.J. Lu  
992
 
993
        PR ld/11434
994
        * elf-bfd.h (SYMBOLIC_BIND): Don't bind unique symbol locally.
995
 
996
2010-04-06  Tristan Gingold  
997
 
998
        * vms-lib.c (_bfd_vms_lib_write_archive_contents): Fix idd flags.
999
 
1000
2010-04-05  Jakub Jelinek  
1001
 
1002
        * elf-eh-frame.c (_bfd_elf_parse_eh_frame): Handle CIE version 4
1003
        provided that it has the expected address size and zero segment
1004
        length.
1005
 
1006
        * dwarf2.c (struct line_head): Add maximum_ops_per_insn field.
1007
        (struct line_info): Add op_index field, change end_sequence type to
1008
        unsigned char.
1009
        (new_line_sorts_after): For the same address compare op_index.
1010
        (add_line_info): Add op_index argument, store it into the structure.
1011
        (decode_line_info): Complain about unknown versions of .debug_line.
1012
        Initialize maximum_ops_per_insn.  Add op_index state register and
1013
        track it.
1014
 
1015
2010-04-01  Nathan Sidwell  
1016
 
1017
        * elf32-ppc.c (apuinfo_set): New static var.
1018
        (ppc_elf_begin_write_processing): Set it here, always create an
1019
        APUinfo section if there were any in the inputs.
1020
        (ppc_elf_write_section): Check apuinfo_set.
1021
        (ppc_elf_final_write_processing): Likewise.
1022
 
1023
2010-04-01  Tristan Gingold  
1024
 
1025
        * vms.h: Include time.h. Add prototypes for vms_get_module_name,
1026
        vms_time_to_time_t and vms_rawtime_to_time_t.
1027
        * vms.c (vms_alpha_vec): Add archives support.
1028
        * vms-misc.c: Include safe-ctype.h
1029
        (vms_get_module_name): New function.
1030
        (vms_time_to_time_t, vms_rawtime_to_time_t): Ditto.
1031
        * vms-hdr.c (_bfd_vms_write_hdr): Put module name creation to the
1032
        vms_get_module_name function.  Use this function.
1033
        * targets.c: Declare vms_lib_txt_vec.  Add it to _bfd_target_vector.
1034
        * libbfd-in.h: Add prototype for _bfd_append_relative_path.
1035
        Add prototypes for vms-lib.c
1036
        * libbfd.h: Regenerate.
1037
        * configure.in (TDEFINES): Add an entry for vms_lib_txt_vec.  Add
1038
        vms-lib.lo to vms_alpha_vec.
1039
        * config.bfd (targ_cpu): Add targ_selvecs for alpha*-*-*vms*.
1040
        * configure: Regenerate.
1041
        * bfd.c: Add selective_search field.
1042
        * bfd-in2.h: Regenerate.
1043
        * archive.c (append_relative_path): Rename to
1044
        _bfd_append_relative_path and make it public.
1045
        (_bfd_get_elt_at_filepos): Adjust for above renaming.
1046
        * Makefile.am (BFD32_BACKENDS): Add vms-lib.lo
1047
        (BFD32_BACKENDS_CFILES): Add vms-lib.c
1048
        * Makefile.in: Regenerate.
1049
 
1050
2010-04-01  Jakub Jelinek  
1051
 
1052
        * dwarf2.c (read_attribute_value): Handle CU version 4
1053
        for DW_FORM_ref_addr, handle DW_FORM_sec_offset, DW_FORM_exprloc
1054
        and DW_FORM_flag_present.  For unknown form value return NULL.
1055
        (scan_unit_for_symbols): For DW_AT_location handle DW_FORM_exprloc
1056
        like DW_FORM_block.
1057
        (parse_comp_unit): Allow CU version 4.
1058
 
1059
2010-04-01  Hans-Peter Nilsson  
1060
 
1061
        * elf32-cris.c (cris_elf_relocate_section): Correct first argument
1062
        to _bfd_elf_get_dynamic_reloc_section.
1063
        (elf_cris_discard_excess_dso_dynamics): Ditto.
1064
 
1065
2010-03-31  Kai Tietz  
1066
 
1067
        * coff-i386.c (in_reloc_p): Check also for R_SECREL32.
1068
        * coff-x86_64.c (in_reloc_p): Check also for R_AMD64_SECREL.
1069
 
1070
2010-03-31  Alan Modra  
1071
 
1072
        * elf64-ppc.c (ppc64_elf_relocate_section): Nop out optimized
1073
        TPREL16_HI and TPREL16_HA insns.
1074
 
1075
2010-03-31  Hans-Peter Nilsson  
1076
 
1077
        PR ld/11458
1078
        * elf32-cris.c (elf_cris_copy_indirect_symbol): Remove invalid
1079
        assert of empty pcrel_relocs_copied on the direct symbol.  Instead
1080
        of moving the list from the indirect symbol to the direct symbol,
1081
        merge into any existing list.
1082
        (cris_elf_check_relocs): Store the original section in the
1083
        pcrel_relocs_copied list, not the relocation section.
1084
        (elf_cris_discard_excess_dso_dynamics): Adjust accordingly to find
1085
        the relocation section, for reducing its size.  Change the
1086
        BFD_ASSERT into a check for the section being read-only, and only
1087
        emit warnings and TEXTREL marker when there's an entry for a
1088
        read-only section.
1089
 
1090
2010-03-29  Daniel Jacobowitz  
1091
 
1092
        * elf32-arm.c (using_thumb_only): Handle v6-M.
1093
 
1094
2010-03-26  Alan Modra  
1095
 
1096
        * elf32-ppc.c (ppc_elf_howto_raw ): Not pc-relative.
1097
        * bfd-in.h (elf_discarded_section): Clarify comment.
1098
        * reloc.c (struct reloc_howto_struct ): Likewise.
1099
        * bfd-in2.h: Regenerate.
1100
 
1101
2010-03-26  Matt Rice  
1102
 
1103
        * archive.c (_bfd_compute_and_write_armap): Allow symbols flagged
1104
        as unique in the armap.
1105
 
1106
2010-03-26  Alan Modra  
1107
 
1108
        PR ld/11375
1109
        * elf64-ppc.c (ppc64_elf_relocate_section): Always look up a
1110
        possible stub on branches.
1111
 
1112
2010-03-25  Joseph Myers  
1113
 
1114
        * Makefile.am (ALL_MACHINES): Add cpu-tic6x.lo.
1115
        (ALL_MACHINES_CFILES): Add cpu-tic6x.c.
1116
        (BFD32_BACKENDS): Add elf32-tic6x.lo.
1117
        (BFD32_BACKENDS_CFILES): Add elf32-tic6x.c.
1118
        * Makefile.in: Regenerate.
1119
        * archures.c (bfd_arch_tic6x, bfd_tic6x_arch): New.
1120
        (bfd_archures_list): Update.
1121
        * config.bfd (tic6x-*-elf): New.
1122
        * configure.in (bfd_elf32_tic6x_be_vec, bfd_elf32_tic6x_le_vec):
1123
        New.
1124
        * configure: Regenerate.
1125
        * cpu-tic6x.c, elf32-tic6x.c: New.
1126
        * reloc.c (BFD_RELOC_C6000_PCR_S21, BFD_RELOC_C6000_PCR_S12,
1127
        BFD_RELOC_C6000_PCR_S10, BFD_RELOC_C6000_PCR_S7,
1128
        BFD_RELOC_C6000_ABS_S16, BFD_RELOC_C6000_ABS_L16,
1129
        BFD_RELOC_C6000_ABS_H16, BFD_RELOC_C6000_SBR_U15_B,
1130
        BFD_RELOC_C6000_SBR_U15_H, BFD_RELOC_C6000_SBR_U15_W,
1131
        BFD_RELOC_C6000_SBR_S16, BFD_RELOC_C6000_SBR_L16_B,
1132
        BFD_RELOC_C6000_SBR_L16_H, BFD_RELOC_C6000_SBR_L16_W,
1133
        BFD_RELOC_C6000_SBR_H16_B, BFD_RELOC_C6000_SBR_H16_H,
1134
        BFD_RELOC_C6000_SBR_H16_W, BFD_RELOC_C6000_SBR_GOT_U15_W,
1135
        BFD_RELOC_C6000_SBR_GOT_L16_W, BFD_RELOC_C6000_SBR_GOT_H16_W,
1136
        BFD_RELOC_C6000_DSBT_INDEX, BFD_RELOC_C6000_PREL31,
1137
        BFD_RELOC_C6000_COPY, BFD_RELOC_C6000_ALIGN,
1138
        BFD_RELOC_C6000_FPHEAD, BFD_RELOC_C6000_NOCMP): New.
1139
        * targets.c (bfd_elf32_tic6x_be_vec, bfd_elf32_tic6x_le_vec): New.
1140
        (_bfd_target_vector): Update.
1141
        * bfd-in2.h, libbfd.h: Regenerate.
1142
 
1143
2010-03-24  H.J. Lu  
1144
 
1145
        * aout-target.h: Update copyright year.
1146
        * aout-tic30.c: Likewise.
1147
        * coff-alpha.c: Likewise.
1148
        * coff-rs6000.c: Likewise.
1149
        * coff64-rs6000.c: Likewise.
1150
        * elf64-mips.c: Likewise.
1151
        * ieee.c: Likewise.
1152
        * libecoff.h: Likewise.
1153
        * mach-o-target.c: Likewise.
1154
        * mach-o.c: Likewise.
1155
        * oasys.c: Likewise.
1156
        * targets.c: Likewise.
1157
 
1158
2010-03-24  H.J. Lu  
1159
 
1160
        * libbfd-in.h: Update copyright year.
1161
 
1162
2010-03-21  H.J. Lu  
1163
 
1164
        PR ld/11413
1165
        * elflink.c (_bfd_elf_add_default_symbol): Check !executable
1166
        instead of shared.
1167
 
1168
2010-03-19  Jie Zhang  
1169
 
1170
        * elf32-arm.c (struct section_list): Remove.
1171
        (section_list): Remove typedef.
1172
        (record_section_with_arm_elf_section_data): Remove.
1173
        (find_arm_elf_section_entry): Remove.
1174
        (get_arm_elf_section_data): Use is_arm_elf.
1175
        (unrecord_section_with_arm_elf_section_data): Remove.
1176
        (elf32_arm_new_section_hook): Don't call
1177
        record_section_with_arm_elf_section_data.
1178
        (elf32_arm_write_section): Set mapcount to -1 when
1179
        the map has been used. Don't call
1180
        unrecord_section_with_arm_elf_section_data.
1181
        (unrecord_section_via_map_over_sections): Remove.
1182
        (elf32_arm_close_and_cleanup): Remove.
1183
        (elf32_arm_bfd_free_cached_info): Remove.
1184
        (bfd_elf32_close_and_cleanup): Don't define.
1185
        (bfd_elf32_bfd_free_cached_info): Don't define.
1186
 
1187
2010-03-18  H.J. Lu  
1188
 
1189
        PR binutils/11396
1190
        * libcoff-in.h (pe_tdata): Add dont_strip_reloc.
1191
        * libcoff.h: Regenerated.
1192
 
1193
        * peXXigen.c (_bfd_XXi_only_swap_filehdr_out): Clear F_RELFLG
1194
        if dont_strip_reloc is set.
1195
        (_bfd_XX_bfd_copy_private_bfd_data_common): Set
1196
        dont_strip_reloc on output if there is no .reloc and
1197
        IMAGE_FILE_RELOCS_STRIPPED isn't set in input.
1198
 
1199
2010-03-18  Wei Guozhi  
1200
 
1201
        PR gas/11323
1202
        * elf32-arm.c (elf32_arm_reloc_map): Map BFD_RELOC_ARM_GOT_PREL to
1203
        R_ARM_GOT_PREL.
1204
        * reloc.c (BFD_RELOC_ARM_GOT_PREL): New ARM relocation.
1205
        * bfd-in2.h: Regenerate.
1206
        * libbfd.h: Regenerate.
1207
 
1208
2010-03-17  H.J. Lu  
1209
 
1210
        * reloc.c (BFD_RELOC_SPU_PIC18): Removed.
1211
        (BFD_RELOC_SPU_STUB): Likewise.
1212
 
1213
2010-03-17  Jie Zhang  
1214
 
1215
        * elf.c (assign_file_positions_for_load_sections): Avoid
1216
        overflow.
1217
 
1218
2010-03-17  Alan Modra  
1219
 
1220
        PR binutils/11382
1221
        * plugin.c (bfd_plugin_object_p): Pass iostream to fileno using
1222
        proper type.
1223
 
1224
2010-03-17  Alan Modra  
1225
 
1226
        * elf32-arm.c (cortex_a8_erratum_scan): Warning fix.
1227
 
1228
2010-03-16  Alan Modra  
1229
 
1230
        * elf64-ppc.c (struct ppc_link_hash_table): Add do_toc_opt.
1231
        (ppc64_elf_edit_toc): Set it here.
1232
        (ha_reloc_match): New function.
1233
        (ppc64_elf_relocate_section): Optimize bigtoc insn sequences.
1234
 
1235
2010-03-15  Alan Modra  
1236
 
1237
        * elf64-ppc.c (ppc64_elf_has_small_toc_reloc): New function.
1238
        * elf64-ppc.h (ppc64_elf_has_small_toc_reloc): Declare.
1239
 
1240
2010-03-14  Alan Modra  
1241
 
1242
        PR ld/11378
1243
        * elf64-ppc.h (ppc64_elf_check_init_fini): Declare.
1244
        * elf64-ppc.c (call_check_done): Define.
1245
        (ppc64_elf_add_symbol_hook): Substitute bfd_get_section_name macro.
1246
        (ppc64_elf_check_relocs, ppc64_elf_size_dynamic_sections): Likewise.
1247
        (ppc64_elf_finish_multitoc_partition): Remove unnecessary check.
1248
        (toc_adjusting_stub_needed): Use call_check_done rather than toc_off.
1249
        Simplify return logic.  Iterate over all .init and .fini fragments
1250
        by recursion.  Set makes_toc_func_call here..
1251
        (ppc64_elf_next_input_section): ..rather than here.
1252
        (check_pasted_section, ppc64_elf_check_init_fini): New functions.
1253
 
1254
2010-03-13  Alan Modra  
1255
 
1256
        PR ld/11375
1257
        * elf64-ppc.c (ppc_type_of_stub): Always set *hash to the
1258
        function descriptor symbol if there is one, not just for plt stubs.
1259
        (ppc64_elf_relocate_section): Use fdh on all ppc_get_stub_entry calls.
1260
 
1261
2010-03-05  Rainer Orth  
1262
 
1263
        * elflink.c (bfd_elf_size_dynamic_sections): Don't emit base
1264
        version twice.
1265
        Skip it when constructing def.vd_next.
1266
 
1267
        * elf32-i386.c (TARGET_LITTLE_SYM): Redefine to
1268
        bfd_elf32_i386_sol2_vec.
1269
        (TARGET_LITTLE_NAME): Redefine to elf32-i386-sol2.
1270
        (elf32_bed): Redefine to elf32_i386_sol2_bed.
1271
        (elf_backend_want_plt_sym): Redefine to 1.
1272
 
1273
        * elf64-x86-64.c (TARGET_LITTLE_SYM): Redefine to
1274
        bfd_elf64_x86_64_sol2_vec.
1275
        (TARGET_LITTLE_NAME): Redefine to elf64-x86-64-sol2.
1276
        (elf64_bed): Redefine to elf64_x86_64_sol2_bed.
1277
        (elf_backend_want_plt_sym): Redefine to 1.
1278
 
1279
        * config.bfd (i[3-7]86-*-solaris2*): Set targ_defvec to
1280
        bfd_elf32_i386_sol2_vec.
1281
        Replace bfd_elf64_x86_64_vec by bfd_elf64_x86_64_sol2_vec in
1282
        targ64_selvecs.
1283
        (x86_64-*-solaris2*): Set targ_defvec to bfd_elf32_i386_sol2_vec.
1284
        Replace bfd_elf64_x86_64_vec by bfd_elf64_x86_64_sol2_vec in
1285
        targ_selvecs.
1286
 
1287
        * configure.in: Handle bfd_elf32_i386_sol2_vec,
1288
        bfd_elf64_x86_64_sol2_vec.
1289
        * configure: Regenerate.
1290
 
1291
        * targets.c (bfd_elf32_i386_sol2_vec): Declare.
1292
        (bfd_elf64_x86_64_sol2_vec): Declare.
1293
        (_bfd_target_vector): Add bfd_elf32_i386_sol2_vec,
1294
        bfd_elf64_x86_64_sol2_vec.
1295
 
1296
2010-03-04  Daniel Jacobowitz  
1297
 
1298
        * elf32-arm.c (elf32_arm_output_arch_local_syms): Skip non-program
1299
        sections.
1300
 
1301
2010-03-04  Alan Modra  
1302
 
1303
        PR 11302
1304
        * dwarf2.c (read_abbrevs): Return NULL on alloc failures.
1305
        (read_attribute_value, decode_line_info): Likewise.
1306
        (add_line_info, read_rangelist): Return FALSE on alloc failures.
1307
        (arange_add, sort_line_sequences): Likewise.
1308
        (find_abstract_instance_name): Handle failures from called funcs.
1309
        (scan_unit_for_symbols, parse_comp_unit, decode_line_info): Likewise.
1310
        (find_line): Realloc to a temp, and handle alloc fail.
1311
 
1312
2010-03-03  Daniel Jacobowitz  
1313
 
1314
        * elf32-arm.c (elf32_arm_output_arch_local_syms): Do not add
1315
        a mapping symbol to an empty section.
1316
 
1317
2010-03-02  Matthew Gretton-Dann  
1318
 
1319
        * elf32-arm.c (elf32_arm_merge_eabi_attributes): Add a check of the
1320
        return value from the call to _bfd_elf_merge_object_attributes.
1321
 
1322
2010-03-02  Christophe Lyon  
1323
        Alan Modra  
1324
 
1325
        * elf32-arm.c (a8_erratum_fix): Add st_type field to record the
1326
        destination mode of the a8 stub.
1327
        (elf32_arm_link_hash_table): Add top_id field.
1328
        (elf32_arm_link_hash_table_create): Initialize top_id.
1329
        (arm_type_of_stub): Update prototype, st_type can now be updated
1330
        by this function. Actual destination address in case of PLT is
1331
        computed here, to help factorizing code.
1332
        (elf32_arm_stub_name): Update prototype, use stub_type additional
1333
        parameter to build stub name.
1334
        (elf32_arm_get_stub_entry): Update prototype, use stub_type
1335
        additional parameter to build stub entry.
1336
        (arm_build_one_stub): Use bfd_put_16/bfd_put_32 instead of
1337
        put_thumb_insn/put_arm_insn as BE8 encoding is now handled later.
1338
        Call elf32_arm_final_link_relocate to process all in-stub
1339
        relocations.
1340
        (elf32_arm_setup_section_lists): Update top_id.
1341
        (cortex_a8_erratum_scan): Record stub destination mode.
1342
        (elf32_arm_size_stubs): Update call to arm_type_of_stub according
1343
        to new prototype.
1344
        (elf32_arm_final_link_relocate): Enable processing of in-stub
1345
        REL32 relocations. Rely on arm_type_of_stub to detect if a stub is
1346
        needed, enabling code factorization.
1347
        (elf32_arm_final_link): Process stub sections.
1348
        (elf32_arm_output_map_sym): Add entry to code/data map.
1349
 
1350
2010-03-01  David S. Miller  
1351
 
1352
        * elfxx-sparc.c (_bfd_sparc_elf_check_relocs): When STT_GNU_IFUNC and
1353
        h->def_regular, set h->ref_regular.
1354
        (allocate_dynrelocs): Only force output of STT_GNU_IFUNC plt entries
1355
        and dynamic relocations if h->ref_regular.
1356
 
1357
        * elfxx-sparc.c (struct elf_reloc_map): Delete.
1358
        (sparc_reloc_map): Delete.
1359
        (_bfd_sparc_elf_reloc_type_lookup): Explicitly handle each
1360
        relocation type in switch statements.
1361
 
1362
2010-02-25  Alan Modra  
1363
 
1364
        PR ld/11304
1365
        * elf.c (_bfd_elf_init_private_section_data): Rename need_group
1366
        to final_link and invert.  For final link allow some flags to
1367
        differ.  Don't specially allow flags to be all zero.
1368
 
1369
2010-02-24  Alan Modra  
1370
 
1371
        PR binutils/10858
1372
        * elfxx-mips.c (mips_elf_create_dynamic_relocation): Ise
1373
        SYMBOL_REFERENCES_LOCAL to exclude entries from the dynamic symbol
1374
        table.
1375
 
1376
2010-02-23  Andrew Zabolotny  
1377
 
1378
        PR binutils/11297
1379
        * elf32-avr.c (elf_avr_howto_table): Add R_AVR_8.
1380
        (avr_reloc_map): Map BFD_RELOC_8 to R_AVR_8.
1381
 
1382
2010-02-22  Alan Modra  
1383
 
1384
        * reloc.c (bfd_check_overflow): When forming addrmask, shift
1385
        fieldmask left by rightshift.
1386
        (_bfd_relocate_contents): Likewise.  Use rightshift addrmask in all
1387
        overflow checks.
1388
 
1389
2010-02-20  H.J. Lu  
1390
 
1391
        * elf64-x86-64.c (elf64_x86_64_add_symbol_hook): Don't check
1392
        STT_GNU_IFUNC on large common symbol.
1393
 
1394
2010-02-18  H.J. Lu  
1395
 
1396
        * elf32-i386.c (elf_i386_add_symbol_hook): Don't set
1397
        has_ifunc_symbols if the symbol comes from a shared library.
1398
        * elf32-ppc.c (ppc_elf_add_symbol_hook): Likewise.
1399
        * elf32-sparc.c (elf32_sparc_add_symbol_hook): Likewise.
1400
        * elf64-ppc.c (ppc64_elf_add_symbol_hook): Likewise.
1401
        * elf64-sparc.c (elf64_sparc_add_symbol_hook): Likewise.
1402
        * elf64-x86-64.c (elf64_x86_64_add_symbol_hook): Likewise.
1403
 
1404
2010-02-19  Alan Modra  
1405
 
1406
        * elf.c (_bfd_elf_fixup_group_sections): New function, split out from..
1407
        (_bfd_elf_copy_private_header_data): ..here.
1408
        * elflink.c (_bfd_elf_size_group_sections): New function.
1409
        (bfd_elf_size_dynamic_sections): Call it.
1410
        * elf-bfd.h (_bfd_elf_size_group_sections): Declare.
1411
        (_bfd_elf_fixup_group_sections): Declare.
1412
 
1413
2010-02-18  Matthew Gretton-Dann  
1414
 
1415
        * elf32-arm.c (elf32_arm_merge_eabi_attributes): Add support for
1416
        merging Tag_DIV_use, Tag_MPextension_use, and
1417
        Tag_MPextension_use_legacy tags.
1418
 
1419
2010-02-18  Alan Modra  
1420
 
1421
        * elf.c (bfd_elf_set_group_contents): Revert accidental 2009-01-15
1422
        commit.  Don't write zeros for removed group members.
1423
        (_bfd_elf_copy_private_header_data): Adjust size of group section
1424
        when group members are removed by objcopy.
1425
 
1426
2010-02-15  Dave Korn  
1427
 
1428
        PR binutils/11280
1429
        * configure.host (*-*-solaris2.11):  Add host define to select
1430
        valid default code page for windres/windmc on solaris.
1431
 
1432
2010-02-15  Nick Clifton  
1433
 
1434
        * po/vi.po: Updated Vietnamese translation.
1435
 
1436
2010-02-12  Daniel Gutson  
1437
 
1438
        * elf32-arm.c (elf32_arm_output_arch_local_syms): add
1439
        missing mapping symbol to data only sections.
1440
 
1441
2010-02-11  David S. Miller  
1442
 
1443
        * elfxx-sparc.c (_bfd_sparc_elf_check_relocs): For R_SPARC_GOTDATA_OP_HIX22
1444
        and R_SPARC_GOTDATA_OP_LOX10, only bump the GOT refcount for global
1445
        symbols.
1446
        (_bfd_sparc_elf_gc_sweep_hook): Likewise only decrement the GOT count for
1447
        these relocs on global symbols.
1448
        (gdopoff): New.
1449
        (_bfd_sparc_elf_relocate_section): Perform GOTDATA optimizations on
1450
        local symbol references which are not STT_GNU_IFUNC.  Handle
1451
        relocation of them like R_SPARC_HIX22 and R_SPARC_LOX10 respectively,
1452
        and deal with negative vs. non-negative values properly.
1453
 
1454
2010-02-09  Tristan Gingold  
1455
 
1456
        * mach-o.c (bfd_mach_o_canonicalize_one_reloc): Adjust addend for
1457
        non-external relocation.
1458
 
1459
2010-02-09  Alan Modra  
1460
 
1461
        * elf64-ppc.c (merge_got_entries): Move earlier in file.
1462
        (allocate_dynrelocs): Merge got entries here if not doing multi-toc.
1463
        (ppc64_elf_size_dynamic_sections): Similarly merge tlsld_got.
1464
        (ppc64_elf_layout_multitoc): Don't resize if we have already
1465
        merged got entries.
1466
 
1467
2010-02-09  Michael Holzheu  
1468
 
1469
        * elf-bfd.h (elfcore_write_s390_timer, elfcore_write_s390_todcmp,
1470
        elfcore_write_s390_todpreg, elfcore_write_s390_ctrs,
1471
        elfcore_write_s390_prefix): New.
1472
        * elf.c (elfcore_write_s390_timer, elfcore_write_s390_todcmp,
1473
        elfcore_write_s390_todpreg, elfcore_write_s390_ctrs,
1474
        elfcore_write_s390_prefix): New.
1475
        (elfcore_grok_note): Handle NT_S390_TIMER, NT_S390_TODCMP,
1476
        NT_S390_TODPREG, NT_S390_CTRS and NT_S390_PREFIX.
1477
        (elfcore_write_register_note): Handle .reg-s390-timer,
1478
        .reg-s390-todcmp, .reg-s390-todpreg, .reg-s390-ctrs,
1479
        .reg-s390-prefix section.
1480
 
1481
2010-02-09  Alan Modra  
1482
 
1483
        * elf64-ppc.c (struct got_entry): Make tls_type and is_indirect
1484
        unsigned char.  Update variables and code using them throughout file.
1485
        (struct ppc_link_hash_entry): Likewise for tls_mask.
1486
 
1487
        * elf64-ppc.c (ppc64_elf_layout_multitoc): Don't merge local got ents.
1488
 
1489
        * elf64-ppc.c (has_small_toc_reloc): Don't define.
1490
        (makes_toc_func_call, call_check_in_progress): Shuffle flags.
1491
        (struct ppc64_elf_obj_tdata): Add has_small_toc_reloc.  Update
1492
        code setting the flag.
1493
        (ppc64_elf_next_toc_section): Group big-toc sections in
1494
        0x80008000 chunks.
1495
 
1496
2010-02-08  David S. Miller  
1497
 
1498
        * elfxx-sparc.h (struct _bfd_sparc_elf_link_hash_table): Remove sgot,
1499
        srelgot, splt, srelplt, and sgotplt members in favor of generic copies.
1500
 
1501
        * elfxx-sparc.c (create_got_section): Delete.
1502
        (_bfd_sparc_elf_create_dynamic_sections): Don't call, the dynamic
1503
        section creator does that work for us.  Use ->elf.foo instead of
1504
        ->foo where applicable.
1505
        (_bfd_sparc_elf_check_relocs): Use ->elf.foo instead of ->foo
1506
        where applicable.
1507
        (allocate_dynrelocs): Likewise.
1508
        (_bfd_sparc_elf_size_dynamic_sections): Likewise.
1509
        (_bfd_sparc_elf_relocate_section): Likewise.
1510
        (sparc_vxworks_build_plt_entry): Likewise.
1511
        (_bfd_sparc_elf_finish_dynamic_symbol): Likewise.
1512
        (sparc_finish_dyn): Likewise.
1513
        (sparc_vxworks_finish_exec_plt): Likewise.
1514
        (sparc_vxworks_finish_shared_plt): Likewise.
1515
        (_bfd_sparc_elf_finish_dynamic_sections): Likewise.
1516
 
1517
        * elfxx-sparc.c (_bfd_sparc_elf_check_relocs): Use the SYMBOL_*
1518
        macros for visibilty and locality checks.
1519
        (_bfd_sparc_elf_adjust_dynamic_symbol): Likewise.
1520
        (allocate_dynrelocs): Likewise.
1521
        (_bfd_sparc_elf_relocate_section): Likewise.
1522
        (_bfd_sparc_elf_finish_dynamic_symbol):Likewise.
1523
 
1524
        * elfxx-sparc.c (_bfd_sparc_elf_finish_dynamic_symbol): Remove set
1525
        but never used local var 'dynobj'.
1526
 
1527
        * elfxx-sparc.c (_bfd_sparc_elf_adjust_dynamic_symbol): Handle
1528
        nocopyreloc.
1529
 
1530
        * reloc.c (BFD_RELOC_SPARC_JMP_IREL): New.
1531
        (BFD_RELOC_SPARC_IRELATIVE): Likewise.
1532
        * bfd-in2.h: Regenerate.
1533
        * libbfd.h: Regenerate.
1534
 
1535
        * elfxx-sparc.h (_bfd_sparc_elf_link_hash_table): Add loc_hash_table
1536
        and loc_hash_memory.
1537
        (_bfd_sparc_elf_link_hash_table_free): Declare.
1538
        * elf32-sparc.c (elf32_sparc_add_symbol_hook): New.
1539
        (elf_backend_add_symbol_hook, elf_backend_post_process_headers,
1540
        bfd_elf32_bfd_link_hash_table_free): Define.
1541
        * elf64-sparc.c (elf64_sparc_add_symbol_hook): Set
1542
        has_ifunc_symbols if STT_GNU_IFUNC.
1543
        (bfd_elf64_bfd_link_hash_table_free): Define.
1544
        (elf_backend_post_process_headers): Define always.
1545
        * elfxx-sparc.c (sparc_jmp_irel_howto, sparc_irelative_howto): New.
1546
        (sparc_reloc_map): Add entries for new IFUNC relocs.
1547
        (_bfd_sparc_elf_reloc_type_lookup): Handle new IFUNC relocs.
1548
        (_bfd_sparc_elf_info_to_howto_ptr): Likewise.
1549
        (elf_sparc_local_htab_hash, elf_sparc_local_htab_eq,
1550
        elf_sparc_get_local_sym_hash): New.
1551
        (_bfd_sparc_elf_create_dynamic_sections): Move PLT ops initialization
1552
        from here...
1553
        (_bfd_sparc_elf_link_hash_table_create): ... to here.  Allocate
1554
        local hash table.
1555
        (_bfd_sparc_elf_link_hash_table_free): New.
1556
        (create_ifunc_sections): New.
1557
        (_bfd_sparc_elf_check_relocs): Unconditionally assign htab->elf.dynobj
1558
        and call create_ifunc_sections().  For local STT_GNU_IFUNC symbols
1559
        cons up a fake local hash table entry for it.  Unconditionally add
1560
        a PLT refcount for STT_GNU_IFUNC symbols when h->def_regular.  Count
1561
        dyn relocs for ifunc.
1562
        (_bfd_sparc_elf_adjust_dynamic_symbol): Handle ifunc.
1563
        (allocate_dynrelocs):  Unconditionally emit a PLT entry when
1564
        STT_GNU_IFUNC and h->def_regular.  Count GOT dyn relocs for ifunc.
1565
        (allocate_local_dynrelocs): New function.
1566
        (_bfd_sparc_elf_size_dynamic_sections): Invoke it over the local hash
1567
        table.  Emit dynamic relocs to irelplt when not shared.  Treat iplt
1568
        like splt.
1569
        (_bfd_sparc_elf_relocate_section): Handle ifunc relocations by hand.
1570
        (_bfd_sparc_elf_finish_dynamic_symbol): Adjust for non-dynamic ifunc
1571
        plt in iplt/irelplt.
1572
 
1573
2010-02-08  Richard Sandiford  
1574
 
1575
        * xcofflink.c (_bfd_xcoff_bfd_final_link): When calculating
1576
        max_contents_size, only consider sections whose contents must
1577
        be swapped in.
1578
 
1579
2010-02-09  Alan Modra  
1580
 
1581
        * elf64-ppc.c (allocate_dynrelocs): Remove unused got structs here..
1582
        (ppc64_elf_size_dynamic_sections): ..and here..
1583
        (merge_got_entries): ..rather than here.
1584
 
1585
2010-02-09  Alan Modra  
1586
 
1587
        * elf64-ppc.c (struct ppc_link_hash_table): Add do_multi_toc.
1588
        (has_small_toc_reloc): Define.
1589
        (ppc64_elf_check_relocs): Set the above flags.
1590
        (ppc64_elf_edit_opd): Delete obfd param.
1591
        (ppc64_elf_tls_optimize): Likewise.
1592
        (ppc64_elf_edit_toc): Likewise.
1593
        (ppc64_elf_tls_setup): Likewise.  Add no_multi_toc param.
1594
        * elf64-ppc.h: Update prototypes.
1595
 
1596
2010-02-08  Alan Modra  
1597
 
1598
        * section.c (struct bfd_section): Delete has_tls_reloc,
1599
        has_tls_get_addr_call, has_gp_reloc, need_finalize_relax, reloc_done.
1600
        Add sec_flg0 thru sec_flg5.
1601
        (BFD_FAKE_SECTION): Update for changed flags.
1602
        * ecoff.c (bfd_debug_section): Likewise.
1603
        * elf32-ppc.c (has_tls_reloc, has_tls_get_addr_call): Define.
1604
        * elf64-ppc.c (has_tls_reloc, has_tls_get_addr_call): Define.
1605
        (has_toc_reloc, makes_toc_func_call, call_check_in_progress): Update.
1606
        * elf32-xtensa.c (reloc_done): Define.
1607
        * elfxx-ia64.c (skip_relax_pass_0, skip_relax_pass_1): Update.
1608
        * bfd-in2.h: Regenerate.
1609
 
1610
2010-02-08  Tristan Gingold  
1611
 
1612
        * mach-o.c (bfd_mach_o_canonicalize_one_reloc): Set reloc.r_extern
1613
        for non-scattered relocations.
1614
 
1615
2010-02-08  Nathan Sidwell  
1616
 
1617
        * elf32-ppc.c (ppc_elf_begin_write_processing): Allow empty
1618
        apuinfo sections, only scan input sections once and reuse the
1619
        buffer.
1620
 
1621
2010-02-08  Philipp Tomsich  
1622
 
1623
        * archures.c (bfd_mach_ppc_titan): Define.
1624
        * bfd-in2.h: Regenerate.
1625
        * cpu-powerpc.c (bfd_powerpc_archs): Add titan entry.
1626
 
1627
2010-02-08  Alan Modra  
1628
 
1629
        * elf32-ppc.c (ppc_elf_check_relocs): Remove dead ifunc code.
1630
 
1631
2010-02-05  Sterling Augustine  
1632
 
1633
        * elf.c (assign_file_positions_for_load_sections) Update lma of
1634
        section if necessary.  Fixes Bugzilla 11219.
1635
 
1636
2010-02-05  H.J. Lu  
1637
 
1638
        * elf32-i386.c: Remove trailing white spaces.
1639
        * elf64-x86-64.c: Likewise.
1640
 
1641
2010-02-03  Nick Clifton  
1642
 
1643
        * elf-bfd.h (emum elf_object_id): Rename to elf_target_id.  Add
1644
        entries for other architectures.
1645
        (struct elf_link_hash_table): Add hash_table_id field.
1646
        (elf_hash_table_id): New accessor macro.
1647
        * elflink.c (_bfd_elf_link_hash_table_init): Add target_id
1648
        parameter.
1649
        * elf-m10300.c (elf32_mn10300_hash_table): Check table id before
1650
        returning cast pointer.
1651
        (elf32_mn10300_link_hash_table_create): Identify new table as
1652
        containing MN10300 extensions.
1653
        (mn10300_elf_relax_section): Check pointer returned by
1654
        elf32_mn10300_hash_table.
1655
        * elf32-arm.c: Likewise, except using ARM extensions.
1656
        * elf32-avr.c: Likewise, except using AVR extensions.
1657
        * elf32-bfin.c: Likewise, except using BFIN extensions.
1658
        * elf32-cris.c: Likewise, except using CRIS extensions.
1659
        * elf32-frv.c: Likewise, except using FRV extensions.
1660
        * elf32-hppa.c: Likewise, except using HPPA32 extensions.
1661
        * elf32-i386.c: Likewise, except using I386 extensions.
1662
        * elf32-lm32.c: Likewise, except using LM32 extensions.
1663
        * elf32-m32r.c: Likewise, except using M32RM extensions.
1664
        * elf32-m68hc11.c: Likewise, except using M68HC11 extensions.
1665
        * elf32-m68hc1x.c: Likewise, except using M68HC11 extensions.
1666
        * elf32-m68hc1x.h: Likewise, except using M68HC11 extensions.
1667
        * elf32-m68k.c: Likewise, except using M68K extensions.
1668
        * elf32-microblaze.c: Likewise, except using MICROBLAZE extensions.
1669
        * elf32-ppc.c: Likewise, except using PPC32 extensions.
1670
        * elf32-s390.c: Likewise, except using S390 extensions.
1671
        * elf32-sh.c: Likewise, except using SH extensions.
1672
        * elf32-spu.c: Likewise, except using SPU extensions.
1673
        * elf32-xtensa.c: Likewise, except using XTENSA extensions.
1674
        * elf64-alpha.c: Likewise, except using ALPHA extensions.
1675
        * elf64-hppa.c: Likewise, except using HPPA64 extensions.
1676
        * elf64-ppc.c: Likewise, except using PPC64 extensions.
1677
        * elf64-s390.c: Likewise, except using S390 extensions.
1678
        * elf64-x86-64.c: Likewise, except using X86_64 extensions.
1679
        * elfxx-ia64.c: Likewise, except using IA64 extensions.
1680
        * elfxx-mips.c: Likewise, except using MIPS extensions.
1681
        * elfxx-sparc.c: Likewise, except using SPARC extensions.
1682
        * elfxx-sparc.h: Likewise, except using SPARC extensions.
1683
        * elf32-cr16.c (struct elf32_cr16_link_hash_table): Delete
1684
        redundant structure.
1685
        (elf32_cr16_hash_table): Delete unused macro.
1686
        (elf32_cr16_link_hash_traverse): Delete unused macro.
1687
        * elf32-score.c: Likewise.
1688
        * elf32-score7.c: Likewise.
1689
        * elf32-vax.c: Likewise.
1690
        * elf64-sh64.c: Likewise.
1691
 
1692
2010-02-03  Alan Modra  
1693
 
1694
        * elf64-ppc.c (struct plt_entry): Move earlier in file.
1695
        (struct got_entry): Likewise.  Add is_indirect and got.ent fields.
1696
        (struct ppc64_elf_obj_tdata): Change tlsld_got to be a struct got_entry.
1697
        Update all uses.
1698
        (struct ppc_link_hash_table): Add got_reli_size and second_toc_pass.
1699
        Remove no_multi_toc.
1700
        (update_local_sym_info, ppc64_elf_check_relocs): Clear is_indirect
1701
        when allocating a new struct got_entry.
1702
        (allocate_got): New function, extracted from..
1703
        (allocate_dynrelocs): ..here.  Abort on got entry in non-ppc64 bfd.
1704
        (ppc64_elf_size_dynamic_sections): Track got relocs allocated in
1705
        .reliplt by got_reli_size.  Set owner on ppc64_tlsld_got entries.
1706
        (ppc64_elf_setup_section_lists): Remove output_bfd param and
1707
        no_multi_toc, add add_stub_section and layout_sections_again.  Stash
1708
        new params in htab.  Extract some code to..
1709
        (ppc64_elf_start_multitoc_partition): ..here.  New function.
1710
        (ppc64_elf_next_toc_section): Check for linker script errors.  Handle
1711
        second pass toc scan.
1712
        (merge_got_entries, merge_global_got, reallocate_got): New functions.
1713
        (ppc64_elf_reinit_toc): Rename to..
1714
        (ppc64_elf_finish_multitoc_partition): ..this.
1715
        (ppc64_elf_layout_multitoc): New function.
1716
        (ppc64_elf_size_stubs): Delete output_bfd, add_stub_section and
1717
        layout_sections_again params.
1718
        (ppc64_elf_relocate_section): Handle indirect got entries.
1719
        * elf64-ppc.h: Update prototypes.  Declare new functions.
1720
 
1721
2010-02-02  H.J. Lu  
1722
 
1723
        * elf-bfd.h (elfcore_write_xstatereg): New.
1724
 
1725
        * elf.c (elfcore_grok_xstatereg): New.
1726
        (elfcore_write_xstatereg): Likewise.
1727
        (elfcore_grok_note): Handle NT_X86_XSTATE.
1728
        (elfcore_write_register_note): Handle .reg-xstate section.
1729
 
1730
2010-02-01  Tristan Gingold  
1731
 
1732
        * som.c (som_write_ar_hdr): Define this macro.
1733
 
1734
2010-01-30  John David Anglin  
1735
 
1736
        * elf32-hppa.c (final_link_relocate): Convert R_PARISC_TLS_GD21L,
1737
        R_PARISC_TLS_LDM21L and R_PARISC_TLS_IE21L relocations that use the
1738
        linkage table pointer to use the global table pointer if not doing
1739
        a shared link.
1740
 
1741
2010-01-29  Joel Brobecker  
1742
 
1743
        * elf.c (elfcore_grok_lwpstatus): Do not overwrite the core signal
1744
        if it has already been set.
1745
 
1746
2010-01-27  Tristan Gingold  
1747
 
1748
        * vms.h: Remove trailing spaces.
1749
        (struct hdr_struct): Remove unused hdr_c_cpr field.
1750
        (enum file_format_enum): Add comments.
1751
        * vms.c (vms_bfd_print_private_bfd_data): New function that
1752
        replaces the macro.
1753
        Remove trailing spaces.
1754
        * vms-misc.c: Improve comments.
1755
        (_bfd_vms_get_object_record): Also handle files without pads.
1756
        * vms-hdr.c (_bfd_vms_write_dbg): Fix format string.
1757
        * vms-gsd.c (struct flagdescstruct): Make name field const.
1758
        (gsyflagdesc): Fix typo.
1759
 
1760
2010-01-27  Alan Modra  
1761
 
1762
        PR ld/11217
1763
        * elf64-ppc.c (struct ppc_link_hash_table): Add toc_bfd, toc_first_sec.
1764
        (ppc64_elf_setup_section_lists): Init them.
1765
        (ppc64_elf_next_toc_section): Don't partition multi-toc between .got
1766
        and .toc on the same input file.
1767
        (ppc64_elf_relocate_section): Correct GOT entry offset.
1768
 
1769
2010-01-26  Tristan Gingold  
1770
 
1771
        * targets.c (BFD_JUMP_TABLE_ARCHIVE): Add initializer for write_ar_hdr.
1772
        (bfd_target): Add _bfd_write_ar_hdr_fn field.
1773
        * archive.c (is_bsd44_extended_name): New macro.
1774
        (_bfd_generic_read_ar_hdr_mag): Use it.  Add extra_size.
1775
        (bfd_slurp_armap): Also check for "__.SYMDEF" as a BSD4.4 extended
1776
        name.
1777
        (_bfd_archive_bsd44_construct_extended_name_table): New function.
1778
        (_bfd_generic_write_ar_hdr): Ditto.
1779
        (_bfd_bsd44_write_ar_hdr): Ditto.
1780
        (_bfd_write_archive_contents): Call _bfd_write_ar_hdr.
1781
        (bsd_write_armap): Adjust firstreal computation.
1782
        * libbfd-in.h (struct areltdata): Add extra_size field.
1783
        (_bfd_generic_write_ar_hdr): Add prototype.
1784
        (_bfd_bsd44_write_ar_hdr): Ditto.
1785
        (_bfd_write_ar_hdr): Define.
1786
        (_bfd_noarchive_write_ar_hdr): Ditto.
1787
        (_bfd_archive_bsd_write_ar_hdr): Ditto.
1788
        (_bfd_archive_coff_write_ar_hdr): Ditto.
1789
        (_bfd_archive_bsd44_slurp_armap): Ditto.
1790
        (_bfd_archive_bsd44_slurp_extended_name_table): Ditto.
1791
        (_bfd_archive_bsd44_construct_extended_name_table): New prototype.
1792
        (_bfd_archive_bsd44_truncate_arname): Ditto.
1793
        (_bfd_archive_bsd44_write_armap): Ditto.
1794
        (_bfd_archive_bsd44_read_ar_hdr): Ditto.
1795
        (_bfd_archive_bsd44_write_ar_hdr): Ditto.
1796
        (_bfd_archive_bsd44_openr_next_archived_file): Ditto.
1797
        (_bfd_archive_bsd44_get_elt_at_index): Ditto.
1798
        (_bfd_archive_bsd44_generic_stat_arch_elt): Ditto.
1799
        (_bfd_archive_bsd44_update_armap_timestamp): Ditto.
1800
        * libbfd.h: Regenerate.
1801
        * oasys.c (oasys_write_ar_hdr): Define.
1802
        * libecoff.h (_bfd_ecoff_write_ar_hdr): Define.
1803
        * ieee.c (ieee_write_ar_hdr): Define.
1804
        * elf64-mips.c (bfd_elf64_archive_write_ar_hdr): Define.
1805
        * coff-rs6000.c (rs6000coff_vec): Adjust for write_ar_hdr field.
1806
        (bfd_pmac_xcoff_backend_data): Ditto.
1807
        * coff64-rs6000.c (rs6000coff64_vec): Ditto.
1808
        (bfd_xcoff_aix5_backend_data): Ditto.
1809
        * coff-alpha.c (alpha_ecoff_write_ar_hdr): Define.
1810
        * aout-target.h (MY_write_ar_hdr): Define it if not defined.
1811
        * aout-tic30.c (MY_write_ar_hdr): Ditto.
1812
        * mach-o-target.c (TARGET_NAME): Use _bfd_archive_bsd44 archive.
1813
        (bfd_mach_o_mkarchive, bfd_mach_o_read_ar_hdr)
1814
        (bfd_mach_o_slurp_armap, bfd_mach_o_slurp_extended_name_table)
1815
        (bfd_mach_o_construct_extended_name_table)
1816
        (bfd_mach_o_truncate_arname, bfd_mach_o_write_armap)
1817
        (bfd_mach_o_get_elt_at_index, bfd_mach_o_generic_stat_arch_elt)
1818
        (bfd_mach_o_update_armap_timestamp): Moved to mach-o.c
1819
        * mach-o.c (bfd_mach_o_mkarchive, bfd_mach_o_read_ar_hdr)
1820
        (bfd_mach_o_slurp_armap, bfd_mach_o_slurp_extended_name_table)
1821
        (bfd_mach_o_construct_extended_name_table)
1822
        (bfd_mach_o_truncate_arname, bfd_mach_o_write_armap)
1823
        (bfd_mach_o_get_elt_at_index, bfd_mach_o_generic_stat_arch_elt)
1824
        (bfd_mach_o_update_armap_timestamp): Moved from mach-o-target.c
1825
        * bfd-in2.h: Regenerate.
1826
 
1827
2010-01-26  Alan Modra  
1828
            H.J. Lu  
1829
 
1830
        PR ld/11218
1831
        * elflink.c (elf_link_output_extsym): Do not ignore undefined
1832
        symbols with ref_regular set when gc_sections is active.
1833
 
1834
2010-01-25  Alan Modra  
1835
 
1836
        PR ld/11217
1837
        * elf64-ppc.c (ppc64_elf_tls_optimize): Optimize tls sequences
1838
        with relocations against undefined weak symbols.
1839
        (ppc64_elf_relocate_section): Don't optimize calls to undefined
1840
        weak functions if the symbol is dynamic.
1841
        (ppc64_elf_relocate_section): Edit tprel tls sequences.
1842
        * elf32-ppc.c (ppc_elf_relocate_section): Likewise.
1843
        (_bfd_elf_ppc_at_tprel_transform): New function.
1844
        * bfd-in.h (_bfd_elf_ppc_at_tprel_transform): Declare.
1845
        * bfd-in2.h: Regenerate.
1846
 
1847
2010-01-23  Richard Sandiford  
1848
 
1849
        * coff-rs6000.c (xcoff_howto_table): Change size to 0 and bitsize to 1.
1850
        (_bfd_xcoff_reloc_type_lookup): Handle BFD_RELOC_NONE.
1851
        * coff64-rs6000.c (xcoff64_howto_table): Change size to 0 and
1852
        bitsize to 1.
1853
        (xcoff64_reloc_type_lookup): Handle BFD_RELOC_NONE.
1854
 
1855
2010-01-21  Nick Clifton  
1856
 
1857
        * elflink.c (elf_link_add_object_symbols): Look up name of
1858
        undefined symbol both before and after versioning has been
1859
        applied.  Do not bother with symbols that are weakly undefined.
1860
 
1861
2010-01-21  Andreas Krebbel  
1862
 
1863
        * elf32-s390.c (elf32_s390_merge_private_bfd_data): New function.
1864
        (bfd_elf32_bfd_merge_private_bfd_data): New macro definition.
1865
 
1866
2010-01-19  Cary Coutant  
1867
 
1868
        * dwarf2.c (read_attribute_value): Add DW_FORM_ref_sig8.
1869
 
1870
2010-01-19  Daisuke Hatayama  
1871
            Alan Modra 
1872
 
1873
        * elfcode.h (elf_swap_ehdr_out): Handle e_phnum > 0xffff.
1874
        (elf_object_p): Read e_phnum extension.
1875
        (elf_write_shdrs_and_ehdr): Write e_phnum extension.
1876
        * elfcore.h (elf_core_file_p): Read e_phnum extension.  Sanity check
1877
        that we can read last program header.
1878
 
1879
2010-01-19  Matthew Gretton-Dann  
1880
 
1881
        * elf32-arm.c (elf32_arm_howto_table_1): Correct bitsize of
1882
        R_ARM_THM_CALL entry.
1883
        (elf32_arm_final_link_relocate): Correct calculation of
1884
        reloc_signed_max when doing a R_ARM_THM_CALL, R_ARM_THM_XPC22,
1885
        or R_ARM_THM_JUMP24 relocation.
1886
 
1887
2010-01-18  Alan Modra  
1888
 
1889
        PR 11168
1890
        * coffcode.h (coff_compute_section_file_positions): Move Rs6000COFF_C
1891
        block past vars in COFF_IMAGE_WITH_PE block.  Report error on more
1892
        than 32k sections.
1893
 
1894
2010-01-15  Jan Kratochvil  
1895
 
1896
        Fix compilation warning on gcc-3.4.
1897
        * vms-tir.c (start_etir_record, sto_imm): Rename the prototype
1898
        parameter index to sec_index according to the function definition.
1899
 
1900
2010-01-13  Chao-ying Fu  
1901
 
1902
        * elfxx-mips.c (JR_TO_B_P): New define to transform JR to B.
1903
        It is true for all CPUs.
1904
        (jal_reloc_p): New function.
1905
        (mips_elf_calculate_relocation): Rename require_jalxp to
1906
        cross_mode_jump_p.
1907
        Update comment for CROSS_MODE_JUMP_P.
1908
        Set up cross_mode_jump_p based on the mode change.
1909
        (mips_elf_perform_relocation): Rename require_jalx to cross_mode_jump_p.
1910
        Update comment for CROSS_MODE_JUMP_P.
1911
        Test cross_mode_jump_p and jal_reloc_p to turn jal to jalx.
1912
        Use !cross_mode_jump_p to guard conversion.
1913
        Convert "jr t9" to "b", if possible.
1914
        (_bfd_mips_elf_relocate_section): Rename require_jalx to
1915
        cross_mode_jump_p.
1916
        Pass &cross_mode_jump_p to call mips_elf_calculate_relocation.
1917
        Pass cross_mode_jump_p to call mips_elf_perform_relocation.
1918
 
1919
2010-01-13  Nick Clifton  
1920
 
1921
        * cpu-m32c.c (m32c_scan): New function.  Ensures that a scan for
1922
        "m32c" returns the m32c arch_info_struct and not the m16c
1923
        arch_info_struct.
1924
        (arch_info_struct): Use the new scan function.
1925
        (bfd_m32c_arch): Likewise.
1926
 
1927
2010-01-13  Tristan Gingold  
1928
 
1929
        * config.bfd: Remove duplicated target vector for i386-*-darwin.
1930
        Appends new arch instead of overriding.
1931
        Use mach_o_x86_64_vec for x86_64-*-darwin.
1932
        * configure.in: Add mach_o_x86_64_vec.
1933
        * configure: Regenerate.
1934
        * targets.c: Declare mach_o_x86_64_vec, add it to _bfd_target_vector.
1935
        * Makefile.am (BFD64_BACKENDS): Add mach-o-x86-64.lo
1936
        (BFD64_BACKENDS_CFILES): Add mach-o-x86-64.c
1937
        * Makefile.in: Regenerate.
1938
        * mach-o-x86-64.c: New file.
1939
 
1940
2010-01-13  Tristan Gingold  
1941
 
1942
        * reloc.c: Add MACH_O_X86_64 relocations.
1943
        * bfd-in2.h: Regenerate.
1944
        * libbfd.h: Regenerate.
1945
 
1946
2010-01-13  Tristan Gingold  
1947
 
1948
        * archive.c (normalize): Use lbasename.
1949
        (bfd_bsd_truncate_arname): Ditto.
1950
        (bfd_gnu_truncate_arname): Ditto.
1951
 
1952
2010-01-12  Tristan Gingold  
1953
 
1954
        * makefile.vms (CFLAGS): Turns warnings into informational messages.
1955
 
1956
2010-01-11  Tristan Gingold  
1957
 
1958
        * mach-o.h: Add x86-64 relocation types.
1959
 
1960
2010-01-11  Tristan Gingold  
1961
 
1962
        * mach-o.h (bfd_mach_o_backend_data): Add arch field.
1963
        (bfd_mach_o_set_arch_mach): New prototype.
1964
        * mach-o.c (bfd_mach_o_mkobject): Define with bfd_mach_o_gen_mkobject.
1965
        (bfd_mach_o_set_arch_mach): New function.
1966
        (bfd_mach_o_gen_mkobject): New function.
1967
        Set TARGET_ARCHITECTURE for the generic back-ends.
1968
        * mach-o-target.c (bfd_mach_o_set_arch_mach): Remove define.
1969
        Check that TARGET_ARCHITECTURE is defined.
1970
        Add TARGET_ARCHITECTURE in TARGET_NAME_BACKEND structure.
1971
        * mach-o-i386.c (TARGET_ARCHITECTURE): Define.
1972
 
1973
2010-01-11  Tristan Gingold  
1974
 
1975
        * archive.c (bfd_slurp_armap): Also check for Mach-O sorted armap.
1976
 
1977
2010-01-11  Nick Clifton  
1978
 
1979
        * elf32-v850.c (v850_elf_perform_relocation): Fix overflow
1980
        handling of R_V850_HI16_S relocation.
1981
 
1982
2010-01-11  Alan Modra  
1983
 
1984
        PR 11103
1985
        * dwarf1.c (parse_die): Correct FORM_STRING data pointer increment.
1986
 
1987
2010-01-11  Alan Modra  
1988
 
1989
        PR 6832
1990
        * dwarf2.c (struct comp_unit): Add sec_info_ptr.
1991
        (find_abstract_instance_name): Use it.
1992
        (parse_comp_unit): Set it.
1993
 
1994
2010-01-09  Ralf Wildenhues  
1995
 
1996
        * Makefile.in: Regenerate.
1997
        * configure: Regenerate.
1998
 
1999
2010-01-08  Tristan Gingold  
2000
 
2001
        * archive.c: Remove bfd_special_undocumented_glue.
2002
 
2003
2010-01-08  Alan Modra  
2004
 
2005
        PR ld/11133
2006
        * elf32-cr16.c (elf32_cr16_gc_mark_hook): Call _bfd_elf_gc_mark_hook.
2007
        * elf32-microblaze.c (microblaze_elf_gc_mark_hook): Likewise.
2008
        * elf64-ppc.c (ppc64_elf_gc_mark_hook): Likewise.
2009
 
2010
2010-01-07  H.J. Lu  
2011
 
2012
        PR ld/11138
2013
        * elflink.c (elf_link_check_versioned_symbol): Don't abort if
2014
        a symbol referenced by DSO is is defined in a non-shared object
2015
        and forced local.
2016
 
2017
2010-01-07  H.J. Lu  
2018
 
2019
        PR ld/11133
2020
        * elflink.c (_bfd_elf_gc_mark_hook): Check section XXX for
2021
        undefined __start_XXX/__stop_XXX in all input files and set
2022
        SEC_KEEP.
2023
 
2024
2010-01-07  H.J. Lu  
2025
 
2026
        PR ld/11143
2027
        * elflink.c (elf_gc_sweep): Keep SHT_NOTE section.
2028
 
2029
2010-01-04  Daniel Gutson  
2030
 
2031
        * bfd.m4 (BFD_HAVE_SYS_PROCFS_TYPE): Define _STRUCTURE_PROC
2032
        before including procfs.h.
2033
        (BFD_HAVE_SYS_PROCFS_TYPE_MEMBER): Likewise.
2034
        * configure.in: Added autoconf probe for the pr_fpreg member.
2035
        * configure: Regenerated.
2036
        * config.in: Regenerated.
2037
        * elf.c: Define _STRUCTURE_PROC before including procfs.h.
2038
 
2039
2010-01-04  Joel Brobecker  
2040
 
2041
        Fix -Wshadow warnings in dwarf2.c (seen on alpha-tru64).
2042
        * dwarf2.c (concat_filename): Rename dirname with dir_name
2043
        to void shadowing the dirname function.
2044
        Rename subdirname with subdir_name to stay consistent with
2045
        the new dir_name variable name.
2046
 
2047
2010-01-04  Edmar Wienskoski  
2048
 
2049
        * archures.c: Add bfd_mach_ppc_e500mc64.
2050
        * bfd-in2.h: Regenerate.
2051
        * cpu-powerpc.c (bfd_powerpc_archs): Add entry for
2052
        bfd_mach_ppc_e500mc64.
2053
 
2054
2010-01-01  Joel Brobecker  
2055
 
2056
        Fix -Wshadow warnings (seen on ppc-aix)
2057
        * xcofflink.c: Replace finfo by flinfo throughout.
2058
 
2059
For older changes see ChangeLog-2009
2060
 
2061
Local Variables:
2062
mode: change-log
2063
left-margin: 8
2064
fill-column: 74
2065
version-control: never
2066
End:

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.