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

Subversion Repositories openrisc

[/] [openrisc/] [trunk/] [gnu-old/] [gdb-6.8/] [bfd/] [ChangeLog-9697] - Blame information for rev 853

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

Line No. Rev Author Line
1 24 jeremybenn
Tue Dec 30 12:45:18 1997  Ian Lance Taylor  
2
 
3
        * elf32-sparc.c (elf32_sparc_check_relocs): If -Bsymbolic, don't
4
        allocate space for a PC relative reloc against a symbol which is
5
        defined in a regular file.
6
        (elf32_sparc_relocate_section): If -Bsymbolic, don't copy a PC
7
        relative reloc against a symbol which is defined in a regular
8
        file.
9
 
10
Mon Dec 29 18:02:28 1997  Ian Lance Taylor  
11
 
12
        From Jonathan Stone :
13
        * config.bfd (mips-dec-netbsd*): Add ECOFF vectors to
14
        targ_selvecs.
15
        (mips*el-*-netbsd*): Like mips-dec-netbsd*.
16
        (mips*-*-netbsd*): New target.
17
 
18
Mon Dec 29 17:13:28 1997  H.J. Lu  (hjl@gnu.org)
19
 
20
        * elflink.h (elf_link_assign_sym_version): Change error message
21
        from "undefined version name" to "undefined versioned symbol
22
        name".
23
 
24
Mon Dec 29 11:41:16 1997  Nick Clifton  
25
 
26
        * coff-arm.c (coff_arm_relocate_section): Fix typo from previous
27
        delta.
28
 
29
Tue Dec 23 17:01:10 1997  Ian Lance Taylor  
30
 
31
        * libbfd-in.h (_bfd_dwarf2_find_nearest_line): Declare.
32
        * libbfd.h: Rebuild.
33
 
34
        * peicode.h (coff_swap_scnhdr_out): Set .reloc section to be
35
        shared.  Set stab* sections to be shared and read.  Set .rsrc
36
        section to be read and shared.
37
 
38
Mon Dec 22 13:20:57 1997  Ian Lance Taylor  
39
 
40
        * Makefile.am: Rebuild dependencies.
41
        (ALL_MACHINES_CFILES): Add dwarf2.lo.
42
        (ALL_MACHINES_CFILES): Add dwarf2.c.
43
        * Makefile.in: Rebuild.
44
 
45
        * coff-arm.c: Don't include obstack.h.
46
 
47
Mon Dec 22 13:04:33 1997  Joel Sherrill  
48
 
49
        * config.bfd (i[3456]86*-go32-rtems*): Fix to be the same as
50
        i[3456]86-go32.
51
 
52
Thu Dec 18 16:01:25 1997  Doug Evans  
53
 
54
        * configure: Regenerate to get @SHELL@ substituted.
55
 
56
Wed Dec 17 09:45:09 1997  Nick Clifton  
57
 
58
        * coff-arm.c (coff_arm_relocate_section): Only look at section
59
        owner if there is one.
60
 
61
        * elf.c (assign_file_positions_for_segments): Fail if there is not
62
        enough room for the program headers.
63
 
64
Tue Dec 16 08:09:56 1997  Gavin Koch  
65
 
66
        * elf.c (_bfd_elf_find_nearest_line): Call
67
        _bfd_dwarf2_find_nearest_line first.
68
        * elf32-mips.c (_bfd_mips_elf_find_nearest_line): Same.
69
        * dwarf2.c: New file; implement _bfd_dwarf2_find_nearest_line.
70
 
71
Mon Dec 15 16:08:52 1997  Nick Clifton  
72
 
73
        * archures.c: Add bfd_mach_m32r.
74
 
75
Mon Dec 15 16:11:22 1997  Fred Fish  
76
 
77
        * coffcode.h (ALIGN_SECTIONS_IN_FILE): Define if I960 not defined.
78
        (coff_compute_section_file_positions): Use ALIGN_SECTIONS_IN_FILE
79
        to decide when to align the file sections for paging.
80
        * coffcode.h (ALIGN_SECTIONS_IN_FILE): Undefine for TIC80COFF.
81
 
82
Mon Dec 15 15:01:15 1997  Nick Clifton  
83
 
84
        * elf32-m32r.c (m32r_elf_object_p): New Function.
85
        (m32r_elf_final_write_processing):  New Function.
86
        (m32r_elf_set_private_flags):  New Function.
87
        (m32r_elf_copy_private_bfd_data):  New Function.
88
        (m32r_elf_merge_private_bfd_data):  New Function.
89
        (m32r_elf_print_private_bfd_data):  New Function.
90
        (elf_backend_object_p): Point to m32r_object_p.
91
        (elf_backend_final_write_processing): Point to
92
        m32r_elf_final_write_processing.
93
        (bfd_elf32_bfd_copy_private_bfd_data): Point to
94
        m32r_elf_copy_private_bfd_data.
95
        (bfd_elf32_bfd_merge_private_bfd_data): Point to
96
        m32r_elf_merge_private_bfd_data.
97
        (bfd_elf32_bfd_set_private_flags): Point to
98
        m32r_elf_set_private_bfd_data.
99
        (bfd_elf32_bfd_print_private_bfd_data): Point to
100
        m32r_elf_print_private_bfd_data.
101
 
102
 
103
        * bfd-in2.h (bfd_mach_m32r): Add identifier for M32R architecture
104
        machines.
105
 
106
Fri Dec 12 11:30:28 1997  Brendan Kehoe  
107
 
108
        * configure: Only build libbfd shared if --enable-shared's value
109
        was `yes', or was set to `*bfd*'.
110
        * aclocal.m4: Likewise.
111
        * NOTE: this really needs to be fixed in libtool/libtool.m4, the
112
        original source of this bit of code.  It's not clear what the best fix
113
        would be, though.
114
 
115
Thu Dec 11 17:48:11 1997  Richard Henderson  
116
 
117
        * linker.c (generic_link_add_symbol_list): Always init udata.p so
118
        that the generic relaxation code can function when input and output
119
        file formats are mismatched.
120
 
121
Thu Dec 11 01:02:18 1997  Ian Lance Taylor  
122
 
123
        * coff-sh.c (bfd_coff_small_swap_table): Initialize new fields.
124
 
125
        * elf.c (assign_file_positions_for_segments): For a loadable
126
        section, make sure that the load address is correct relative to
127
        the load address of the segment plus the size of the segment so
128
        far.
129
 
130
        * coffcode.h (_coff_link_output_has_begun): Make static.
131
        (_coff_final_link_postscript): Likewise.
132
 
133
Wed Dec 10 23:37:11 1997  Ian Lance Taylor  
134
 
135
        * elflink.h (elf_link_input_bfd): Handle a relocateable link in
136
        which a relocation refers to an indirect or warning symbol.
137
 
138
Wed Dec 10 11:15:55 1997  Nick Clifton  
139
 
140
        * coff-arm.c (bfd_arm_coff_final_link): Function deleted.
141
        (coff_arm_final_link_postscript): New function.
142
        (coff_arm_link_output_has_begun): New function.
143
 
144
        * libcoff.h (struct bfd_coff_backend_data): Add new fields:
145
        _bfd_coff_link_output_has_begun and
146
        _bfd_coff_final_link_postscript.  Add new macros:
147
        bfd_coff_link_output_has_begun() and
148
        bfd_coff_final_link_postscript().
149
 
150
        * cofflink.c (_bfd_coff_final_link): Insert calls to
151
        bfd_coff_link_output_has_begun() and
152
        bfd_coff_final_link_postscript().
153
 
154
        * coffcode.h: Add two new fields to bfd_coff_backend_data
155
        structure: _bfd_coff_link_output_has_begun and
156
        _bfd_coff_final_link_postscript.  Add default initialisers for
157
        these fields.  Add overridable aliases for the coff swap functions
158
        in the backend data structure.
159
 
160
        * elf32-v850.c: Update with patches from the branch to fix
161
        HI16_S/LO16 reloc pairs.
162
 
163
Wed Dec 10 14:06:48 1997  Michael Meissner  
164
 
165
        * elf32-d30v.c (d30v_info_to_howto_rela): New function to support
166
        RELA relocations.
167
        (USE_REL): Don't define any more, switch to using RELA
168
        relocations.
169
        (elf_info_to_howto): Define as d30v_info_to_howto_rela.
170
 
171
Tue Dec  9 11:37:53 1997  Andrew Cagney  
172
 
173
        * archures.c (bfd_mach_mips*): Define.
174
        (bfd_default_scan): For 3000 and 4000 replace magic constant with
175
        macro.
176
 
177
        * cpu-mips.c (N): Define.
178
        (bfd_mips_arch, arch_info_struct): Re-write using macro N, replace
179
        numbers with bfd_mach_mips* macros.
180
 
181
Fri Dec  5 11:13:46 1997  Nick Clifton  
182
 
183
        * elf32-v850.c (v850_elf_reloc, v850_elf_store_addend_in_insn,
184
        v850_elf_relocate_section): Fix reloc addend handling.
185
        (v850_elf_section_from_bfd_section, v850_elf_symbol_processing,
186
        v850_elf_add_symbol_hook, v850_elf_link_output_symbol_hook,
187
        v850_elf_section_from_shdr, v850_elf_fake_sections): New functions
188
        to create and handle special common sections.
189
        (v850_elf_final_link_relocate): Fix HI16 and HI16_S relocations
190
        which have data stored in the instructions.
191
 
192
Tue Dec  2 10:26:16 1997  Nick Clifton  
193
 
194
        * coff-arm.c (TARGET_UNDERSCORE): Revert back to '_'
195
        (USER_LABEL_PREFIX): Revert back to '_'
196
 
197
        * config.bfd (targ_cpu): Add support for Thumb target.
198
 
199
Mon Dec  1 20:24:18 1997  J"orn Rennecke 
200
 
201
        * coff-sh.c (sh_coff_howtos): Add R_SH_SWITCH8 entry.
202
        (get_symbol_value): Handle R_SH_SWITCH8.
203
        (sh_relax_delete_bytes): Likewise.
204
 
205
Wed Nov 26 14:13:34 1997  Nick Clifton  
206
 
207
        * coff-arm.c (TARGET_UNDERSCORE): Changed to match definition in
208
        gcc/config/arm/semi.h
209
 
210
        * coffcode.h (coff_slurp_symbol_table): Add ARM and Thumb symbol
211
        classes.
212
 
213
Sun Nov 23 16:02:58 1997  Andrew Cagney  
214
 
215
        * freebsd.h (SWAP_MAGIC): Read magic number little and not big
216
        endian.
217
 
218
Wed Nov 26 09:30:37 1997  Nick Clifton  
219
 
220
        * coffcode.h (coff_mkobject_hook): Only set private flags for non
221
        PE ARM ports.
222
 
223
Tue Nov 25 15:33:23 1997  Richard Henderson  
224
 
225
        * binary.c (binary_set_section_contents): Also ignore NEVER_LOAD
226
        sections.
227
 
228
Tue Nov 25 10:55:36 1997  Nick Clifton  
229
 
230
        * coff-arm.c (coff_arm_bfd_merge_private_bfd_data): Do not
231
        complain if inout and output formats differ.
232
 
233
Tue Nov 25 11:26:27 1997  Ian Lance Taylor  
234
 
235
        * Makefile.am (BFD32_BACKENDS): Remove tekhex.lo.
236
        (BFD32_BACKENDS_CFILES): Remove tekhex.c.
237
        * Makefile.in: Rebuild.
238
        * aclocal.m4, configure, Makefile.in: Rebuild with current
239
        automake and autoconf.
240
 
241
        * coff-arm.c (arm_allocate_interworking_sections): Fix typo
242
        (COFF_WITH_PR to COFF_WITH_PE).
243
 
244
Mon Nov 24 15:47:49 1997  Nick Clifton  
245
 
246
        * coff-arm.c: Make variables and some functions static, so that
247
        this file can be included in multiple object files.
248
        (coff_arm_bfd_final_link): Fix minor bug.
249
 
250
Sat Nov 22 15:16:00 1997  Nick Clifton  
251
 
252
        * coff-arm.c: Add support for PIC and APCS-FLOAT type binaries.
253
 
254
        * coffcode.h: Add support for PIC and APCS-FLOAT type binaries.
255
 
256
Sat Nov 22 16:06:56 1997  Klaus Kaempf  
257
 
258
        * evax-emh.c (_bfd_evax_write_emh): Use alloca instead of strdup.
259
 
260
Sat Nov 22 12:29:30 1997  Ian Lance Taylor  
261
 
262
        * sunos.c (sunos_add_one_symbol): When overriding a defined
263
        symbol, set it to undefined, not new.
264
 
265
        * elf32-sh.c (sh_elf_relax_delete_bytes): Don't kill LABEL
266
        relocs.
267
 
268
Fri Nov 21 14:14:22 1997  Richard Henderson  
269
 
270
        * coff-sh.c (sh_relax_section): Force sign extention of USES r_offset.
271
        (sh_relax_delete_bytes): Don't kill LABEL relocs.
272
 
273
Mon Nov 17 15:08:38 1997  Jeffrey A Law  (law@cygnus.com)
274
 
275
        * elf-m10300.c (elf32_mn10300_finish_hash_table_entry): Fix typo.
276
        (mn10300_elf_relax_section): Likewise.
277
 
278
Sat Nov 15 15:36:07 1997  Fred Fish  
279
 
280
        * peicode.h (coff_swap_aouthdr_in): Cast second arg of
281
        bfd_h_get_* calls to "bfd_byte *".
282
 
283
Tue Nov 11 10:37:23 1997  Jeffrey A Law  (law@cygnus.com)
284
 
285
        * elf-m10300.c (elf32_mn10300_link_hash_entry): Add new field
286
        "movm_stack_size".
287
        (mn10300_elf_relax_section): Include stack space for register saves
288
        in the imm8 field of a "call" instruction.
289
        (compute_function_info): Determine how much stack is allocated by
290
        the movm instruction.  Fix typo.
291
        (elf32_mn10300_link_hash_newfunc): Initialize movm_stack_size.
292
 
293
Mon Nov 10 14:32:40 1997  Andreas Schwab  
294
 
295
        * elflink.h (NAME(bfd_elf,size_dynamic_sections)): Don't crash if
296
        a version dependency could not be found.
297
 
298
Tue Nov  4 12:05:56 1997  Klaus K"ampf  
299
 
300
        * configure.com: Get version info from configure.in
301
 
302
Fri Oct 24 11:15:58 1997  Jakub Jelinek  
303
 
304
        * elf64-sparc.c (sparc64_elf_merge_private_bfd_data):
305
        New function. Avoid mixing US1 and HAL R1 code.
306
        Set resulting memory ordering to the strongest one used.
307
        (sparc64_elf_object_p): Set bfd_mach correctly.
308
 
309
Thu Oct 23 14:09:33 1997  Richard Henderson  
310
 
311
        * elf64-sparc.c (sparc64_elf_howto_table): Add UA64 & UA16.
312
        (sparc64_elf_check_relocs): Handle them.
313
        (sparc64_elf_relocate_section): Likewise.  Before emitting a dyn reloc,
314
        check alignment and transmute R_SPARC_x<->R_SPARC_UAx.
315
 
316
Thu Oct 23 00:53:14 1997  Richard Henderson  
317
 
318
        * configure.in (sparc*-*-linux*): Use trad-core and ...
319
        * hosts/sparclinux.h: New file.
320
 
321
Thu Oct 23 00:25:29 1997  Richard Henderson  
322
 
323
        * config.bfd (sparc64-*-linux*): New target.
324
 
325
        * elf-bfd.h (struct elf_backend_data): Add plt_alignment member.
326
        * elflink.c (_bfd_elf_create_got_section): Set .got alignment based
327
        on arch_size.
328
        (_bfd_elf_create_dynamic_sections): Likewise for .rel* sections.
329
        Set .plt alignment from new plt_alignment.
330
        * elflink.h (elf_link_create_dynamic_sections): Set version section
331
        alignment to LOG_FILE_ALIGN.
332
        * elfxx-target.h (elf_backend_plt_alignment): Provide default.
333
        (elfXX_bed): Init plt_alignment.
334
 
335
        * elf64-sparc.c (sparc64_elf_check_relocs,
336
        sparc64_elf_adjust_dynamic_symbol, sparc64_elf_size_dynamic_sections,
337
        sparc64_elf_adjust_dynindx, sparc64_elf_finish_dynamic_symbol,
338
        sparc64_elf_finish_dynamic_sections): New functions.
339
        (sparc64_elf_howto_table): Fix a few name strings.
340
        (ELF_DYNAMIC_INTERPRETER): New definition.
341
        (sparc64_elf_relocate_section): Handle shared libraries.
342
 
343
        * elf64-sparc.c (struct plt_template, plt_*_header, plt_*_entry,
344
        sparc64_elf_build_plt_entry, sparc64_elf_finish_dynamic_symbol):
345
        PLT definitions sparc64-linux originally choose.  These will go
346
        away soon in favour of the official abi definitions.
347
 
348
Wed Oct 22 16:08:45 1997  Ian Lance Taylor  
349
 
350
        * coff-sh.c (coff_small_object_p): New static function.
351
        (coff_small_new_section_hook): New static function.
352
        (bfd_coff_small_swap_table): New static const structure.
353
        (coff_small_close_and_cleanup): Define.
354
        (coff_small_bfd_free_cached_info): Define.
355
        (coff_small_get_section_contents): Define.
356
        (coff_small_get_section_contents_in_window): Define.
357
        (shcoff_small_vec): New static structure.
358
        (shlcoff_small_vec): New static structure.
359
        * targets.c (bfd_target_vector): Add shcoff_small_vec and
360
        shlcoff_small_vec.
361
        * config.bfd (sh-*-elf*): Add shcoff_small_vec and
362
        shlcoff_small_vec to targ_selvecs.
363
        (sh-*-*): Likewise.
364
        * configure.in: Add shcoff_small_vec and shlcoff_small_vec cases.
365
        * configure: Rebuild.
366
 
367
Mon Oct 20 15:01:27 1997  Klaus K"ampf  
368
 
369
        * evax-egsd.c: Weak symbols are global.
370
 
371
        * evax-emh.c: Use proper casts.
372
 
373
        * evax-egsd.c (_bfd_evax_write_egsd): Remove unneeded uname.
374
 
375
        * evax-egsd.c: Section names and symbols have different
376
        length restrictions. Add length parameter to
377
        _bfd_evax_length_hash_symbol.
378
        * evax-etir.c: Likewise.
379
        * evax-misc.c (_bfd_evax_length_hash_symbol): Add length
380
        parameter.
381
        * evax.h (EOBJ_S_C_SECSIZ): Define.
382
 
383
        * evax-alpha.c: Remove duplicate test.
384
 
385
        * evax-emh.c: SYS$ functions are upper-case.
386
 
387
        * evax-egsd.c: Create separate sections for common symbols.
388
        * evax-etir.c: Don't output common section.
389
        * evax.h: Bump up section count.
390
 
391
        * configure.com: Use 64bit integers with DEC C.
392
 
393
        * evax-egsd.c: Make section flags dec c compatible.
394
 
395
Mon Oct 20 09:38:31 1997  Jeffrey A Law  (law@cygnus.com)
396
 
397
        * som.c (normalize): Delete function.
398
        (som_bfd_ar_write_symbol_stuff): New parameter elength.  All callers
399
        changed.  Use passed in elength to determine size of the extended
400
        name table instead of computing it again.
401
 
402
Sun Oct 19 23:36:21 1997  Jim Wilson  
403
 
404
        * peicode.h (coff_swap_scnhdr_out): Use |= not = to set
405
        IMAGE_SCN_MEM_READ for an unrecognized section.
406
 
407
Sun Oct 19 21:04:56 1997  Jeffrey A Law  (law@cygnus.com)
408
 
409
        * som.c (som_bfd_ar_write_symbol_stuff): Account for trailing
410
        '/' in the extended name table.
411
 
412
Fri Oct 17 00:04:13 1997  Richard Henderson  
413
 
414
        * elflink.h (elf_link_assign_sym_version): For explicitly versioned
415
        symbols, check globals list before matching on locals.
416
 
417
Thu Oct 16 08:17:06 1997  Michael Meissner  
418
 
419
        * peicode.h (coff_swap_scnhdr_out,pe_print_idata): Fix mangled
420
        patch.
421
 
422
Wed Oct 15 13:45:10 1997  Ian Lance Taylor  
423
 
424
        * peicode.h (pe_mkobject_hook): Set DLL flag.
425
        (pe_bfd_copy_private_bfd_data): Copy DLL flag.
426
 
427
        * peicode.h (coff_swap_scnhdr_out): Set IMAGE_SCN_MEM_DISCARDABLE
428
        for .stab* sections.  Replace strlen of constant strings with
429
        number.
430
 
431
Tue Oct 14 15:42:45 1997  Richard Henderson  
432
 
433
        * elf64-alpha.c (elf64_alpha_merge_ind_symbols): New function to
434
        merge got and reloc entries from ind syms to their target.
435
        (elf64_alpha_always_size_sections): Call it.
436
        (elf64_alpha_check_relocs): Operate on the target of indirect symbols.
437
        (elf64_alpha_can_merge_gots): Likewise.
438
        (elf64_alpha_merge_gots): Likewise.
439
 
440
        * elf64-alpha.c (elf64_alpha_relocate_section): Back out HJ's change,
441
        as it is insufficient to handle the relocation changes as well.
442
 
443
Mon Oct 13 23:10:08 1997  Richard Henderson  
444
 
445
        * elf64-alpha.c (elf64_alpha_calc_dynrel_sizes): Allow for RELATIVE
446
        relocs for symbols in shlibs that have been forced local.
447
        (elf64_alpha_relocate_section): Output RELATIVEs in .got for same.
448
 
449
Mon Oct 13 21:24:04 1997  Richard Henderson  
450
 
451
        * elf64-alpha.c (elf64_alpha_relocate_section): Use the
452
        got_enties of the default symbol for the default versioned
453
        symbol.  Patch from hjl@gnu.ai.mit.edu, modified not to use
454
        alloca in the loop.
455
 
456
Mon Oct 13 17:37:37 1997  Nick Clifton  
457
 
458
        * elf32-v850.c (v850_elf_final_link_relocate): Only use the bottom
459
        24 bits of the PC when computing a PC relative relocation.
460
 
461
Fri Oct 10 16:01:30 1997  Nick Clifton  
462
 
463
        * elf32-v850.c (v850_elf_reloc, v850_elf_final_link_relocate):
464
        Correct value for maximum positive 22 bit PC relative relocation.
465
        (v850_elf_final_link_relocate):  Prevent overflow from HI16_S and
466
        HI_16 relocations.  Correct bit adjustment in TDA offsets.
467
 
468
Thu Oct  9 16:43:39 1997  Doug Evans  
469
 
470
        * elf64-sparc.c (sparc_elf_{hix22,lox10}_reloc): New functions.
471
        (sparc64_elf_howto_table): Use them for HIX22,LOX10 relocs.
472
 
473
Wed Oct  8 11:38:45 1997  Richard Henderson  
474
 
475
        * elfcore.h (bfd_prstatus): Pedanticly, alignment_power should
476
        be LOG_FILE_ALIGN.
477
 
478
Wed Oct  8 11:36:00 1997  Richard Henderson  
479
 
480
        * config.bfd: Missed one alpha* change.
481
 
482
Tue Oct  7 13:00:17 1997  Doug Evans  
483
 
484
        * elf32-sparc.c (_bfd_sparc_elf_howto_table): Remove BFD64 support.
485
        * elf64-sparc.c (SPARC64_OLD_RELOCS): Undef.
486
        (MINUS_ONE): New macro.
487
        (sparc_elf_notsup_reloc): New function.
488
        (sparc64_elf_howto_table): Add entries for DISP64,PLT64,HIX22,LOX10,
489
        H44,M44,L44,REGISTER.
490
        (sparc_reloc_map): Likewise.  Map BFD_RELOC_CTOR to R_SPARC_64.
491
        (init_insn_reloc): New function.
492
        (sparc_elf_wdisp16_reloc): Use it.
493
        (sparc64_elf_relocate_section): Add entries for OLO10,HIX22,LOX10.
494
 
495
Tue Oct  7 11:40:37 1997  Ian Lance Taylor  
496
 
497
        * som.c (som_construct_extended_name_table): Remove static
498
        function, and define as macro instead.
499
 
500
Fri Oct  3 14:02:17 1997  Richard Henderson  
501
 
502
        * config.bfd: Change alpha-*-* to alpha*-*-*; config.guess now
503
        recognizes alphaev5 etc.
504
        * configure.host: Likewise.
505
 
506
Fri Oct  3 11:23:47 1997  Ian Lance Taylor  
507
 
508
        Make ld -s work on AIX:
509
        * xcofflink.c (xcoff_link_add_symbols): Don't create the .debug
510
        section if we are stripping.
511
        (bfd_xcoff_size_dynamic_sections): Don't set the .debug section
512
        size if we are stripping.
513
        (_bfd_xcoff_bfd_final_link): Don't set SEC_RELOC or rel_filepos,
514
        and don't write out relocs, if we are stripping.
515
        (xcoff_link_input_bfd): Don't set up reloc if we are stripping.
516
        (xcoff_write_global_symbol): Don't write out symbol or reloc if we
517
        are stripping.
518
 
519
        * configure.in: Don't include elf.lo again for ELF targets; it's
520
        always in the library anyhow.
521
        * configure: Rebuild.
522
 
523
        * bfd-in2.h: Rebuild.
524
 
525
        * elf32-sparc.c (sparc_elf_wdisp16_reloc): Cast to bfd_byte *, not
526
        char *, when calling bfd_get_32 and bfd_put_32.
527
        * sunos.c (sunos_scan_dynamic_symbol): Cast contents to char *
528
        when calling strcpy.
529
 
530
Thu Oct  2 16:15:50 1997  Doug Evans  
531
 
532
        * reloc.c (bfd_check_overflow): New function.
533
        (bfd_perform_relocation, bfd_install_relocation): Use it.
534
        (BFD_RELOC_SPARC_{DISP64,PLT64}): New relocs.
535
        (BFD_RELOC_SPARC_{HIX22,LOX10,H44,M44,L44,REGISTER}): New relocs.
536
        * bfd-in2.h: Regenerate.
537
        * libbfd.h: Regenerate.
538
 
539
Thu Oct  2 13:17:18 1997  Ian Lance Taylor  
540
 
541
        * peicode.h (coff_swap_scnhdr_out): Set IMAGE_SCN_MEM_READ for an
542
        unrecognized section.  From Jon Thackray .
543
 
544
Wed Oct  1 14:03:44 1997  Ian Lance Taylor  
545
 
546
        * Makefile.am ($(BFD_H)): Change stmp-bfd.h to stmp-bfd-h.
547
        (stmp-bfd-h): Rename from stmp-bfd.h.
548
        (BFD_H_FILES, LIBBFD_H_FILES, LIBCOFF_H_FILES): New variables.
549
        ($(srcdir)/bfd-in2.h): Just depend upon stmp-bin2-h.
550
        (stmp-bin2-h): New target.
551
        ($(srcdir)/libbfd.h): Just depend upon stmp-lbfd-h.
552
        (stmp-lbfd-h): New target.
553
        ($(srcdir)/libcoff.h): Just depend upon stmp-lcoff-h.
554
        (stmp-lcoff-h): New target.
555
        (CLEANFILES): Change stmp-bfd.h to stmp-bfd-h.  Add stmp-bin2.h,
556
        stmp-lbfd-h, and stmp-lcoff-h.
557
        * Makefile.in: Rebuild.
558
 
559
        * configure.in: Use a diversion to set enable_shared before the
560
        arguments are parsed.
561
        * configure: Rebuild.
562
 
563
Tue Sep 30 14:18:32 1997  Doug Evans  
564
 
565
        * elf32-sparc.c (_bfd_sparc_elf_howto_table): R_SPARC_GLOB_JMP
566
        renamed to R_SPARC_UNUSED_42.
567
        (sparc_reloc_map): Delete R_SPARC_GLOB_JMP entry.
568
        * elf64-sparc.c (_bfd_sparc_elf_howto_table): R_SPARC_GLOB_JMP
569
        renamed to R_SPARC_UNUSED_42.
570
        (sparc_reloc_map): Delete R_SPARC_GLOB_JMP entry.
571
        * reloc.c (BFD_RELOC_SPARC_GLOB_JMP): Delete.
572
        * bfd-in2.h: Regenerated.
573
        * libbfd.h: Regenerated.
574
 
575
Thu Sep 25 12:15:02 1997  Ian Lance Taylor  
576
 
577
        * elflink.h (elf_merge_symbol): Don't check the hash creator until
578
        after we have set *sym_hash.
579
 
580
Wed Sep 24 16:52:28 1997  Joel Sherrill  
581
 
582
        * config.bfd (sh*-*-rtems*): New target, like sh-*-*elf*.
583
 
584
Wed Sep 24 11:27:23 1997  Ian Lance Taylor  
585
 
586
        * Makefile.am (libbfd_a_SOURCES): Define.
587
        * Makefile.in: Rebuild.
588
 
589
        * configure.in: Call AC_CHECK_TOOL before AM_PROG_LIBTOOL.
590
        * aclocal.m4: Rebuild with new libtool.
591
        * configure: Rebuild.
592
 
593
Tue Sep 23 19:03:13 1997  Ian Lance Taylor  
594
 
595
        * elf.c (map_sections_to_segments): Even if we are not demand
596
        paged, don't put a loadable section after a nonloadable section.
597
        (assign_file_positions_for_segments): Increment the file offset
598
        for a section with contents, even if it is not loadable.
599
 
600
Sun Sep 21 11:03:24 1997  Nick Clifton  
601
 
602
        * elf32-v850.c (v850_elf_final_link_relocate): Add return code
603
        indicating that __ctbp could not be found.
604
 
605
Thu Sep 18 15:04:57 1997  Nick Clifton  
606
 
607
        * elf32-v850.c (v850_elf_check_relocs): Improve error message.
608
 
609
Wed Sep 17 09:54:51 1997  Nick Clifton  
610
 
611
        * elf32-v850.c (v850_elf_final_link_relocate, v850_elf_reloc,
612
        v850_elf_check_relocs, v850_elf_reloc_map, v850_elf_howto_table):
613
        Add support for the CALLT relocs.
614
 
615
        * reloc.c (COMMENT): Add BFD_RELOC_V850_CALLT_6_7_OFFSET and
616
        BFD_RELOC_V850_CALLT_16_16_OFFSET.
617
 
618
        * elf32-v850.c (v850_elf_final_link_relocate): Add checks to catch
619
        relocations against non-existant symbols.
620
 
621
Tue Sep 16 14:20:27 1997  Nick Clifton  
622
 
623
        * reloc.c: Add BFR_RELOC_V850_TDA_16_16_OFFSET.
624
 
625
        * elf32-v850.c (v850_elf_reloc, v850_elf_final_link_relocate,
626
        v850_elf_howto_table, v850_elf_reloc_map): Add support for a 16
627
        bit reloc in the tiny data area.
628
 
629
Mon Sep 15 11:27:36 1997  Ken Raeburn  
630
 
631
        Merged changes from Martin Hunt:
632
 
633
        * elf32-d30v.c (bfd_elf_d30v_reloc): Change pc-relative relocs
634
        over 2^32 bytes to be absolute.  Needed because D30V PC doesn't
635
        necessarily wrap.
636
 
637
        * reloc.c, elf32-d30v.c (BFD_RELOC_D30V_9_PCREL,
638
        BFD_RELOC_D30V_9_PCREL_R): New relocs.
639
 
640
        * elf32-d30v.c (bfd_elf_d30v_reloc_21): New function.
641
        Do 15 and 21 bit pc-relative relocations.
642
        * reloc.c (BFD_RELOC_D30V_15_PCREL_R, BFD_RELOC_D30V_21_PCREL_R):
643
        New relocations.
644
 
645
        * elf32-d30v.c (bfd_elf_d30v_reloc): Addend needs to be
646
        added to the relocation, not or'd.
647
 
648
Wed Sep 10 15:17:25 1997  Nick Clifton  
649
 
650
        * elf32-v850.c (v850_elf_reloc): Remove spurious error message.
651
 
652
Wed Sep 10 11:17:50 1997  Andrew Cagney  
653
 
654
        * archures.c (bfd_default_scan): Use strcasecmp.
655
        (bfd_default_scan): Test for match with arch_name + ":" +
656
        printable_name.
657
        (bfd_default_scan): Test for match with printable_name - ":".
658
        (bfd_default_scan): Delete w65, h8300, h8500, z8k, i960 special
659
        cases.  Each implements their own scan function.
660
        (bfd_default_scan): Delete 386, 2900, 860, mips 2000, mips 4400
661
        special cases.  Since info->mach == 0.  The test mach == number
662
        fails.
663
        (bfd_arch_list): New function, return name of all the supported
664
        architectures.
665
 
666
Tue Sep  9 10:21:56 1997  Nick Clifton  
667
 
668
        * elf32-v850.c (v850_elf_print_private_bfd_data): Break after
669
        decoding architecture.
670
        (v850_elf_reloc): Do not complain if a R_V850_LO16 reloc has bit
671
        15 set.
672
 
673
Sun Sep  7 12:25:22 1997  H.J. Lu  (hjl@gnu.ai.mit.edu)
674
 
675
        * elf64-alpha.c (reloc_howto_type): Fix the howto table.
676
 
677
Thu Sep  4 09:44:10 1997  Ian Lance Taylor  
678
 
679
        * Makefile.am: Rebuild dependencies.
680
        (ALL_MACHINES_CFILES): Add cpu-v850.c.
681
        (ALL_MACHINES_CFILES): Add elf32-v850.c.
682
        * Makefile.in: Rebuild.
683
 
684
        * reloc.c: Remove extraneous commas from relocation entries.
685
        Remove BFD_RELOC_V850_16_PCREL.
686
        * bfd-in2.h: Rebuild.
687
 
688
        * xcofflink.c (xcoff_link_add_symbols): Put XTY_CM/XMC_TD symbols
689
        in sections named .tocbss rather than .bss.
690
 
691
Wed Sep  3 11:23:23 1997  Nick Clifton  
692
 
693
        * libbfd.h, bfd-in2.h, elf32-v850.c: Removed
694
        BFD_RELOC_V850_16_PCREL.
695
 
696
Tue Sep  2 20:44:10 1997  Fred Fish  
697
 
698
        * cofflink.c (coff_link_check_ar_symbols): Handle C_SYSTEM syms
699
        the same as C_EXT syms.
700
        (coff_link_add_symbols): Ditto.
701
        (_bfd_coff_link_input_bfd): Ditto.
702
        (_bfd_coff_write_task_globals): Add save_global_to_static.  Use
703
        it to preserve and restore state of global_to_static flag.
704
 
705
Tue Sep  2 17:45:22 1997  Nick Clifton  
706
 
707
        * elf32-v850.c (v850_elf_object_p): Set machine number based on
708
        bits in e_flags field rather than magic numbers.
709
        (v850_elf_final_write_processing, v850_elf_set_private_flags,
710
        v850_elf_copy_private_bfd_data, v850_elf_merge_private_bfd_data,
711
        v850_elf_print_private_bfd_data): New functions.
712
 
713
Tue Sep  2 17:43:49 1997  Nick Clifton  
714
 
715
        * elf.c (prep_headers): Remove V850E magic number.
716
        * elf.c (prep_headers): Remove V850EA magic number.
717
 
718
Tue Sep  2 17:35:05 1997  Doug Evans  
719
 
720
        * cpu-arc.c (arc_get_mach): Properly scan defined mach entries.
721
 
722
Tue Sep  2 18:29:37 1997  Jeffrey A Law  (law@cygnus.com)
723
 
724
        * elf-m10200.c (mn10200_elf_final_link_relocate): PC relative
725
        instructions are relative to the next instruction, not the
726
        current instruction.
727
        (mn10200_elf_relax_section): Similarly.
728
 
729
Tue Sep  2 15:45:45 1997  Nick Clifton  
730
 
731
        * cpu-v850.c: Use a macro to construct bfd_arch_info_type
732
        entries.
733
 
734
        * reloc.c, libbfd.h, bfd-in2.h, elf32-v850.c: Replace
735
        BFD_RELOC_V850_{SDA/TDA/ZDA}_OFFSET relocs with new bit pattern
736
        specific versions: BFD_RELOC_V850_{area}_{bits}_OFFSET.
737
 
738
Thu Aug 28 17:01:09 1997  Andrew Cagney  
739
 
740
        * cpu-v850.c: Remove "plain" from v850 printable name.
741
        (scan): Use strcasecmp.
742
 
743
        * archures.c (bfd_mach_v850): Define.
744
 
745
        * cpu-sh.c (scan_mach): Compare with table instead of hardwired to
746
        just sh/SH, use strcasecmp.
747
        (arch_info_struct): Add entries for sh3 et.al.
748
 
749
        * archures.c (bfd_mach_sh, ...): Define.
750
 
751
Wed Aug 27 17:33:07 1997  Andrew Cagney  
752
 
753
        * archures.c (bfd_archures_list): Always NULL terminate the list.
754
 
755
Tue Aug 26 17:26:51 1997  Ian Lance Taylor  
756
 
757
        * Makefile.am: Rebuild dependencies.
758
        (ALL_MACHINES_CFILES): Add cpu-arc.c.
759
        (ALL_MACHINES_CFILES): Add elf32-arc.c.
760
        (elf32-arc.lo): Remove explicit dependency.
761
        * Makefile.in: Rebuild.
762
 
763
        * acinclude.m4 (BFD_CC_FOR_BUILD): Set EXEEXT_FOR_BUILD.
764
        * doc/Makefile.am (MKDOC): Use EXEEXT_FOR_BUILD, not EXEEXT.
765
        * aclocal.m4: Rebuild.
766
        * configure: Rebuild.
767
        * Makefile.in: Rebuild.
768
        * doc/Makefile.in: Rebuild.
769
 
770
Mon Aug 25 16:14:34 1997  Christopher Provenzano  
771
 
772
        * configure: Rebuild with latest devo autoconf for NT support
773
 
774
Mon Aug 25 16:11:04 1997  Nick Clifton  
775
 
776
        * cpu-arm.c (compatible): If B is a default type, return A.
777
 
778
Mon Aug 25 15:35:46 1997  Nick Clifton  
779
 
780
        * cpu-v850.c (scan): New function.
781
        (arch_info_struct): New structure.
782
        (bfd_v850_arch): Add link into arch_info_structure.
783
 
784
        * config.bfd (targ_cpu): All v850 variants use the bfd_arch_v850
785
        architecture.
786
 
787
        * elf32-v850.c (v850_elf_object_p): New function.
788
 
789
        * archures.c (bfd_mach_v850e): Machine value for v850e.
790
 
791
        * bfd-in2.h (bfd_mach_v850e): Machine value for v850e.
792
 
793
        * elf32-v850.c (ELF_MACHINE_CODE): Default to v850e machine
794
        number.
795
 
796
        * elf.c (prep_headers): Add support for v850e machine number.
797
 
798
        * archures.c (bfd_mach_v850ea): Machine value for v850ea.
799
 
800
        * bfd-in2.h (bfd_mach_v850ea): Machine value for v850ea.
801
 
802
        * elf32-v850.c (ELF_MACHINE_CODE): Default to v850ea machine
803
        number.
804
 
805
        * elf.c (prep_headers): Add support for v850ea machine number.
806
 
807
Mon Aug 25 14:07:33 1997  Ian Lance Taylor  
808
 
809
        * syms.c (_bfd_stab_section_find_nearest_line): Clear the
810
        cached_stab field if the offset prevents us from using the cache.
811
 
812
Mon Aug 25 12:08:13 1997  Ian Lance Taylor  
813
 
814
        * aout-target.h (MY(vec)): Add SEC_CODE and SEC_DATA to section
815
        flags.
816
        * aout-arm.c (aout_arm_little_vec): Likewise.
817
        (aout_arm_big_vec): Likewise.
818
        * bout.c (b_out_vec_big_host): Likewise.
819
        (b_out_vec_little_host): Likewise.
820
        * mipsbsd.c (aout_mips_little_vec): Likewise.
821
        (aout_mips_big_vec): Likewise.
822
 
823
Tue Aug 19 10:09:10 1997  Fred Fish  
824
 
825
        * coff-tic80.c (COFF_ALIGN_IN_SFLAGS): Define to 1.
826
        * coffcode.h (styp_to_sec_flags): Ignore incoming STYP_INFO
827
        bit in s_flags if COFF_ALIGN_IN_S_FLAGS is defined.
828
 
829
Tue Aug 19 08:47:17 1997  Fred Fish  
830
 
831
        * coff-i960.c (COFF_ALIGN_IN_SECTION_HEADER): Define to 1.
832
        (GET_SCNHDR_ALIGN, PUT_SCNHDR_ALIGN): Define.
833
        * coff-m88k.c (GET_SCNHDR_NRELOC, GET_SCNHDR_NLNNO): Define.
834
        * coffcode.h (coff_set_alignment_hook): Conditionally compile in if
835
        COFF_ALIGN_IN_SECTION_HEADER is defined.  Convert alignment to power
836
        of two for I960 only.
837
        * coffswap.h (GET_SCNHDR_NRELOC, PUT_SCNHDR_NRELOC, GET_SCNDHR_NLNNO,
838
        PUT_SCNHDR_NLNNO, GET_SCNHDR_FLAGS, PUT_SCNHDR_FLAGS): Provide
839
        default definitions.
840
        (coff_swap_scnhdr_in): Use GET_SCNHDR_FLAGS, GET_SCNHDR_NRELOC,
841
        GET_SCNHDR_NLNNO, and GET_SCNHDR_ALIGN.
842
        (coff_swap_scnhdr_out): Use PUT_SCNHDR_FLAGS, PUT_SCNHDR_ALIGN.
843
        * Makefile.in (coff-tic80.o): Depends upon coffswap.h.
844
        * coff-tic80.c (COFF_ALIGN_IN_SECTION_HEADER): Define to 1.
845
        (GET_SCNHDR_FLAGS, PUT_SCNHDR_FLAGS): Define
846
        * coffcode.h (coff_write_object_contents): Set alignment field in
847
        section header for TIC80COFF files.
848
 
849
Mon Aug 18 11:36:19 1997  Nick Clifton  
850
 
851
        * elf32-v850.c (v850_elf_howto_table, v850_elf_reloc_map,
852
        v850_elf_check_relocs, v850_elf_reloc,
853
        v850_elf_final_link_relocate):  Add support for
854
        BFD_RELOC_V850_16_PCREL relocation.
855
 
856
        * reloc.c (COMMENT): Add suuport for BFD_RELOC_V850_16_PCREL
857
        relocation.
858
 
859
        * libbfd.h: Add support for BFD_RELOC_V850_16_PCREL relocation.
860
 
861
        * bfd-in2.h: Add support for BFD_RELOC_V850_16_PCREL relocation.
862
 
863
Mon Aug 18 11:33:56 1997  Nick Clifton  
864
 
865
        * cpu-v850e: New file.
866
 
867
        * elf.c (prep_headers): Add support for v850e target.
868
 
869
        * bfd-in2.h (bfd_architecture): Add support for v850e target.
870
 
871
        * config.bfd: Add support for v850e target.
872
 
873
        * archures.c: Add support for v850e target.
874
 
875
Mon Aug 18 11:33:56 1997  Nick Clifton  
876
 
877
        * cpu-v850ea: New file.
878
 
879
        * elf.c (prep_headers): Add support for v850ea target.
880
 
881
        * bfd-in2.h (bfd_architecture): Add support for v850ea target.
882
 
883
        * config.bfd: Add support for v850ea target.
884
 
885
        * archures.c: Add support for v850ea target.
886
 
887
Fri Aug 15 12:01:28 1997  Ian Lance Taylor  
888
 
889
        * coffgen.c (coff_find_nearest_line): Correctly handle the offset
890
        argument as section relative, rather than an absolute address.
891
        From Jan Hoogenraad .
892
 
893
Fri Aug 15 04:58:02 1997  Doug Evans  
894
 
895
        * config.bfd (arc-*-elf*): Add.
896
        * configure.in (bfd_elf32_{little,big}arc_vec): Add.
897
        * configure: Rebuild.
898
        * Makefile.am (ALL_MACHINES): Add cpu-arc.lo.
899
        (BFD32_BACKENDS): Add elf32-arc.lo.
900
        (cpu-arc.lo,elf32-arc.lo): Add rules for.
901
        * Makefile.in: Rebuild.
902
        * archures.c (architecture list): Add bfd_arch_arc.
903
        (bfd_archures_list): Add bfd_arc_arch.
904
        (bfd_mach_arc_base): Define.
905
        * reloc.c (BFD_RELOC_ARC_B22_PCREL,BFD_RELOC_ARC_B26): Add.
906
        * targets.c (bfd_elf32_{little,big}arc_vec): Declare.
907
        (bfd_target_vect): Add them.
908
        * bfd-in2.h, libbfd.h: Rebuild.
909
        * cpu-arc.c, elf32-arc.c: New files.
910
        * elf.c (pre_headers): Recognize bfd_arch_arc.
911
 
912
Tue Aug 12 11:45:18 1997  Ian Lance Taylor  
913
 
914
        * aoutx.h (NAME(aout,final_link)): If no symbols, make sure the
915
        data section is correctly rounded to a page in the file.
916
 
917
Mon Aug 11 12:45:43 1997  Ian Lance Taylor  
918
 
919
        * aoutx.h (NAME(aout,final_link)): Don't emit the string table if
920
        there are no symbols.
921
 
922
Sun Aug 10 14:45:56 1997  Ian Lance Taylor  
923
 
924
        * coff-stgo32.c: Rename from coff-stubgo32.c to avoid old System V
925
        file system 14 character limit.
926
        * Makefile.am: Corresponding changes.
927
        * configure.in: Corresponding changes.
928
        * Makefile.in: Rebuild.
929
        * configure: Rebuild.
930
 
931
Fri Aug  8 18:34:36 1997  Ian Lance Taylor  
932
 
933
        * Makefile.am: (ALL_MACHINES_CFILES): Add elf32-d10v.c.
934
        Rebuild dependencies.
935
        * Makefile.in: Rebuild.
936
 
937
Wed Aug  6 18:56:51 1997  Ian Lance Taylor  
938
 
939
        * Makefile.am (docdir): Define.
940
        * Makefile.in: Rebuild.
941
 
942
Tue Aug  5 23:05:03 1997  Ian Lance Taylor  
943
 
944
        * configure: Rebuild with autoconf 2.12.1.
945
 
946
Mon Aug  4 12:00:35 1997  Ian Lance Taylor  
947
 
948
        * aclocal.m4, configure: Rebuild with new automake patches.
949
 
950
Sun Aug  3 08:15:12 1997  Peter Schauer  (pes@regent.e-technik.tu-muenchen.de)
951
 
952
        * rs6000-core.c (make_bfd_asection):  New function to add a section
953
        to the core file bfd.
954
        (rs6000coff_core_p):  Use make_bfd_asection to add the core file
955
        sections.
956
        Use BFD routines to seek, read and stat the core file.
957
        Handle .data sections from loaded objects and anonymously mmapped
958
        regions, these are available in AIX 4 core files.
959
 
960
Fri Aug  1 12:58:32 1997  Ian Lance Taylor  
961
 
962
        * configure.in: Set enable_shared before AM_PROG_LIBTOOL.
963
        * acinclude.m4: Move acmacros.m4 in here.  Remove AM_PROG_LIBTOOL
964
        copy; use a patches libtool instead.
965
        * acmacros.m4: Remove.
966
        * Makefile.in: Rebuild.
967
        * aclocal.m4: Rebuild.
968
        * configure: Rebuild.
969
 
970
Thu Jul 31 19:55:36 1997  Ian Lance Taylor  
971
 
972
        * Makefile.am: New file, based on old Makefile.in.
973
        * acmacros.m4: New file, copied from old aclocal.m4.
974
        * acinclude.m4: New file.
975
        * configure.in: Call AM_PROG_LIBTOOL.  Remove shared library
976
        handling; now handled by libtool.  Replace AC_CONFIG_HEADER with
977
        AM_CONFIG_HEADER.  Replace AC_PROG_INSTALL with AM_PROG_INSTALL.
978
        Call AM_MAINTAINER_MODE, AM_CYGWIN32, and AM_EXEEXT.  Change all
979
        .o files to .lo.  Remove stamp-h handling in AC_OUTPUT.
980
        * acconfig.h: Mention PACKAGE and VERSION.
981
        * stamp-h.in: New file.
982
        * dep-in.sed: Change .o to .lo.
983
        * Makefile.in: Now built with automake.
984
        * aclocal.m4: Now built with aclocal.
985
        * config.in, configure: Rebuild.
986
        * VERSION: Remove.
987
 
988
Thu Jul 31 12:09:20 1997  Geoff Keating  
989
 
990
        * elf32-ppc.c (ppc_elf_size_dynamic_sections): Don't set TEXTREL
991
        if there is only a relocation to a read-only but not allocatable
992
        section (like .stab).
993
        * elf32-sparc.c (elf32_sparc_size_dynamic_sections): Likewise.
994
        * elf32-i386.c (elf_i386_size_dynamic_sections): Likewise.
995
        * elf32-m68k.c (elf_m68k_size_dynamic_sections): Likewise.
996
        * elf32-mips.c (mips_elf_size_dynamic_sections): Likewise.
997
        * elf64-alpha.c (elf64_alpha_size_dynamic_sections): Likewise.
998
 
999
        * elf32-ppc.c (ppc_elf_howto_raw): Correct various comments.
1000
        (ppc_elf_create_linker_section): These sections are not
1001
        created by the linker (that is, they are created by the user
1002
        putting data in them). In particular, they can be the source
1003
        and target of relocations.
1004
        (ppc_elf_adjust_dynamic_symbol): Check postcondition of
1005
        bfd_elf32_link_record_dynamic_symbol.  Align 16-byte common
1006
        objects (for instance, 'long double') to 16-byte boundaries.
1007
        (ppc_elf_size_dynamic_sections): Make the code that generates
1008
        section symbols exactly the same as for sparc, reducing the
1009
        number of section symbols output.
1010
        (ppc_elf_check_relocs): Check postcondition of
1011
        bfd_elf32_link_record_dynamic_symbol.  Make default case the
1012
        same as corresponding code for sparc, fixing bug involving
1013
        .rela.stabs.
1014
        (ppc_elf_finish_dynamic_symbol): Fix case involving GOT symbols
1015
        forced to be local because of versioning (by replicating
1016
        corresponding change in sparc).  Treat R_PPC_RELATIVE RELA relocs
1017
        as usual in ELF, not as pseudo-REL relocs (as the sparc linker
1018
        does).
1019
        (ppc_elf_relocate_section): Add handy debugging code for when
1020
        assertion fails.  Add some more 'symbol made local because of
1021
        versioning' cases.
1022
 
1023
        * elf32-ppc.c (ppc_elf_relocate_section): Cope with addend when
1024
        processing a GOT relocation as required by ABI.
1025
 
1026
Wed Jul 30 21:30:35 1997  Andreas Schwab  
1027
 
1028
        * elflink.h (NAME(bfd_elf,record_link_assignment)): Remove any
1029
        version info if this symbol came from a dynamic object.
1030
        (elf_link_add_object_symbols): Set the version info of a symbol
1031
        only if the object actually contains version definitions and
1032
        defines this symbol.
1033
 
1034
Mon Jul 28 18:07:43 1997  Rob Savoye  
1035
 
1036
        * aclocal.m4: Add CYGWIN and EXEEXT autoconf macros.
1037
        * configure.in: Use CYGWIN and EXEEXT autoconf macro to look for
1038
        win32 dependencies.
1039
        * configure: Regenerated with autoconf 2.12.
1040
        * doc/Makefile.in: Add $(EXEEXT) to chew executable.
1041
 
1042
Mon Jul 28 02:50:29 1997  Peter Schauer  (pes@regent.e-technik.tu-muenchen.de)
1043
 
1044
        * rs6000-core.c (rs6000coff_core_p):  If CORE_TRUNC is set, print
1045
        a warning rather than returning an error.
1046
 
1047
Sun Jul 27 19:54:14 1997  Felix Lee  
1048
 
1049
        * coffswap.h (coff_swap_aux_in): add semicolon to make MSVC happy.
1050
 
1051
Fri Jul 25 14:50:08 1997  Felix Lee  
1052
 
1053
        * cisco-core.c: define signals for wingdb.
1054
 
1055
Fri Jul 25 16:27:07 1997  Ian Lance Taylor  
1056
 
1057
        * ecofflink.c (bfd_ecoff_debug_accumulate): Only merge files with
1058
        the same number of aux entries.
1059
 
1060
Fri Jul 25 08:22:15 1997  Jeffrey A Law  (law@cygnus.com)
1061
 
1062
        * som.c (hppa_som_gen_reloc_type): Use R_DATA_EXPR for the
1063
        difference of two symbols if the relocation size is 32 bits.
1064
        (som_write_fixups): Handle R_DATA_EXPR.
1065
 
1066
Wed Jul 23 16:08:02 1997  Ian Lance Taylor  
1067
 
1068
        * coff-i386.c (coff_i386_reloc): Don't offset a common symbol by
1069
        its value if COFF_WITH_PE is defined.
1070
 
1071
Tue Jul 22 17:19:45 1997  Robert Hoehne 
1072
 
1073
        * coff-stubgo32.c: New file.
1074
        * go32stub.h: New file.
1075
        * coff-i386.c: If COFF_GO32_EXE, include coff/go32exe.h.
1076
        * coffswap.h (coff_swap_filehdr_in): Invoke
1077
        COFF_ADJUST_FILEHDR_IN_PRE and COFF_ADJUST_FILEHDR_IN_POST if they
1078
        are defined.
1079
        (coff_swap_filehdr_out): Invoke COFF_ADJUST_FILEHDR_OUT_PRE and
1080
        COFF_ADJUST_FILEHDR_OUT_POST if they are defined.
1081
        (coff_swap_aux_in): Invoke COFF_ADJUST_AUX_IN_PRE and
1082
        COFF_ADJUST_AUX_IN_POST if they are defined.
1083
        (coff_swap_aux_out): Invoke COFF_ADJUST_AUX_OUT_PRE and
1084
        COFF_ADJUST_AUX_OUT_POST if they are defined.
1085
        (coff_swap_scnhdr_in): Invoke COFF_ADJUST_SCNHDR_IN_PRE and
1086
        COFF_ADJUST_SCNHDR_IN_POST if they are defined.
1087
        (coff_swap_scnhdr_out): Invoke COFF_ADJUST_SCNHDR_OUT_PRE and
1088
        COFF_ADJUST_SCNHDR_OUT_POST if they are defined.
1089
        * targets.c (go32stubbedcoff_vec): Declare.
1090
        (bfd_target_vector): Add go32stubbedcoff_vec.
1091
        * configure.in (go32coff_vec): New target vector.
1092
        (go32stubbedcoff_vec): Likewise.
1093
        * config.bfd (i[3456]86-*-msdosdjgpp*): New target.
1094
        (i[3456]86-*-go32*): Change to be like new msdosdjgpp*.
1095
        * Makefile.in: Rebuild dependencies.
1096
        (BFD32_BACKENDS): Add coff-stubgo32.o.
1097
        (BFD32_BACKENDS_CFILES): Add coff-stubgo32.c.
1098
        (HFILES): Add go32stub.h.
1099
 
1100
Tue Jul 22 15:09:12 1997  Ian Lance Taylor  
1101
 
1102
        * configure.in: Check for fdopen.
1103
        * configure, config.in: Rebuild.
1104
        * opncls.c (bfd_fdopenr): Check HAVE_FDOPEN rather than VMS or
1105
        __GO32__.  Reindent a bit.
1106
 
1107
Sun Jul 20 20:05:20 1997  Ian Lance Taylor  
1108
 
1109
        * sunos.c (sunos_create_dynamic_sections): Set SEC_LINKER_CREATED
1110
        flag for newly created sections.
1111
        (sunos_add_dynamic_symbols): Don't discard newly created sections
1112
        if shared library is dynobj.
1113
 
1114
Mon Jul 14 15:33:55 1997  Ian Lance Taylor  
1115
 
1116
        * elf.c (map_sections_to_segments): When checking whether
1117
        including a section in a segment would force us to skip a page,
1118
        align the address of the next segment to avoid wraparound
1119
        problems.
1120
 
1121
Tue Jul  8 12:11:29 1997  Fred Fish  
1122
 
1123
        * coffcode.h (coff_write_object_contents): Initialize
1124
        target id field to TIC80_TARGET_ID.
1125
        * coffswap.h (coff_swap_filehdr_out): Swap out target id field
1126
        if used.
1127
        (coff_swap_filehdr_in): Swap in target id field if used.
1128
 
1129
Mon Jul  7 16:41:20 1997  Ian Lance Taylor  
1130
 
1131
        * coff-i386.c (coff_i386_is_local_label_name): New static function
1132
        if TARGET_UNDERSCORE.
1133
        (coff_bfd_is_local_label_name): Define if TARGET_UNDERSCORE.
1134
        (i386coff_vec): Add SEC_CODE and SEC_DATA to section_flags.
1135
 
1136
Mon Jun 30 14:29:26 1997  Ian Lance Taylor  
1137
 
1138
        * elf32-m68k.c (howto_table): Use complain_overflow_bitfield, not
1139
        complain_overflow_signed, for 32 bit PC relative relocations.
1140
 
1141
Thu Jun 26 01:26:31 1997  Ian Lance Taylor  
1142
 
1143
        * elflink.h (elf_link_add_object_symbols): When a version
1144
        indirection symbol is overridden, make the original symbol point
1145
        at the real overriding symbol.
1146
 
1147
        * elf.c (bfd_elf_string_from_elf_section): Check for an invalid
1148
        string index.
1149
 
1150
        * elflink.h (elf_link_output_extsym): Use the right section for a
1151
        common symbol.
1152
        * elf32-mips.c (mips_elf_link_output_symbol_hook): If a common
1153
        symbol was in .scommon, mark it as SHN_MIPS_SCOMMON.
1154
 
1155
Wed Jun 25 12:43:10 1997  H.J. Lu  
1156
 
1157
        * elflink.h (elf_merge_symbols): Resolve indirect and warning
1158
        symbols before checking for new symbols.
1159
 
1160
        * elfcore.h (elf_corefile_note): Move out of HAVE_SYS_PROCFS_H.
1161
 
1162
Tue Jun 24 11:20:43 1997  Ian Lance Taylor  
1163
 
1164
        * coffgen.c (coff_object_p): Read the f_opthdr bytes from the
1165
        file, not aoutsz bytes (they are different in XCOFF .o files).
1166
 
1167
        * xcofflink.c (xcoff_link_add_symbols): Permit symbols to be
1168
        redefined by objects included from archives.
1169
 
1170
Mon Jun 23 18:03:27 1997  Ian Lance Taylor  
1171
 
1172
        * elflink.h (elf_merge_symbol): In the case of a new defined
1173
        symbol overriding an old defined symbol, return the hash table
1174
        entry which we modify, even if it is the target of an
1175
        indirection.
1176
        (elf_link_add_object_symbols): If the real name of the symbol gets
1177
        overridden, convert the versioned symbol into an indirect symbol
1178
        to the real symbol.
1179
 
1180
        * elflink.h (elf_merge_symbol): New static function, broken out of
1181
        elf_link_add_object_symbols.
1182
        (elf_link_add_object_symbols): Call it.
1183
 
1184
Sun Jun 22 19:40:57 1997  Ian Lance Taylor  
1185
 
1186
        * coff-i386.c (i3coff_object_p): If COFF_IMAGE_WITH_PE, hack to
1187
        handle case where COFF filehdr does not immediately follow PE
1188
        header.
1189
        * coffgen.c (coff_object_p): Remove useless seek to current
1190
        location.
1191
 
1192
Wed Jun 18 19:03:38 1997  Ian Lance Taylor  
1193
 
1194
        * linker.c (link_action): Change COMMON_ROW/indr to from CREF to
1195
        REFC.
1196
 
1197
Tue Jun 17 11:55:02 1997  Ian Lance Taylor  
1198
 
1199
        * cofflink.c (_bfd_coff_link_input_bfd): If stripping debugging
1200
        symbols, skip N_ABS symbols with debugging storage classes.
1201
 
1202
Mon Jun 16 18:56:27 1997  Geoff Keating  
1203
 
1204
        * elf32-ppc.c (ppc_elf_relocate_section): Don't emit R_PPC_REL*
1205
        relocs in shared libraries which refer to local symbols.  Cope
1206
        with addend when processing a GOT relocation.
1207
 
1208
        * elf32-ppc.c (ppc_elf_size_dynamic_sections): Only create symbols
1209
        for sections that the linker didn't create.
1210
        (ppc_elf_finish_dynamic_sections): Only try to write out a section
1211
        symbol if it was created in ppc_elf_size_dynamic_sections.
1212
        (ppc_elf_relocate_section): Complain if we have to generate a reloc
1213
        relative to a section for which we didn't output a symbol.
1214
 
1215
        * elf32-ppc.c (ppc_elf_size_dynamic_sections): Clean up.  PLT
1216
        relocs are 'rela' relocs, like everything else.  .rela.plt is not
1217
        a read-only section, so we don't have to special-case it.
1218
 
1219
        * elf32-ppc.c (ppc_elf_adjust_dynamic_symbol): Entries in the
1220
        .rela.bss section are (of course) 'rela' relocs not 'rel' relocs.
1221
 
1222
        * elf32-ppc.c (ppc_elf_check_relocs): Initialise srelgot.
1223
        (ppc_elf_relocate_section): @got offsets are 4 from start of the
1224
        actual .got section.
1225
        * elflink.c (_bfd_elf_create_got_section): The three reserved
1226
        words start from the symbol '_GLOBAL_OFFSET_TABLE_'.
1227
 
1228
        * elf32-ppc.c (ppc_elf_size_dynamic_sections): '.rela' is 5
1229
        characters, not 4.
1230
 
1231
        * elf32-ppc.c (ppc_elf_check_relocs): Use
1232
        _bfd_elf_create_got_section to create the GOT rather than
1233
        ppc_elf_create_linker_section. Create the '.rela.got' section
1234
        ourselves.
1235
        (ppc_elf_finish_dynamic_symbol): Set up GOT relocations when a
1236
        symbol has a GOT entry.
1237
        (ppc_elf_relocate_section): Record when a symbol is used through
1238
        the GOT, and allocate space in the GOT for each such symbol.
1239
        (ppc_elf_adjust_dynamic_symbol): Delete unused .got.plt stuff.
1240
        (ppc_elf_create_linker_section): Delete unused LINKER_SECTION_GOT
1241
        stuff.
1242
 
1243
        * elf32-ppc.c (ppc_elf_howto_raw): GOT16_HA relocs should be
1244
        treated in a similar way to ADDR16_HA relocs.
1245
        (ppc_elf_relocate_section): PLTREL24 relocs do not get copied into
1246
        shared objects; the linker must deal with them.
1247
        (ppc_elf_create_linker_section): Stop setting
1248
        _GLOBAL_OFFSET_TABLE_ to the wrong value; delete unused
1249
        LINKER_SECTION_PLT stuff.
1250
        (ppc_elf_check_relocs): Delete unused LINKER_SECTION_PLT stuff.
1251
        (ppc_elf_finish_dynamic_sections): Use BFD calls to get GOT
1252
        section, not ELF-specific calls.
1253
        (elf_backend_plt_not_loaded): Set to 1.
1254
        (elf_backend_got_symbol_offset): Set to 4.
1255
        * elf-bfd.h (elf_backend_data): Add 'plt_not_loaded' member
1256
        for when ld.so fills in the PLT; and 'got_symbol_offset' member.
1257
        * elflink.c (_bfd_elf_create_dynamic_sections): Apply
1258
        plt_not_loaded member.
1259
        (_bfd_elf_create_got_section): Apply got_symbol_offset.
1260
        * elfxx-target.h (elf_backend_plt_not_loaded): Set default to
1261
        'loaded'.
1262
        (elf_backend_G_O_T_offset): Set default to 0.
1263
        (elfNN_bed): Set added fields.
1264
 
1265
        * elf32-ppc.c (ppc_elf_size_dynamic_sections): Was setting
1266
        DT_RELENT in shared objects; should be DT_RELAENT.
1267
 
1268
        * elf32-ppc.c (ppc_elf_relocate_section): Propagate
1269
        R_PPC_ADDR16_HA relocs to shared objects. Cope with case where
1270
        such a reloc (in a non-shared object) refers to a symbol that's
1271
        not defined.
1272
 
1273
Mon Jun 16 14:42:14 1997  H.J. Lu  
1274
 
1275
        * elfcode.h (put_signed_word): Define.
1276
        (get_signed_word): Define.
1277
        (elf_swap_reloca_in): Use get_signed_word for the r_addend field.
1278
        (elf_swap_reloca_out): Use put_signed_word for the r_addend
1279
        field.
1280
        * elf32-m68k.c (elf_m68k_finish_dynamic_symbol): Use
1281
        bfd_get_signed_32 to set the r_addend field.
1282
        * elf64-mips.c (mips_elf64_swap_reloca_in): Use
1283
        bfd_h_get_signed_64 to set the r_addend field.
1284
 
1285
Mon Jun 16 12:31:29 1997  Ian Lance Taylor  
1286
 
1287
        * elf32-i386.c (elf_i386_relocate_section): When generating a
1288
        shared library, do the relocation if the input section is not
1289
        allocated in memory.
1290
 
1291
        * elflink.h (NAME(bfd_elf,size_dynamic_sections)): Call
1292
        elf_link_assign_sym_version before elf_adjust_dynamic_symbol.
1293
        (elf_fix_symbol_flags): New static function, broken out of
1294
        elf_adjust_dynamic_symbol.
1295
        (elf_adjust_dynamic_symbol): Call elf_fix_symbol_flags.
1296
        (elf_link_assign_sym_version): Likewise.  Permit a symbol to be
1297
        forced local even if NEEDS_PLT is set.  When forcing a symbol to
1298
        be local, clear NEEDS_PLT.
1299
        (elf_link_output_extsym): Remove unused local bed.
1300
 
1301
Wed Jun 11 22:44:20 1997  Jeffrey A Law  (law@cygnus.com)
1302
 
1303
        * elf32-mn10300.c (elf32_mn10300_link_hash_entry): New structure
1304
        for derived elf linker hash table entries.  References to
1305
        elf_link_hash_entry changed appropriately.
1306
        (elf32_mn10300_link_hash_table): New structure for derived elf
1307
        linker hash table.
1308
        (elf32_mn10300_hash_table): Define.
1309
        (elf32_mn10300_link_hash_traverse): Likewise.
1310
        (elf32_mn10300_link_hash_newfunc): New function.
1311
        (elf32_mn10300_link_hash_table_create): Likewise.
1312
        (elf32_mn10300_finish_hash_table_entry): Likewise.
1313
        (mn10300_elf_relax_section): Handle "call" -> "calls", removal
1314
        of prologue code, and call:32->call:16 relaxing.
1315
        (compute_function_info: New function.
1316
        (bfd_elf32_bfd_ilink_hash_table_create): Define.
1317
 
1318
Wed Jun 11 00:00:07 1997  Ian Lance Taylor  
1319
 
1320
        * elflink.h (elf_link_output_extsym): Call finish_dynamic_symbol
1321
        for a symbol which is being forced to be local.
1322
        * elf32-i386.c (elf_i386_relocate_section): Write out the
1323
        relocation value for a GOT reloc for a symbol which is turning
1324
        into a local symbol.
1325
        (elf_i386_finish_dynamic_symbol): If a symbol is turning into a
1326
        local symbol, write out a RELATIVE reloc rather than a GLOB_DAT
1327
        reloc.
1328
        * elf32-m68k.c, elf32-sparc.c: Corresponding changes.
1329
 
1330
        * elf32-i386.c (elf_i386_relocate_section): Get the relocation
1331
        value if the symbol is turning into a local symbol.
1332
        * elf32-m68k.c (elf_m68k_relocate_section): Likewise.
1333
        * elf32-sparc.c (elf32_sparc_relocate_section): Likewise.
1334
 
1335
1997-06-10 22:58  Ulrich Drepper  
1336
 
1337
        * elflink.h (elf_link_add_object_symbols): Also read verneed
1338
        information by calling `_bfd_elf_slurp_version_tables'.
1339
        (elf_link_add_object_symbols): For undefined symbols look for
1340
        version information in the verneed records.
1341
        (elf_link_add_object_symbols): Use soname of shared object
1342
        for verneed record if it is available.
1343
 
1344
Tue Jun 10 11:13:03 1997  H.J. Lu  
1345
 
1346
        * cpu-arm.c: Add prototypes for compatible and scan.
1347
        * cofflink.c: Add prototype for mark_relocs.
1348
 
1349
        * archive.c (bfd_special_undocumented_glue): Change filename to
1350
        const pointer.  Add prototype.
1351
 
1352
Mon Jun  9 12:34:21 1997  Andreas Schwab  
1353
 
1354
        * elflink.h (elf_link_add_object_symbols): Ignore relocations of
1355
        sections that will be discarded.
1356
 
1357
1997-06-06 22:58  Ulrich Drepper  
1358
 
1359
        * elflink.h (elf_link_find_version_dependencies): When searching
1360
        for known version symbol skip non-matching verdef records, not
1361
        matching records.
1362
 
1363
Thu Jun  5 15:52:45 1997  Ian Lance Taylor  
1364
 
1365
        * cofflink.c (_bfd_coff_generic_relocate_section): Write a long,
1366
        not a bfd_vma, to the base file, to match how dlltool reads it.
1367
 
1368
Tue Jun  3 16:57:45 1997  Nick Clifton  
1369
 
1370
        * reloc.c: Add thumb relocations.
1371
 
1372
        * bfd-in2.h: Add Thumb relocations.
1373
 
1374
        * libbfd.h: Add Thumb relocations.
1375
 
1376
Mon Jun  2 10:41:52 1997  Andreas Schwab  
1377
 
1378
        * cpu-m68k.c (arch_info_struct): Fix 68060 cpu name.
1379
 
1380
Fri May 30 12:46:27 1997  Ian Lance Taylor  
1381
 
1382
        * elf32-sparc.c (elf32_sparc_size_dynamic_sections): Set dynindx
1383
        for a section even if it is not loaded.
1384
 
1385
        * cofflink.c (coff_link_add_symbols): If PE file, don't subtract
1386
        section VMA.
1387
        (_bfd_coff_link_input_bfd): Separate section VMA handling for
1388
        input and output files.
1389
        (_bfd_coff_generic_relocate_section): Check whether input file,
1390
        not output file, is a PE file.
1391
 
1392
Wed May 28 15:48:43 1997  Nick Clifton  
1393
 
1394
        * coff-arm.c: (coff_arm_bfd_set_private_flags): Make static.
1395
 
1396
Wed May 28 16:16:04 1997  Ian Lance Taylor  
1397
 
1398
        * coff-i386.c (coff_i386_reloc): Don't just exit if we see an
1399
        R_IMAGEBASE reloc.
1400
 
1401
Wed May 28 09:48:43 1997  Nick Clifton  
1402
 
1403
        * cpu-arm.c (compatible): Add test for supersets of ARM
1404
        architectures.
1405
 
1406
Tue May 27 19:42:03 1997  Bob Manson  
1407
 
1408
        * cofflink.c (_bfd_coff_final_link): Initialize global_to_static
1409
        member.
1410
 
1411
Tue May 27 14:34:08 1997  Nick Clifton  
1412
 
1413
        * coff-arm.c (coff_arm_bfd_set_private_flags): Make global.  It is
1414
        called directly by gas/config/tc-arm.c.
1415
 
1416
Tue May 27 15:58:53 1997  Richard Henderson  
1417
 
1418
        * elf64-alpha.c (PLT_ENTRY_*): Use a new thread-safe format.
1419
        (elf64_alpha_finish_dynamic_symbol): Fill it in properly.
1420
 
1421
Mon May 26 14:05:13 1997  Ian Lance Taylor  
1422
 
1423
        * coff-ppc.c (coff_ppc_relocate_section): If PE file, don't add
1424
        section VMA.
1425
 
1426
Mon May 26 10:57:48 1997  Fred Fish  
1427
 
1428
        * peicode.h (coff_bfd_print_private_bfd_data): #undef before #define.
1429
        (coff_bfd_copy_private_bfd_data): Ditto.
1430
        * coff-arm.c (coff_arm_bfd_merge_private_bfd_data): Make static.
1431
        (coff_arm_bfd_print_private_bfd_data): Ditto.
1432
        (coff_arm_bfd_set_private_flags): Ditto.
1433
        (coff_arm_bfd_copy_private_bfd_data): Ditto.
1434
 
1435
Fri May 23 15:14:58 1997  Fred Fish  
1436
 
1437
        * libcoff-in.h (struct coff_final_link_info): Add boolean
1438
        global_to_static member for support of task linking.
1439
        (_bfd_coff_write_task_globals): Add prototype.
1440
        * libcoff.h: Regenerate.
1441
        * coffcode.h (coff_write_object_contents): Use #ifdef to
1442
        check RS6000COFF_C, to be consistent with all other uses
1443
        in this file.
1444
        * cofflink.c (_bfd_coff_final_link): If doing task linking,
1445
        call _bfd_coff_write_task_globals.
1446
        (_bfd_coff_link_input_bfd): If doing task linking, convert
1447
        global functions to static.
1448
        (_bfd_coff_write_global_sym): If doing task linking, convert
1449
        global variables to static.
1450
        (_bfd_coff_write_task_globals): New function.
1451
        * coff-tic80.c (TIC80COFF): Define this instead of just TIC80.
1452
        (C_AUTOARG): #undef since it clashes with C_UEXT.
1453
        (C_LASTENT): #undef since it clashes with C_STATLAB.
1454
        * coffcode.h (coff_write_object_contents): Use TIC80COFF
1455
        rather than TIC80.
1456
        (coff_slurp_symbol_table): Use C_SYSTEM.  Hide C_AUTOARG use
1457
        when TIC80COFF defined (clashes with C_UEXT).  Explicitly
1458
        recognize C_UEXT, C_STATLAB, and C_EXTLAB as unsupported.
1459
 
1460
Fri May 23 12:38:24 1997  Ian Lance Taylor  
1461
 
1462
        * coff-tic80.c (tic80_howto_table): Change overflow check for most
1463
        PP relocations to complain_overflow_dont.
1464
 
1465
Thu May 22 20:22:14 1997  Ian Lance Taylor  
1466
 
1467
        * coff-tic80.c (tic80_howto_table): Add PP relocations.  Change
1468
        name of R_RELLONG to "RELLONG".  Set rightshift and complain for
1469
        M_PPCR.
1470
        (ppbase_reloc, glob15_reloc): New static functions.
1471
        (glob16_reloc, local16_reloc): New static functions.
1472
        (rtype2howto): Handle all relocation types.
1473
        (coff_tic80_relocate_section): New static function.
1474
        (coff_relocate_section): Define to coff_tic80_relocate_section.
1475
        * Makefile.in (coff-tic80.o): Depends upon include/coff/tic80.h.
1476
 
1477
Wed May 21 17:15:50 1997  Ian Lance Taylor  
1478
 
1479
        * coffcode.h (coff_slurp_symbol_table): If COFF_WITH_PE or
1480
        COFF_IMAGE_WITH_PE, don't subtract the section VMA from the symbol
1481
        value.
1482
        * coffgen.c (fixup_symbol_value): Add abfd parameter.  Change all
1483
        callers.  If PE file, don't add section VMA.
1484
        (coff_write_alien_symbol): If PE file, don't add section VMA.
1485
        * cofflink.c (_bfd_coff_link_input_bfd): Likewise.
1486
        (_bfd_coff_write_global_sym): Likewise.
1487
        (_bfd_coff_generic_relocate_section): Likewise.
1488
 
1489
        * peicode.h: Add & 0xffffffff when using ImageBase in case bfd_vma
1490
        is 64 bits.
1491
 
1492
Wed May 21 09:58:10 1997  Nick Clifton  
1493
 
1494
        * cofflink.c (mark_relocs): Add new function to mark symbols which
1495
        are used by relocations.
1496
        (_bfd_coff_link_input_bfd): Add call to mark_relocs() and code to
1497
        suppress the skipping of symbols that have thus been marked.
1498
 
1499
Tue May 20 18:45:26 1997  Ian Lance Taylor  
1500
 
1501
        * coff-sh.c (sh_merge_private_data): New static function.
1502
        (coff_bfd_merge_private_bfd_data): Define.
1503
 
1504
Mon May 19 14:46:00 1997  Mark Alexander  
1505
 
1506
        * coff-tic80.c: Remove unnecessary #ifdefs.
1507
        * config.bfd: Set targ_underscore to yes for tic80.
1508
 
1509
Mon May 19 14:26:36 1997  Mark Alexander  
1510
 
1511
        * coff-tic80.c (NAMES_HAVE_UNDERSCORE): Define (fixes problem
1512
        with unresolved external symbols in GDB).
1513
 
1514
Fri May 16 10:23:03 1997  Jeffrey A Law  (law@cygnus.com)
1515
 
1516
        * elf-m10300.c (elf32_mn10300_relax_section): Read in all
1517
        the symbols associated with each BFD.
1518
        (mn10300_elf_relax_delete_bytes): Don't adjust the same symbol
1519
        more than once.
1520
        * elf-m10200.c: Likewise.
1521
        * elf32-m32r.c: Likewise.
1522
        * elf32-sh.c: Likewise.
1523
 
1524
Fri May 16 12:10:52 1997  Ian Lance Taylor  
1525
 
1526
        * elflink.h (elf_link_add_object_symbols): Don't decrease the
1527
        alignment of a common symbol.  If two symbols that look like
1528
        common symbols are found in two shared libraries, and the size is
1529
        different, use the larger size, and warn if --warn-common.  If a
1530
        common symbol overrides a definition in a shared library, set the
1531
        size to the larger size, and warn if --warn-common.
1532
 
1533
Thu May 15 14:31:28 1997  Nick Clifton  
1534
 
1535
        * cpu-arm.c (compatible):  Allow default machine to be polymorphed
1536
        into any other machine type.
1537
 
1538
        * coffcode.h (coff_set_flags):  Initialise flags variable to 0.
1539
 
1540
        * coff-arm.c (coff_arm_bfd_merge_private_bfd_data):  When merging
1541
        data into an unitialised destination set its machine type as well.
1542
 
1543
Thu May 15 16:40:20 1997  Ian Lance Taylor  
1544
 
1545
        * elflink.h (elf_link_add_object_symbols): Force ELF symbol size
1546
        to common symbol size.  Consistently treat uninitialized symbols
1547
        in shared objects as common symbols.
1548
 
1549
Fri May  9 10:15:27 1997  Nick Clifton  
1550
 
1551
        * archures.c (constants):  Added new constants to identify the
1552
        type of the ARM architecture: bfd_mach_arm_2, bfd_mach_arm_2a,
1553
        bfd_mach_arm_3, bfd_mach_arm_3M, bfd_mach_arm_4 and bfd_mach_arm_4T.
1554
 
1555
        * bfd-in2.h (constants):   Added new constants to identify
1556
        the type of the ARM architecture: bfd_mach_arm_2, bfd_mach_arm_2a,
1557
        bfd_mach_arm_3, bfd_mach_arm_3M, bfd_mach_arm_4 and
1558
        bfd_mach_arm_4T.  This file is auto-magically generated from the
1559
        archures.c file.  This update is just to save work.
1560
 
1561
        * coff-arm.c (coff_arm_bfd_merge_private_bfd_data,
1562
        coff_arm_bfd_print_private_bfd_data,
1563
        coff_arm_bfd_set_private_flags,
1564
        coff_arm_bfd_copy_private_bfd_data): Added these new functions.
1565
        (global): Macro redefinitions set up to use these new functions.
1566
 
1567
        * coffcode.h (coff_mkobject_hook): Added call to
1568
        coff_arm_bfd_set_private_flags().
1569
        (coff_set_arch_mach_hook): Added code to set machine type based on
1570
        bits stored in internal flags.
1571
        (coff_set_flags): Added code to set the new bits in the flags
1572
        field based on the machine number.
1573
        (function definition macros): Made all function definition macros
1574
        conditional so that they can be overridden by target specific
1575
        files.
1576
 
1577
        * cpu-arm.c (compatible): Added this function.  (arch_info_struct):
1578
        Structure extended to include new types, one each for ARMv2,
1579
        ARMv2a, ARMv3, ARMv3M, ARMv4 and ARMv4T.
1580
 
1581
        * libcoff-in.h (struct coff_tdata):  Added flags field.
1582
 
1583
Fri May  9 17:40:02 1997  Ian Lance Taylor  
1584
 
1585
        * config.bfd (i[3456]86-*-gnu*): Don't include Mach support.
1586
 
1587
        * config.bfd: Change #if 0 around uses of host_aout_vec to #if
1588
        HAVE_host_aout_vec.
1589
 
1590
Mon May  5 13:57:32 1997  Mike Meissner  
1591
 
1592
        * coffgen.c (coff_find_nearest_line): If there are no syments,
1593
        just return false.
1594
 
1595
Mon May  5 18:18:45 1997  Philip Blundell  
1596
 
1597
        * config.bfd: cope with '*-*-linux-gnuaout' targets.
1598
 
1599
Thu May  1 11:31:12 1997  Ian Lance Taylor  
1600
 
1601
        * targmatch.sed: Add explicit \n characters to work around bug in
1602
        HP/UX 10.20 sed program.
1603
 
1604
Wed Apr 30 12:27:03 1997  Ian Lance Taylor  
1605
 
1606
        * elf.c (copy_private_bfd_data): Cast csecs to avoid sign
1607
        extension problems.
1608
 
1609
Tue Apr 22 12:06:08 1997  Ian Lance Taylor  
1610
 
1611
        * Makefile.in (do_maintainer_clean): Don't remove bfd-in2.h.
1612
 
1613
Mon Apr 21 11:21:31 1997  Andreas Schwab  
1614
 
1615
        * elf32-m68k.c: Follow the last changes in elf32-i386.c:
1616
        (struct elf_m68k_pcrel_relocs_copied, struct
1617
        elf_m68k_link_hash_entry, struct elf_m68k_link_hash_table,
1618
        elf_m68k_link_hash_traverse, elf_m68k_hash_table,
1619
        elf_m68k_link_hash_newfunc, elf_m68k_link_hash_table_create,
1620
        elf_m68k_discard_copies, bfd_elf32_bfd_link_hash_table_create):
1621
        New definitions.
1622
        (elf_m68k_check_relocs): If linking with -Bsymbolic, don't copy
1623
        PC relative relocs for a global symbol defined in a regular
1624
        object, and count the number of PC relative relocs copied for any
1625
        global symbol.
1626
        (elf_m68k_size_dynamic_sections): If linking with -Bsymbolic,
1627
        traverse with elf_m68k_discard_copies.
1628
 
1629
Sat Apr 19 22:50:14 1997  Ian Lance Taylor  
1630
 
1631
        * elf32-i386.c (elf_i386_check_relocs): Only count PC relative
1632
        relocs.  From Jamie Lokier .
1633
 
1634
        * coffcode.h (coff_compute_section_file_positions): Force the
1635
        potential last byte in the file to be written out when
1636
        COFF_IMAGE_WITH_PE.
1637
 
1638
Thu Apr 17 13:46:56 1997  Per Fogelstrom  
1639
 
1640
        * configure.host (mips*-*-openbsd*): New host.
1641
 
1642
Thu Apr 17 11:10:54 1997  Ian Lance Taylor  
1643
 
1644
        * elflink.h (elf_link_add_object_symbols): Only subtract the
1645
        section VMA from the symbol value if this is a fully linked file.
1646
 
1647
        * elf32-i386.c (struct elf_i386_pcrel_relocs_copied): Define.
1648
        (struct elf_i386_link_hash_entry): Define.
1649
        (struct elf_i386_link_hash_table): Define.
1650
        (elf_i386_link_hash_traverse): Define.
1651
        (elf_i386_hash_table): Define.
1652
        (elf_i386_link_hash_newfunc): New static function.
1653
        (elf_i386_link_hash_table_create): New static function.
1654
        (elf_i386_check_relocs): If linking with -Bsymbolic, don't copy
1655
        PC relative relocs for a global symbol defined in a regular
1656
        object, and count the number of PC relative relocs copied for any
1657
        global symbol.
1658
        (elf_i386_size_dynamic_sections): If linking with -Bsymbolic,
1659
        traverse with elf_i386_discard_copies.
1660
        (elf_i386_discard_copies): New static function.
1661
        (bfd_elf32_bfd_link_hash_table_create): Define.
1662
 
1663
        From Gordon W. Ross :
1664
        * aoutf1.h (MY_entry_is_text_address): Define if not defined.
1665
        (sunos4_aout_backend): Use MY_entry_is_text_address.
1666
 
1667
Wed Apr 16 12:43:32 1997  Martin Hunt  
1668
 
1669
        * elf32-d30v.c (elf_d30v_howto_table): Changed size of
1670
        R_D30V_32_NORMAL to 2 (4 bytes).
1671
 
1672
Wed Apr 16 14:02:29 1997  Ian Lance Taylor  
1673
 
1674
        From Gordon W. Ross :
1675
        * netbsd.h (N_SHARED_LIB): Define.
1676
        (SEGMENT_SIZE): Don't define.
1677
        * m68knetbsd.c (SEGMENT_SIZE): Don't define (revert change of
1678
        April 11).
1679
        * sparcnetbsd.c (TARGET_PAGE_SIZE): Define as 0x2000.
1680
        (SEGMENT_SIZE): Don't define.
1681
 
1682
        * elf32-ppc.c (ppc_elf_adjust_dynamic_symbol): Set .rela.bss size
1683
        to sizeof Rela structure, not sizeof Rel structure.  From Gary
1684
        Thomas .
1685
 
1686
Tue Apr 15 11:50:37 1997  Ian Lance Taylor  
1687
 
1688
        * aout-target.h (MY(callback)): If entry_is_text_address, adjust
1689
        whenever entry is larger than text address, but only by whole
1690
        pages.  From Gordon W. Ross .
1691
 
1692
        * Makefile.in (install): Depend upon installdirs.  Use
1693
        mkinstalldirs to build $(oldincludedir).
1694
        (installdirs): New target.
1695
 
1696
        * elflink.h (elf_link_add_object_symbols): Don't call check_relocs
1697
        if this is a debugging section which we are stripping.
1698
 
1699
Mon Apr 14 12:39:30 1997  Richard Henderson  
1700
 
1701
        * elf64-alpha.c (elf64_alpha_object_p): Allocate the
1702
        alpha-specific target data struct.
1703
 
1704
Mon Apr 14 11:45:46 1997  Ian Lance Taylor  
1705
 
1706
        From Thomas Graichen :
1707
        * Makefile.in: Always use $(SHELL) when running move-if-change.
1708
        * configure.in: Use ${CONFIG_SHELL} when running $ac_config_sub.
1709
        * configure: Rebuild.
1710
 
1711
Fri Apr 11 15:43:24 1997  Ian Lance Taylor  
1712
 
1713
        * elfcode.h (elf_slurp_symbol_table): Only subtract the section
1714
        VMA if this is an executable file or a shared object.
1715
 
1716
        * targets.c (netbsd_core_vec): Declare.  From Gordon W. Ross
1717
        .
1718
 
1719
        * libaout.h (struct aout_backend_data): Add entry_is_text_address
1720
        field.
1721
        * aout-target.h (SEGMENT_SIZE): Define to TARGET_PAGE_SIZE at the
1722
        start of the file.  Remove uses later on which switch using
1723
        ifdef.
1724
        (MY(callback)): Handle entry_is_text_address.
1725
        (MY_entry_is_text_address): Define if not defined.
1726
        (MY(backend_data)): Initialize new field.
1727
        * aoutf1.h (sunos4_aout_backend): Likewise.
1728
        * i386aout.c (MY(backend_data)): Likewise.
1729
        * i386mach3.c (MY(backend_data)): Likewise.
1730
        * mipsbsd.c (MY(backend_data)): Likewise.
1731
        * sparclynx.c (sparclynx_aout_backend): Likewise.
1732
        * netbsd.h (SEGMENT_SIZE): Define if not defined.
1733
        (MY_entry_is_text_address): Define.
1734
        * m68knetbsd.c (SEGMENT_SIZE): Define as 0x20000.
1735
 
1736
        * xcofflink.c (bfd_xcoff_import_symbol): Handle importing a symbol
1737
        whose name starts with `.'.
1738
 
1739
Fri Apr 11 11:57:15 1997  Niklas Hallqvist  
1740
 
1741
        * config.bfd: (i[3456]86-*-openbsd*, m68*-*-openbsd*,
1742
        mips*el*-*-openbsd*, mips*-*-openbsd*, ns32k-*-openbsd*,
1743
        powerpc-*-*bsd*, sparc-*-openbsd*): New targets.
1744
        * configure.in (i[3456]86-*-openbsd*, mips*-*-openbsd*,
1745
        m68*-*-openbsd*, ns32k-*-openbsd*, powerpc-*-*bsd*,
1746
        sparc-*-openbsd*): New targets.
1747
        * configure: Rebuild.
1748
 
1749
Tue Apr  8 18:09:29 1997  Jamie Lokier  
1750
 
1751
        * stabs.c (struct stab_section_info): New field
1752
        `cumulative_skips'.
1753
        (_bfd_link_section_stabs): Fill the above array.
1754
        (_bfd_stab_section_offset): Use `cumulative_skips' to
1755
        speed up offset calculation.
1756
 
1757
Tue Apr  8 00:01:31 1997  Jeffrey A Law  (law@cygnus.com)
1758
 
1759
        * elf-mn10300.c (mn10300_elf_relax_section): Don't forget the
1760
        addend for non pc-relative relocations.
1761
 
1762
        * elf-m10300.c (bfd_elf32_mn10300_reloc): Remove prototype
1763
        for non-existent function.
1764
 
1765
        * elf-m10300.c (mn10300_elf_relax_section): New function.
1766
        (mn10300_elf_relax_delete_bytes): Likewise.
1767
        (mn10300_elf_symbol_address_p): Likewise.
1768
        (mn10300_elf_get_relocated_section_contents): Likewise.
1769
        (bfd_elf32_bfd_relax_section): Define.
1770
        (bfd_elf32_bfd_get_relocated_section_contents): Likewise.
1771
 
1772
Mon Apr  7 16:47:09 1997  Ian Lance Taylor  
1773
 
1774
        * configure.host: Set SHLIB_LIBS.
1775
        * configure.in: Substitute SHLIB_LIBS.
1776
        * configure: Rebuild.
1777
        * Makefile.in (SHLIB_LIBS): New variable.
1778
        ($(SHLIB)): Use $(SHLIB_LIBS).
1779
 
1780
Mon Apr  7 10:53:52 1997  Michael Snyder  
1781
 
1782
        * bfd-in.h bfd-in2.h: add bfd_section_lma macro to correspond
1783
        with bfd_section_vma.
1784
 
1785
Fri Apr  4 11:37:15 1997  Ian Lance Taylor  
1786
 
1787
        * configure.in: Update file names for bfd_elf32_mn10[23]00_vec.
1788
        Correct CPU file names for mn10[23]00.
1789
        * configure: Rebuild.
1790
 
1791
        * bfd.c (bfd_record_phdr): Cast count to size_t before
1792
        subtraction.
1793
 
1794
        * coff-ppc.c (dump_toc): Add cast to avoid warning from SunOS cc.
1795
        * coff-rs6000.c (xcoff_read_ar_hdr): Likewise.
1796
        (xcoff_write_archive_contents): LIkewise.
1797
        * elf32-mips.c (_bfd_mips_elf_set_section_contents): Likewise.
1798
        (mips_elf_create_procedure_table): Likewise.
1799
        * peicode.h (pe_print_idata): Likewise.
1800
        (pe_print_edata, pe_print_pdata, pe_print_reloc): Likewise.
1801
        * xcofflink.c (xcoff_get_section_contents): Likewise.
1802
        (_bfd_xcoff_canonicalize_dynamic_symtab): Likewise.
1803
        (xcoff_link_add_symbols): Likewise.
1804
        (xcoff_link_add_symbols): Likewise.
1805
 
1806
        * ppcboot.c (ppcboot_set_arch_mach): Make static.
1807
        (ppcboot_bfd_print_private_bfd_data): Likewise.
1808
 
1809
        * elf32-mips.c (elf_mips_ctor64_howto): Set complain_on_overflow
1810
        to complain_overflow_signed.
1811
 
1812
Thu Apr  3 11:51:54 1997  Ian Lance Taylor  
1813
 
1814
        * VERSION: Set to 2.8.1.
1815
 
1816
        * Branched binutils 2.8.
1817
 
1818
        * elf32-ppc.c (ppc_elf_check_relocs):  Don't check SEC_ALLOC when
1819
        deciding whether to copy a reloc into a shared object.
1820
        (ppc_elf_relocate_section): Likewise.  Relocate R_PPC_RELATIVE
1821
        relocs in unallocated sections.
1822
        * elf32-sparc.c (elf32_sparc_relocate_section): Relocate
1823
        R_SPARC_RELATIVE relocs in unallocated sections.
1824
 
1825
Wed Apr  2 16:19:41 1997  Mike Meissner  
1826
 
1827
        * elf32-ppc.c (ppc_elf_check_relocs): Undo March 26 change and
1828
        always create got section so that the _GLOBAL_OFFSET_TABLE_ label
1829
        is always created.
1830
 
1831
Wed Apr  2 10:49:07 1997  Ian Lance Taylor  
1832
 
1833
        * elflink.h (elf_link_add_object_symbols): Let a common symbol
1834
        override an uninitialized symbol from a shared library with a
1835
        smaller size.
1836
 
1837
        * elf-m10200.c: Rename from elf32-mn10200.c.
1838
        * elf-m10300.c: Rename from elf32-mn10300.c.
1839
        * cpu-m10200.c: Rename from cpu-mn10200.c
1840
        * cpu-m10300.c: Rename from cpu-mn10300.c
1841
        * Makefile.in: Update accordingly.
1842
 
1843
        * elf32-mips.c (elf_mips_ctor64_howto): New static variable.
1844
        (elf_mips_isa): Move to earlier in file.
1845
        (mips_reloc_map): Remove BFD_RELOC_CTOR entry.
1846
        (bfd_elf32_bfd_reloc_type_lookup): Handle BFD_RELOC_CTOR
1847
        specially.
1848
 
1849
        * elf32-mips.c (mips16_jump_reloc): Print a warning rather than
1850
        calling abort.
1851
 
1852
Tue Apr  1 16:18:05 1997  Klaus Kaempf  
1853
 
1854
        * configure.com: New file.
1855
        * config.h-vms: Remove file.
1856
        * makefile.vms: Update for new configure scheme.
1857
 
1858
Mon Mar 31 23:28:39 1997  H.J. Lu  
1859
 
1860
        * libcoff-in.h (ppc_allocate_toc_section): Declare.
1861
        (ppc_process_before_allocation): Declare.
1862
        * libcoff.h: Rebuild.
1863
 
1864
        * coffcode.h (coff_mkobject_hook): Declare if not a macro.
1865
 
1866
Mon Mar 31 16:29:50 1997  Joel Sherrill  
1867
 
1868
        * config.bfd (hppa*-*-rtems*): New target, like hppa-*-*elf*.
1869
 
1870
Mon Mar 31 16:11:35 1997  Ian Lance Taylor  
1871
 
1872
        * coff-a29k.c (coff_a29k_relocate_section): Don't use symndx as a
1873
        symbol index for a R_IHCONST reloc.
1874
 
1875
Mon Mar 31 15:40:59 1997  Philippe De Muyter  
1876
 
1877
        * targmatch.sed: Do not use \(\) recursively.
1878
 
1879
Fri Mar 28 14:44:08 1997  H.J. Lu  
1880
 
1881
        * m68klinux.c (MACHTYPE_OK): Define.
1882
        * i386linux.c (MACHTYPE_OK): Define.
1883
 
1884
Fri Mar 28 11:56:15 1997  Ian Lance Taylor  
1885
 
1886
        From David S. Miller  and H.J. Lu
1887
        :
1888
        * sparclinux.c: New file.
1889
        * bfd-in.h (bfd_sparclinux_size_dynamic_sections): Declare.
1890
        * bfd-in2.h: Rebuild.
1891
        * config.bfd (sparc-*-linuxaout*, sparc-*-linux*): New targets.
1892
        * configure.in (sparclinux_vec): Add to list of vectors.
1893
        * configure: Rebuild.
1894
        * targets.c (sparclinux_vec): Declare.
1895
        (bfd_target_vector): Add sparclinux_vec.
1896
        * Makefile.in: Rebuild dependencies.
1897
        (BFD32_BACKENDS): Add sparclinux.o.
1898
        (BFD32_BACKENDS_CFILES): Add sparclinux.c.
1899
 
1900
        * coff-mips.c (mips_ecoff_backend_data): Initialize new
1901
        bfd_coff_backend_data field.
1902
        * coff-alpha.c (alpha_ecoff_backend_data): Likewise.
1903
 
1904
        * config.bfd: Add bfd_elf64_{big,little}mips_vec to targ_selvecs
1905
        for mips*el*-*-linux* and mips*-*-linux*.  From H.J. Lu
1906
         and Ralf Baechle .
1907
 
1908
        * bfd.c: Include "libiberty.h".
1909
        (strerror): Don't declare.
1910
        (bfd_errmsg): Call xstrerror rather than strerror.
1911
 
1912
Thu Mar 27 12:55:42 1997  Ian Lance Taylor  
1913
 
1914
        * elf32-i386.c (elf_i386_adjust_dynamic_symbol): Generate a COPY
1915
        reloc even if the symbol is in the .bss section.
1916
        * elf32-m68k.c (elf_m68k_adjust_dynamic_symbol): Likewise.
1917
        * elf32-ppc.c (ppc_elf_adjust_dynamic_symbol): Likewise.
1918
        * elf32-sparc.c (elf32_sparc_adjust_dynamic_symbol): Likewise.
1919
 
1920
        * coffcode.h (bfd_coff_backend_data): Add new field
1921
        _bfd_coff_default_section_alignment_power.
1922
        (bfd_coff_default_section_alignment_power): Define.
1923
        (bfd_coff_std_swap_table): Initialize new field.
1924
        * libcoff.h: Rebuild.
1925
        * cofflink.c (coff_link_add_symbols): Limit alignment of a common
1926
        symbol to the default section alignment.
1927
 
1928
        * COPYING: Update FSF address.
1929
 
1930
Thu Mar 27 00:45:57 1997  Martin M. Hunt  
1931
 
1932
        * elf32-d30v.c (elf_d30v_howto_table): Fix a typo in the
1933
        21-bit absolute that made it act as a relative.
1934
 
1935
Wed Mar 26 14:50:20 1997  Ian Lance Taylor  
1936
 
1937
        * elflink.c (_bfd_elf_create_linker_section): Don't set
1938
        bss_section and rel_section from existing sections.
1939
 
1940
        * elf32-ppc.c (ppc_elf_check_relocs): Only create the got section
1941
        if it is needed.
1942
 
1943
Tue Mar 25 22:26:56 1997  Stu Grossman  (grossman@critters.cygnus.com)
1944
 
1945
        * aoutx.h (some_aout_object_p):  Change executable test to fix
1946
        problems with embedded a.out systems.
1947
 
1948
Tue Mar 25 14:35:37 1997  Ian Lance Taylor  
1949
 
1950
        * stabs.c (_bfd_stab_section_offset): New function.
1951
        * libbfd-in.h (_bfd_stab_section_offset): Declare.
1952
        * libbfd.h: Rebuild.
1953
        * elf32-i386.c (elf_i386_relocate_section): Adjust the offset of a
1954
        stab reloc.
1955
        * elf32-m68k.c (elf_m68k_relocate_section): Likewise.
1956
        * elf32-mips.c (mips_elf_relocate_section): Likewise.
1957
        * elf32-ppc.c (ppc_elf_relocate_section): Likewise.
1958
        * elf32-sparc.c (elf32_sparc_relocate_section): Likewise.
1959
        * elf64-alpha.c (elf64_alpha_relocate_section): Likewise.
1960
 
1961
        * stabs.c (_bfd_link_section_stabs): Copy over the first header
1962
        symbol.  Check for memory allocation failure of *psinfo.
1963
        (_bfd_write_section_stabs): Add psinfo parameter.  Change all
1964
        callers.  Set the value of the header symbol.
1965
        * libbfd-in.h (_bfd_write_section_stabs): Update declaration.
1966
        * libbfd.h: Rebuild.
1967
 
1968
Mon Mar 24 20:07:29 1997  Fred Fish  
1969
 
1970
        * coff-tic80.c (tic80_howto_table): Add R_ABS entry.
1971
        (rtype2howto): Handle R_ABS reloc type.  Also abort on unhandled
1972
        reloc types, rather than silently failing to generate an output file.
1973
 
1974
Mon Mar 24 13:41:00 1997  Ian Lance Taylor  
1975
 
1976
        * targmatch.sed: Use the hold space to put the #ifdef around the
1977
        the string constant.
1978
        * targets.c (UNSUPPORTED_TARGET): Don't define.
1979
        (find_target): Don't check for UNSUPPORTED_TARGET.
1980
        (bfd_set_default_target): Don't try to optimize by checking for
1981
        default.
1982
 
1983
        * Makefile.in: Rebuild dependencies.
1984
        (ALL_MACHINES_CFILES): Add cpu-m32r.c.
1985
        (BFD32_BACKENDS_CFILES): Add elf32-m32r.c.
1986
        (elf32-m32r.o): Remove explicit target.
1987
 
1988
        * config.bfd: Don't set targ_underscore for i[3456]86-*-gnu* or
1989
        i[3456]86-*-linux*.
1990
 
1991
        * elf32-sparc.c (elf32_sparc_size_dynamic_sections): Don't
1992
        count section symbols for sections that were created by the
1993
        linker, or are not allocatable or not loadable.
1994
        (elf32_sparc_finish_dynamic_sections): Output output section
1995
        symbols for section for which we made space for them.
1996
 
1997
Fri Mar 21 13:08:26 1997  Ian Lance Taylor  
1998
 
1999
        * elf32-sparc.c (elf32_sparc_size_dynamic_sections): If there is
2000
        no .rela.plt section, don't output a DT_PLTGOT dynamic entry.
2001
 
2002
Fri Mar 21 12:36:46 1997  Doug Evans  
2003
 
2004
        * elf32-m32r.c (m32r_elf_howto_table): Use special function for LO16.
2005
        (m32r_hi16_list): New static local.
2006
        (m32r_elf_hi16_reloc): Don't perform reloc, just queue it up.
2007
        (m32r_elf_do_hi16_reloc): Delete.
2008
        (m32r_elf_relocate_hi16): New function.
2009
        (m32r_elf_lo16_reloc): New function.
2010
        (m32r_elf_relocate_section): For HI16 relocs, scan for corresponding
2011
        LO16 reloc.
2012
 
2013
        Mon Mar 10 16:03:31 1997  Doug Evans  
2014
 
2015
        * elf32-m32r.c (m32r_elf_create_linker_section): Delete.
2016
        (m32r_elf_add_symbol_hook): Rewrite _SDA_BASE_ support.
2017
        (m32r_elf_final_sda_base): New function.
2018
        (m32r_elf_relocate_section): Rewrite sdata support.
2019
        (m32r_elf_finish_dynamic_sections): Delete.
2020
 
2021
Thu Mar 20 12:39:02 1997  Ian Lance Taylor  
2022
 
2023
        Based on patches from Philippe De Muyter .
2024
        * coff-svm68k.c: New file.  Just defines some macros and includes
2025
        coff-m68k.c.
2026
        * coff-m68k.c: Add functions to handle common addends, moved in
2027
        from cf-m68klynx.c.  Control them using COFF_COMMON_ADDEND macro.
2028
        Control whether relocs are visible using STATIC_RELOCS.
2029
        * cf-m68klynx.c: Simplify greatly: just define macros to control
2030
        coff-m68k.c.
2031
        * coff-aux.c: Likewise.  Just leave add_one_symbol routine.
2032
        * targets.c (m68ksysvcoff_vec): Declare.
2033
        (bfd_target_vector): Add m68ksysvcoff_vec.
2034
        * config.bfd (m68*-motorola-sysv*): New target.
2035
        * configure.in (m68ksysvcoff_vec): New vector.
2036
        * configure: Rebuild.
2037
        * Makefile.in: Rebuild dependencies.
2038
        (BFD32_BACKENDS): Add coff-svm68k.o.
2039
        (BFD32_BACKENDS_CFILES): Add coff-svm68k.c.
2040
 
2041
        * binary.c (binary_set_section_contents): Don't get misled if the
2042
        first section is not loadable.  From Matthew L. Martin
2043
        .
2044
 
2045
        * elflink.h (elf_bfd_final_link): Set the value of a section
2046
        symbol to the section address unless doing a relocateable link.
2047
 
2048
Tue Mar 18 23:03:17 1997  Richard Henderson  
2049
 
2050
        * elf64-alpha.c (elf64_alpha_adjust_dynamic_symbol): Don't create
2051
        .plt entry if we've taken the function's address.
2052
        (elf64_alpha_merge_gots): Merge collected flags info as well.
2053
 
2054
Tue Mar 18 22:40:09 1997  H.J. Lu  
2055
 
2056
        * Many files: Add function prototypes.
2057
        * cpu-m68k.c (bfd_default_scan_num_mach): Don't declare.
2058
        * ecofflink.c: Include "libcoff.h" and "libecoff.h".
2059
        * elf32-ppc.c (ppc_elf_fake_sections): Make static.
2060
        * opncls.c (bfd_openstreamr): Change stream parameter to PTR.
2061
        * peicode.h: Change several void * parameters to PTR.
2062
        * srec.c (srec_get_symbol_info): Make static.
2063
        * syms.c (bfd_symbol_is_absolute): Remove.
2064
        * Makefile.in: Rebuild dependencies.
2065
 
2066
Tue Mar 18 12:58:08 1997  Ian Lance Taylor  
2067
 
2068
        * elf32-m32r.c (m32r_elf_is_local_label_name): Remove.
2069
        (bfd_elf32_bfd_is_local_label): Don't define.
2070
 
2071
        * xcofflink.c (_bfd_xcoff_bfd_final_link): Call bfd_malloc rather
2072
        than malloc.
2073
 
2074
Mon Mar 17 11:32:53 1997  Ian Lance Taylor  
2075
 
2076
        * bfd-in.h: Don't include obstack.h.
2077
        (struct bfd_hash_table): Change memory field to PTR.
2078
        * bfd.c (struct _bfd): Change memory field to PTR.
2079
        * bfd-in2.h: Rebuild.
2080
        * libbfd-in.h (bfd_release): Declare as function, don't define as
2081
        macro.
2082
        * libbfd.h: Rebuild.
2083
        * opncls.c: Include "objalloc.h" rather than "obstack.h".  Use
2084
        objalloc routines rather than obstack routines.
2085
        (obstack_chunk_alloc, obstack_chunk_free): Don't define.
2086
        (getpagesize): Don't define.
2087
        (_bfd_new_bfd): Don't set _bfd_chunksize.
2088
        (bfd_openr): Free new bfd and objalloc on failure.
2089
        (bfd_fdopenr, bfd_openstreamr, bfd_openw): Likewise.
2090
        (bfd_alloc_size): Remove.
2091
        (bfd_release): New function.
2092
        * hash.c: Include "objalloc.h" rather than "obstack.h".  Use
2093
        objalloc routines rather than obstack routines.
2094
        (obstack_chunk_alloc, obstack_chunk_free): Don't define.
2095
        * ecofflink.c: Include "objalloc.h" rather than "obstack.h".  Use
2096
        objalloc routines rather than obstack routines.
2097
        (obstack_chunk_alloc, obstack_chunk_free): Don't define.
2098
        (struct accumulate): Change memory to struct objalloc *.
2099
        * liboasys.h (oasys_data_type): Remove oasys_obstack field.
2100
        * dep-in.sed: Don't remove obstack.h from dependency list.
2101
        * Makefile.in: Rebuild dependencies.
2102
        (BFD_H_DEPS): Remove obstack.h.
2103
        (install): Don't install obstack.h.
2104
        * Many files: Don't include "obstack.h".
2105
        * VERSION: Bump.
2106
 
2107
        * opncls.c (bfd_alloc_grow, bfd_alloc_finish): Remove.
2108
        * libbfd-in.h (bfd_alloc_grow, bfd_alloc_finish): Don't declare.
2109
        * libbfd.h: Rebuild.
2110
        * ieee.c (ieee_archive_p): Rewrite to not use bfd_alloc_grow.
2111
        * sunos.c (sunos_add_dynamic_symbols): Likewise.
2112
        * srec.c (srec_scan): Rewrite to not use obstack_1grow.
2113
 
2114
        * opncls.c (bfd_alloc): Rename from bfd_alloc_by_size_t.  Remove
2115
        old version of bfd_alloc.
2116
        * libbfd-in.h (bfd_alloc_by_size_t): Don't declare.
2117
        * libbfd.h: Rebuild.
2118
        * Several files: Call bfd_alloc rather than bfd_alloc_by_size_t.
2119
 
2120
Sat Mar 15 15:24:18 1997  Ian Lance Taylor  
2121
 
2122
        * elf32-mips.c (mips_elf_is_local_label_name): Accept the generic
2123
        ELF local label syntax as well.
2124
 
2125
Sat Mar 15 10:16:42 1997  Fred Fish  
2126
 
2127
        * config.bfd (powerpc-*-beos*): New target.
2128
        * configure.in (powerpc-*-beos*): Add case that explicitly
2129
        does not set COREFILE for now.  A future BeOS version is
2130
        expected to support core files.
2131
        * configure: Regenerate with autoconf.
2132
 
2133
Fri Mar 14 16:43:22 1997  Ian Lance Taylor  
2134
 
2135
        * elf32-mips.c (mips_elf_check_relocs): Give an error if CALL16 is
2136
        seen with a local symbol, rather than crashing.
2137
 
2138
        * elfcode.h (elf_slurp_symbol_table): Don't try to read the
2139
        version symbols if there aren't any.
2140
 
2141
Thu Mar 13 16:38:30 1997  Fred Fish  
2142
 
2143
        * coff-tic80.c (coff_rtype_to_howto): Define
2144
        (coff_tic80_rtype_to_howto): Clone generic coff version and
2145
        add code to handle the funky TI "internal relocations".
2146
 
2147
Thu Mar 13 14:08:53 1997  Ian Lance Taylor  
2148
 
2149
        * elflink.h (elf_link_add_object_symbols): Don't warn about type
2150
        or size changes because of a weak symbol.
2151
 
2152
        * cisco-core.c (SIGEMT): Define if not defined.
2153
 
2154
Wed Mar 12 21:36:05 1997  Ian Lance Taylor  
2155
 
2156
        * elflink.h (elf_link_add_object_symbols): Use extsymoff when
2157
        setting ever.  Sanity check the version number.  Sort out copying
2158
        flags and other information when adding an indirect symbol.
2159
        (NAME(bfd_elf,size_dynamic_sections)): Preserve any dynamic
2160
        symbols added by the backend.  Clear the entire contents of the
2161
        versym section.
2162
        (elf_export_symbol): Ignore indirect symbols.
2163
        (elf_link_output_extsym): Accept a section without an owner in an
2164
        assert.
2165
        * elfcode.h (elf_slurp_symbol_table): Add a sanity check on the
2166
        version count.  Correct the allocation of x_versymp.
2167
 
2168
        * elf32-mips.c (mips_elf_add_symbol_hook): Don't set the owner of
2169
        the magic sections used for SHN_MIPS_TEXT and SHN_MIPS_DATA.
2170
        Don't return bfd_und_section_ptr when info->shared.
2171
        (mips_elf_final_link): Set the alignment of .rtproc to 4, not 12.
2172
        (mips_elf_create_dynamic_sections): Correct type: ^= for &=.
2173
        (mips_elf_check_relocs): Resolve an indirect symbol in
2174
        sym_hashes.
2175
        (mips_elf_finish_dynamic_symbol): Don't change SHN_ABS into
2176
        SHN_MIPS_TEXT or SHN_MIPS_DATA.
2177
 
2178
        * elf.c (bfd_elf_print_symbol): Tweak version output slightly.
2179
 
2180
Tue Mar 11 01:38:36 1997  Ian Lance Taylor  
2181
 
2182
        From Eric Youngdale :
2183
        * elf-bfd.h (ELF_LINK_FORCED_LOCAL): Define.
2184
        * elf.c (bfd_elf_print_symbol): Correct errors in last change.
2185
        * elflink.h (elf_link_add_object_symbols): Handle cases in which a
2186
        versioned symbol appears in both a regular and a shared object.
2187
        (elf_link_assign_sym_version): Set ELF_LINK_FORCED_LOCAL when
2188
        appropriate.  Improve error message.
2189
        (struct elf_outext_info): Rename from elf_finfo_failed.  Change
2190
        all uses.  Add localsyms field.
2191
        (elf_bfd_final_link): When generating a shared library, call
2192
        elf_link_output_extsym to output all local symbols.
2193
        (elf_link_output_extsym): Handle symbols which were forced to
2194
        become local.
2195
 
2196
Sun Mar  9 23:08:49 1997  Ian Lance Taylor  
2197
 
2198
        From Eric Youngdale :
2199
        * elf-bfd.h (elf_symbol_type): Add version field.
2200
        * elfcode.h (elf_slurp_symbol_table): Set version field.
2201
        * elflink.h (elf_link_add_object_symbols): When creating an
2202
        indirect symbol for a default version symbol, set DEF_DYNAMIC if
2203
        appropriate.  Set up an indirection from the nondefault version of
2204
        the symbol as well.
2205
        (NAME(bfd_elf,size_dynamic_sections)): Call
2206
        elf_link_assign_sym_version before checking whether there are any
2207
        versions.  Always record the version name as a dynamic symbol.
2208
        Initialize counters.
2209
        (elf_link_assign_sym_version): After finding a version, see if a
2210
        symbol should be forced to local scope.  Create a new version
2211
        definition if appropriate.
2212
        (elf_link_output_extsym): Correct indirect symbol handling.
2213
        * elf.c (bfd_elf_print_symbol): Print version information.
2214
        (bfd_section_from_shdr): Turn version sections into BFD sections.
2215
        (elf_fake_sections): Only copy cverdefs and cverrefs into sh_info
2216
        if sh_info is not already set.
2217
        (_bfd_elf_copy_private_section_data): Copy sh_info for version
2218
        sections.
2219
        * elflink.c (_bfd_elf_link_record_dynamic_symbol): Tell
2220
        _bfd_stringtab_add to copy the name into permanent memory if
2221
        appropriate.
2222
 
2223
Fri Mar  7 11:55:31 1997  H.J. Lu  
2224
 
2225
        * elf64-alpha.c (alpha_elf_dynamic_symbol_p): Fully parenthesize.
2226
 
2227
Fri Mar  7 10:37:30 1997  Ian Lance Taylor  
2228
 
2229
        * coffcode.h (bfd_coff_backend_data): Change
2230
        _bfd_coff_compute_section_file_positions to return a boolean
2231
        value.  Change all callers.
2232
        (coff_compute_section_file_positions): Change return type to
2233
        boolean.  If the size of the last section changed, then output a
2234
        zero byte at the end of the file.
2235
        * libcoff.h: Rebuild.
2236
 
2237
        * xcofflink.c (_bfd_xcoff_bfd_final_link): Always allocate space
2238
        for at least 6 output symbols.
2239
        (xcoff_write_global_symbol): When emitting TOC entry relocs, also
2240
        emit a TC csect to represent the space they take up.  For an XO
2241
        symbol, just emit a reference, not a csect.
2242
 
2243
        * Makefile.in ($(SHLINK)): Just use ln -s, not ln -sf, since
2244
        Solaris doesn't like the combined options, and the -f is
2245
        unnecessary.
2246
        (stamp-tshlink, install): Likewise.
2247
 
2248
        * elf32-mips.c (mips_elf_relocate_section): Correct R_MIPS16_26
2249
        handling when little endian.
2250
 
2251
Thu Mar  6 13:51:51 1997  Jeffrey A Law  (law@cygnus.com)
2252
 
2253
        * elf32-mn10300.c (mn10300_elf_final_link_relocate): New function.
2254
        (mn10300_elf_relocate_section): Likewise.
2255
        (elf_backend_relocate_section): Define.
2256
 
2257
        * elf32-mn10300.c (reloc_type): Remove PCREL{8,16,32}_{1,2}BYTE
2258
        relocs.  Replace them with generic PCREL_{8,16,32} relocs.
2259
        (elf32_mn10300_howto_table): Likewise.
2260
        (elf32_mn10300_reloc_map): Likewise.
2261
        (bfd_elf32_mn10300_reloc): Delete unused function.
2262
 
2263
Thu Mar  6 12:19:59 1997  Fred Fish  
2264
 
2265
        * coff-tic80.c (rtype2howto): If passed a relocation type we don't
2266
        understand, just set the howto field to NULL, and the caller will
2267
        print an appropriate error message.
2268
        * coffcode.h (coff_slurp_reloc_table): Pull duplicate declarations and
2269
        code fragment out of both legs of #ifdef RELOC_PROCESSING ... #endif
2270
        block.  Use NULL for initializations of "ptr" rather than bare 0.
2271
        * coff-h8300.c: Fix typo in comment.
2272
        * coff-h8500.c: Ditto.
2273
        * coff-w65.c: Ditto
2274
        * coff-z8k.c: Ditto.
2275
 
2276
Wed Mar  5 13:59:09 1997  Doug Evans  
2277
 
2278
        * elf32-m32r.c (m32r_elf_do_10_pcrel_reloc): Fix overflow calc.
2279
        (m32r_elf_relax_section, m32r_elf_relax_delete_bytes,
2280
        m32r_elf_get_relocated_section_contents): First pass at relax support.
2281
 
2282
Mon Mar  3 13:27:09 1997  Ulrich Drepper  
2283
 
2284
        * elflink.h (elf_link_add_object_symbols): Use correct sh_size
2285
        entry for reading verdef records.
2286
        Use correct braces for computing increments of extverdaux and
2287
        exteverdef record pointers.
2288
 
2289
Sun Mar  2 22:47:54 1997  Fred Fish  
2290
 
2291
        * coff-tic80.c (COFF_DEFAULT_SECTION_ALIGNMENT_POWER): Set this to 2
2292
        instead of 4.
2293
 
2294
Sun Mar  2 16:25:35 1997  Ian Lance Taylor  
2295
 
2296
        * elflink.h (elf_link_find_version_dependencies): Check that
2297
        DEF_REGULAR is not set as well as checking that DEF_DYNAMIC is
2298
        set.
2299
 
2300
Fri Feb 28 16:52:40 1997  Fred Fish  
2301
 
2302
        * coffcode.h (coff_set_flags): Add case for TIC80_ARCH_MAGIC.
2303
 
2304
Fri Feb 28 15:06:45 1997  Ian Lance Taylor  
2305
 
2306
        * targets.c (bfd_default_vector): Make non-const.
2307
        (find_target): New static function, broken out of
2308
        bfd_find_target.
2309
        (bfd_set_default_target): New function.
2310
        (bfd_find_target): Call find_target.  When defaulting, use
2311
        bfd_default_vector[0] if it is not NULL.
2312
        * libbfd-in.h (bfd_default_vector): Adjust declaration.
2313
        * bfd-in2.h, libbfd.h: Rebuild.
2314
 
2315
        * syms.c (bfd_is_local_label): Return false if the symbol has no
2316
        name.
2317
        * coff-i960.c (coff_i960_is_local_label_name): New function.
2318
        (coff_bfd_is_local_label_name): Define.
2319
        * coff-m68k.c (m68k_coff_is_local_label_name): New function.
2320
        (coff_bfd_is_local_label_name): Define.
2321
        * coff-rs6000.c (xcoff_is_local_label_name): New function.
2322
        (coff_bfd_is_local_label_name): Define.
2323
        * elf.c (_bfd_elf_is_local_label_name): Treat symbols beginning
2324
        with .. or _.L_ as local.
2325
        * elf32-i386.c (elf_i386_is_local_label_name): New function.
2326
        (bfd_elf32_bfd_is_local_label_name): Define.
2327
        * evax-alpha.c (evax_bfd_is_local_label_name): Treat symbols
2328
        beginning with $ as local.
2329
 
2330
Thu Feb 27 18:36:23 1997  Ian Lance Taylor  
2331
 
2332
        * aoutx.h (aout_link_write_symbols): Use bfd_is_local_label_name
2333
        rather than comparing against info->lprefix.
2334
        * cofflink.c (_bfd_coff_link_input_bfd): Likewise.
2335
        * elflink.h (elf_link_input_bfd): Likewise.
2336
        * linker.c (_bfd_generic_link_output_symbols): Likewise.
2337
        * xcofflink.c (xcoff_link_input_bfd): Likewise.
2338
 
2339
        * elfxx-target.h (bfd_elfNN_bfd_is_local_label_name): Define as
2340
        _bfd_elf_is_local_label_name if not already defined.
2341
        * elf.c (_bfd_elf_is_local_label_name): New function.
2342
        * elf-bfd.h (_bfd_elf_is_local_label_name): Declare.
2343
 
2344
        * coff-m88k.c (coff_bfd_is_local_label_name): Define.
2345
        (m88k_is_local_label_name): New static function.
2346
 
2347
        * coffcode.h (coff_bfd_is_local_label_name): Define as
2348
        _bfd_coff_is_local_label_name if not already defined.
2349
        * coffgen.c (_bfd_coff_is_local_label_name): New function.
2350
        * libcoff-in.h (_bfd_coff_is_local_label_name): Declare.
2351
        * libcoff.h: Rebuild.
2352
 
2353
        * targets.c (BFD_JUMP_TABLE_SYMBOLS): Change _bfd_is_local_label
2354
        to _bfd_is_local_label_name.
2355
        (bfd_target): Likewise.
2356
        * syms.c (bfd_is_local_label): Define as function, not macro.
2357
        (bfd_is_local_name): Define.
2358
        * libbfd.c (bfd_generic_is_local_label_name): Rename from
2359
        bfd_generic_is_local_label, and take a string rather than a
2360
        symbol.
2361
        * libbfd-in.h (_bfd_nosymbols_bfd_is_local_label): Don't define.
2362
        (_bfd_nosymbols_bfd_is_local_label_name): Define.
2363
        (bfd_generic_is_local_label): Don't declare.
2364
        (bfd_generic_is_local_label_name): Declare.
2365
        * bfd-in2.h, libbfd.h: Rebuild.
2366
        * All backends: Change local_label to local_label_name.
2367
 
2368
        * elf32-mips.c (struct mips_got_info): Add assigned_gotno field.
2369
        (mips_elf_relocate_got_local): Change return type to boolean.
2370
        Don't assume that the first zero entry is unassigned; instead, use
2371
        assigned_gotno.
2372
        (mips_elf_relocate_section): Check return value of
2373
        mips_elf_relocate_got_local.
2374
        (mips_elf_create_got_section): Initialize assigned_gotno field.
2375
 
2376
Wed Feb 26 15:19:51 1997  Martin M. Hunt  
2377
 
2378
        * elf32-d30v.c (bfd_elf_d30v_reloc): Add code to do 32-bit
2379
        relocations.
2380
 
2381
Wed Feb 26 13:33:03 1997  Ian Lance Taylor  
2382
 
2383
        * elflink.h (elf_link_input_bfd): Don't skip symbols from sections
2384
        that have no contents merely because linker_mark is not set.
2385
 
2386
Tue Feb 25 18:51:35 1997  Stan Shebs  
2387
 
2388
        * config.bfd (mips*-*-lnews*): New target.
2389
        * coff-mips.c (mips_relocate_section): Make assert compare
2390
        content byteorder instead of header byteorder.
2391
        (ecoff_biglittle_vec): New BFD, big-endian headers, little-endian
2392
        data.
2393
        * targets.c (bfd_target_vector): Add ecoff_biglittle_vec.
2394
        * configure.in (ecoff_biglittle_vec): Add case.
2395
        * configure: Update.
2396
 
2397
Tue Feb 25 00:32:49 1997  Ian Lance Taylor  
2398
 
2399
        * elf.c (elf_fake_sections): Use SHT_NOTE for any section whose
2400
        name begins with ".note".
2401
        (map_sections_to_segments): Add a PT_NOTE segment for any loadable
2402
        section whose name begins with ".note".
2403
        (get_program_header_size): Corresponding change.
2404
 
2405
        * elf32-mips.c (mips_elf_relocate_section): Check for misaligned
2406
        jal and for jal overflow.
2407
 
2408
Mon Feb 24 17:53:14 1997  Ian Lance Taylor  
2409
 
2410
        From Eric Youngdale :
2411
        * elflink.h (elf_link_add_archive_symbols): If a default symbol is
2412
        not found, try looking it up again without the version name.
2413
        (elf_link_add_object_symbols): Always link against the dynamic
2414
        symbol table of a dynamic object.  When linking against a dynamic
2415
        object, include version strings in symbol names, and set up
2416
        version information.  Add indirect symbols for default versions.
2417
        (elf_link_create_dynamic_sections): Add special version sections.
2418
        (struct elf_assign_sym_version_info): Define.
2419
        (struct elf_find_verdep_info): Define.
2420
        (NAME(bfd_elf,size_dynamic_sections)): Add verdefs parameter.  Set
2421
        up version sections.
2422
        (elf_adjust_dynamic_symbol): Ignore indirect symbols.
2423
        (elf_link_find_version_dependencies): New static function.
2424
        (elf_link_assign_sym_version): New static function.
2425
        (elf_link_renumber_dynsyms): New static function.
2426
        (struct elf_final_link_info): Add symver_sec field.
2427
        (elf_bfd_final_link): Initialize finfo.symver_sec.  Don't count
2428
        local symbols of a dynamic object.  Handle DT_VER* constants.
2429
        (elf_link_output_extsym): Simplify BFD_ASSERT checking for a
2430
        dynamic object.  Skip indirect symbols from ELF objects.  Remove
2431
        the version name before choosing a hash bucket.  Write out the
2432
        version information if appropriate.
2433
        (elf_link_input_bfd): Check for DYNAMIC, not ET_DYN.
2434
        * bfd-in.h (bfd_elf32_size_dynamic_sections): Update declaration.
2435
        (bfd_elf64_size_dynamic_sections): Likewise.
2436
        * bfd-in2.h: Rebuild.
2437
        * elf-bfd.h (struct elf_link_hash_entry): Add verinfo field.
2438
        Change elf_link_hash_flags to unsigned short.
2439
        (ELF_LINK_HIDDEN): Define.
2440
        (struct elf_obj_tdata): Add fields dynversym_hdr, dynverref_hdr,
2441
        dynverdef_hdr, dynversym_section, dynverdef_section,
2442
        dynverref_section, cverdefs, cverrefs, verdef, verref.
2443
        (elf_dynversym, elf_dynverdef, elf_dynverref): Define.
2444
        (_bfd_elf_swap_verdef_in, _bfd_elf_swap_verdef_out): Declare.
2445
        (_bfd_elf_swap_verdaux_in, _bfd_elf_swap_verdaux_out): Declare.
2446
        (_bfd_elf_swap_verneed_in, _bfd_elf_swap_verneed_out): Declare.
2447
        (_bfd_elf_swap_vernaux_in, _bfd_elf_swap_vernaux_out): Declare.
2448
        (_bfd_elf_swap_versym_in, _bfd_elf_swap_versym_out): Declare.
2449
        (_bfd_elf_slurp_version_tables): Declare.
2450
        * elf.c (_bfd_elf_swap_verdef_in): New function.
2451
        (_bfd_elf_swap_verdef_out): Likewise.
2452
        (_bfd_elf_swap_verdaux_in, _bfd_elf_swap_verdaux_out): Likewise.
2453
        (_bfd_elf_swap_verneed_in, _bfd_elf_swap_verneed_out): Likewise.
2454
        (_bfd_elf_swap_vernaux_in, _bfd_elf_swap_vernaux_out): Likewise.
2455
        (_bfd_elf_swap_versym_in, _bfd_elf_swap_versym_out): Likewise.
2456
        (_bfd_elf_print_private_bfd_data): Add DT_VER* constants.  Print
2457
        version information if there is any.
2458
        (_bfd_elf_link_hash_newfunc): Initialize verinfo field.
2459
        (bfd_section_from_shdr): Handle SHT_GNU_ver* section types.
2460
        (elf_fake_sections): Handle .gnu.version* section names.
2461
        (assign_section_numbers): Handle SHT_GNU_ver* section types.
2462
        (_bfd_elf_slurp_version_tables): New function.
2463
        * elflink.c (_bfd_elf_link_record_dynamic_symbol): Don't include
2464
        version name in string entered in dynamic hash table.
2465
        * elfcode.h: Include fnmatch.h.
2466
        * elf32-i386.c (elf_i386_relocate_section): Handle a dynamic
2467
        symbol which was forced to become local.
2468
        * elf32-m68k.c (elf_m68k_relocate_section): Likewise.
2469
        * elf32-ppc.c (ppc_elf_relocate_section): Likewise.
2470
        * elf32-sparc.c (elf32_sparc_relocate_section): Likewise.
2471
        * elf64-alpha.c (alpha_elf_dynamic_symbol_p): Likewise.
2472
 
2473
Fri Feb 21 16:15:18 1997  Jeffrey A Law  (law@cygnus.com)
2474
 
2475
        * elf32-mn10200.c (mn10200_elf_final_link_relocate): Simplify
2476
        somewhat.
2477
        (mn10200_elf_relax_section): Correctly compute a symbol's value
2478
        when the symbol is local, but not in the same section as we are
2479
        relaxing.  Implement abs24 -> abs16, imm24 -> imm16 and d24 -> d16
2480
        relaxing.
2481
 
2482
Fri Feb 21 13:55:14 1997  Doug Evans  
2483
 
2484
        * elf32-m32r.c: Rewrite to use ELF backend linker.
2485
        Store lower 16 bits of addend in R_M32R_HI16_[SU]LO insns.
2486
        Add small data area support (R_M32R_SDA16).
2487
        * reloc.c: Document BFD_RELOC_M32R_SDA16.
2488
        * bfd-in2.h, libbfd.h: Regenerated.
2489
 
2490
Thu Feb 20 23:50:31 1997  Jeffrey A Law  (law@cygnus.com)
2491
 
2492
        * elf32-mn10200.c (mn10200_elf_relax_section): New function.
2493
        (mn10200_elf_relax_delete_bytes): Likewise.
2494
        (mn10200_elf_symbol_address_p): Likewise.
2495
        (mn10200_elf_get_relocated_section_contents): Likewise.
2496
        (bfd_elf32_bfd_relax_section): Define.
2497
        (bfd_elf32_bfd_get_relocated_section_contents): Likewise.
2498
 
2499
        * elf32-mn10200.c (mn10200_elf_final_link_relocate): New function.
2500
        (mn10200_elf_relocate_section): Likewise.
2501
        (elf_backend_relocate_section): Define.
2502
 
2503
Tue Feb 18 17:22:59 1997  Martin M. Hunt  
2504
 
2505
        * Makefile.in: New target, elf-*-D30V.
2506
        * archures.c: New target, elf-*-D30V.
2507
        * config.bfd: New target, elf-*-D30V.
2508
        * configure.in: New target, elf-*-D30V.
2509
        * elf.c: New target, elf-*-D30V.
2510
        * reloc.c: New target, elf-*-D30V.
2511
        * targets.c: New target, elf-*-D30V.
2512
        * bfd-in2.h: Rebuilt.
2513
        * configure: Rebuilt.
2514
        * libbfd.h: Rebuilt.
2515
        * cpu-d30v.c: New files.
2516
        * elf32-d30v.c: New files.
2517
 
2518
Tue Feb 18 15:31:48 1997  Fred Fish  
2519
 
2520
        * reloc.c (struct reloc_howto_struct): Fix typo in comment.
2521
        * bfd-in2.h: Regenerated.
2522
        * coff-tic80.c (RTYPE2HOWTO): Replace abort with real function.
2523
        (rtype2howto): Add function.
2524
        (tic80_howto_table): Add.
2525
 
2526
Tue Feb 18 11:41:00 1997  Dawn Perchik  
2527
 
2528
        * sysdep.h: Don't define errno in MSVC if error.h is included.
2529
 
2530
Tue Feb 18 10:04:13 1997  Jeffrey A Law  (law@cygnus.com)
2531
 
2532
        * elf32-v850.c (v850_elf_relocate_section): Make sure r_symndx
2533
        is initialized before it is used.
2534
 
2535
Mon Feb 17 11:28:40 1997  Ian Lance Taylor  
2536
 
2537
        * hp300hpux.c (convert_sym_type): Don't convert a secondary common
2538
        symbol into a weak undefined symbol; leave it as a common symbol.
2539
 
2540
Fri Feb 14 19:08:03 1997  Ian Lance Taylor  
2541
 
2542
        * elflink.h (elf_link_add_object_symbols): Don't issue a warning
2543
        about a symbol defined in a dynamic object if it has already been
2544
        defined in a regular object.
2545
 
2546
Thu Feb 13 20:53:22 1997  Klaus Kaempf  (kkaempf@progis.de)
2547
 
2548
        * makefile.vms: Add gcc flags to allow compiling with current gcc
2549
        snapshot
2550
        (targmatch.h): New dependency.
2551
 
2552
        * reloc.c (BFD_RELOC_ALPHA_CODEADDR): New relocation for
2553
        openVMS/Alpha.
2554
        * evax.h (ALPHA_R_CODEADDR): New relocation.
2555
        * evax-alpha.c (ALPHA_R_CODEADDR): 64 bit procedure relocation for
2556
        openVMS/Alpha.
2557
        * evax-etir.c (ALPHA_R_CODEADDR): Output object code for this
2558
        relocation.
2559
        * bfd-in2.h, libbfd.h: Rebuild.
2560
 
2561
        Restrict symbol length to 64 bytes, case preserving:
2562
        * evax-emh.c (_bfd_evax_write_emh): Remove case hacking.
2563
        * evax-misc.c (_bfd_evax_case_hack_symbol): Remove.
2564
        (_bfd_evax_length_hash_symbol): Added.
2565
        * evax-etir.c (_bfd_evax_write_etir): Call
2566
        _bfd_evax_length_hash_symbol before output of symbol.
2567
        * evax-egsd.c (_bfd_evax_write_egsd): Likewise.
2568
        * evax.h (flag_hash_long_names, flag_show_after_trunc): Remove.
2569
 
2570
        * evax-emh.c: Output filename to object file without path.
2571
 
2572
        * evax-egsd.c: New sections for local and global commons.
2573
 
2574
        * evax-alpha.c, evax-emh.c, evax-egsd.c, evax-etir.c,
2575
        evax-misc.c, evax.h: Remove 8 bit characters from copyright
2576
        notices.  Replace AXP with Alpha.
2577
 
2578
Wed Feb 12 18:10:30 1997  Ian Lance Taylor  
2579
 
2580
        * sunos.c (sunos_create_dynamic_sections): We need the dynamic
2581
        sections if we are creating a shared library.
2582
 
2583
Tue Feb 11 15:45:43 1997  Doug Evans  
2584
 
2585
        * configure.host (i386-windows): Don't set host64=true.
2586
 
2587
Tue Feb 11 15:27:32 1997  Ian Lance Taylor  
2588
 
2589
        * elf32-mips.c (reloc_type): Add R_MIPS16_GPREL.
2590
        (elf_mips16_gprel_howto): New static variable.
2591
        (mips16_gprel_reloc): New static function.
2592
        (bfd_elf32_bfd_reloc_type_lookup): Handle BFD_RELOC_MIPS16_GPREL.
2593
        (mips_info_to_howto_rel): Handle R_MIPS16_GPREL.
2594
        (mips_elf_relocate_section): Handle R_MIPS16_GPREL.
2595
        * reloc.c (BFD_RELOC_MIPS16_GPREL): Define.
2596
        * bfd-in2.h, libbfd.h: Rebuild.
2597
 
2598
Mon Feb 10 23:25:00 1997  Doug Evans  
2599
 
2600
        * elf32-m32r.c (elf_m32r_howto_table): Change partial_inplace to true
2601
        for R_M32R_{16,32,24,HI16_ULO,HI16_SLO,LO16}.
2602
 
2603
Fri Feb  7 12:39:11 1997  Ian Lance Taylor  
2604
 
2605
        * elflink.h (elf_link_input_bfd): If we've discarded a section,
2606
        the output section will be the absolute section; don't print an
2607
        assertion message for that case when doing a relocateable link.
2608
 
2609
Thu Feb  6 16:55:43 1997  Ian Lance Taylor  
2610
 
2611
        * elf32-mips.c (FN_STUB, CALL_STUB, CALL_FP_STUB): Define.
2612
        (struct mips_elf_link_hash_entry): Add new fields fn_stub,
2613
        need_fn_sub, call_stub, and call_fp_stub.
2614
        (struct mips_elf_link_hash_table): Add field mips16_stubs_seen.
2615
        (mips_elf_link_hash_newfunc): Initialize new fields.
2616
        (mips_elf_link_hash_table_create): Likewise.
2617
        (mips_elf_relocate_section): Redirect relocations to use mips16
2618
        stubs when appropriate.
2619
        (mips_elf_check_relocs): Attach stub sections to the appropriate
2620
        symbol.  Set need_fn_stub when appropriate.
2621
        (mips_elf_always_size_sections): New static function.
2622
        (mips_elf_check_mips16_stubs): New static function.
2623
        (elf_backend_always_size_sections): Define.
2624
        * elf-bfd.h (struct elf_obj_tdata): Add local_stubs field.
2625
 
2626
        * elflink.h (elf_link_input_bfd): Discard local symbols that are
2627
        attached to sections which are not being included in the link.
2628
 
2629
Wed Feb  5 13:20:17 1997  Ian Lance Taylor  
2630
 
2631
        * cofflink.c (_bfd_coff_generic_relocate_section): Ignore the
2632
        symbol value when computing the addend for a pc_relative
2633
        pcrel_offset reloc.
2634
 
2635
Mon Feb  3 11:54:06 1997  Ian Lance Taylor  
2636
 
2637
        * cofflink.c (_bfd_coff_generic_relocate_section): If doing a
2638
        relocateable link, just skip pc_relative pcrel_offset relocs.
2639
        * coff-arm.c (coff_arm_rtype_to_howto): Return a different howto
2640
        structure for an ARM26 reloc which can be resolved.
2641
        (coff_arm_adjust_symndx): Only convert ARM26 to ARM26D if the
2642
        reloc can be resolved.
2643
 
2644
        * coff-h8300.c (h8300_reloc16_extra_cases): Correct off by one
2645
        error in overflow check for R_RELBYTE.
2646
 
2647
Fri Jan 31 14:07:27 1997  Ian Lance Taylor  
2648
 
2649
        * ieee.c (ieee_slurp_section_data): Pick up the start address.
2650
        From Mark Rasin .
2651
 
2652
        * aoutx.h (aout_link_write_symbols): Don't apply discard_l to
2653
        debugging symbols.
2654
 
2655
Wed Jan 29 00:00:49 1997  Jeffrey A Law  (law@cygnus.com)
2656
 
2657
        * elf32-mn10200.c (reloc_type): Add 16bit pc-relative reloc.
2658
        (elf_mn10200_howto_table): Likewise.
2659
        (mn10200_reloc_map): Likewise.
2660
 
2661
Mon Jan 27 12:07:35 1997  Doug Evans  
2662
 
2663
        * reloc.c: Add relocs BFD_RELOC_M32R_{HI16_[US]LO,LO16}.
2664
        * bfd-in2.h, libbfd.h: Regenerated.
2665
        * elf32-m32r.c: Add support for them.
2666
 
2667
Mon Jan 27 12:25:02 1997  Ian Lance Taylor  
2668
 
2669
        * aout-arm.c (MY_swap_std_reloc_in): Remove unused r_length.
2670
        * elf32-ppc.c (ppc_elf_check_relocs): Remove unused plt.
2671
        * elf32-v850.c (v850_elf_final_link_relocate): Remove used
2672
        r_format and r_pcrel.  Always return a value.
2673
        * riscix.c (MY_final_link_callback): Define to dummy value.
2674
 
2675
        * elf32-i386.c (elf_i386_size_dynamic_sections): When checking for
2676
        relocations against the text segment, look up the output name of
2677
        the reloc section.
2678
        * elf32-m68k.c (elf_m68k_size_dynamic_sections): Likewise.
2679
        * elf32-mips.c (mips_elf_size_dynamic_sections): Likewise.
2680
        * elf32-ppc.c (ppc_elf_size_dynamic_sections): Likewise.
2681
        * elf32-sparc.c (elf32_sparc_size_dynamic_sections): Likewise.
2682
        * elf64-alpha.c (elf64_alpha_size_dynamic_sections): Likewise.
2683
 
2684
Wed Jan 22 15:40:28 1997  Fred Fish  
2685
 
2686
        * coff-tic80.c (tic80coff_vec): Use correct data put/get
2687
        routines for little endian data.
2688
        * coffcode.h (coff_write_object_contents): Set magic to
2689
        TIC80_ARCH_MAGIC for TIc80.
2690
 
2691
Tue Jan 21 12:32:43 1997  Fred Fish  
2692
 
2693
        * coff-tic80.c (tic80coff_vec): Change to little endian data
2694
        as the default.
2695
 
2696
Thu Jan 16 17:45:57 1997  Ian Lance Taylor  
2697
 
2698
        * elflink.h (NAME(bfd_elf,size_dynamic_sections)): Change type of
2699
        auxiliary_filters parameter to be const char * const *.  Accept a
2700
        NULL terminated array.
2701
        * bfd-in.h (bfd_elf32_size_dynamic_sections): Update declaration.
2702
        (bfd_elf32_size_dynamic_sections): Update declaration.
2703
        * bfd-in2.h: Rebuild.
2704
 
2705
Wed Jan 15 11:21:32 1997  Ian Lance Taylor  
2706
 
2707
        * elf32-sparc.c (elf32_sparc_adjust_dynamic_symbol): Treat a
2708
        NOTYPE symbol in a text section as a FUNC symbol.
2709
 
2710
        * coffcode.h (coff_compute_section_file_positions): Force
2711
        relocbase to be aligned to COFF_DEFAULT_SECTION_ALIGNMENT_POWER.
2712
 
2713
Tue Jan 14 08:46:33 1997  Doug Evans  
2714
 
2715
        * libaout.h (machine_type): Reserve several values for sparclet.
2716
 
2717
Mon Jan 13 22:39:08 1997  Michael Meissner  
2718
 
2719
        * config.bfd (tic80-*-*): Don't require 'coff'.
2720
 
2721
Mon Jan 13 19:36:25 1997  Michael Meissner  
2722
 
2723
        * elf32-v850.c (v850_elf_howto_table): Set the special_function
2724
        table to v850_elf_reloc for all non-standard relocations.
2725
        (v850_elf_check_relocs): Add check for h being non-null.
2726
        (v850_elf_reloc): Add  R_V850_ZDA_OFFSET support.  Use switch
2727
        statement instead of multiple ifs.
2728
        (v850_elf_relocate_section): Fix up error message, don't just call
2729
        abort.
2730
 
2731
Mon Jan  6 13:28:35 1997  Jeffrey A Law  (law@cygnus.com)
2732
 
2733
        * elf32-mn10200.c (elf_mn10200_howto): Don't ever set partial-inplace.
2734
        Use bfd_elf_generic_reloc as special function for all relocs.
2735
        (bfd_elf32_mn10200_reloc): Remove unnecessary function.
2736
 
2737
        * elf32-mn10200.c (elf_mn10200_howto): Set pcrel_offset for
2738
        24bit pc-relative reloc.
2739
 
2740
Fri Jan  3 16:33:00 1997  Fred Fish  
2741
 
2742
        * Makefile.in (coff-tic80.o): Add coffcode.h to dependency list.
2743
        * coff-tic80.c (tic80coff_vec): Data byte order is big endian and
2744
        header byte order is little endian.  Use correct bfd_get and
2745
        bfd_put routines for little endian headers.
2746
        * coffcode.h (coff_set_arch_mach_hook): Set arch to
2747
        bfd_arch_tic80 for TIC80_ARCH_MAGIC number.
2748
 
2749
Fri Jan  3 16:54:08 1997  Jeffrey A Law  (law@cygnus.com)
2750
 
2751
        * reloc.c: Add BFD_RELOC_24.
2752
        * elf32-mn10200.c (enum reloc_type): Add 24bit and pcrel relocs.
2753
        (elf_mn10200_howto, mn10200_reloc_map): Corresponding changes.
2754
        * bfd-in2.h, libbfd.h: Rebuilt.
2755
 
2756
Fri Jan  3 16:58:31 1997  Richard Henderson  
2757
 
2758
        elf64-alpha multiple .got rewrite:
2759
 
2760
        * elf-bfd.h (struct elf_backend_data): Add always_size_sections entry.
2761
        (bfd_elf*_mkobject): Don't define here ...
2762
        * elfxx-target.h: ... but rather here.  Default always_size_sections
2763
        hook to NULL.
2764
        * elf.c (elf_mkobject): Rename to bfd_elf_mkobject, since that was
2765
        what the #defines in elf-bfd.h transmuted it to anyway.
2766
 
2767
        * section.c: Add SEC_LINKER_CREATED flag.
2768
        * bfd-in2.h: Rebuild.
2769
        * elf32-i386.c (elf_i386_check_relocs): Add SEC_LINKER_CREATED to
2770
        relocation section flags.
2771
        (elf_i386_size_dynamic_sections): Use SEC_LINKER_CREATED instead of
2772
        SEC_IN_MEMORY to recognize generated bits.
2773
        * elf32-m68k.c (elf_m68k_check_relocs, elf_m68k_size_dynamic_sections):
2774
        Likewise.
2775
        * elf32-mips.c (mips_elf_final_link, mips_elf_create_dynamic_sections,
2776
        mips_elf_create_compact_rel_section, mips_elf_create_got_section,
2777
        mips_elf_check_relocs, mips_elf_size_dynamic_sections): Likewise.
2778
        * elf32-ppc.c (ppc_elf_create_linker_section,
2779
        ppc_elf_size_dynamic_sections): Likewise.
2780
        * elf32-sparc.c (elf32_sparc_check_relocs,
2781
        elf32_sparc_size_dynamic_sections): Likewise.
2782
        * elflink.c (_bfd_elf_create_got_section): Add SEC_LINKER_CREATED to
2783
        section flags.
2784
        (_bfd_elf_create_dynamic_sections): Likewise.
2785
        (_bfd_elf_make_linker_section_rela): Likewise.
2786
        * elflink.h (elf_link_create_dynamic_sections): Likewise.
2787
        (bfd_elf,size_dynamic_sections): Call the always_size_sections hook.
2788
        (elf_bfd_final_link): Use SEC_LINKER_CREATED instead of SEC_IN_MEMORY
2789
        to identify generated bits.
2790
        (elf_link_input_bfd): Likewise.
2791
 
2792
        * elf64-alpha.c: Rewrite everything touching relocations.
2793
 
2794
Fri Jan  3 11:42:53 1997  Michael Meissner  
2795
 
2796
        * elf32-v850.c (all functions and static variables): Go through
2797
        and regularize names to be of the form v850_elf_.
2798
        (toplevel): Include .
2799
        (enum reloc_type): Move to include/elf/v850.h.
2800
        (v850_elf_check_relocs): For common variables, if the variable is
2801
        referenced by a R_V850_{SDA,ZDA,TDA} relocation, put the variable
2802
        into the appropriate section.
2803
        (elf_backend_check_relocs): Define.
2804
 
2805
Tue Dec 31 15:15:28 1996  Michael Meissner  
2806
 
2807
        * elf32-v850.c (elf_v850_howto_table): Fix some spacing.
2808
 
2809
Tue Dec 31 14:44:50 1996  Ian Lance Taylor  
2810
 
2811
        * config.bfd (mips*el-*-linux*): New target.
2812
        (mips*-*-linux*): New target.
2813
 
2814
        * elf32-mips.c (_bfd_mips_elf_merge_private_bfd_data): Clean up.
2815
        Return a useful value.
2816
 
2817
        * Makefile.in (ALL_CFLAGS): Add -D_GNU_SOURCE.
2818
 
2819
        * configure.in: Check ac_cv_func_mmap_fixed_mapped, not
2820
        ac_cv_func_mmap.
2821
        * configure: Rebuild.
2822
        * configure.host: Use ac_cv_func_mmap_fixed_mapped instead of
2823
        ac_cv_func_mmap in bfd/configure.host.
2824
 
2825
        * elflink.h (NAME(bfd_elf,size_dynamic_sections)): Add
2826
        filter_shlib and auxiliary_filter_shlib parameters.
2827
        * elf.c (_bfd_elf_print_private_bfd_data): Handle DT_AUXILIARY and
2828
        DT_FILTER.
2829
        * bfd-in.h (bfd_elf32_size_dynamic_sections): Update declaration.
2830
        (bfd_elf64_size_dynamic_sections): Likewise.
2831
        * bfd-in2.h: Rebuild.
2832
 
2833
Mon Dec 30 18:48:52 1996  Ian Lance Taylor  
2834
 
2835
        * xcofflink.c (xcoff_build_ldsyms): When exporting all defined
2836
        symbols, don't export a symbol which is defined by an object in an
2837
        archive which contains shared objects.
2838
 
2839
Mon Dec 30 16:12:58 1996  Fred Fish  
2840
 
2841
        * archures.c (enum bfd_architecture): Add bfd_arch_tic80
2842
        for TI TMS320c80 (MVP).
2843
        (bfd_archures_list): Add bfd_tic80_arch.
2844
        * bfd-in2.h: Regenerate by running "make headers".
2845
 
2846
Sun Dec 29 16:18:52 1996  Fred Fish  
2847
 
2848
        * cpu-tic80.c (bfd_tic80_arch): Add struct.
2849
        * configure.in (case $vec): Correct typo, "tb" not "tp".
2850
        Also add cofflink.o for tic80coff_vec.
2851
        * configure: Regenerate with autoconf.
2852
 
2853
Mon Dec 30 11:54:56 1996  Ian Lance Taylor  
2854
 
2855
        * libbfd.c: Patch up the mmap code so that it is only built if BFD
2856
        is configured with --with-mmap.
2857
 
2858
Sun Dec 29 10:48:57 1996  Fred Fish  
2859
 
2860
        * Makefile.in (BFD32_BACKENDS): Add coff-tic80.o
2861
        (ALL_MACHINES): Add cpu-tic80.o
2862
        (cpu-tic80.o, coff-tic80.o): Add dependencies.
2863
        * coff-tic80.c: Add skeleton, cloned from another coff config.
2864
        * coffcode.h (coff_write_object_contents): Set magic to TIC80MAGIC
2865
        for TIc80.
2866
 
2867
Fri Dec 27 20:56:41 1996  Fred Fish  
2868
 
2869
        * TODO: Correct a misspelling.
2870
        * coff-tic80.c: New file for TI TMS320C80 (MVP).
2871
        * cpu-tic80.c: New file for TI TMS320C80 (MVP).
2872
        * configure.in (case $vec): Add tic80coff_vec entry.
2873
        * configure: Regenerate with autoconf.
2874
        * archures.c (bfd_tic80_arch): Declare.
2875
        * bfd-in2.h (enum bfd_architecture): Add bfd_arch_tic80.
2876
        * config.bfd (case ${targ}): Add tic80*-*-coff* target.
2877
        * targets.c (tic80coff_vec): Add decl as extern bfd_target.
2878
        (bfd_target_vector): Add tic80coff_vec entry.
2879
 
2880
Fri Dec 27 11:48:12 1996  H.J. Lu  
2881
 
2882
        * elflink.h (elf_buckets): Add some more values for larger
2883
        binaries.
2884
 
2885
Thu Dec 26 18:36:54 1996  Ian Lance Taylor  
2886
 
2887
        * Makefile.in (install): Move subdir_do out of conditional. From
2888
        Fred Fish .
2889
 
2890
Wed Dec 18 10:04:30 1996  Jeffrey A Law  (law@cygnus.com)
2891
 
2892
        * elf32-mn10200.c (enum reloc_type): Enable basic 8, 16, and
2893
        32 bit relocs.
2894
        (elf_mn10200_howto_table): Likewise.
2895
        (mn10200_reloc_map): Likewise.
2896
 
2897
Tue Dec 17 11:09:36 1996  Ian Lance Taylor  
2898
 
2899
        * elf32-mips.c (mips_elf_add_symbol_hook): Add 1 to the value of a
2900
        mips16 symbol during the link.
2901
        (mips_elf_finish_dynamic_symbol): Subtract 1 from the value of a
2902
        mips16 symbol.
2903
        (mips_elf_link_output_symbol_hook): New static function.
2904
        (elf_backend_link_output_symbol_hook): Define.
2905
 
2906
        * elf.c (bfd_elf_print_symbol): Print the st_other field if it is
2907
        not zero.
2908
 
2909
Mon Dec 16 14:38:39 1996  Ian Lance Taylor  
2910
 
2911
        * elf.c (bfd_section_from_shdr): Don't check for reloc sections
2912
        against SEC_DEBUGGING sections here (revert patch of December 5).
2913
        * elfcode.h (elf_object_p): Check for them here, instead.
2914
 
2915
Sun Dec 15 14:46:06 1996  Ian Lance Taylor  
2916
 
2917
        * elfcode.h (elf_slurp_reloc_table): Add dynamic parameter.
2918
        * elf.c (_bfd_elf_canonicalize_reloc): Pass new argument to
2919
        slurp_reloc_table.
2920
        (_bfd_elf_get_dynamic_reloc_upper_bound): New function.
2921
        (_bfd_elf_canonicalize_dynamic_reloc): New function.
2922
        * elf-bfd.h (struct elf_size_info): Update declaration of
2923
        slurp_reloc_table.
2924
        (_bfd_elf_get_dynamic_reloc_upper_bound): Declare.
2925
        (_bfd_elf_canonicalize_dynamic_reloc): Declare.
2926
        * elfxx-target.h: Use new dynamic reloc routines by default.
2927
        * elf64-mips.c (mips_elf64_slurp_reloc_table): Add dynamic
2928
        parameter.
2929
 
2930
Fri Dec 13 13:18:49 1996  Dan Wilder  
2931
 
2932
        * coffcode.h (coff_set_flags): Use MC68KBCSMAGIC for bfd_arch_m68k
2933
        if NAMES_HAVE_UNDERSCORE is defined.
2934
 
2935
Fri Dec 13 11:13:23 1996  Doug Evans  
2936
 
2937
        * libaout.h (enum machine_type): Change M_SPARCLET from 142 to 131.
2938
 
2939
Thu Dec 12 15:07:20 1996  Michael Meissner  
2940
 
2941
        * elf32-ppc.c (ppc_elf_check_relocs): Move R_PPC_PLTREL24 into the
2942
        supported relocs.
2943
 
2944
Thu Dec 12 14:55:41 1996  Ian Lance Taylor  
2945
 
2946
        * elflink.h (elf_link_add_object_symbols): Only add a weak
2947
        symbol if the real definition is in the dynamic symbol table.
2948
        After finding the real definition, then, if it is dynamic, add the
2949
        weak symbol to the dynamic symbol table.
2950
 
2951
        * coff-aux.c (coff_m68k_aux_link_add_one_symbol): Make static.
2952
 
2953
        * ppcboot.c (ppcboot_set_arch_mach): Don't define; it's a
2954
        function.
2955
        (ppcboot_bfd_print_private_bfd_data): Don't take the address of an
2956
        array.
2957
 
2958
Tue Dec 10 23:23:52 1996  Jeffrey A Law  (law@cygnus.com)
2959
 
2960
        * elf32-mn10300.c (reloc_type): Remove big endian mn10300 reloc
2961
        variants.
2962
        (elf32_mn10300_howto_table, mn10300_reloc_map): Likewise.
2963
        (bfd_elf32_mn10300_reloc): Write data in little endian format.
2964
        * reloc.c: Remove mn10300 big endian relocs.
2965
        * bfd-in2.h, libbfd.h: Rebuilt.
2966
 
2967
        * elf32-mn10200.c: Update from elf32-mn10300.c.
2968
 
2969
Fri Dec  6 15:18:05 1996  Jeffrey A Law  (law@cygnus.com)
2970
 
2971
        * elf32-mn10300.c (elf_symbol_leading_char): Define.
2972
 
2973
        * elf32-mn10300.c: Add some comments.
2974
 
2975
Fri Dec  6 17:16:43 1996  Ian Lance Taylor  
2976
 
2977
        * ihex.c (ihex_scan): Always initialize buf before jumping to
2978
        error_return.
2979
        (ihex_read_section): Likewise.
2980
 
2981
Thu Dec  5 22:29:18 1996  Jeffrey A Law  (law@cygnus.com)
2982
 
2983
        * elf32-mn10300.c (elf_mn10300_howto_table): Don't set partial-
2984
        inplace for most relocs.
2985
 
2986
Thu Dec  5 13:24:46 1996  Ian Lance Taylor  
2987
 
2988
        * elflink.h (elf_link_add_object_symbols): Calling check_relocs
2989
        even if SEC_ALLOC is not set.
2990
        * elf32-i386.c (elf_i386_check_relocs): Don't check SEC_ALLOC
2991
        when deciding whether to copy a reloc into a shared object.
2992
        (elf_i386_relocate_section): Likewise.
2993
        * elf32-sparc.c (elf32_sparc_check_relocs): Likewise.
2994
        (elf32_sparc_relocate_section): Likewise.
2995
        * elf32-i386.c (elf_i386_check_relocs): Don't set SEC_ALLOC in a
2996
        reloc section if it is not set in the source section.
2997
        * elf32-sparc.c (elf32_sparc_check_relocs): Likewise.
2998
        * elf.c (bfd_section_from_shdr): Mark a reloc section associated
2999
        with a SEC_DEBUGGING section as SEC_DEBUGGING.
3000
 
3001
Wed Dec  4 14:18:13 1996  Michael Meissner  
3002
 
3003
        * elf32-ppc.c (ppc_elf_adjust_dynamic_symbol): #if 0 code that
3004
        expects a .got.plt until we actually create it.
3005
 
3006
Mon Dec  2 12:13:51 1996  Ian Lance Taylor  
3007
 
3008
        * cofflink.c (_bfd_coff_generic_relocate_section): Print an error
3009
        message for bfd_reloc_outofrange, rather than aborting.  From
3010
        Philippe De Muyter .
3011
 
3012
        * cofflink.c (_bfd_coff_final_link): If there aren't any relocs in
3013
        a relocateable link, don't try to process them.  From Heinz Wrobel
3014
        .
3015
 
3016
Mon Dec  2 00:39:24 1996  Jeffrey A Law  (law@cygnus.com)
3017
 
3018
        * elf32-mn10300.c (mn10300_info_howto): Renamed from
3019
        mn10300_info_howto_rel.  Tweak reloc argument to be an
3020
        Elf32_Internal_Rela.
3021
        (USE_RELA): Define instead of USE_REL.
3022
        (elf_info_to_howto, elf_info_howto_rel): Corresponding changes.
3023
 
3024
Sun Dec  1 00:18:59 1996  Peter Schauer  (pes@regent.e-technik.tu-muenchen.de)
3025
 
3026
        * configure.in, configure:  Handle mips*-sgi-irix6*.
3027
        * irix-core.c (irix_core_core_file_p):  Accept CORE_MAGICN32
3028
        core files.
3029
 
3030
Wed Nov 27 12:10:25 1996  Ian Lance Taylor  
3031
 
3032
        * elf32-i386.c (elf_i386_relocate_section): Warn about a
3033
        relocation against a symbol defined in a section with no output
3034
        section.
3035
 
3036
Tue Nov 26 11:07:31 1996  Ian Lance Taylor  
3037
 
3038
        * aclocal.m4 (BFD_CC_FOR_BUILD): Don't require AC_C_CROSS.
3039
        * configure, config.in: Rebuild with autoconf 2.12.
3040
 
3041
        * elf-bfd.h (struct elf_link_hash_entry): Add other field.
3042
        * elf.c (_bfd_elf_link_hash_newfunc): Initialize other field.
3043
        (swap_out_syms): Set st_other from existing st_other field.
3044
        * elflink.h (elf_link_add_object_symbols): Store st_other in hash
3045
        table other field.
3046
        (elf_link_output_extsym): Set the other field from the global hash
3047
        table entry.
3048
        * elf32-mips.c (enum reloc_type): Add R_MIPS16_26.
3049
        (elf_mips16_jump_howto): New static variable.
3050
        (mips16_jump_reloc): New static function.
3051
        (bfd_elf32_bfd_reloc_type_lookup): Handle BFD_RELOC_MIPS16_JMP.
3052
        (mips_info_to_howto_rel): Handle R_MIPS16_26.
3053
        (mips_elf_relocate_section): Handle R_MIPS16_26.  Handle R_MIPS_26
3054
        to a mips16 symbol.
3055
        * reloc.c (BFD_RELOC_MIPS16_JMP): Add to list of relocs.
3056
        * bfd-in2.h, libbfd.h: Rebuild.
3057
        * cpu-mips.c (arch_info_struct): Add mips:16 entry.
3058
 
3059
Mon Nov 25 11:23:32 1996  Ian Lance Taylor  
3060
 
3061
        * configure.host: Use long long for mips-sgi-irix6*.
3062
 
3063
        * coffswap.h (coff_swap_scnhdr_out): Make line number overflow
3064
        only a warning.  From Philippe De Muyter .
3065
 
3066
Mon Nov 25 08:52:29 1996  Jeffrey A Law  (law@cygnus.com)
3067
 
3068
        * elf32-mn10300.c (bfd_elf32_mn10300_reloc): New function.
3069
        (enum reloc_type): Add more reloc types.
3070
        (elf32_mn10300_howto_table): Update for new reloc types.
3071
        (elf32_mn10300_reloc_map): Update for new reloc types.
3072
        * reloc.c: Add some new relocs for the mn10300 series.
3073
        * bfd-in2.h, libbfd.h: Rebuilt.
3074
 
3075
Sat Nov 23 13:26:18 1996  Jeffrey A Law  (law@cygnus.com)
3076
 
3077
        * som.c (setup_sections): Don't lose for a space which has
3078
        no data, but some symbols.
3079
 
3080
Fri Nov 22 11:32:13 1996  Ian Lance Taylor  
3081
 
3082
        * sunos.c (struct sunos_link_hash_table): Add got_needed field.
3083
        (sunos_link_hash_table_create): Initialize got_needed.
3084
        (sunos_create_dynamic_sections): Only set .got section size if it
3085
        is not already set.  Set got_needed.
3086
        (bfd_sunos_size_dynamic_sections): Check got_needed.  Only set
3087
        sdynptr, and only handle dynamic sections, if dynamic sections are
3088
        needed.
3089
        (sunos_scan_std_relocs): Pass false to create_dynamic_sections.
3090
        Initialize .got section.
3091
        (sunos_scan_ext_relocs): Likewise.
3092
        (sunos_write_dynamic_symbol): Set up PLT entry even if this is not
3093
        a dynamic symbol.
3094
        (sunos_finish_dynamic_link): Check got_needed.  Only set up
3095
        dynamic linking information if needed.
3096
 
3097
Thu Nov 21 10:31:31 1996  Rob Savoye  (rob@cygnus.com)
3098
 
3099
        * config.bfd: Added VersaDOS format to the Ericsson configuration.
3100
 
3101
Wed Nov 20 16:31:31 1996  Jeffrey A Law  (law@cygnus.com)
3102
 
3103
        * elf32-mn10300.c: Rough cut at relocs for the mn10300.
3104
 
3105
Wed Nov 13 08:12:38 1996  Jeffrey A Law  (law@cygnus.com)
3106
 
3107
        * Makefile.in (elf32-d10v.o): Don't depend on elf/d10v.h
3108
        anymore.
3109
 
3110
Tue Nov 12 13:30:00 1996  Dawn Perchik  
3111
 
3112
        * filemode.c: Include sysdep.h.
3113
        * ihex.c: Add casts to eliminate compiler warnings.
3114
        * sunos.c: Add casts to eliminate compiler warnings.
3115
 
3116
Mon Nov 11 10:37:02 1996  Michael Meissner  
3117
 
3118
        * elf32-ppc.c (ppc_elf_adjust_dynamic_symbol): Create .got.plt
3119
        section.
3120
        (ppc_elf_check_relocs): Add support for R_PPC_LOCAL24PC.  Make
3121
        appropriate relocations in the .so file if shared.
3122
        (ppc_elf_relocate_section): Ditto.
3123
 
3124
Tue Oct 29 15:03:02 1996  Doug Evans  
3125
 
3126
        * elf32-m32r.c (elf_m32r_howto_table, R_M32R_24): Use
3127
        complain_overflow_unsigned.
3128
 
3129
Tue Oct 29 12:53:46 1996  Martin M. Hunt  
3130
 
3131
        * elf32-d10v.c (elf_d10v_howto_table): Don't complain on
3132
        overflows for R_D10V_16 and R_D10V_18.
3133
 
3134
Tue Oct 29 13:23:53 1996  Ian Lance Taylor  
3135
 
3136
        * ieee.c (ieee_write_section_part): Use LMA rather than VMA.
3137
        (do_with_relocs): Likewise.
3138
        (do_as_repeat): Likewise.
3139
        (copy_expression): Likewise.
3140
 
3141
Fri Oct 25 16:56:40 1996  Ian Lance Taylor  
3142
 
3143
        * ieee.c (ieee_write_external_part): Correctly record whether
3144
        there is an external part.
3145
 
3146
Thu Oct 24 14:32:52 1996  Jeffrey A Law  (law@cygnus.com)
3147
 
3148
        * elf32-v850.c (elf32_v850_bfd_final_link_relocate): Correctly
3149
        handle tda offsets for sld.w and sst.w instructions.
3150
        Fix alignment check in sld.w and sst.w tda reloc handling.
3151
 
3152
Thu Oct 24 09:08:47 1996  Stu Grossman  (grossman@critters.cygnus.com)
3153
 
3154
        * aclocal.m4, configure:  Set USE_BINARY_FOPEN for *-*-windows.
3155
 
3156
Wed Oct 23 00:53:16 1996  Jeffrey A Law  (law@cygnus.com)
3157
 
3158
        * elf32-v850.c: Add comments about assumptions about
3159
        char, short & long sizes.
3160
        (elf32_v850_bfd_final_link_relocate): Fix sign extension
3161
        problems for several relocs.
3162
 
3163
        * elf32-v850.c (elf32_v850_howto_table): Fix typo in
3164
        R_V850_SDA_OFFSET entry.
3165
 
3166
Wed Oct 23 00:20:34 1996  Ian Lance Taylor  
3167
 
3168
        * xcofflink.c (bfd_xcoff_import_symbol): Don't allocate ldsym.
3169
        Store import file index in ldindx.
3170
        (xcoff_build_ldsyms): Assume that ldsym was not previously
3171
        allocated.  For an imported symbol, copy ldindx into l_ifile.
3172
 
3173
Tue Oct 22 19:20:38 1996  Jeffrey A Law  (law@cygnus.com)
3174
 
3175
        * elf32-v850.c (elf_v850_howto_table): Fix ordering of
3176
        R_V850_ZDA_OFFSET and R_V850_TDA_OFFSET.  Fix various
3177
        fields in R_V850_TDA_OFFSET.
3178
        (elf32_v850_bfd_final_link_relocate): Tweak pc-relative
3179
        relocs to work more like other relocs.  Handle R_V850_TDA_OFFSET
3180
        relocations.
3181
 
3182
        * elf32-v850.c: Include bfdlink.h.
3183
        (bfd_elf32_v850_reloc): Return an error if we get a reloc
3184
        we can't handle.
3185
        (elf32_v850_bfd_final_link_relocate): New function.
3186
        (v850_elf_relocation_section): Likewise.
3187
        (elf_backend_relocate_section): Define.
3188
 
3189
Tue Oct 22 17:22:43 1996  Ian Lance Taylor  
3190
 
3191
        * binary.c (binary_set_section_contents): Ignore sections which
3192
        don't have SEC_LOAD and SEC_ALLOC set.
3193
 
3194
Mon Oct 21 12:13:05 1996  Jeffrey A Law  (law@cygnus.com)
3195
 
3196
        * linker.c (_bfd_generic_final_link): Avoid losing static
3197
        symbols in the .bss section.
3198
 
3199
Mon Oct 21 10:54:58 1996  Ian Lance Taylor  
3200
 
3201
        * elf32-mips.c (elf_mips_howto_table): Describe R_MIPS_64.
3202
        (mips32_64bit_reloc): New static function.
3203
        (mips_reloc_map): Add entry for BFD_RELOC_64.
3204
        (mips_elf_relocate_section): Handle R_MIPS_64.
3205
 
3206
        * linker.c (default_indirect_link_order): Print an error message
3207
        when attempting to do a relocateable link with different object
3208
        file formats, rather than calling abort.
3209
 
3210
Thu Oct 17 10:43:29 1996  Doug Evans  
3211
 
3212
        * reloc.c (m32r relocs): Rename them.
3213
        * bfd-in2.h, libbfd.h: Regenerated.
3214
        * elf32-m32r.c: Update.
3215
        (m32r_elf_10_pcrel_reloc): New function.
3216
        (elf_m32r_howto_table, R_M32R_10_PCREL entry): Use it.
3217
        (elf_m32r_howto_table, R_M32R_24 entry): Fix {src,dst}_masks.
3218
 
3219
Wed Oct 16 11:24:35 1996  Jeffrey A Law  (law@cygnus.com)
3220
 
3221
        * linker.c (_bfd_generic_final_link): Set "linker_mark" for
3222
        all sections that will be included in the output file.
3223
        (_bfd_generic_link_output_symbols): Discard symbols in sections
3224
        which are being discarded.
3225
        * elf32-v850.c (enum reloc_type): Add R_V850_SDA_OFFSET,
3226
        R_V850_TDA_OFFSET and R_V850_ZDA_OFFSET.
3227
        (elf_v850_howto_table): Corresponding changes.
3228
        (elf_v850_reloc_map): Corresponding changes.
3229
        * reloc.c: Add additional V850 relocations.
3230
        * bfd-in2.h, libbfd.h: Rebuilt.
3231
 
3232
        * elf32-v850.c (bfd_elf32_v850_reloc): Mask out bits we
3233
        no longer want in pc-relative relocs.
3234
 
3235
Tue Oct 15 22:17:37 1996  Jeffrey A Law  (law@cygnus.com)
3236
 
3237
        * elf32-v850.c (bfd_elf32_v850_reloc): Don't silently
3238
        accept a reloc against an undefined sybmol!
3239
 
3240
Tue Oct 15 16:17:28 1996  Stu Grossman  (grossman@critters.cygnus.com)
3241
 
3242
        * elf32-v850.c:  Define elf_symbol_leading_char to be '_'.
3243
 
3244
Tue Oct 15 12:40:41 1996  Ian Lance Taylor  
3245
 
3246
        * VERSION: Bump for new relocation.
3247
 
3248
        * hosts/i386bsd.h: If NBPG is not defined, define it as
3249
        PAGE_SIZE, for recent versions of FreeBSD.
3250
 
3251
Mon Oct 14 12:37:26 1996  Ian Lance Taylor  
3252
 
3253
        * configure.host: Use `long long' as the 64 bit type on a Solaris
3254
        host, since both gcc and the SunPRO compilers support it.
3255
 
3256
Mon Oct 14 11:17:24 1996  Richard Henderson  
3257
 
3258
        * reloc.c: Create a new BFD_RELOC_ALPHA_ELF_LITERAL.  It was a
3259
        mistake to have reused the ECOFF LITERAL for ELF since they have
3260
        different semantics.
3261
        * elf64-alpha.c (elf_reloc_map): Map from ELF_LITERAL.
3262
        * bfd-in2.h, libbfd.h: Rebuild.
3263
 
3264
        * elf64-alpha.c (elf64_alpha_size_dynamic_sections): Trap .got
3265
        section overflow.
3266
 
3267
        * elf64-alpha.c (elf64_alpha_relocate_section): Do not emit a
3268
        dynamic relocation for an undefweak symbol when we are building
3269
        a static executable.
3270
 
3271
Thu Oct 10 11:15:06 1996  Stan Shebs  
3272
 
3273
        * mpw-make.sed (config.bfd, targmatch.sed): Edit references to
3274
        point explicitly to srcdir.
3275
        (targmatch.h): Edit references to point explicitly to objdir.
3276
 
3277
Thu Oct 10 14:14:23 1996  Ian Lance Taylor  
3278
 
3279
        * config.bfd: When setting targ_cpu, don't get confused by
3280
        linux-gnu.
3281
 
3282
Tue Oct  8 08:51:19 1996  Stu Grossman  (grossman@critters.cygnus.com)
3283
 
3284
        * configure.host:  Add support for windows host (a build done
3285
        under the Microsoft build environment).
3286
 
3287
Tue Oct  8 11:40:16 1996  Ian Lance Taylor  
3288
 
3289
        * elflink.h (elf_link_add_object_symbols): If a symbol is a weak
3290
        definition in a dynamic object, add it to the dynamic symbol table
3291
        if any dynamic object mentions it.  Reverts part of last patch.
3292
 
3293
        * sunos.c (struct sunos_link_hash_table): Add got_base field.
3294
        (sunos_link_hash_table_create): Initialize got_base.
3295
        (bfd_sunos_size_dynamic_sections): If the .got section is more
3296
        than 0x1000 bytes, set __GLOBAL_OFFSET_TABLE_ and got_base to
3297
        0x1000.
3298
        (sunos_check_dynamic_reloc): Subtract got_base from a base
3299
        relative relocation.
3300
 
3301
        * elf32-mips.c (elf_mips_isa): New static function.
3302
        (_bfd_mips_elf_merge_private_bfd_data): Don't warn about linking
3303
        -mips1 and -mips2 code together, or -mips3 and -mips4 code.
3304
 
3305
Mon Oct  7 11:44:17 1996  Ian Lance Taylor  
3306
 
3307
        * archive.c (do_slurp_coff_armap): Only treat archive as little
3308
        endian for i960 COFF.
3309
 
3310
Fri Oct  4 13:49:01 1996  Ian Lance Taylor  
3311
 
3312
        * coffcode.h (coff_compute_section_file_positions): Adjust sofar
3313
        by the change in size of the section when EXEC_P is not set.
3314
 
3315
        * coff-m68k.c (coff_rtype_to_howto): Define if not defined.
3316
        (m68kcoff_rtype_to_howto): New static function.
3317
        * cf-m68klynx.c (coff_m68k_lynx_rtype_to_howto): Add the section
3318
        VMA to the addend for a PC relative reloc.
3319
 
3320
        * dep-in.sed: Rework backslash loop a bit to avoid bug in sed on
3321
        HP/UX 10.20.
3322
        * Makefile.in: Rebuild dependencies.
3323
 
3324
        * dep-in.sed: Remove ../bfd/sysdep.h, since it will appear when
3325
        som.h is included.
3326
 
3327
Fri Oct  4 11:41:39 1996  Jeffrey A Law  (law@cygnus.com)
3328
 
3329
        * Makefile.in: Remove explicit dependencies for mn10200 and
3330
        mn10300 files.
3331
        (ALL_MACHINE_CFILES): Add cpu-mn10200.c and cpu-mn10300.c.
3332
        (BFD32_BACKENDS_CFILES): Add elf32-mn10200.c and elf32-mn10300.c
3333
        (dependencies): Rebuilt.
3334
 
3335
Thu Oct  3 16:57:51 1996  Ian Lance Taylor  
3336
 
3337
        * cofflink.c (coff_link_add_symbols): Set obj_coff_keep_syms
3338
        during this function.
3339
 
3340
        * elflink.c (_bfd_elf_create_linker_section): Only use an existing
3341
        section if the flags are compatible.
3342
 
3343
        * configure.in: Add havevecs, and put it in tdefaults.
3344
        * mpw-config.in: Likewise.
3345
        * configure: Rebuild.
3346
        * targmatch.sed: New file; a sed script to build targmatch.h from
3347
        config.bfd.
3348
        * config.bfd: Add #if, #endif, and comments for targmatch.h.
3349
        * targets.c: Include "fnmatch.h".
3350
        (struct targmatch): Define.
3351
        (bfd_target_match): Define by including targmatch.h.
3352
        (bfd_find_target): If the target is not found by name, search for
3353
        it as a configuration triplet.
3354
        * Makefile.in: Rebuild dependencies.
3355
        (BFD32_BACKENDS): Add aout-arm.o, aout-sparcle.o, hp300bsd.o,
3356
        i386dynix.o, m68k4knetbsd.o, and riscix.o.
3357
        (BFD32_BACKENDS_CFILES): Add aout-arm.c, aout-sparcle.c,
3358
        hp300bsd.c, i386dynix.c, m68k4knetbsd.c, and riscix.c.
3359
        (HFILES): Add targmatch.h.  Also, alphabetize and reindent.
3360
        (CFILES): Remove i386dynix.c and hp300bsd.c.
3361
        (targmatch.h): New target.
3362
        (do_clean): Remove targmatch.h.
3363
 
3364
        * configure.in: Add BFD_NEED_DECLARATION(getenv).
3365
        * acconfig.h: Add NEED_DECLARATION_GETENV.
3366
        * configure, config.in: Rebuild.
3367
        * sysdep.h: If NEED_DECLARATION_GETENV, declare getenv.
3368
        * aout-adobe.c (aout_adobe_object_p): Don't declare getenv.
3369
 
3370
Thu Oct  3 09:29:09 1996  Jeffrey A Law  (law@cygnus.com)
3371
 
3372
        * cpu-mn10x00.c, elf32-mn10x00: Removed.
3373
        * cpu-mn10200.c, cpu-mn10300.c: New files.
3374
        * elf32-mn10200.c, elf32-mn10300.c: New files.
3375
        * Makefile.in: Break mn10x00 support into two separate
3376
        configurations, mn10200 and mn10300.
3377
        * archures.c, config.bfd, configure.in, elf.c, targets.c: Likewise.
3378
        * bfd-in2.h, configure: Rebuilt.
3379
 
3380
Thu Oct  3 15:38:19 1996  Jason Molenda  (crash@godzilla.cygnus.co.jp)
3381
 
3382
        * Makefile.in (do_clean): Move config.log to do_distclean.
3383
 
3384
Wed Oct  2 21:40:55 1996  Jeffrey A Law  (law@cygnus.com)
3385
 
3386
        * cpu-mn10x00.c, elf32-mn10x00.c: New files.
3387
        * Makefile.in (ALL_MACHINES): Add cpu-mn10x00.o.
3388
        (BFD32_BACKENDS): Similarly for elf32-mn10x00.o.
3389
        (elf32-mn10x00.o): Add dependencies.
3390
        * archures.c (enum bfd_architecture): Add bfd_arch_mn10x00.
3391
        (bfd_mn10x00_arch): Declare.
3392
        (bfd_archures_list): Add bfd_mn10x00_arch.
3393
        * config.bfd: Add mn10x00-*-*.
3394
        * configure.in: Add bfd_elf32_mn10x00_vec.
3395
        * elf.c (prep_headers): Handle bfd_arch_mn10x00.
3396
        * targets.c (bfd_elf32_mn10x00_vec): Declare.
3397
        (bfd_target_vector): Add bfd_elf32_mn10x00_vec.
3398
        * bfd-in2.h, configure: Rebuilt.
3399
 
3400
Wed Oct  2 15:46:45 1996  Klaus Kaempf  
3401
 
3402
        openVMS/Alpha: Provide filename and case_hack flags via
3403
        symbol table from gas.
3404
        Add case_hack code for symbol output from vax/vms.
3405
        * evax-alpha.c (evax_initialize): Remove filename handling,
3406
        filename is provided via symbol table.
3407
        (evax_get_symtab): Use local symbol count when setting up table.
3408
        * evax-egsd.c (_bfd_evax_slurp_egsd): Print correct name when
3409
        debugging.
3410
        (_bfd_evax_write_egsd): Skip file name symbol.
3411
        * evax-emh.c (get_vms_time_string): Local function now.
3412
        (_bfd_evax_write_emh): Extract source filename and case_hack flags
3413
        from symbol table.
3414
        (_bfd_evax_write_etir): Pass all symbol names through
3415
        _bfd_evax_case_hack_symbol.
3416
        * evax-misc.c (hash_string, _bfd_evax_case_hack_symbol): New
3417
        functions.
3418
        (_bfd_evax_basename): Removed.
3419
        (_bfd_get_vms_time_string): Moved to evax-emh.c.
3420
        * evax.h (evax_private_data_struct): Remove filename.
3421
        (flag_hash_long_names, flag_show_after_trunc,
3422
        flag_no_hash_mixed_case, vms_name_mapping): New flags for
3423
        vms_case_hack.
3424
 
3425
Wed Oct  2 12:02:02 1996  Ian Lance Taylor  
3426
 
3427
        * freebsd.h (N_GET_MAGIC_NET): Don't use ntohl.
3428
        (N_GETMID_NET, N_GETFLAG_NET): Likewise.
3429
        (NO_SWAP_MAGIC): Don't define.
3430
        (SWAP_MAGIC): Define.
3431
 
3432
        * cofflink.c (_bfd_coff_link_input_bfd): Don't crash if there is
3433
        no hash table entry for a global symbol.
3434
 
3435
Tue Oct  1 16:14:22 1996  Joel Sherrill  
3436
 
3437
        * config.bfd (mips*-*-rtems*): New target, like mips*-*-elf*.
3438
 
3439
Tue Oct  1 12:31:39 1996  Ian Lance Taylor  
3440
 
3441
        * cofflink.c (coff_link_add_symbols): Don't override a meaningful
3442
        symbol type with T_NULL.  Warn if symbol type changes.  Based on
3443
        patch from Philippe De Muyter .
3444
 
3445
        * elflink.h (elf_link_add_object_symbols): Only put a symbol from
3446
        a dynamic object in the dynamic symbol table if it is referenced
3447
        or defined by a regular object.
3448
 
3449
Fri Sep 27 18:41:07 1996  Stu Grossman  (grossman@critters.cygnus.com)
3450
 
3451
        * elf32-v850.c (bfd_elf32_v850_is_local_label):  New function to
3452
        remove dwarf local labels.  Shrinks binaries by a factor of 3!
3453
 
3454
Mon Sep 23 13:33:00 1996  Ian Lance Taylor  
3455
 
3456
        * elf32-ppc.c (ppc_elf_add_symbol_hook): Create the .sbss section
3457
        by hand, rather than by calling bfd_make_section.
3458
 
3459
Mon Sep 23 09:23:41 1996  Doug Evans  
3460
 
3461
        * reloc.c: Rename m32r relocs.
3462
        * bfd-in2.h, libbfd.h: Rebuilt.
3463
        * elf32-m32r.c: Update.
3464
 
3465
Fri Sep 20 11:43:43 1996  Ian Lance Taylor  
3466
 
3467
        * aoutx.h (aout_link_input_section_ext): When doing a relocateable
3468
        link, adjust the symbol index of a base relative reloc.  Don't
3469
        change the addend of a PC relative reloc if pcrel_offset is set.
3470
        * sunos.c (bfd_sunos_size_dynamic_sections): Don't do anything for
3471
        a relocateable link.
3472
 
3473
        * reloc.c (bfd_perform_relocation): Apply the relocation even if
3474
        it is zero, in case src_mask matters.
3475
        (bfd_install_relocation): Likewise.
3476
 
3477
Thu Sep 19 11:03:06 1996  Ian Lance Taylor  
3478
 
3479
        * xcofflink.c (xcoff_link_add_symbols): Always initialize
3480
        keep_syms.
3481
        (_bfd_xcoff_bfd_final_link): Don't set target_index
3482
        to an uninitialized value.
3483
 
3484
Tue Sep 17 14:18:31 1996  Ian Lance Taylor  
3485
 
3486
        * coffcode.h (coff_slurp_line_table): Warn about illegal symbol
3487
        indices, rather than crashing.
3488
        (coff_slurp_reloc_table): Likewise.  Check whether the howto field
3489
        is NULL.
3490
        * coff-sh.c (sh_relocate_section): Check for an illegal symbol
3491
        index.
3492
 
3493
Mon Sep 16 12:39:36 1996  Ian Lance Taylor  
3494
 
3495
        * coff-arm.c (aoutarm_std_reloc_howto): Change dst_mask for ARM26D
3496
        reloc to 0.
3497
        (coff_arm_adjust_symndx): New static function.
3498
        (coff_adjust_symndx): Define.
3499
 
3500
        * srec.c (srec_scan): Accept multiple symbols on a single line.
3501
        From Pascal Martin .
3502
 
3503
        * README: New file.
3504
 
3505
Fri Sep 13 14:32:42 1996  Doug Evans  
3506
 
3507
        * aoutf1.h (MY_bfd_merge_private_bfd_data): Define.
3508
        (sunos_merge_private_bfd_data): New function.
3509
 
3510
Fri Sep 13 15:50:57 1996  Ian Lance Taylor  
3511
 
3512
        * bfd.c (bfd_copy_private_bfd_data): Switch on output BFD rather
3513
        than input BFD.
3514
        (bfd_merge_private_bfd_data): Likewise.
3515
        * section.c (bfd_copy_private_section_data): Likewise.
3516
        * syms.c (bfd_copy_private_symbol_data): Likewise.
3517
        * bfd-in2.h: Rebuild.
3518
        * aout-target.h (MY_bfd_copy_private_section_data): Check that
3519
        both BFD's are the right flavour.
3520
        * ecoff.c (_bfd_ecoff_bfd_copy_private_bfd_data): Likewise.
3521
        * elf.c (_bfd_elf_copy_private_symbol_data): Likewise.
3522
        * elf32-mips.c (_bfd_mips_elf_copy_private_bfd_data): Likewise.
3523
        (_bfd_mips_elf_merge_private_bfd_data): Likewise.
3524
        * elf32-ppc.c (ppc_elf_copy_private_bfd_data): Likewise.
3525
        (ppc_elf_merge_private_bfd_data): Likewise.
3526
        * elf32-sparc.c (elf32_sparc_merge_private_bfd_data): Likewise.
3527
        * peicode.h (pe_bfd_copy_private_section_data): Likewise.
3528
 
3529
        * elf32-hppa.c (elf_hppa_howto_table): Fill in some fields for
3530
        R_PARISC_DIR32, so that _bfd_stab_section_find_nearest_line passes
3531
        its sanity check.
3532
 
3533
Thu Sep 12 11:45:57 1996  Doug Evans  
3534
 
3535
        * reloc.c: Add m32r relocs.
3536
        * bfd-in2.h, libbfd.h: Rebuilt.
3537
        * cpu-m32r.c, elf32-m32r.c: New files.
3538
 
3539
Thu Sep 12 11:10:05 1996  Ian Lance Taylor  
3540
 
3541
        * ieee.c (ieee_vec): Set symbol_leading_char field to '_'.
3542
 
3543
Wed Sep 11 11:57:56 1996  Ian Lance Taylor  
3544
 
3545
        * tekhex.c (first_phase): Change type parameter from char to int.
3546
        (out): Likewise.
3547
        (pass_over): Change func to expect int, not char.
3548
 
3549
        * elf.c (assign_file_positions_for_segments): Test SEC_ALLOC
3550
        rather than SEC_LOAD when aligning the file offset for the first
3551
        section in a segment.
3552
 
3553
Tue Sep 10 16:18:30 1996  Fred Fish  
3554
 
3555
        * syms.c (coff_section_type): Make arg const.
3556
        * irix-core.c (irix_core_core_file_p): Remove extraneous extra arg
3557
        to make_bfd_asection().
3558
        * elf-bfd.h (bfd_section_from_phdr): Add prototype.
3559
        * elfcode.h (bfd_section_from_phdr): Remove prototype.
3560
        (_bfd_elf_stringtab_init): Remove prototype.
3561
 
3562
        * netbsd-core.c (swap_abort): Add prototype.
3563
        * aix386-core.c (swap_abort): Ditto & make static
3564
        * hpux-core.c (swap_abort): Ditto & make static.
3565
        * irix-core.c (swap_abort): Ditto & make static.
3566
        * ptrace-core.c (swap_abort): Ditto & make static.
3567
        * trad-core.c (swap_abort): Ditto & make static.
3568
        * coffswap.h (coff_swap_reloc_in): Ditto.
3569
        (coff_swap_reloc_out): Ditto.
3570
        (coff_swap_filehdr_in): Ditto.
3571
        (coff_swap_filehdr_out): Ditto.
3572
        (coff_swap_sym_in): Ditto.
3573
        (coff_swap_sym_out): Ditto.
3574
        (coff_swap_aux_in): Ditto.
3575
        (coff_swap_aux_out): Ditto.
3576
        (coff_swap_lineno_in): Ditto.
3577
        (coff_swap_lineno_out): Ditto.
3578
        (coff_swap_aouthdr_in): Ditto.
3579
        (coff_swap_aouthdr_out): Ditto.
3580
        (coff_swap_scnhdr_in): Ditto.
3581
        (coff_swap_scnhdr_out): Ditto.
3582
        * ihex.c (ihex_sizeof_headers): Ditto.
3583
        * tekhex.c (getsym): Ditto.
3584
        (find_chunk): Ditto & make static.
3585
        (insert_byte): Ditto.
3586
        (first_phase): Ditto.
3587
        (pass_over): Ditto.
3588
        (tekhex_get_symtab): Ditto & make static.
3589
        (tekhex_get_symtab_upper_bound): Ditto & make static.
3590
        (tekhex_mkobject): Ditto.
3591
        (tekhex_object_p): Ditto.
3592
        (move_section_contents): Ditto.
3593
        (tekhex_get_section_contents): Ditto.
3594
        (tekhex_set_arch_mach): Ditto & make static.
3595
        (tekhex_set_section_contents): Ditto.
3596
        (writevalue): Ditto.
3597
        (writesym): Ditto.
3598
        (out): Ditto.
3599
        (tekhex_write_object_contents): Ditto.
3600
        (tekhex_sizeof_headers): Ditto.
3601
        (tekhex_make_empty_symbol): Ditto.
3602
        (tekhex_get_symbol_info): Ditto.
3603
        (tekhex_print_symbol): Ditto.
3604
        * irix-core.c (make_bfd_asection): Ditto.
3605
        (irix_core_core_file_p): Ditto.
3606
        (irix_core_core_file_failing_command): Ditto.
3607
        (irix_core_core_file_failing_signal): Ditto.
3608
        (irix_core_core_file_matches_executable_p): Ditto.
3609
        (irix_core_make_empty_symbol): Ditto.
3610
        * coff-mips.c (mips_bfd_reloc_type_lookup): Ditto.
3611
        * srec.c (srec_new_symbol): Ditto.
3612
        (srec_get_section_contents): Ditto.
3613
        (srec_set_arch_mach): Ditto.
3614
        (srec_set_section_contents): Ditto.
3615
        (internal_srec_write_object_contents): Ditto.
3616
        (srec_write_object_contents): Ditto.
3617
        (symbolsrec_write_object_contents): Ditto.
3618
        (srec_sizeof_headers): Ditto.
3619
        (srec_make_empty_symbol): Ditto.
3620
        (srec_get_symtab_upper_bound): Ditto.
3621
        (srec_get_symtab): Ditto.
3622
        (srec_print_symbol): Ditto and make static.
3623
        * elf.c (elf_read): Ditto
3624
        (assign_section_numbers): Ditto.
3625
        (elf_fake_sections): Ditto.
3626
        (sym_is_global): Ditto.
3627
        (elf_map_symbols): Ditto.
3628
        (get_program_header_size): Ditto.
3629
        * coffgen.c (make_a_section_from_file): Ditto.
3630
        (coff_real_object_p): Ditto.
3631
        (fixup_symbol_value): Ditto.
3632
        (build_debug_section): Ditto.
3633
        (copy_name): Ditto.
3634
        * syms.c (coff_section_type): Ditto.
3635
 
3636
Mon Sep  9 22:36:01 1996  Jeffrey A Law  (law@cygnus.com)
3637
 
3638
        * bfd-in2.h: Rebuilt after m32r changes.
3639
 
3640
Mon Sep  9 12:31:22 1996  Doug Evans  
3641
 
3642
        * config.bfd: Add m32r support.
3643
        * configure.in: Likewise.
3644
        * configure: Likewise.
3645
        * Makefile.in: Likewise.
3646
        * archures.c: Likewise.
3647
        * elf.c: Likewise.
3648
        * targets.c: Likewise.
3649
        * config.bfd: Keep target list alphabetically sorted.
3650
 
3651
Mon Sep  9 11:48:41 1996  Jeffrey A Law  (law@cygnus.com)
3652
 
3653
        * elf32-v850.c (bfd_elf32_v850_reloc, case R_V850_HI16): Don't forget
3654
        to add in the constant part found in the instruction itself.
3655
        (case R_V850_HI16_S): Likewise.
3656
 
3657
Fri Sep  6 17:04:39 1996  Martin M. Hunt  
3658
 
3659
        * elf32-d10v.c (elf_d10v_howto_table): Modify the size of R_D10V_16
3660
        and R_D10V_18 to be 1 (word).
3661
 
3662
Thu Sep  5 15:23:08 1996  Ian Lance Taylor  
3663
 
3664
        * stabs.c (_bfd_link_section_stabs): If the output_section field
3665
        of either section is bfd_abs_section, then the linker is
3666
        discarding the section and we should not optimize it.
3667
 
3668
Tue Sep  3 12:16:20 1996  Doug Evans  
3669
 
3670
        * Makefile.in (aout-sparcle.o): New target.
3671
        * aoutf1.h (TARGET_IS_BIG_ENDIAN_P): Don't define if little endian.
3672
        * config.bfd (sparclet-*-aout*): Add case.
3673
        * configure.in (sparcle_aout_vec): Add case.
3674
        * configure: Regenerated.
3675
        * targets.c (sparcle_aout_vec): Declare.
3676
        (bfd_target_vector): Add sparcle_aout_vec.
3677
        * aout-sparcle.c: New file.
3678
 
3679
Tue Sep  3 00:57:02 1996  Jeffrey A Law  (law@cygnus.com)
3680
 
3681
        * elf32-v850.c (bfd_elf32_v850_reloc): Fix handling of
3682
        low order sign bit propogation for R_V850_HI16_S.
3683
 
3684
        * elf32-v850.c (bfd_elf32_v850_reloc): New function for
3685
        handling V850 specific relocs.
3686
        (elf_v850_howto_table): Use the new function for some
3687
        relocations.  Twiddle masks & shifts for some relocs.
3688
        Set partial_inplace where needed.
3689
 
3690
Mon Sep  2 12:12:34 1996  Ian Lance Taylor  
3691
 
3692
        * cpu-mips.c: Add an explicit mips:3000 entry, and change the
3693
        default architecture to a machine number of 0.
3694
        * elf32-mips.c (_bfd_mips_elf_object_p): Set the machine number
3695
        for E_MIPS_ARCH_1.
3696
        (_bfd_mips_elf_merge_private_bfd_data): If the machine number of
3697
        the output BFD is the default, set it from the first input BFD.
3698
 
3699
Sun Sep  1 18:38:01 1996  Jeffrey A Law  (law@cygnus.com)
3700
 
3701
        * elf32-v850.c (elf_v850_howto_table): All the 16bit relocs
3702
        insert at bitpos zero.  The HI16 relocs are shifted right
3703
        by 16 bits.  Fix src_mask for all relocs.
3704
        (TARGET_LITTLE_SYM, TARGET_LITTLE_NAME): Define.  The V850 is
3705
        little endian!
3706
        (TARGET_BIG_SYM, TARGET_BIG_NAME): Remove.  The V850 is little
3707
        endian!
3708
 
3709
Sun Sep  1 15:41:08 1996  Ian Lance Taylor  
3710
 
3711
        * rs6000-core.c (rs6000coff_core_file_matches_executable_p):
3712
        Rewrite to use BFD file read routines and to avoid using a fixed
3713
        length for the file name.
3714
 
3715
Sat Aug 31 10:22:25 1996  Jeffrey A Law  (law@cygnus.com)
3716
 
3717
        * elf32-v850.c (enum reloc_type): Add R_V850_{32,16,8}.
3718
        (elf_v850_howto_table): Add support for R_V850_{32,16,8}.
3719
        (v850_reloc_map): Add translation from BFD_RELOC_{32,16,8}
3720
        to R_V850_{32,16,8}.
3721
 
3722
Fri Aug 30 18:06:04 1996  J.T. Conklin  
3723
 
3724
        * elf32-v850.c (reloc_type): Add R_V850_HI16_S.
3725
        (elf_v850_howto_table): Add info for HI16_S reloc.
3726
        (v850_reloc_map): Add HI_16_S reloc.
3727
        * reloc.c: Define BFD_RELOC_V850_* relocs.
3728
 
3729
Fri Aug 30 11:49:19 1996  Ian Lance Taylor  
3730
 
3731
        Add SH ELF support.
3732
        * elf32-sh.c: New file.
3733
        * elf.c (prep_headers): Handle bfd_arch_sh.
3734
        * elfcode.h (write_relocs): Handle absolute symbol.
3735
        * elf-bfd.h (_bfd_elf32_link_read_relocs): Declare.
3736
        (_bfd_elf64_link_read_relocs): Declare.
3737
        * elflink.h (NAME(_bfd_elf,link_read_relocs)): Rename from
3738
        elf_link_read_relocs.  Make globally visible.  Change all
3739
        callers.
3740
        (elf_link_input_bfd): Get external symbols from cache in
3741
        symtab_hdr->contents.  Get contents from cache in
3742
        elf_section_data.
3743
        * elfxx-target.h (bfD_elfNN_bfd_relax_section): Only define if not
3744
        already defined.
3745
        * reloc.c: Define BFD_RELOC_SH_* relocs.
3746
        * libbfd-in.h (_bfd_sh_align_load_span): Declare.
3747
        * coff-sh.c (sh_insns_conflict): Fix a return value.
3748
        (_bfd_sh_align_load_span): New globally visible function, broken
3749
        out of sh_align_load.
3750
        (sh_align_load): Call _bfd_sh_align_load_span.
3751
        (sh_swap_insns): Change relocs parameter to PTR.
3752
        * bfd-in2.h, libbfd.h: Rebuild.
3753
        * targets.c (bfd_elf32_sh_vec): Declare.
3754
        (bfd_elf32_shl_vec): Declare.
3755
        * config.bfd (sh-*-elf*): New target.
3756
        * configure.in (bfd_elf32_sh_vec): New target vector.
3757
        (bfd_elf32_shl_vec): New target vector.
3758
        * configure: Rebuild.
3759
        * Makefile.in: Rebuild dependencies.
3760
        (BFD32_BACKENDS): Add elf32-sh.o.
3761
        (BFD32_BACKENDS_CFILES): Add elf32-sh.c.
3762
 
3763
        * elf.c (map_sections_to_segments): Check that LMA does not skip a
3764
        page before checking D_PAGED.
3765
 
3766
        * ihex.c (ihex_scan): Removed unnecessary extbase variable.
3767
        (ihex_write_object_contents): Remove extbase; always use segbase
3768
        instead.
3769
 
3770
Thu Aug 29 16:52:17 1996  Michael Meissner  
3771
 
3772
        * configure.in (i[345]86-*-*): Recognize i686 for pentium pro.
3773
        * configure.host (i[345]86-*-*): Ditto.
3774
        * config.bfd (i[345]86-*-*): Ditto.
3775
        * configure: Regenerate.
3776
 
3777
        * config.bfd (i[3456]86-*-dgux*): Recognize as a synonym for x86
3778
        elf.
3779
 
3780
Tue Aug 27 09:18:18 1996  Jeffrey A Law  (law@cygnus.com)
3781
 
3782
        * elf32-hppa.c (hppa_elf_gen_reloc_type): Add new argument.
3783
        * elf32-hppa.h (hppa_elf_gen_reloc_type): Update prototype.
3784
        * som.c (hppa_som_gen_reloc_type): Add new argument.  If
3785
        we encounter an R_DATA_ONE_SYMBOL reloc against a symbol that
3786
        will have an ST_CODE type, change the symbol's type to ST_DATA.
3787
        * som.c (hppa_som_gen_reloc_type): Update prototype.
3788
 
3789
Tue Aug 27 00:12:22 1996  Ian Lance Taylor  
3790
 
3791
        * elf32-mips.c (mips_elf_check_relocs): Set dynobj if needed for
3792
        R_MIPS_32 and R_MIPS_REL32.  Set sgot and g as soon as possible.
3793
        (mips_elf_size_dynamic_sections): Don't require .got to exist.
3794
        (mips_elf_finish_dynamic_sections): Likewise.
3795
 
3796
Thu Aug 22 10:54:38 1996  Ian Lance Taylor  
3797
 
3798
        * configure.host (HLDENV): New variable to set.  Set it for
3799
        *-*-sysv4*, since those linkers may not support -R but they always
3800
        support LD_RUN_PATH.
3801
 
3802
        * libieee.h (NSECTIONS): Don't define.
3803
        (ieee_data_struct): Change section_table to asection **.  Add
3804
        section_table_size.
3805
        * ieee.c (get_section_entry): If the table isn't big enough, make
3806
        it bigger.
3807
        (ieee_slurp_sections): Remove assertion about number of sections.
3808
        (ieee_object_p): Adjust initialization of ieee to match changes to
3809
        the structure.
3810
 
3811
        * xcofflink.c (xcoff_mark): Don't copy relocs for undefined
3812
        symbols merely because we are generating a shared library.
3813
        (xcoff_build_ldsyms): Don't set up global linkage code for an
3814
        undefined symbol merely because we are generating a shared
3815
        library.
3816
 
3817
Tue Aug 20 15:06:05 1996  J.T. Conklin  
3818
 
3819
        * Makefile.in (ALL_MACHINES): Add cpu-v850.o.
3820
        (BFD32_BACKENDS) Add elf32-v850.o.
3821
        * archures.c: Add bfd_v850_arch.
3822
        * bfd-in2.h: Add bfd_v850_arch.
3823
        * config.bfd (v850-*-*): New target.
3824
        * configure: (bfd_elf32_v850_vec) New vector.
3825
        * configure.in: (bfd_elf32_v850_vec) New vector.
3826
        * cpu-v850.c: New file.
3827
        * elf.c (prep_headers): Added case bfd_arch_v850.
3828
        * elf32-v850.c: New file.
3829
        * targets.c (bfd_elf32_v850_vec): New vector.
3830
 
3831
Fri Aug 16 16:25:35 1996  Ian Lance Taylor  
3832
 
3833
        * xcofflink.c (xcoff_link_add_dynamic_symbols): Create and define
3834
        a function code symbol for an XMC_XO symbol.
3835
 
3836
Thu Aug 15 12:33:29 1996  Stan Shebs  
3837
 
3838
        * mpw-config.in: Update editing of autoconf vars to reflect
3839
        Jul 18 configure.in change.
3840
        * mpw-make.sed: Update editing of include pathnames to be
3841
        more general, add @DASH_C_FLAG@ to explicit compile rule edit.
3842
 
3843
Thu Aug 15 10:35:13 1996  Richard Henderson  
3844
 
3845
        * elf64-alpha.c (elf64_alpha_output_extsym): The section from
3846
        which to offset to get the .plt entry address is ".plt".
3847
 
3848
Thu Aug 15 16:40:30 1996  James G. Smith  
3849
 
3850
        * reloc.c: (BFD_RELOC_ARM_THUMB_ADD, BFD_RELOC_ARM_THUMB_IMM,
3851
        BFD_RELOC_ARM_THUMB_SHIFT, BFD_RELOC_ARM_THUMB_OFFSET):
3852
        Added, for internal use by the ARM gas.
3853
        * libbfd.h: Rebuilt
3854
        * bfd-in2.h: Rebuilt
3855
 
3856
Wed Aug 14 17:02:09 1996  Richard Henderson  
3857
 
3858
        * elf64-alpha.c (elf64_alpha_size_dynamic_sections): Correct typo
3859
        in section dynidx start.
3860
 
3861
Tue Aug 13 14:35:38 1996  Ian Lance Taylor  
3862
 
3863
        * elf.c (_bfd_elf_make_section_from_shdr): Treat sections whose
3864
        name begins with .gnu.linkonce as SEC_LINK_ONCE.  This is an
3865
        optimization for g++.
3866
 
3867
Tue Aug 13 17:04:40 1996  Michael Meissner  
3868
 
3869
        * elf32-ppc.c (ppc_elf_merge_private_bfd_data): If one module has
3870
        the -mrelocatable-lib bit set and the other doesn't, clear the
3871
        -mrelocatable-lib bit in the header.
3872
 
3873
Sat Aug 10 22:59:17 1996  Ian Lance Taylor  
3874
 
3875
        * elflink.h (elf_link_add_object_symbols): Do not resolve a common
3876
        symbol against a STT_FUNC symbol in a shared library.
3877
 
3878
Fri Aug  9 12:44:57 1996  Ian Lance Taylor  
3879
 
3880
        * xcofflink.c (xcoff_link_add_dynamic_symbols): If a descriptor
3881
        symbol is found, automatically define the corresponding function
3882
        code.
3883
 
3884
        * cofflink.c (coff_link_add_symbols): Only set (*sym_hash)->numaux
3885
        if sym.n_numaux is not zero.
3886
        (_bfd_coff_link_input_bfd): Permit the symbol and the hash table
3887
        entry to disagree about the number of aux entries if the symbol
3888
        has zero.
3889
 
3890
        * elf32-mips.c (mips_elf_check_relocs): Create the .rel.dyn
3891
        section if it might be needed, not just if info->shared.
3892
        (mips_elf_adjust_dynamic_symbol): Make room for a null element at
3893
        the start of .rel.dyn if we are going to use it.
3894
        (mips_elf_finish_dynamic_sections): Only clear the first element
3895
        of .rel.dyn if the size is greater than zero.
3896
 
3897
Thu Aug  8 16:24:55 1996  Ian Lance Taylor  
3898
 
3899
        * xcofflink.c (xcoff_link_input_bfd): If we already called the
3900
        undefined_symbol callback for a symbol, then don't issue any more
3901
        warnings about loader relocs.
3902
        (_bfd_ppc_xcoff_relocate_section): Don't do any further processing
3903
        after calling the undefined_symbol callback.
3904
 
3905
        * xcofflink.c (XCOFF_MULTIPLY_DEFINED): Define.
3906
        (xcoff_link_add_symbols): Permit multiple definitions of a symbol
3907
        as the AIX linker seems to do.
3908
 
3909
Thu Aug  8 12:21:56 1996  Klaus Kaempf  
3910
 
3911
        * evax-alpha.c (evax_alpha_vec): Corrected flags, cleanup.
3912
        (evax_initialize): Remove evax_reloc_table.
3913
        (evax_close_and_cleanup): Ditto.
3914
        (reloc_nil): Ditto.
3915
        (alpha_howto_table): Remove ALPHA_R_SWREL32 and ALPHA_R_SWREL64
3916
        entries.
3917
        (evax_bfd_reloc_type_lookup): Ditto.
3918
        * evax-egsd.c (_bfd_evax_slurp_egsd): Add a few casts; set
3919
        cooked_size == raw_size.
3920
        * evax-emh.c (_bfd_evax_register_filename): Remove.
3921
        * evax-etir.c (etir_stc): Allow ETIR_S_C_STC_xx commands.
3922
        * evax-misc.c (add_new_contents): Malloc section at full size.
3923
        (_bfd_save_evax_section): Memcpy section contents directly.
3924
        * evax.h (ALPHA_R_SWREL32, ALPHA_R_SWREL64): Remove.
3925
        (evax_reloc_table): Remove.
3926
 
3927
        * hosts/alphavms.h (O_ACCMODE): Define if needed.
3928
 
3929
        * makefile.vms: Add better support for DEC C compilation
3930
        Add evax.h dependencies
3931
 
3932
        * reloc.c (bfd_get_reloc_size): Add case for 16 byte reloc.
3933
        (BFD_RELOC_SWREL32,BFD_RELOC_SWREL64): Remove.
3934
        (BFD_RELOC_ALPHA_BASEREG): Remove.
3935
        * bfd-in2.h, libbfd.h: Rebuild.
3936
 
3937
Thu Aug  8 08:17:32 1996  Stu Grossman  (grossman@critters.cygnus.com)
3938
 
3939
        * archive.c (bsd_write_armap):  Ifdef around calls to getuid and
3940
        getgid if _WIN32 is defined.
3941
        * opncls.c (bfd_fdopenr):  Remove unnecessary WINGDB ifdef.
3942
 
3943
Wed Aug  7 23:19:00 1996  Stu Grossman  (grossman@critters.cygnus.com)
3944
 
3945
        * aoutx.h bfd-in.h bfd-in2.h opncls.c riscix.c som.c targets.c:
3946
        Change NO_FLAGS to BFD_NO_FLAGS to avoid conflict with an HPUX
3947
        include file.
3948
        * libbfd.c:  Create dummy getpagesize() macro if HAVE_GETPAGESIZE
3949
        isn't defined.
3950
 
3951
Wed Aug  7 14:11:44 1996  Philippe De Muyter  
3952
 
3953
        * configure.in: Call BFD_NEEDED_DECLARATION on strstr and
3954
        realloc.
3955
        * acconfig.h (NEED_DECLARATION_STRSTR): New macro.
3956
        (NEED_DECLARATION_REALLOC): New macro.
3957
        * configure, config.in: Rebuild.
3958
        * sysdep.h (strstr): Declare if NEED_DECLARATION_STRSTR.
3959
        (realloc): Declare if NEED_DECLARATION_REALLOC.
3960
 
3961
        * aclocal.m4 (BFD_NEED_DECLARATION): Include  or
3962
         if they exist.
3963
 
3964
        * ieee.c (ieee_set_section_contents): Cast bfd_alloc return.
3965
 
3966
Wed Aug  7 12:12:03 1996  Ian Lance Taylor  
3967
 
3968
        * cpu-i386.c (i8086_arch): Architecture info for the i8086.
3969
 
3970
        Based on patches from Eric Valette :
3971
        * elf32-i386.c (enum reloc_type): Add FIRST_INVALID_RELOC,
3972
        LAST_INVALID_RELOC, R_386_16, R_386_PC16, R_386_8, R_386_PC8.
3973
        (elf_howto_table): Add entries for new relocs.
3974
        (elf_i386_reloc_type_lookup): Handle new relocs.
3975
        (elf_i386_info_to_howto): Just call abort.
3976
        (elf_i386_info_to_howto_rel): Check that the reloc type is valid.
3977
        (elf_i386_relocate_section): Likewise.
3978
 
3979
Tue Aug  6 12:54:56 1996  Martin M. Hunt  
3980
 
3981
        * elf32-d10v.c (elf_d10v_howto_table): Added R_D10V_32.
3982
 
3983
Mon Aug  5 13:42:41 1996  Ian Lance Taylor  
3984
 
3985
        * elf.c (_bfd_elf_make_section_from_shdr): For a loadable section,
3986
        only get the LMA from the phdr if they are in the same part of the
3987
        file.
3988
 
3989
        * elf.c (map_sections_to_segments): Rewrite tests for starting a
3990
        new segment to make them more comprehensible.  If the relationship
3991
        between the LMA and the VMA changed, start a new segment.  Don't
3992
        check dynsec when deciding whether to start a new segment for a
3993
        writeable section; -N will now handle this.
3994
 
3995
Thu Aug  1 22:43:08 1996  Jeffrey A Law  (law@cygnus.com)
3996
 
3997
        * libhppa.h: Remove "esel" changes.  Not the right approach.
3998
        * som.c: Corresponding changes.
3999
        (som_bfd_derive_misc_symbol_info): Use ST_DATA for symbols
4000
        which don't have a SOM symbol type associated with them.
4001
        Reverses a 1994 change.
4002
 
4003
Wed Jul 31 15:50:55 1996  Ian Lance Taylor  
4004
 
4005
        Make ld -N more reasonable for ELF:
4006
        * elf.c (map_sections_to_segments): If D_PAGED is not set, set
4007
        phdr_in_section to false, and always use a single load segment.
4008
        (elf_sort_sections): Sort sections by LMA after VMA.
4009
        (assign_file_positions_for_segments): If D_PAGED is not set, don't
4010
        align to maxpagesize.
4011
        (assign_file_positions_except_relocs): Likewise.
4012
        * elfcode.h (elf_object_p): If a section is loaded but not page
4013
        aligned, clear D_PAGED.
4014
 
4015
Wed Jul 31 15:00:12 1996  James G. Smith  
4016
 
4017
        * reloc.c: (BFD_RELOC_ARM_OFFSETIMM8, BFD_RELOC_ARM_HWLITERAL):
4018
        Added, for internal use by the ARM gas.
4019
        * libbfd.h: Rebuilt
4020
        * bfd-in2.h: Rebuilt
4021
 
4022
Tue Jul 30 14:14:57 1996  Jeffrey A Law  (law@cygnus.com)
4023
 
4024
        * libhppa.h (R_HPPA_ESEL): New field selector.
4025
        (e_esel): Similarly.
4026
        * som.c (hppa_som_gen_reloc_type): If we encounter an e_esel,
4027
        then generate R_COMP2 (PUSH_SYM), R_DATA_EXPR fixup stream.
4028
        (som_write_fixups): Handle R_DATA_EXPR just like R_CODE_EXPR.
4029
 
4030
Tue Jul 30 13:31:27 1996  Ian Lance Taylor  
4031
 
4032
        * xcofflink.c (_bfd_xcoff_bfd_link_add_symbols): Do the regular
4033
        archive search before looking for stripped dynamic objects.
4034
 
4035
Fri Jul 26 17:51:39 1996  Ian Lance Taylor  
4036
 
4037
        * xcofflink.c (xcoff_build_ldsyms): Make exporting an undefined
4038
        symbol a warning rather than an error.
4039
 
4040
Wed Jul 24 12:02:53 1996  Ian Lance Taylor  
4041
 
4042
        * elf.c (assign_file_positions_for_segments): Track the virtual
4043
        memory position separately from the file position, and use it to
4044
        compute the alignment adjustment.
4045
 
4046
Tue Jul 23 10:43:31 1996  Martin M. Hunt  
4047
 
4048
        * elf32-d10v.c (elf_d10v_howto_table): Changed all relocs to "long"
4049
        and fixed mask on R_D10V_10_PCREL_L.
4050
 
4051
Mon Jul 22 15:30:30 1996  Ian Lance Taylor  
4052
 
4053
        * elf64-mips.c: Include "aout/ar.h".
4054
        (mips_elf64_slurp_armap): New static function.
4055
        (mips_elf64_write_armap): New static function.
4056
        (bfd_elf64_archive_*): Define.
4057
        * elfxx-target.h (bfd_elfNN_archive_p): Define if not defined.
4058
        Use instead of bfd_generic_archive_p.
4059
        (bfd_elfNN_write_archive_contents): Define if not defined.  Use
4060
        instead of _bfd_write_archive_contents.
4061
        (bfd_elfNN_mkdarchive): Define if not defined.  Use instead of
4062
        _bfd_generic_mkarchive.
4063
        (TARGET_BIG_SYM): If bfd_elfNN_archive_functions is defined, use
4064
        bfd_elfNN_archive in BFD_JUMP_TABLE_ARCHIVE rather than
4065
        _bfd_archive_coff.
4066
        (TARGET_LITTLE_SYM): Likewise.
4067
        * archive.c (bfd_slurp_armap): Check for and reject an archive map
4068
        name of /SYM64/.
4069
        * Makefile.in: Rebuild dependencies.
4070
 
4071
        * elf32-mips.c (_bfd_mips_elf_final_write_processing): Handle
4072
        SHT_MIPS_LIBLIST, SHT_MIPS_CONTENT, SHT_MIPS_SYMBOL_LIB, and
4073
        SHT_MIPS_EVENTS sections.
4074
        (_bfd_mips_elf_section_from_shdr): Handle SHT_MIPS_IFACE,
4075
        SHT_MIPS_CONTENT, SHT_MIPS_SYMBOL_LIB, and SHT_MIPS_EVENTS
4076
        sections.
4077
        (_bfd_mips_elf_fake_sections): Likewise.
4078
 
4079
        * libecoff.h (ecoff_data_type): Add rdata_in_text field.
4080
        * ecoff.c (ecoff_compute_section_file_positions): Copy
4081
        rdata_in_text from backend info to tdata.  Clear it if any data
4082
        section comes before .rdata.
4083
        (_bfd_ecoff_write_object_contents): Use rdata_in_text field in
4084
        tdata rather than backend info.
4085
 
4086
Fri Jul 19 18:15:51 1996  Ian Lance Taylor  
4087
 
4088
        * configure.in: Fix test for whether a compiler has a 64 bit
4089
        type.  From Jim Wilson .
4090
 
4091
Thu Jul 18 15:39:10 1996  Ian Lance Taylor  
4092
 
4093
        * configure.host (mips-sgi-irix6*): New host.
4094
 
4095
        * configure.in: Set and substitute VERSION, BFD_HOST_64BIT_LONG
4096
        (replacing HOST_64BITLONG), BFD_HOST_64_BIT_DEFINED,
4097
        BFD_HOST_64_BIT, and BFD_HOST_U_64_BIT.  Add bfd-in2.h:bfd-in2.h
4098
        to AC_OUTPUT call.
4099
        * configure: Rebuild.
4100
        * bfd-in.h (BFD_ARCH_SIZE): Define as @wordsize@, not @WORDSIZE@.
4101
        (BFD_HOST_64_BIT): Define conditionally.
4102
        (BFD_HOST_U_64_BIT): Define when BFD_HOST_64_BIT is defined.
4103
        (bfd_vma): Typedef as BFD_HOST_U_64_BIT.
4104
        (symvalue, bfd_size_type): Likewise.
4105
        * bfd-in2.h: Rebuild.
4106
        * Makefile.in (do_clean): Remove bfd-tmp.h.
4107
        (do_distclean): Remove bfd-in3.h.
4108
        (stmp-bfd.h): Just do copy-if-change bfd-in3.h bfd.h.
4109
        (bfd-in3.h): New target.
4110
 
4111
        * config.bfd (sparc-*-sysv4*): Don't build sunos_big_vec.  From
4112
        Andrew Gierth .
4113
 
4114
        * configure.host: Set INSTALL_SHLIB.
4115
        * configure.in: Call AC_SUBST (INSTALL_SHLIB).
4116
        * configure: Rebuild.
4117
        * Makefile.in (install): Use @INSTALL_SHLIB@.
4118
 
4119
        * config.bfd (mips*-*-irix6*): New target.
4120
        * configure.host: Handle Irix 6 shared library like Irix 5.
4121
 
4122
        * xcofflink.c (xcoff_link_add_symbols): Don't check an XMC_TD
4123
        symbol for a magic name.
4124
        (xcoff_link_input_bfd): Don't change the reloc symbol for an
4125
        XMC_TD symbol.
4126
        (_bfd_ppc_xcoff_relocate_section): Don't get the TOC offset for an
4127
        XMC_TD symbol.
4128
 
4129
Thu Jul 18 11:36:31 1996  Stan Shebs  
4130
 
4131
        * mpw-config.in: Add ELF support to mips config, create the
4132
        elf32-target.h file in the object dir.
4133
        * mpw-make.sed: Edit elfXX-target.h refs at beginnings of lines.
4134
 
4135
Wed Jul 17 18:02:32 1996  Kim Knuttila  
4136
 
4137
        * coff-ppc.c: Redid debug scheme - numerous fprintf's gone.
4138
        Also removed most abort calls, in favor of using bfd reporting.
4139
 
4140
Wed Jul 17 14:51:52 1996  Martin M. Hunt  
4141
 
4142
        * Makefile.in (ALL_MACHINES): Add cpu-d10v.o.
4143
        (BFD32_BACKENDS) Add elf32-d10v.o.
4144
        * archures.c: Add bfd_d10v_arch.
4145
        * bfd-in2.h: Add bfd_d10v_arch.
4146
        * config.bfd (d10v-*-*): New target.
4147
        * configure: (bfd_elf32_d10v_vec) New vector.
4148
        * configure.in: (bfd_elf32_d10v_vec) New vector.
4149
        * cpu-d10v.c: New file.
4150
        * elf.c (prep_headers): Added case bfd_arch_d10v.
4151
        * elf32-d10v.c: New file.
4152
        * libbfd.h: Rebuild.
4153
        * reloc.c (BFD_RELOC_D10V_10_PCREL_R, BFD_RELOC_D10V_10_PCREL_L,
4154
        BFD_RELOC_D10V_18, BFD_RELOC_D10V_18_PCREL): Define.
4155
        * targets.c (bfd_elf32_d10v_vec): New vector.
4156
 
4157
Wed Jul 17 10:58:55 1996  Kim Knuttila  
4158
 
4159
        * coff-ppc.c (coff_ppc_relocate_section): Removed bogus fprintf
4160
 
4161
Tue Jul 16 23:49:02 1996  Stu Grossman  (grossman@critters.cygnus.com)
4162
 
4163
        * archures.c bfd-in2.h:  Add bfd_mach_i386_i386 and
4164
        bfd_mach_i386_i8086 machine types.
4165
 
4166
Wed Jul 10 12:42:56 1996  Ian Lance Taylor  
4167
 
4168
        * ecoff.c (_bfd_ecoff_new_section_hook): Set SEC_CODE for _INIT
4169
        and _FINI sections.
4170
 
4171
Wed Jul 10 11:18:21 1996  Richard Henderson  
4172
 
4173
        * coffcode.h (coff_set_section_contents): A/UX does not require
4174
        special handling of the _LIB section.
4175
 
4176
Tue Jul  9 15:52:20 1996  Jeffrey A Law  (law@cygnus.com)
4177
 
4178
        * coff-h8300.c (h8300_reloc16_extra_cases): Use the correct
4179
        value for R_RELBYTE.
4180
 
4181
        * reloc16.c (bfd_coff_reloc16_relax_section): Only "shrinks"
4182
        array if one was allocated.
4183
 
4184
Tue Jul  9 12:21:54 1996  Ian Lance Taylor  
4185
 
4186
        From Kazumoto Kojima :
4187
        * elf32-mips.c (struct mips_elf_link_hash_table): Add new fields
4188
        use_rld_obj_head and rld_value.
4189
        (mips_elf_link_hash_table_create): Initialize new fields.
4190
        (mips_elf_add_symbol_hook): Mark __rld_obj_head symbol as
4191
        dynamic.
4192
        (mips_elf_create_dynamic_sections): Create .rld_map section.  If
4193
        __rld_obj_head symbol not seen, create an __rld_map symbol.
4194
        (mips_elf_size_dynamic_sections): Make space in .rld_map section.
4195
        Create a DT_MIPS_RLD_MAP entry rather than a DT_DEBUG entry.
4196
        (mips_elf_finish_dynamic_symbol): Save value of __rld_map or
4197
        __rld_obj_head symbol.
4198
        (mips_elf_finish_dynamic_sections): Handle DT_MIPS_RLD_MAP.
4199
 
4200
Mon Jul  8 16:18:03 1996  Ian Lance Taylor  
4201
 
4202
        * elf32-mips.c (mips_reloc_map): Remove BFD_RELOC_32_PCREL entry.
4203
 
4204
        * elf32-ppc.c (ppc_elf_howto_raw): For R_PPC_ADDR16_HA, use
4205
        ppc_elf_addr16_ha_reloc.
4206
        (ppc_elf_addr16_ha_reloc): New static function.
4207
 
4208
        * coff-mips.c (struct mips_hi): Define.
4209
        (mips_refhi_list): New static variable.
4210
        (mips_refhi_addr, mips_refhi_addend): Remove.
4211
        (mips_refhi_reloc): Maintain a list of unmatched REFHI relocs.
4212
        (mips_reflo_reloc): Process mips_refhi_list.
4213
        (mips_relhi_list): New static variable.
4214
        (mips_relhi_addr, mips_relhi_addend): Remove.
4215
        (mips_relhi_reloc): Maintain a list of unmatched RELHI relocs.
4216
        (mips_rello_reloc): Process mips_relhi_list.
4217
        (mips_relocate_section): Permit an arbitrary number of REFHI or
4218
        RELHI relocs before the associated REFLO or RELLO reloc.
4219
 
4220
Fri Jul  5 19:27:49 1996  Ian Lance Taylor  
4221
 
4222
        * aout-target.h (MY(callback)): Set reloc_count fields.
4223
 
4224
Thu Jul  4 12:00:37 1996  Ian Lance Taylor  
4225
 
4226
        * sunos.c (sunos_add_dynamic_symbols): Don't create dynamic
4227
        sections unless this is a SunOS link.
4228
 
4229
        * VERSION: Set to 2.7.1.
4230
 
4231
        * Released binutils 2.7.
4232
 
4233
Wed Jul  3 14:59:47 1996  Ian Lance Taylor  
4234
 
4235
        * i386aout.c: Include "aout/aout64.h".
4236
        (i386aout_write_object_contents): New static function.
4237
        (MY_write_object_contents): Define.
4238
 
4239
        * netbsd.h (MY(write_object_contents)): Make sure that
4240
        adjust_sizes_and_vmas is called before fiddling with the magic
4241
        number.
4242
 
4243
Tue Jul  2 23:30:39 1996  Ian Lance Taylor  
4244
 
4245
        * stabs.c (_bfd_link_section_stabs): Fix casts of psinfo.
4246
 
4247
Sun Jun 30 13:34:33 1996  Ian Lance Taylor  
4248
 
4249
        * libbfd-in.h (itos, stoi): Don't define.
4250
        * libbfd.h: Rebuild.
4251
        * i386lynx.c (KEEPIT): Define as udata.i.
4252
        (NAME(lynx,swap_std_reloc_out)): Don't use stoi.
4253
        (NAME(lynx,swap_ext_reloc_out)): Likewise.
4254
        * riscix.c (riscix_swap_std_reloc_out): Use udata.i rather than
4255
        flags.  Don't use stoi.
4256
 
4257
        * elf32-mips.c (ELF_MAGPAGESIZE): Change definition to 0x1000.
4258
 
4259
        * elf.c (map_sections_to_segments): Don't start a new segment for
4260
        a writable section if it's on the same page as the previous
4261
        segment.  Reset the writable variable for a readonly section.
4262
 
4263
Sat Jun 29 16:18:51 1996  Kim Knuttila  
4264
 
4265
        * peicode.h (coff_swap_aouthdr_in): Missing initializations of
4266
        first_thunk_address, thunk_size, and import_table_size.
4267
        * peicode.h: Improved some diagnostics regarding edata sections.
4268
 
4269
        * coff-ppc.c (coff_ppc_relocate_section): Earlier error check
4270
        on IMGLUE relocs.
4271
        (coff_ppc_relocate_section): Improved diagnostic for large TOCDEFN's.
4272
        (TARGET_LITTLE_SYM): Added missing D_PAGED.
4273
 
4274
Fri Jun 28 13:48:45 1996  Ian Lance Taylor  
4275
 
4276
        * xcofflink.c (xcoff_link_check_ar_symbols): An undefined symbol
4277
        with XCOFF_DEF_DYNAMIC set is really defined.
4278
        (xcoff_link_check_dynamic_ar_symbols): Likewise.
4279
        (xcoff_link_add_symbols): Only create special sections if using an
4280
        XCOFF hash table.
4281
 
4282
        * reloc.c (bfd_perform_relocation): Handle xcoff-powermac like
4283
        aixcoff-rs6000.
4284
        (bfd_install_relocation): Likewise.
4285
 
4286
Fri Jun 28 11:17:00 1996  Richard Henderson  
4287
 
4288
        * elf64-alpha.c (struct alpha_elf_link_hash_entry): Add flags
4289
        field.
4290
        (ALPHA_ELF_LINK_HASH_LU_ADDR): Define.
4291
        (ALPHA_ELF_LINK_HASH_LU_MEM): Define.
4292
        (ALPHA_ELF_LINK_HASH_LU_FUNC): Define.
4293
        (elf64_alpha_link_hash_newfunc): Initialize flags field.
4294
        (elf64_alpha_check_relocs): Record types of LITUSE entries that
4295
        are found for LITERAL relocs.
4296
        (elf64_alpha_adjust_dynamic_symbol): If a symbol has its address
4297
        taken, we cannot generate a .plt entry for the symbol.
4298
 
4299
Thu Jun 27 11:24:29 1996  Ian Lance Taylor  
4300
 
4301
        * configure.in: Add AC_ISC_POSIX, and check for setitimer and
4302
        sysconf functions (for gprof).
4303
        * configure, config.in: Rebuild.
4304
 
4305
Wed Jun 26 16:29:02 1996  Ian Lance Taylor  
4306
 
4307
        * ecoff.c (_bfd_ecoff_archive_p): Check the first object file in
4308
        an archive if it has a map.  If the object file has the wrong
4309
        xvec, reject it.
4310
 
4311
        * coff-alpha.c (alpha_adjust_reloc_in): Set the addend for a
4312
        BRADDR, SREL16, SREL32, or SREL64 reloc against an external
4313
        symbol.
4314
        (alpha_relocate_section): Likewise.
4315
 
4316
        * coffswap.h (coff_swap_reloc_out): Use RELSZ, not sizeof.
4317
        (coff_swap_filehdr_out): Use FILHSZ, not sizeof.
4318
        (coff_swap_sym_out): Use SYMESZ, not sizeof.
4319
        (coff_swap_aux_out): Use AUXESZ, not sizeof.
4320
        (coff_swap_lineno_out): Use LINESZ, not sizeof.
4321
        (coff_swap_aouthdr_out): Use AOUTSZ, not sizeof.
4322
        (coff_swap_scnhdr_out): Use SCNHSZ, not sizeof.
4323
        * peicode.h: Corresponding changes.
4324
 
4325
Tue Jun 25 15:28:34 1996  Michael Meissner  
4326
 
4327
        * elflink.h (elf_create_pointer_linker_section): Comment out code
4328
        dealing with making GOT pointers negative of the GOT symbol for
4329
        now.
4330
 
4331
Tue Jun 25 11:41:24 1996  Richard Henderson  
4332
 
4333
        * elf64-alpha.c (elf64_alpha_adjust_dynamic_symbol): Don't
4334
        increment the .rela.plt size until after we're done creating the
4335
        .plt entry.
4336
        (elf64_alpha_finish_dynamic_symbol): Change .plt entry to load the
4337
        .rela.plt offset directly rather than calculating it.
4338
 
4339
Mon Jun 24 17:15:10 1996  Jason Molenda  (crash@godzilla.cygnus.co.jp)
4340
 
4341
        * Makefile.in (bindir, libdir, datadir, mandir, infodir, includedir):
4342
        Use autoconf-set values.
4343
        * doc/Makefile.in (bindir, libdir, datadir, mandir, infodir,
4344
        includedir, INSTALL, INSTALL_PROGRAM, INSTALL_DATA): Use autoconf-set
4345
        values.
4346
        (docdir): Deleted.
4347
        * configure.in (AC_PREREQ): autoconf v2.5 or higher.
4348
        * configure: Rebuilt.
4349
 
4350
Mon Jun 24 22:50:35 1996  Jeffrey A Law  (law@cygnus.com)
4351
 
4352
        * som.c (som_write_fixups): Fix typo in R_END_TRY for exception
4353
        handling code > 1k away.
4354
 
4355
Mon Jun 24 18:41:06 1996  Michael Meissner  
4356
 
4357
        * elflink.h (elf_create_pointer_linker_section): If DEBUG is
4358
        defined, output whenever the symbol is updated.
4359
 
4360
Mon Jun 24 17:58:12 1996  Jouke Numan  
4361
 
4362
        * elf.c (elf_fake_sections): Don't set sh_addr of a non SEC_ALLOC
4363
        section to 0 if user_set_vma is set.
4364
        * elflink.h (elf_bfd_final_link): Likewise.
4365
 
4366
Sun Jun 23 20:42:51 1996  Doug Evans  
4367
 
4368
        Partially undo patch of Jun 20.
4369
        * coffcode.h (coff_set_alignment_hook): Use COFF_IMAGE_WITH_PE.
4370
        (coff_compute_section_file_positions): Likewise.
4371
        (coff_write_object_contents): Likewise.  Re-add deleted code, but
4372
        use #ifdef COFF_WITH_PE, not COFF_OBJ_WITH_PE.
4373
        * peicode.h (pe_bfd_copy_private_bfd_data): Re-add #ifdef.
4374
 
4375
Fri Jun 21 17:38:15 1996  Joel Sherrill  
4376
 
4377
        * config.bfd: Add support for *-*-rtems* configurations.
4378
 
4379
Fri Jun 21 15:19:59 1996  Ian Lance Taylor  
4380
 
4381
        * elf.c (prep_headers): Add bfd_arch_alpha case.
4382
 
4383
Fri Jun 21 12:35:27 1996  Richard Henderson  
4384
 
4385
        * elf64-alpha.c: New file.
4386
        * config.bfd (alpha-*-linuxecoff*): New target.
4387
        (alpha-*-linux*, alpha-*-elf*): New targets.
4388
        * configure.in (bfd_elf64_alpha_vec): New vector.
4389
        * configure: Rebuild.
4390
        * targets.c (bfd_elf64_alpha_vec): Declare.
4391
        (bfd_target_vector): Add bfd_elf64_alpha_vec if BFD64.
4392
        * reloc.c (BFD_RELOC_ALPHA_GPDISP): Define.
4393
        * bfd-in2.h, libbfd.h: Rebuild.
4394
        * Makefile.in: Rebuild dependencies.
4395
        (BFD64_BACKENDS): Add elf64-alpha.o.
4396
        (BFD64_BACKENDS_CFILES): Add elf64-alpha.c.
4397
 
4398
Thu Jun 20 18:14:25 1996  Ian Lance Taylor  
4399
 
4400
        * ecoff.c (ecoff_armap_hash): If hlog is 0, just return 0, rather
4401
        than relying on a right shift of 32.
4402
 
4403
Thu Jun 20 11:00:57 1996  Doug Evans  
4404
 
4405
        * coffcode.h (coff_set_alignment_hook): Change COFF_IMAGE_WITH_PE
4406
        ifdef to COFF_WITH_PE.
4407
        (coff_compute_section_file_positions): Likewise.
4408
        (coff_write_object_contents): Likewise.  Delete COFF_OBJ_WITH_PE.
4409
        * pe-{arm,i386,ppc}.c (COFF_OBJ_WITH_PE): Delete.
4410
        * peicode.h (pe_bfd_copy_private_bfd_data): Delete ifdef
4411
        COFF_IMAGE_WITH_PE, always include.
4412
 
4413
        * peicode.h (coff_swap_scnhdr_out): ".drectve" doesn't have trailing 0.
4414
 
4415
Wed Jun 19 11:37:52 1996  Ian Lance Taylor  
4416
 
4417
        * elf.c (map_sections_to_segments): Fix up the test for -Ttext to
4418
        approximate the correct answer if SIZEOF_HEADERS was not used.
4419
 
4420
        * binary.c (binary_set_section_contents): Set section file
4421
        position based on LMA rather than VMA.
4422
 
4423
Wed Jun 19 11:19:25 1996  Manfred Hollstein KS/EIC5 60/3/142 #40283  
4424
 
4425
        * linker.c (_bfd_generic_link_output_symbols): Don't output any
4426
        symbols if info->strip == strip_all.
4427
 
4428
Tue Jun 18 15:17:36 1996  Jeffrey A. Law  
4429
 
4430
        * coff-h8300.c: Remove #if 0 code.
4431
        (compatable): Don't allow mixing/matching of different architectures.
4432
 
4433
        * archures.c (bfd_mach_h8300s): Add.
4434
        * bfd-in2.h: Rebuilt.
4435
        * coff-h8300.c (funcvec_hash_newfunc): Handle H8/S too.
4436
        (BADMAG): Likewise.
4437
        (h8300_reloc16_estimate): Likewise.
4438
        (h8300_reloc16_extra_cases): Likewise.
4439
        (h8300_bfd_link_add_symbols): Likewise.
4440
        * coffcode.h (coff_set_arch_mach_hook): Likewise.
4441
        (coff_set_flags): Likewise.
4442
        * cpu-h8300.c (h8300_scan): Likewise.
4443
        Add H8/S to bfd_h8300_arch list.
4444
 
4445
Tue Jun 18 14:42:58 1996  Klaus Kaempf  
4446
 
4447
        Added support for Alpha OpenVMS:
4448
        * evax.h, evax-alpha.c, evax-egsd.c, evax-emh.c: New files.
4449
        * evax-etir.c, evax-misc.c, hosts/alphavms.h: New files.
4450
        * config.h-vms, makefile.vms: New files.
4451
        * config.bfd (alpha-*-*vms*): New target.
4452
        * configure.in (evax_alpha_vec): New target vector.
4453
        * configure: Rebuild.
4454
        * reloc.c (BFD_RELOC_SWREL32, BFD_RELOC_SWREL64): Define.
4455
        (BFD_RELOC_ALPHA_LINKAGE, BFD_RELOC_ALPHA_BASEREG): Define.
4456
        * targets.c (bfd_target_evax_flavour): Define.
4457
        (evax_alpha_vec): Declare.
4458
        (bfd_target_vector): Add ecoffalpha_little_vec and evax_alpha_vec
4459
        if BFD64 is defined.
4460
        * bfd-in2.h, libbfd.h: Rebuild.
4461
        * Makefile.in: Rebuild dependencies.
4462
        (BFD64_BACKENDS): Add evax-alpha.o, evax-egsd.o, evax-etir.o,
4463
        evax-emh.o, and evax-misc.o.
4464
        (BFD64_BACKENDS_CFILES): Add evax-alpha.c, evax-egsd.c,
4465
        evax-etir.c, evax-emh.c, and evax-misc.c.
4466
        (HFILES): Add evax.h.
4467
 
4468
Tue Jun 18 13:54:18 1996  Ian Lance Taylor  
4469
 
4470
        * coff-h8300.c (h8300_reloc16_extra_cases): Make name a const
4471
        pointer.
4472
        (h8300_bfd_link_add_symbols): Likewise.
4473
 
4474
Mon Jun 17 10:06:50 1996  Jeffrey A. Law  
4475
 
4476
        * som.h (R_HPPA_BEGIN_TRY, R_HPPA_END_TRY): Define.
4477
        * som.c (som_write_fixups): Handle R_BEGIN_TRY and R_END_TRY.
4478
 
4479
Mon Jun 17 12:49:11 1996  Ian Lance Taylor  
4480
 
4481
        * elf32-mips.c (mips_elf_relocate_section): Don't create a reloc
4482
        for R_MIPS_REL32 and R_MIPS_32 relocs if no dynamic sections were
4483
        created.
4484
        (mips_elf_check_relocs): Only create .rel.dyn for R_MIPS_REL32 and
4485
        R_MIPS_32 relocs if creating a shared library.
4486
 
4487
Thu Jun 13 20:14:51 1996  Doug Evans  
4488
 
4489
        * peicode.h (add_data_entry): Use pei_section_data rather than
4490
        _cooked_size.  Corresponds to May 13 change in coffcode.h.
4491
 
4492
Thu Jun 13 10:23:40 1996  Ian Lance Taylor  
4493
 
4494
        * cofflink.c (_bfd_coff_final_link): Handle long section names.
4495
        * coffcode.h (coff_write_object_contents): If there are long
4496
        section names, always set the f_symptr field, even if there are no
4497
        symbols.
4498
        * peicode.h (coff_swap_filehdr_in): Don't clear the f_symptr field
4499
        if there are no symbols.
4500
 
4501
        * coffgen.c (make_a_section_from_file): Check return value of
4502
        _bfd_coff_read_string_table.
4503
        (coff_real_object_p): Check return value of
4504
        make_a_section_from_file.
4505
        (_bfd_coff_read_string_table): Check that there are some symbols
4506
        before trying to read the string table size.
4507
 
4508
Wed Jun 12 11:16:37 1996  Ian Lance Taylor  
4509
 
4510
        * xcofflink.c (xcoff_link_add_symbols): When considering whether
4511
        to replace a symbol in a dynamic object with a symbol from another
4512
        dynamic object, do the replacement if the existing symbol is
4513
        global linkage code.
4514
 
4515
        * xcofflink.c (_bfd_ppc_xcoff_relocate_section): Check explicitly
4516
        for _ptrgl, and treat it as global linkage code.
4517
 
4518
        * aoutx.h (NAME(aout,find_nearest_line)): Notice if we find a
4519
        filename or N_SO symbol past the offset, and use it to indicate
4520
        that there is no line number or function when appropriate.
4521
 
4522
Tue Jun 11 15:24:48 1996  Ian Lance Taylor  
4523
 
4524
        * xcofflink.c (xcoff_build_ldsyms): Set XCOFF_DEF_REGULAR for a
4525
        common symbol defined by the linker.  Don't export function code
4526
        even if export_defineds is set.
4527
 
4528
Mon Jun 10 11:57:27 1996  Jeffrey A Law  (law@cygnus.com)
4529
 
4530
        * coff-h8300.c (howto_table): Add new entries for R_BCC_INV
4531
        and R_JMP_DEL.
4532
        (rtype2howto): Handle R_BCC_INV and R_JMP_DEL.
4533
        (h8300_symbol_address_p): New function.
4534
        (h8300_reloc16_estimate): Eliminate jumps made unnecessary by
4535
        relaxing.
4536
 
4537
Sun Jun  9 16:30:20 1996  Jeffrey A Law  (law@cygnus.com)
4538
 
4539
        * coff-h8300.c (h8300_reloc16_estimate): Fix many minor spacing
4540
        problems.
4541
        (h8300_reloc16_estimate, cases R_JMP1, R_JMP2): Adjust "dot"
4542
        correctly for the two variants.  Allow relaxing if the target
4543
        is 128 bytes away since after relaxation it'll be 126 bytes away.
4544
        (h8300_reloc16_estimate, case R_PCRWORD): Correctly adjust
4545
        "dot" and "value".  Allow relaxing if the target is 128 bytes
4546
        away since after relaxation it'll be 126 bytes away.
4547
        * reloc16.c (bfd_coff_reloc16_relax_section): Keep relaxing
4548
        the given section until nothing changes.
4549
 
4550
Thu Jun  6 15:24:45 1996  Richard Henderson  
4551
 
4552
        * ecoff.c (_bfd_ecoff_new_section_hook): Remove the _PDATA
4553
        alignment hack--we can get the lnnoptr info another way without
4554
        suddenly increasing the alignment requirements.  Set the flags for
4555
        the _PDATA section.
4556
        (ecoff_compute_section_file_positions): Do so.
4557
 
4558
Thu Jun  6 11:24:37 1996  Ian Lance Taylor  
4559
 
4560
        * ieee.c (ieee_write_object_contents): Put a timestamp in the file
4561
        to keep the HP emulator database happy.
4562
 
4563
        * config.bfd: Recognize powerpc-*-linux* and powerpcle-*-linux*.
4564
        From Kevin Buettner .
4565
 
4566
Wed Jun  5 15:16:04 1996  Ian Lance Taylor  
4567
 
4568
        * aoutx.h (translate_to_native_sym_flags): Don't try to print the
4569
        name of a NULL section.
4570
 
4571
Tue Jun  4 18:53:58 1996  Ian Lance Taylor  
4572
 
4573
        * linker.c (_bfd_generic_link_add_one_symbol): If notice_all is
4574
        set, always call the notice callback.
4575
 
4576
        * VERSION: Increment for bfdlink.h change.
4577
 
4578
Mon Jun  3 11:01:53 1996  Ian Lance Taylor  
4579
 
4580
        * coff-sh.c (COFF_DEFAULT_SECTION_ALIGNMENT_POWER): Set to 4.
4581
        (sh_relax_delete_bytes): Correct handling of differently sized
4582
        trailing alignment reloc.
4583
 
4584
        * bfd-in.h: Use #error if BFD_HOST_64_BIT can not be defined.
4585
        * bfd-in2.h: Rebuild.
4586
        * configure.in: Warn if there is no known 64 bit type.
4587
        * configure: Rebuild.
4588
 
4589
        * Makefile.in: Rebuild dependencies.
4590
        (BFD32_BACKENDS): Add ppcboot.o.
4591
        (BFD32_BACKENDS_CFILES): Add ppcboot.c.
4592
 
4593
        * elf32-mips.c (mips_elf_size_dynamic_sections): Initialize c.
4594
        From Per Fogelstrom .
4595
 
4596
Sat Jun  1 21:49:58 1996  Ian Lance Taylor  
4597
 
4598
        * elf64-mips.c (bfd_mips_elf64_swap_reginfo_in)
4599
        (bfd_mips_elf64_swap_reginfo_out): Move from here...
4600
        * elf32-mips.c (bfd_mips_elf64_swap_reginfo_in)
4601
        (bfd_mips_elf64_swap_reginfo_out): ...to here.
4602
 
4603
Fri May 31 13:51:28 1996  Ian Lance Taylor  
4604
 
4605
        * elf64-mips.c: Improve reloc special_functions and handling of
4606
        SHT_MIPS_OPTIONS section.
4607
        * elf32-mips.c (_bfd_mips_elf_hi16_reloc): Rename from
4608
        mips_elf_hi16_reloc and make globally visible.
4609
        (_bfd_mips_elf_lo16_reloc): Rename from mips_elf_lo16_reloc and
4610
        make globally visible.
4611
        (_bfd_mips_elf_got16_reloc): Rename from mips_elf_got16_reloc and
4612
        make globally visible.
4613
        (_bfd_mips_elf_gprel16_reloc): Rename from mips_elf_gprel16_reloc
4614
        and make globally visible.
4615
        (gprel16_with_gp): Check howto->src_mask before using value in
4616
        insn.
4617
        (_bfd_mips_elf_gprel32_reloc): Rename from mips_elf_gprel32_reloc
4618
        and make globally visible.
4619
        (gprel32_with_gp): Check howto->src_mask before fetching value.
4620
        (bfd_mips_elf_swap_options_in): New function.
4621
        (bfd_mips_elf_swap_options_out): New function.
4622
        (_bfd_mips_elf_set_private_flags): Rename from
4623
        mips_elf_set_private_flags and make globally visible.
4624
        (_bfd_mips_elf_copy_private_bfd_data): Rename from
4625
        mips_elf_copy_private_bfd_data and make globally visible.
4626
        (_bfd_mips_elf_merge_private_bfd_data): Rename from
4627
        mips_elf_merge_private_bfd_data and make globally visible.
4628
        (_bfd_mips_elf_section_from_shdr): Accept .MIPS.options as a name
4629
        for a SHT_MIPS_OPTIONS section.
4630
        (mips_elf32_section_from_shdr): Handle SHT_MIPS_OPTIONS section.
4631
        (_bfd_mips_elf_fake_sections): Consider .MIPS.options to be the
4632
        name of a SHT_MIPS_OPTIONS section.
4633
        (_bfd_mips_elf_set_section_contents): New function.
4634
        (mips_elf32_section_processing): Set the GP value in a
4635
        SHT_MIPS_OPTIONS section.
4636
        (_bfd_mips_elf_find_nearest_line): Rename from
4637
        mips_elf_find_nearest_line and make globally visible.
4638
        (bfd_elf32_set_section_contents): Define.
4639
        * elf-bfd.h (_bfd_mips_elf_hi16_reloc): Declare.
4640
        (_bfd_mips_elf_lo16_reloc): Declare.
4641
        (_bfd_mips_elf_gprel16_reloc): Declare.
4642
        (_bfd_mips_elf_got16_reloc): Declare.
4643
        (_bfd_mips_elf_gprel32_reloc): Declare.
4644
        (_bfd_mips_elf_set_private_flags): Declare.
4645
        (_bfd_mips_elf_copy_private_bfd_data): Declare.
4646
        (_bfd_mips_elf_merge_private_bfd_data): Declare.
4647
        (_bfd_mips_elf_find_nearest_line): Declare.
4648
        (_bfd_mips_elf_set_section_contents): Declare.
4649
 
4650
        * elf32-hppa.c (elf32_hppa_info_to_howto): Rename from
4651
        elf_info_to_howto.
4652
        (elf_info_to_howto): Define.
4653
        * elf32-sparc.c (elf32_sparc_info_to_howto): Rename from
4654
        elf_info_to_howto.
4655
        (elf_info_to_howto): Define.
4656
        * elf64-sparc.c (sparc64_elf_info_to_howto): Rename from
4657
        elf_info_to_howto.
4658
        (elf_info_to_howto): Define.
4659
 
4660
        * coff-w65.c (h8300_reloc16_estimate): Rename R_MOVB[12] to
4661
        R_MOV16B[12], to match change in coff/internal.h.
4662
 
4663
Thu May 30 12:38:49 1996  Ian Lance Taylor  
4664
 
4665
        * elf64-mips.c: Extensive additions to provide better support for
4666
        writing files and for gas.
4667
        * elf32-mips.c (_bfd_mips_elf_object_p): New function, broken out
4668
        of mips_elf_object_p.
4669
        (mips_elf32_object_p): Rename from mips_elf_object_p; call
4670
        _bfd_mips_elf_object_p.
4671
        (_bfd_mips_elf_final_write_processing): Rename from
4672
        mips_elf_final_write_processing and make globally visible.
4673
        (_bfd_mips_elf_fake_sections): Rename from
4674
        mips_elf_fake_sections and make globally visible.
4675
        (_bfd_mips_elf_section_from_bfd_section): Rename from
4676
        mips_elf_section_from_bfd_section and make globally visible.
4677
        (_bfd_mips_elf_section_processing): New function, broken out of
4678
        mips_elf_section_processing.
4679
        (mips_elf32_section_processing): Rename from
4680
        mips_elf_section_processing; call
4681
        _bfd_mips_elf_section_processing.
4682
        (_bfd_mips_elf_symbol_processing): Rename from
4683
        mips_elf_symbol_processing and make globally visible.
4684
        (_bfd_mips_elf_read_ecoff_info): Rename from
4685
        mips_elf_read_ecoff_info and make globally visible.
4686
        (mips_elf32_ecoff_debug_swap): Rename from
4687
        mips_elf_ecoff_debug_swap.
4688
        * elf.c (_bfd_elf_symbol_from_bfd_symbol): Use asymbol rather than
4689
        struct symbol_cache_entry.
4690
        (_bfd_elf_validate_reloc): New function, moved in from
4691
        elfcode.h:validate_reloc.
4692
        * elfcode.h (validate_reloc): Remove; moved into elf.c and renamed
4693
        to _bfd_elf_validate_reloc.  Change all callers.
4694
        * elf-bfd.h (bfd_section_from_shdr): Declare.
4695
        (_bfd_elf_symbol_from_bfd_symbol): Declare.
4696
        (_bfd_elf_validate_reloc): Declare.
4697
        (_bfd_mips_elf_object_p): Declare.
4698
        (_bfd_mips_elf_fake_sections): Declare.
4699
        (_bfd_mips_elf_section_from_bfd_section): Declare.
4700
        (_bfd_mips_elf_section_processing): Declare.
4701
        (_bfd_mips_elf_symbol_processing): Declare.
4702
        (_bfd_mips_elf_read_ecoff_info): Declare.
4703
        (_bfd_mips_elf_final_write_processing): Declare.
4704
        * elfxx-target.h (bfd_elfNN_get_reloc_upper_bound): Don't define
4705
        if already defined.
4706
 
4707
        * elf32-mips.c (mips_elf_object_p): Handle E_MIPS_ARCH_4.
4708
        (mips_elf_final_write_processing): Likewise.
4709
 
4710
Wed May 29 16:15:29 1996  Ian Lance Taylor  
4711
 
4712
        64-bit MIPS ELF ABI objdump support:
4713
        * elf64-mips.c: New file.
4714
        * Makefile.in: Rebuild dependencies.
4715
        (BFD64_BACKENDS): Add elf64-mips.o.
4716
        (BFD64_BACKENDS_CFILES): Add elf64-mips.c.
4717
        * config.bfd (mips*el-*-elf*) Add bfd_elf64_bigmips_vec and
4718
        bfd_elf64_littlemips_vec to targ_selvecs.
4719
        (mips*-*-elf*): Likewise.
4720
        * configure.in: Add bfd_elf64_bigmips_vec and
4721
        bfd_elf64_littlemips_vec to vector switch.
4722
        * configure: Rebuild.
4723
        * elf32-mips.c (_bfd_mips_elf_section_from_shdr): New function,
4724
        broken out of mips_elf_section_from_shdr.
4725
        (mips_elf32_section_from_shdr): Rename from
4726
        mips_elf_section_from_shdr.  Call new function.
4727
        (elf_backend_section_from_shdr): Update name of renamed function.
4728
        * elf-bfd.h (struct elf_size_info): Change second parameter of
4729
        write_out_phdrs to be const.  Likewise for second parameter of
4730
        swap_symbol_out.
4731
        (struct bfd_elf_section_data): Add rel_hdr2 field.
4732
        (bfd_elf32_swap_symbol_in): Change second parameter to be const.
4733
        (bfd_elf32_swap_symbol_out): Likewise.
4734
        (bfd_elf32_swap_reloc_in): Likewise.
4735
        (bfd_elf32_swap_reloc_out): Likewise.
4736
        (bfd_elf32_swap_reloca_in): Likewise.
4737
        (bfd_elf32_swap_reloca_out): Likewise.
4738
        (bfd_elf32_swap_phdr_in): Likewise.
4739
        (bfd_elf32_swap_phdr_out): Likewise.
4740
        (bfd_elf32_swap_dyn_in): Likewise.
4741
        (bfd_elf32_swap_dyn_out): Likewise.
4742
        (bfd_elf32_slurp_symbol_table): Declare.
4743
        (bfd_elf32_write_shdrs_and_ehdr): Declare.
4744
        (bfd_elf32_write_out_phdrs): Declare.
4745
        (bfd_elf64_swap_symbol_in): Change second parameter to be const.
4746
        (bfd_elf64_swap_symbol_out): Likewise.
4747
        (bfd_elf64_swap_reloc_in): Likewise.
4748
        (bfd_elf64_swap_reloc_out): Likewise.
4749
        (bfd_elf64_swap_reloca_in): Likewise.
4750
        (bfd_elf64_swap_reloca_out): Likewise.
4751
        (bfd_elf64_swap_phdr_in): Likewise.
4752
        (bfd_elf64_swap_phdr_out): Likewise.
4753
        (bfd_elf64_swap_dyn_in): Likewise.
4754
        (bfd_elf64_swap_dyn_out): Likewise.
4755
        (bfd_elf64_slurp_symbol_table): Declare.
4756
        (bfd_elf64_write_shdrs_and_ehdr): Declare.
4757
        (bfd_elf64_write_out_phdrs): Declare.
4758
        (_bfd_mips_elf_section_from_shdr): Declare.
4759
        * elf.c (bfd_section_from_shdr): Remove assertion requiring
4760
        SHT_REL/SHT_RELA to match use_rela_p.  If there is already a reloc
4761
        section for the section, add the new one to rel_hdr2.  Increment
4762
        reloc_count rather than setting it.
4763
        * elfcode.h (elf_slurp_symbol_table): Define name as macro.
4764
        Remove static declaration.
4765
        (elf_write_shdrs_and_ehdr): Define name as macro.
4766
        (elf_write_out_phdrs): Likewise.
4767
        (elf_swap_ehdr_in, elf_swap_ehdr_out): Declare.
4768
        (elf_swap_shdr_in, elf_swap_shdr_out): Declare.
4769
        (elf_swap_symbol_in): Change second parameter to be const.
4770
        (elf_swap_symbol_out): Likewise.
4771
        (elf_swap_ehdr_in, elf_swap_ehdr_out): Likewise.
4772
        (elf_swap_shdr_in, elf_swap_shdr_out): Likewise.
4773
        (elf_swap_phdr_in, elf_swap_phdr_out): Likewise.
4774
        (elf_swap_reloc_in, elf_swap_reloc_out): Likewise.
4775
        (elf_swap_reloca_in, elf_swap_reloca_out): Likewise.
4776
        (elf_write_out_phdrs): Rename from write_out_phdrs.  Change second
4777
        parameter to be const.  Make non-static.
4778
        (elf_write_shdrs_and_ehdr): Rename from write_shdrs_and_ehdr.
4779
        Make non-static.
4780
        (elf_slurp_symbol_table): Make non-static.
4781
        (NAME(_bfd_elf,size_info)): Update names of renamed functions.
4782
        * elfxx-target.h (elf_info_to_howto): Define if not defined.
4783
        (elf_backend_size_info): Likewise.
4784
        (elfNN_bed): Use elf_backend_size_info.
4785
        * targets.c (bfd_elf64_bigmips_vec): Declare.
4786
        (bfd_elf64_littlemips_vec): Declare.
4787
        (bfd_target_vector): Add bfd_elf64_bigmips_vec and
4788
        bfd_elf64_littlemips_vec if BFD64 is defined.
4789
 
4790
        * libbfd.c (bfd_get_file_window): Add cast to fprintf argument.
4791
 
4792
Tue May 28 11:42:08 1996  Ian Lance Taylor  
4793
 
4794
        * coff-sh.c (sh_relax_delete_bytes): Insert nop instructions, not
4795
        zeroes, in alignment holes.
4796
 
4797
        * configure: Rebuild with autoconf 2.10.
4798
 
4799
        * aoutx.h (NAME(aout,find_nearest_line)): Make room for the
4800
        potential leading underscore in the allocated buffer.
4801
 
4802
Fri May 24 14:28:38 1996  Michael Meissner  
4803
 
4804
        * elf32-ppc.c (ppc_elf_add_symbol_hook): Do not put small common
4805
        symbols into .sbss if this is a relocatable link.
4806
 
4807
Thu May 23 12:26:24 1996  Ian Lance Taylor  
4808
 
4809
        * xcofflink.c (_bfd_ppc_xcoff_relocate_section): Warn about
4810
        undefined symbols when creating a shared library.
4811
 
4812
Fri May 17 13:54:15 1996  Ian Lance Taylor  
4813
 
4814
        * coff-sh.c: Add a bunch of new code and static const arrays to
4815
        support aligning loads and stores on four byte memory boundaries.
4816
        Also:
4817
        (sh_coff_howtos): Add entries for R_SH_CODE, R_SH_DATA and
4818
        R_SH_LABEL.
4819
        (sh_relax_section): Look for R_SH_CODE relocs.  If we find one,
4820
        call sh_align_loads.
4821
        (sh_relax_delete_bytes): Don't mark R_SH_CODE or R_SH_DATA relocs
4822
        as unused.
4823
 
4824
Thu May 16 16:34:13 1996  Ian Lance Taylor  
4825
 
4826
        * cache.c (bfd_open_file): Unlink the file before opening it for
4827
        write.  From Marty Leisner .
4828
 
4829
        * opncls.c (bfd_fdopenr): Set opened_once.
4830
 
4831
Tue May 14 12:35:32 1996  Ian Lance Taylor  
4832
 
4833
        * som.c (som_slurp_reloc_table): Clear external_relocs cache after
4834
        freeing it.
4835
 
4836
        * libbfd.c: Remove #ifdef FILE_OFFSET_IS_CHAR_INDEX, and compile
4837
        the code unconditionally.
4838
 
4839
Mon May 13 19:51:37 1996  Ian Lance Taylor  
4840
 
4841
        * libcoff-in.h (struct pei_section_tdata): Define structure.
4842
        (pei_section_data): Define macro.
4843
        * libcoff.h: Rebuild.
4844
        * coffcode.h (coff_set_alignment_hook): If COFF_IMAGE_WITH_PE,
4845
        store s_paddr field in pei_section_data.
4846
        (coff_compute_section_file_positions): Use pei_section_data rather
4847
        than _cooked_size, and don't overwrite an existing value.
4848
        (coff_write_object_contents): If COFF_OBJ_WITH_PE, set s_paddr to
4849
        0.  If COFF_IMAGE_WITH_PE, set s_paddr to pei_section_data.
4850
        * peicode.h (coff_bfd_copy_private_section_data): Define if
4851
        COFF_IMAGE_WITH_PE.
4852
        (pe_bfd_copy_private_section_data): New static function if
4853
        COFF_IMAGE_WITH_PE.
4854
 
4855
Wed May  8 16:10:38 1996  Ian Lance Taylor  
4856
 
4857
        * srec.c (srec_set_arch_mach): Write as a function rather than a
4858
        macro definition.
4859
 
4860
        * xcofflink.c (_bfd_xcoff_bfd_link_add_symbols): If an archive has
4861
        no map, just check each member in turn to see whether it is
4862
        required.
4863
 
4864
Wed May  8 09:17:34 1996  Michael Meissner  
4865
 
4866
        * ppcboot.c (ppcboot_object_p): Check for type 0x41 in partition
4867
        table.  Call BFD_ASSERT to validate header size, instead of
4868
        calling fatal.
4869
        (ppcboot_bfd_print_private_bfd_data): Put quotes around partition
4870
        name.
4871
 
4872
Tue May  7 16:10:19 1996  Michael Meissner  
4873
 
4874
        * ppcboot.c: New target for looking at PPCbug boot records.
4875
 
4876
        * config{ure.in,.bfd}: Add support for ppcboot target.
4877
        * targets.c: Ditto.
4878
        * configure: Regenerate.
4879
 
4880
Tue May  7 11:15:19 1996  Jeffrey A Law  (law@cygnus.com)
4881
 
4882
        * coff-h8300.c (howto_table): Update names to match recent
4883
        changes to include/coff/internal.h.  Fix minor errors in the
4884
        existing relocs.  Add R_MOVL1 and R_MOVL2.
4885
        (rtype2howto): Similarly.
4886
        (h8300_reloc16_estimate): Rewrite to simplify, fix bugs in the
4887
        existing relaxing code  and peform more relaxing.
4888
        (h8300_reloc16_extra_cases): Likewise.
4889
 
4890
Mon May  6 18:24:09 1996  Jeffrey A Law  (law@cygnus.com)
4891
 
4892
        * reloc16.c (bfd_coff_reloc16_get_value): Handle common
4893
        symbols correctly.
4894
 
4895
Sat May  4 05:08:45 1996  Peter Schauer  (pes@regent.e-technik.tu-muenchen.de)
4896
 
4897
        * elfcode.h (elf_object_p):  Reject generic ELF target if
4898
        e_machine matches an alternate machine code in a specific backend.
4899
 
4900
        * netbsd-core.c (netbsd_core_vec):  Remove initializer for
4901
        obsolete align_power_min field.
4902
 
4903
Fri May  3 13:07:35 1996  Jeffrey A Law  (law@cygnus.com)
4904
 
4905
        * coff-h8300.c (reloc_howto_type): Add howto entry for
4906
        R_PCRWORD_B.
4907
        (rtype2howto): Handle R_PCRWORD_B.
4908
        (h8300_reloc16_extra_cases): Handle R_PCRWORD_B.
4909
        (h8300_reloc_16_estimate): Likewise.  Try to turn a 16bit
4910
        pc-relative branch (R_PCRWORD) into an 8bit pc-relative
4911
        branch (R_PCWORD_B).
4912
 
4913
Fri May  3 10:47:41 1996  Ian Lance Taylor  
4914
 
4915
        * aoutx.h (translate_from_native_sym_flags): Set the section for
4916
        BSF_CONSTRUCTOR symbols.
4917
 
4918
        * cofflink.c (_bfd_coff_link_input_bfd): Correct setting of
4919
        last_bf_index.
4920
 
4921
Wed May  1 18:39:32 1996  Doug Evans  
4922
 
4923
        * coffcode.h (coff_write_object_contents): In comdat section lookup,
4924
        stop looking when section is found.
4925
 
4926
Wed May  1 14:17:57 1996  Ian Lance Taylor  
4927
 
4928
        * coffcode.h (STRING_SIZE_SIZE): Define.
4929
        (styp_to_sec_flags): Handle long symbol names when looking for the
4930
        section symbol.
4931
        (bfd_coff_backend_data): Add _bfd_coff_long_section_names field.
4932
        (bfd_coff_long_section_names): Define.
4933
        (coff_write_object_contents): Handle long section names.
4934
        (bfd_coff_std_swap_table): Initialize new field.
4935
        * libcoff.h: Rebuild.
4936
        * coffgen.c (make_a_section_from_file): Handle long section
4937
        names.
4938
        (coff_write_symbols): Handle long section names.
4939
        * coff-alpha.c (alpha_ecoff_backend_data): Initialize new field.
4940
        * coff-mips.c (mips_ecoff_backend_data): Likewise.
4941
        * pe-arm.c (COFF_LONG_SECTION_NAMES): Define.
4942
        * pei-arm.c (COFF_LONG_SECTION_NAMES): Define.
4943
        * pe-i386.c (COFF_LONG_SECTION_NAMES): Define.
4944
        * pei-i386.c (COFF_LONG_SECTION_NAMES): Define.
4945
        * pe-ppc.c (COFF_LONG_SECTION_NAMES): Define.
4946
        * pei-ppc.c (COFF_LONG_SECTION_NAMES): Define.
4947
 
4948
        * bout.c (b_out_callback): Set lma of sections.
4949
        (b_out_bfd_get_relocated_section_contents): Rename in_abfd
4950
        parameter to output_bfd.  Used input_bfd instead of output_bfd in
4951
        several places.
4952
 
4953
Tue Apr 30 17:56:39 1996  Ian Lance Taylor  
4954
 
4955
        * aoutx.h (translate_from_native_sym_flags): Don't create
4956
        SEC_CONSTRUCTOR sections.
4957
        * ecoff.c (ecoff_set_symbol_info): Likewise.
4958
 
4959
        * elf32-mips.c (mips_elf_copy_private_bfd_data): Copy elf_gp.
4960
        From Don Bowman .
4961
 
4962
Tue Apr 30 17:06:32 1996  Doug Evans  
4963
 
4964
        * coff-arm.c (armcoff_little_vec): If COFF_WITH_PE is defined, add
4965
        SEC_LINK_ONCE and SEC_LINK_DUPLICATES to section_flags.
4966
 
4967
Mon Apr 29 13:15:17 1996  Ian Lance Taylor  
4968
 
4969
        * elf32-mips.c (struct mips_elf_link_hash_entry): Add
4970
        mips_32_relocs field.
4971
        (mips_elf_link_hash_newfunc): Initialize mips_32_relocs field.
4972
        (mips_elf_relocate_section): Copy R_MIPS_REL32 and R_MIPS_32
4973
        relocs against a global symbol which is not defined in a regular
4974
        file.
4975
        (mips_elf_check_relocs): For a R_MIPS_REL32 or R_MIPS_32 reloc
4976
        against a global symbol, increment mips_32_relocs.
4977
        (mips_elf_adjust_dynamic_symbol): If mips_32_relocs is set, and
4978
        the symbol is not defined in a regular file, make room in the
4979
        .rel.dyn section.
4980
 
4981
Fri Apr 26 18:00:37 1996  Ian Lance Taylor  
4982
 
4983
        * ecoff.c (ecoff_compute_section_file_positions): Track the real
4984
        file position and the virtual file position separately.  Set
4985
        filepos information bsaed on the real file position.
4986
        (_bfd_ecoff_set_section_contents): Handle .lib sections like the
4987
        Jan 23 change to coffcode.h.
4988
 
4989
        * som.c (som_slurp_symbol_table): Set the symbol count to the
4990
        number of BFD symbols created.
4991
 
4992
Fri Apr 26 12:34:29 1996  Michael Meissner  
4993
 
4994
        * elf32-ppc.c (ppc_elf_check_relocs): Forward relocations to the
4995
        output file if linking shared objects.  Loop to check all relocs,
4996
        rather than returning false on first error.
4997
 
4998
Thu Apr 25 13:25:12 1996  Michael Meissner  
4999
 
5000
        * elf32-ppc.c (ppc_elf_create_linker_section): Add PLT case.
5001
        (ppc_elf_additional_program_headers): If .interp section, bump #
5002
        of program headers by 1.
5003
        (ppc_elf_adjust_dynamic_symbol): Flesh out support.
5004
        (ppc_elf_size_dynamic_sections): Add support for .plt section.
5005
        (ppc_elf_check_relocs): Print out filename in debug code.  Enable
5006
        PLT support.
5007
        (ppc_elf_finish_dynamic_symbol): Add support for PLT's, beef up
5008
        debug output.
5009
        (ppc_elf_relocate_section): If the output section isn't defined,
5010
        don't abort, just give an error message.
5011
 
5012
        * elflink.c (_bfd_elf_create_dynamic_sections): If the section
5013
        being created is .sdata or .sdata2, don't make the symbol dynamic.
5014
 
5015
Wed Apr 24 14:04:07 1996  Ian Lance Taylor  
5016
 
5017
        * xcofflink.c (_bfd_xcoff_bfd_link_add_symbols): Look through the
5018
        members of an archive for dynamic objects with no symbols, and
5019
        pass them directly to check_archive_element.
5020
        (xcoff_link_check_ar_symbols): Pass dynamic objects to
5021
        xcoff_link_check_dynamic_ar_symbols.
5022
        (xcoff_link_check_dynamic_ar_symbols): New static function.
5023
 
5024
        * coff-rs6000.c (rs6000coff_vec): Change BFD_JUMP_TABLE_DYNAMIC
5025
        from _bfd_nodynamic to _bfd_xcoff.
5026
        * libcoff-in.h (_bfd_xcoff_get_dynamic_symtab_upper_bound):
5027
        Declare.
5028
        (_bfd_xcoff_canonicalize_dynamic_symtab): Declare.
5029
        (_bfd_xcoff_get_dynamic_reloc_upper_bound): Declare.
5030
        (_bfd_xcoff_canonicalize_dynamic_reloc): Declare.
5031
        * libcoff.h: Rebuild.
5032
        * xcofflink.c (xcoff_swap_ldrel_in): New static function.
5033
        (xcoff_get_section_contents): New static function.
5034
        (_bfd_xcoff_get_dynamic_symtab_upper_bound): New function.
5035
        (_bfd_xcoff_canonicalize_dynamic_symtab): New function.
5036
        (_bfd_xcoff_get_dynamic_reloc_upper_bound): New function.
5037
        (xcoff_dynamic_reloc): New static variable.
5038
        (_bfd_xcoff_canonicalize_dynamic_reloc): New function.
5039
        (xcoff_link_add_dynamic_symbols): Use xcoff_get_section_contents.
5040
 
5041
Tue Apr 23 12:48:42 1996  Ian Lance Taylor  
5042
 
5043
        * coff-sparc.c (bfd_coff_generic_reloc): Return bfd_reloc_ok even
5044
        if reloc_entry->addend is not 0.
5045
        (CALC_ADDEND): Just set the addend to reloc.r_offset.
5046
 
5047
Mon Apr 22 18:29:01 1996  Doug Evans  
5048
 
5049
        * elf32-sparc.c (_bfd_sparc_elf_howto_table): Fix spelling of
5050
        R_SPARC_GLOB_JMP.
5051
        * elf64-sparc.c (sparc64_elf_howto_table): Likewise.
5052
        Add entries for R_SPARC_[56].
5053
        (sparc_reloc_map): Add entries for R_SPARC_[56].
5054
 
5055
Mon Apr 22 15:07:24 1996  Ian Lance Taylor  
5056
 
5057
        Optimize linking of stabs in sections as used in ELF and COFF.
5058
        * stabs.c: New file.
5059
        * libbfd-in.h (_bfd_link_section_stabs): Declare.
5060
        (_bfd_write_section_stabs): Declare.
5061
        (_bfd_write_stab_strings): Declare.
5062
        * libbfd.h: Rebuild.
5063
        * libcoff-in.h (struct coff_section_tdata): Add stab_info field.
5064
        (struct coff_link_hash_table): Add stab_info field.
5065
        * libcoff.h: Rebuild.
5066
        * cofflink.c (_bfd_coff_link_hash_table_init): Initialize
5067
        stab_info field.
5068
        (coff_link_add_symbols): Call _bfd_link_section_stabs if
5069
        appropriate.
5070
        (_bfd_coff_final_link): Write out stab strings hash table.
5071
        (_bfd_coff_link_input_bfd): Handle optimized stabs sections.
5072
        * coff-ppc.c (ppc_bfd_coff_final_link): Write out stab strings
5073
        hash table.
5074
        * elf-bfd.h (struct elf_link_hash_table): Add stab_info field.
5075
        (struct bfd_elf_section_data): Add stab_info field.
5076
        * elf.c (_bfd_elf_link_hash_table_init): Initialize stab_info
5077
        field.
5078
        * elflink.h (elf_link_add_object_symbols): If appropriate, call
5079
        _bfd_link_section_stabs.
5080
        (elf_bfd_final_link): Write out stab strings hash table.
5081
        (elf_link_input_bfd): Handle optimized stabs sections.
5082
        * reloc.c (_bfd_final_link_relocate): Check address against
5083
        _raw_size rather than _cooked_size.
5084
        * Makefile.in: Rebuild dependencies.
5085
        (BFD_LIBS): Add stabs.o
5086
        (BFD_LIBS_CFILES): Add stabs.c.
5087
 
5088
        * VERSION: Increment for bfdlink.h change.
5089
 
5090
        * coffgen.c (coff_renumber_symbols): Correct handling of
5091
        BSF_NOT_AT_END common symbols.
5092
 
5093
Fri Apr 19 19:21:56 1996  Ian Lance Taylor  
5094
 
5095
        * coff-ppc.c (record_toc): Add cast to avoid warning.
5096
        (ppc_allocate_toc_section): Likewise.
5097
        (coff_ppc_relocate_section): Remove ANSI C string concatenation.
5098
        (ppc_coff_reloc_type_lookup): Remove unreached code.
5099
        * coffcode.h (coff_write_object_contents): Don't take the address
5100
        of an array.
5101
        * peicode.h (pe_print_idata): Add casts to avoid warning.
5102
        (pe_print_edata): Likewise.
5103
        (pe_print_reloc): Remove ANSI C string concatenation.
5104
 
5105
Thu Apr 18 18:51:18 1996  Ian Lance Taylor  
5106
 
5107
        * libcoff-in.h (struct coff_final_link_info): Add last_bf_index
5108
        and last_bf fields.
5109
        * libcoff.h: Rebuild.
5110
        * coffswap.h (coff_swap_aux_in): Swap endndx field for C_FCN
5111
        symbols.
5112
        (coff_swap_aux_out): Likewise.
5113
        * peicode.h (coff_swap_aux_in): Likewise.
5114
        (coff_swap_aux_out): Likewise.
5115
        * coffgen.c (coff_pointerize_aux): Check endndx field for C_FCN
5116
        symbols.
5117
        * cofflink.c (_bfd_coff_final_link): Initialize last_bf_index
5118
        field.
5119
        (_bfd_coff_link_input_bfd): Check endndx field for C_FCN symbols.
5120
        Fix up .bf endndx link fields.
5121
        * coff-ppc.c (ppc_bfd_coff_final_link): Initialize last_bf_index
5122
        field.
5123
        * xcofflink.c (xcoff_link_input_bfd): Check endndx field for C_FCN
5124
        symbols.
5125
 
5126
Wed Apr 17 12:08:24 1996  Michael Meissner  
5127
 
5128
        * pe{,i}-ppc.c (PPC_PE): Define instead of PPC, so that compiling
5129
        on Solaris PowerPC systems doesn't get confused.
5130
 
5131
        * coffcode.h (coff_write_object_contents): Use #ifdef PPC_PE, not
5132
        #ifdef PPC.
5133
 
5134
        * elfcore.h (bfd_prstatus, bfd_fpregset): Add thread argument.
5135
        (elf_corefile_note): If HAVE_SYS_PROCFS_H is not defined, don't
5136
        update did_reg and did_reg2.
5137
 
5138
Wed Apr 17 13:07:37 1996  Ian Lance Taylor  
5139
 
5140
        * xcofflink.c (xcoff_link_input_bfd): Check for TOC overflow.
5141
 
5142
        * linker.c (_bfd_generic_link_add_one_symbol): When calling the
5143
        callback routines, pass h->root.string rather than name, in case
5144
        copy is true and name is transient.
5145
 
5146
Tue Apr 16 16:36:38 1996  Stu Grossman  (grossman@lisa.cygnus.com)
5147
 
5148
        * elfcore.h:  Add support for core files with multiple threads.
5149
        (Primarily for Solaris.)
5150
 
5151
Tue Apr 16 13:44:08 1996  Ian Lance Taylor  
5152
 
5153
        * aoutx.h (NAME(aout,squirt_out_relocs)): Don't do anything if
5154
        section->orelocation is NULL.
5155
 
5156
        * coffgen.c (bfd_coff_get_syment): New function.
5157
        (bfd_coff_get_auxent): New function.
5158
        * bfd-in.h (bfd_coff_get_syment): Declare.
5159
        (bfd_coff_get_auxent): Declare.
5160
        * bfd-in2.h: Rebuild.
5161
 
5162
Mon Apr 15 19:06:59 1996  Ian Lance Taylor  
5163
 
5164
        * elf32-mips.c (struct mips_hi16): Define.
5165
        (mips_hi16_addr, mips_hi16_addend): Remove.
5166
        (mips_hi16_list): New static variable.
5167
        (mips_elf_hi16_reloc): Maintain a list of unmatched HI16 relocs.
5168
        (mips_elf_lo16_reloc): Process mips_hi16_list.
5169
        (mips_elf_relocate_section): Permit an arbitrary number of HI16
5170
        relocs before the associated LO16 reloc.
5171
 
5172
Wed Apr 10 00:23:53 1996  Ian Lance Taylor  
5173
 
5174
        * versados.c (versados_scan): Check bfd_alloc return value.
5175
        (versados_object_p): Check all bfd_read return values.  Require
5176
        that lang field be less than 10, to avoid confusion with Intel Hex
5177
        files.
5178
 
5179
        * libaout.h (WRITE_HEADERS): Write out the relocs even if there
5180
        aren't any symbols.
5181
        * aoutx.h (NAME(aout,swap_std_reloc_out)): Set r_index to N_ABS,
5182
        not 0, for an absolute symbol.
5183
        (NAME(aout,swap_ext_reloc_out)): Likewise.
5184
 
5185
        * ihex.c (ihex_scan): Accept a length of 4 for record type 5.
5186
        (ihex_write_object_contents): For a large start address, output
5187
        the full 32 bit address in record type 5.
5188
 
5189
        * ieee.c (ieee_write_byte): Change second parameter from bfd_byte
5190
        to int to avoid promotion problems in prototype.
5191
 
5192
Tue Apr  9 11:44:21 1996  Ian Lance Taylor  
5193
 
5194
        * configure.host: Use ${srcdir} when looking for picfrag.
5195
 
5196
        * configure.host: Switch on ${libdir}, not $(libdir).  From
5197
        alan@spri.levels.unisa.edu.au (Alan Modra).
5198
 
5199
        * aoutx.h (aout_link_add_symbols): Always call add_dynamic_symbols
5200
        entry point, not just for DYNAMIC objects.
5201
        * sunos.c (sunos_add_dynamic_symbols): Always call
5202
        sunos_create_dynamic_sections.  If called with a non DYNAMIC
5203
        object, don't do anything else.
5204
        (sunos_add_one_symbol): Don't call sunos_create_dynamic_sections.
5205
 
5206
Mon Apr  8 12:09:36 1996  Ian Lance Taylor  
5207
 
5208
        * configure.in: Permit --enable-shared to specify a list of
5209
        directories.
5210
        * configure: Rebuild.
5211
 
5212
        * configure.host: Set HLDFLAGS and SHLIB_CFLAGS for *-dec-osf*
5213
        host when configuring with --enable-shard.
5214
 
5215
Fri Apr  5 12:24:13 1996  Ian Lance Taylor  
5216
 
5217
        * config.bfd: Add i[345]86-*-freebsdelf* target; from John Polstra
5218
        .
5219
 
5220
        * linker.c (link_action): For WARN_ROW/warn, use MWARN, not CYCLE,
5221
        to avoid crashing in bfd_hash_replace.
5222
 
5223
        * sysdep.h: Use #ifdef, not #if.
5224
 
5225
Thu Apr  4 23:32:23 1996  Ian Lance Taylor  
5226
 
5227
        * config.in: Rebuild.
5228
 
5229
Thu Apr  4 18:49:09 1996  Fred Fish  
5230
 
5231
        * configure.in (mips-sony-bsd*): Fix typo in AC_DEFINE.
5232
        (AC_CHECK_HEADERS): Check for sys/time.h
5233
        (AC_HEADER_TIME): Add macro.
5234
        * configure: Rebuild.
5235
        * sysdep.h: Use TIME_WITH_SYS_TIME and HAVE_SYS_TIME_H
5236
        to control what combination of 
5237
        get included.
5238
 
5239
Tue Apr  2 13:11:53 1996  Doug Evans  
5240
 
5241
        * aoutf1.h (sunos_32_set_arch_mach): Handle M_SPARCLET.
5242
        (aout_32_sunos4_write_object_contents): Likewise.
5243
        * aoutx.h (NAME(aout,machine_type)): Handle
5244
        bfd_mach_sparc_{sparclet,sparclite}.
5245
        * archures.c (bfd_mach_sparc_{sparclet,sparclite}): Define.
5246
        (bfd_mach_sparc_v9_p): Update.
5247
        * cpu-sparc.c (arch_info_struct): Add entries for sparclet,sparclite.
5248
        * libaout.h (enum machine_type): Add M_SPARCLET.
5249
        * sunos.c (MACHTYPE_OK): Define.
5250
        * bfd-in2.h: Regenerated.
5251
 
5252
Tue Apr  2 00:33:18 1996  Ian Lance Taylor  
5253
 
5254
        * elf-bfd.h (struct elf_link_hash_table): Add hgot field.
5255
        * elf.c (_bfd_elf_link_hash_table_init): Initialize hgot field.
5256
        * elflink.c (_bfd_elf_create_got_section): Store the
5257
        _GLOBAL_OFFSET_TABLE_ hash table entry in the hgot field.
5258
        * elf32-sparc.c (elf32_sparc_check_relocs): If the size of the
5259
        global offset table goes over 0x1000, set the value of
5260
        _GLOBAL_OFFSET_TABLE_ to 0x1000 into the section.
5261
        (elf32_sparc_relocate_section): Subtract the offset of
5262
        _GLOBAL_OFFSET_TABLE_ when handling GOT relocations.
5263
 
5264
        * elfcode.h: Don't include .
5265
 
5266
Mon Apr  1 10:39:24 1996  Jeffrey A Law  (law@cygnus.com)
5267
 
5268
        * linker.c (_bfd_generic_link_hash_newfunc): Renamed from
5269
        generic_link_hash_newfunc.  All references changed.
5270
        * genlink.h (_bfd_generic_link_hash_newfunc): Declaration
5271
        moved here from libbfd-in.h.
5272
        * libbfd-in.h: Corresponding changes.
5273
        * libbfd.h: Regenerated.
5274
 
5275
Mon Apr  1 12:35:36 1996  Ian Lance Taylor  
5276
 
5277
        * aoutx.h (aout_link_input_section_std): When reporting an
5278
        overflow error, use the name of the symbol in the hash table if
5279
        available.
5280
        (aout_link_input_section_ext): Likewise.
5281
 
5282
        * elflink.h (elf_adjust_dynamic_symbol): If a common symbol got
5283
        defined in a regular file, set ELF_LINK_HASH_DEF_REGULAR.
5284
 
5285
Sun Mar 31 01:58:41 1996  steve chamberlain  
5286
 
5287
        * peicode.h (coff_swap_aouthdr_out): Delete test for .junk.
5288
        * coffcode.h (coff_compute_section_file_positions): Likewise.
5289
        (coff_write_object_contents): Likewise.
5290
 
5291
Fri Mar 29 12:44:36 1996  Ian Lance Taylor  
5292
 
5293
        * section.c (SEC_LINK_ONCE): Define.
5294
        (SEC_LINK_DUPLICATES): Define.
5295
        (SEC_LINK_DUPLICATES_DISCARD): Define.
5296
        (SEC_LINK_DUPLICATES_ONE_ONLY): Define.
5297
        (SEC_LINK_DUPLICATES_SAME_SIZE): Define.
5298
        (SEC_LINK_DUPLICATES_SAME_CONTENTS): Define.
5299
        * bfd-in2.h: Rebuild.
5300
        * coffcode.h (sec_to_styp_flags): If COFF_WITH_PE, turn
5301
        SEC_LINK_ONCE into IMAGE_SCN_LNK_COMDAT.
5302
        (styp_to_sec_flags): If COFF_WITH_PE, turn IMAGE_SCN_LNK_REMOVE
5303
        into SEC_EXCLUDE.  If IMAGE_SCN_LNK_COMDAT is set, set
5304
        SEC_LINK_ONCE, and look through the symbol table for the setting
5305
        for SEC_LINK_DUPLICATES.
5306
        (coff_write_object_contents): If COFF_WITH_PE, if SEC_LINK_ONCE is
5307
        set for a section, find the section symbol in the symbol table,
5308
        and set the aux entry based on SEC_LINK_DUPLICATES.
5309
        * coffgen.c (coff_print_symbol): Add a space before "checksum".
5310
        * coff-arm.c (armcoff_big_vec): If COFF_WITH_PE is defined, add
5311
        SEC_LINK_ONCE and SEC_LINK_DUPLICATES to section_flags.
5312
        * coff-i386.c (i386coff_vec): Likewise.
5313
        * coff-ppc.c (TARGET_LITTLE_SYM, TARGET_BIG_SYM): Likewise.
5314
 
5315
        * VERSION: Bump to 2.6.1.
5316
        * Makefile.in (stamp-h): Depend upon VERSION.
5317
 
5318
Thu Mar 28 23:48:49 1996  Jeffrey A Law  (law@cygnus.com)
5319
 
5320
        * libbfd-in.h (generic_link_hash_newfunc): Add declaration.
5321
        * libbfd.h: Rebuilt.
5322
        * linker.c (generic_link_hash_newfunc): No longer static.
5323
        * coffcode.h (coff_bfd_link_hash_create): Allow specific targets
5324
        to override.
5325
        * coff-h8300.c: Add two derived hash tables and their associated
5326
        funtions and #defines for use by the h8300 linker.
5327
        (h8300_reloc16_extra_cases, case R_MEM_INDIRECT): Create entries in
5328
        the function vector as needed.  Place the address of the function
5329
        vector entry in the location specified by the R_MEM_INDIRECT reloc.
5330
        Rewrite the vectors section contents as necessary.
5331
        (h8300_bfd_link_add_symbols): New function for the h8300 linker.
5332
        (coff_bfd_link_add_symbols): Define to use h8300 specific version.
5333
        (coff_bfd_link_hash_table_create): Likewise.
5334
 
5335
Thu Mar 28 17:44:08 1996  Ian Lance Taylor  
5336
 
5337
        * libhppa.h: If gcc 2.7 or higher, declare all the functions with
5338
        __attribute__ ((__unused__)) so that -Wall doesn't warn about
5339
        them.
5340
        (hppa_rebuild_insn): Pass pointer to correct type to
5341
        low_sign_unext and dis_assemble_21.
5342
 
5343
Thu Mar 28 11:00:36 1996  Doug Evans  
5344
 
5345
        * config.bfd (sparc64-{sysv4*,solaris2*}): Delete.
5346
        Stick with sparc-*-{sysv4*,solaris2*}.
5347
 
5348
Wed Mar 27 10:43:34 1996  Ian Lance Taylor  
5349
 
5350
        * peicode.h (coff_swap_aux_in): Swap in extra PE x_scn fields.
5351
        (coff_swap_aux_out): Swap out extra PE x_scn fields.
5352
        * coffswap.h (coff_swap_aux_in): Zero out extra PE x_scn fields.
5353
        * coffgen.c (coff_print_symbol): If any of the extra PE x_scn
5354
        fields is non-zero, print them.
5355
 
5356
        * coff-ppc.c (ppc_record_toc_entry): Put inside COFF_IMAGE_WITH_PE
5357
        ifdef.  Remove unused variables.
5358
        (ppc_record_data_in_toc_entry): Ifdef out.  Removed unused
5359
        variables.
5360
        (ppc_mark_symbol_as_glue): Put inside COFF_IMAGE_WITH_PE ifdef.
5361
        (get_symbol_value): Ifdef out.
5362
        (pe_ppc_reloc): Ifdef out.  Remove unused variables.
5363
        (coff_ppc_relocate_section): Remove unused variables.  Make
5364
        fprintf strings and argument types correspond.  Put before_addr in
5365
        DEBUG_RELOC ifdef.
5366
        (dump_toc): Make fprintf strings and argument types correspond.
5367
        (ppc_process_before_allocation): Remove unused variables.  Always
5368
        return a value.
5369
        (ppc_reflo_reloc): Ifdef out.
5370
        (ppc_addr32nb_reloc): Ifdef out.
5371
        (ppc_coff_rtype2howto): Make fprintf strings and argument types
5372
        correspond.
5373
        (coff_ppc_rtype_to_howto): Likewise.
5374
        (ppc_coff_swap_sym_in_hook): Remove unused variables.
5375
 
5376
        * peicode.h (pe_print_idata): Move otherwise unused variables into
5377
        the #ifdef where they are used.  Always return a value.
5378
        (pe_print_edata): Make fprintf strings and argument types
5379
        correspond.  Always return a value.
5380
        (pe_print_pdata): Removed unused variable addr_value.  Always
5381
        return a value.
5382
        (pe_print_reloc): Remove unused variable onaline.  Make fprintf
5383
        strings and argument types correspond.  Always return a value.
5384
 
5385
        * elf32-ppc.c (ppc_elf_fake_sections): Return true.
5386
        (ppc_elf_finish_dynamic_symbol): Move definition of unused
5387
        variable rela inside #if 0 section where it is used.
5388
 
5389
        * ns32k.h: New file.
5390
        * cpu-ns32k.h: Include ns32k.h.  Rename externally visible
5391
        functions to start with _bfd_.
5392
        * aout-ns32k.c: Include ns32k.h.  Change references to renamed
5393
        functions in cpu-ns32k.h.
5394
        * Makefile.in: Rebuild dependencies.
5395
        (HFILES): Add ns32k.h.
5396
 
5397
        * section.c (struct sec): Add linker_mark field.  Change
5398
        user_set_vma and reloc_done to be single bit fields.
5399
        (STD_SECTION): Update accordingly.
5400
        * bfd-in2.h: Rebuild.
5401
        * aoutx.h (NAME(aout,final_link)): Mark sections included in the
5402
        link.
5403
        (aout_link_input_bfd): Don't link unmarked sections.
5404
        * cofflink.c (_bfd_coff_final_link): Mark sections included in the
5405
        link.
5406
        (_bfd_coff_link_input_bfd): Don't link unmarked sections.
5407
        * coff-ppc.c (ppc_bfd_coff_final_link): Mark sections included in
5408
        the link.
5409
        * elflink.h (elf_bfd_final_link): Mark sections included in the
5410
        link.
5411
        (elf_link_input_bfd): Don't link unmarked sections.
5412
        * xcofflink.c (_bfd_xcoff_bfd_final_link): Mark sections included
5413
        in the link.
5414
        (xcoff_link_input_bfd): Don't link unmarked sections.
5415
 
5416
        * coffswap.h (coff_swap_scnhdr_out): Include section name in
5417
        overflow error messages.
5418
 
5419
Tue Mar 26 15:46:18 1996  Ian Lance Taylor  
5420
 
5421
        * bfd.c (_bfd_default_error_handler): If _bfd_error_program_name
5422
        is not set, print "BFD: " before the error message.
5423
 
5424
        * configure.in: Use AC_CHECK_TOOL to find ar and ranlib.  From
5425
        Miles Bader .
5426
        * configure: Rebuild.
5427
 
5428
Fri Mar 22 12:17:00 1996  Ian Lance Taylor  
5429
 
5430
        * xcofflink.c (xcoff_link_input_bfd): Fix scan for C_BINCL/C_EINCL
5431
        symbols.
5432
 
5433
        * config.bfd: Add ieee_vec to targ_selvecs for i960 targets and
5434
        m68k-aout, m68k-coff, and m68k-elf targets.
5435
 
5436
Fri Mar 22 11:33:44 1996  Martin Anantharaman  
5437
 
5438
        * ieee.c: Changed #ifdef KEEPMINUSPCININST to #if KEEPMINUSPCININST.
5439
        (ieee_generic_stat_arch_elt): Restructured to prevent
5440
        ieee_object_p from being called repeatedly.
5441
 
5442
Thu Mar 21 11:00:47 1996  steve chamberlain  
5443
 
5444
        * coffcode.h (coff_write_object_contents):  Allocate
5445
        buffers large enough for any FILEHDR or AOUTHDR.
5446
 
5447
Thu Mar 21 16:28:17 1996  David Mosberger-Tang  
5448
 
5449
        * ecofflink.c (lookup_line): New static function, renamed and
5450
        slighly changed from old _bfd_ecoff_locate_line.
5451
        (_bfd_ecoff_locate_line): Cache line number information.  Use
5452
        lookup_line for actual lookup.
5453
 
5454
Thu Mar 21 14:59:11 1996  Michael Meissner  
5455
 
5456
        * peicode.h (pe_print_pdata): Warn if the .pdata section is not a
5457
        multiple of 20 bytes.
5458
 
5459
Thu Mar 21 13:54:40 1996  Ian Lance Taylor  
5460
 
5461
        * ecoff.c (_bfd_ecoff_find_nearest_line): Use bfd_zalloc to
5462
        allocate ecoff_find_line, and don't initialize by hand.
5463
        * elf32-mips.c (mips_elf_find_nearest_line): Use bfd_zalloc for
5464
        mips_elf_find_line, and don't call memset.
5465
 
5466
        * coffcode.h (coff_compute_section_file_positions): If not
5467
        producing a final executable, don't consider sofar when aligning
5468
        the section to the correct size.
5469
 
5470
Wed Mar 20 16:53:12 1996  Ian Lance Taylor  
5471
 
5472
        * coffcode.h (coff_add_missing_symbols): Ifdef out.
5473
        (coff_write_object_contents): Don't call coff_add_missing_symbols.
5474
        * coffgen.c (coff_section_symbol): Ifdef out.
5475
 
5476
Mon Mar 18 12:54:41 1996  Ian Lance Taylor  
5477
 
5478
        * elf32-mips.c (mips_elf_gprel32_reloc): Initialize gp if
5479
        output_bfd is not NULL.
5480
 
5481
Thu Mar 14 17:12:06 1996  Doug Evans  
5482
 
5483
        * coffgen.c (coff_get_normalized_symtab): Call bfd_zalloc instead
5484
        of bfd_alloc (fixes fix_line not being initialized).
5485
        Delete zeroing of fix_{value,tag,end,scnlen} fields.
5486
 
5487
Thu Mar 14 16:06:06 1996  Jeffrey A Law  (law@cygnus.com)
5488
 
5489
        * coffcode.h: Allow specific backends to override the
5490
        bfd_link_add_symbols routine.
5491
 
5492
        * coff-h8300.c: Include genlink.h.
5493
        (howto_table): Add R_MEM_INDIRECT.
5494
        (rtype2howto): Support R_MEM_INDIRECT.
5495
        (h8300_reloc16_extra_cases): Handle R_MEM_INDIRECT like R_RELBYTE
5496
        for now.
5497
 
5498
Tue Mar 12 12:41:17 1996  David Mosberger-Tang  
5499
 
5500
        * coff-alpha.c (alpha_relocate_section): Use
5501
        info->callbacks_warning, rather than _bfd_error_handler, for
5502
        "multiple gp" warning.
5503
 
5504
Tue Mar 12 12:10:55 1996  Ian Lance Taylor  
5505
 
5506
        * linker.c (bfd_wrapped_link_hash_lookup): New function.
5507
        (_bfd_generic_link_add_one_symbol): Remove BFD_ASSERT on hash
5508
        table string.  Use bfd_wrapped_link_hash_lookup.
5509
        (_bfd_generic_link_write_global_symbol): Remove BFD_ASSERT on hash
5510
        table string.
5511
        * aoutx.h (aout_link_write_symbols): Use the name from the hash
5512
        table, if any, when writing out symbols.
5513
        (aout_link_input_section_std): Use the name from the hash table,
5514
        if any, when reporting undefined symbols.
5515
        (aout_link_input_section_ext): Likewise.
5516
        (aout_link_reloc_link_order): Use bfd_wrapped_link_hash_lookup.
5517
        * bout.c (get_value): Likewise.
5518
        * cofflink.c (_bfd_coff_reloc_link_order): Likewise.
5519
        * ecoff.c (ecoff_reloc_link_order): Likewise.
5520
        * elflink.h (elf_link_add_object_symbols): Likewise.
5521
        (elf_reloc_link_order): Likewise.
5522
        * linker.c (_bfd_generic_link_output_symbols): Likewise.
5523
        (_bfd_generic_reloc_link_order): Likewise.
5524
        (default_indirect_link_order): Likewise.
5525
        * reloc16.c (bfd_coff_reloc16_get_value): Likewise.
5526
        * sunos.c (sunos_add_one_symbol): Likewise.
5527
        * xcofflink.c (xcoff_link_add_symbols): Likewise.
5528
        (bfd_xcoff_link_count_reloc): Likewise.
5529
        (xcoff_reloc_link_order): Likewise.
5530
 
5531
        * ecoffswap.h (ecoff_swap_fdr_in): If ECOFF_64, turn 0xffffffff
5532
        into -1 for intern->rss.
5533
 
5534
        * configure: Rebuild with autoconf 2.8.
5535
 
5536
Mon Mar 11 12:28:31 1996  Ian Lance Taylor  
5537
 
5538
        * stab-syms.c (__define_stab_duplicate): Define.
5539
        (bfd_get_stab_name): Rename from aout_stab_name.  Rewrite to use a
5540
        switch.
5541
        * bfd-in.h (bfd_get_stab_name): Declare.
5542
        * bfd-in2.h: Rebuild.
5543
        * Makefile.in: Rebuild dependencies.
5544
        (BFD_LIBS): Add stab-syms.o.
5545
        (BFD_LIBS_CFILES): Add stab-syms.c.
5546
        (BFD32_BACKENDS): Remove stab-syms.o.
5547
        (BFD32_BACKENDS_CFILES): Remove stab-syms.c.
5548
        * configure.in: Don't list stab-syms.o in bfd_backends.
5549
        * configure: Rebuild.
5550
        * libaout.h (aout_stab_name): Don't declare.
5551
        * aoutx.h (NAME(aout,get_symbol_info)): Call bfd_get_stab_name,
5552
        not aout_stab_name.
5553
 
5554
Fri Mar  8 11:26:20 1996  Ian Lance Taylor  
5555
 
5556
        * elf.c (assign_file_positions_for_segments): Adjust file offset
5557
        for section alignment even if SEC_LOAD is not set.
5558
 
5559
Tue Mar  5 12:02:23 1996  Ian Lance Taylor  
5560
 
5561
        * configure.in: Don't set SHLIB or SHLINK to an empty string,
5562
        since they appear as targets in Makefile.in.
5563
        * configure: Rebuild.
5564
 
5565
        * sunos.c (sunos_scan_ext_relocs): If not making a shared library,
5566
        don't fiddle with a symbol which is not defined anywhere.
5567
 
5568
Mon Mar  4 12:49:16 1996  Ian Lance Taylor  
5569
 
5570
        * xcofflink.c (xcoff_mark): Treat undefined imported symbols as
5571
        though they are defined in a shared library.
5572
        (xcoff_build_ldsyms): Likewise.
5573
 
5574
        * coffgen.c (coff_find_nearest_line): Don't look at the line
5575
        numbers for the section if section->lineno is NULL.
5576
 
5577
        * elf.c (_bfd_elf_symbol_from_bfd_symbol): Print a useful error
5578
        message rather than calling BFD_ASSERT.
5579
        * elfcode.h (write_relocs): Check return value of
5580
        _bfd_elf_symbol_from_bfd_symbol.
5581
 
5582
Fri Mar  1 09:42:59 1996  Michael Meissner  
5583
 
5584
        * elf32-ppc.c (ppc_elf_add_symbol_hook): Don't set SEC_LOAD flag
5585
        for .sbss section.
5586
 
5587
Wed Feb 28 11:25:47 1996  Jeffrey A Law  (law@cygnus.com)
5588
 
5589
        * libhppa.h (hppa_reloc_field_selector_type): Add R_HPPA_NLSEL
5590
        and R_HPPA_NLRSEL.
5591
        (e_nsel, e_nlsel, e_nlrsel): Undefine.  Add to
5592
        hppa_reloc_field_selector_type_alt.
5593
        (hppa_field_adjust): Handle e_nlsel, e_nlrsel.  Fix e_nsel handling.
5594
        * som.c (hppa_som_gen_reloc_type): Handle N', NL' NLR' field
5595
        selectors.
5596
        (som_write_fixups): Finish handling of R_N0SEL and R_N1SEL.
5597
 
5598
Wed Feb 28 11:00:24 1996  Ian Lance Taylor  
5599
 
5600
        * elf.c (assign_file_positions_for_segments): Adjust the segment
5601
        memory size for the alignment of a SEC_ALLOC section, not just a
5602
        SEC_LOAD section.
5603
 
5604
Tue Feb 27 14:17:31 1996  Andreas Schwab  
5605
 
5606
        * m68klinux.c: New file.
5607
        * hosts/m68klinux.h: New file.
5608
        * config.bfd (m68*-*-linuxaout*, m68*-*-linux*): New targets.
5609
        * configure.in (m68*-*-linux*): New native host.
5610
        (m68klinux_vec): New vector.
5611
        * configure: Rebuild.
5612
        * targets.c (m68klinux_vec): Declare.
5613
        * i386linux.c (bfd_i386linux_size_dynamic_sections): Renamed from
5614
        bfd_linux_size_dynmic_sections to avoid clash with m68klinux.c.
5615
        * bfd-in.h (bfd_i386linux_size_dynamic_sections): Rename
5616
        declaration from bfd_linux_size_dynamic_sections.
5617
        (bfd_m68klinux_size_dynamic_sections): Declare.
5618
        * bfd-in2.h: Rebuild.
5619
        * Makefile.in: Rebuild dependencies.
5620
        (BFD32_BACKENDS): Add m68klinux.o.
5621
        (BFD32_BACKENDS_CFILES): Add m68klinux.c.
5622
 
5623
Tue Feb 27 11:31:34 1996  Jeffrey A Law  (law@cygnus.com)
5624
 
5625
        * libhppa.h (pa_arch): Add pa20.
5626
        (hppa_reloc_field_selector_type): Add R_HPPA_NSEL.
5627
        (e_nsel): Undefine.  Add to hppa_reloc_field_selector_type_alt.
5628
        (hppa_field_adjust): Handle e_nsel.
5629
        * som.c: Provide default definitions for many new relocs found only
5630
        in hpux10 include files.
5631
        (som_fixup_formats): Add several new relocs from hpux10.
5632
        (som_hppa_howto_table): Add hpux10 relocs.
5633
        (som_write_fixups): Handle R_N0SEL and R_N1SEL hpux10 relocs.
5634
 
5635
Mon Feb 26 12:52:48 1996  Stan Shebs  
5636
 
5637
        * mpw-make.sed: Edit out recent shared library support, and
5638
        rules to rebuild .h files using doc/chew.
5639
 
5640
Mon Feb 26 14:48:39 1996  David Mosberger-Tang  
5641
 
5642
        * ecoff.c (ecoff_compute_section_file_positions): Adjust the file
5643
        size even of sections with no contents.
5644
 
5645
Mon Feb 26 14:01:13 1996  Ian Lance Taylor  
5646
 
5647
        * cofflink.c (_bfd_coff_link_input_bfd): When merging, skip names
5648
        starting with '$' the way we skip names starting with '.'.  When
5649
        updating x_endndx, don't be fooled by an index which has been
5650
        merged.
5651
 
5652
        * cofflink.c (_bfd_coff_link_input_bfd): Don't try to optimize a
5653
        struct/union/enum type with no elements.
5654
 
5655
Sat Feb 24 11:38:58 1996  Ian Lance Taylor  
5656
 
5657
        * bfd.c (bfd_errmsg): Handle a NULL return from strerror.
5658
 
5659
        * archive.c (bfd_generic_archive_p): If the first file in the
5660
        archive can not be recognized as an object, don't assume that this
5661
        is the wrong format.
5662
 
5663
        * elf.c (bfd_elf_set_dt_needed_name): Don't do anything if the
5664
        format is not bfd_object.
5665
        (bfd_elf_get_dt_soname): Likewise.
5666
 
5667
Wed Feb 21 13:58:04 1996  Ian Lance Taylor  
5668
 
5669
        * coff-sh.c (sh_relax_delete_bytes): Correct range of R_SH_USES
5670
        reloc.
5671
 
5672
Tue Feb 20 16:22:44 1996  J.T. Conklin  
5673
 
5674
        * bfd.c (tdata): Add netbsd_core_data.
5675
        * bfd-in2.h: Regenerated.
5676
 
5677
Tue Feb 20 16:50:02 1996  Ian Lance Taylor  
5678
 
5679
        * sunos.c (SUNOS_CONSTRUCTOR): Define.
5680
        (sunos_add_one_symbol): Don't let a symbol from a dynamic object
5681
        override a constructor symbol.  Set SUNOS_CONSTRUCTOR when
5682
        appropriate.
5683
 
5684
        * bout.c (b_out_squirt_out_relocs): Use udata.i rather than flags
5685
        to get the symbol index, matching 14 Jul 95 change.
5686
 
5687
Tue Feb 20 08:26:27 1996  Fred Fish  
5688
 
5689
        * coff-alpha.c (alpha_ecoff_get_relocated_section_contents):
5690
        Remove duplicate definition of gp.
5691
 
5692
Mon Feb 19 12:37:41 1996  Ian Lance Taylor  
5693
 
5694
        * coff-alpha.c (alpha_ecoff_get_relocated_section_contents): Don't
5695
        assume that we can set the GP value and then get the same value,
5696
        since it won't be true if the output file is neither ELF nor
5697
        ECOFF.
5698
        * coff-mips.c (mips_adjust_reloc_in): Don't bother to use
5699
        _bfd_get_gp_value here.
5700
        (mips_gprel_reloc): Don't assume we can set and get the GP value.
5701
        * elf32-mips.c (mips_elf_hi16_reloc): Get gp value from
5702
        mips_elf_final_gp.
5703
        (mips_elf_lo16_reloc): Likewise.
5704
        (mips_elf_final_gp): Add pgp parameter.  Set it to the GP value.
5705
        Don't require that the BFD be ELF.
5706
        (mips_elf_gprel16_reloc): Get gp value from mips_elf_final_gp.
5707
        (mips_elf_gprel32_reloc): Likewise.
5708
        (mips_elf_relocate_section): Don't assume we can set and get the
5709
        GP value.
5710
        (mips_elf_finish_dynamic_symbol): Don't bother to use
5711
        _bfd_get_gp_value here.
5712
 
5713
        * elf32-mips.c (mips_elf_create_procedure_table): Initialize sv.
5714
        Don't change epdr between malloc and free.  Be careful not to free
5715
        NULL pointers.  Zero out the first RPDR.
5716
 
5717
        * configure.host: On Linux, only pass -rpath option if $(libdir)
5718
        is neither /lib nor /usr/lib.  From Alan Modra
5719
        .
5720
 
5721
        * elf-bfd.h (struct elf_obj_tdata): Rename dt_needed_name to
5722
        dt_name.
5723
        (elf_dt_name): Rename from elf_dt_needed_name.
5724
        * elf.c (bfd_elf_set_dt_needed_name): Use elf_dt_name, not
5725
        elf_dt_needed_name.
5726
        (bfd_elf_get_dt_soname): New function.
5727
        * elflink.h (elf_link_add_object_symbols): Use elf_dt_name, not
5728
        elf_dt_needed_name.  Save the SONAME back in elf_dt_name.
5729
        * bfd-in.h (bfd_elf_get_dt_soname): Declare.
5730
        * bfd-in2.h: Rebuild.
5731
 
5732
Mon Feb 19 02:50:23 1996  Doug Evans  
5733
 
5734
        * elf32-sparc.c (elf32_sparc_reloc_type_lookup): Renamed from
5735
        _bfd_sparc_elf_reloc_type_lookup.
5736
        (bfd_elf32_bfd_reloc_type_lookup): Update.
5737
        * elf64-sparc.c (SPARC64_OLD_RELOCS): Define.
5738
        (sparc64_elf_howto_table): Define.
5739
        (sparc_reloc_map): Define.
5740
        (sparc64_elf_reloc_type_lookup): New function.
5741
        (sparc_elf_wdisp16_reloc): New function.
5742
        (elf_info_to_howto): Use sparc64_elf_howto_table.
5743
        (sparc64_elf_relocate_section): Likewise.
5744
        (bfd_elf64_bfd_reloc_type_lookup): Update.
5745
 
5746
Sun Feb 18 15:02:25 1996  Ian Lance Taylor  
5747
 
5748
        * configure.host: Check for 'do not mix' from native linker before
5749
        trying to use -rpath.
5750
 
5751
Fri Feb 16 12:46:18 1996  Ian Lance Taylor  
5752
 
5753
        * bfd.c (_bfd_get_gp_value): New function.
5754
        (_bfd_set_gp_value): New function.
5755
        * libbfd-in.h (_bfd_get_gp_value): Declare.
5756
        (_bfd_set_gp_value): Declare.
5757
        * libbfd.h: Rebuild.
5758
        * coff-alpha.c (alpha_ecoff_get_relocated_section_contents): Use
5759
        _bfd_get_gp_value and _bfd_set_gp_value rather than referring
5760
        directly to the fields in the tdata information.
5761
        (alpha_relocate_section): Likewise.
5762
        * coff-mips.c (mips_adjust_reloc_in): Likewise.
5763
        (mips_gprel_reloc): Likewise.
5764
        (mips_relocate_section): Likewise.
5765
        * elf32-mips.c (mips_elf_hi16_reloc): Likewise.
5766
        (mips_elf_lo16_reloc): Likewise.
5767
        (mips_elf_final_gp): Likewise.
5768
        (mips_elf_gprel16_reloc): Likewise.
5769
        (mips_elf_gprel32_reloc): Likewise.
5770
        (mips_elf_relocate_section): Likewise.
5771
        (mips_elf_finish_dynamic_symbol): Likewise.
5772
 
5773
        * bout.c (b_out_set_arch_mach): Recognize bfd_mach_i960_jx.
5774
 
5775
Thu Feb 15 11:29:13 1996  Ian Lance Taylor  
5776
 
5777
        * configure.in: Call AC_PROG_CC before configure.host.
5778
        * configure: Rebuild.
5779
        * configure.host: Don't set information which autoconf should
5780
        figure out, namely CC, CFLAGS, LDFLAGS, AR, and RANLIB.
5781
 
5782
        * configure.host: Remove go32 and win32 host information, since it
5783
        should no longer be needed.
5784
 
5785
        * elf.c (map_sections_to_segments): If we have a .dynamic section,
5786
        then start a new segment rather than put a writable section in a
5787
        readonly segment.
5788
 
5789
        * configure.host: Set RPATH_ENVVAR.
5790
 
5791
        * Makefile.in: Rebuild dependencies.
5792
 
5793
        * elflink.c (_bfd_elf_create_linker_section): Remove unused
5794
        zero_section variable.
5795
 
5796
Thu Feb 15 10:39:17 1996  H.J. Lu  
5797
 
5798
        * Makefile.in ($(srcdir)/bfd-in2.h): Rename target from bfd-in2.h.
5799
        ($(srcdir)/libbfd.h): Rename from libbfd.h.
5800
        ($(srcdir)/libcoff.h): Rename from libcoff.h.
5801
 
5802
Wed Feb 14 16:29:07 1996  Martin Anantharaman  
5803
 
5804
        * ieee.c (ieee_write_expression): Only use an R variable for a
5805
        local symbol.  Don't output a zero offset.  Handle a zero address.
5806
        (SRC_MASK, PCREL_OFFSET): Define based on KEEPMINUSPCININST.
5807
        (rel32_howto, rel16_howto, rel8_howto): Use SRC_MASK and
5808
        PCREL_OFFSET.
5809
        (parse_expression): Don't try to handle multiple occurrences of a
5810
        P variable.  Handle I variables differently from X variables.  Fix
5811
        the order of minus expressions.
5812
        (ieee_slurp_external_symbols): Generate an I variable for an NN
5813
        record.  Fix handling of ATI and ATX records.
5814
        (ieee_slurp_sections): Only set minimal section attributes.
5815
        Adjust them later, based on the section contents.
5816
        (ieee_object_p): Read in the file until just after the ME record.
5817
        Call ieee_slurp_section_data to set the section flags.
5818
        (do_one): Add iterations parameter.  Only repeat the first load
5819
        item.  Set the section and file reloc flags.
5820
        (ieee_slurp_section_data): Set section flags.  Pass iterations to
5821
        do_one.
5822
        (ieee_canonicalize_reloc): Handle I variables.
5823
        (do_with_relocs): Only emit relocation size when necessary.
5824
        Increase MAXRUN to 127.  Change ov to be assigned, and take
5825
        src_mask and pcrel_offset into account.
5826
        (ieee_write_data_part): Skip sections that are not loaded.
5827
        (ieee_write_external_part): Don't output optional last entry of WX
5828
        records.
5829
        (ieee_write_me_part): Make setting of me_record neater.
5830
        (ieee_generic_stat_arch_elt): Get the size of an archive element.
5831
 
5832
        * syms.c (stt): Add entries for zerovars, vars, and code.
5833
 
5834
        * elfcode.h (validate_reloc): New static function.
5835
        (write_relocs): Call validate_reloc for non ELF relocs.
5836
 
5837
        * elfxx-target.h (elf_symbol_leading_char): Define if not defined.
5838
        (TARGET_BIG_SYM): Use elf_symbol_leading_char.
5839
        (TARGET_LITTLE_SYM): Likewise.
5840
 
5841
        * config.bfd (m68*-*-psos*): New target.
5842
 
5843
Tue Feb 13 15:56:22 1996  Bryan Ford  
5844
 
5845
        * i386msdos.c: Remove some #if 0 code.
5846
        (msdos_write_object_contents): Don't include empty sections in the
5847
        size computation, regardless of their address.
5848
 
5849
Tue Feb 13 15:36:37 1996  Michael Meissner  
5850
 
5851
        * elf32-ppc.c (ppc_elf_relocate_section): Don't segfault if dynboj
5852
        is NULL, ie, the -r switch is used.
5853
 
5854
Tue Feb 13 14:35:15 1996  Ian Lance Taylor  
5855
 
5856
        * reloc.c (BFD_RELOC_MIPS_GOT_HI16): Define.
5857
        (BFD_RELOC_MIPS_GOT_LO16): Define.
5858
        (BFD_RELOC_MIPS_CALL_HI16, BFD_RELOC_MIPS_CALL_LO16): Define.
5859
        * bfd-in2.h, libbfd.h: Rebuild.
5860
        * elf32-mips.c (mips_reloc_map): Map new relocs.
5861
 
5862
        * configure.host: Set HDLFLAGS for *-*-hpux with --enable-shared.
5863
 
5864
        * Makefile.in ($(SHLINK)): Check ts against $(SHLIB), not
5865
        $(SHLINK).
5866
 
5867
        * ieee.c (get_symbol): Set the section to bfd_abs_section.
5868
        (do_with_relocs): If EXEC_P is set and there are no relocs, use a
5869
        simple number for the section address, rather than an expression.
5870
        Limit the number of bytes between relocs to MAXRUN.
5871
        (ieee_write_me_part): Set me_record to the file offset after the
5872
        start address.
5873
        (ieee_write_processor): New static function.
5874
        (ieee_write_object_contents): Use ieee_write_processor.
5875
 
5876
Fri Feb  9 10:53:00 1996  Ian Lance Taylor  
5877
 
5878
        * configure.host: Use ${CC-gcc} when testing for -rpath on SunOS.
5879
 
5880
        * coff-aux.c: Change include of aux.h to aux-coff.h.
5881
 
5882
Thu Feb  8 14:01:03 1996  Andreas Schwab  
5883
 
5884
        * elf32-m68k.c (elf_m68k_relocate_section): For a R_68K_RELATIVE
5885
        relocation put the addend both in the reloc entry and the data.
5886
        (elf_m68k_finish_dynamic_symbol): Likewise.  Mask out marker in
5887
        GOT offset value.
5888
 
5889
        * elf32-m68k.c (elf_m68k_relocate_section): If -Bsymbolic, resolve
5890
        a R_68K_PCxx reloc against a defined global symbol directly.
5891
        (elf_m68k_check_relocs): Don't count such a reloc.
5892
 
5893
        * elf32-m68k.c (elf_m68k_check_relocs): Don't record a symbol with
5894
        a PLTxx reloc as dynamic.  Disallow PLTxxO reloc against a local
5895
        symbol for now, otherwise always record the symbol as dynamic.
5896
        (elf_m68k_adjust_dynamic_symbol): If a symbol with a PLTxx reloc
5897
        is not referenced by a dynamic object, and we are not making a
5898
        shared object, then don't make a PLT entry.  If we do make a PLT
5899
        entry, make sure the symbol has been recorded as dynamic.
5900
 
5901
Wed Feb  7 13:56:06 1996  Ian Lance Taylor  
5902
 
5903
        * configure.host: When making a shared library, set HLDFLAGS to
5904
        pass an appropriate -rpath option.  Use the make variable SONAME
5905
        as the shared library soname, rather than computing it here.  On
5906
        SunOS, build stamp-tshlink in place of $(SHLINK).
5907
        * Makefile.in (SONAME): New variable.
5908
        ($(SHLINK)): Make a link to the transformed name, as well.
5909
        (stamp-tshlink): New target.
5910
        (install): Skip stamp-tshlink during install.
5911
 
5912
Wed Feb  7 13:37:39 1996  Michael Meissner  
5913
 
5914
        * elf32-ppc.c (ppc_elf_add_symbol_hook): Do not assume that the
5915
        linker sections have been set up yet.
5916
 
5917
        * elf.c (make_mapping): Add an additional argument to suppress
5918
        making the first section include the program headers.
5919
        (map_sections_to_segments): If the user used -Ttext such that the
5920
        program headers are on a different page, do not set the flags
5921
        saying that this section includes the program headers.
5922
 
5923
Tue Feb  6 14:04:49 1996  J.T. Conklin  
5924
 
5925
        * configure.in (*-*-netbsd*): Set COREFILE to netbsd-core.c.
5926
        don't define TRAD_HEADER.
5927
        * configure: Rebuild.
5928
 
5929
        * netbsd-core.c: New file, support for NetBSD core files.
5930
        * hosts/*nbsd.h: Removed.
5931
 
5932
Tue Feb  6 11:47:49 1996  Doug Evans  
5933
 
5934
        * reloc.c (BFD_RELOC_SPARC_[567]): New reloc types.
5935
        (BFD_RELOC_SPARC_LO7 reloc type): Deleted.
5936
        * libbfd.h, bfd-in2.h: Regenerated.
5937
        * elf32-sparc.c (_bfd_sparc_elf_reloc_type_lookup): Renamed from
5938
        bfd_elf32_bfd_reloc_type_lookup.
5939
        (reloc_type{,_names}): Deleted.
5940
        (_bfd_sparc_elf_howto_table): Renamed from elf_sparc_howto_table.
5941
        Add sparc64 relocs.
5942
        (sparc_reloc_map): Add sparc64 relocs.
5943
        (sparc_elf_notsupported_reloc): New static function.
5944
        (sparc_elf_wdisp16_reloc): New static function.
5945
        (elf32_sparc_check_relocs): Handle R_SPARC_WDISP{16,19}.
5946
        (elf32_sparc_relocate_section): Likewise.
5947
        (bfd_elf32_bfd_reloc_type_lookup): Define.
5948
        * elf64-sparc.c (sparc64_elf_wdisp16_reloc): Deleted.
5949
        (reloc_type{,_names}): Deleted.
5950
        (elf_sparc_howto_table): Deleted.
5951
        (sparc_reloc_map): Deleted.
5952
        (_bfd_sparc_elf_howto_table): Renamed from elf_sparc_howto_table.
5953
        (bfd_elf64_bfd_reloc_type_lookup): Change from function to #define.
5954
 
5955
Tue Feb  6 12:12:22 1996  Ian Lance Taylor  
5956
 
5957
        * configure.host: Make SHLIB_CFLAGS include $(PICFLAG) on a
5958
        *-*-hpux* host.
5959
 
5960
        * Makefile.in (program_transform_name): New variable.
5961
        (install): Transform library name before installing it.
5962
 
5963
Mon Feb  5 10:38:27 1996  Ian Lance Taylor  
5964
 
5965
        * archures.c (bfd_mach_i960_hx): Define.
5966
        * bfd-in2.h: Rebuild.
5967
        * cpu-i960.c (scan_960_mach): Accept machine "hx".
5968
        (MATRIX): Expand entries for HX.
5969
        (arch_info_struct): Add i960:hx entry.
5970
        * bout.c (b_out_set_arch_mach): Handle bfd_mach_i960_hx.
5971
        * coffcode.h (coff_set_arch_mach_hook): Handle F_I960HX.
5972
        (coff_set_flags): Handle bfd_mach_i960_hx.
5973
 
5974
        Support for building as a shared library, based on patches from
5975
        Alan Modra :
5976
        * configure.in: Add AC_ARG_ENABLE for shared and commonbfdlib.
5977
        New substitutions: ALLLIBS, PICFLAG, SHLIB, SHLIB_CC,
5978
        SHLIB_CFLAGS, COMMON_SHLIB, PICLIST, SHLINK.
5979
        * configure: Rebuild.
5980
        * configure.host: If --enable-shared, adjust shared library stuff
5981
        based on the host.  If the host is SunOS, and the linker supports
5982
        -rpath, set HLDFLAGS to use it.
5983
        * Makefile.in (ALLLIBS): New variable.
5984
        (PICFLAG, SHLIB, SHLIB_CC, SHLIB_CFLAGS): New variables.
5985
        (COMMON_SHLIB, SHLINK): New variables.
5986
        (.c.o): If PICFLAG is set, compile twice, once PIC, once normal.
5987
        (STAGESTUFF): Remove variable.
5988
        (all): Depend upon $(ALLLIBS) and @PICLIST@ rather than
5989
        $(TARGETLIB).
5990
        (stamp-ofiles): New target, like old ofiles target, but build
5991
        using a temporary file and move-if-change, and touch stamp-ofiles
5992
        when done.
5993
        (ofiles): Just depend upon stamp-ofiles.
5994
        (stamp-piclist, piclist): New targets.
5995
        ($(SHLIB), $(SHLINK)): New targets.
5996
        (targets.o, archures.o): Build twice if PICFLAG is set.
5997
        (do_mostlyclean): Remove pic/*.o.
5998
        (do_clean): Remove stamp-ofiles, $(SHLIB), $(SHLINK), piclist, and
5999
        stamp-piclist.
6000
        (do_distclean): Remove pic and stamp-picdir.
6001
        (install): Install shared libraries.
6002
        ($(OFILES)): Depend upon stamp-picdir.
6003
        (stamp-picdir): New target.
6004
 
6005
        * libcoff-in.h: Add comment reminding people that libcoff.h is a
6006
        generated file.
6007
        * libcoff.h: Rebuild.
6008
 
6009
        * elflink.h (elf_adjust_dynamic_symbol): Don't try to get the
6010
        flavour of a section with no owner.
6011
 
6012
        * elf32-mips.c (mips_elf_create_dynamic_sections): Clear
6013
        ELF_LINK_NON_ELF flag.
6014
        (mips_elf_create_got_section): Likewise.
6015
 
6016
        * elf.c: Revert last change, since it breaks dynamic linking.
6017
        * elf-bfd.h (struct elf_backend_data): Remove want_hdr_in_seg
6018
        field.
6019
        * elf32-mips.c (elf_backend_want_hdr_in_seg): Don't define.
6020
        * elfxx-target.h (elf_backend_want_hdr_in_seg): Don't define.
6021
        (elfNN_bed): Don't initialize want_hdr_in_seg field.
6022
 
6023
Sun Feb  4 20:45:13 1996  Michael Meissner  
6024
 
6025
        * elf.c (assign_file_positions_for_segments): If the backend does
6026
        not want the elf header or the program headers in the address
6027
        space, do not include them in the calculations.
6028
 
6029
        * elf32-ppc.c (ppc_elf_additional_program_headers): New hook
6030
        function to determine if we need additional program headers.
6031
        (ppc_elf_modify_segment_map): Define as a NOP function for now.
6032
        (ppc_elf_create_linker_section): .sdata2 is a read-only section.
6033
 
6034
Sat Feb  3 23:00:03 1996  Ian Lance Taylor  
6035
 
6036
        * coffcode.h: Move today's libcoff.h change into coffcode.h.
6037
 
6038
Sat Feb  3 15:43:44 1996  Fred Fish  
6039
 
6040
        * libcoff.h (bfd_coff_link_add_one_symbol): Combine macro args
6041
        back into one line.  Some compilers (sunos 4.1.3 for example)
6042
        won't accept args split across more than one line.
6043
 
6044
Fri Feb  2 11:42:15 1996  Steve Chamberlain  
6045
 
6046
        * aclocal.m4 (BFD_BINARY_FOPEN): Understand cygwin32.
6047
        * configure: Regenerate.
6048
 
6049
Fri Feb  2 12:12:16 1996  Jeffrey A Law  (law@cygnus.com)
6050
 
6051
        * elf32-hppa.c (elf32_hppa_backend_symbol_table_processing): Don't
6052
        try to do arithmetic on a void *, cast it to a unsigned char * first.
6053
 
6054
Thu Feb  1 16:04:06 1996  Ian Lance Taylor  
6055
 
6056
        * elf-bfd.h (ELF_LINK_NON_ELF): Define.
6057
        * elf.c (_bfd_elf_link_hash_newfunc): Set elf_link_hash_flags to
6058
        ELF_LINK_NON_ELF.
6059
        * elflink.h (elf_link_add_object_symbols): Reset ELF_LINK_NON_ELF
6060
        flag for a newly defined symbol.
6061
        (NAME(bfd_elf,record_link_assignment)): Likewise.
6062
        (elf_adjust_dynamic_symbol): If ELF_LINK_NON_ELF is set, try to
6063
        set the DEF or REF_REGULAR flags correctly.
6064
 
6065
        * Makefile.in (bfd-in2.h): Make bfd.h, not protos, in docdir.
6066
        (libbfd.h, libcoff.h): Corresponding change.
6067
 
6068
        * elf32-i386.c (elf_i386_check_relocs): Don't record a symbol with
6069
        a PLT32 reloc as dynamic.
6070
        (elf_i386_adjust_dynamic_symbol): If a symbol with a PLT32 reloc
6071
        is not referenced by a dynamic object, and we are not making a
6072
        shared object, then don't make a PLT entry.  If we do make a PLT
6073
        entry, make sure the symbol has been recorded as dynamic.
6074
 
6075
Wed Jan 31 17:23:32 1996  Steve Chamberlain  
6076
 
6077
        * coff-i386.c (coff_i386_reloc_type_lookup): Add BFD_RELOC_32_PCREL.
6078
        * config.bfd (i[345]86-*-win32): Becomes i[345]86-*-cygwin32.
6079
        (powerpcle-*-cygwin32): New.
6080
        * peicode.h (add_data_entry): Get address from vma.
6081
 
6082
Wed Jan 31 16:23:57 1996  Michael Meissner  
6083
 
6084
        * elflink.c (_bfd_elf_create_linker_section): If the symbol
6085
        attached to the section has already been created as an undefined
6086
        symbol, treat it as if it hasn't been created yet.
6087
 
6088
Wed Jan 31 16:16:53 1996  Ian Lance Taylor  
6089
 
6090
        * elflink.h (elf_bfd_final_link): Don't output initial dummy
6091
        symbol or section symbols if stripping all symbols and this is not
6092
        a relocateable link.  Don't output the symbol string table if
6093
        there are no symbols.
6094
        (elf_link_flush_output_syms): Don't do anything if there are no
6095
        symbols to flush.
6096
 
6097
Wed Jan 31 12:55:49 1996  Richard Henderson  
6098
 
6099
        * coff-aux.c: New file.
6100
        * hosts/m68kaux.h: New file.
6101
        * config.bfd (m68*-apple-aux*): New target.
6102
        * configure.in (m68*-apple-aux*): New native host.
6103
        (m68kaux_coff_vec): New vector.
6104
        * configure: Rebuild.
6105
        * targets.c (m68kaux_coff_vec): Declare.
6106
        * coffcode.h (bfd_coff_backend_data): Add field
6107
        _bfd_coff_link_add_one_symbol.
6108
        (bfd_coff_link_add_one_symbol): Define.
6109
        (compare_arelent_ptr): New static function if TARG_AUX.
6110
        (coff_write_relocs): If TARG_AUX, sort the relocs.
6111
        (coff_write_object_contents): Set A/UX aouthdr magic number.
6112
        (coff_link_add_one_symbol): Define if not defined.
6113
        (bfd_coff_std_swap_table): Initialize new field.
6114
        * libcoff.h: Rebuild.
6115
        * cofflink.c (coff_link_add_symbols): Call
6116
        bfd_coff_link_add_one_symbol rather than
6117
        _bfd_generic_link_add_one_symbol.
6118
        * coff-m68k.c (COFF_PAGE_SIZE): Don't define if already defined.
6119
        * coff-alpha.c (alpha_ecoff_backend_data): Initialize new field.
6120
        * coff-mips.c (mips_ecoff_backend_data): Likewise.
6121
        * Makefile.in: Rebuild dependencies.
6122
        (BFD32_BACKENDS): Add coff-aux.o.
6123
        (BFD32_BACKENDS_CFILES): Add coff-aux.c.
6124
 
6125
Wed Jan 31 11:37:46 1996  Andreas Schwab  
6126
 
6127
        * elf32-m68k.c (elf_m68k_relocate_section): Fix R_68K_GOT*
6128
        relocation; ignore addend with R_68K_{GOT,PLT}*O relocation.
6129
 
6130
Tue Jan 30 12:09:04 1996  Ian Lance Taylor  
6131
 
6132
        * Makefile.in (do_maintainer_clean): Remove $(srcdir)/bfd-in2.h,
6133
        $(srcdir)/libbfd.h and $(srcdir)/libcoff.h.
6134
        (maintainer-clean): Warn about deleting special files.
6135
        (bfd-in2.h, libbfd.h, libcoff.h): New targets.
6136
 
6137
        * elf32-hppa.c (elf32_hppa_relocate_section): Handle indirect and
6138
        warning symbols correctly.
6139
        * elf32-i386.c (elf_i386_relocate_section): Likewise.
6140
        * elf32-m68k.c (elf_m68k_relocate_section): Likewise.
6141
        * elf32-mips.c (mips_elf_relocate_section): Likewise.
6142
        * elf32-ppc.c (ppc_elf_relocate_section): Likewise.
6143
        * elf32-sparc.c (elf32_sparc_relocate_section): Likewise.
6144
        * elf64-sparc.c (sparc64_elf_relocate_section): Likewise.
6145
 
6146
        * syms.c (_bfd_stab_section_find_nearest_line): Add casts to avoid
6147
        warnings.
6148
 
6149
Mon Jan 29 14:27:24 1996  Kim Knuttila  
6150
 
6151
        * libcoff-in.h: aligned newly exported names with bfd naming
6152
        conventions. Removed an erroneous define of POWERPC_LE_PE.
6153
        * libcoff.h: Rebuild.
6154
        * cofflink.c, coff-ppc.c: the above function name changes
6155
 
6156
Mon Jan 29 13:06:28 1996  Ian Lance Taylor  
6157
 
6158
        From Basim Kadhim :
6159
        * ecoff.c (struct extsym_info): Define.
6160
        (_bfd_ecoff_bfd_final_link): Pass a pointer to struct extsym_info
6161
        to ecoff_link_write_external.
6162
        (ecoff_link_write_external): Accept a struct extsym_info pointer.
6163
        Strip symbols when appropriate.
6164
 
6165
        Based on patches from Ronald F. Guilmette :
6166
        * syms.c (BSF_OBJECT): Define.
6167
        (bfd_print_symbol_vandf): Print 'O' for BSF_OBJECT.
6168
        * bfd-in2.h: Rebuild.
6169
        * elfcode.h (elf_slurp_symbol_table): Set BSF_OBJECT for an
6170
        STT_OBJECT symbol.
6171
        * elf.c (swap_out_syms): Only set type to STT_OBJECT if BSF_OBJECT
6172
        is set.
6173
 
6174
        * elf32-i386.c (elf_i386_relocate_section): If -Bsymbolic, when
6175
        copying relocs into a shared object, treat a defined global symbol
6176
        as a local symbol.
6177
        * elf32-m68k.c (elf_m68k_relocate_section): Likewise.
6178
        * elf32-mips.c (mips_elf_relocate_section): Likewise.
6179
        * elf32-sparc.c (elf32_sparc_relocate_section): Likewise.
6180
 
6181
        * elflink.h (elf_link_add_object_symbols): Only set weakdef to a
6182
        real defined symbol, not to a weak defined symbol.
6183
 
6184
Mon Jan 29 11:34:36 1996  Kim Knuttila  
6185
 
6186
        * cofflink.c: removed the POWERPC_LE_PE hack, promoted some types
6187
        and made a few static functions externs.
6188
 
6189
        * coff-ppc.c (ppc_bfd_coff_final_link): new function, replaces the
6190
        POWERPC_LE_PE hack in cofflink.
6191
 
6192
        * libcoff-in.h: promoted the following from cofflink.c to allow
6193
        _bfd_coff_final_link to be overridden -  STRING_SIZE_SIZE,
6194
        coff_debug_merge_element, struct coff_debug_merge_type,
6195
        coff_debug_merge_hash_entry, coff_debug_merge_hash_table,
6196
        coff_debug_merge_hash_table_init,  coff_debug_merge_hash_table_free,
6197
        coff_debug_merge_hash_lookup, coff_link_section_info,
6198
        coff_final_link_info, coff_debug_merge_hash_newfunc,
6199
        coff_write_global_sym, coff_link_input_bfd, coff_reloc_link_order.
6200
 
6201
        * libcoff.h: re-gen'd
6202
 
6203
Fri Jan 26 18:33:35 1996  Ian Lance Taylor  
6204
 
6205
        * syms.c: Include "bfdlink.h".
6206
        (struct stab_find_info): Define.
6207
        (_bfd_stab_section_find_nearest_line): New function.
6208
        * libbfd-in.h (_bfd_stab_section_find_nearest_line): Declare.
6209
        * libbfd.h: Rebuild.
6210
        * elf-bfd.h (struct elf_obj_tdata): Add line_info field.
6211
        * elf.c (_bfd_elf_find_nearest_line): Try calling
6212
        _bfd_stab_section_find_nearest_line before searching the ELF
6213
        symbol table.  Find the closest STT_FUNC symbol, not the last one.
6214
        * libcoff-in.h (coff_data_type): Add line_info field.
6215
        * libcoff.h: Rebuild.
6216
        * coffgen.c (coff_find_nearest_line): Try calling
6217
        _bfd_stab_section_find_nearest_line before searching the COFF
6218
        symbol table.
6219
        * Makefile.in: Rebuild dependencies.
6220
 
6221
Fri Jan 26 16:11:19 1996  Michael Meissner  
6222
 
6223
        * elf32-ppc.c (R_PPC_EMB_SDA21 relocations): Make relocation size
6224
        4 bytes, so we get the correct value when updating the register
6225
        field in little endian mode.
6226
 
6227
Thu Jan 25 12:14:16 1996  Ian Lance Taylor  
6228
 
6229
        * libcoff-in.h (struct xcoff_tdata): Remove toc_section and
6230
        entry_section fields.  Add sntoc and snentry fields.
6231
        * libcoff.h: Rebuild.
6232
        * coffcode.h (coff_mkobject_hook): Initialize sntoc and snentry,
6233
        not toc_section and entry_section (the COFF file does not have any
6234
        sections at this point).
6235
        (coff_write_object_contents): Set o_snentry and o_sntoc from
6236
        snentry and sntoc rather than entry_section and toc_section.
6237
        * coff-rs6000.c (xcoff_copy_private_bfd_data): Copy sntoc and
6238
        snentry, not toc_section and entry_section.
6239
        * xcofflink.c (bfd_xcoff_size_dynamic_sections): Don't set
6240
        entry_section from hentry.
6241
        (xcoff_link_input_bfd): If a defined symbol has XCOFF_ENTRY set,
6242
        set snenty.
6243
        (xcoff_link_input_bfd): Set sntoc, not toc_section.
6244
        (xcoff_write_global_symbol): Get toc_section from sntoc, rather
6245
        than using toc_section directly.
6246
 
6247
        * archures.c: Add missing `.' in enum bfd_architecture.
6248
        * bfd-in2.h: Rebuild.
6249
 
6250
        * config.bfd (i[345]86-*-sco*elf*): Use bfd_elf32_i386_vec.  From
6251
        Robert Lipe .
6252
 
6253
Thu Jan 25 12:08:51 1996  Michael Meissner  
6254
 
6255
        * elf32-ppc.c (ppc_elf_size_dynamic_sections): Add .rela.sdata{,2}
6256
        to sections we allocate.  Use bfd_zalloc to allocate initialial
6257
        sections, not bfd_alloc.
6258
        (ppc_elf_check_relocs): Remove BFD_ASSERTs for !shared from
6259
        SDA{,2}I16 relocations.
6260
        (ppc_elf_add_symbol_hook): Use the value of -G nn to determine
6261
        whether to put something in .sbss or not.
6262
        (ppc_elf_relocate_section): Add support for more relocations.  Add
6263
        in sec->output_offset where appropriate.  Make error messages
6264
        include the symbol name.
6265
 
6266
        * elflink.c (_bfd_elf_create_linker_section): Lookup symbol before
6267
        trying to add it to the symbol table, so _GLOBAL_OFFSET_TABLE_
6268
        doesn't get redefined messages if -shared.
6269
 
6270
        * elflink.h (elf_create_pointer_linker_section) Only bump RELA
6271
        section if the rel_section field has been set up.
6272
 
6273
Wed Jan 24 20:40:26 1996  Michael Meissner  
6274
 
6275
        * elf32-ppc.c (ppc_elf_relocate_section): Fix typo in eabi
6276
        relocations.
6277
 
6278
Wed Jan 24 10:38:34 1996  Doug Evans  
6279
 
6280
        * elf32-sparc.c (elf32_sparc_merge_private_bfd_data): Delete checking
6281
        of flags, only flags used are controlled by mach number.  Bump up
6282
        output file mach number to highest of input file mach numbers.
6283
        (elf32_sparc_object_p): Watch for EF_SPARC_SUN_US1.
6284
        (elf32_sparc_final_write_processing): Set EF_SPARC_SUN_US1 if v8plusa.
6285
 
6286
        * config.bfd (sparc64-*-{sysv4*,solaris2*}): Comment out
6287
        bfd_elf64_sparc_vec support.
6288
 
6289
Tue Jan 23 14:33:05 1996  Michael Meissner  
6290
 
6291
        * elf32-ppc.c (ppc_elf_copy_private_bfd_data): Don't complain if
6292
        the embedded bit is set on some objects and not on others.  Just
6293
        or it together.
6294
        (ppc_elf_relocate_section): Implement R_PPC_EMB_{SDA21,RELSDA}
6295
        relocations.
6296
 
6297
Tue Jan 23 14:22:45 1996  Ian Lance Taylor  
6298
 
6299
        * coffcode.h (coff_new_section_hook): Don't try to align the
6300
        .stabstr section.
6301
 
6302
        * coffcode.h (coff_set_section_contents): Fix the handling of the
6303
        .lib section to work even if the entire section contents are
6304
        written at once.  From Gvran Uddeborg  and
6305
        Robert Lipe .
6306
 
6307
Mon Jan 22 18:45:51 1996  Michael Meissner  
6308
 
6309
        * elflink.h (elf_finish_pointer_linker_section): Don't allocate
6310
        memory here for contents.
6311
 
6312
        * elf32-ppc.c (ppc_elf_relocate_section): Bump up _SDA_BASE_ and
6313
        _SDA2_BASE_ by 32768.
6314
        (ppc_elf_size_dynamic_sections): #if out PLT code which we haven't
6315
        started using.  Allocate contents for .sdata and .sdata2 sections
6316
        also.
6317
        (ppc_elf_check_relocs): Use bfd_get_section_name in debug message,
6318
        rather than _name.
6319
        (ppc_elf_finish_dynamic_symbol): Remove code that attempted to
6320
        size _SDA{,2}_BASE_.
6321
        (ppc_elf_relocate_section): Change how sdata{,2} relocations are
6322
        done.
6323
 
6324
Mon Jan 22 08:52:04 1996  Doug Evans  
6325
 
6326
        * elflink.h (elf_finish_pointer_linker_section): Fix typo.
6327
 
6328
        * archures.c (bfd_mach_sparc_v9): Renamed from bfd_mach_sparc64.
6329
        (bfd_mach_sparc_{v8plus,v8plusa}): Define.
6330
        (bfd_mach_sparc_v9a): Define.
6331
        (bfd_mach_sparc_v9_p): Define.
6332
        * bfd-in2.h: Regenerated.
6333
        * aoutx.h (aout,machine_type): bfd_mach_sparc64 renamed to
6334
        bfd_mach_sparc_v9.
6335
        * elf64-sparc.c (sparc64_elf_object_p): Likewise.
6336
        * config.bfd (sparc64-*-sysv4*,sparc64-*-solaris2*): Set targ_defvec
6337
        to bfd_elf32_sparc_vec.
6338
        * cpu-sparc.c (arch_info_struct): Renamed from sparc_arch_info.
6339
        Add v8plus{,a} support.
6340
        Add v9a support.
6341
        (sparc_compatible): New function.
6342
        * elf32-sparc.h: #include "elf/sparc.h".
6343
        (elf32_sparc_merge_private_bfd_data, elf32_sparc_object_p,
6344
        elf32_sparc_final_write_processing): New functions.
6345
        (bfd_elf32_bfd_merge_private_bfd_data, elf_backend_object_p,
6346
        elf_backend_final_write_processing): Define.
6347
 
6348
Mon Jan 22 11:21:51 1996  Michael Meissner  
6349
 
6350
        * elf-bfd.h (struct elf_link_hash_entry): Add
6351
        linker_section_pointer field.
6352
        (enum elf_linker_section_enum): Enumeration for new way of
6353
        creating linker dynamic sections and symbols.
6354
        (elf_linker_section{,_pointers}): New structures for creating
6355
        dynamic sections and symbols.
6356
        (elf_obj_tdata): Add linker_section_pointers and linker_section
6357
        fields.
6358
        (elf_local_ptr_offsets,elf_linker_section): New accessor macros.
6359
        (_bfd_elf_create_linker_section): New declarations.
6360
        (_bfd_elf_find_pointer_linker_section): Ditto.
6361
        (bfd_elf{32,64}_{create,finish}_pointer_linker_section): Ditto.
6362
        (_bfd_elf_make_linker_section_rela): Ditto.
6363
 
6364
        * elf.c (_bfd_elf_link_hash_newfunc): Initialize new fields.
6365
 
6366
        * elf32-ppc.c (ppc_elf_create_dynamic_sections): Delete.
6367
        (ppc_elf_create_linker_section): New function to create the
6368
        sections .got, .sdata, and .sdata2.
6369
        (ppc_elf_size_dynamic_sections): Zap .rela.{sdata,sdata2} if
6370
        needed.
6371
        (ppc_elf_check_relocs): Support more of the eabi relocations.
6372
        (ppc_elf_relocate_section): Ditto.
6373
        (ppc_elf_finish_dynamic_symbols): Adjust _SDA{,2}_BASE_ by 32768
6374
        if the .sdata{,2} + .sbss{,2} section size is > 32k.
6375
 
6376
        * elflink.h (elf_create_pointer_linker_section): New function to
6377
        create initialized pointers in dynamic linker sections.
6378
        (elf_finish_pointer_linker_section): Actually intialize the
6379
        pointers created above.
6380
 
6381
        * elfcode.h (bfd_elf{32,64}_create_pointer_linker_section): New
6382
        macros to provide both 32 and 64 bit versions of
6383
        elf_create_pointer_linker_section.
6384
        (bfd_elf{32,64}_finish_pointer_linker_section): New macros to
6385
        provide both 32 and 64 bit versions of
6386
        elf_finish_pointer_linker_section.
6387
 
6388
        * elflink.c (_bfd_elf_create_linker_section): New function to
6389
        create a linker section.
6390
        (_bfd_elf_find_pointer_linker_section): Find a unique pointer to a
6391
        given address in the linker pointer offsets created for a given
6392
        symbol.
6393
        (_bfd_elf_make_linker_section_rela): Make a RELA section
6394
        corresponding to the generated linker section.
6395
 
6396
Sat Jan 20 08:36:10 1996  Doug Evans  
6397
 
6398
        * elf32-sparc.c (ELF_MACHINE_ALT1): Define.
6399
 
6400
Thu Jan 18 18:25:34 1996  Kim Knuttila  
6401
 
6402
        * coff-ppc.c (coff_ppc_relocate_section): changed TOCDEFN relocs.
6403
        (coff_ppc_relocate_section): Handle special values for gcc built dlls.
6404
        (dump_toc): fix diagnosing code to identify out-of-toc-bounds entries.
6405
        Also begin the toc at 4 as an eye catcher ('31313131' marks the first
6406
        toc entry in an objdump) for now.
6407
        (ppc_do_last, ppc_get_last): New function - needed to save processing
6408
        the toc owner to the end.
6409
        (ppc_coff_swap_sym_in_hook): Removed an incorrect hack for doing the
6410
        toc owner last.
6411
 
6412
        * cofflink.c (_bfd_coff_final_link): Added a new hack to keep the
6413
        toc owner from being done till last. Must define POWERPC_LE_PC
6414
        to enable it.
6415
 
6416
        * coffcode.h (coff_set_alignment_hook): alignment setting for .stab
6417
 
6418
        * peicode.h (coff_swap_scnhdr_out): set section flags for stab/str
6419
        to INFO.
6420
        (coff_swap_aouthdr_out): Removed a non-working hack for computing the
6421
        SizeOfImage for PowerPC. Ignore the size of the .junk section.
6422
 
6423
Thu Jan 18 17:42:12 1996  Ian Lance Taylor  
6424
 
6425
        * elfcore.h: Include  before .
6426
 
6427
Wed Jan 17 12:40:14 1996  Ian Lance Taylor  
6428
 
6429
        * cpu-powerpc.c (arch_info_struct): Change last entry to not point
6430
        back to first.
6431
        (bfd_powerpc_arch): Point at first entry in arch_info_struct.
6432
 
6433
Tue Jan 16 15:10:49 1996  Ian Lance Taylor  
6434
 
6435
        * elf.c (assign_file_positions_for_segments): Don't increment file
6436
        offset for a segment which contains no loadable sections.
6437
 
6438
Mon Jan 15 17:46:27 1996  Michael Meissner  
6439
 
6440
        * reloc.c: Add new PowerPC relocations.
6441
        * {bfd-in2,libbfd}.h: Regenerate.
6442
 
6443
        * elf32-ppc.c (ppc_elf_howto_raw): Add more PPC relocations.
6444
        (ppc_elf_reloc_type_lookup): Lookup new relocations.
6445
 
6446
Mon Jan 15 14:29:44 1996  Ian Lance Taylor  
6447
 
6448
        * aoutx.h (howto_table_ext): Fix RELOC_BASE10 and RELOC_BASE22
6449
        entries.
6450
 
6451
        * sunos.c (sunos_scan_ext_relocs): Don't fail assert if
6452
        info->shared.
6453
 
6454
        * coffgen.c (coff_find_nearest_line): Don't try to cache
6455
        information in sections that are not owned by a BFD.  From Richard
6456
        Henderson .
6457
 
6458
        * elf32-mips.c: Numerous changes to dynamic linking code, mostly
6459
        from Kazumoto Kojima .
6460
        * elflink.h (elf_link_output_extsym): Remove special check for
6461
        _rld_new_interface.
6462
 
6463
        * ecoffswap.h: Add prototypes for static functions.
6464
 
6465
Sun Jan 14 21:36:08 1996  Michael Meissner  
6466
 
6467
        * elf32-ppc.c (ppc_elf_{unsupported,std}_reloc): Remove functions.
6468
        (ppc_elf_howto_raw): Remove ppc_elf_{unsupported,std}_reloc
6469
        references.
6470
        (ppc_elf_relocate_section):  No longer allow .sdata/.sbss sections
6471
        to satisfy a TOC16 relocation.  Rewrite unsupported relocation
6472
        support.  Begin support for R_PPC_SDA{2,}REL.
6473
 
6474
Sat Jan 13 09:36:52 1996  Michael Meissner  
6475
 
6476
        * elf32-ppc.c (ppc_elf_create_dynamic_sections): New function to
6477
        create the .got and .got.neg sections.
6478
        (ppc_elf_size_dynamic_sections): Call it.
6479
        (ppc_elf_check_relocs): Call it.
6480
        (ppc_elf_size_dynamic_sections): Support .got.neg, just like .got.
6481
        (ppc_elf_check_relocs): Add error messages for relocations we
6482
        don't yet support.  Do not include R_PPC_SDAREL16 like a GOT
6483
        relocation.
6484
 
6485
Fri Jan 12 15:27:59 1996  Michael Meissner  
6486
 
6487
        * elf32-ppc.c (ppc_elf_fake_sections): Define, and handle the new
6488
        section flags for V.4 and eabi.
6489
 
6490
Fri Jan 12 13:59:16 1996  Ian Lance Taylor  
6491
 
6492
        * elf.c (assign_file_positions_for_segments): If a segment
6493
        contains no sections, don't mark it as readable.
6494
 
6495
        * elf-bfd.h (_bfd_elf_section_from_bfd_section): Declare.
6496
        * elfcode.h (_bfd_elf_section_from_bfd_section): Don't declare.
6497
 
6498
        * elf.c (_bfd_elf_print_private_bfd_data): Dump contents of
6499
        dynamic section, if there is one.
6500
        * elf-bfd.h (struct elf_size_info): Add swap_dyn_in field.
6501
        (bfd_elf32_swap_dyn_in): Change type of second parameter to PTR.
6502
        (bfd_elf64_swap_dyn_in): Likewise.
6503
        * elfcode.h (elf_swap_dyn_in): Change type of second parameter to
6504
        PTR.
6505
        (NAME(_bfd_elf,size_info)): Initialize swap_dyn_in field.
6506
 
6507
        * elf32-i386.c (elf_i386_size_dynamic_sections): Don't create a
6508
        DT_TEXTREL entry because of .rel.plt.  From Martin Pirker
6509
        .
6510
 
6511
Thu Jan 11 17:06:14 1996  Michael Meissner  
6512
 
6513
        * section.c (SEC_{EXCLUDE,SORT_ENTRIES}): New section flags for
6514
        PowerPC V.4 and eabi.
6515
        * bfd-in2.h: Regenerate.
6516
        * libfd.h: Regenerate.
6517
 
6518
        * elfxx-target.h (TARGET_{BIG,LITTLE}_SYM): Add new flags.
6519
 
6520
        * elf32-ppc.c (ppc_elf_section_from_shdr): Support SHT_ORDERED
6521
        section type and SHF_EXCLUDE section flag, turning them into the
6522
        appropriate bfd section flag.
6523
 
6524
Thu Jan 11 11:23:30 1996  Ian Lance Taylor  
6525
 
6526
        * xcofflink.c (xcoff_link_add_symbols): Create the special
6527
        sections if we see a DYNAMIC object, in case that is the only
6528
        XCOFF input object we see.
6529
 
6530
        * elf32-mips.c: Extensive changes for a start at dynamic linking
6531
        support, from Kazumoto Kojima .
6532
 
6533
        * elf-bfd.h (struct elf_backend_data): Add type_change_ok field.
6534
        (struct elf_backend_data): Remove
6535
        elf_backend_create_program_headers field.  Add
6536
        elf_backend_additional_program_headers and
6537
        elf_backend_modify_segment_map fields.
6538
        * elfxx-target.h (elf_backend_type_change_ok): Define if not
6539
        defined.
6540
        (elf_backend_additional_program_headers): Likewise.
6541
        (elf_backend_modify_segment_map): Likewise.
6542
        (elf_backend_create_program_headers): Don't define.
6543
        (elfNN_bed): Change to account for field changes.
6544
        * elf.c (assign_file_positions_for_segments): Call new
6545
        modify_segment_map backend function.  Don't call old
6546
        create_program_headers backend function.
6547
        (get_program_header_size): Call additional_program_headers rather
6548
        than create_program_headers.
6549
        * elflink.h (elf_link_add_object_symbols): Initialize
6550
        type_change_ok from new backend field.
6551
        (elf_link_output_extsym): Don't warn if _rld_new_interface is
6552
        defined.
6553
        (elf_reloc_link_order): Treat a reloc against a defined symbol as
6554
        a reloc against the appropriate section.
6555
 
6556
        * elf-bfd.h (struct bfd_elf_section_data): Add tdata field.
6557
        (struct elf_obj_tdata): Rename ppc_flags_init field to flags_init.
6558
        (elf_flags_init): Rename from elf_ppc_flags_init.
6559
        * elf32-ppc.c (ppc_elf_set_private_flags): Use elf_flags_init, not
6560
        elf_ppc_flags_init.
6561
        (ppc_elf_copy_private_bfd_data): Likewise.
6562
        (ppc_elf_merge_private_bfd_data): Likewise.
6563
 
6564
        * elf32-m68k.c (howto_table): Change src_mask to 0 for all
6565
        relocation entries.
6566
 
6567
Tue Jan  9 15:22:53 1996  David Mosberger-Tang  
6568
 
6569
        * coff-alpha.c (alpha_relocate_section): During final link, allow
6570
        output .lita section to be bigger than 64k by adjusting gp value
6571
        on a per-input section basis.
6572
        * libecoff.h (struct ecoff_tdata): Add issued_multiple_gp_warning
6573
        field.
6574
        (struct ecoff_section_tdata): Add gp field.
6575
 
6576
Tue Jan  9 12:00:36 1996  Ian Lance Taylor  
6577
 
6578
        Handle Alpha ECOFF changes in OSF/1 3.2.
6579
        * libecoff.h (struct ecoff_backend_data): Add get_elt_at_filepos
6580
        field.
6581
        * coff-alpha.c: Include "aout/ar.h".
6582
        (alpha_ecoff_get_relocated_section_contents): Don't require an
6583
        ALPHA_R_IGNORE reloc after an ALPHA_R_GPDISP reloc, since OSF/1
6584
        3.2 doesn't generate one.
6585
        (alpha_relocate_section): Likewise.
6586
        (alpha_ecoff_slurp_armap): Define.
6587
        (alpha_ecoff_slurp_extended_name_table): Define.
6588
        (alpha_ecoff_construct_extended_name_table): Define.
6589
        (alpha_ecoff_truncate_arname): Define.
6590
        (alpha_ecoff_write_armap): Define.
6591
        (alpha_ecoff_generic_stat_arch_elt): Define.
6592
        (alpha_ecoff_update_armap_timestamp): Define.
6593
        (ARFZMAG): Define.
6594
        (alpha_ecoff_read_ar_hdr): New static function.
6595
        (alpha_ecoff_get_elt_at_filepos): New static function.
6596
        (alpha_ecoff_openr_next_archived_file): New static function.
6597
        (alpha_ecoff_get_elt_at_index): New static function.
6598
        (alpha_ecoff_backend_data): Initialize get_elt_at_filepos field.
6599
        (ecoffalpha_little_vec): Change BFD_JUMP_TABLE_ARCHIVE from
6600
        _bfd_ecoff to alpha_ecoff.
6601
        * ecoff.c (ecoff_link_add_archive_symbols): Use get_elt_at_filepos
6602
        field from backend structure, rather than always calling
6603
        _bfd_get_elt_at_filepos.
6604
        * coff-mips.c (mips_ecoff_backend_data): Initialize
6605
        get_elt_at_filepos field.
6606
        * archive.c (_bfd_generic_read_ar_hdr_mag): New function, copied
6607
        from _bfd_generic_read_ar_hdr with minor changes.
6608
        (_bfd_generic_read_ar_hdr): Use _bfd_generic_read_ar_hdr_mag.
6609
        * libbfd-in.h (_bfd_generic_read_ar_hdr_mag): Declare.
6610
        * libbfd.h: Rebuild.
6611
 
6612
        * bfd-in.h (BFD_IN_MEMORY): Define.
6613
        * libbfd-in.h (struct bfd_in_memory): Define.
6614
        * libbfd.c (bfd_read): Handle BFD_IN_MEMORY flag.
6615
        (bfd_get_file_window): Don't try to map a BFD_IN_MEMORY file.
6616
        (bfd_write, bfd_stat): Abort if BFD_IN_MEMORY is set.
6617
        (bfd_tell, bfd_flush, bfd_seek): Handle BFD_IN_MEMORY flag.
6618
        * bfd.c (struct _bfd): Change iostream field from char * to PTR.
6619
        (bfd_get_size): Handle BFD_IN_MEMORY flag.
6620
        * cache.c (bfd_cache_close): Ignore BFD_IN_MEMORY files.
6621
        (bfd_open_file): Cast to PTR, not char *, when setting iostream.
6622
        (bfd_cache_lookup_worker): Abort if BFD_IN_MEMORY is set.
6623
        * opncls.c (bfd_fdopenr): Cast to PTR, not char *, when setting
6624
        iostream.
6625
        (bfd_openstreamr): Likewise.
6626
        * aoutx.h (NAME(aout,some_aout_object_p)): Only fstat iostream if
6627
        BFD_IN_MEMORY is not set.
6628
        * riscix.c (riscix_some_aout_object_p): Likewise.
6629
        * bfd-in2.h, libbfd.h: Rebuild.
6630
 
6631
        * targets.c (bfd_target): Add _bfd_get_elt_at_index field.
6632
        (BFD_JUMP_TABLE_ARCHIVE): Add _get_elt_at_index.
6633
        (bfd_get_elt_at_index): Define.
6634
        * archive.c (_bfd_generic_get_elt_at_index): Rename from
6635
        bfd_get_elt_at_index.  Change index parameter from int to
6636
        symindex.
6637
        * libbfd-in.h (_bfd_generic_get_elt_at_index): Declare.
6638
        (_bfd_noarchive_get_elt_at_index): Define.
6639
        (_bfd_archive_bsd_get_elt_at_index): Define.
6640
        (_bfd_archive_coff_get_elt_at_index): Define.
6641
        * bfd-in2.h, libbfd.h: Rebuild.
6642
        * aout-target.h (MY_get_elt_at_index): Define if not defined.
6643
        * coff-rs6000.c (xcoff_get_elt_at_index): Define.
6644
        * ieee.c (ieee_get_elt_at_index): Define.
6645
        * libecoff.h (_bfd_ecoff_get_elt_at_index): Define.
6646
        * oasys.c (oasys_get_elt_at_index): Define.
6647
        * som.c (som_get_elt_at_index): Define.
6648
 
6649
        * ecoff.c (_bfd_ecoff_find_nearest_line): Don't restrict line
6650
        numbers to the .text section.
6651
 
6652
Mon Jan  8 17:00:57 1996  Ian Lance Taylor  
6653
 
6654
        * ieee.c (ieee_write_debug_part): Change return type to boolean.
6655
        If there is a SEC_DEBUGGING section, get the contents of the debug
6656
        information part from it.
6657
        (ieee_set_section_contents): Store the contents of a SEC_DEBUGGING
6658
        section in memory.
6659
        (ieee_write_object_contents): Check ieee_write_debug_part return.
6660
 
6661
Thu Jan  4 17:12:37 1996  Fred Fish  
6662
 
6663
        * config.bfd (i[345]86-*-freebsd*): Add target.
6664
        * configure.in (i386freebsd_vec): Add vec.
6665
        * configure: Regenerate.
6666
        * Makefile.in (BFD32_BACKENDS): Add i386freebsd.o.
6667
        (BFD32_BACKENDS_CFILES): Add i386freebsd.c.
6668
        Rebuild dependencies..
6669
        * freebsd.h: New file.
6670
        * i386freebsd.c: New file.
6671
        * targets.c (i386freebsd_vec): Declare.
6672
        (bfd_target_vector): Add i386freebsd_vec.
6673
        * i386linux.c (SEGMENT_SIZE): Define as TARGET_PAGE_SIZE
6674
        * i386netbsd.c (SEGMENT_SIZE):  Define as TARGET_PAGE_SIZE
6675
 
6676
Thu Jan  4 16:27:46 1996  Ian Lance Taylor  
6677
 
6678
        * ieee.c (ieee_slurp_debug): New static function.
6679
        (ieee_object_p): Call it.
6680
        (ieee_slurp_section_data): Skip debugging sections.
6681
        (ieee_get_reloc_upper_bound): Likewise.
6682
        (ieee_get_section_contents): Likewise.
6683
        (ieee_canonicalize_reloc): Likewise.
6684
        (ieee_write_section_part): Likewise.
6685
        (ieee_write_debug_part): Likewise.
6686
        (ieee_write_data_part): Likewise.
6687
        (init_for_output): Likewise.
6688
 
6689
Wed Jan  3 19:42:47 1996  Michael Meissner  
6690
 
6691
        * elf32-ppc.c (ppc_elf_relocate_section): Make @GOT relocations
6692
        work.
6693
        (ppc_elf_howto_raw): Just use bfd_elf_generic_reloc for all howto
6694
        relocs, since ppc_elf_relocate_section handles the linker case.
6695
        (ppc_elf_{addr16_ha,got16,toc16,brtaken}_reloc): Delete, no longer
6696
        used.
6697
        (ppc_elf_{addr16_ha,got16,toc16,brtaken}_inner): Merge these into
6698
        ppc_elf_relocate_section since that is now the only caller.
6699
        (ppc_elf_relocate_section): Ditto.
6700
 
6701
Wed Jan  3 15:11:30 1996  Ian Lance Taylor  
6702
 
6703
        * coffcode.h (coff_write_object_contents): If we don't know the
6704
        section of the entry point for an XCOFF executable, always set the
6705
        entry address to -1.
6706
 
6707
Tue Jan  2 14:17:15 1996  Michael Meissner  
6708
 
6709
        * elf.c (bfd_section_from_shdr): Add support for note sections.
6710
 
6711
Tue Jan  2 13:10:25 1996  Ian Lance Taylor  
6712
 
6713
        * bfd-in.h (struct _symbol_info): Add stab_type field.
6714
        * bfd-in2.h: Rebuild.
6715
        * aoutx.h (NAME(aout,get_symbol_info)): Set stab_type.
6716
 
6717
        * elf32-ppc.c: Remove trailing newline from calls to
6718
        _bfd_error_handler.
6719
        (ppc_elf_merge_private_bfd_data): Only warn about endianness
6720
        difference if target endianness is known.
6721
 
6722
For older changes see ChangeLog-9495
6723
 
6724
Local Variables:
6725
mode: change-log
6726
left-margin: 8
6727
fill-column: 74
6728
version-control: never
6729
End:

powered by: WebSVN 2.1.0

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