sparclite 86x big endian instruction / little endian data support.
[deliverable/binutils-gdb.git] / bfd / ChangeLog
CommitLineData
5422c749
NC
1Thu May 21 16:59:28 1998 Nick Clifton <nickc@cygnus.com>
2
3 * peicode.h (add_data_entry): Fix precedence of operators in if ()
4 statement.
5
71842815
ILT
6Tue May 19 18:41:19 1998 Ian Lance Taylor <ian@cygnus.com>
7
8 * bfd-in.h: Move over patch to bfd-in2.h.
9
10 * reloc.c (bfd_check_overflow): Add casts before shifts which may
11 not fit in 32 bits.
12 (_bfd_relocate_contents): Likewise.
13
be461cc3
NC
14Mon May 18 14:44:15 1998 Nick Clifton <nickc@cygnus.com>
15
16 * peicode.h (add_data_entry): If the section has no private data
17 then do not create a Data Dictionary entry for it.
18
b0f7df06
RH
19Mon May 18 00:09:28 1998 Richard Henderson <rth@cygnus.com>
20
21 * elf64-alpha.c (elf64_alpha_relax_section): Set again on changes.
22 (elf64_alpha_can_merge_gots, elf64_alpha_merge_gots,
23 elf64_alpha_size_got_sections): Rewrite, handling multiple got
24 subsections during relaxation more correctly.
25
7c511326
NC
26Thu May 14 14:22:58 1998 Nick Clifton <nickc@cygnus.com>
27
28 * bfd-in2.h: Add new prototype: bfd_coff_set_symbol_class ().
29 Add extra argument to bfd_arm_process_before_allocation ().
30 * bfd-in.h: Reflect changes made in bfd-in2.h.
31 * coffgen.c (bfd_coff_set_symbol_class): New function. Set the
32 coff class of a BFD symbol.
33 * coff-arm.c: Add support for interworking between Thumb code and
34 non-interworking aware ARM code.
35
36Sun May 10 22:33:59 1998 Jeffrey A Law (law@cygnus.com)
37
38 * po/Make-in (install-info): New target.
39
980381af
ILT
40Thu May 7 17:40:56 1998 Ian Lance Taylor <ian@cygnus.com>
41
42 * filemode.c: Remove; not used.
43
44 If sysdep.h includes a header file, don't include it again:
45 * aix386-core.c: Don't include <stdio.h>, <stddef.h>, or
46 <errno.h>.
47 * aoutx.h: Don't include <string.h>. Use "sysdep.h" rather than
48 <sysdep.h>.
49 * archive.c: Don't include <string.h> or <errno.h>.
50 * evax-alpha.c; Don't include <stdio.h>.
51 * evax-egsd.c: Likewise.
52 * evax-etir.c: Likewise.
53 * evax-misc.c: Likewise.
54 * evax-emh.c: Likewise. Also, don't include <sys/types.h>.
55 * hppabsd-core.c: Don't include <stdio.h>, <sys/types.h>, or
56 <errno.h>.
57 * hpux-core.c: Likewise.
58 * netbsd-core.c: Likewise.
59 * som.c: Likewise.
60 * libbfd.c: Don't include <sys/types.h>.
61 * nlmcode.h: Don't include <string.h>.
62 * osf-core.c: Don't include <string.h> or <stdio.h>.
63 * ptrace-core.c: Don't include <stdio.h>, <sys/types.h>,
64 <errno.h>, or <unistd.h>.
65 * trad-core.c: Don't include <stdio.h> or <sys/types.h>.
66
4c7f1d41
ILT
67Thu May 7 13:12:50 1998 Klaus Kaempf <kkaempf@progis.de>
68
69 * configure.com: If the version number can not be found in
70 configure.in, set it to "unknown" rather than "2.8.1".
71
f5916da7
GRK
72Wed May 6 09:46:05 1998 Gavin Koch <gavin@cygnus.com>
73
74 * elf32-mips.c (elf_mips_mach): New.
75 (_bfd_mips_elf_object_p): Use elf_mips_mach.
76 (_bfd_mips_elf_final_write_processing): Use the names
77 of machines, rather than the numbers. Set both the ARCH
78 and MACH in e_flags. Handle a few more specific machines.
79 (_bfd_mips_elf_merge_private_bfd_data): Merge both
80 EF_MIPS_ARCH and EF_MIPS_MACH.
81
97ec511f
RH
82Tue May 5 21:01:53 1998 Richard Henderson <rth@cygnus.com>
83
84 * syms.c (bfd_is_local_label): Revert last change.
85 * srec.c (srec_write_symbols): Discard debugging symbols.
86
80d30ced
ILT
87Tue May 5 23:36:06 1998 Ian Lance Taylor <ian@cygnus.com>
88
89 * som.c: Include <ctype.h>.
90 * som.h: Don't include sysdep.h.
91
fc8ff72d
TT
92Tue May 5 18:29:24 1998 Tom Tromey <tromey@cygnus.com>
93
94 * libbfd.h: Rebuilt.
95 * libbfd-in.h: Removed gettext includes and defines.
96 * sysdep.h: Moved gettext-related includes and defines here.
97
4aa65bb8
RH
98Tue May 5 16:47:54 1998 Richard Henderson <rth@cygnus.com>
99
100 * srec.c (srec_write_symbols): Use bfd_is_local_label rather than
101 an ad-hoc test. Kill bogus #if 0 code.
102 * syms.c (bfd_is_local_label): Consider BSF_DEBUGGING symbols local.
103
104Mon May 4 16:10:33 1998 Ian Lance Taylor <ian@cygnus.com>
105
106 * sunos.c (sunos_check_dynamic_reloc): Don't use the PLT address
107 when generating a normal executable for a symbol defined in a
108 regular file. When copying a reloc into the output file, adjust
109 the addend for a PC relative reloc against a global symbol.
110
766dcecc
TT
111Mon May 4 10:08:18 1998 Tom Tromey <tromey@cygnus.com>
112
113 * libbfd.h: Rebuilt.
114 * libbfd-in.h (_): Define as dgettext.
115
d116929e
ILT
116Mon May 4 11:02:23 1998 Ian Lance Taylor <ian@cygnus.com>
117
118 * coff-arm.c (coff_arm_relocate_section): Cast to bfd_signed_vma,
119 not signed.
120 * peicode.h (pe_saved_coff_bfd_print_private_bfd_data): Use PARAMS
121 when declaring parameter types.
122 (pe_saved_coff_bfd_copy_private_bfd_data): Likewise.
123
92769ae9
ILT
124Wed Apr 29 15:35:03 1998 Ian Lance Taylor <ian@cygnus.com>
125
126 * config.bfd: If we include any ELF targets in targ_defvec and/or
127 targ_selvecs, then add the generic ELF targets to targ_selvecs.
128 * elf32-gen.c (dummy): New static const variable.
129 (elf_generic_info_to_howto): New static function.
130 (elf_generic_info_to_howto_rel): New static function.
131 (elf_info_to_howto): Define as elf_generic_info_to_howto.
132 (elf_info_to_howto_rel): Define as elf_generic_info_to_howto_rel.
133 * elf64-gen.c: Same changes as elf32-gen.c.
134 * elfcode.h (elf_object_p): For the generic target, ignore a
135 failure of bfd_default_set_arch_mach. Fix indentation a bit.
136
351fc10b
ILT
137Tue Apr 28 20:05:52 1998 Ian Lance Taylor <ian@cygnus.com>
138
139 * configure.in (WIN32LIBADD): Add -lintl on cygwin32.
140 * configure: Rebuild.
141
1142c241
JM
142Tue Apr 28 12:16:57 1998 Jason Molenda (crash@bugshack.cygnus.com)
143
144 * config.bfd: Update OSR5/Unixware patterns.
145
4d6f96eb
RH
146Mon Apr 27 18:02:24 1998 Richard Henderson <rth@cygnus.com>
147
148 * elf.c (assign_file_positions_for_segments): Allow for holes
149 between sections added by a link script.
150
0d3887ba
ILT
151Mon Apr 27 11:49:55 1998 Ian Lance Taylor <ian@cygnus.com>
152
d510976d
ILT
153 * configure.in: Change version number to 2.9.4
154 * configure: Rebuild.
155
0d3887ba
ILT
156 Based on patch from H.J. Lu <hjl@gnu.org>:
157 * elf.c (bfd_elf_get_bfd_needed_list): New function.
158 * bfd-in.h (bfd_elf_get_bfd_needed_list): Declare.
159 * bfd-in2.h: Rebuild.
160
dbcd157d
RH
161Sat Apr 25 20:07:53 1998 Richard Henderson <rth@cygnus.com>
162
163 * elf64-alpha.c (struct alpha_relax_info): Replace elfsym with other.
164 Change all users.
165
2506b568
RH
166Sat Apr 25 18:29:07 1998 Richard Henderson <rth@cygnus.com>
167
168 * elf64-alpha.c (struct alpha_relax_info): Add tsec & elfsym members.
169 (elf64_alpha_relax_section): Fill them in.
170 (elf64_alpha_relax_opt_call): Implement more than a stub.
171 (elf64_alpha_add_symbol_hook): Don't set SEC_LOAD or default
172 alignment on .scommon.
173 (elf64_alpha_merge_gots): Merge use counts as well.
174
986c3691
RH
175Sat Apr 25 14:07:29 1998 Richard Henderson <rth@cygnus.com>
176
177 * elf64-alpha.c (elf64_alpha_relax_section): Use the proper section
178 for calculating a local symbol's address.
179 (elf64_alpha_calc_got_offsets): Skip entries with 0 use count.
180 Set the .got's cooked size as well as the raw size.
181
05c07e29
NC
182Fri Apr 24 09:16:00 1998 Nick Clifton <nickc@cygnus.com>
183
184 * elf32-v850.c (v850_elf_print_private_bfd_data): Add
185 internationalisation of printed information.
186
187 * coff-arm.c (coff_arm_print_private_bfd_data): Add
188 internationalisation of printed information.
189
016b7b4b
ILT
190Fri Apr 24 12:09:18 1998 Ian Lance Taylor <ian@cygnus.com>
191
192 * syms.c (struct indexentry): Change directory_name, file_name,
193 and function_name fields to char *.
194 (struct stab_find_info): Change cached_file_name field to char *.
195
701552a5
NC
196Thu Apr 23 08:13:04 1998 Nick Clifton <nickc@cygnus.com>
197
198 * peicode.h (dir_names): Add missing N_() macros to dir_names array.
199
1158ffaf
TT
200Wed Apr 22 13:06:15 1998 Tom Tromey <tromey@cygnus.com>
201
202 * po/Make-in (MKINSTALLDIRS): Don't look in $(top_srcdir).
203
fa466864
ILT
204Wed Apr 22 17:48:48 1998 Ian Lance Taylor <ian@cygnus.com>
205
206 * Makefile.am (install-data-local): Make $(includedir).
207 * Makefile.in: Rebuild.
208
4725e922
TT
209Wed Apr 22 13:06:15 1998 Tom Tromey <tromey@cygnus.com>
210
211 * libbfd-in.h: Use `gettext' and not `dgettext' for now.
212
3f4606a0
ILT
213Wed Apr 22 12:53:40 1998 Ian Lance Taylor <ian@cygnus.com>
214
a46abdd0
ILT
215 * Makefile.am (INCLUDES): Add -I$(srcdir)/../intl -I../intl.
216 * Makefile.in: Rebuild.
217
3f4606a0
ILT
218 * bfd-in2.h: Rebuild for Nick's changes.
219
b65c6163
RH
220Tue Apr 21 23:11:51 1998 Richard Henderson <rth@cygnus.com>
221
222 * archive.c (_bfd_generic_read_ar_hdr_mag): Fix lossage in last
223 change wrt length == max_namelen.
224
53d3ce37
TT
225Tue Apr 21 21:19:36 1998 Tom Tromey <tromey@scribbles.cygnus.com>
226
227 * Many files: Added gettext invocations around user-visible
228 strings.
229 * libbfd-in.h: Added gettext includes and defines.
230 * acconfig.h (ENABLE_NLS, HAVE_CATGETS, HAVE_GETTEXT, HAVE_STPCPY,
231 HAVE_LC_MESSAGES): Define.
232 * configure.in: Call CY_GNU_GETTEXT. Create po/Makefile.in and
233 po/Makefile.
234 * Makefile.am (SUBDIRS): Added po.
235 (POTFILES): New macro.
236 (po/POTFILES.in): New target.
237 (SOURCE_HFILES): New macro.
238 (HFILES): Use it.
239 * po/Make-in, po/POTFILES.in, po/bfd.pot: New files.
240
d0f44984
PS
241Tue Apr 21 13:38:18 1998 Peter Schauer (pes@regent.e-technik.tu-muenchen.de)
242
243 * elfcore.h (bfd_prstatus): Copy core_prstatus from the first
244 NT_PRSTATUS note section encountered, it contains the status of
245 the currently executing thread when the core file was written.
246
7d6d10f9
NC
247Tue Apr 21 10:00:12 1998 Nick Clifton <nickc@cygnus.com>
248
249 * libcoff.h: Add extra parameter to
250 bfd_coff_link_output_has_begun overrideable function.
251 * cofflink.c: Pass extra parameter to
252 bfd_coff_link_output_has_begun function.
253 * bfd-in.h: Add prototypes for exported ARM interworking
254 functions.
255 * peicode.h: ARM specific code reorganised to conform to BFD
256 coding conventions.
257 * coffcode.h: ARM specific code reorganised to conform to BFD
258 coding conventions.
259 * coff-arm.c: Code reorganised to conform to the BFD coding
260 conventions. Global variables have been moved into an ARM
261 specific hash table structure and a new function:
262 bfd_arm_get_bfd_for_interworking() has been created which is
263 called from the linker scripts.
264
211b0be8
RH
265Tue Apr 21 00:11:51 1998 Richard Henderson <rth@cygnus.com>
266
267 * archive.c (_bfd_generic_read_ar_hdr_mag): Simplify end-of-name test.
268
269 * elf64-alpha.c (elf64_alpha_find_reloc_at_ofs): Renamed from
270 elf64_alpha_relax_find_reloc_ofs. Changed all callers.
271 (elf64_alpha_add_symbol_hook): Put small commons in .scommon not .sbss.
272 (elf64_alpha_size_got_sections): Don't merge .got sections twice.
273
274Sat Apr 18 01:21:04 1998 Stan Cox <scox@cygnus.com>
275
276 * config.bfd: Added sparc86x support.
277
14c683b2
JL
278Fri Apr 17 22:29:04 1998 Ian Lance Taylor <ian@cygnus.com>
279
280 * elf32-mips.c (mips_elf_relocate_section): Do not complain about
281 an out of range pc-relative jump/call to an undefined weak symbol.
282
eb03bc25
RH
283Thu Apr 16 13:49:00 1998 Richard Henderson <rth@cygnus.com>
284
285 * elf64-alpha.c (elf64_alpha_do_reloc_gpdisp): Do all gpdisp
286 comparisons signed.
287
25e8be1d
ILT
288Thu Apr 16 11:43:33 1998 Ian Lance Taylor <ian@cygnus.com>
289
216c36d9
ILT
290 * archive.c (bfd_generic_archive_p): If a slurp subroutine returns
291 an error other than bfd_error_system_call, set the error to
292 bfd_error_wrong_format.
293
b3c76255
ILT
294 * targets.c (bfd_target_vector) [SELECT_VECS not defined]: Add
295 bfd_elf32_powerpcle_vec.
296
25e8be1d
ILT
297 * elf.c (copy_private_bfd_data): If all the p_paddr fields in the
298 program segments are zero, don't set p_paddr_valid.
299
69842d08
RH
300Wed Apr 15 22:15:16 1998 Richard Henderson <rth@cygnus.com>
301
302 * elf64-alpha.c: Initial implementation of relaxation --
303 (struct alpha_elf_link_hash_entry): Add use_count member.
304 (elf64_alpha_check_relocs): Initialize and increment it.
305 (elf64_alpha_can_merge_gots): Check it when considering merging.
306 (elf64_alpha_merge_gots): Drop entries with zero use.
307 (elf64_alpha_calc_got_offsets_for_symbol): Likewise.
308 (elf64_alpha_always_size_sections): Split out got sizing ...
309 (elf64_alpha_size_got_sections): ... here. New function.
310 (elf64_alpha_relax_find_reloc_ofs): New function.
311 (elf64_alpha_relax_with_lituse): Likewise.
312 (elf64_alpha_relax_without_lituse): Likewise.
313 (elf64_alpha_relax_opt_call): Likewise.
314 (elf64_alpha_relax_section): Likewise.
315 (elf64_alpha_add_symbol_hook): Likewise.
316 (elf64_alpha_howto_table): Implement GPRELHIGH/LOW & IMMED_GP_16.
317 (elf64_alpha_relocate_section): Likewise.
318 (bfd_elf64_bfd_relax_section): Define.
319 (elf_backend_add_symbol_hook): Likewise.
320
b356d4af
RH
321Wed Apr 15 16:08:46 1998 Richard Henderson <rth@cygnus.com>
322
323 * elf.c (prep_headers): Use new EM_SPARCV9 symbol.
324 * elf64-sparc.c (ELF_MACHINE_CODE): Likewise.
325 (ELF_MACHINE_ALT1): New. Set to EM_OLD_SPARC64.
326
64596865
ILT
327Wed Apr 15 11:34:33 1998 Ian Lance Taylor <ian@cygnus.com>
328
329 * configure.in: Add -lkernel32 to WIN32LIBADD on cygwin32.
330 * configure: Rebuild.
331
5a83fcdd
ILT
332Mon Apr 13 16:46:27 1998 Ian Lance Taylor <ian@cygnus.com>
333
334 * Makefile.am (libbfd_la_LIBADD): Add @WIN32LIBADD@.
335 (libbfd_la_LDFLAGS): Add @WIN32LDFLAGS@.
336 * configure.in: Define and substitute WIN32LDFLAGS and
337 WIN32LIBADD.
338 * aclocal.m4: Rebuild with new libtool.
339 * configure, Makefile.in: Rebuild.
340
c24c4203
ILT
341Fri Apr 10 13:44:27 1998 Ian Lance Taylor <ian@cygnus.com>
342
343 * coffcode.h (coff_write_object_contents): Move a PE COMDAT symbol
344 before any other symbols in the same section.
345
d6c3cfb5
MM
346Wed Apr 8 14:50:23 1998 Michael Meissner <meissner@cygnus.com>
347
348 * config.bfd (powerpc*-*-*): Remove PowerPC NT support from ELF
349 systems.
350
b7781f9f
GRK
351Tue Apr 7 16:25:31 1998 Gavin Romig-Koch <gavin@cygnus.com>
352
353 * dwarf2.c (comp_unit): Move it earlier in the source. Add
354 addr_size.
355 (read_address): Replace 'bdf*' argument with 'comp_unit*' argument.
356 Use addr_size for address size, rather than sizeof(bfd_vma).
357 (read_attribute): Replace bdf* argument with 'comp_unit*' argument.
358 Fix call to read_address.
359 (decode_line_info): Replace bdf* argument with 'comp_unit*' argument.
360 Scrap other unneeded arguments. Fix call to read_address.
361 (scan_unit_for_functions): Fix call to read_attribute.
362 (parse_comp_unit): We now handle more values for addr_size.
363 Set addr_size in unit. Fix call to read_attribute and
364 decode_line_info.
365
d02731be
GRK
366Tue Apr 7 15:44:47 1998 Gavin Romig-Koch <gavin@cygnus.com>
367
368 * dwarf2.c (parse_comp_unit): Drop use of unit->name when it is null.
369
1d9ee924
ILT
370Tue Apr 7 12:35:18 1998 Ian Lance Taylor <ian@cygnus.com>
371
372 * archures.c (bfd_default_scan): Add m68k cases back to default
373 switch, reverting patch of March 25, since IEEE support depends
374 upon them.
375
78e700af
ILT
376Mon Apr 6 14:06:40 1998 Ian Lance Taylor <ian@cygnus.com>
377
378 * Makefile.am (diststuff): New target.
379 * Makefile.in: Rebuild.
380
1fa0aaae
JL
381Sun Apr 5 16:21:44 1998 Jeffrey A Law (law@cygnus.com)
382
383 * som.c (som_bfd_ar_write_symbol_stuff): Fix computation of
384 som_offset when we have an extended name table.
385
56231d31
ILT
386Sun Apr 5 16:04:39 1998 H.J. Lu <hjl@gnu.org>
387
388 * Makefile.am (stamp-lib): Check that .libs/libbfd.a exists before
389 trying to copy it.
390 * Makefile.in: Rebuild.
391
c4ffc67c
ILT
392Fri Apr 3 11:09:42 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
393
394 * elf32-m68k.c (elf_m68k_size_dynamic_sections): Generate section
395 symbols when creating a shared library.
396 (elf_m68k_adjust_dynindx): New function, used by above code.
397 (elf_m68k_finish_dynamic_sections): Initialize the section
398 symbols.
399 (elf_m68k_relocate_section): Change abort to BFD_ASSERT.
400
401Wed Apr 1 16:04:02 1998 Nick Clifton <nickc@cygnus.com>
402
403 * coff-arm.c (in_reloc_p): Use ARM_RVA32 in place of constant
404 value 11.
405
ed5e146b
ILT
406Wed Apr 1 13:36:58 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
407
408 * elf32-m68k.c (elf_m68k_relocate_section, case R_68K_PLT*O): Fix
409 assertion.
410
b11b841b
JL
411Tue Mar 31 00:12:12 1998 Jeffrey A Law (law@cygnus.com)
412
413 * elf-m10300.c (mn10300_elf_relax_section): Correctly handle
414 absolute symbols.
415
f3aa01e2
ILT
416Mon Mar 30 12:46:15 1998 Ian Lance Taylor <ian@cygnus.com>
417
418 * configure.in: Set version to 2.9.1.
419 * configure: Rebuild.
420
421 * Branched binutils 2.9.
422
423Mon Mar 30 12:20:50 1998 Brent Baccala <baccala@freesoft.org>
424
425 * syms.c (ENABLE_CACHING): Define.
426 (struct indexentry): Define.
427 (struct stab_cache): Remove.
428 (cmpindexentry): New static function.
429 (struct stab_find_info): Add new fields: indextable,
430 indextablesize, cached_indexentry, cached_offset, cached_stab, and
431 cached_file_name. Remove fields: file_cache, function_cache, and
432 line_cache.
433 (_bfd_stab_section_find_nearest_line): Rewrite to build a sorted
434 index table and search it.
435
24bce4a2
ILT
436Mon Mar 30 10:39:34 1998 Ian Lance Taylor <ian@cygnus.com>
437
368802d1
ILT
438 * elf.c (_bfd_elf_copy_private_section_data): Call
439 copy_private_bfd_data once we've seen the last SEC_ALLOC section.
440
24bce4a2
ILT
441 * cpu-mips.c: Remove trailing comma at end of enumeration list.
442
ac129350
ILT
443Sat Mar 28 16:33:02 1998 Ian Lance Taylor <ian@cygnus.com>
444
445 * coff-arm.c: Define all globally visible variables and functions
446 only when COFF_WITH_PE is not defined.
447 * configure.in (armpe_little_vec, armpe_big_vec): Add
448 coff-arm.lo.
449 * configure: Rebuild.
450
f6727b90
ILT
451Fri Mar 27 16:06:02 1998 Ian Lance Taylor <ian@cygnus.com>
452
453 Fix some gcc -Wall warnings:
454 * aout-arm.c (MY(fix_pcrel_26)): Add casts to avoid warnings.
455 * archive.c (_bfd_generic_read_ar_hdr_mag): Likewise.
456 * archures.c (bfd_default_scan): Likewise.
457 * bfd.c (bfd_scan_vma): Likewise.
458 * binary.c (mangle_name): Likewise
459 * coff-arm.c (aoutarm_fix_pcrel_26): Likewise.
460 * coff-sh.c (sh_relocate_section): Likewise.
461 * coff-stgo32.c (create_go32_stub): Likewise.
462 * coffcode.h (coff_slurp_line_table): Likewise.
463 * ecoff.c (_bfd_ecoff_write_armap): Likewise.
464 * elf.c (_bfd_elf_make_section_from_shdr): Likewise.
465 (assign_file_positions_for_segments): Likewise.
466 * elf32-mips.c (mips_elf_relocate_section): Likewise.
467 * elf32-ppc.c (ppc_elf_add_symbol_hook): Likewise.
468 * oasys.c (oasys_write_sections): Likewise.
469 * ppcboot.c (ppcboot_object_p): Likewise.
470 (mangle_name): Likewise.
471 * riscix.c (riscix_fix_pcrel_26): Likewise.
472 * srec.c (srec_scan): Likewise.
473 * stabs.c (_bfd_write_section_stabs): Likewise.
474 * sunos.c (sunos_add_dynamic_symbols): Likewise.
475 * aout-ns32k.c (_bfd_ns32k_relocate_contents): Add default case to
476 switch. Declare parameters for function pointers.
477 * archures.c (bfd_default_scan): Add braces to avoid ambiguous if
478 warning.
479 * elf.c (elf_sort_sections): Likewise.
480 * coff-arm.c (coff_thumb_pcrel_common): Initialize relocation.
481 Add default cases to switches.
482 (coff_arm_relocate_section): Remove unused local variables.
483 Always set rstat.
484 (coff_arm_bfd_set_private_flags): Change flag variable to type
485 flagword.
486 * coff-mips.c (mips_relocate_section): Initialize use_lo.
487 * coff-ppc.c (ppc_record_toc_entry): Change i to unsigned int.
488 (dump_toc): Change cat to const, and initialize it.
489 * coff-sh.c (sh_relax_delete_bytes): Initialize start and voff.
490 * elf32-sh.c (sh_elf_relax_delete_bytes): Likewise.
491 (sh_elf_relocate_section): Initialize r_symndx.
492 * coffcode.h (coff_compute_section_file_positions): Only declare
493 old_sofar if ALIGN_SECTIONS_IN_FILE.
494 (coff_write_object_contents): Initialize csym.
495 * coffgen.c (coff_pointerize_aux): Make type and class unsigned.
496 * cpu-ns32k.c (_bfd_ns32k_get_displacement): Add default case to
497 switch.
498 * dwarf2.c: Include libiberty.h.
499 (read_2_signed_bytes, read_4_signed_bytes): Comment out.
500 (decode_line_info): Remove unused local variables.
501 * elf32-m32r.c (m32r_elf_sda16_reloc): Likewise.
502 (m32r_elf_relocate_section): Likewise.
503 * elf32-v850.c (v850_elf_store_addend_in_insn): Likewise.
504 (v850_elf_reloc): Likewise.
505 * elf-bfd.h (elf_linker_section_t): Make alignment unsigned.
506 (struct elf_obj_tdata): Make cverdefs and cverrefs unsigned.
507 * elf.c (assign_file_positions_for_segments): Always set adjust.
508 * elf32-d30v.c (bfd_elf_d30v_reloc): Initialize tmp_addr. Fully
509 parenthesize expression.
510 * elf32-m32r.c (m32r_elf_relocate_section): Always initialize h.
511 (m32r_elf_object_p): Return a value.
512 (m32r_elf_print_private_bfd_data): Change fprintf format string.
513 * elf32-mips.c (mips_elf_final_link): Initialize last.
514 (mips_elf_finish_dynamic_sections): Initialize last and dindx.
515 * elf32-v850.c (v850_elf_object_p): Return a value.
516 (v850_elf_print_private_bfd_data): Change fprintf format string.
517 * elfcode.h (elf_slurp_symbol_table): Change symcount and i to
518 unsigned long.
519 * elflink.h (elf_link_add_object_symbols): Change vernum to
520 unsigned int, and initialize it. Change fprintf format string.
521 (NAME(bfd_elf,size_dynamic_sections)): Cast -1 to bfd_size_type
522 when setting or comparing to soname_indx.
523 (elf_create_pointer_linker_section): Change num_symbols to
524 unsigned int.
525 * libcoff-in.h (coff_data_type): Change flags to flagword.
526 * peicode.h (pe_print_idata): Initialize idx. Change j to
527 bfd_size_type. Initialize hint_member. Remove useless test to
528 time_stamp.
529 (pe_print_edata): Change num_functions and num_names in struct
530 EDT_type to unsigned long. Remove cast. Change fprintf format
531 string.
532 * ppcboot.c (ppcboot_object_p): Change i to size_t.
533 * reloc.c (bfd_get_reloc_size): Change return type to unsigned
534 int.
535 * reloc16.c (bfd_coff_reloc16_relax_section): Change shrinks to
536 int *. Update uses. Change j to long.
537 * bfd-in2.h, libcoff.h: Rebuild.
538
197de3ba 539Fri Mar 27 10:10:46 1998 Catherine Moore <clm@cygnus.com>
08eefd3e
ILT
540
541 * elf32-v850.c Remove definition of USE_REL.
542 (v850_elf_info_to_howto_rela): New function.
543 (v850_elf_perform_relocation): Renamed from
544 v850_elf_store_addend_in_insn. Removed replace argument.
545 (v850_elf_reloc): store the relocation in the addend field instead
546 of the insn.
547 (v850_elf_final_link_relocate): Now calls
548 v850_elf_perform_relocation.
549 (v850_elf_relocate_section): Remove code to generate REL
550 relocations.
551
f6727b90
ILT
552Thu Mar 26 13:32:17 1998 Ian Lance Taylor <ian@cygnus.com>
553
554 * coffcode.h (coff_new_section_hook): Set the type and storage
555 class in the native symbol information allocated for a new section
556 symbol.
557
8c11394a
NC
558Thu Mar 26 10:13:41 1998 Nick Clifton <nickc@cygnus.com>
559
560 * peicode.h: Chain together calls to
561 coff_bfd_copy_private_bfd_data and
562 coff_bfd_print_private_bfd_data.
563
564 * coff-arm.c: Add prototypes for
565 coff_arm_bfd_print_private_bfd_data and
566 coff_arm_bfd_copy_private_bfd_data.
567
38c574bb
NC
568Wed Mar 25 15:45:55 1998 Nick Clifton <nickc@cygnus.com>
569
570 * coffcode.h (coff_mkobject_hook): Set private falgs even for a PE
571 build.
572
573 * peicode.h: Call arm-coff private data functions after handling
574 pe private data.
575
576 * coff-arm.c: Turn statics into globals so that they can be shared
577 both pe and pei backends.
578
d04efb80
ILT
579Wed Mar 25 15:19:38 1998 Ian Lance Taylor <ian@cygnus.com>
580
581 * aoutf1.h (sunos_set_arch_mach): Use bfd_mach_m68* rather than
582 plain numbers.
583 (sunos_write_object_contents): Likewise.
584 * aoutx.h (NAME(aout,machine_type)): Likewise.
585 * coffcode.h (coff_set_arch_mach_hook): Likewise.
586
b35711c4
ILT
587Wed Mar 25 13:59:24 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
588
ce6821a5
ILT
589 * archures.c (bfd_mach_m68*): Add definitions for various m68k
590 variants.
591 (bfd_default_scan): Remove m68k special cases.
592 * bfd-in2.h: Rebuild.
d04efb80
ILT
593 * mipsbsd.c (MY(write_object_contents)): Use bfd_mach_m68* rather
594 than plain numbers.
ce6821a5
ILT
595 * sparclynx.c (NAME(lynx,set_arch_mach)): Likewise.
596 * cpu-m68k.c (arch_info_struct): Likewise. Add entry for
597 m68k:68000.
598 (bfd_m68k_arch): Set mach field to zero to signal no explicit
599 selection, change printable_name to just "m68k" and make that the
600 default instead of m68k:68020.
601
df5f44d1
ILT
602 * aout-tic30.c (NAME): Define this to avoid multiple definitions
603 from aoutx.h.
604 (MY_get_section_contents): Define as aout_32_get_section_contents
605 rather than NAME(aout,get_section_contents).
606
607 * elf-m10300.c (elf32_mn10300_link_hash_table_create): Fix cast.
608
b35711c4
ILT
609 * evax-alpha.c (evax_set_arch_mach): Only accept bfd_arch_alpha
610 and call bfd_default_set_arch_mach to do the real work.
611
0892d40b
RH
612Wed Mar 25 10:41:35 1998 Richard Henderson <rth@cygnus.com>
613
614 * bout.c (BALX): Include return register g14 as part of the insn.
615 (BALX_MASK): New.
616 (calljx_callback): Use it.
617
1719df74
ILT
618Wed Mar 25 11:19:28 1998 Ian Lance Taylor <ian@cygnus.com>
619
ce6821a5
ILT
620 * libbfd-in.h (BFD_ALIGN): Cast this parameter to bfd_vma.
621 * libbfd.h: Rebuild.
622
df5f44d1
ILT
623 * elf-m10300.c (elf32_mn10300_finish_hash_table_entry): Change
624 byte_count to unsigned int.
625 (mn10300_elf_relax_section): Initialize internal_relocs. Remove
626 unused local variables.
627
b35711c4
ILT
628 * evax-alpha.c (evax_close_and_cleanup): Remove unused local
629 variables er and er1.
630
883f72a2
ILT
631 * cpu-v850.c: Include <ctype.h>.
632 (scan): Case isdigit argument to unsigned char.
633
1719df74
ILT
634 From Yan Meroth <YAN.MEROTH@st.com>:
635 * ihex.c (ihex_scan): Add extbase variable so that getting an
636 extended linear address record does not ignore any previous
637 extended address.
638 (ihex_write_object_contents): When writing out an extended linear
639 address record, zero out any previous extended address.
640
b7f28e8f
ILT
641Tue Mar 24 16:09:43 1998 Manfred Hollstein <manfred@s-direktnet.de>
642
643 * ieee.c (do_one): Check section before dereferencing it.
644 (ieee_canonicalize_reloc): Likewise with src->relent.sym_ptr_ptr.
645 (ieee_generic_stat_arch_elt): Likewise with abfd->my_archive.
646
615141db
ILT
647Mon Mar 23 18:51:47 1998 Joel Sherrill <joel@OARcorp.com>
648
649 * config.bfd: (sh*-*-rtems*): Switched from ELF to COFF.
650
454515c0
NC
651Mon Mar 23 14:23:36 1998 Nick Clifton <nickc@cygnus.com>
652
653 * coff-arm.c: Add interworking functions to pe backends.
654
655start-sanitize-r5900
656Sun Mar 22 13:05:08 1998 Jeffrey A Law (law@cygnus.com)
657
658 * elf32-mips.c (R_MIPS15_S3): New relocation type.
659 (elf_mips_howto_table): Add R_MIPS15_S3.
660 (mips_reloc_map): Map BFD_RELOC_MIPS15_S3 to R_MIPS15_S3.
661 * reloc.c (BFD_RELOC_MIPS15_S3): New relocation type.
662 * bfd-in2.h, libbfd.h: Rebuilt.
663
664end-sanitize-r5900
665Fri Mar 20 18:47:20 1998 Ian Lance Taylor <ian@cygnus.com>
666
667 * configure.in: Use AM_DISABLE_SHARED.
668 * aclocal.m4, configure: Rebuild with libtool 1.2.
669
a748b374
NC
670Fri Mar 20 11:25:41 1998 Nick Clifton <nickc@cygnus.com>
671
672 * coff-arm.c (coff_arm_relocate_section): Better error messages
673 when interowrking conflucts occur. Courtesy of Jonathan Walton
5e04ff14 674 and Tony Thompson.
a748b374
NC
675 (aoutarm_std_reloc_howto): Fixed bitsize fields of rightshifted
676 relocations. Patch courtesy of Jonathan Walton and Tony
5e04ff14 677 Thompson.
a748b374 678
f2caa39b
RH
679Fri Mar 20 02:26:43 1998 Richard Henderson <rth@cygnus.com>
680
681 * elf32-sparc.c (elf32_sparc_adjust_dynamic_symbol): Revert
682 part of Feb 22 change controling when to override the existing
683 symbol with the .plt entry.
684
41eca8a7
NC
685Wed Mar 18 09:26:25 1998 Nick Clifton <nickc@cygnus.com>
686
687 * config.bfd (targ_cpu): Add thumb-pe target.
688
689 * coffcode.h (OTHER_GLOBAL_CLASS): Support thumb external
690 functions in PE build.
691
692Sun Mar 8 23:37:26 1998 Stan Cox <scox@equinox.cygnus.com>
693
694 * config.bfd (sparclite-*-elf*): Added.
695
ad4413e6
GRK
696start-sanitize-vr4320
697Tue Mar 3 11:24:05 1998 Gavin Koch <gavin@cygnus.com>
698
699 * mips-cpu.c: Reorganize sanitization.
700
701 * archures.c, bfd-in2.h, mips-cpu.c : Added bfd_mach_mips4320.
702
703end-sanitize-vr4320
3c9f13f4
ILT
704Mon Feb 23 19:31:19 1998 Ian Lance Taylor <ian@cygnus.com>
705
706 * configure.in: Add elf.lo to elf shell variable.
707 * Makefile.am (BFD_LIBS): Remove elf.lo.
708 (BFD_LIBS_CFILES): Remove elf.c.
709 (BFD32_BACKENDS): Add elf.lo.
710 (BFD32_BACKENDS_CFILES): Add elf.c.
711 * configure, Makefile.in: Rebuild.
712
b35d842d
UD
7131998-02-23 15:53 Richard Henderson <rth@cygnus.com>
714
715 * elf32-i386.c (elf_i386_relocate_section): A pc-relative
716 relocation against a now-local symbol should not have a dynamic
717 relocation.
718
b1f09b63
ILT
719Mon Feb 23 16:17:08 1998 Ian Lance Taylor <ian@cygnus.com>
720
721 * peicode.h (coff_swap_filehdr_in): Don't set BFD flag HAS_SYMS in
722 COFF filehdr flags.
723 (pe_print_private_bfd_data): Print PE flags. From Mikey
724 <jeffdb@netzone.com>.
725
2f53b8ff
RH
726Sun Feb 22 20:39:00 1998 Richard Henderson <rth@cygnus.com>
727
728 * elf32-sparc.c (elf32_sparc_adjust_dynamic_symbol): Don't create
b35d842d
UD
729 a plt entry when we can determine that we authoritatively define
730 the symbol.
2f53b8ff 731
07fafd5d
RH
732Sun Feb 22 20:33:05 1998 Richard Henderson <rth@cygnus.com>
733
734 * configure.in (COREFILE selection): Remove sparc-*-linux*. They
735 don't actually use trad-core, but a SunOS-style core file handled
736 by gdb directly.
737 * hosts/sparclinux.h: Remove.
738
739start-sanitize-sky
740Thu Feb 19 02:38:52 1998 Doug Evans <devans@charmed.cygnus.com>
741
742 * reloc.c (BFD_RELOC_MIPS_DVP_27_S4): New reloc type.
743 * elf32-mips.c (enum reloc_type): Add R_MIPS_DVP_27_S4.
744 (elf_mips_dvp_27_s4_howto): Describe it.
745 (bfd_elf32_bfd_reloc_type_lookup): Handle it.
746 (mips_info_to_how_rel): Handle it.
747 (mips_elf_relocate_section): Handle it.
748 * bfd-in2.h,libbfd.h: Regenerate.
749
750end-sanitize-sky
751Wed Feb 18 15:31:06 1998 Ian Lance Taylor <ian@cygnus.com>
752
753 * peicode.h (pe_print_idata): If there is no .idata section, look
754 for the import tables in some other section. Make the initial
755 label line up better with the data. Print the import address
756 table even if there is no import name table. If the import
757 address table holds actual addresses, print them.
758
58713764
DE
759start-sanitize-sky
760Tue Feb 17 20:00:26 1998 Doug Evans <devans@canuck.cygnus.com>
761
762 * config.bfd (targ_archs): If mips64r5900-sky-elf, add bfd_dvp_arch.
763
764end-sanitize-sky
5290378a
ILT
765Tue Feb 17 12:58:34 1998 Ian Lance Taylor <ian@cygnus.com>
766
767 * libbfd.c (bfd_seek): If fseek fails, save errno around call to
768 bfd_tell. If errno is EINVAL, set bfd_error_file_truncated, not
769 bfd_error_system_call.
770
6e639e5d
ILT
771Fri Feb 13 13:11:33 1998 Ian Lance Taylor <ian@cygnus.com>
772
004040c9
ILT
773 * Makefile.am (AUTOMAKE_OPTIONS): Define.
774 * configure, Makefile.in, aclocal.m4: Rebuild with automake 1.2e.
775
cf4ce877 776 From H.J. Lu <hjl@gnu.org>:
6e639e5d
ILT
777 * Makefile.am (libbfd_la_LDFLAGS): Define.
778 * Makefile.in: Rebuild.
779
eee4e8ca
ILT
780Thu Feb 12 17:31:11 1998 Ian Lance Taylor <ian@cygnus.com>
781
f53bcd0a
ILT
782 NetBSD patches from Gordon W. Ross <gwr@mc.com>:
783 * netbsd.h (MACHTYPE_OK): Define.
784 (MY(write_object_contents)): Use DEFAULT_ARCH and DEFAULT_MID when
785 calling N_SET_MACHTYPE, rather than having a switch.
786 * libaout.h (enum machine_type): Add M_PMAX_NETBSD, M_VAX_NETBSD,
787 and M_ALPHA_NETBSD.
788 * i386netbsd.c (MACHTYPE_OK): Don't define.
789 (DEFAULT_MID): Define.
790 * m68k4knetbsd.c (SEGMENT_SIZE): Don't define.
791 (MACHTYPE_OK): Don't define.
792 (DEFAULT_MID): Define.
793 * m68knetbsd.c: (MACHTYPE_OK): Don't define.
794 (DEFAULT_MID): Define.
795 * ns32knetbsd.c (MACHTYPE_OK): Don't define.
796 (DEFAULT_MID): Define.
797 * sparcnetbsd.c (MACHTYPE_OK): Don't define.
798 (DEFAULT_MID): Define.
799
eee4e8ca
ILT
800 NetBSD patches from Gordon W. Ross <gwr@mc.com>:
801 * vaxnetbsd.c: New file.
802 * netbsd-core.c: Clean up. Remove unused macros. Use netbsd
803 rather than netbsd_core.
804 * targets.c (vaxnetbsd_vec): Declare.
805 (bfd_target_vector): Add vaxnetbsd_vec. If NETBSD_CORE is
806 defined, add netbsd_core_vec.
807 * configure.in: Set COREFILE for alpha*-*-netbsd* and
808 powerpc-*-netbsd* to netbsd-core.lo. If COREFILE is
809 netbsd-core.lo, set COREFLAG to -DNETBSD_CORE.
810 * config.bfd (alpha*-*-netbsd*): New target.
811 * Makefile.am: Rebuild dependencies.
812 (BFD32_BACKENDS): Add vaxnetbsd.lo.
813 (BFD32_BACKENDS_CFILES): Add vaxnetbsd.c.
814 * configure, Makefile.in: Rebuild.
815
816 * configure.host: Remove the old shared library build stuff. We
817 now use libtool instead.
818
ba475667
RH
819Wed Feb 11 17:13:09 1998 Richard Henderson <rth@cygnus.com>
820
821 * tekhex.c (tekhex_write_object_contents): Call tekhex_init.
822
823Tue Feb 10 19:23:28 1998 H.J. Lu <hjl@gnu.org>
824
825 * configure.in: Take stab-syms.lo out of sparclinux_vec list.
826 * configure: Rebuild.
827
9cca7762 828Tue Feb 10 15:16:38 1998 Nick Clifton <nickc@cygnus.com>
bae2276c
NC
829start-sanitize-m32rx
830 * elf32-m32r.c (m32r_elf_merge_private_bfd_data): Do not complain
831 when merging m32r BFDs into m32rx BFDs.
832end-sanitize-m32rx
9cca7762
NC
833 * elf32-v850.c (remember_hi16s_reloc): New function.
834 (find_remembered_hi16s_reloc): New function.
835 (v850_elf_store_addend_in_insn): Use the above new functions to
836 match up HI6S relocs with LO16 relocs.
837
9eb7b67b
DE
838start-sanitize-sky
839Tue Feb 10 13:25:14 1998 Doug Evans <devans@canuck.cygnus.com>
840
841 * archures.c (bfd_mach_dvp_{vif,gif}): Renamed from ..._{pke,gpuif}.
842 (bfd_txvu_arch): Delete.
843 * cpu-mips.c (arch_info_struct): dvp:{vif,gif} renamed from
844 dvp:{pke,gpuif}.
845 * bfd-in2.h: Regenerate.
846
847end-sanitize-sky
5303c574
ILT
848Tue Feb 10 15:01:39 1998 Ian Lance Taylor <ian@cygnus.com>
849
850 * configure.in: Change -linux* to -linux-gnu*.
851 * config.bfd, configure.host: Likewise.
852 * configure: Rebuild.
853
6aa32b90
NC
854Mon Feb 9 19:40:59 1998 Nick Clifton <nickc@cygnus.com>
855
856 * elf32-v850.c (v850_elf_store_addend_in_insn): Fix another
857 LO16/HI16S bug and improve comments about what is going on.
858
7ee4e307
ILT
859Sat Feb 7 15:27:03 1998 Ian Lance Taylor <ian@cygnus.com>
860
861 * configure, aclocal.m4: Rebuild with new libtool.
862
75172c0f
NC
863start-sanitize-v850e
864Fri Feb 6 14:48:20 1998 Nick Clifton <nickc@cygnus.com>
865
866 * elf32-v850.c (v850_elf_merge_private_bfd_data): Do not complain
8b6dcc1b 867 when merging v850 code into v850e/v850ea code. Do not initialise
5e04ff14 868 output flags if the input is the default architecture.
75172c0f 869end-sanitize-v850e
9b47bc23
JL
870Fri Feb 6 11:50:22 1998 Jeffrey A Law (law@cygnus.com)
871
bb1fd71f 872start-sanitize-r5900
6f84b00f 873 * cpu-mips.c (arch_info_struct): Make r5900 pointer size 32bits.
bb1fd71f 874end-sanitize-r5900
9b47bc23
JL
875 * elf32-mips.c (bfd_elf32_bfd_reloc_type_lookup): For BFD_RELOC_CTOR
876 get the size from bfd_arch_bits_per_address instead of directly
877 from the isa.
878
29b7118a
MM
879Thu Feb 5 14:21:34 1998 Michael Meissner <meissner@cygnus.com>
880
b494ec3e
MM
881 * libbfd-in.h (BFD_ALIGN): If rounding up would cause the address
882 to wrap, just return all 1's bits instead.
883 * libbfd.h: Regenerate.
29b7118a 884
4ea65387
ILT
885Thu Feb 5 11:51:05 1998 Ian Lance Taylor <ian@cygnus.com>
886
1f286476
ILT
887 * coff-i386.c (coff_pe_i386_relocate_section): New static function
888 if COFF_WITH_PE.
889 (coff_relocate_section): If COFF_WITH_PE, define as
890 coff_pe_i386_relocate_section.
891 * coffcode.h (coff_write_object_contents): If COFF_IMAGE_WITH_PE,
892 skip empty sections, to match coff_write_object_contents.
893
4ea65387
ILT
894 * elf64-mips.c (mips_elf64_swap_reloca_out): Swap out r_addend,
895 rather than swapping out r_offset twice. From Luke Deller
896 <luked@cse.unsw.edu.au>.
897
9a837903
ILT
898Wed Feb 4 19:11:28 1998 Ian Lance Taylor <ian@cygnus.com>
899
900 * configure.in: Set libtool_enable_shared rather than
901 libtool_shared. Remove diversion hack.
902 * configure, Makefile.in, doc/Makefile.in, aclocal.m4: Rebuild
903 with new libtool.
904
68d864d7
ILT
905Wed Feb 4 16:10:21 1998 Brent Baccala <baccala@freesoft.org>
906
907 * syms.c (struct stab_cache): Define.
908 (struct stab_find_info): Remove cached_offset, cached_stab,
909 cached_str, and cached_stroff fields. Add file_cache,
910 function_cache, and line_cache fields.
911 (_bfd_stab_section_find_nearest_line): Use extensive caching to
912 speed up searches.
913
7f84fa70
ILT
914Wed Feb 4 13:34:22 1998 Ian Lance Taylor <ian@cygnus.com>
915
916 * peicode.h (pe_print_idata): Check for import of ordinal rather
917 than name.
918 (pe_print_edata): If there is no .edata section, look for the
919 export data in some other section.
920
229811d1
JM
921Mon Feb 2 20:05:42 1998 Jason Molenda (crash@bugshack.cygnus.com)
922
923 * configure.in: Change version to 2.8.4.
924 * configure: Regenerated.
925
926Mon Feb 2 17:39:39 1998 Steve Haworth <steve@pm.cse.rmit.EDU.AU>
927
928 Add tms320c30 support:
929 * cpu-tic30.c: New file.
930 * aout-tic30.c: New file.
931 * coff-tic30.c: New file.
932 * archures.c (bfd_arch_tic30): Define.
933 (bfd_tic30_arch): Declare.
934 (bfd_archures_list): Add bfd_tic30_arch.
935 * targets.c (bfd_target_vector): Add tic30_aout_vec and
936 tic30_coff_vec.
937 * reloc.c (BFD_RELOC_TIC30_LDP): Define.
938 * coffcode.h (coff_set_arch_mach_hook): Add tic30 case.
939 (coff_set_flags): Likewise.
940 * config.bfd (tic30-*-*aout*, tic30-*-*coff*): New targets.
941 * configure.in (tic30_aout_vec, tic30_coff_vec): New vectors.
942 * Makefile.am: Rebuild dependencies.
943 (ALL_MACHINES): Add cpu-tic30.lo.
944 (ALL_MACHINES_CFILES): Add cpu-tic30.c.
945 (BFD32_BACKENDS): Add aout-tic30.lo and coff-tic30.lo.
946 (BFD32_BACKENDS_CFILES): Add aout-tic30.c and coff-tic30.c.
947 * configure, Makefile.in, bfd-in2.h, libbfd.h: Rebuild.
948
581d7269
NC
949Mon Feb 2 12:25:12 1998 Nick Clifton <nickc@cygnus.com>
950
951 * elf32-v850.c (v850_elf_store_addend_in_insn): Allow HI16_S reloc
952 to lag behind LO16 reloc by a couple of instructions.
953
1a58a2d8
ILT
954Mon Feb 2 14:09:46 1998 Ian Lance Taylor <ian@cygnus.com>
955
229811d1
JM
956 * Makefile.am ($(srcdir)/bfd-in2.h): Add dummy command to force
957 make to reexamine the file timestamp.
958 ($(srcdir)/libbfd.h, $(srcddir)/libcoff.h): Likewise.
959
1a58a2d8
ILT
960 * elf64-alpha.c (ELF_MAXPAGESIZE): Change to 0x10000 from
961 0x100000.
962
c62a82b5
DE
963start-sanitize-sky
964Fri Jan 30 17:48:17 1998 Doug Evans <devans@canuck.cygnus.com>
965
c44b38d7
DE
966 * elf32-mips.c (elf_mips_dvp_11_pcrel_howto): Set pcrel_offset=true
967 and partial_inplace=false.
c62a82b5
DE
968 (mips_elf_relocate_section): Recognize R_MIPS_DVP_11_PCREL.
969
970end-sanitize-sky
8a5863be
ILT
971Fri Jan 30 19:07:07 1998 Geoff Keating <geoffk@ozemail.com.au>
972
973 * elf32-ppc.c (ppc_elf_create_dynamic_sections): New procedure
974 to create .dynsbss and .rela.sbss sections.
975 (ppc_elf_adjust_dynamic_symbol): Put space for small data to be
976 copied from dynamic objects into .sbss.
977 (ppc_elf_size_dynamic_sections): Strip .rela.sbss if we don't
978 use it. Correct typo of .rela.sdata2.
979 (ppc_elf_finish_dynamic_symbol): Generate reloc to where we
980 put the data, which may now be in .sbss.
981 (ppc_elf_relocate_section): A SDAREL16 reloc can be in dynsbss.
982 (elf_backend_create_dynamic_sections): Define as
983 ppc_elf_create_dynamic_sections.
984
985 * elf32-ppc.c (ppc_elf_check_relocs): Don't emit R_PPC_REL* relocs
986 against _GLOBAL_OFFSET_TABLE_.
987 (ppc_elf_relocate_section): Don't emit R_PPC_REL32 relocs in
988 shared libraries which refer to local symbols. Make sure that the
989 test for allocating space for a reloc in a shared object is the
990 same as the test for emitting a reloc.
991
3134a2bd
DE
992start-sanitize-sky
993Thu Jan 29 17:44:53 1998 Doug Evans <devans@canuck.cygnus.com>
994
995 * elf32-mips.c: Add dvp support.
996
997end-sanitize-sky
847b9629
ILT
998Thu Jan 29 15:55:35 1998 J.J. van der Heijden <J.J.vanderHeijden@student.utwente.nl>
999
1000 * config.bfd (i[3456]-*-mingw32*): New target.
1001 * acinclude.m4 (BFD_BINARY_OPEN): Check for mingw32.
1002 * aclocal.m4, configure: Rebuild.
1003
36df40e0 1004start-sanitize-sky
4ae438d7 1005Wed Jan 28 15:14:28 1997 Doug Evans <devans@canuck.cygnus.com>
36df40e0
DE
1006
1007 * config.bfd, configure.in: Add dvp support.
1008 * configure: Regenerate.
1009 * aclocal.m4: Regenerate.
1010 * archures.c, reloc.c, cpu-mips.c: Add dvp support.
1011 * bfd-in2.h, libbfd.h, libcoff.h: Regenerate.
1012
1013end-sanitize-sky
e6e3d4bd
ILT
1014Wed Jan 28 13:41:26 1998 Ian Lance Taylor <ian@cygnus.com>
1015
1016 * elf.c (_bfd_elf_close_and_cleanup): Only check the strtab if we
1017 have a bfd_object.
1018
16ce6205
RH
1019Tue Jan 27 21:43:55 1998 Richard Henderson <rth@cygnus.com>
1020
1021 Sparc v9 ABI compliant PLT:
1022 * elf64-sparc.c (PLT_HEADER_SIZE): V9 ABI uses 4 entries.
1023 (plt_templates, sparc64_elf_build_plt_entry): Delete.
1024 (LARGE_PLT_THRESHOLD): New define.
1025 (GOT_RESERVED_ENTRIES): V9 ABI only uses 1.
1026 (sparc64_elf_build_plt): New function.
1027 (sparc64_elf_plt_entry_offset): Likewise.
1028 (sparc64_elf_plt_ptr_offset): Likewise.
b35d842d
UD
1029 (sparc64_elf_adjust_dynamic_symbol): Change h->plt_offset to
1030 contain the index for convenience. Skip the initial entries
16ce6205
RH
1031 in .rela.plt.
1032 (sparc64_elf_size_dynamic_sections): Zero the allocated contents
1033 memory for the benefit of .rela.plt.
1034 (sparc64_elf_relocate_section): Call sparc64_elf_plt_entry_offset.
1035 (sparc64_elf_finish_dynamic_symbol): Kill template stuff. Use
1036 sparc64_elf_plt_entry_offset & sparc64_elf_plt_ptr_offset for reloc.
1037 (sparc64_elf_finish_dynamic_sections): DT_PLTGOT points to .plt.
1038 Call sparc64_elf_build_plt.
1039 (elf_backend_want_got_plt): No.
1040 (elf_backend_plt_readonly): No.
1041 (elf_backend_plt_alignment): 8.
1042
1043 * elf.c (_bfd_elf_close_and_cleanup): New function; free the shstrtab.
1044 * elf-bfd.h (_bfd_elf_close_and_cleanup): Declare it.
b35d842d 1045 * elfxx-target.h (bfd_elfNN_close_and_cleanup): Arrange for it
16ce6205
RH
1046 to be called.
1047
29410c45
JL
1048Tue Jan 27 21:45:15 1998 Jeffrey A Law (law@cygnus.com)
1049
1050 * archures.c (bfd_mach_mips*): Add definitions for various MIPS
1051 processors.
1052 * cpu-mips.c (arch_info_struct): Add mips variants.
1053 * bfd-in2.h: Rebuilt.
1054
ba6ea759
NC
1055Tue Jan 27 15:06:04 1998 Nick Clifton <nickc@cygnus.com>
1056
5e04ff14
ILT
1057 * coff-arm.c (coff_arm_relocate_section): Preserve the contents of
1058 t2a3_b_insn.
ba6ea759 1059
a3e62cc0
ILT
1060Tue Jan 27 12:47:27 1998 Robert Lipe <robertl@dgii.com>
1061
b35d842d 1062 * config.bfd (i[3456]86-sco3.2v5*): ELF now the default.
e6e3d4bd 1063 (i[3456]86sco3.2v5*coff): New target.
a3e62cc0 1064
f1dc7bb2
ILT
1065Mon Jan 26 15:41:30 1998 Ian Lance Taylor <ian@cygnus.com>
1066
1067 * bfd-in2.h: Rebuild with changes to chew--tab expansion.
1068
f3da1439
RH
1069Thu Jan 22 21:26:48 1998 Richard Henderson <rth@cygnus.com>
1070
1071 * bfd.c (bfd_get_error_handler): Add orthogonal function.
1072 * bfd-in2.h: Regenerate.
1073
31af3ca9
RH
1074Thu Jan 22 21:13:39 1998 Richard Henderson <rth@cygnus.com>
1075
1076 * tekhex.c (tekhex_write_object_contents): Check for no symbols.
1077
d7340050
ILT
1078Wed Jan 21 21:19:03 1998 Ian Lance Taylor <ian@cygnus.com>
1079
f5e23c73
ILT
1080 * coff-i386.c (coff_i386_rtype_to_howto): If COFF_WITH_PE, don't
1081 adjust addend for an output common symbol (from Jimmy Blair
1082 <jimmyb@wrs.com>). If COFF_WITH_PE, adjust addend for PC relative
1083 defined symbol to counteract adjustment made in generic relocation
1084 code.
1085
d7340050
ILT
1086 * dwarf2.c: Include sysdep.h, not stdio.h and stdlib.h.
1087
bc01e4a2
ILT
1088Wed Jan 21 21:16:06 1998 Manfred Hollstein <manfred@s-direktnet.de>
1089
1090 * coff-m88k.c (GET_SCNDHR_NRELOC): Fix typo in macro name.
1091 (GET_SCNDHR_NLNNO): Likewise.
1092
e79e79cf
ILT
1093Mon Jan 19 12:49:52 1998 Ian Lance Taylor <ian@cygnus.com>
1094
1095 * cpu-sh.c (arch_info_struct): Correct next field of sh3e.
1096
cc662e86
NC
1097Wed Jan 14 17:23:27 1998 Nick Clifton <nickc@cygnus.com>
1098
1099 * elf32-m32r.c: Add macros to handle NOP insertion.
1100
16b7d65d
RH
1101Wed Jan 14 16:15:22 1998 Richard Henderson <rth@cygnus.com>
1102
1103 * xcofflink.c (xcoff_mark_symbol): Don't mark the absolute section.
1104 (xcoff_mark): Likewise.
1105 (xcoff_build_ldsyms): Mark absolute symbols.
1106
52dcb248
RH
1107Wed Jan 14 16:03:11 1998 Richard Henderson <rth@cygnus.com>
1108
1109 * bout.c (b_out_write_object_contents): Sort symbols before output
1110 to keep {CALL,BAL}NAME symbols adjacent.
1111 (b_out_symbol_cmp): New function.
1112
47d9c139
ILT
1113Tue Dec 30 12:45:18 1997 Ian Lance Taylor <ian@cygnus.com>
1114
1115 * elf32-sparc.c (elf32_sparc_check_relocs): If -Bsymbolic, don't
1116 allocate space for a PC relative reloc against a symbol which is
1117 defined in a regular file.
1118 (elf32_sparc_relocate_section): If -Bsymbolic, don't copy a PC
1119 relative reloc against a symbol which is defined in a regular
1120 file.
1121
14bf95ea
ILT
1122Mon Dec 29 18:02:28 1997 Ian Lance Taylor <ian@cygnus.com>
1123
1124 From Jonathan Stone <jonathan@DSG.Stanford.EDU>:
1125 * config.bfd (mips-dec-netbsd*): Add ECOFF vectors to
1126 targ_selvecs.
1127 (mips*el-*-netbsd*): Like mips-dec-netbsd*.
1128 (mips*-*-netbsd*): New target.
1129
7e3d76b7
ILT
1130Mon Dec 29 17:13:28 1997 H.J. Lu (hjl@gnu.org)
1131
1132 * elflink.h (elf_link_assign_sym_version): Change error message
1133 from "undefined version name" to "undefined versioned symbol
1134 name".
1135
0f3003ef
NC
1136Mon Dec 29 11:41:16 1997 Nick Clifton <nickc@cygnus.com>
1137
1138 * coff-arm.c (coff_arm_relocate_section): Fix typo from previous
1139 delta.
1140
9ae77ebe
ILT
1141Tue Dec 23 17:01:10 1997 Ian Lance Taylor <ian@cygnus.com>
1142
77e4176e
ILT
1143 * libbfd-in.h (_bfd_dwarf2_find_nearest_line): Declare.
1144 * libbfd.h: Rebuild.
1145
9ae77ebe
ILT
1146 * peicode.h (coff_swap_scnhdr_out): Set .reloc section to be
1147 shared. Set stab* sections to be shared and read. Set .rsrc
1148 section to be read and shared.
1149
d92329a9
ILT
1150Mon Dec 22 13:20:57 1997 Ian Lance Taylor <ian@cygnus.com>
1151
1152 * Makefile.am: Rebuild dependencies.
1153 (ALL_MACHINES_CFILES): Add dwarf2.lo.
1154 (ALL_MACHINES_CFILES): Add dwarf2.c.
1155 * Makefile.in: Rebuild.
1156
1157 * coff-arm.c: Don't include obstack.h.
1158
0b3fcc1c
ILT
1159Mon Dec 22 13:04:33 1997 Joel Sherrill <joel@oarcorp.com>
1160
1161 * config.bfd (i[3456]86*-go32-rtems*): Fix to be the same as
1162 i[3456]86-go32.
1163
1164Thu Dec 18 16:01:25 1997 Doug Evans <devans@canuck.cygnus.com>
1165
1166 * configure: Regenerate to get @SHELL@ substituted.
1167
0f9d6eeb
NC
1168Wed Dec 17 09:45:09 1997 Nick Clifton <nickc@cygnus.com>
1169
6124cd1e
NC
1170 * coff-arm.c (coff_arm_relocate_section): Only look at section
1171 owner if there is one.
1172
0f9d6eeb 1173 * elf.c (assign_file_positions_for_segments): Fail if there is not
5e04ff14 1174 enough room for the program headers.
0f9d6eeb 1175
eae43516
GRK
1176Tue Dec 16 08:09:56 1997 Gavin Koch <gavin@cygnus.com>
1177
1178 * elf.c (_bfd_elf_find_nearest_line): Call
1179 _bfd_dwarf2_find_nearest_line first.
1180 * elf32-mips.c (_bfd_mips_elf_find_nearest_line): Same.
b35d842d 1181 * dwarf2.c: New file; implement _bfd_dwarf2_find_nearest_line.
eae43516 1182
2e0a5c10
NC
1183Mon Dec 15 16:08:52 1997 Nick Clifton <nickc@cygnus.com>
1184
a3240f68 1185start-sanitize-m32rx
2e0a5c10
NC
1186 * elf32-m32r.c (m32r_elf_merge_private_bfd_data): Allow M32R
1187 object files to be merged into a M32RX executable.
b35d842d 1188
a3240f68
NC
1189 * archures.c: Add bfd_mach_m32rx.
1190end-sanitize-m32rx
1191 * archures.c: Add bfd_mach_m32r.
2e0a5c10 1192
f60c3b70
FF
1193Mon Dec 15 16:11:22 1997 Fred Fish <fnf@cygnus.com>
1194
1195 * coffcode.h (ALIGN_SECTIONS_IN_FILE): Define if I960 not defined.
1196 (coff_compute_section_file_positions): Use ALIGN_SECTIONS_IN_FILE
1197 to decide when to align the file sections for paging.
1198start-sanitize-tic80
1199 * coffcode.h (ALIGN_SECTIONS_IN_FILE): Undefine for TIC80COFF.
1200end-sanitize-tic80
1201
a5fdb816
NC
1202Mon Dec 15 15:01:15 1997 Nick Clifton <nickc@cygnus.com>
1203
1204 * elf32-m32r.c (m32r_elf_object_p): New Function.
1205 (m32r_elf_final_write_processing): New Function.
1206 (m32r_elf_set_private_flags): New Function.
1207 (m32r_elf_copy_private_bfd_data): New Function.
1208 (m32r_elf_merge_private_bfd_data): New Function.
1209 (m32r_elf_print_private_bfd_data): New Function.
1210 (elf_backend_object_p): Point to m32r_object_p.
1211 (elf_backend_final_write_processing): Point to
b35d842d 1212 m32r_elf_final_write_processing.
a5fdb816 1213 (bfd_elf32_bfd_copy_private_bfd_data): Point to
b35d842d 1214 m32r_elf_copy_private_bfd_data.
a5fdb816 1215 (bfd_elf32_bfd_merge_private_bfd_data): Point to
b35d842d 1216 m32r_elf_merge_private_bfd_data.
a5fdb816 1217 (bfd_elf32_bfd_set_private_flags): Point to
b35d842d 1218 m32r_elf_set_private_bfd_data.
a5fdb816 1219 (bfd_elf32_bfd_print_private_bfd_data): Point to
b35d842d 1220 m32r_elf_print_private_bfd_data.
a5fdb816 1221
a3240f68 1222start-sanitize-m32rx
a5fdb816 1223 * cpu-m32r.c: Add m32rx cpu architecture.
085e370b 1224 * bfd-in2.h (bfd_mach_m32rx): Add identifier for M32RX
b35d842d 1225 architecture machines.
a3240f68 1226end-sanitize-m32rx
a5fdb816 1227
085e370b 1228 * bfd-in2.h (bfd_mach_m32r): Add identifier for M32R architecture
b35d842d 1229 machines.
a5fdb816 1230
3607f666
BK
1231Fri Dec 12 11:30:28 1997 Brendan Kehoe <brendan@canuck.cygnus.com>
1232
1233 * configure: Only build libbfd shared if --enable-shared's value
1234 was `yes', or was set to `*bfd*'.
1235 * aclocal.m4: Likewise.
f0726391
BK
1236 * NOTE: this really needs to be fixed in libtool/libtool.m4, the
1237 original source of this bit of code. It's not clear what the best fix
1238 would be, though.
3607f666 1239
5b3a74e8
RH
1240Thu Dec 11 17:48:11 1997 Richard Henderson <rth@cygnus.com>
1241
1242 * linker.c (generic_link_add_symbol_list): Always init udata.p so
1243 that the generic relaxation code can function when input and output
1244 file formats are mismatched.
1245
a3f1e78a
ILT
1246Thu Dec 11 01:02:18 1997 Ian Lance Taylor <ian@cygnus.com>
1247
1248 * coff-sh.c (bfd_coff_small_swap_table): Initialize new fields.
1249
1250 * elf.c (assign_file_positions_for_segments): For a loadable
1251 section, make sure that the load address is correct relative to
1252 the load address of the segment plus the size of the segment so
1253 far.
1254
1255 * coffcode.h (_coff_link_output_has_begun): Make static.
1256 (_coff_final_link_postscript): Likewise.
1257
5ee8d932
ILT
1258Wed Dec 10 23:37:11 1997 Ian Lance Taylor <ian@cygnus.com>
1259
1260 * elflink.h (elf_link_input_bfd): Handle a relocateable link in
1261 which a relocation refers to an indirect or warning symbol.
1262
5b6f4b31
NC
1263Wed Dec 10 11:15:55 1997 Nick Clifton <nickc@cygnus.com>
1264
5ee8d932
ILT
1265 * coff-arm.c (bfd_arm_coff_final_link): Function deleted.
1266 (coff_arm_final_link_postscript): New function.
1267 (coff_arm_link_output_has_begun): New function.
1268
1269 * libcoff.h (struct bfd_coff_backend_data): Add new fields:
1270 _bfd_coff_link_output_has_begun and
1271 _bfd_coff_final_link_postscript. Add new macros:
1272 bfd_coff_link_output_has_begun() and
1273 bfd_coff_final_link_postscript().
1274
1275 * cofflink.c (_bfd_coff_final_link): Insert calls to
1276 bfd_coff_link_output_has_begun() and
1277 bfd_coff_final_link_postscript().
1278
1279 * coffcode.h: Add two new fields to bfd_coff_backend_data
1280 structure: _bfd_coff_link_output_has_begun and
1281 _bfd_coff_final_link_postscript. Add default initialisers for
1282 these fields. Add overridable aliases for the coff swap functions
1283 in the backend data structure.
1284
5b6f4b31
NC
1285 * elf32-v850.c: Update with patches from the branch to fix
1286 HI16_S/LO16 reloc pairs.
1287
de748328
MM
1288start-sanitize-d30v
1289Wed Dec 10 14:06:48 1997 Michael Meissner <meissner@cygnus.com>
1290
1291 * elf32-d30v.c (d30v_info_to_howto_rela): New function to support
1292 RELA relocations.
1293 (USE_REL): Don't define any more, switch to using RELA
1294 relocations.
1295 (elf_info_to_howto): Define as d30v_info_to_howto_rela.
1296
1297end-sanitize-d30v
c02ed6a8
AC
1298Tue Dec 9 11:37:53 1997 Andrew Cagney <cagney@b1.cygnus.com>
1299
1300 * archures.c (bfd_mach_mips*): Define.
1301 (start-sanitize-vr5400):
1302 (vr5400, bfd_mach_vr5000): Define.
1303 (end-sanitize-vr5400):
1304 (bfd_default_scan): For 3000 and 4000 replace magic constant with
1305 macro.
1306
1307 * cpu-mips.c (N): Define.
1308 (bfd_mips_arch, arch_info_struct): Re-write using macro N, replace
1309 numbers with bfd_mach_mips* macros.
1310
22a9f052
NC
1311Fri Dec 5 11:13:46 1997 Nick Clifton <nickc@cygnus.com>
1312
1313 * elf32-v850.c (v850_elf_reloc, v850_elf_store_addend_in_insn,
5e04ff14 1314 v850_elf_relocate_section): Fix reloc addend handling.
22a9f052
NC
1315 (v850_elf_section_from_bfd_section, v850_elf_symbol_processing,
1316 v850_elf_add_symbol_hook, v850_elf_link_output_symbol_hook,
1317 v850_elf_section_from_shdr, v850_elf_fake_sections): New functions
5e04ff14 1318 to create and handle special common sections.
0a5875fc 1319 (v850_elf_final_link_relocate): Fix HI16 and HI16_S relocations
5e04ff14 1320 which have data stored in the instructions.
22a9f052 1321
09888f15
NC
1322Tue Dec 2 10:26:16 1997 Nick Clifton <nickc@cygnus.com>
1323
1324 * coff-arm.c (TARGET_UNDERSCORE): Revert back to '_'
1325 (USER_LABEL_PREFIX): Revert back to '_'
1326
1327 * config.bfd (targ_cpu): Add support for Thumb target.
1328
6fdb746d
JR
1329Mon Dec 1 20:24:18 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
1330
1331 * coff-sh.c (sh_coff_howtos): Add R_SH_SWITCH8 entry.
1332 (get_symbol_value): Handle R_SH_SWITCH8.
1333 (sh_relax_delete_bytes): Likewise.
1334
0fa555ea
NC
1335Wed Nov 26 14:13:34 1997 Nick Clifton <nickc@cygnus.com>
1336
f5ddda0f
NC
1337 * coff-arm.c (TARGET_UNDERSCORE): Changed to match definition in
1338 gcc/config/arm/semi.h
1339
0fa555ea 1340 * coffcode.h (coff_slurp_symbol_table): Add ARM and Thumb symbol
b35d842d 1341 classes.
0fa555ea 1342
4ccd975a
AC
1343Sun Nov 23 16:02:58 1997 Andrew Cagney <cagney@b1.cygnus.com>
1344
1345 * freebsd.h (SWAP_MAGIC): Read magic number little and not big
1346 endian.
1347
803fea79
NC
1348Wed Nov 26 09:30:37 1997 Nick Clifton <nickc@cygnus.com>
1349
1350 * coffcode.h (coff_mkobject_hook): Only set private flags for non
1351 PE ARM ports.
1352
1353Tue Nov 25 15:33:23 1997 Richard Henderson <rth@cygnus.com>
1354
1355 * binary.c (binary_set_section_contents): Also ignore NEVER_LOAD
1356 sections.
1357
4936eb9a
NC
1358Tue Nov 25 10:55:36 1997 Nick Clifton <nickc@cygnus.com>
1359
1360 * coff-arm.c (coff_arm_bfd_merge_private_bfd_data): Do not
1361 complain if inout and output formats differ.
1362
cc37e39a
ILT
1363Tue Nov 25 11:26:27 1997 Ian Lance Taylor <ian@cygnus.com>
1364
90d74939
ILT
1365 * Makefile.am (BFD32_BACKENDS): Remove tekhex.lo.
1366 (BFD32_BACKENDS_CFILES): Remove tekhex.c.
1367 * Makefile.in: Rebuild.
1368 * aclocal.m4, configure, src/Makefile.in: Rebuild with current
1369 automake and autoconf.
1370
cc37e39a
ILT
1371 * coff-arm.c (arm_allocate_interworking_sections): Fix typo
1372 (COFF_WITH_PR to COFF_WITH_PE).
1373
f76d3101
NC
1374Mon Nov 24 15:47:49 1997 Nick Clifton <nickc@cygnus.com>
1375
33d5d351
NC
1376 * coff-arm.c: Make variables and some functions static, so that
1377 this file can be included in multiple object files.
1378 (coff_arm_bfd_final_link): Fix minor bug.
f76d3101 1379
e1aeb285
NC
1380Sat Nov 22 15:16:00 1997 Nick Clifton <nickc@cygnus.com>
1381
1382 * coff-arm.c: Add support for PIC and APCS-FLOAT type binaries.
1383
1384 * coffcode.h: Add support for PIC and APCS-FLOAT type binaries.
1385
f3fb08f6
ILT
1386Sat Nov 22 16:06:56 1997 Klaus Kaempf <kkaempf@progis.de>
1387
1388 * evax-emh.c (_bfd_evax_write_emh): Use alloca instead of strdup.
1389
fbf760a8
ILT
1390Sat Nov 22 12:29:30 1997 Ian Lance Taylor <ian@cygnus.com>
1391
be462f88
ILT
1392 * sunos.c (sunos_add_one_symbol): When overriding a defined
1393 symbol, set it to undefined, not new.
1394
fbf760a8
ILT
1395 * elf32-sh.c (sh_elf_relax_delete_bytes): Don't kill LABEL
1396 relocs.
1397
d627a674
RH
1398Fri Nov 21 14:14:22 1997 Richard Henderson <rth@cygnus.com>
1399
1400 * coff-sh.c (sh_relax_section): Force sign extention of USES r_offset.
1401 (sh_relax_delete_bytes): Don't kill LABEL relocs.
1402
bf39c490
JL
1403Mon Nov 17 15:08:38 1997 Jeffrey A Law (law@cygnus.com)
1404
1405 * elf-m10300.c (elf32_mn10300_finish_hash_table_entry): Fix typo.
1406 (mn10300_elf_relax_section): Likewise.
1407
469e5960
FF
1408Sat Nov 15 15:36:07 1997 Fred Fish <fnf@cygnus.com>
1409
1410 * peicode.h (coff_swap_aouthdr_in): Cast second arg of
1411 bfd_h_get_* calls to "bfd_byte *".
1412
1413Tue Nov 11 10:37:23 1997 Jeffrey A Law (law@cygnus.com)
1414
1415 * elf-m10300.c (elf32_mn10300_link_hash_entry): Add new field
1416 "movm_stack_size".
1417 (mn10300_elf_relax_section): Include stack space for register saves
1418 in the imm8 field of a "call" instruction.
1419 (compute_function_info): Determine how much stack is allocated by
1420 the movm instruction. Fix typo.
1421 (elf32_mn10300_link_hash_newfunc): Initialize movm_stack_size.
1422
9793236c
ILT
1423Mon Nov 10 14:32:40 1997 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
1424
1425 * elflink.h (NAME(bfd_elf,size_dynamic_sections)): Don't crash if
1426 a version dependency could not be found.
1427
d481c877 1428Tue Nov 4 12:05:56 1997 Klaus K"ampf <kkaempf@progis.de>
aa9aa96f 1429
d481c877 1430 * configure.com: Get version info from configure.in
aa9aa96f 1431
ccbab31d
RH
1432Fri Oct 24 11:15:58 1997 Jakub Jelinek <jj@sunsite.mff.cuni.cz>
1433
1434 * elf64-sparc.c (sparc64_elf_merge_private_bfd_data):
1435 New function. Avoid mixing US1 and HAL R1 code.
1436 Set resulting memory ordering to the strongest one used.
1437 (sparc64_elf_object_p): Set bfd_mach correctly.
1438
d87ad0dc
RH
1439Thu Oct 23 14:09:33 1997 Richard Henderson <rth@cygnus.com>
1440
1441 * elf64-sparc.c (sparc64_elf_howto_table): Add UA64 & UA16.
1442 (sparc64_elf_check_relocs): Handle them.
1443 (sparc64_elf_relocate_section): Likewise. Before emitting a dyn reloc,
1444 check alignment and transmute R_SPARC_x<->R_SPARC_UAx.
1445
5e0c6aad
RH
1446Thu Oct 23 00:53:14 1997 Richard Henderson <rth@dot.cygnus.com>
1447
1448 * configure.in (sparc*-*-linux*): Use trad-core and ...
1449 * hosts/sparclinux.h: New file.
1450
65c2dd6e
RH
1451Thu Oct 23 00:25:29 1997 Richard Henderson <rth@dot.cygnus.com>
1452
1453 * config.bfd (sparc64-*-linux*): New target.
b35d842d 1454
65c2dd6e
RH
1455 * elf-bfd.h (struct elf_backend_data): Add plt_alignment member.
1456 * elflink.c (_bfd_elf_create_got_section): Set .got alignment based
1457 on arch_size.
1458 (_bfd_elf_create_dynamic_sections): Likewise for .rel* sections.
1459 Set .plt alignment from new plt_alignment.
1460 * elflink.h (elf_link_create_dynamic_sections): Set version section
1461 alignment to LOG_FILE_ALIGN.
1462 * elfxx-target.h (elf_backend_plt_alignment): Provide default.
1463 (elfXX_bed): Init plt_alignment.
b35d842d 1464
65c2dd6e
RH
1465 * elf64-sparc.c (sparc64_elf_check_relocs,
1466 sparc64_elf_adjust_dynamic_symbol, sparc64_elf_size_dynamic_sections,
1467 sparc64_elf_adjust_dynindx, sparc64_elf_finish_dynamic_symbol,
1468 sparc64_elf_finish_dynamic_sections): New functions.
1469 (sparc64_elf_howto_table): Fix a few name strings.
1470 (ELF_DYNAMIC_INTERPRETER): New definition.
1471 (sparc64_elf_relocate_section): Handle shared libraries.
b35d842d 1472
65c2dd6e
RH
1473 * elf64-sparc.c (struct plt_template, plt_*_header, plt_*_entry,
1474 sparc64_elf_build_plt_entry, sparc64_elf_finish_dynamic_symbol):
b35d842d 1475 PLT definitions sparc64-linux originally choose. These will go
65c2dd6e 1476 away soon in favour of the official abi definitions.
b35d842d 1477
18ed85fd
ILT
1478Wed Oct 22 16:08:45 1997 Ian Lance Taylor <ian@cygnus.com>
1479
1480 * coff-sh.c (coff_small_object_p): New static function.
1481 (coff_small_new_section_hook): New static function.
1482 (bfd_coff_small_swap_table): New static const structure.
1483 (coff_small_close_and_cleanup): Define.
1484 (coff_small_bfd_free_cached_info): Define.
1485 (coff_small_get_section_contents): Define.
1486 (coff_small_get_section_contents_in_window): Define.
1487 (shcoff_small_vec): New static structure.
1488 (shlcoff_small_vec): New static structure.
1489 * targets.c (bfd_target_vector): Add shcoff_small_vec and
1490 shlcoff_small_vec.
1491 * config.bfd (sh-*-elf*): Add shcoff_small_vec and
1492 shlcoff_small_vec to targ_selvecs.
1493 (sh-*-*): Likewise.
1494 * configure.in: Add shcoff_small_vec and shlcoff_small_vec cases.
1495 * configure: Rebuild.
1496
d5241511
ILT
1497Mon Oct 20 15:01:27 1997 Klaus K"ampf <kkaempf@progis.de>
1498
412222d9
ILT
1499 * evax-egsd.c: Weak symbols are global.
1500
1501 * evax-emh.c: Use proper casts.
1502
1503 * evax-egsd.c (_bfd_evax_write_egsd): Remove unneeded uname.
1504
1505 * evax-egsd.c: Section names and symbols have different
1506 length restrictions. Add length parameter to
1507 _bfd_evax_length_hash_symbol.
1508 * evax-etir.c: Likewise.
1509 * evax-misc.c (_bfd_evax_length_hash_symbol): Add length
1510 parameter.
1511 * evax.h (EOBJ_S_C_SECSIZ): Define.
1512
1513 * evax-alpha.c: Remove duplicate test.
1514
1515 * evax-emh.c: SYS$ functions are upper-case.
1516
1517 * evax-egsd.c: Create separate sections for common symbols.
1518 * evax-etir.c: Don't output common section.
1519 * evax.h: Bump up section count.
1520
1521 * configure.com: Use 64bit integers with DEC C.
1522
1523 * evax-egsd.c: Make section flags dec c compatible.
d5241511 1524
5efcd359
JL
1525Mon Oct 20 09:38:31 1997 Jeffrey A Law (law@cygnus.com)
1526
1527 * som.c (normalize): Delete function.
1528 (som_bfd_ar_write_symbol_stuff): New parameter elength. All callers
1529 changed. Use passed in elength to determine size of the extended
1530 name table instead of computing it again.
1531
263378e7 1532Sun Oct 19 23:36:21 1997 Jim Wilson <wilson@cygnus.com>
e232f1aa 1533
263378e7
ILT
1534 * peicode.h (coff_swap_scnhdr_out): Use |= not = to set
1535 IMAGE_SCN_MEM_READ for an unrecognized section.
e232f1aa 1536
27637913
JL
1537Sun Oct 19 21:04:56 1997 Jeffrey A Law (law@cygnus.com)
1538
1539 * som.c (som_bfd_ar_write_symbol_stuff): Account for trailing
1540 '/' in the extended name table.
1541
bccab630
RH
1542Fri Oct 17 00:04:13 1997 Richard Henderson <rth@cygnus.com>
1543
1544 * elflink.h (elf_link_assign_sym_version): For explicitly versioned
1545 symbols, check globals list before matching on locals.
1546
04e46812
MM
1547Thu Oct 16 08:17:06 1997 Michael Meissner <meissner@cygnus.com>
1548
3cd99cc6 1549 * peicode.h (coff_swap_scnhdr_out,pe_print_idata): Fix mangled
04e46812
MM
1550 patch.
1551
c086885a
ILT
1552Wed Oct 15 13:45:10 1997 Ian Lance Taylor <ian@cygnus.com>
1553
fc1213aa
ILT
1554 * peicode.h (pe_mkobject_hook): Set DLL flag.
1555 (pe_bfd_copy_private_bfd_data): Copy DLL flag.
1556
c086885a
ILT
1557 * peicode.h (coff_swap_scnhdr_out): Set IMAGE_SCN_MEM_DISCARDABLE
1558 for .stab* sections. Replace strlen of constant strings with
1559 number.
1560
d980a81f
RH
1561Tue Oct 14 15:42:45 1997 Richard Henderson <rth@cygnus.com>
1562
1563 * elf64-alpha.c (elf64_alpha_merge_ind_symbols): New function to
1564 merge got and reloc entries from ind syms to their target.
1565 (elf64_alpha_always_size_sections): Call it.
1566 (elf64_alpha_check_relocs): Operate on the target of indirect symbols.
1567 (elf64_alpha_can_merge_gots): Likewise.
1568 (elf64_alpha_merge_gots): Likewise.
1569
1570 * elf64-alpha.c (elf64_alpha_relocate_section): Back out HJ's change,
1571 as it is insufficient to handle the relocation changes as well.
1572
6a587c4a
RH
1573Mon Oct 13 23:10:08 1997 Richard Henderson <rth@cygnus.com>
1574
1575 * elf64-alpha.c (elf64_alpha_calc_dynrel_sizes): Allow for RELATIVE
1576 relocs for symbols in shlibs that have been forced local.
1577 (elf64_alpha_relocate_section): Output RELATIVEs in .got for same.
1578
3a13dd8f
RH
1579Mon Oct 13 21:24:04 1997 Richard Henderson <rth@cygnus.com>
1580
6a587c4a 1581 * elf64-alpha.c (elf64_alpha_relocate_section): Use the
3a13dd8f
RH
1582 got_enties of the default symbol for the default versioned
1583 symbol. Patch from hjl@gnu.ai.mit.edu, modified not to use
1584 alloca in the loop.
1585
c7eece07
NC
1586Mon Oct 13 17:37:37 1997 Nick Clifton <nickc@cygnus.com>
1587
1588 * elf32-v850.c (v850_elf_final_link_relocate): Only use the bottom
1589 24 bits of the PC when computing a PC relative relocation.
1590
676d3f02
NC
1591Fri Oct 10 16:01:30 1997 Nick Clifton <nickc@cygnus.com>
1592
1593 * elf32-v850.c (v850_elf_reloc, v850_elf_final_link_relocate):
1594 Correct value for maximum positive 22 bit PC relative relocation.
1595 (v850_elf_final_link_relocate): Prevent overflow from HI16_S and
b35d842d 1596 HI_16 relocations. Correct bit adjustment in TDA offsets.
676d3f02 1597
70e818d4
DE
1598Thu Oct 9 16:43:39 1997 Doug Evans <dje@canuck.cygnus.com>
1599
1600 * elf64-sparc.c (sparc_elf_{hix22,lox10}_reloc): New functions.
1601 (sparc64_elf_howto_table): Use them for HIX22,LOX10 relocs.
1602
b0632d61
RH
1603Wed Oct 8 11:38:45 1997 Richard Henderson <rth@cygnus.com>
1604
1605 * elfcore.h (bfd_prstatus): Pedanticly, alignment_power should
1606 be LOG_FILE_ALIGN.
1607
ba2934ce
RH
1608Wed Oct 8 11:36:00 1997 Richard Henderson <rth@cygnus.com>
1609
1610 * config.bfd: Missed one alpha* change.
1611
1612Tue Oct 7 13:00:17 1997 Doug Evans <dje@canuck.cygnus.com>
1613
1614 * elf32-sparc.c (_bfd_sparc_elf_howto_table): Remove BFD64 support.
1615 * elf64-sparc.c (SPARC64_OLD_RELOCS): Undef.
1616 (MINUS_ONE): New macro.
1617 (sparc_elf_notsup_reloc): New function.
1618 (sparc64_elf_howto_table): Add entries for DISP64,PLT64,HIX22,LOX10,
1619 H44,M44,L44,REGISTER.
1620 (sparc_reloc_map): Likewise. Map BFD_RELOC_CTOR to R_SPARC_64.
1621 (init_insn_reloc): New function.
1622 (sparc_elf_wdisp16_reloc): Use it.
1623 (sparc64_elf_relocate_section): Add entries for OLO10,HIX22,LOX10.
1624
758b6765
ILT
1625Tue Oct 7 11:40:37 1997 Ian Lance Taylor <ian@cygnus.com>
1626
1627 * som.c (som_construct_extended_name_table): Remove static
1628 function, and define as macro instead.
1629
6b5f5d61
RH
1630Fri Oct 3 14:02:17 1997 Richard Henderson <rth@cygnus.com>
1631
1632 * config.bfd: Change alpha-*-* to alpha*-*-*; config.guess now
1633 recognizes alphaev5 etc.
1634 * configure.host: Likewise.
b35d842d 1635
9b5ec8b1
ILT
1636Fri Oct 3 11:23:47 1997 Ian Lance Taylor <ian@cygnus.com>
1637
927e3a30
ILT
1638 Make ld -s work on AIX:
1639 * xcofflink.c (xcoff_link_add_symbols): Don't create the .debug
1640 section if we are stripping.
1641 (bfd_xcoff_size_dynamic_sections): Don't set the .debug section
1642 size if we are stripping.
1643 (_bfd_xcoff_bfd_final_link): Don't set SEC_RELOC or rel_filepos,
1644 and don't write out relocs, if we are stripping.
1645 (xcoff_link_input_bfd): Don't set up reloc if we are stripping.
1646 (xcoff_write_global_symbol): Don't write out symbol or reloc if we
1647 are stripping.
1648
d9eff006
ILT
1649 * configure.in: Don't include elf.lo again for ELF targets; it's
1650 always in the library anyhow.
1651 * configure: Rebuild.
1652
1653 * bfd-in2.h: Rebuild.
1654
9b5ec8b1
ILT
1655 * elf32-sparc.c (sparc_elf_wdisp16_reloc): Cast to bfd_byte *, not
1656 char *, when calling bfd_get_32 and bfd_put_32.
1657 * sunos.c (sunos_scan_dynamic_symbol): Cast contents to char *
1658 when calling strcpy.
1659
22b23d7d
DE
1660Thu Oct 2 16:15:50 1997 Doug Evans <dje@canuck.cygnus.com>
1661
1662 * reloc.c (bfd_check_overflow): New function.
1663 (bfd_perform_relocation, bfd_install_relocation): Use it.
1664 (BFD_RELOC_SPARC_{DISP64,PLT64}): New relocs.
1665 (BFD_RELOC_SPARC_{HIX22,LOX10,H44,M44,L44,REGISTER}): New relocs.
1666 * bfd-in2.h: Regenerate.
1667 * libbfd.h: Regenerate.
1668
2fb4c89f
ILT
1669Thu Oct 2 13:17:18 1997 Ian Lance Taylor <ian@cygnus.com>
1670
1671 * peicode.h (coff_swap_scnhdr_out): Set IMAGE_SCN_MEM_READ for an
1672 unrecognized section. From Jon Thackray <jont@harlequin.co.uk>.
1673
7810074c
ILT
1674Wed Oct 1 14:03:44 1997 Ian Lance Taylor <ian@cygnus.com>
1675
9347808d
ILT
1676 * Makefile.am ($(BFD_H)): Change stmp-bfd.h to stmp-bfd-h.
1677 (stmp-bfd-h): Rename from stmp-bfd.h.
1678 (BFD_H_FILES, LIBBFD_H_FILES, LIBCOFF_H_FILES): New variables.
1679 ($(srcdir)/bfd-in2.h): Just depend upon stmp-bin2-h.
1680 (stmp-bin2-h): New target.
1681 ($(srcdir)/libbfd.h): Just depend upon stmp-lbfd-h.
1682 (stmp-lbfd-h): New target.
1683 ($(srcdir)/libcoff.h): Just depend upon stmp-lcoff-h.
1684 (stmp-lcoff-h): New target.
1685 (CLEANFILES): Change stmp-bfd.h to stmp-bfd-h. Add stmp-bin2.h,
1686 stmp-lbfd-h, and stmp-lcoff-h.
1687 * Makefile.in: Rebuild.
1688
7810074c
ILT
1689 * configure.in: Use a diversion to set enable_shared before the
1690 arguments are parsed.
1691 * configure: Rebuild.
1692
a446b86d
DE
1693Tue Sep 30 14:18:32 1997 Doug Evans <dje@canuck.cygnus.com>
1694
1695 * elf32-sparc.c (_bfd_sparc_elf_howto_table): R_SPARC_GLOB_JMP
1696 renamed to R_SPARC_UNUSED_42.
1697 (sparc_reloc_map): Delete R_SPARC_GLOB_JMP entry.
1698 * elf64-sparc.c (_bfd_sparc_elf_howto_table): R_SPARC_GLOB_JMP
1699 renamed to R_SPARC_UNUSED_42.
1700 (sparc_reloc_map): Delete R_SPARC_GLOB_JMP entry.
1701 * reloc.c (BFD_RELOC_SPARC_GLOB_JMP): Delete.
1702 * bfd-in2.h: Regenerated.
1703 * libbfd.h: Regenerated.
1704
7810074c
ILT
1705Thu Sep 25 12:15:02 1997 Ian Lance Taylor <ian@cygnus.com>
1706
1707 * elflink.h (elf_merge_symbol): Don't check the hash creator until
1708 after we have set *sym_hash.
1709
780a00c9
ILT
1710Wed Sep 24 16:52:28 1997 Joel Sherrill <joel@oarcorp.com>
1711
1712 * config.bfd (sh*-*-rtems*): New target, like sh-*-*elf*.
1713
805c3d70
ILT
1714Wed Sep 24 11:27:23 1997 Ian Lance Taylor <ian@cygnus.com>
1715
0035c8a0
ILT
1716 * Makefile.am (libbfd_a_SOURCES): Define.
1717 * Makefile.in: Rebuild.
1718
805c3d70
ILT
1719 * configure.in: Call AC_CHECK_TOOL before AM_PROG_LIBTOOL.
1720 * aclocal.m4: Rebuild with new libtool.
1721 * configure: Rebuild.
1722
3099ef78
ILT
1723Tue Sep 23 19:03:13 1997 Ian Lance Taylor <ian@cygnus.com>
1724
1725 * elf.c (map_sections_to_segments): Even if we are not demand
1726 paged, don't put a loadable section after a nonloadable section.
1727 (assign_file_positions_for_segments): Increment the file offset
1728 for a section with contents, even if it is not loadable.
1729
1730start-sanitize-v850e
1731Sun Sep 21 11:03:24 1997 Nick Clifton <nickc@cygnus.com>
1732
1733 * elf32-v850.c (v850_elf_final_link_relocate): Add return code
1734 indicating that __ctbp could not be found.
1735
1736end-sanitize-v850e
55e6f0bf
NC
1737Thu Sep 18 15:04:57 1997 Nick Clifton <nickc@cygnus.com>
1738
1739 * elf32-v850.c (v850_elf_check_relocs): Improve error message.
1740
db1fa6ab 1741Wed Sep 17 09:54:51 1997 Nick Clifton <nickc@cygnus.com>
9420c20a
NC
1742start-sanitize-v850e
1743
1744 * elf32-v850.c (v850_elf_final_link_relocate, v850_elf_reloc,
1745 v850_elf_check_relocs, v850_elf_reloc_map, v850_elf_howto_table):
1746 Add support for the CALLT relocs.
1747
1748 * reloc.c (COMMENT): Add BFD_RELOC_V850_CALLT_6_7_OFFSET and
b35d842d 1749 BFD_RELOC_V850_CALLT_16_16_OFFSET.
9420c20a 1750end-sanitize-v850e
db1fa6ab
NC
1751
1752 * elf32-v850.c (v850_elf_final_link_relocate): Add checks to catch
1753 relocations against non-existant symbols.
1754
5bb28764
NC
1755Tue Sep 16 14:20:27 1997 Nick Clifton <nickc@cygnus.com>
1756
1757 * reloc.c: Add BFR_RELOC_V850_TDA_16_16_OFFSET.
1758
1759 * elf32-v850.c (v850_elf_reloc, v850_elf_final_link_relocate,
1760 v850_elf_howto_table, v850_elf_reloc_map): Add support for a 16
1761 bit reloc in the tiny data area.
1762
2199f848
KR
1763start-sanitize-d30v
1764Mon Sep 15 11:27:36 1997 Ken Raeburn <raeburn@cygnus.com>
1765
1766 Merged changes from Martin Hunt:
1767
1768 * elf32-d30v.c (bfd_elf_d30v_reloc): Change pc-relative relocs
1769 over 2^32 bytes to be absolute. Needed because D30V PC doesn't
1770 necessarily wrap.
1771
1772 * reloc.c, elf32-d30v.c (BFD_RELOC_D30V_9_PCREL,
1773 BFD_RELOC_D30V_9_PCREL_R): New relocs.
1774
1775 * elf32-d30v.c (bfd_elf_d30v_reloc_21): New function.
1776 Do 15 and 21 bit pc-relative relocations.
1777 * reloc.c (BFD_RELOC_D30V_15_PCREL_R, BFD_RELOC_D30V_21_PCREL_R):
1778 New relocations.
1779
1780 * elf32-d30v.c (bfd_elf_d30v_reloc): Addend needs to be
1781 added to the relocation, not or'd.
1782
1783end-sanitize-d30v
43898c91
NC
1784Wed Sep 10 15:17:25 1997 Nick Clifton <nickc@cygnus.com>
1785
1786 * elf32-v850.c (v850_elf_reloc): Remove spurious error message.
1787
eaa9c2e7
AC
1788Wed Sep 10 11:17:50 1997 Andrew Cagney <cagney@b1.cygnus.com>
1789
1790 * archures.c (bfd_default_scan): Use strcasecmp.
1791 (bfd_default_scan): Test for match with arch_name + ":" +
1792 printable_name.
1793 (bfd_default_scan): Test for match with printable_name - ":".
1794 (bfd_default_scan): Delete w65, h8300, h8500, z8k, i960 special
1795 cases. Each implements their own scan function.
1796 (bfd_default_scan): Delete 386, 2900, 860, mips 2000, mips 4400
1797 special cases. Since info->mach == 0. The test mach == number
1798 fails.
1799 (bfd_arch_list): New function, return name of all the supported
1800 architectures.
1801
98ab32a5
NC
1802Tue Sep 9 10:21:56 1997 Nick Clifton <nickc@cygnus.com>
1803
1804 * elf32-v850.c (v850_elf_print_private_bfd_data): Break after
1805 decoding architecture.
5ddf2a9e
NC
1806 (v850_elf_reloc): Do not complain if a R_V850_LO16 reloc has bit
1807 15 set.
98ab32a5 1808
60b570d1
RH
1809Sun Sep 7 12:25:22 1997 H.J. Lu (hjl@gnu.ai.mit.edu)
1810
1811 * bfd/elf64-alpha.c (reloc_howto_type): Fix the howto table.
1812
679bf0a2
ILT
1813Thu Sep 4 09:44:10 1997 Ian Lance Taylor <ian@cygnus.com>
1814
1732b93b
ILT
1815 * Makefile.am: Rebuild dependencies.
1816 (ALL_MACHINES_CFILES): Add cpu-v850.c.
1817 (ALL_MACHINES_CFILES): Add elf32-v850.c.
1818 * Makefile.in: Rebuild.
1819
4878fa5b
ILT
1820 * reloc.c: Remove extraneous commas from relocation entries.
1821 Remove BFD_RELOC_V850_16_PCREL.
1822 * bfd-in2.h: Rebuild.
1823
679bf0a2
ILT
1824 * xcofflink.c (xcoff_link_add_symbols): Put XTY_CM/XMC_TD symbols
1825 in sections named .tocbss rather than .bss.
1826
93f18857
NC
1827Wed Sep 3 11:23:23 1997 Nick Clifton <nickc@cygnus.com>
1828
1829 * libbfd.h, bfd-in2.h, elf32-v850.c: Removed
b35d842d 1830 BFD_RELOC_V850_16_PCREL.
93f18857 1831
c2d70826
FF
1832Tue Sep 2 20:44:10 1997 Fred Fish <fnf@cygnus.com>
1833
1834 * cofflink.c (coff_link_check_ar_symbols): Handle C_SYSTEM syms
1835 the same as C_EXT syms.
1836 (coff_link_add_symbols): Ditto.
1837 (_bfd_coff_link_input_bfd): Ditto.
1838 (_bfd_coff_write_task_globals): Add save_global_to_static. Use
1839 it to preserve and restore state of global_to_static flag.
1840
8bef8c30
NC
1841Tue Sep 2 17:45:22 1997 Nick Clifton <nickc@cygnus.com>
1842
1843 * elf32-v850.c (v850_elf_object_p): Set machine number based on
1844 bits in e_flags field rather than magic numbers.
1845 (v850_elf_final_write_processing, v850_elf_set_private_flags,
1846 v850_elf_copy_private_bfd_data, v850_elf_merge_private_bfd_data,
1847 v850_elf_print_private_bfd_data): New functions.
1848
1849start-sanitize-v850e
1850Tue Sep 2 17:43:49 1997 Nick Clifton <nickc@cygnus.com>
1851
1852 * elf.c (prep_headers): Remove V850E magic number.
cd66558c 1853 * elf.c (prep_headers): Remove V850EA magic number.
8bef8c30
NC
1854end-sanitize-v850e
1855
1c0e698e
DE
1856Tue Sep 2 17:35:05 1997 Doug Evans <dje@canuck.cygnus.com>
1857
1858 * cpu-arc.c (arc_get_mach): Properly scan defined mach entries.
1859
a9d67a88
JL
1860Tue Sep 2 18:29:37 1997 Jeffrey A Law (law@cygnus.com)
1861
1862 * elf-m10200.c (mn10200_elf_final_link_relocate): PC relative
1863 instructions are relative to the next instruction, not the
1864 current instruction.
1865 (mn10200_elf_relax_section): Similarly.
1866
def31039
NC
1867Tue Sep 2 15:45:45 1997 Nick Clifton <nickc@cygnus.com>
1868
1869 * cpu-v850.c: Use a macro to construct bfd_arch_info_type
b35d842d 1870 entries.
def31039
NC
1871
1872 * reloc.c, libbfd.h, bfd-in2.h, elf32-v850.c: Replace
1873 BFD_RELOC_V850_{SDA/TDA/ZDA}_OFFSET relocs with new bit pattern
b35d842d 1874 specific versions: BFD_RELOC_V850_{area}_{bits}_OFFSET.
def31039 1875
f40d28bf
AC
1876Thu Aug 28 17:01:09 1997 Andrew Cagney <cagney@b1.cygnus.com>
1877
1878 * cpu-v850.c: Remove "plain" from v850 printable name.
1879 (scan): Use strcasecmp.
1880
1881 * archures.c (bfd_mach_v850): Define.
b35d842d 1882
f40d28bf
AC
1883 * cpu-sh.c (scan_mach): Compare with table instead of hardwired to
1884 just sh/SH, use strcasecmp.
1885 (arch_info_struct): Add entries for sh3 et.al.
1886
1887 * archures.c (bfd_mach_sh, ...): Define.
1888
2f88c324
AC
1889Wed Aug 27 17:33:07 1997 Andrew Cagney <cagney@b1.cygnus.com>
1890
1891 * archures.c (bfd_archures_list): Always NULL terminate the list.
1892
2c66160c
ILT
1893Tue Aug 26 17:26:51 1997 Ian Lance Taylor <ian@cygnus.com>
1894
099ddbf1
ILT
1895 * Makefile.am: Rebuild dependencies.
1896 (ALL_MACHINES_CFILES): Add cpu-arc.c.
1897 (ALL_MACHINES_CFILES): Add elf32-arc.c.
1898 (elf32-arc.lo): Remove explicit dependency.
1899 * Makefile.in: Rebuild.
1900
2c66160c
ILT
1901 * acinclude.m4 (BFD_CC_FOR_BUILD): Set EXEEXT_FOR_BUILD.
1902 * doc/Makefile.am (MKDOC): Use EXEEXT_FOR_BUILD, not EXEEXT.
1903 * aclocal.m4, configure, Makefile.in, doc/Makefile.in: Rebuild.
1904
70e8e585
CP
1905Mon Aug 25 16:14:34 1997 Christopher Provenzano <proven@cygnus.com>
1906
1907 * configure: Rebuild with latest devo autoconf for NT support
1908
04f295b6
NC
1909Mon Aug 25 16:11:04 1997 Nick Clifton <nickc@cygnus.com>
1910
1911 * cpu-arm.c (compatible): If B is a default type, return A.
1912
8988d935 1913Mon Aug 25 15:35:46 1997 Nick Clifton <nickc@cygnus.com>
591ebe42 1914
8988d935
NC
1915 * cpu-v850.c (scan): New function.
1916 (arch_info_struct): New structure.
1917 (bfd_v850_arch): Add link into arch_info_structure.
591ebe42 1918
8988d935 1919 * config.bfd (targ_cpu): All v850 variants use the bfd_arch_v850
b35d842d 1920 architecture.
845c40d5 1921
8988d935
NC
1922 * elf32-v850.c (v850_elf_object_p): New function.
1923
1924start-sanitize-v850e
1925 * archures.c (bfd_mach_v850e): Machine value for v850e.
b35d842d 1926
8988d935 1927 * bfd-in2.h (bfd_mach_v850e): Machine value for v850e.
b35d842d
UD
1928
1929 * elf32-v850.c (ELF_MACHINE_CODE): Default to v850e machine
8988d935 1930 number.
b35d842d
UD
1931
1932 * elf.c (prep_headers): Add support for v850e machine number.
15d82b26 1933
cd66558c 1934 * archures.c (bfd_mach_v850ea): Machine value for v850ea.
b35d842d 1935
cd66558c 1936 * bfd-in2.h (bfd_mach_v850ea): Machine value for v850ea.
b35d842d 1937
cd66558c 1938 * elf32-v850.c (ELF_MACHINE_CODE): Default to v850ea machine
8988d935 1939 number.
b35d842d
UD
1940
1941 * elf.c (prep_headers): Add support for v850ea machine number.
15d82b26 1942end-sanitize-v850e
2cf9a0d0 1943
8988d935
NC
1944Mon Aug 25 14:07:33 1997 Ian Lance Taylor <ian@cygnus.com>
1945
1946 * syms.c (_bfd_stab_section_find_nearest_line): Clear the
1947 cached_stab field if the offset prevents us from using the cache.
845c40d5 1948
a0682677
ILT
1949Mon Aug 25 12:08:13 1997 Ian Lance Taylor <ian@cygnus.com>
1950
1951 * aout-target.h (MY(vec)): Add SEC_CODE and SEC_DATA to section
1952 flags.
1953 * aout-arm.c (aout_arm_little_vec): Likewise.
1954 (aout_arm_big_vec): Likewise.
1955 * bout.c (b_out_vec_big_host): Likewise.
1956 (b_out_vec_little_host): Likewise.
1957 * mipsbsd.c (aout_mips_little_vec): Likewise.
1958 (aout_mips_big_vec): Likewise.
1959
1960start-sanitize-tic80
1961Tue Aug 19 10:09:10 1997 Fred Fish <fnf@cygnus.com>
1962
1963 * coff-tic80.c (COFF_ALIGN_IN_SFLAGS): Define to 1.
1964 * coffcode.h (styp_to_sec_flags): Ignore incoming STYP_INFO
1965 bit in s_flags if COFF_ALIGN_IN_S_FLAGS is defined.
1966
1967end-sanitize-tic80
c4188c2a
FF
1968Tue Aug 19 08:47:17 1997 Fred Fish <fnf@cygnus.com>
1969
1970 * coff-i960.c (COFF_ALIGN_IN_SECTION_HEADER): Define to 1.
1971 (GET_SCNHDR_ALIGN, PUT_SCNHDR_ALIGN): Define.
1972 * coff-m88k.c (GET_SCNHDR_NRELOC, GET_SCNHDR_NLNNO): Define.
1973 * coffcode.h (coff_set_alignment_hook): Conditionally compile in if
1974 COFF_ALIGN_IN_SECTION_HEADER is defined. Convert alignment to power
1975 of two for I960 only.
1976 * coffswap.h (GET_SCNHDR_NRELOC, PUT_SCNHDR_NRELOC, GET_SCNDHR_NLNNO,
1977 PUT_SCNHDR_NLNNO, GET_SCNHDR_FLAGS, PUT_SCNHDR_FLAGS): Provide
1978 default definitions.
1979 (coff_swap_scnhdr_in): Use GET_SCNHDR_FLAGS, GET_SCNHDR_NRELOC,
1980 GET_SCNHDR_NLNNO, and GET_SCNHDR_ALIGN.
1981 (coff_swap_scnhdr_out): Use PUT_SCNHDR_FLAGS, PUT_SCNHDR_ALIGN.
1982start-sanitize-tic80
1983 * Makefile.in (coff-tic80.o): Depends upon coffswap.h.
1984 * coff-tic80.c (COFF_ALIGN_IN_SECTION_HEADER): Define to 1.
1985 (GET_SCNHDR_FLAGS, PUT_SCNHDR_FLAGS): Define
1986 *coffcode.h (coff_write_object_contents): Set alignment field in
1987 section header for TIC80COFF files.
1988end-sanitize-tic80
1989
def47b53
NC
1990Mon Aug 18 11:36:19 1997 Nick Clifton <nickc@cygnus.com>
1991
1992 * elf32-v850.c (v850_elf_howto_table, v850_elf_reloc_map,
1993 v850_elf_check_relocs, v850_elf_reloc,
1994 v850_elf_final_link_relocate): Add support for
b35d842d
UD
1995 BFD_RELOC_V850_16_PCREL relocation.
1996
def47b53
NC
1997 * reloc.c (COMMENT): Add suuport for BFD_RELOC_V850_16_PCREL
1998 relocation.
b35d842d 1999
def47b53
NC
2000 * libbfd.h: Add support for BFD_RELOC_V850_16_PCREL relocation.
2001
2002 * bfd-in2.h: Add support for BFD_RELOC_V850_16_PCREL relocation.
def47b53
NC
2003
2004start-sanitize-v850e
2005Mon Aug 18 11:33:56 1997 Nick Clifton <nickc@cygnus.com>
2006
2007 * cpu-v850e: New file.
b35d842d 2008
def47b53 2009 * elf.c (prep_headers): Add support for v850e target.
b35d842d
UD
2010
2011 * bfd-in2.h (bfd_architecture): Add support for v850e target.
2012
def47b53
NC
2013 * config.bfd: Add support for v850e target.
2014
2015 * archures.c: Add support for v850e target.
def47b53 2016
def47b53
NC
2017Mon Aug 18 11:33:56 1997 Nick Clifton <nickc@cygnus.com>
2018
cd66558c 2019 * cpu-v850ea: New file.
b35d842d 2020
cd66558c 2021 * elf.c (prep_headers): Add support for v850ea target.
b35d842d
UD
2022
2023 * bfd-in2.h (bfd_architecture): Add support for v850ea target.
2024
cd66558c 2025 * config.bfd: Add support for v850ea target.
def47b53 2026
cd66558c 2027 * archures.c: Add support for v850ea target.
15d82b26 2028end-sanitize-v850e
def47b53 2029
00c7247b
ILT
2030Fri Aug 15 12:01:28 1997 Ian Lance Taylor <ian@cygnus.com>
2031
2032 * coffgen.c (coff_find_nearest_line): Correctly handle the offset
2033 argument as section relative, rather than an absolute address.
2034 From Jan Hoogenraad <hoogenrd@natlab.research.philips.com>.
2035
76af94b9
DE
2036Fri Aug 15 04:58:02 1997 Doug Evans <dje@canuck.cygnus.com>
2037
2038 * config.bfd (arc-*-elf*): Add.
2039 * configure.in (bfd_elf32_{little,big}arc_vec): Add.
2040 * configure: Rebuild.
2041 * Makefile.am (ALL_MACHINES): Add cpu-arc.lo.
2042 (BFD32_BACKENDS): Add elf32-arc.lo.
2043 (cpu-arc.lo,elf32-arc.lo): Add rules for.
2044 * Makefile.in: Rebuild.
2045 * archures.c (architecture list): Add bfd_arch_arc.
2046 (bfd_archures_list): Add bfd_arc_arch.
2047 (bfd_mach_arc_base): Define.
2048 * reloc.c (BFD_RELOC_ARC_B22_PCREL,BFD_RELOC_ARC_B26): Add.
2049 * targets.c (bfd_elf32_{little,big}arc_vec): Declare.
2050 (bfd_target_vect): Add them.
2051 * bfd-in2.h, libbfd.h: Rebuild.
2052 * cpu-arc.c, elf32-arc.c: New files.
2053 * elf.c (pre_headers): Recognize bfd_arch_arc.
2054
2055Tue Aug 12 11:45:18 1997 Ian Lance Taylor <ian@cygnus.com>
2056
2057 * aoutx.h (NAME(aout,final_link)): If no symbols, make sure the
2058 data section is correctly rounded to a page in the file.
2059
6ccdc203
ILT
2060Mon Aug 11 12:45:43 1997 Ian Lance Taylor <ian@cygnus.com>
2061
2062 * aoutx.h (NAME(aout,final_link)): Don't emit the string table if
2063 there are no symbols.
2064
2af5a7e4
ILT
2065Sun Aug 10 14:45:56 1997 Ian Lance Taylor <ian@cygnus.com>
2066
2067 * coff-stgo32.c: Rename from coff-stubgo32.c to avoid old System V
2068 file system 14 character limit.
2069 * Makefile.am, configure.in: Corresponding changes.
2070 * Makefile.in, configure: Rebuild.
2071
2072Fri Aug 8 18:34:36 1997 Ian Lance Taylor <ian@cygnus.com>
2073
2074 * Makefile.am: (ALL_MACHINES_CFILES): Add elf32-d10v.c.
2075 Rebuild dependencies.
2076 * Makefile.in: Rebuild.
2077
c40331ba
ILT
2078Wed Aug 6 18:56:51 1997 Ian Lance Taylor <ian@cygnus.com>
2079
2080 * Makefile.am (docdir): Define.
2081 * Makefile.in: Rebuild.
2082
097fd78a
ILT
2083Tue Aug 5 23:05:03 1997 Ian Lance Taylor <ian@cygnus.com>
2084
2085 * configure: Rebuild with autoconf 2.12.1.
2086
2087Mon Aug 4 12:00:35 1997 Ian Lance Taylor <ian@cygnus.com>
2088
2089 * aclocal.m4, configure: Rebuild with new automake patches.
2090
e6071dc5
PS
2091Sun Aug 3 08:15:12 1997 Peter Schauer (pes@regent.e-technik.tu-muenchen.de)
2092
2093 * rs6000-core.c (make_bfd_asection): New function to add a section
2094 to the core file bfd.
2095 (rs6000coff_core_p): Use make_bfd_asection to add the core file
2096 sections.
2097 Use BFD routines to seek, read and stat the core file.
2098 Handle .data sections from loaded objects and anonymously mmapped
2099 regions, these are available in AIX 4 core files.
2100
aa13d30d
ILT
2101Fri Aug 1 12:58:32 1997 Ian Lance Taylor <ian@cygnus.com>
2102
2103 * configure.in: Set enable_shared before AM_PROG_LIBTOOL.
2104 * acinclude.m4: Move acmacros.m4 in here. Remove AM_PROG_LIBTOOL
2105 copy; use a patches libtool instead.
2106 * acmacros.m4: Remove.
2107 * Makefile.in, aclocal.m4, configure: Rebuild.
2108
c0734708
ILT
2109Thu Jul 31 19:55:36 1997 Ian Lance Taylor <ian@cygnus.com>
2110
2111 * Makefile.am: New file, based on old Makefile.in.
5e377ed2
ILT
2112 * acmacros.m4: New file, copied from old aclocal.m4.
2113 * acinclude.m4: New file.
2114 * configure.in: Call AM_PROG_LIBTOOL. Remove shared library
2115 handling; now handled by libtool. Replace AC_CONFIG_HEADER with
2116 AM_CONFIG_HEADER. Replace AC_PROG_INSTALL with AM_PROG_INSTALL.
2117 Call AM_MAINTAINER_MODE, AM_CYGWIN32, and AM_EXEEXT. Change all
2118 .o files to .lo. Remove stamp-h handling in AC_OUTPUT.
c0734708
ILT
2119 * acconfig.h: Mention PACKAGE and VERSION.
2120 * stamp-h.in: New file.
2121 * dep-in.sed: Change .o to .lo.
2122 * Makefile.in: Now built with automake.
2123 * aclocal.m4: Now built with aclocal.
2124 * config.in, configure: Rebuild.
9df51f4f 2125 * VERSION: Remove.
c0734708 2126
3745ac6d
ILT
2127Thu Jul 31 12:09:20 1997 Geoff Keating <geoffk@ozemail.com.au>
2128
2129 * elf32-ppc.c (ppc_elf_size_dynamic_sections): Don't set TEXTREL
2130 if there is only a relocation to a read-only but not allocatable
2131 section (like .stab).
2132 * elf32-sparc.c (elf32_sparc_size_dynamic_sections): Likewise.
2133 * elf32-i386.c (elf_i386_size_dynamic_sections): Likewise.
2134 * elf32-m68k.c (elf_m68k_size_dynamic_sections): Likewise.
2135 * elf32-mips.c (mips_elf_size_dynamic_sections): Likewise.
2136 * elf64-alpha.c (elf64_alpha_size_dynamic_sections): Likewise.
2137
2138 * elf32-ppc.c (ppc_elf_howto_raw): Correct various comments.
b35d842d 2139 (ppc_elf_create_linker_section): These sections are not
3745ac6d
ILT
2140 created by the linker (that is, they are created by the user
2141 putting data in them). In particular, they can be the source
2142 and target of relocations.
2143 (ppc_elf_adjust_dynamic_symbol): Check postcondition of
2144 bfd_elf32_link_record_dynamic_symbol. Align 16-byte common
2145 objects (for instance, 'long double') to 16-byte boundaries.
2146 (ppc_elf_size_dynamic_sections): Make the code that generates
2147 section symbols exactly the same as for sparc, reducing the
2148 number of section symbols output.
2149 (ppc_elf_check_relocs): Check postcondition of
2150 bfd_elf32_link_record_dynamic_symbol. Make default case the
2151 same as corresponding code for sparc, fixing bug involving
2152 .rela.stabs.
2153 (ppc_elf_finish_dynamic_symbol): Fix case involving GOT symbols
2154 forced to be local because of versioning (by replicating
2155 corresponding change in sparc). Treat R_PPC_RELATIVE RELA relocs
2156 as usual in ELF, not as pseudo-REL relocs (as the sparc linker
2157 does).
2158 (ppc_elf_relocate_section): Add handy debugging code for when
2159 assertion fails. Add some more 'symbol made local because of
2160 versioning' cases.
2161
2162 * elf32-ppc.c (ppc_elf_relocate_section): Cope with addend when
2163 processing a GOT relocation as required by ABI.
2164
13eb6306
ILT
2165Wed Jul 30 21:30:35 1997 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
2166
2167 * elflink.h (NAME(bfd_elf,record_link_assignment)): Remove any
2168 version info if this symbol came from a dynamic object.
2169 (elf_link_add_object_symbols): Set the version info of a symbol
2170 only if the object actually contains version definitions and
2171 defines this symbol.
2172
b1ee3d6a
RS
2173Mon Jul 28 18:07:43 1997 Rob Savoye <rob@chinadoll.cygnus.com>
2174
2175 * aclocal.m4: Add CYGWIN and EXEEXT autoconf macros.
2176 * configure.in: Use CYGWIN and EXEEXT autoconf macro to look for
2177 win32 dependencies.
2178 * configure: Regenerated with autoconf 2.12.
2179 * doc/Makefile.in: Add $(EXEEXT) to chew executable.
2180
f366291b
PS
2181Mon Jul 28 02:50:29 1997 Peter Schauer (pes@regent.e-technik.tu-muenchen.de)
2182
2183 * rs6000-core.c (rs6000coff_core_p): If CORE_TRUNC is set, print
2184 a warning rather than returning an error.
2185
8dbbb8be
FL
2186Sun Jul 27 19:54:14 1997 Felix Lee <flee@cygnus.com>
2187
2188 * coffswap.h (coff_swap_aux_in): add semicolon to make MSVC happy.
2189
3e94ea70
FL
2190Fri Jul 25 14:50:08 1997 Felix Lee <flee@cygnus.com>
2191
2192 * cisco-core.c: define signals for wingdb.
2193
fbd550db
ILT
2194Fri Jul 25 16:27:07 1997 Ian Lance Taylor <ian@cygnus.com>
2195
2196 * ecofflink.c (bfd_ecoff_debug_accumulate): Only merge files with
2197 the same number of aux entries.
2198
491501de
JL
2199Fri Jul 25 08:22:15 1997 Jeffrey A Law (law@cygnus.com)
2200
2201 * som.c (hppa_som_gen_reloc_type): Use R_DATA_EXPR for the
2202 difference of two symbols if the relocation size is 32 bits.
2203 (som_write_fixups): Handle R_DATA_EXPR.
2204
1868acf8
ILT
2205Wed Jul 23 16:08:02 1997 Ian Lance Taylor <ian@cygnus.com>
2206
2207 * coff-i386.c (coff_i386_reloc): Don't offset a common symbol by
2208 its value if COFF_WITH_PE is defined.
2209
e8640d5e
ILT
2210Tue Jul 22 17:19:45 1997 Robert Hoehne <robert.hoehne@Mathematik.TU-Chemnitz.DE>
2211
179ce6e1
ILT
2212 * coff-stubgo32.c: New file.
2213 * go32stub.h: New file.
2214 * coff-i386.c: If COFF_GO32_EXE, include coff/go32exe.h.
e8640d5e
ILT
2215 * coffswap.h (coff_swap_filehdr_in): Invoke
2216 COFF_ADJUST_FILEHDR_IN_PRE and COFF_ADJUST_FILEHDR_IN_POST if they
2217 are defined.
2218 (coff_swap_filehdr_out): Invoke COFF_ADJUST_FILEHDR_OUT_PRE and
2219 COFF_ADJUST_FILEHDR_OUT_POST if they are defined.
2220 (coff_swap_aux_in): Invoke COFF_ADJUST_AUX_IN_PRE and
2221 COFF_ADJUST_AUX_IN_POST if they are defined.
2222 (coff_swap_aux_out): Invoke COFF_ADJUST_AUX_OUT_PRE and
2223 COFF_ADJUST_AUX_OUT_POST if they are defined.
2224 (coff_swap_scnhdr_in): Invoke COFF_ADJUST_SCNHDR_IN_PRE and
2225 COFF_ADJUST_SCNHDR_IN_POST if they are defined.
2226 (coff_swap_scnhdr_out): Invoke COFF_ADJUST_SCNHDR_OUT_PRE and
2227 COFF_ADJUST_SCNHDR_OUT_POST if they are defined.
179ce6e1
ILT
2228 * targets.c (go32stubbedcoff_vec): Declare.
2229 (bfd_target_vector): Add go32stubbedcoff_vec.
2230 * configure.in (go32coff_vec): New target vector.
2231 (go32stubbedcoff_vec): Likewise.
88a25e44
ILT
2232 * config.bfd (i[3456]86-*-msdosdjgpp*): New target.
2233 (i[3456]86-*-go32*): Change to be like new msdosdjgpp*.
179ce6e1
ILT
2234 * Makefile.in: Rebuild dependencies.
2235 (BFD32_BACKENDS): Add coff-stubgo32.o.
2236 (BFD32_BACKENDS_CFILES): Add coff-stubgo32.c.
2237 (HFILES): Add go32stub.h.
e8640d5e 2238
60f1ad85
ILT
2239Tue Jul 22 15:09:12 1997 Ian Lance Taylor <ian@cygnus.com>
2240
2241 * configure.in: Check for fdopen.
2242 * configure, config.in: Rebuild.
2243 * opncls.c (bfd_fdopenr): Check HAVE_FDOPEN rather than VMS or
2244 __GO32__. Reindent a bit.
2245
f1c88b48
ILT
2246Sun Jul 20 20:05:20 1997 Ian Lance Taylor <ian@cygnus.com>
2247
2248 * sunos.c (sunos_create_dynamic_sections): Set SEC_LINKER_CREATED
2249 flag for newly created sections.
2250 (sunos_add_dynamic_symbols): Don't discard newly created sections
2251 if shared library is dynobj.
2252
3fc2c146
ILT
2253Mon Jul 14 15:33:55 1997 Ian Lance Taylor <ian@cygnus.com>
2254
2255 * elf.c (map_sections_to_segments): When checking whether
2256 including a section in a segment would force us to skip a page,
2257 align the address of the next segment to avoid wraparound
2258 problems.
2259
7f2e6854
FF
2260start-sanitize-tic80
2261Tue Jul 8 12:11:29 1997 Fred Fish <fnf@cygnus.com>
2262
2263 * coffcode.h (coff_write_object_contents): Initialize
2264 target id field to TIC80_TARGET_ID.
2265 * coffswap.h (coff_swap_filehdr_out): Swap out target id field
2266 if used.
2267 (coff_swap_filehdr_in): Swap in target id field if used.
2268
2269end-sanitize-tic80
40496096
ILT
2270Mon Jul 7 16:41:20 1997 Ian Lance Taylor <ian@cygnus.com>
2271
2272 * coff-i386.c (coff_i386_is_local_label_name): New static function
2273 if TARGET_UNDERSCORE.
2274 (coff_bfd_is_local_label_name): Define if TARGET_UNDERSCORE.
2275 (i386coff_vec): Add SEC_CODE and SEC_DATA to section_flags.
2276
01da2d52
ILT
2277Mon Jun 30 14:29:26 1997 Ian Lance Taylor <ian@cygnus.com>
2278
2279 * elf32-m68k.c (howto_table): Use complain_overflow_bitfield, not
2280 complain_overflow_signed, for 32 bit PC relative relocations.
2281
8211c929
ILT
2282Thu Jun 26 01:26:31 1997 Ian Lance Taylor <ian@cygnus.com>
2283
677525e9
ILT
2284 * elflink.h (elf_link_add_object_symbols): When a version
2285 indirection symbol is overridden, make the original symbol point
2286 at the real overriding symbol.
2287
20db2495
ILT
2288 * elf.c (bfd_elf_string_from_elf_section): Check for an invalid
2289 string index.
2290
8211c929
ILT
2291 * elflink.h (elf_link_output_extsym): Use the right section for a
2292 common symbol.
2293 * elf32-mips.c (mips_elf_link_output_symbol_hook): If a common
2294 symbol was in .scommon, mark it as SHN_MIPS_SCOMMON.
2295
0ac96a37
ILT
2296Wed Jun 25 12:43:10 1997 H.J. Lu <hjl@gnu.ai.mit.edu>
2297
e9982ee5
ILT
2298 * elflink.h (elf_merge_symbols): Resolve indirect and warning
2299 symbols before checking for new symbols.
2300
0ac96a37
ILT
2301 * elfcore.h (elf_corefile_note): Move out of HAVE_SYS_PROCFS_H.
2302
a90f6864
ILT
2303Tue Jun 24 11:20:43 1997 Ian Lance Taylor <ian@cygnus.com>
2304
2305 * coffgen.c (coff_object_p): Read the f_opthdr bytes from the
2306 file, not aoutsz bytes (they are different in XCOFF .o files).
2307
2308 * xcofflink.c (xcoff_link_add_symbols): Permit symbols to be
2309 redefined by objects included from archives.
2310
044d7d49
ILT
2311Mon Jun 23 18:03:27 1997 Ian Lance Taylor <ian@cygnus.com>
2312
541a4b54
ILT
2313 * elflink.h (elf_merge_symbol): In the case of a new defined
2314 symbol overriding an old defined symbol, return the hash table
2315 entry which we modify, even if it is the target of an
2316 indirection.
2317 (elf_link_add_object_symbols): If the real name of the symbol gets
2318 overridden, convert the versioned symbol into an indirect symbol
2319 to the real symbol.
2320
044d7d49
ILT
2321 * elflink.h (elf_merge_symbol): New static function, broken out of
2322 elf_link_add_object_symbols.
2323 (elf_link_add_object_symbols): Call it.
2324
3ce6d941
ILT
2325Sun Jun 22 19:40:57 1997 Ian Lance Taylor <ian@cygnus.com>
2326
2327 * coff-i386.c (i3coff_object_p): If COFF_IMAGE_WITH_PE, hack to
2328 handle case where COFF filehdr does not immediately follow PE
2329 header.
2330 * coffgen.c (coff_object_p): Remove useless seek to current
2331 location.
2332
ba0e3b78
ILT
2333Wed Jun 18 19:03:38 1997 Ian Lance Taylor <ian@cygnus.com>
2334
2335 * linker.c (link_action): Change COMMON_ROW/indr to from CREF to
2336 REFC.
2337
ac44b2b9
ILT
2338Tue Jun 17 11:55:02 1997 Ian Lance Taylor <ian@cygnus.com>
2339
2340 * cofflink.c (_bfd_coff_link_input_bfd): If stripping debugging
2341 symbols, skip N_ABS symbols with debugging storage classes.
2342
b6eb341b
ILT
2343Mon Jun 16 18:56:27 1997 Geoff Keating <geoffk@ozemail.com.au>
2344
2345 * elf32-ppc.c (ppc_elf_relocate_section): Don't emit R_PPC_REL*
c1292d9b
ILT
2346 relocs in shared libraries which refer to local symbols. Cope
2347 with addend when processing a GOT relocation.
b6eb341b
ILT
2348
2349 * elf32-ppc.c (ppc_elf_size_dynamic_sections): Only create symbols
2350 for sections that the linker didn't create.
2351 (ppc_elf_finish_dynamic_sections): Only try to write out a section
c1292d9b 2352 symbol if it was created in ppc_elf_size_dynamic_sections.
b6eb341b
ILT
2353 (ppc_elf_relocate_section): Complain if we have to generate a reloc
2354 relative to a section for which we didn't output a symbol.
2355
2356 * elf32-ppc.c (ppc_elf_size_dynamic_sections): Clean up. PLT
c1292d9b
ILT
2357 relocs are 'rela' relocs, like everything else. .rela.plt is not
2358 a read-only section, so we don't have to special-case it.
b6eb341b
ILT
2359
2360 * elf32-ppc.c (ppc_elf_adjust_dynamic_symbol): Entries in the
2361 .rela.bss section are (of course) 'rela' relocs not 'rel' relocs.
2362
2363 * elf32-ppc.c (ppc_elf_check_relocs): Initialise srelgot.
2364 (ppc_elf_relocate_section): @got offsets are 4 from start of the
2365 actual .got section.
2366 * elflink.c (_bfd_elf_create_got_section): The three reserved
2367 words start from the symbol '_GLOBAL_OFFSET_TABLE_'.
2368
2369 * elf32-ppc.c (ppc_elf_size_dynamic_sections): '.rela' is 5
2370 characters, not 4.
2371
2372 * elf32-ppc.c (ppc_elf_check_relocs): Use
2373 _bfd_elf_create_got_section to create the GOT rather than
2374 ppc_elf_create_linker_section. Create the '.rela.got' section
2375 ourselves.
2376 (ppc_elf_finish_dynamic_symbol): Set up GOT relocations when a
2377 symbol has a GOT entry.
2378 (ppc_elf_relocate_section): Record when a symbol is used through
2379 the GOT, and allocate space in the GOT for each such symbol.
2380 (ppc_elf_adjust_dynamic_symbol): Delete unused .got.plt stuff.
2381 (ppc_elf_create_linker_section): Delete unused LINKER_SECTION_GOT
2382 stuff.
2383
2384 * elf32-ppc.c (ppc_elf_howto_raw): GOT16_HA relocs should be
2385 treated in a similar way to ADDR16_HA relocs.
2386 (ppc_elf_relocate_section): PLTREL24 relocs do not get copied into
2387 shared objects; the linker must deal with them.
2388 (ppc_elf_create_linker_section): Stop setting
2389 _GLOBAL_OFFSET_TABLE_ to the wrong value; delete unused
2390 LINKER_SECTION_PLT stuff.
2391 (ppc_elf_check_relocs): Delete unused LINKER_SECTION_PLT stuff.
2392 (ppc_elf_finish_dynamic_sections): Use BFD calls to get GOT
2393 section, not ELF-specific calls.
2394 (elf_backend_plt_not_loaded): Set to 1.
2395 (elf_backend_got_symbol_offset): Set to 4.
2396 * elf-bfd.h (elf_backend_data): Add 'plt_not_loaded' member
2397 for when ld.so fills in the PLT; and 'got_symbol_offset' member.
2398 * elflink.c (_bfd_elf_create_dynamic_sections): Apply
2399 plt_not_loaded member.
2400 (_bfd_elf_create_got_section): Apply got_symbol_offset.
2401 * elfxx-target.h (elf_backend_plt_not_loaded): Set default to
2402 'loaded'.
2403 (elf_backend_G_O_T_offset): Set default to 0.
2404 (elfNN_bed): Set added fields.
2405
2406 * elf32-ppc.c (ppc_elf_size_dynamic_sections): Was setting
2407 DT_RELENT in shared objects; should be DT_RELAENT.
2408
2409 * elf32-ppc.c (ppc_elf_relocate_section): Propagate
2410 R_PPC_ADDR16_HA relocs to shared objects. Cope with case where
2411 such a reloc (in a non-shared object) refers to a symbol that's
2412 not defined.
2413
fdc944a7
ILT
2414Mon Jun 16 14:42:14 1997 H.J. Lu <hjl@gnu.ai.mit.edu>
2415
2416 * elfcode.h (put_signed_word): Define.
2417 (get_signed_word): Define.
2418 (elf_swap_reloca_in): Use get_signed_word for the r_addend field.
2419 (elf_swap_reloca_out): Use put_signed_word for the r_addend
2420 field.
2421 * elf32-m68k.c (elf_m68k_finish_dynamic_symbol): Use
2422 bfd_get_signed_32 to set the r_addend field.
2423 * elf64-mips.c (mips_elf64_swap_reloca_in): Use
2424 bfd_h_get_signed_64 to set the r_addend field.
2425
c19fbe0f
ILT
2426Mon Jun 16 12:31:29 1997 Ian Lance Taylor <ian@cygnus.com>
2427
90d7b9b9
ILT
2428 * elf32-i386.c (elf_i386_relocate_section): When generating a
2429 shared library, do the relocation if the input section is not
2430 allocated in memory.
2431
c19fbe0f
ILT
2432 * elflink.h (NAME(bfd_elf,size_dynamic_sections)): Call
2433 elf_link_assign_sym_version before elf_adjust_dynamic_symbol.
2434 (elf_fix_symbol_flags): New static function, broken out of
2435 elf_adjust_dynamic_symbol.
2436 (elf_adjust_dynamic_symbol): Call elf_fix_symbol_flags.
2437 (elf_link_assign_sym_version): Likewise. Permit a symbol to be
2438 forced local even if NEEDS_PLT is set. When forcing a symbol to
2439 be local, clear NEEDS_PLT.
2440 (elf_link_output_extsym): Remove unused local bed.
2441
bb2a6cfb
JL
2442Wed Jun 11 22:44:20 1997 Jeffrey A Law (law@cygnus.com)
2443
2444 * elf32-mn10300.c (elf32_mn10300_link_hash_entry): New structure
2445 for derived elf linker hash table entries. References to
2446 elf_link_hash_entry changed appropriately.
2447 (elf32_mn10300_link_hash_table): New structure for derived elf
2448 linker hash table.
2449 (elf32_mn10300_hash_table): Define.
2450 (elf32_mn10300_link_hash_traverse): Likewise.
2451 (elf32_mn10300_link_hash_newfunc): New function.
2452 (elf32_mn10300_link_hash_table_create): Likewise.
2453 (elf32_mn10300_finish_hash_table_entry): Likewise.
2454 (mn10300_elf_relax_section): Handle "call" -> "calls", removal
2455 of prologue code, and call:32->call:16 relaxing.
2456 (compute_function_info: New function.
2457 (bfd_elf32_bfd_ilink_hash_table_create): Define.
2458
6a1878c9
ILT
2459Wed Jun 11 00:00:07 1997 Ian Lance Taylor <ian@cygnus.com>
2460
8519ea21
ILT
2461 * elflink.h (elf_link_output_extsym): Call finish_dynamic_symbol
2462 for a symbol which is being forced to be local.
2463 * elf32-i386.c (elf_i386_relocate_section): Write out the
c1292d9b
ILT
2464 relocation value for a GOT reloc for a symbol which is turning
2465 into a local symbol.
8519ea21
ILT
2466 (elf_i386_finish_dynamic_symbol): If a symbol is turning into a
2467 local symbol, write out a RELATIVE reloc rather than a GLOB_DAT
2468 reloc.
2469 * elf32-m68k.c, elf32-sparc.c: Corresponding changes.
2470
6a1878c9
ILT
2471 * elf32-i386.c (elf_i386_relocate_section): Get the relocation
2472 value if the symbol is turning into a local symbol.
2473 * elf32-m68k.c (elf_m68k_relocate_section): Likewise.
2474 * elf32-sparc.c (elf32_sparc_relocate_section): Likewise.
2475
601acd61
UD
24761997-06-10 22:58 Ulrich Drepper <drepper@cygnus.com>
2477
2478 * elflink.h (elf_link_add_object_symbols): Also read verneed
2479 information by calling `_bfd_elf_slurp_version_tables'.
2480 (elf_link_add_object_symbols): For undefined symbols look for
8519ea21 2481 version information in the verneed records.
601acd61
UD
2482 (elf_link_add_object_symbols): Use soname of shared object
2483 for verneed record if it is available.
2484
ba383e02
ILT
2485Tue Jun 10 11:13:03 1997 H.J. Lu <hjl@gnu.ai.mit.edu>
2486
2487 * cpu-arm.c: Add prototypes for compatible and scan.
2488 * cofflink.c: Add prototype for mark_relocs.
2489
2490 * archive.c (bfd_special_undocumented_glue): Change filename to
2491 const pointer. Add prototype.
2492
94e05b00
ILT
2493Mon Jun 9 12:34:21 1997 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
2494
2495 * elflink.h (elf_link_add_object_symbols): Ignore relocations of
2496 sections that will be discarded.
2497
cf2cd4cf
UD
24981997-06-06 22:58 Ulrich Drepper <drepper@cygnus.com>
2499
2500 * elflink.h (elf_link_find_version_dependencies): When searching
2501 for known version symbol skip non-matching verdef records, not
2502 matching records.
2503
2504Thu Jun 5 15:52:45 1997 Ian Lance Taylor <ian@cygnus.com>
2505
2506 * cofflink.c (_bfd_coff_generic_relocate_section): Write a long,
c1292d9b 2507 not a bfd_vma, to the base file, to match how dlltool reads it.
cf2cd4cf 2508
48e509bf
NC
2509Tue Jun 3 16:57:45 1997 Nick Clifton <nickc@cygnus.com>
2510
fd2553f9
NC
2511 * reloc.c: Add thumb relocations.
2512
48e509bf
NC
2513 * bfd-in2.h: Add Thumb relocations.
2514
2515 * libbfd.h: Add Thumb relocations.
2516
2517Mon Jun 2 10:41:52 1997 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
2518
2519 * cpu-m68k.c (arch_info_struct): Fix 68060 cpu name.
2520
907f6015
ILT
2521Fri May 30 12:46:27 1997 Ian Lance Taylor <ian@cygnus.com>
2522
e08eb976
ILT
2523 * elf32-sparc.c (elf32_sparc_size_dynamic_sections): Set dynindx
2524 for a section even if it is not loaded.
2525
907f6015
ILT
2526 * cofflink.c (coff_link_add_symbols): If PE file, don't subtract
2527 section VMA.
2528 (_bfd_coff_link_input_bfd): Separate section VMA handling for
2529 input and output files.
2530 (_bfd_coff_generic_relocate_section): Check whether input file,
2531 not output file, is a PE file.
2532
2533Wed May 28 15:48:43 1997 Nick Clifton <nickc@cygnus.com>
2534
2535 * coff-arm.c: (coff_arm_bfd_set_private_flags): Make static.
2536
5edcd3b9
ILT
2537Wed May 28 16:16:04 1997 Ian Lance Taylor <ian@cygnus.com>
2538
2539 * coff-i386.c (coff_i386_reloc): Don't just exit if we see an
2540 R_IMAGEBASE reloc.
2541
916660cb
NC
2542Wed May 28 09:48:43 1997 Nick Clifton <nickc@cygnus.com>
2543
2544 * cpu-arm.c (compatible): Add test for supersets of ARM
cf2cd4cf 2545 architectures.
916660cb 2546
3c82a731
BM
2547Tue May 27 19:42:03 1997 Bob Manson <manson@charmed.cygnus.com>
2548
2549 * cofflink.c (_bfd_coff_final_link): Initialize global_to_static
c1292d9b 2550 member.
3c82a731 2551
177f3d7f
NC
2552Tue May 27 14:34:08 1997 Nick Clifton <nickc@cygnus.com>
2553
2554 * coff-arm.c (coff_arm_bfd_set_private_flags): Make global. It is
2555 called directly by gas/config/tc-arm.c.
cf2cd4cf 2556
70edb961
ILT
2557Tue May 27 15:58:53 1997 Richard Henderson <rth@tamu.edu>
2558
2559 * elf64-alpha.c (PLT_ENTRY_*): Use a new thread-safe format.
2560 (elf64_alpha_finish_dynamic_symbol): Fill it in properly.
2561
d82e4bf6
ILT
2562Mon May 26 14:05:13 1997 Ian Lance Taylor <ian@cygnus.com>
2563
2564 * coff-ppc.c (coff_ppc_relocate_section): If PE file, don't add
2565 section VMA.
2566
315dc1f4
FF
2567Mon May 26 10:57:48 1997 Fred Fish <fnf@cygnus.com>
2568
2569 * peicode.h (coff_bfd_print_private_bfd_data): #undef before #define.
2570 (coff_bfd_copy_private_bfd_data): Ditto.
2571 * coff-arm.c (coff_arm_bfd_merge_private_bfd_data): Make static.
2572 (coff_arm_bfd_print_private_bfd_data): Ditto.
2573 (coff_arm_bfd_set_private_flags): Ditto.
2574 (coff_arm_bfd_copy_private_bfd_data): Ditto.
2575
e074d05e
FF
2576Fri May 23 15:14:58 1997 Fred Fish <fnf@cygnus.com>
2577
2578 * libcoff-in.h (struct coff_final_link_info): Add boolean
2579 global_to_static member for support of task linking.
2580 (_bfd_coff_write_task_globals): Add prototype.
2581 * libcoff.h: Regenerate.
2582 * coffcode.h (coff_write_object_contents): Use #ifdef to
2583 check RS6000COFF_C, to be consistent with all other uses
2584 in this file.
2585 * cofflink.c (_bfd_coff_final_link): If doing task linking,
2586 call _bfd_coff_write_task_globals.
2587 (_bfd_coff_link_input_bfd): If doing task linking, convert
2588 global functions to static.
2589 (_bfd_coff_write_global_sym): If doing task linking, convert
2590 global variables to static.
2591 (_bfd_coff_write_task_globals): New function.
2592start-sanitize-tic80
2593 * coff-tic80.c (TIC80COFF): Define this instead of just TIC80.
2594 (C_AUTOARG): #undef since it clashes with C_UEXT.
2595 (C_LASTENT): #undef since it clashes with C_STATLAB.
2596 * coffcode.h (coff_write_object_contents): Use TIC80COFF
2597 rather than TIC80.
2598 (coff_slurp_symbol_table): Use C_SYSTEM. Hide C_AUTOARG use
2599 when TIC80COFF defined (clashes with C_UEXT). Explicitly
2600 recognize C_UEXT, C_STATLAB, and C_EXTLAB as unsupported.
2601end-sanitize-tic80
2602
8ac5f940 2603start-sanitize-tic80
546d7a90
ILT
2604Fri May 23 12:38:24 1997 Ian Lance Taylor <ian@cygnus.com>
2605
2606 * coff-tic80.c (tic80_howto_table): Change overflow check for most
2607 PP relocations to complain_overflow_dont.
2608
8ac5f940
ILT
2609Thu May 22 20:22:14 1997 Ian Lance Taylor <ian@cygnus.com>
2610
2611 * coff-tic80.c (tic80_howto_table): Add PP relocations. Change
2612 name of R_RELLONG to "RELLONG". Set rightshift and complain for
2613 M_PPCR.
2614 (ppbase_reloc, glob15_reloc): New static functions.
2615 (glob16_reloc, local16_reloc): New static functions.
2616 (rtype2howto): Handle all relocation types.
2617 (coff_tic80_relocate_section): New static function.
2618 (coff_relocate_section): Define to coff_tic80_relocate_section.
2619 * Makefile.in (coff-tic80.o): Depends upon include/coff/tic80.h.
2620
2621end-sanitize-tic80
d2d70da5
ILT
2622Wed May 21 17:15:50 1997 Ian Lance Taylor <ian@cygnus.com>
2623
20a9631a
ILT
2624 * coffcode.h (coff_slurp_symbol_table): If COFF_WITH_PE or
2625 COFF_IMAGE_WITH_PE, don't subtract the section VMA from the symbol
2626 value.
2627 * coffgen.c (fixup_symbol_value): Add abfd parameter. Change all
2628 callers. If PE file, don't add section VMA.
2629 (coff_write_alien_symbol): If PE file, don't add section VMA.
2630 * cofflink.c (_bfd_coff_link_input_bfd): Likewise.
2631 (_bfd_coff_write_global_sym): Likewise.
2632 (_bfd_coff_generic_relocate_section): Likewise.
2633
d2d70da5
ILT
2634 * peicode.h: Add & 0xffffffff when using ImageBase in case bfd_vma
2635 is 64 bits.
2636
e18683b7
NC
2637Wed May 21 09:58:10 1997 Nick Clifton <nickc@cygnus.com>
2638
2639 * cofflink.c (mark_relocs): Add new function to mark symbols which
d2d70da5 2640 are used by relocations.
c1292d9b 2641 (_bfd_coff_link_input_bfd): Add call to mark_relocs() and code to
d2d70da5 2642 suppress the skipping of symbols that have thus been marked.
e18683b7 2643
4e39c0f9
ILT
2644Tue May 20 18:45:26 1997 Ian Lance Taylor <ian@cygnus.com>
2645
2646 * coff-sh.c (sh_merge_private_data): New static function.
2647 (coff_bfd_merge_private_bfd_data): Define.
2648
69f3f9f7 2649start-sanitize-tic80
4e39c0f9
ILT
2650Mon May 19 14:46:00 1997 Mark Alexander <marka@cygnus.com>
2651
2652 * coff-tic80.c: Remove unnecessary #ifdefs.
2653 * config.bfd: Set targ_underscore to yes for tic80.
2654
69f3f9f7
MA
2655Mon May 19 14:26:36 1997 Mark Alexander <marka@cygnus.com>
2656
2657 * coff-tic80.c (NAMES_HAVE_UNDERSCORE): Define (fixes problem
2658 with unresolved external symbols in GDB).
2659
2660end-sanitize-tic80
efc02f66
JL
2661Fri May 16 10:23:03 1997 Jeffrey A Law (law@cygnus.com)
2662
c1292d9b
ILT
2663 * elf-m10300.c (elf32_mn10300_relax_section): Read in all
2664 the symbols associated with each BFD.
2665 (mn10300_elf_relax_delete_bytes): Don't adjust the same symbol
2666 more than once.
efc02f66
JL
2667 * elf-m10200.c: Likewise.
2668 * elf32-m32r.c: Likewise.
2669 * elf32-sh.c: Likewise.
2670
fd6c00ba
ILT
2671Fri May 16 12:10:52 1997 Ian Lance Taylor <ian@cygnus.com>
2672
2673 * elflink.h (elf_link_add_object_symbols): Don't decrease the
c1292d9b
ILT
2674 alignment of a common symbol. If two symbols that look like
2675 common symbols are found in two shared libraries, and the size is
2676 different, use the larger size, and warn if --warn-common. If a
fd6c00ba
ILT
2677 common symbol overrides a definition in a shared library, set the
2678 size to the larger size, and warn if --warn-common.
2679
4c4badea
NC
2680Thu May 15 14:31:28 1997 Nick Clifton <nickc@cygnus.com>
2681
2682 * cpu-arm.c (compatible): Allow default machine to be polymorphed
2683 into any other machine type.
2684
2685 * coffcode.h (coff_set_flags): Initialise flags variable to 0.
2686
2687 * coff-arm.c (coff_arm_bfd_merge_private_bfd_data): When merging
2688 data into an unitialised destination set its machine type as well.
2689
031dfce0
ILT
2690Thu May 15 16:40:20 1997 Ian Lance Taylor <ian@cygnus.com>
2691
2692 * elflink.h (elf_link_add_object_symbols): Force ELF symbol size
77bd8dfa
ILT
2693 to common symbol size. Consistently treat uninitialized symbols
2694 in shared objects as common symbols.
031dfce0 2695
46686c78
NC
2696Fri May 9 10:15:27 1997 Nick Clifton <nickc@cygnus.com>
2697
2698 * archures.c (constants): Added new constants to identify the
2699 type of the ARM architecture: bfd_mach_arm_2, bfd_mach_arm_2a,
cf2cd4cf 2700 bfd_mach_arm_3, bfd_mach_arm_3M, bfd_mach_arm_4 and bfd_mach_arm_4T.
46686c78
NC
2701
2702 * bfd-in2.h (constants): Added new constants to identify
2703 the type of the ARM architecture: bfd_mach_arm_2, bfd_mach_arm_2a,
2704 bfd_mach_arm_3, bfd_mach_arm_3M, bfd_mach_arm_4 and
2705 bfd_mach_arm_4T. This file is auto-magically generated from the
2706 archures.c file. This update is just to save work.
2707
2708 * coff-arm.c (coff_arm_bfd_merge_private_bfd_data,
2709 coff_arm_bfd_print_private_bfd_data,
2710 coff_arm_bfd_set_private_flags,
2711 coff_arm_bfd_copy_private_bfd_data): Added these new functions.
cf2cd4cf 2712 (global): Macro redefinitions set up to use these new functions.
46686c78
NC
2713
2714 * coffcode.h (coff_mkobject_hook): Added call to
d2d70da5 2715 coff_arm_bfd_set_private_flags().
c1292d9b 2716 (coff_set_arch_mach_hook): Added code to set machine type based on
d2d70da5
ILT
2717 bits stored in internal flags.
2718 (coff_set_flags): Added code to set the new bits in the flags
2719 field based on the machine number.
46686c78
NC
2720 (function definition macros): Made all function definition macros
2721 conditional so that they can be overridden by target specific
2722 files.
2723
2724 * cpu-arm.c (compatible): Added this function. (arch_info_struct):
2725 Structure extended to include new types, one each for ARMv2,
2726 ARMv2a, ARMv3, ARMv3M, ARMv4 and ARMv4T.
2727
2728 * libcoff-in.h (struct coff_tdata): Added flags field.
cf2cd4cf 2729
3baa24ad
ILT
2730Fri May 9 17:40:02 1997 Ian Lance Taylor <ian@cygnus.com>
2731
64aaba23
ILT
2732 * config.bfd (i[3456]86-*-gnu*): Don't include Mach support.
2733
3baa24ad
ILT
2734 * config.bfd: Change #if 0 around uses of host_aout_vec to #if
2735 HAVE_host_aout_vec.
2736
aba5cc8b
MM
2737Mon May 5 13:57:32 1997 Mike Meissner <meissner@cygnus.com>
2738
2739 * coffgen.c (coff_find_nearest_line): If there are no syments,
2740 just return false.
2741
6a2922d5
ILT
2742Mon May 5 18:18:45 1997 Philip Blundell <pjb27@cam.ac.uk>
2743
2744 * config.bfd: cope with '*-*-linux-gnuaout' targets.
2745
2746Thu May 1 11:31:12 1997 Ian Lance Taylor <ian@cygnus.com>
2747
2748 * targmatch.sed: Add explicit \n characters to work around bug in
2749 HP/UX 10.20 sed program.
2750
412dfaed
ILT
2751Wed Apr 30 12:27:03 1997 Ian Lance Taylor <ian@cygnus.com>
2752
2753 * elf.c (copy_private_bfd_data): Cast csecs to avoid sign
2754 extension problems.
2755
3c8caeb7
ILT
2756Tue Apr 22 12:06:08 1997 Ian Lance Taylor <ian@cygnus.com>
2757
2758 * Makefile.in (do_maintainer_clean): Don't remove bfd-in2.h.
2759
f4236094
ILT
2760Mon Apr 21 11:21:31 1997 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
2761
2762 * elf32-m68k.c: Follow the last changes in elf32-i386.c:
2763 (struct elf_m68k_pcrel_relocs_copied, struct
2764 elf_m68k_link_hash_entry, struct elf_m68k_link_hash_table,
2765 elf_m68k_link_hash_traverse, elf_m68k_hash_table,
2766 elf_m68k_link_hash_newfunc, elf_m68k_link_hash_table_create,
2767 elf_m68k_discard_copies, bfd_elf32_bfd_link_hash_table_create):
2768 New definitions.
2769 (elf_m68k_check_relocs): If linking with -Bsymbolic, don't copy
2770 PC relative relocs for a global symbol defined in a regular
2771 object, and count the number of PC relative relocs copied for any
2772 global symbol.
2773 (elf_m68k_size_dynamic_sections): If linking with -Bsymbolic,
2774 traverse with elf_m68k_discard_copies.
2775
752eaefc
ILT
2776Sat Apr 19 22:50:14 1997 Ian Lance Taylor <ian@cygnus.com>
2777
9d71be72
ILT
2778 * elf32-i386.c (elf_i386_check_relocs): Only count PC relative
2779 relocs. From Jamie Lokier <jamie@rebellion.co.uk>.
2780
752eaefc
ILT
2781 * coffcode.h (coff_compute_section_file_positions): Force the
2782 potential last byte in the file to be written out when
2783 COFF_IMAGE_WITH_PE.
2784
e066f244
ILT
2785Thu Apr 17 13:46:56 1997 Per Fogelstrom <pefo@openbsd.org>
2786
a0412785 2787 * configure.host (mips*-*-openbsd*): New host.
e066f244 2788
81f01dd5
ILT
2789Thu Apr 17 11:10:54 1997 Ian Lance Taylor <ian@cygnus.com>
2790
f02004e9
ILT
2791 * elflink.h (elf_link_add_object_symbols): Only subtract the
2792 section VMA from the symbol value if this is a fully linked file.
2793
6e2183b1
ILT
2794 * elf32-i386.c (struct elf_i386_pcrel_relocs_copied): Define.
2795 (struct elf_i386_link_hash_entry): Define.
2796 (struct elf_i386_link_hash_table): Define.
2797 (elf_i386_link_hash_traverse): Define.
2798 (elf_i386_hash_table): Define.
2799 (elf_i386_link_hash_newfunc): New static function.
2800 (elf_i386_link_hash_table_create): New static function.
2801 (elf_i386_check_relocs): If linking with -Bsymbolic, don't copy
2802 PC relative relocs for a global symbol defined in a regular
2803 object, and count the number of PC relative relocs copied for any
2804 global symbol.
2805 (elf_i386_size_dynamic_sections): If linking with -Bsymbolic,
2806 traverse with elf_i386_discard_copies.
2807 (elf_i386_discard_copies): New static function.
2808 (bfd_elf32_bfd_link_hash_table_create): Define.
2809
81f01dd5
ILT
2810 From Gordon W. Ross <gwr@mc.com>:
2811 * aoutf1.h (MY_entry_is_text_address): Define if not defined.
2812 (sunos4_aout_backend): Use MY_entry_is_text_address.
2813
ebec2a6a
MH
2814start-sanitize-d30v
2815Wed Apr 16 12:43:32 1997 Martin Hunt <hunt@cygnus.com>
2816
2817 * elf32-d30v.c (elf_d30v_howto_table): Changed size of
2818 R_D30V_32_NORMAL to 2 (4 bytes).
2819
cf2cd4cf 2820end-sanitize-d30v
10888f10
ILT
2821Wed Apr 16 14:02:29 1997 Ian Lance Taylor <ian@cygnus.com>
2822
a895901a
ILT
2823 From Gordon W. Ross <gwr@mc.com>:
2824 * netbsd.h (N_SHARED_LIB): Define.
2825 (SEGMENT_SIZE): Don't define.
2826 * m68knetbsd.c (SEGMENT_SIZE): Don't define (revert change of
2827 April 11).
2828 * sparcnetbsd.c (TARGET_PAGE_SIZE): Define as 0x2000.
2829 (SEGMENT_SIZE): Don't define.
2830
10888f10
ILT
2831 * elf32-ppc.c (ppc_elf_adjust_dynamic_symbol): Set .rela.bss size
2832 to sizeof Rela structure, not sizeof Rel structure. From Gary
2833 Thomas <g.thomas@opengroup.org>.
2834
a0c80726
ILT
2835Tue Apr 15 11:50:37 1997 Ian Lance Taylor <ian@cygnus.com>
2836
55aba333
ILT
2837 * aout-target.h (MY(callback)): If entry_is_text_address, adjust
2838 whenever entry is larger than text address, but only by whole
2839 pages. From Gordon W. Ross <gwr@mc.com>.
2840
9b31e6f5
ILT
2841 * Makefile.in (install): Depend upon installdirs. Use
2842 mkinstalldirs to build $(oldincludedir).
2843 (installdirs): New target.
2844
a0c80726
ILT
2845 * elflink.h (elf_link_add_object_symbols): Don't call check_relocs
2846 if this is a debugging section which we are stripping.
2847
2848Mon Apr 14 12:39:30 1997 Richard Henderson <rth@tamu.edu>
2849
2850 * elf64-alpha.c (elf64_alpha_object_p): Allocate the
2851 alpha-specific target data struct.
2852
e5d7e3df
ILT
2853Mon Apr 14 11:45:46 1997 Ian Lance Taylor <ian@cygnus.com>
2854
2855 From Thomas Graichen <graichen@rzpd.de>:
2856 * Makefile.in: Always use $(SHELL) when running move-if-change.
2857 * configure.in: Use ${CONFIG_SHELL} when running $ac_config_sub.
2858 * configure: Rebuild.
2859
4b8c8bb9
ILT
2860Fri Apr 11 15:43:24 1997 Ian Lance Taylor <ian@cygnus.com>
2861
3bc3351e
ILT
2862 * elfcode.h (elf_slurp_symbol_table): Only subtract the section
2863 VMA if this is an executable file or a shared object.
2864
faa0b8db
ILT
2865 * targets.c (netbsd_core_vec): Declare. From Gordon W. Ross
2866 <gwr@mc.com>.
2867
2868 * libaout.h (struct aout_backend_data): Add entry_is_text_address
2869 field.
2870 * aout-target.h (SEGMENT_SIZE): Define to TARGET_PAGE_SIZE at the
2871 start of the file. Remove uses later on which switch using
2872 ifdef.
2873 (MY(callback)): Handle entry_is_text_address.
2874 (MY_entry_is_text_address): Define if not defined.
2875 (MY(backend_data)): Initialize new field.
2876 * aoutf1.h (sunos4_aout_backend): Likewise.
2877 * i386aout.c (MY(backend_data)): Likewise.
2878 * i386mach3.c (MY(backend_data)): Likewise.
2879 * mipsbsd.c (MY(backend_data)): Likewise.
2880 * sparclynx.c (sparclynx_aout_backend): Likewise.
2881 * netbsd.h (SEGMENT_SIZE): Define if not defined.
2882 (MY_entry_is_text_address): Define.
a895901a 2883 * m68knetbsd.c (SEGMENT_SIZE): Define as 0x20000.
faa0b8db 2884
4b8c8bb9
ILT
2885 * xcofflink.c (bfd_xcoff_import_symbol): Handle importing a symbol
2886 whose name starts with `.'.
2887
3b1b0308
ILT
2888Fri Apr 11 11:57:15 1997 Niklas Hallqvist <niklas@appli.se>
2889
2890 * config.bfd: (i[3456]86-*-openbsd*, m68*-*-openbsd*,
2891 mips*el*-*-openbsd*, mips*-*-openbsd*, ns32k-*-openbsd*,
2892 powerpc-*-*bsd*, sparc-*-openbsd*): New targets.
2893 * configure.in (i[3456]86-*-openbsd*, mips*-*-openbsd*,
2894 m68*-*-openbsd*, ns32k-*-openbsd*, powerpc-*-*bsd*,
2895 sparc-*-openbsd*): New targets.
2896 * configure: Rebuild.
2897
57a3027b
ILT
2898Tue Apr 8 18:09:29 1997 Jamie Lokier <jamie@rebellion.co.uk>
2899
2900 * stabs.c (struct stab_section_info): New field
2901 `cumulative_skips'.
2902 (_bfd_link_section_stabs): Fill the above array.
2903 (_bfd_stab_section_offset): Use `cumulative_skips' to
2904 speed up offset calculation.
2905
a01362cc
JL
2906Tue Apr 8 00:01:31 1997 Jeffrey A Law (law@cygnus.com)
2907
69444014
JL
2908 * elf-mn10300.c (mn10300_elf_relax_section): Don't forget the
2909 addend for non pc-relative relocations.
2910
a01362cc
JL
2911 * elf-m10300.c (bfd_elf32_mn10300_reloc): Remove prototype
2912 for non-existent function.
2913
2914 * elf-m10300.c (mn10300_elf_relax_section): New function.
2915 (mn10300_elf_relax_delete_bytes): Likewise.
2916 (mn10300_elf_symbol_address_p): Likewise.
2917 (mn10300_elf_get_relocated_section_contents): Likewise.
2918 (bfd_elf32_bfd_relax_section): Define.
2919 (bfd_elf32_bfd_get_relocated_section_contents): Likewise.
2920
418d5b05
ILT
2921Mon Apr 7 16:47:09 1997 Ian Lance Taylor <ian@cygnus.com>
2922
2923 * configure.host: Set SHLIB_LIBS.
2924 * configure.in: Substitute SHLIB_LIBS.
2925 * configure: Rebuild.
2926 * Makefile.in (SHLIB_LIBS): New variable.
2927 ($(SHLIB)): Use $(SHLIB_LIBS).
2928
d9654a71
MS
2929Mon Apr 7 10:53:52 1997 Michael Snyder <msnyder@cleaver.cygnus.com>
2930
2931 * bfd-in.h bfd-in2.h: add bfd_section_lma macro to correspond
2932 with bfd_section_vma.
2933
5641f23e
ILT
2934Fri Apr 4 11:37:15 1997 Ian Lance Taylor <ian@cygnus.com>
2935
b872076e
ILT
2936 * configure.in: Update file names for bfd_elf32_mn10[23]00_vec.
2937 Correct CPU file names for mn10[23]00.
2938 * configure: Rebuild.
2939
ac664747
ILT
2940 * bfd.c (bfd_record_phdr): Cast count to size_t before
2941 subtraction.
2942
44fe6ab1
ILT
2943 * coff-ppc.c (dump_toc): Add cast to avoid warning from SunOS cc.
2944 * coff-rs6000.c (xcoff_read_ar_hdr): Likewise.
2945 (xcoff_write_archive_contents): LIkewise.
2946 * elf32-mips.c (_bfd_mips_elf_set_section_contents): Likewise.
2947 (mips_elf_create_procedure_table): Likewise.
2948 * peicode.h (pe_print_idata): Likewise.
2949 (pe_print_edata, pe_print_pdata, pe_print_reloc): Likewise.
2950 * xcofflink.c (xcoff_get_section_contents): Likewise.
2951 (_bfd_xcoff_canonicalize_dynamic_symtab): Likewise.
2952 (xcoff_link_add_symbols): Likewise.
2953 (xcoff_link_add_symbols): Likewise.
2954
0cea98f0
ILT
2955 * ppcboot.c (ppcboot_set_arch_mach): Make static.
2956 (ppcboot_bfd_print_private_bfd_data): Likewise.
2957
5641f23e
ILT
2958 * elf32-mips.c (elf_mips_ctor64_howto): Set complain_on_overflow
2959 to complain_overflow_signed.
2960
58b4a8f3
ILT
2961Thu Apr 3 11:51:54 1997 Ian Lance Taylor <ian@cygnus.com>
2962
2963 * VERSION: Set to 2.8.1.
2964
2965 * Branched binutils 2.8.
2966
2967 * elf32-ppc.c (ppc_elf_check_relocs): Don't check SEC_ALLOC when
2968 deciding whether to copy a reloc into a shared object.
2969 (ppc_elf_relocate_section): Likewise. Relocate R_PPC_RELATIVE
2970 relocs in unallocated sections.
2971 * elf32-sparc.c (elf32_sparc_relocate_section): Relocate
2972 R_SPARC_RELATIVE relocs in unallocated sections.
2973
acba322e
MM
2974Wed Apr 2 16:19:41 1997 Mike Meissner <meissner@cygnus.com>
2975
2976 * elf32-ppc.c (ppc_elf_check_relocs): Undo March 26 change and
2977 always create got section so that the _GLOBAL_OFFSET_TABLE_ label
2978 is always created.
2979
ab66cc8d
ILT
2980Wed Apr 2 10:49:07 1997 Ian Lance Taylor <ian@cygnus.com>
2981
ba254dc5
ILT
2982 * elflink.h (elf_link_add_object_symbols): Let a common symbol
2983 override an uninitialized symbol from a shared library with a
2984 smaller size.
f74e2365 2985
7a68d1f7
ILT
2986 * elf-m10200.c: Rename from elf32-mn10200.c.
2987 * elf-m10300.c: Rename from elf32-mn10300.c.
2988 * cpu-m10200.c: Rename from cpu-mn10200.c
2989 * cpu-m10300.c: Rename from cpu-mn10300.c
2990 * Makefile.in: Update accordingly.
2991
3072dce9
ILT
2992 * elf32-mips.c (elf_mips_ctor64_howto): New static variable.
2993 (elf_mips_isa): Move to earlier in file.
2994 (mips_reloc_map): Remove BFD_RELOC_CTOR entry.
2995 (bfd_elf32_bfd_reloc_type_lookup): Handle BFD_RELOC_CTOR
2996 specially.
2997
ab66cc8d
ILT
2998 * elf32-mips.c (mips16_jump_reloc): Print a warning rather than
2999 calling abort.
3000
0f854557
ILT
3001Tue Apr 1 16:18:05 1997 Klaus Kaempf <kkaempf@progis.de>
3002
3003 * configure.com: New file.
3004 * config.h-vms: Remove file.
3005 * makefile.vms: Update for new configure scheme.
3006
8faaff9e
ILT
3007Mon Mar 31 23:28:39 1997 H.J. Lu <hjl@gnu.ai.mit.edu>
3008
0f854557
ILT
3009 * libcoff-in.h (ppc_allocate_toc_section): Declare.
3010 (ppc_process_before_allocation): Declare.
3011 * libcoff.h: Rebuild.
3012
8faaff9e
ILT
3013 * coffcode.h (coff_mkobject_hook): Declare if not a macro.
3014
5cfc9987
ILT
3015Mon Mar 31 16:29:50 1997 Joel Sherrill <joel@oarcorp.com>
3016
3418d8c4 3017 * config.bfd (hppa*-*-rtems*): New target, like hppa-*-*elf*.
5cfc9987 3018
34c68301
ILT
3019Mon Mar 31 16:11:35 1997 Ian Lance Taylor <ian@cygnus.com>
3020
3021 * coff-a29k.c (coff_a29k_relocate_section): Don't use symndx as a
3022 symbol index for a R_IHCONST reloc.
3023
774dc17c
ILT
3024Mon Mar 31 15:40:59 1997 Philippe De Muyter <phdm@info.ucl.ac.be>
3025
3026 * targmatch.sed: Do not use \(\) recursively.
3027
9e55b695
ILT
3028Fri Mar 28 14:44:08 1997 H.J. Lu <hjl@gnu.ai.mit.edu>
3029
3030 * m68klinux.c (MACHTYPE_OK): Define.
3031 * i386linux.c (MACHTYPE_OK): Define.
3032
f3f3b475
ILT
3033Fri Mar 28 11:56:15 1997 Ian Lance Taylor <ian@cygnus.com>
3034
5f792743
ILT
3035 From David S. Miller <davem@caip.rutgers.edu> and H.J. Lu
3036 <hjl@gnu.ai.mit.edu>:
3037 * sparclinux.c: New file.
774dc17c
ILT
3038 * bfd-in.h (bfd_sparclinux_size_dynamic_sections): Declare.
3039 * bfd-in2.h: Rebuild.
5f792743
ILT
3040 * config.bfd (sparc-*-linuxaout*, sparc-*-linux*): New targets.
3041 * configure.in (sparclinux_vec): Add to list of vectors.
3042 * configure: Rebuild.
3043 * targets.c (sparclinux_vec): Declare.
3044 (bfd_target_vector): Add sparclinux_vec.
3045 * Makefile.in: Rebuild dependencies.
3046 (BFD32_BACKENDS): Add sparclinux.o.
3047 (BFD32_BACKENDS_CFILES): Add sparclinux.c.
3048
bebe5fbf
ILT
3049 * coff-mips.c (mips_ecoff_backend_data): Initialize new
3050 bfd_coff_backend_data field.
3051 * coff-alpha.c (alpha_ecoff_backend_data): Likewise.
3052
f0315e65
ILT
3053 * config.bfd: Add bfd_elf64_{big,little}mips_vec to targ_selvecs
3054 for mips*el*-*-linux* and mips*-*-linux*. From H.J. Lu
3055 <hjl@lucon.org> and Ralf Baechle <ralf@gnu.ai.mit.edu>.
3056
f3f3b475
ILT
3057 * bfd.c: Include "libiberty.h".
3058 (strerror): Don't declare.
3059 (bfd_errmsg): Call xstrerror rather than strerror.
3060
013b249f
ILT
3061Thu Mar 27 12:55:42 1997 Ian Lance Taylor <ian@cygnus.com>
3062
eb80d52a
ILT
3063 * elf32-i386.c (elf_i386_adjust_dynamic_symbol): Generate a COPY
3064 reloc even if the symbol is in the .bss section.
3065 * elf32-m68k.c (elf_m68k_adjust_dynamic_symbol): Likewise.
3066 * elf32-ppc.c (ppc_elf_adjust_dynamic_symbol): Likewise.
3067 * elf32-sparc.c (elf32_sparc_adjust_dynamic_symbol): Likewise.
3068
f89adeb7
ILT
3069 * coffcode.h (bfd_coff_backend_data): Add new field
3070 _bfd_coff_default_section_alignment_power.
3071 (bfd_coff_default_section_alignment_power): Define.
3072 (bfd_coff_std_swap_table): Initialize new field.
3073 * libcoff.h: Rebuild.
3074 * cofflink.c (coff_link_add_symbols): Limit alignment of a common
3075 symbol to the default section alignment.
3076
013b249f
ILT
3077 * COPYING: Update FSF address.
3078
0e9c4377
MH
3079start-sanitize-d30v
3080Thu Mar 27 00:45:57 1997 Martin M. Hunt <hunt@pizza.cygnus.com>
3081
cf2cd4cf
UD
3082 * elf32-d30v.c (elf_d30v_howto_table): Fix a typo in the
3083 21-bit absolute that made it act as a relative.
0e9c4377 3084
cf2cd4cf 3085end-sanitize-d30v
537327bc
ILT
3086Wed Mar 26 14:50:20 1997 Ian Lance Taylor <ian@cygnus.com>
3087
0e9c4377
MH
3088 * elflink.c (_bfd_elf_create_linker_section): Don't set
3089 bss_section and rel_section from existing sections.
3090
537327bc
ILT
3091 * elf32-ppc.c (ppc_elf_check_relocs): Only create the got section
3092 if it is needed.
3093
60d1227a
SG
3094Tue Mar 25 22:26:56 1997 Stu Grossman (grossman@critters.cygnus.com)
3095
3096 * aoutx.h (some_aout_object_p): Change executable test to fix
3097 problems with embedded a.out systems.
3098
3cd5cf3d
ILT
3099Tue Mar 25 14:35:37 1997 Ian Lance Taylor <ian@cygnus.com>
3100
6717fb0d
ILT
3101 * stabs.c (_bfd_stab_section_offset): New function.
3102 * libbfd-in.h (_bfd_stab_section_offset): Declare.
3103 * libbfd.h: Rebuild.
3104 * elf32-i386.c (elf_i386_relocate_section): Adjust the offset of a
3105 stab reloc.
3106 * elf32-m68k.c (elf_m68k_relocate_section): Likewise.
3107 * elf32-mips.c (mips_elf_relocate_section): Likewise.
3108 * elf32-ppc.c (ppc_elf_relocate_section): Likewise.
3109 * elf32-sparc.c (elf32_sparc_relocate_section): Likewise.
3110 * elf64-alpha.c (elf64_alpha_relocate_section): Likewise.
3111
3cd5cf3d
ILT
3112 * stabs.c (_bfd_link_section_stabs): Copy over the first header
3113 symbol. Check for memory allocation failure of *psinfo.
3114 (_bfd_write_section_stabs): Add psinfo parameter. Change all
3115 callers. Set the value of the header symbol.
3116 * libbfd-in.h (_bfd_write_section_stabs): Update declaration.
3117 * libbfd.h: Rebuild.
3118
67e87a1d
FF
3119start-sanitize-tic80
3120Mon Mar 24 20:07:29 1997 Fred Fish <fnf@cygnus.com>
3121
3122 * coff-tic80.c (tic80_howto_table): Add R_ABS entry.
3123 (rtype2howto): Handle R_ABS reloc type. Also abort on unhandled
3124 reloc types, rather than silently failing to generate an output file.
3125
3126end-sanitize-tic80
e9148724
ILT
3127Mon Mar 24 13:41:00 1997 Ian Lance Taylor <ian@cygnus.com>
3128
e1ea3dd5
ILT
3129 * targmatch.sed: Use the hold space to put the #ifdef around the
3130 the string constant.
3131 * targets.c (UNSUPPORTED_TARGET): Don't define.
3132 (find_target): Don't check for UNSUPPORTED_TARGET.
3133 (bfd_set_default_target): Don't try to optimize by checking for
3134 default.
3135
032dc9ed
ILT
3136 * Makefile.in: Rebuild dependencies.
3137 (ALL_MACHINES_CFILES): Add cpu-m32r.c.
3138 (BFD32_BACKENDS_CFILES): Add elf32-m32r.c.
3139 (elf32-m32r.o): Remove explicit target.
3140
19d02576
ILT
3141 * config.bfd: Don't set targ_underscore for i[3456]86-*-gnu* or
3142 i[3456]86-*-linux*.
3143
e9148724
ILT
3144 * elf32-sparc.c (elf32_sparc_size_dynamic_sections): Don't
3145 count section symbols for sections that were created by the
3146 linker, or are not allocatable or not loadable.
3147 (elf32_sparc_finish_dynamic_sections): Output output section
3148 symbols for section for which we made space for them.
3149
0727fe10
ILT
3150Fri Mar 21 13:08:26 1997 Ian Lance Taylor <ian@cygnus.com>
3151
3152 * elf32-sparc.c (elf32_sparc_size_dynamic_sections): If there is
3153 no .rela.plt section, don't output a DT_PLTGOT dynamic entry.
3154
ff22a9db
DE
3155Fri Mar 21 12:36:46 1997 Doug Evans <dje@canuck.cygnus.com>
3156
3157 * elf32-m32r.c (m32r_elf_howto_table): Use special function for LO16.
3158 (m32r_hi16_list): New static local.
3159 (m32r_elf_hi16_reloc): Don't perform reloc, just queue it up.
3160 (m32r_elf_do_hi16_reloc): Delete.
3161 (m32r_elf_relocate_hi16): New function.
3162 (m32r_elf_lo16_reloc): New function.
3163 (m32r_elf_relocate_section): For HI16 relocs, scan for corresponding
3164 LO16 reloc.
3165
3166 Mon Mar 10 16:03:31 1997 Doug Evans <dje@seba.cygnus.com>
3167
3168 * elf32-m32r.c (m32r_elf_create_linker_section): Delete.
3169 (m32r_elf_add_symbol_hook): Rewrite _SDA_BASE_ support.
3170 (m32r_elf_final_sda_base): New function.
3171 (m32r_elf_relocate_section): Rewrite sdata support.
3172 (m32r_elf_finish_dynamic_sections): Delete.
3173
34bc6ffc
ILT
3174Thu Mar 20 12:39:02 1997 Ian Lance Taylor <ian@cygnus.com>
3175
ac388f2a
ILT
3176 Based on patches from Philippe De Muyter <phdm@info.ucl.ac.be>.
3177 * coff-svm68k.c: New file. Just defines some macros and includes
3178 coff-m68k.c.
3179 * coff-m68k.c: Add functions to handle common addends, moved in
3180 from cf-m68klynx.c. Control them using COFF_COMMON_ADDEND macro.
3181 Control whether relocs are visible using STATIC_RELOCS.
3182 * cf-m68klynx.c: Simplify greatly: just define macros to control
3183 coff-m68k.c.
3184 * coff-aux.c: Likewise. Just leave add_one_symbol routine.
3185 * targets. (m68ksysvcoff_vec): Declare.
3186 (bfd_target_vector): Add m68ksysvcoff_vec.
3187 * config.bfd (m68*-motorola-sysv*): New target.
3188 * configure.in (m68ksysvcoff_vec): New vector.
3189 * configure: Rebuild.
3190 * Makefile.in: Rebuild dependencies.
3191 (BFD32_BACKENDS): Add coff-svm68k.o.
3192 (BFD32_BACKENDS_CFILES): Add coff-svm68k.c.
3193
b9576d75
ILT
3194 * binary.c (binary_set_section_contents): Don't get misled if the
3195 first section is not loadable. From Matthew L. Martin
3196 <mlm@xedia.com>.
3197
34bc6ffc
ILT
3198 * elflink.h (elf_bfd_final_link): Set the value of a section
3199 symbol to the section address unless doing a relocateable link.
3200
3201Tue Mar 18 23:03:17 1997 Richard Henderson <rth@tamu.edu>
3202
3203 * elf64-alpha.c (elf64_alpha_adjust_dynamic_symbol): Don't create
3204 .plt entry if we've taken the function's address.
3205 (elf64_alpha_merge_gots): Merge collected flags info as well.
3206
303e7257
ILT
3207Tue Mar 18 22:40:09 1997 H.J. Lu <hjl@lucon.org>
3208
3209 * Many files: Add function prototypes.
3210 * cpu-m68k.c (bfd_default_scan_num_mach): Don't declare.
3211 * ecofflink.c: Include "libcoff.h" and "libecoff.h".
3212 * elf32-ppc.c (ppc_elf_fake_sections): Make static.
3213 * opncls.c (bfd_openstreamr): Change stream parameter to PTR.
3214 * peicode.h: Change several void * parameters to PTR.
3215 * srec.c (srec_get_symbol_info): Make static.
3216 * syms.c (bfd_symbol_is_absolute): Remove.
7197adc4 3217 * Makefile.in: Rebuild dependencies.
303e7257 3218
939b2169
ILT
3219Tue Mar 18 12:58:08 1997 Ian Lance Taylor <ian@cygnus.com>
3220
e76386d2
ILT
3221 * elf32-m32r.c (m32r_elf_is_local_label_name): Remove.
3222 (bfd_elf32_bfd_is_local_label): Don't define.
3223
939b2169
ILT
3224 * xcofflink.c (_bfd_xcoff_bfd_final_link): Call bfd_malloc rather
3225 than malloc.
3226
50ede03d
ILT
3227Mon Mar 17 11:32:53 1997 Ian Lance Taylor <ian@cygnus.com>
3228
508539ab
ILT
3229 * bfd-in.h: Don't include obstack.h.
3230 (struct bfd_hash_table): Change memory field to PTR.
3231 * bfd.c (struct _bfd): Change memory field to PTR.
3232 * bfd-in2.h: Rebuild.
3233 * libbfd-in.h (bfd_release): Declare as function, don't define as
3234 macro.
3235 * libbfd.h: Rebuild.
3236 * opncls.c: Include "objalloc.h" rather than "obstack.h". Use
3237 objalloc routines rather than obstack routines.
3238 (obstack_chunk_alloc, obstack_chunk_free): Don't define.
3239 (getpagesize): Don't define.
3240 (_bfd_new_bfd): Don't set _bfd_chunksize.
3241 (bfd_openr): Free new bfd and objalloc on failure.
3242 (bfd_fdopenr, bfd_openstreamr, bfd_openw): Likewise.
3243 (bfd_alloc_size): Remove.
3244 (bfd_release): New function.
3245 * hash.c: Include "objalloc.h" rather than "obstack.h". Use
3246 objalloc routines rather than obstack routines.
3247 (obstack_chunk_alloc, obstack_chunk_free): Don't define.
3248 * ecofflink.c: Include "objalloc.h" rather than "obstack.h". Use
3249 objalloc routines rather than obstack routines.
3250 (obstack_chunk_alloc, obstack_chunk_free): Don't define.
3251 (struct accumulate): Change memory to struct objalloc *.
3252 * liboasys.h (oasys_data_type): Remove oasys_obstack field.
3253 * dep-in.sed: Don't remove obstack.h from dependency list.
3254 * Makefile.in: Rebuild dependencies.
3255 (BFD_H_DEPS): Remove obstack.h.
3256 (install): Don't install obstack.h.
3257 * Many files: Don't include "obstack.h".
3258 * VERSION: Bump.
3259
062a1b96
ILT
3260 * opncls.c (bfd_alloc_grow, bfd_alloc_finish): Remove.
3261 * libbfd-in.h (bfd_alloc_grow, bfd_alloc_finish): Don't declare.
3262 * libbfd.h: Rebuild.
3263 * ieee.c (ieee_archive_p): Rewrite to not use bfd_alloc_grow.
3264 * sunos.c (sunos_add_dynamic_symbols): Likewise.
0103b447 3265 * srec.c (srec_scan): Rewrite to not use obstack_1grow.
062a1b96 3266
50ede03d
ILT
3267 * opncls.c (bfd_alloc): Rename from bfd_alloc_by_size_t. Remove
3268 old version of bfd_alloc.
3269 * libbfd-in.h (bfd_alloc_by_size_t): Don't declare.
3270 * libbfd.h: Rebuild.
3271 * Several files: Call bfd_alloc rather than bfd_alloc_by_size_t.
3272
5e67a3c6
ILT
3273Sat Mar 15 15:24:18 1997 Ian Lance Taylor <ian@cygnus.com>
3274
3275 * elf32-mips.c (mips_elf_is_local_label_name): Accept the generic
3276 ELF local label syntax as well.
3277
7305cacd
FF
3278Sat Mar 15 10:16:42 1997 Fred Fish <fnf@cygnus.com>
3279
3280 * config.bfd (powerpc-*-beos*): New target.
3281 * configure.in (powerpc-*-beos*): Add case that explicitly
3282 does not set COREFILE for now. A future BeOS version is
3283 expected to support core files.
3284 * configure: Regenerate with autoconf.
3285
f56d634e
ILT
3286Fri Mar 14 16:43:22 1997 Ian Lance Taylor <ian@cygnus.com>
3287
4813bbed
ILT
3288 * elf32-mips.c (mips_elf_check_relocs): Give an error if CALL16 is
3289 seen with a local symbol, rather than crashing.
3290
f56d634e
ILT
3291 * elfcode.h (elf_slurp_symbol_table): Don't try to read the
3292 version symbols if there aren't any.
3293
4507d858
FF
3294start-sanitize-tic80
3295Thu Mar 13 16:38:30 1997 Fred Fish <fnf@cygnus.com>
3296
3297 * coff-tic80.c (coff_rtype_to_howto): Define
3298 (coff_tic80_rtype_to_howto): Clone generic coff version and
3299 add code to handle the funky TI "internal relocations".
3300
3301end-sanitize-tic80
94ba939a
ILT
3302Thu Mar 13 14:08:53 1997 Ian Lance Taylor <ian@cygnus.com>
3303
37897db0
ILT
3304 * elflink.h (elf_link_add_object_symbols): Don't warn about type
3305 or size changes because of a weak symbol.
3306
94ba939a
ILT
3307 * cisco-core.c (SIGEMT): Define if not defined.
3308
e549b1d2
ILT
3309Wed Mar 12 21:36:05 1997 Ian Lance Taylor <ian@cygnus.com>
3310
3311 * elflink.h (elf_link_add_object_symbols): Use extsymoff when
3312 setting ever. Sanity check the version number. Sort out copying
3313 flags and other information when adding an indirect symbol.
3314 (NAME(bfd_elf,size_dynamic_sections)): Preserve any dynamic
3315 symbols added by the backend. Clear the entire contents of the
3316 versym section.
3317 (elf_export_symbol): Ignore indirect symbols.
3318 (elf_link_output_extsym): Accept a section without an owner in an
3319 assert.
3320 * elfcode.h (elf_slurp_symbol_table): Add a sanity check on the
3321 version count. Correct the allocation of x_versymp.
3322
3323 * elf32-mips.c (mips_elf_add_symbol_hook): Don't set the owner of
3324 the magic sections used for SHN_MIPS_TEXT and SHN_MIPS_DATA.
3325 Don't return bfd_und_section_ptr when info->shared.
3326 (mips_elf_final_link): Set the alignment of .rtproc to 4, not 12.
3327 (mips_elf_create_dynamic_sections): Correct type: ^= for &=.
3328 (mips_elf_check_relocs): Resolve an indirect symbol in
3329 sym_hashes.
3330 (mips_elf_finish_dynamic_symbol): Don't change SHN_ABS into
3331 SHN_MIPS_TEXT or SHN_MIPS_DATA.
3332
3333 * elf.c (bfd_elf_print_symbol): Tweak version output slightly.
3334
3335Tue Mar 11 01:38:36 1997 Ian Lance Taylor <ian@cygnus.com>
3336
3337 From Eric Youngdale <eric@andante.jic.com>:
3338 * elf-bfd.h (ELF_LINK_FORCED_LOCAL): Define.
3339 * elf.c (bfd_elf_print_symbol): Correct errors in last change.
3340 * elflink.h (elf_link_add_object_symbols): Handle cases in which a
3341 versioned symbol appears in both a regular and a shared object.
3342 (elf_link_assign_sym_version): Set ELF_LINK_FORCED_LOCAL when
3343 appropriate. Improve error message.
3344 (struct elf_outext_info): Rename from elf_finfo_failed. Change
3345 all uses. Add localsyms field.
3346 (elf_bfd_final_link): When generating a shared library, call
3347 elf_link_output_extsym to output all local symbols.
3348 (elf_link_output_extsym): Handle symbols which were forced to
3349 become local.
3350
d6bfcdb5
ILT
3351Sun Mar 9 23:08:49 1997 Ian Lance Taylor <ian@cygnus.com>
3352
3353 From Eric Youngdale <eric@andante.jic.com>:
3354 * elf-bfd.h (elf_symbol_type): Add version field.
3355 * elfcode.h (elf_slurp_symbol_table): Set version field.
3356 * elflink.h (elf_link_add_object_symbols): When creating an
3357 indirect symbol for a default version symbol, set DEF_DYNAMIC if
3358 appropriate. Set up an indirection from the nondefault version of
3359 the symbol as well.
3360 (NAME(bfd_elf,size_dynamic_sections)): Call
3361 elf_link_assign_sym_version before checking whether there are any
3362 versions. Always record the version name as a dynamic symbol.
3363 Initialize counters.
3364 (elf_link_assign_sym_version): After finding a version, see if a
3365 symbol should be forced to local scope. Create a new version
3366 definition if appropriate.
3367 (elf_link_output_extsym): Correct indirect symbol handling.
3368 * elf.c (bfd_elf_print_symbol): Print version information.
3369 (bfd_section_from_shdr): Turn version sections into BFD sections.
3370 (elf_fake_sections): Only copy cverdefs and cverrefs into sh_info
3371 if sh_info is not already set.
3372 (_bfd_elf_copy_private_section_data): Copy sh_info for version
3373 sections.
3374 * elflink.c (_bfd_elf_link_record_dynamic_symbol): Tell
3375 _bfd_stringtab_add to copy the name into permanent memory if
3376 appropriate.
3377
7debe20c
ILT
3378Fri Mar 7 11:55:31 1997 H.J. Lu <hjl@gnu.ai.mit.edu>
3379
3380 * elf64-alpha.c (alpha_elf_dynamic_symbol_p): Fully parenthesize.
3381
358bb592
ILT
3382Fri Mar 7 10:37:30 1997 Ian Lance Taylor <ian@cygnus.com>
3383
ccd0e5e2
ILT
3384 * coffcode.h (bfd_coff_backend_data): Change
3385 _bfd_coff_compute_section_file_positions to return a boolean
3386 value. Change all callers.
3387 (coff_compute_section_file_positions): Change return type to
3388 boolean. If the size of the last section changed, then output a
3389 zero byte at the end of the file.
3390 * libcoff.h: Rebuild.
3391
e8c4696e
ILT
3392 * xcofflink.c (_bfd_xcoff_bfd_final_link): Always allocate space
3393 for at least 6 output symbols.
3394 (xcoff_write_global_symbol): When emitting TOC entry relocs, also
3395 emit a TC csect to represent the space they take up. For an XO
3396 symbol, just emit a reference, not a csect.
3397
4104dff6
ILT
3398 * Makefile.in ($(SHLINK)): Just use ln -s, not ln -sf, since
3399 Solaris doesn't like the combined options, and the -f is
3400 unnecessary.
5bd7c941 3401 (stamp-tshlink, install): Likewise.
4104dff6 3402
358bb592
ILT
3403 * elf32-mips.c (mips_elf_relocate_section): Correct R_MIPS16_26
3404 handling when little endian.
3405
77bf22e6
JL
3406Thu Mar 6 13:51:51 1997 Jeffrey A Law (law@cygnus.com)
3407
5847e6dd
JL
3408 * elf32-mn10300.c (mn10300_elf_final_link_relocate): New function.
3409 (mn10300_elf_relocate_section): Likewise.
3410 (elf_backend_relocate_section): Define.
3411
77bf22e6
JL
3412 * elf32-mn10300.c (reloc_type): Remove PCREL{8,16,32}_{1,2}BYTE
3413 relocs. Replace them with generic PCREL_{8,16,32} relocs.
3414 (elf32_mn10300_howto_table): Likewise.
3415 (elf32_mn10300_reloc_map): Likewise.
3416 (bfd_elf32_mn10300_reloc): Delete unused function.
3417
13b58694
FF
3418Thu Mar 6 12:19:59 1997 Fred Fish <fnf@cygnus.com>
3419
3420start-sanitize-tic80
3421 * coff-tic80.c (rtype2howto): If passed a relocation type we don't
3422 understand, just set the howto field to NULL, and the caller will
3423 print an appropriate error message.
3424end-sanitize-tic80
3425 * coffcode.h (coff_slurp_reloc_table): Pull duplicate declarations and
3426 code fragment out of both legs of #ifdef RELOC_PROCESSING ... #endif
3427 block. Use NULL for initializations of "ptr" rather than bare 0.
3428 * coff-h8300.c: Fix typo in comment.
3429 * coff-h8500.c: Ditto.
3430 * coff-w65.c: Ditto
3431 * coff-z8k.c: Ditto.
cf2cd4cf 3432
da171461
DE
3433Wed Mar 5 13:59:09 1997 Doug Evans <dje@seba.cygnus.com>
3434
3435 * elf32-m32r.c (m32r_elf_do_10_pcrel_reloc): Fix overflow calc.
3436 (m32r_elf_relax_section, m32r_elf_relax_delete_bytes,
3437 m32r_elf_get_relocated_section_contents): First pass at relax support.
3438
da171461
DE
3439Mon Mar 3 13:27:09 1997 Ulrich Drepper <drepper@rtl.cygnus.com>
3440
3441 * elflink.h (elf_link_add_object_symbols): Use correct sh_size
3442 entry for reading verdef records.
3443 Use correct braces for computing increments of extverdaux and
3444 exteverdef record pointers.
3445
4b4ac3ae
FF
3446start-sanitize-tic80
3447Sun Mar 2 22:47:54 1997 Fred Fish <fnf@cygnus.com>
3448
3449 * coff-tic80.c (COFF_DEFAULT_SECTION_ALIGNMENT_POWER): Set this to 2
3450 instead of 4.
3451
3452end-sanitize-tic80
a48ef404
ILT
3453Sun Mar 2 16:25:35 1997 Ian Lance Taylor <ian@cygnus.com>
3454
3455 * elflink.h (elf_link_find_version_dependencies): Check that
3456 DEF_REGULAR is not set as well as checking that DEF_DYNAMIC is
3457 set.
3458
84fd6e7e
FF
3459start-sanitize-tic80
3460Fri Feb 28 16:52:40 1997 Fred Fish <fnf@cygnus.com>
3461
3462 * coffcode.h (coff_set_flags): Add case for TIC80_ARCH_MAGIC.
3463
3464end-sanitize-tic80
af4dffff
ILT
3465Fri Feb 28 15:06:45 1997 Ian Lance Taylor <ian@cygnus.com>
3466
73769e1f
ILT
3467 * targets.c (bfd_default_vector): Make non-const.
3468 (find_target): New static function, broken out of
3469 bfd_find_target.
3470 (bfd_set_default_target): New function.
3471 (bfd_find_target): Call find_target. When defaulting, use
3472 bfd_default_vector[0] if it is not NULL.
3473 * libbfd-in.h (bfd_default_vector): Adjust declaration.
3474 * bfd-in2.h, libbfd.h: Rebuild.
3475
af4dffff
ILT
3476 * syms.c (bfd_is_local_label): Return false if the symbol has no
3477 name.
3478 * coff-i960.c (coff_i960_is_local_label_name): New function.
3479 (coff_bfd_is_local_label_name): Define.
3480 * coff-m68k.c (m68k_coff_is_local_label_name): New function.
3481 (coff_bfd_is_local_label_name): Define.
3482 * coff-rs6000.c (xcoff_is_local_label_name): New function.
3483 (coff_bfd_is_local_label_name): Define.
3484 * elf.c (_bfd_elf_is_local_label_name): Treat symbols beginning
3485 with .. or _.L_ as local.
3486 * elf32-i386.c (elf_i386_is_local_label_name): New function.
3487 (bfd_elf32_bfd_is_local_label_name): Define.
3488 * evax-alpha.c (evax_bfd_is_local_label_name): Treat symbols
3489 beginning with $ as local.
3490
85d6f0b4
ILT
3491Thu Feb 27 18:36:23 1997 Ian Lance Taylor <ian@cygnus.com>
3492
e316f514
ILT
3493 * aoutx.h (aout_link_write_symbols): Use bfd_is_local_label_name
3494 rather than comparing against info->lprefix.
3495 * cofflink.c (_bfd_coff_link_input_bfd): Likewise.
3496 * elflink.h (elf_link_input_bfd): Likewise.
3497 * linker.c (_bfd_generic_link_output_symbols): Likewise.
3498 * xcofflink.c (xcoff_link_input_bfd): Likewise.
3499
3500 * elfxx-target.h (bfd_elfNN_bfd_is_local_label_name): Define as
3501 _bfd_elf_is_local_label_name if not already defined.
3502 * elf.c (_bfd_elf_is_local_label_name): New function.
3503 * elf-bfd.h (_bfd_elf_is_local_label_name): Declare.
3504
3505 * coff-m88k.c (coff_bfd_is_local_label_name): Define.
3506 (m88k_is_local_label_name): New static function.
3507
3508 * coffcode.h (coff_bfd_is_local_label_name): Define as
3509 _bfd_coff_is_local_label_name if not already defined.
3510 * coffgen.c (_bfd_coff_is_local_label_name): New function.
3511 * libcoff-in.h (_bfd_coff_is_local_label_name): Declare.
3512 * libcoff.h: Rebuild.
cf2cd4cf 3513
35a3e78e
ILT
3514 * targets.c (BFD_JUMP_TABLE_SYMBOLS): Change _bfd_is_local_label
3515 to _bfd_is_local_label_name.
3516 (bfd_target): Likewise.
3517 * syms.c (bfd_is_local_label): Define as function, not macro.
3518 (bfd_is_local_name): Define.
3519 * libbfd.c (bfd_generic_is_local_label_name): Rename from
3520 bfd_generic_is_local_label, and take a string rather than a
3521 symbol.
3522 * libbfd-in.h (_bfd_nosymbols_bfd_is_local_label): Don't define.
3523 (_bfd_nosymbols_bfd_is_local_label_name): Define.
3524 (bfd_generic_is_local_label): Don't declare.
3525 (bfd_generic_is_local_label_name): Declare.
3526 * bfd-in2.h, libbfd.h: Rebuild.
3527 * All backends: Change local_label to local_label_name.
3528
85d6f0b4
ILT
3529 * elf32-mips.c (struct mips_got_info): Add assigned_gotno field.
3530 (mips_elf_relocate_got_local): Change return type to boolean.
3531 Don't assume that the first zero entry is unassigned; instead, use
3532 assigned_gotno.
3533 (mips_elf_relocate_section): Check return value of
3534 mips_elf_relocate_got_local.
3535 (mips_elf_create_got_section): Initialize assigned_gotno field.
3536
56819c99
MH
3537start-sanitize-d30v
3538Wed Feb 26 15:19:51 1997 Martin M. Hunt <hunt@pizza.cygnus.com>
3539
3540 * elf32-d30v.c (bfd_elf_d30v_reloc): Add code to do 32-bit
3541 relocations.
3542
cf2cd4cf 3543end-sanitize-d30v
fa802cb0
ILT
3544Wed Feb 26 13:33:03 1997 Ian Lance Taylor <ian@cygnus.com>
3545
3546 * elflink.h (elf_link_input_bfd): Don't skip symbols from sections
3547 that have no contents merely because linker_mark is not set.
3548
3549Tue Feb 25 18:51:35 1997 Stan Shebs <shebs@andros.cygnus.com>
3550
3551 * config.bfd (mips*-*-lnews*): New target.
3552 * coff-mips.c (mips_relocate_section): Make assert compare
3553 content byteorder instead of header byteorder.
3554 (ecoff_biglittle_vec): New BFD, big-endian headers, little-endian
3555 data.
55ef0d90 3556 * targets.c (bfd_target_vector): Add ecoff_biglittle_vec.
fa802cb0
ILT
3557 * configure.in (ecoff_biglittle_vec): Add case.
3558 * configure: Update.
3559
7b4be668
ILT
3560Tue Feb 25 00:32:49 1997 Ian Lance Taylor <ian@cygnus.com>
3561
b08f5ac2
ILT
3562 * elf.c (elf_fake_sections): Use SHT_NOTE for any section whose
3563 name begins with ".note".
3564 (map_sections_to_segments): Add a PT_NOTE segment for any loadable
3565 section whose name begins with ".note".
3566 (get_program_header_size): Corresponding change.
3567
7b4be668
ILT
3568 * elf32-mips.c (mips_elf_relocate_section): Check for misaligned
3569 jal and for jal overflow.
3570
3571Mon Feb 24 17:53:14 1997 Ian Lance Taylor <ian@cygnus.com>
3572
3573 From Eric Youngdale <eric@andante.jic.com>:
3574 * elflink.h (elf_link_add_archive_symbols): If a default symbol is
3575 not found, try looking it up again without the version name.
3576 (elf_link_add_object_symbols): Always link against the dynamic
3577 symbol table of a dynamic object. When linking against a dynamic
3578 object, include version strings in symbol names, and set up
3579 version information. Add indirect symbols for default versions.
3580 (elf_link_create_dynamic_sections): Add special version sections.
3581 (struct elf_assign_sym_version_info): Define.
3582 (struct elf_find_verdep_info): Define.
3583 (NAME(bfd_elf,size_dynamic_sections)): Add verdefs parameter. Set
3584 up version sections.
3585 (elf_adjust_dynamic_symbol): Ignore indirect symbols.
3586 (elf_link_find_version_dependencies): New static function.
3587 (elf_link_assign_sym_version): New static function.
3588 (elf_link_renumber_dynsyms): New static function.
3589 (struct elf_final_link_info): Add symver_sec field.
3590 (elf_bfd_final_link): Initialize finfo.symver_sec. Don't count
3591 local symbols of a dynamic object. Handle DT_VER* constants.
3592 (elf_link_output_extsym): Simplify BFD_ASSERT checking for a
3593 dynamic object. Skip indirect symbols from ELF objects. Remove
3594 the version name before choosing a hash bucket. Write out the
3595 version information if appropriate.
3596 (elf_link_input_bfd): Check for DYNAMIC, not ET_DYN.
3597 * bfd-in.h (bfd_elf32_size_dynamic_sections): Update declaration.
3598 (bfd_elf64_size_dynamic_sections): Likewise.
3599 * bfd-in2.h: Rebuild.
3600 * elf-bfd.h (struct elf_link_hash_entry): Add verinfo field.
3601 Change elf_link_hash_flags to unsigned short.
3602 (ELF_LINK_HIDDEN): Define.
3603 (struct elf_obj_tdata): Add fields dynversym_hdr, dynverref_hdr,
3604 dynverdef_hdr, dynversym_section, dynverdef_section,
3605 dynverref_section, cverdefs, cverrefs, verdef, verref.
3606 (elf_dynversym, elf_dynverdef, elf_dynverref): Define.
3607 (_bfd_elf_swap_verdef_in, _bfd_elf_swap_verdef_out): Declare.
3608 (_bfd_elf_swap_verdaux_in, _bfd_elf_swap_verdaux_out): Declare.
3609 (_bfd_elf_swap_verneed_in, _bfd_elf_swap_verneed_out): Declare.
3610 (_bfd_elf_swap_vernaux_in, _bfd_elf_swap_vernaux_out): Declare.
3611 (_bfd_elf_swap_versym_in, _bfd_elf_swap_versym_out): Declare.
3612 (_bfd_elf_slurp_version_tables): Declare.
3613 * elf.c (_bfd_elf_swap_verdef_in): New function.
3614 (_bfd_elf_swap_verdef_out): Likewise.
3615 (_bfd_elf_swap_verdaux_in, _bfd_elf_swap_verdaux_out): Likewise.
3616 (_bfd_elf_swap_verneed_in, _bfd_elf_swap_verneed_out): Likewise.
3617 (_bfd_elf_swap_vernaux_in, _bfd_elf_swap_vernaux_out): Likewise.
3618 (_bfd_elf_swap_versym_in, _bfd_elf_swap_versym_out): Likewise.
3619 (_bfd_elf_print_private_bfd_data): Add DT_VER* constants. Print
3620 version information if there is any.
3621 (_bfd_elf_link_hash_newfunc): Initialize verinfo field.
3622 (bfd_section_from_shdr): Handle SHT_GNU_ver* section types.
3623 (elf_fake_sections): Handle .gnu.version* section names.
3624 (assign_section_numbers): Handle SHT_GNU_ver* section types.
3625 (_bfd_elf_slurp_version_tables): New function.
3626 * elflink.c (_bfd_elf_link_record_dynamic_symbol): Don't include
3627 version name in string entered in dynamic hash table.
3628 * elfcode.h: Include fnmatch.h.
3629 * elf32-i386.c (elf_i386_relocate_section): Handle a dynamic
3630 symbol which was forced to become local.
3631 * elf32-m68k.c (elf_m68k_relocate_section): Likewise.
3632 * elf32-ppc.c (ppc_elf_relocate_section): Likewise.
3633 * elf32-sparc.c (elf32_sparc_relocate_section): Likewise.
3634 * elf64-alpha.c (alpha_elf_dynamic_symbol_p): Likewise.
3635
7b951eed
JL
3636Fri Feb 21 16:15:18 1997 Jeffrey A Law (law@cygnus.com)
3637
3638 * elf32-mn10200.c (mn10200_elf_final_link_relocate): Simplify
3639 somewhat.
3640 (mn10200_elf_relax_section): Correctly compute a symbol's value
3641 when the symbol is local, but not in the same section as we are
3642 relaxing. Implement abs24 -> abs16, imm24 -> imm16 and d24 -> d16
3643 relaxing.
3644
77dd1a25
DE
3645Fri Feb 21 13:55:14 1997 Doug Evans <dje@seba.cygnus.com>
3646
3647 * elf32-m32r.c: Rewrite to use ELF backend linker.
3648 Store lower 16 bits of addend in R_M32R_HI16_[SU]LO insns.
3649 Add small data area support (R_M32R_SDA16).
3650 * reloc.c: Document BFD_RELOC_M32R_SDA16.
3651 * bfd-in2.h,libbfd.h: Regenerated.
3652
fd395661
JL
3653Thu Feb 20 23:50:31 1997 Jeffrey A Law (law@cygnus.com)
3654
3655 * elf32-mn10200.c (mn10200_elf_relax_section): New function.
3656 (mn10200_elf_relax_delete_bytes): Likewise.
3657 (mn10200_elf_symbol_address_p): Likewise.
3658 (mn10200_elf_get_relocated_section_contents): Likewise.
3659 (bfd_elf32_bfd_relax_section): Define.
3660 (bfd_elf32_bfd_get_relocated_section_contents): Likewise.
64af6679
JL
3661
3662 * elf32-mn10200.c (mn10200_elf_final_link_relocate): New function.
3663 (mn10200_elf_relocate_section): Likewise.
3664 (elf_backend_relocate_section): Define.
3665
fd8d7c31
MH
3666start-sanitize-d30v
3667Tue Feb 18 17:22:59 1997 Martin M. Hunt <hunt@pizza.cygnus.com>
3668
3669 * Makefile.in, archures.c, config.bfd, configure.in, elf.c,
cf2cd4cf 3670 reloc.c, targets.c: New target, elf-*-D30V.
fd8d7c31
MH
3671
3672 * bfd-in2.h, configure, libbfd.h: Rebuilt.
3673
3674 * cpu-d30v.c, elf32-d30v.c: New files.
cf2cd4cf
UD
3675
3676end-sanitize-d30v
92a956e8
FF
3677Tue Feb 18 15:31:48 1997 Fred Fish <fnf@cygnus.com>
3678
3679 * reloc.c (struct reloc_howto_struct): Fix typo in comment.
3680 * bfd-in2.h: Regenerated.
3681start-sanitize-tic80
3682 * coff-tic80.c (RTYPE2HOWTO): Replace abort with real function.
3683 (rtype2howto): Add function.
3684 (tic80_howto_table): Add.
3685end-sanitize-tic80
cf2cd4cf 3686
92a956e8
FF
3687Tue Feb 18 11:41:00 1996 Dawn Perchik <dawn@cygnus.com>
3688
3689 * sysdep.h: Don't define errno in MSVC if error.h is included.
3690
8d1ba96e
JL
3691Tue Feb 18 10:04:13 1997 Jeffrey A Law (law@cygnus.com)
3692
3693 * elf32-v850.c (v850_elf_relocate_section): Make sure r_symndx
3694 is initialized before it is used.
3695
8ceca983
ILT
3696Mon Feb 17 11:28:40 1997 Ian Lance Taylor <ian@cygnus.com>
3697
3698 * hp300hpux.c (convert_sym_type): Don't convert a secondary common
3699 symbol into a weak undefined symbol; leave it as a common symbol.
3700
54626f1a
ILT
3701Fri Feb 14 19:08:03 1997 Ian Lance Taylor <ian@cygnus.com>
3702
3703 * elflink.h (elf_link_add_object_symbols): Don't issue a warning
3704 about a symbol defined in a dynamic object if it has already been
3705 defined in a regular object.
3706
236969ac
ILT
3707Thu Feb 13 20:53:22 1997 Klaus Kaempf (kkaempf@progis.de)
3708
3709 * makefile.vms: Add gcc flags to allow compiling with current gcc
3710 snapshot
3711 (targmatch.h): New dependency.
3712
54626f1a
ILT
3713 * reloc.c (BFD_RELOC_ALPHA_CODEADDR): New relocation for
3714 openVMS/Alpha.
3715 * evax.h (ALPHA_R_CODEADDR): New relocation.
3716 * evax-alpha.c (ALPHA_R_CODEADDR): 64 bit procedure relocation for
3717 openVMS/Alpha.
3718 * evax-etir.c (ALPHA_R_CODEADDR): Output object code for this
3719 relocation.
3720 * bfd-in2.h, libbfd.h: Rebuild.
3721
3722 Restrict symbol length to 64 bytes, case preserving:
3723 * evax-emh.c (_bfd_evax_write_emh): Remove case hacking.
3724 * evax-misc.c (_bfd_evax_case_hack_symbol): Remove.
3725 (_bfd_evax_length_hash_symbol): Added.
3726 * evax-etir.c (_bfd_evax_write_etir): Call
3727 _bfd_evax_length_hash_symbol before output of symbol.
3728 * evax-egsd.c (_bfd_evax_write_egsd): Likewise.
3729 * evax.h (flag_hash_long_names, flag_show_after_trunc): Remove.
3730
3731 * evax-emh.c: Output filename to object file without path.
3732
3733 * evax-egsd.c: New sections for local and global commons.
3734
3735 * evax-alpha.c, evax-emh.c, evax-egsd.c, evax-etir.c,
3736 evax-misc.c, evax.h: Remove 8 bit characters from copyright
3737 notices. Replace AXP with Alpha.
3738
62332d05
ILT
3739Wed Feb 12 18:10:30 1997 Ian Lance Taylor <ian@cygnus.com>
3740
3741 * sunos.c (sunos_create_dynamic_sections): We need the dynamic
3742 sections if we are creating a shared library.
3743
3883007e
DE
3744Tue Feb 11 15:45:43 1997 Doug Evans <dje@canuck.cygnus.com>
3745
3746 * configure.host (i386-windows): Don't set host64=true.
3747
a4183ba5
ILT
3748Tue Feb 11 15:27:32 1997 Ian Lance Taylor <ian@cygnus.com>
3749
3750 * elf32-mips.c (reloc_type): Add R_MIPS16_GPREL.
3751 (elf_mips16_gprel_howto): New static variable.
3752 (mips16_gprel_reloc): New static function.
3753 (bfd_elf32_bfd_reloc_type_lookup): Handle BFD_RELOC_MIPS16_GPREL.
3754 (mips_info_to_howto_rel): Handle R_MIPS16_GPREL.
3755 (mips_elf_relocate_section): Handle R_MIPS16_GPREL.
3756 * reloc.c (BFD_RELOC_MIPS16_GPREL): Define.
3757 * bfd-in2.h, libbfd.h: Rebuild.
3758
97cbfc23 3759Mon Feb 10 23:25:00 1997 Doug Evans <dje@seba.cygnus.com>
b9c5ee68
DE
3760
3761 * elf32-m32r.c (elf_m32r_howto_table): Change partial_inplace to true
3762 for R_M32R_{16,32,24,HI16_ULO,HI16_SLO,LO16}.
3763
276c2d7d
GRK
3764start-sanitize-r5900
3765 Fri Feb 7 16:20:17 1997 Gavin Koch <gavin@cygnus.com>
cf2cd4cf 3766
276c2d7d 3767 * config.bfd: add r5900
cf2cd4cf
UD
3768
3769end-sanitize-r5900
ba4a4594
ILT
3770Fri Feb 7 12:39:11 1997 Ian Lance Taylor <ian@cygnus.com>
3771
3772 * elflink.h (elf_link_input_bfd): If we've discarded a section,
3773 the output section will be the absolute section; don't print an
3774 assertion message for that case when doing a relocateable link.
3775
e900e695
ILT
3776Thu Feb 6 16:55:43 1997 Ian Lance Taylor <ian@cygnus.com>
3777
3778 * elf32-mips.c (FN_STUB, CALL_STUB, CALL_FP_STUB): Define.
3779 (struct mips_elf_link_hash_entry): Add new fields fn_stub,
3780 need_fn_sub, call_stub, and call_fp_stub.
3781 (struct mips_elf_link_hash_table): Add field mips16_stubs_seen.
3782 (mips_elf_link_hash_newfunc): Initialize new fields.
3783 (mips_elf_link_hash_table_create): Likewise.
3784 (mips_elf_relocate_section): Redirect relocations to use mips16
3785 stubs when appropriate.
3786 (mips_elf_check_relocs): Attach stub sections to the appropriate
3787 symbol. Set need_fn_stub when appropriate.
3788 (mips_elf_always_size_sections): New static function.
3789 (mips_elf_check_mips16_stubs): New static function.
3790 (elf_backend_always_size_sections): Define.
3791 * elf-bfd.h (struct elf_obj_tdata): Add local_stubs field.
3792
3793 * elflink.h (elf_link_input_bfd): Discard local symbols that are
3794 attached to sections which are not being included in the link.
3795
5b61a02a
ILT
3796Wed Feb 5 13:20:17 1997 Ian Lance Taylor <ian@cygnus.com>
3797
3798 * cofflink.c (_bfd_coff_generic_relocate_section): Ignore the
3799 symbol value when computing the addend for a pc_relative
3800 pcrel_offset reloc.
3801
bcb686ca
ILT
3802Mon Feb 3 11:54:06 1997 Ian Lance Taylor <ian@cygnus.com>
3803
5a50eec6
ILT
3804 * cofflink.c (_bfd_coff_generic_relocate_section): If doing a
3805 relocateable link, just skip pc_relative pcrel_offset relocs.
3806 * coff-arm.c (coff_arm_rtype_to_howto): Return a different howto
3807 structure for an ARM26 reloc which can be resolved.
3808 (coff_arm_adjust_symndx): Only convert ARM26 to ARM26D if the
3809 reloc can be resolved.
3810
bcb686ca
ILT
3811 * coff-h8300.c (h8300_reloc16_extra_cases): Correct off by one
3812 error in overflow check for R_RELBYTE.
3813
167dc907
ILT
3814Fri Jan 31 14:07:27 1997 Ian Lance Taylor <ian@cygnus.com>
3815
6c58561e
ILT
3816 * ieee.c (ieee_slurp_section_data): Pick up the start address.
3817 From Mark Rasin <mark.rasin@telrad.co.il>.
3818
167dc907
ILT
3819 * aoutx.h (aout_link_write_symbols): Don't apply discard_l to
3820 debugging symbols.
3821
1a2faf1f
JL
3822Wed Jan 29 00:00:49 1997 Jeffrey A Law (law@cygnus.com)
3823
3824 * elf32-mn10200.c (reloc_type): Add 16bit pc-relative reloc.
3825 (elf_mn10200_howto_table): Likewise.
3826 (mn10200_reloc_map): Likewise.
3827
1d5c6cfd
DE
3828Mon Jan 27 12:07:35 1997 Doug Evans <dje@seba.cygnus.com>
3829
3830 * reloc.c: Add relocs BFD_RELOC_M32R_{HI16_[US]LO,LO16}.
3831 * bfd-in2.h, libbfd.h: Regenerated.
3832 * elf32-m32r.c: Add support for them.
3833
9950f925
ILT
3834Mon Jan 27 12:25:02 1997 Ian Lance Taylor <ian@cygnus.com>
3835
54aa1dea
ILT
3836 * aout-arm.c (MY_swap_std_reloc_in): Remove unused r_length.
3837 * elf32-ppc.c (ppc_elf_check_relocs): Remove unused plt.
54aa1dea
ILT
3838 * elf32-v850.c (v850_elf_final_link_relocate): Remove used
3839 r_format and r_pcrel. Always return a value.
54aa1dea
ILT
3840 * riscix.c (MY_final_link_callback): Define to dummy value.
3841
9950f925
ILT
3842 * elf32-i386.c (elf_i386_size_dynamic_sections): When checking for
3843 relocations against the text segment, look up the output name of
3844 the reloc section.
3845 * elf32-m68k.c (elf_m68k_size_dynamic_sections): Likewise.
3846 * elf32-mips.c (mips_elf_size_dynamic_sections): Likewise.
3847 * elf32-ppc.c (ppc_elf_size_dynamic_sections): Likewise.
3848 * elf32-sparc.c (elf32_sparc_size_dynamic_sections): Likewise.
3849 * elf64-alpha.c (elf64_alpha_size_dynamic_sections): Likewise.
3850
0716c2e9 3851start-sanitize-tic80
8c00b01d
FF
3852Wed Jan 22 15:40:28 1997 Fred Fish <fnf@cygnus.com>
3853
3854 * coff-tic80.c (tic80coff_vec): Use correct data put/get
3855 routines for little endian data.
3856 * coffcode.h (coff_write_object_contents): Set magic to
3857 TIC80_ARCH_MAGIC for TIc80.
3858
0716c2e9
FF
3859Tue Jan 21 12:32:43 1997 Fred Fish <fnf@cygnus.com>
3860
3861 * coff-tic80.c (tic80coff_vec): Change to little endian data
3862 as the default.
3863
3864end-sanitize-tic80
db109ca2
ILT
3865Thu Jan 16 17:45:57 1997 Ian Lance Taylor <ian@cygnus.com>
3866
3867 * elflink.h (NAME(bfd_elf,size_dynamic_sections)): Change type of
3868 auxiliary_filters parameter to be const char * const *. Accept a
3869 NULL terminated array.
3870 * bfd-in.h (bfd_elf32_size_dynamic_sections): Update declaration.
3871 (bfd_elf32_size_dynamic_sections): Update declaration.
3872 * bfd-in2.h: Rebuild.
3873
3874Wed Jan 15 11:21:32 1997 Ian Lance Taylor <ian@cygnus.com>
3875
3876 * elf32-sparc.c (elf32_sparc_adjust_dynamic_symbol): Treat a
3877 NOTYPE symbol in a text section as a FUNC symbol.
3878
3879 * coffcode.h (coff_compute_section_file_positions): Force
3880 relocbase to be aligned to COFF_DEFAULT_SECTION_ALIGNMENT_POWER.
3881
e1616e16
DE
3882Tue Jan 14 08:46:33 1997 Doug Evans <dje@canuck.cygnus.com>
3883
3884 * libaout.h (machine_type): Reserve several values for sparclet.
3885
4af93ad0
MM
3886start-sanitize-tic80
3887Mon Jan 13 22:39:08 1997 Michael Meissner <meissner@tiktok.cygnus.com>
3888
3889 * config.bfd (tic80-*-*): Don't require 'coff'.
3890
91eb4378 3891end-sanitize-tic80
0ce71ebd
MM
3892Mon Jan 13 19:36:25 1997 Michael Meissner <meissner@tiktok.cygnus.com>
3893
3894 * elf32-v850.c (v850_elf_howto_table): Set the special_function
3895 table to v850_elf_reloc for all non-standard relocations.
3896 (v850_elf_check_relocs): Add check for h being non-null.
3897 (v850_elf_reloc): Add R_V850_ZDA_OFFSET support. Use switch
3898 statement instead of multiple ifs.
3899 (v850_elf_relocate_section): Fix up error message, don't just call
3900 abort.
3901
483e1b91
JL
3902Mon Jan 6 13:28:35 1997 Jeffrey A Law (law@cygnus.com)
3903
09a7bde3 3904 * elf32-mn10200.c (elf_mn10200_howto): Don't ever set partial-inplace.
40131692
JL
3905 Use bfd_elf_generic_reloc as special function for all relocs.
3906 (bfd_elf32_mn10200_reloc): Remove unnecessary function.
3907
3908 * elf32-mn10200.c (elf_mn10200_howto): Set pcrel_offset for
483e1b91
JL
3909 24bit pc-relative reloc.
3910
28eb95aa
FF
3911start-sanitize-tic80
3912Fri Jan 3 16:33:00 1997 Fred Fish <fnf@cygnus.com>
3913
3914 * Makefile.in (coff-tic80.o): Add coffcode.h to dependency list.
3915 * coff-tic80.c (tic80coff_vec): Data byte order is big endian and
3916 header byte order is little endian. Use correct bfd_get and
3917 bfd_put routines for little endian headers.
3918 * coffcode.h (coff_set_arch_mach_hook): Set arch to
3919 bfd_arch_tic80 for TIC80_ARCH_MAGIC number.
3920
3921end-sanitize-tic80
b3ef3894
JL
3922Fri Jan 3 16:54:08 1997 Jeffrey A Law (law@cygnus.com)
3923
3924 * reloc.c: Add BFD_RELOC_24.
3925 * elf32-mn10200.c (enum reloc_type): Add 24bit and pcrel relocs.
3926 (elf_mn10200_howto, mn10200_reloc_map): Corresponding changes.
3927 * bfd-in2.h, libbfd.h: Rebuilt.
3928
ff12f303
ILT
3929Fri Jan 3 16:58:31 1997 Richard Henderson <rth@tamu.edu>
3930
3931 elf64-alpha multiple .got rewrite:
3932
3933 * elf-bfd.h (struct elf_backend_data): Add always_size_sections entry.
3934 (bfd_elf*_mkobject): Don't define here ...
3935 * elfxx-target.h: ... but rather here. Default always_size_sections
3936 hook to NULL.
cf2cd4cf 3937 * elf.c (elf_mkobject): Rename to bfd_elf_mkobject, since that was
ff12f303
ILT
3938 what the #defines in elf-bfd.h transmuted it to anyway.
3939
3940 * section.c: Add SEC_LINKER_CREATED flag.
3941 * bfd-in2.h: Rebuild.
3942 * elf32-i386.c (elf_i386_check_relocs): Add SEC_LINKER_CREATED to
3943 relocation section flags.
3944 (elf_i386_size_dynamic_sections): Use SEC_LINKER_CREATED instead of
3945 SEC_IN_MEMORY to recognize generated bits.
3946 * elf32-m68k.c (elf_m68k_check_relocs, elf_m68k_size_dynamic_sections):
3947 Likewise.
3948 * elf32-mips.c (mips_elf_final_link, mips_elf_create_dynamic_sections,
3949 mips_elf_create_compact_rel_section, mips_elf_create_got_section,
3950 mips_elf_check_relocs, mips_elf_size_dynamic_sections): Likewise.
3951 * elf32-ppc.c (ppc_elf_create_linker_section,
3952 ppc_elf_size_dynamic_sections): Likewise.
3953 * elf32-sparc.c (elf32_sparc_check_relocs,
3954 elf32_sparc_size_dynamic_sections): Likewise.
cf2cd4cf 3955 * elflink.c (_bfd_elf_create_got_section): Add SEC_LINKER_CREATED to
ff12f303
ILT
3956 section flags.
3957 (_bfd_elf_create_dynamic_sections): Likewise.
3958 (_bfd_elf_make_linker_section_rela): Likewise.
3959 * elflink.h (elf_link_create_dynamic_sections): Likewise.
3960 (bfd_elf,size_dynamic_sections): Call the always_size_sections hook.
3961 (elf_bfd_final_link): Use SEC_LINKER_CREATED instead of SEC_IN_MEMORY
3962 to identify generated bits.
3963 (elf_link_input_bfd): Likewise.
3964
3965 * elf64-alpha.c: Rewrite everything touching relocations.
3966
de224d6a
MM
3967Fri Jan 3 11:42:53 1997 Michael Meissner <meissner@tiktok.cygnus.com>
3968
3969 * elf32-v850.c (all functions and static variables): Go through
3970 and regularize names to be of the form v850_elf_<xxx>.
3971 (toplevel): Include <elf/v850.h>.
3972 (enum reloc_type): Move to include/elf/v850.h.
3973 (v850_elf_check_relocs): For common variables, if the variable is
3974 referenced by a R_V850_{SDA,ZDA,TDA} relocation, put the variable
3975 into the appropriate section.
3976 (elf_backend_check_relocs): Define.
3977
afaed5e9
MM
3978Tue Dec 31 15:15:28 1996 Michael Meissner <meissner@tiktok.cygnus.com>
3979
3980 * elf32-v850.c (elf_v850_howto_table): Fix some spacing.
3981
148437ec
ILT
3982Tue Dec 31 14:44:50 1996 Ian Lance Taylor <ian@cygnus.com>
3983
7c342fc5
ILT
3984 * config.bfd (mips*el-*-linux*): New target.
3985 (mips*-*-linux*): New target.
3986
3987 * elf32-mips.c (_bfd_mips_elf_merge_private_bfd_data): Clean up.
3988 Return a useful value.
3989
6ded6615
ILT
3990 * Makefile.in (ALL_CFLAGS): Add -D_GNU_SOURCE.
3991
dda7af9f
ILT
3992 * configure.in: Check ac_cv_func_mmap_fixed_mapped, not
3993 ac_cv_func_mmap.
3994 * configure: Rebuild.
ab98712a
ILT
3995 * configure.host: Use ac_cv_func_mmap_fixed_mapped instead of
3996 ac_cv_func_mmap in bfd/configure.host.
dda7af9f 3997
148437ec
ILT
3998 * elflink.h (NAME(bfd_elf,size_dynamic_sections)): Add
3999 filter_shlib and auxiliary_filter_shlib parameters.
4000 * elf.c (_bfd_elf_print_private_bfd_data): Handle DT_AUXILIARY and
4001 DT_FILTER.
4002 * bfd-in.h (bfd_elf32_size_dynamic_sections): Update declaration.
4003 (bfd_elf64_size_dynamic_sections): Likewise.
4004 * bfd-in2.h: Rebuild.
4005
1eeccb22
ILT
4006Mon Dec 30 18:48:52 1996 Ian Lance Taylor <ian@cygnus.com>
4007
4008 * xcofflink.c (xcoff_build_ldsyms): When exporting all defined
4009 symbols, don't export a symbol which is defined by an object in an
4010 archive which contains shared objects.
4011
60b26712 4012start-sanitize-tic80
fc46a9ec
FF
4013Mon Dec 30 16:12:58 1996 Fred Fish <fnf@cygnus.com>
4014
4015 * archures.c (enum bfd_architecture): Add bfd_arch_tic80
4016 for TI TMS320c80 (MVP).
4017 (bfd_archures_list): Add bfd_tic80_arch.
4018 * bfd-in2.h: Regenerate by running "make headers".
4019
60b26712
FF
4020Sun Dec 29 16:18:52 1996 Fred Fish <fnf@cygnus.com>
4021
4022 * cpu-tic80.c (bfd_tic80_arch): Add struct.
4023 * configure.in (case $vec): Correct typo, "tb" not "tp".
4024 Also add cofflink.o for tic80coff_vec.
4025 * configure: Regenerate with autoconf.
4026
4027end-sanitize-tic80
412f8c93
ILT
4028Mon Dec 30 11:54:56 1996 Ian Lance Taylor <ian@cygnus.com>
4029
4030 * libbfd.c: Patch up the mmap code so that it is only built if BFD
4031 is configured with --with-mmap.
4032
5a608f5b 4033start-sanitize-tic80
fc46a9ec 4034Sun Dec 29 10:48:57 1996 Fred Fish <fnf@cygnus.com>
5a608f5b
FF
4035
4036 * Makefile.in (BFD32_BACKENDS): Add coff-tic80.o
4037 (ALL_MACHINES): Add cpu-tic80.o
4038 (cpu-tic80.o, coff-tic80.o): Add dependencies.
4039 * coff-tic80.c: Add skeleton, cloned from another coff config.
4040 * coffcode.h (coff_write_object_contents): Set magic to TIC80MAGIC
4041 for TIc80.
4042
4043end-sanitize-tic80
60b26712 4044Fri Dec 27 20:56:41 1996 Fred Fish <fnf@cygnus.com>
cd6213ff
FF
4045
4046 * TODO: Correct a misspelling.
4047start-sanitize-tic80
4048 * coff-tic80.c: New file for TI TMS320C80 (MVP).
4049 * cpu-tic80.c: New file for TI TMS320C80 (MVP).
4050 * configure.in (case $vec): Add tic80coff_vec entry.
4051 * configure: Regenerate with autoconf.
4052 * archures.c (bfd_tic80_arch): Declare.
4053 * bfd-in2.h (enum bfd_architecture): Add bfd_arch_tic80.
4054 * config.bfd (case ${targ}): Add tic80*-*-coff* target.
4055 * targets.c (tic80coff_vec): Add decl as extern bfd_target.
4056 (bfd_target_vector): Add tic80coff_vec entry.
4057end-sanitize-tic80
4058
6b8ec6f3
ILT
4059Fri Dec 27 11:48:12 1996 H.J. Lu <hjl@lucon.org>
4060
4061 * elflink.h (elf_buckets): Add some more values for larger
4062 binaries.
4063
78650abd
ILT
4064Thu Dec 26 18:36:54 1996 Ian Lance Taylor <ian@cygnus.com>
4065
4066 * Makefile.in (install): Move subdir_do out of conditional. From
4067 Fred Fish <fnf@cygnus.com>.
4068
8d16fe5c
JL
4069Wed Dec 18 10:04:30 1996 Jeffrey A Law (law@cygnus.com)
4070
4071 * elf32-mn10200.c (enum reloc_type): Enable basic 8, 16, and
4072 32 bit relocs.
4073 (elf_mn10200_howto_table): Likewise.
4074 (mn10200_reloc_map): Likewise.
4075
69e2ff18
ILT
4076Tue Dec 17 11:09:36 1996 Ian Lance Taylor <ian@cygnus.com>
4077
e4f4813f
ILT
4078 * elf32-mips.c (mips_elf_add_symbol_hook): Add 1 to the value of a
4079 mips16 symbol during the link.
4080 (mips_elf_finish_dynamic_symbol): Subtract 1 from the value of a
4081 mips16 symbol.
4082 (mips_elf_link_output_symbol_hook): New static function.
4083 (elf_backend_link_output_symbol_hook): Define.
4084
69e2ff18
ILT
4085 * elf.c (bfd_elf_print_symbol): Print the st_other field if it is
4086 not zero.
4087
e85f2fbd
ILT
4088Mon Dec 16 14:38:39 1996 Ian Lance Taylor <ian@cygnus.com>
4089
4090 * elf.c (bfd_section_from_shdr): Don't check for reloc sections
4091 against SEC_DEBUGGING sections here (revert patch of December 5).
4092 * elfcode.h (elf_object_p): Check for them here, instead.
4093
e35765a9
ILT
4094Sun Dec 15 14:46:06 1996 Ian Lance Taylor <ian@cygnus.com>
4095
4096 * elfcode.h (elf_slurp_reloc_table): Add dynamic parameter.
4097 * elf.c (_bfd_elf_canonicalize_reloc): Pass new argument to
4098 slurp_reloc_table.
4099 (_bfd_elf_get_dynamic_reloc_upper_bound): New function.
4100 (_bfd_elf_canonicalize_dynamic_reloc): New function.
4101 * elf-bfd.h (struct elf_size_info): Update declaration of
4102 slurp_reloc_table.
4103 (_bfd_elf_get_dynamic_reloc_upper_bound): Declare.
4104 (_bfd_elf_canonicalize_dynamic_reloc): Declare.
4105 * elfxx-target.h: Use new dynamic reloc routines by default.
4106 * elf64-mips.c (mips_elf64_slurp_reloc_table): Add dynamic
4107 parameter.
4108
6270adfb
ILT
4109Fri Dec 13 13:18:49 1996 Dan Wilder <dan@gasboy.com>
4110
4111 * coffcode.h (coff_set_flags): Use MC68KBCSMAGIC for bfd_arch_m68k
4112 if NAMES_HAVE_UNDERSCORE is defined.
4113
21e45f82
DE
4114Fri Dec 13 11:13:23 1996 Doug Evans <dje@canuck.cygnus.com>
4115
4116 * libaout.h (enum machine_type): Change M_SPARCLET from 142 to 131.
4117
e7bab9df
MM
4118Thu Dec 12 15:07:20 1996 Michael Meissner <meissner@tiktok.cygnus.com>
4119
4120 * elf32-ppc.c (ppc_elf_check_relocs): Move R_PPC_PLTREL24 into the
4121 supported relocs.
4122
a5147005
ILT
4123Thu Dec 12 14:55:41 1996 Ian Lance Taylor <ian@cygnus.com>
4124
440f3914
ILT
4125 * elflink.h (elf_link_add_object_symbols): Only add a weak
4126 symbol if the real definition is in the dynamic symbol table.
4127 After finding the real definition, then, if it is dynamic, add the
4128 weak symbol to the dynamic symbol table.
4129
e5c3708d
ILT
4130 * coff-aux.c (coff_m68k_aux_link_add_one_symbol): Make static.
4131
a5147005
ILT
4132 * ppcboot.c (ppcboot_set_arch_mach): Don't define; it's a
4133 function.
4134 (ppcboot_bfd_print_private_bfd_data): Don't take the address of an
4135 array.
4136
4137Tue Dec 10 23:23:52 1996 Jeffrey A Law (law@cygnus.com)
4138
4139 * elf32-mn10300.c (reloc_type): Remove big endian mn10300 reloc
4140 variants.
4141 (elf32_mn10300_howto_table, mn10300_reloc_map): Likewise.
4142 (bfd_elf32_mn10300_reloc): Write data in little endian format.
4143 * reloc.c: Remove mn10300 big endian relocs.
4144 * bfd-in2.h, libbfd.h: Rebuilt.
4145
4146 * elf32-mn10200.c: Update from elf32-mn10300.c.
cf2cd4cf 4147
207e944c
JL
4148Fri Dec 6 15:18:05 1996 Jeffrey A Law (law@cygnus.com)
4149
31cffd2e
JL
4150 * elf32-mn10300.c (elf_symbol_leading_char): Define.
4151
207e944c
JL
4152 * elf32-mn10300.c: Add some comments.
4153
6dcf1ef5
ILT
4154Fri Dec 6 17:16:43 1996 Ian Lance Taylor <ian@cygnus.com>
4155
4156 * ihex.c (ihex_scan): Always initialize buf before jumping to
4157 error_return.
4158 (ihex_read_section): Likewise.
4159
d28f058e
JL
4160Thu Dec 5 22:29:18 1996 Jeffrey A Law (law@cygnus.com)
4161
4162 * elf32-mn10300.c (elf_mn10300_howto_table): Don't set partial-
4163 inplace for most relocs.
4164
80be821d
ILT
4165Thu Dec 5 13:24:46 1996 Ian Lance Taylor <ian@cygnus.com>
4166
4167 * elflink.h (elf_link_add_object_symbols): Calling check_relocs
4168 even if SEC_ALLOC is not set.
4169 * elf32-i386.c (elf_i386_check_relocs): Don't check SEC_ALLOC
4170 when deciding whether to copy a reloc into a shared object.
4171 (elf_i386_relocate_section): Likewise.
4172 * elf32-sparc.c (elf32_sparc_check_relocs): Likewise.
4173 (elf32_sparc_relocate_section): Likewise.
4174 * elf32-i386.c (elf_i386_check_relocs): Don't set SEC_ALLOC in a
4175 reloc section if it is not set in the source section.
4176 * elf32-sparc.c (elf32_sparc_check_relocs): Likewise.
4177 * elf.c (bfd_section_from_shdr): Mark a reloc section associated
4178 with a SEC_DEBUGGING section as SEC_DEBUGGING.
4179
e5c4495c
MM
4180Wed Dec 4 14:18:13 1996 Michael Meissner <meissner@tiktok.cygnus.com>
4181
4182 * elf32-ppc.c (ppc_elf_adjust_dynamic_symbol): #if 0 code that
4183 expects a .got.plt until we actually create it.
4184
179b58d9
ILT
4185Mon Dec 2 12:13:51 1996 Ian Lance Taylor <ian@cygnus.com>
4186
e5c4495c
MM
4187 * cofflink.c (_bfd_coff_generic_relocate_section): Print an error
4188 message for bfd_reloc_outofrange, rather than aborting. From
4189 Philippe De Muyter <phdm@info.ucl.ac.be>.
4190
179b58d9
ILT
4191 * cofflink.c (_bfd_coff_final_link): If there aren't any relocs in
4192 a relocateable link, don't try to process them. From Heinz Wrobel
4193 <wrobel@lpr.e-technik.tu-muenchen.de>.
4194
943686fa
JL
4195Mon Dec 2 00:39:24 1996 Jeffrey A Law (law@cygnus.com)
4196
4197 * elf32-mn10300.c (mn10300_info_howto): Renamed from
a5147005 4198 mn10300_info_howto_rel. Tweak reloc argument to be an
943686fa
JL
4199 Elf32_Internal_Rela.
4200 (USE_RELA): Define instead of USE_REL.
4201 (elf_info_to_howto, elf_info_howto_rel): Corresponding changes.
4202
0e0f4106
PS
4203Sun Dec 1 00:18:59 1996 Peter Schauer (pes@regent.e-technik.tu-muenchen.de)
4204
4205 * configure.in, configure: Handle mips*-sgi-irix6*.
4206 * irix-core.c (irix_core_core_file_p): Accept CORE_MAGICN32
4207 core files.
4208
15aafe49
ILT
4209Wed Nov 27 12:10:25 1996 Ian Lance Taylor <ian@cygnus.com>
4210
4211 * elf32-i386.c (elf_i386_relocate_section): Warn about a
4212 relocation against a symbol defined in a section with no output
4213 section.
4214
6c02f1a0
ILT
4215Tue Nov 26 11:07:31 1996 Ian Lance Taylor <ian@cygnus.com>
4216
dfc7020d
ILT
4217 * aclocal.m4 (BFD_CC_FOR_BUILD): Don't require AC_C_CROSS.
4218 * configure, config.in: Rebuild with autoconf 2.12.
4219
6c02f1a0
ILT
4220 * elf-bfd.h (struct elf_link_hash_entry): Add other field.
4221 * elf.c (_bfd_elf_link_hash_newfunc): Initialize other field.
4222 (swap_out_syms): Set st_other from existing st_other field.
4223 * elflink.h (elf_link_add_object_symbols): Store st_other in hash
4224 table other field.
4225 (elf_link_output_extsym): Set the other field from the global hash
4226 table entry.
4227 * elf32-mips.c (enum reloc_type): Add R_MIPS16_26.
4228 (elf_mips16_jump_howto): New static variable.
4229 (mips16_jump_reloc): New static function.
4230 (bfd_elf32_bfd_reloc_type_lookup): Handle BFD_RELOC_MIPS16_JMP.
4231 (mips_info_to_howto_rel): Handle R_MIPS16_26.
4232 (mips_elf_relocate_section): Handle R_MIPS16_26. Handle R_MIPS_26
4233 to a mips16 symbol.
4234 * reloc.c (BFD_RELOC_MIPS16_JMP): Add to list of relocs.
4235 * bfd-in2.h, libbfd.h: Rebuild.
4236 * cpu-mips.c (arch_info_struct): Add mips:16 entry.
4237
f082b5ea
ILT
4238Mon Nov 25 11:23:32 1996 Ian Lance Taylor <ian@cygnus.com>
4239
4240 * configure.host: Use long long for mips-sgi-irix6*.
4241
4242 * coffswap.h (coff_swap_scnhdr_out): Make line number overflow
4243 only a warning. From Philippe De Muyter <phdemuyt@ulb.ac.be>.
4244
12fdaaf8
JL
4245Mon Nov 25 08:52:29 1996 Jeffrey A Law (law@cygnus.com)
4246
4247 * elf32-mn10300.c (bfd_elf32_mn10300_reloc): New function.
4248 (enum reloc_type): Add more reloc types.
4249 (elf32_mn10300_howto_table): Update for new reloc types.
4250 (elf32_mn10300_reloc_map): Update for new reloc types.
4251 * reloc.c: Add some new relocs for the mn10300 series.
4252 * bfd-in2.h, libbfd.h: Rebuilt.
cf2cd4cf 4253
23def276
JL
4254Sat Nov 23 13:26:18 1996 Jeffrey A Law (law@cygnus.com)
4255
4256 * som.c (setup_sections): Don't lose for a space which has
4257 no data, but some symbols.
4258
a600a89e
ILT
4259Fri Nov 22 11:32:13 1996 Ian Lance Taylor <ian@cygnus.com>
4260
4261 * sunos.c (struct sunos_link_hash_table): Add got_needed field.
4262 (sunos_link_hash_table_create): Initialize got_needed.
4263 (sunos_create_dynamic_sections): Only set .got section size if it
4264 is not already set. Set got_needed.
4265 (bfd_sunos_size_dynamic_sections): Check got_needed. Only set
4266 sdynptr, and only handle dynamic sections, if dynamic sections are
4267 needed.
4268 (sunos_scan_std_relocs): Pass false to create_dynamic_sections.
4269 Initialize .got section.
4270 (sunos_scan_ext_relocs): Likewise.
4271 (sunos_write_dynamic_symbol): Set up PLT entry even if this is not
4272 a dynamic symbol.
4273 (sunos_finish_dynamic_link): Check got_needed. Only set up
4274 dynamic linking information if needed.
4275
aa09d6b2 4276Thu Nov 21 10:31:31 1996 Rob Savoye (rob@cygnus.com)
cf2cd4cf 4277
aa09d6b2
RS
4278 * config.bfd: Added VersaDOS format to the Ericsson configuration.
4279
c3239e66
JL
4280Wed Nov 20 16:31:31 1996 Jeffrey A Law (law@cygnus.com)
4281
4282 * elf32-mn10300.c: Rough cut at relocs for the mn10300.
4283
c3239e66
JL
4284Wed Nov 13 08:12:38 1996 Jeffrey A Law (law@cygnus.com)
4285
4286 * Makefile.in (elf32-d10v.o): Don't depend on elf/d10v.h
4287 anymore.
4288
c3239e66
JL
4289Tue Nov 12 13:30:00 1996 Dawn Perchik <dawn@cygnus.com>
4290
4291 * filemode.c: Include sysdep.h.
4292 * ihex.c: Add casts to eliminate compiler warnings.
4293 * sunos.c: Add casts to eliminate compiler warnings.
4294
9e23db76
MM
4295Mon Nov 11 10:37:02 1996 Michael Meissner <meissner@tiktok.cygnus.com>
4296
4297 * elf32-ppc.c (ppc_elf_adjust_dynamic_symbol): Create .got.plt
4298 section.
4299 (ppc_elf_check_relocs): Add support for R_PPC_LOCAL24PC. Make
4300 appropriate relocations in the .so file if shared.
4301 (ppc_elf_relocate_section): Ditto.
4302
affcfcf9
DE
4303Tue Oct 29 15:03:02 1996 Doug Evans <dje@canuck.cygnus.com>
4304
4305 * elf32-m32r.c (elf_m32r_howto_table, R_M32R_24): Use
4306 complain_overflow_unsigned.
4307
421a2956
MH
4308Tue Oct 29 12:53:46 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
4309
4310 * elf32-d10v.c (elf_d10v_howto_table): Don't complain on
4311 overflows for R_D10V_16 and R_D10V_18.
4312
061cc10b
ILT
4313Tue Oct 29 13:23:53 1996 Ian Lance Taylor <ian@cygnus.com>
4314
4315 * ieee.c (ieee_write_section_part): Use LMA rather than VMA.
4316 (do_with_relocs): Likewise.
4317 (do_as_repeat): Likewise.
4318 (copy_expression): Likewise.
4319
4320Fri Oct 25 16:56:40 1996 Ian Lance Taylor <ian@cygnus.com>
4321
4322 * ieee.c (ieee_write_external_part): Correctly record whether
4323 there is an external part.
4324
061cc10b
ILT
4325Thu Oct 24 14:32:52 1996 Jeffrey A Law (law@cygnus.com)
4326
4327 * elf32-v850.c (elf32_v850_bfd_final_link_relocate): Correctly
4328 handle tda offsets for sld.w and sst.w instructions.
4329 Fix alignment check in sld.w and sst.w tda reloc handling.
4330
27c7e907
SG
4331Thu Oct 24 09:08:47 1996 Stu Grossman (grossman@critters.cygnus.com)
4332
4333 * aclocal.m4, configure: Set USE_BINARY_FOPEN for *-*-windows.
4334
90ffe48b
JL
4335Wed Oct 23 00:53:16 1996 Jeffrey A Law (law@cygnus.com)
4336
4337 * elf32-v850.c: Add comments about assumptions about
4338 char, short & long sizes.
4339 (elf32_v850_bfd_final_link_relocate): Fix sign extension
4340 problems for several relocs.
4341
4342 * elf32-v850.c (elf32_v850_howto_table): Fix typo in
4343 R_V850_SDA_OFFSET entry.
4344
84be2a8f
ILT
4345Wed Oct 23 00:20:34 1996 Ian Lance Taylor <ian@cygnus.com>
4346
4347 * xcofflink.c (bfd_xcoff_import_symbol): Don't allocate ldsym.
4348 Store import file index in ldindx.
4349 (xcoff_build_ldsyms): Assume that ldsym was not previously
4350 allocated. For an imported symbol, copy ldindx into l_ifile.
4351
725b96f5
JL
4352Tue Oct 22 19:20:38 1996 Jeffrey A Law (law@cygnus.com)
4353
c322f1b5 4354 * elf32-v850.c (elf_v850_howto_table): Fix ordering of
90ffe48b
JL
4355 R_V850_ZDA_OFFSET and R_V850_TDA_OFFSET. Fix various
4356 fields in R_V850_TDA_OFFSET.
c322f1b5 4357 (elf32_v850_bfd_final_link_relocate): Tweak pc-relative
90ffe48b 4358 relocs to work more like other relocs. Handle R_V850_TDA_OFFSET
c322f1b5
JL
4359 relocations.
4360
725b96f5
JL
4361 * elf32-v850.c: Include bfdlink.h.
4362 (bfd_elf32_v850_reloc): Return an error if we get a reloc
4363 we can't handle.
4364 (elf32_v850_bfd_final_link_relocate): New function.
4365 (v850_elf_relocation_section): Likewise.
4366 (elf_backend_relocate_section): Define.
4367
40c0ea5a
ILT
4368Tue Oct 22 17:22:43 1996 Ian Lance Taylor <ian@cygnus.com>
4369
4370 * binary.c (binary_set_section_contents): Ignore sections which
4371 don't have SEC_LOAD and SEC_ALLOC set.
4372
9c52f4b2
JL
4373Mon Oct 21 12:13:05 1996 Jeffrey A Law (law@cygnus.com)
4374
4375 * linker.c (_bfd_generic_final_link): Avoid losing static
4376 symbols in the .bss section.
4377
bd4dd3d0
ILT
4378Mon Oct 21 10:54:58 1996 Ian Lance Taylor <ian@cygnus.com>
4379
68553b63
ILT
4380 * elf32-mips.c (elf_mips_howto_table): Describe R_MIPS_64.
4381 (mips32_64bit_reloc): New static function.
4382 (mips_reloc_map): Add entry for BFD_RELOC_64.
4383 (mips_elf_relocate_section): Handle R_MIPS_64.
4384
bd4dd3d0
ILT
4385 * linker.c (default_indirect_link_order): Print an error message
4386 when attempting to do a relocateable link with different object
4387 file formats, rather than calling abort.
4388
56910544
DE
4389Thu Oct 17 10:43:29 1996 Doug Evans <dje@canuck.cygnus.com>
4390
4391 * reloc.c (m32r relocs): Rename them.
4392 * bfd-in2.h, libbfd.h: Regenerated.
4393 * elf32-m32r.c: Update.
4394 (m32r_elf_10_pcrel_reloc): New function.
4395 (elf_m32r_howto_table, R_M32R_10_PCREL entry): Use it.
4396 (elf_m32r_howto_table, R_M32R_24 entry): Fix {src,dst}_masks.
4397
e1d98a0a
JL
4398Wed Oct 16 11:24:35 1996 Jeffrey A Law (law@cygnus.com)
4399
4948949e
JL
4400 * linker.c (_bfd_generic_final_link): Set "linker_mark" for
4401 all sections that will be included in the output file.
4402 (_bfd_generic_link_output_symbols): Discard symbols in sections
4403 which are being discarded.
b6d08fce
JL
4404 * elf32-v850.c (enum reloc_type): Add R_V850_SDA_OFFSET,
4405 R_V850_TDA_OFFSET and R_V850_ZDA_OFFSET.
4406 (elf_v850_howto_table): Corresponding changes.
4407 (elf_v850_reloc_map): Corresponding changes.
4408 * reloc.c: Add additional V850 relocations.
4409 * bfd-in2.h, libbfd.h: Rebuilt.
4410
e1d98a0a
JL
4411 * elf32-v850.c (bfd_elf32_v850_reloc): Mask out bits we
4412 no longer want in pc-relative relocs.
4413
05f1baaa
JL
4414Tue Oct 15 22:17:37 1996 Jeffrey A Law (law@cygnus.com)
4415
4416 * elf32-v850.c (bfd_elf32_v850_reloc): Don't silently
4417 accept a reloc against an undefined sybmol!
4418
1336da39
SG
4419Tue Oct 15 16:17:28 1996 Stu Grossman (grossman@critters.cygnus.com)
4420
4421 * elf32-v850.c: Define elf_symbol_leading_char to be '_'.
4422
c24453fe
ILT
4423Tue Oct 15 12:40:41 1996 Ian Lance Taylor <ian@cygnus.com>
4424
ede836b9
ILT
4425 * VERSION: Bump for new relocation.
4426
c24453fe
ILT
4427 * hosts/i386bsd.h: If NBPG is not defined, define it as
4428 PAGE_SIZE, for recent versions of FreeBSD.
4429
e7a50458
ILT
4430Mon Oct 14 12:37:26 1996 Ian Lance Taylor <ian@cygnus.com>
4431
4432 * configure.host: Use `long long' as the 64 bit type on a Solaris
4433 host, since both gcc and the SunPRO compilers support it.
4434
6b31fd3a
ILT
4435Mon Oct 14 11:17:24 1996 Richard Henderson <rth@tamu.edu>
4436
cf2cd4cf 4437 * reloc.c: Create a new BFD_RELOC_ALPHA_ELF_LITERAL. It was a
6b31fd3a
ILT
4438 mistake to have reused the ECOFF LITERAL for ELF since they have
4439 different semantics.
4440 * elf64-alpha.c (elf_reloc_map): Map from ELF_LITERAL.
4441 * bfd-in2.h, libbfd.h: Rebuild.
4442
4443 * elf64-alpha.c (elf64_alpha_size_dynamic_sections): Trap .got
4444 section overflow.
4445
4446 * elf64-alpha.c (elf64_alpha_relocate_section): Do not emit a
4447 dynamic relocation for an undefweak symbol when we are building
4448 a static executable.
4449
f20f2474
SS
4450Thu Oct 10 11:15:06 1996 Stan Shebs <shebs@andros.cygnus.com>
4451
4452 * mpw-make.sed (config.bfd, targmatch.sed): Edit references to
4453 point explicitly to srcdir.
4454 (targmatch.h): Edit references to point explicitly to objdir.
4455
3e222a5a
ILT
4456Thu Oct 10 14:14:23 1996 Ian Lance Taylor <ian@cygnus.com>
4457
4458 * config.bfd: When setting targ_cpu, don't get confused by
4459 linux-gnu.
4460
81501797
SG
4461Tue Oct 8 08:51:19 1996 Stu Grossman (grossman@critters.cygnus.com)
4462
4463 * configure.host: Add support for windows host (a build done
4464 under the Microsoft build environment).
4465
fe4ff515
ILT
4466Tue Oct 8 11:40:16 1996 Ian Lance Taylor <ian@cygnus.com>
4467
1c4794f5
ILT
4468 * elflink.h (elf_link_add_object_symbols): If a symbol is a weak
4469 definition in a dynamic object, add it to the dynamic symbol table
4470 if any dynamic object mentions it. Reverts part of last patch.
4471
9d81de19
ILT
4472 * sunos.c (struct sunos_link_hash_table): Add got_base field.
4473 (sunos_link_hash_table_create): Initialize got_base.
4474 (bfd_sunos_size_dynamic_sections): If the .got section is more
4475 than 0x1000 bytes, set __GLOBAL_OFFSET_TABLE_ and got_base to
4476 0x1000.
4477 (sunos_check_dynamic_reloc): Subtract got_base from a base
4478 relative relocation.
4479
fe4ff515
ILT
4480 * elf32-mips.c (elf_mips_isa): New static function.
4481 (_bfd_mips_elf_merge_private_bfd_data): Don't warn about linking
4482 -mips1 and -mips2 code together, or -mips3 and -mips4 code.
4483
1233f74b
ILT
4484Mon Oct 7 11:44:17 1996 Ian Lance Taylor <ian@cygnus.com>
4485
4486 * archive.c (do_slurp_coff_armap): Only treat archive as little
4487 endian for i960 COFF.
4488
a3d5a706
ILT
4489Fri Oct 4 13:49:01 1996 Ian Lance Taylor <ian@cygnus.com>
4490
65f56a58
ILT
4491 * coffcode.h (coff_compute_section_file_positions): Adjust sofar
4492 by the change in size of the section when EXEC_P is not set.
4493
a9dd34a9
ILT
4494 * coff-m68k.c (coff_rtype_to_howto): Define if not defined.
4495 (m68kcoff_rtype_to_howto): New static function.
4496 * cf-m68klynx.c (coff_m68k_lynx_rtype_to_howto): Add the section
4497 VMA to the addend for a PC relative reloc.
4498
05a68c24
ILT
4499 * dep-in.sed: Rework backslash loop a bit to avoid bug in sed on
4500 HP/UX 10.20.
4501 * Makefile.in: Rebuild dependencies.
4502
a3d5a706
ILT
4503 * dep-in.sed: Remove ../bfd/sysdep.h, since it will appear when
4504 som.h is included.
4505
c00ae065
JL
4506Fri Oct 4 11:41:39 1996 Jeffrey A Law (law@cygnus.com)
4507
4508 * Makefile.in: Remove explicit dependencies for mn10200 and
4509 mn10300 files.
4510 (ALL_MACHINE_CFILES): Add cpu-mn10200.c and cpu-mn10300.c.
4511 (BFD32_BACKENDS_CFILES): Add elf32-mn10200.c and elf32-mn10300.c
4512 (dependencies): Rebuilt.
4513
dee99794
ILT
4514Thu Oct 3 16:57:51 1996 Ian Lance Taylor <ian@cygnus.com>
4515
1d871eb7
ILT
4516 * cofflink.c (coff_link_add_symbols): Set obj_coff_keep_syms
4517 during this function.
4518
6b5af55c
ILT
4519 * elflink.c (_bfd_elf_create_linker_section): Only use an existing
4520 section if the flags are compatible.
4521
dee99794
ILT
4522 * configure.in: Add havevecs, and put it in tdefaults.
4523 * mpw-config.in: Likewise.
4524 * configure: Rebuild.
4525 * targmatch.sed: New file; a sed script to build targmatch.h from
4526 config.bfd.
4527 * config.bfd: Add #if, #endif, and comments for targmatch.h.
4528 * targets.c: Include "fnmatch.h".
4529 (struct targmatch): Define.
4530 (bfd_target_match): Define by including targmatch.h.
4531 (bfd_find_target): If the target is not found by name, search for
4532 it as a configuration triplet.
4533 * Makefile.in: Rebuild dependencies.
4534 (BFD32_BACKENDS): Add aout-arm.o, aout-sparcle.o, hp300bsd.o,
4535 i386dynix.o, m68k4knetbsd.o, and riscix.o.
4536 (BFD32_BACKENDS_CFILES): Add aout-arm.c, aout-sparcle.c,
4537 hp300bsd.c, i386dynix.c, m68k4knetbsd.c, and riscix.c.
4538 (HFILES): Add targmatch.h. Also, alphabetize and reindent.
4539 (CFILES): Remove i386dynix.c and hp300bsd.c.
4540 (targmatch.h): New target.
4541 (do_clean): Remove targmatch.h.
4542
4543 * configure.in: Add BFD_NEED_DECLARATION(getenv).
4544 * acconfig.h: Add NEED_DECLARATION_GETENV.
4545 * configure, config.in: Rebuild.
4546 * sysdep.h: If NEED_DECLARATION_GETENV, declare getenv.
4547 * aout-adobe.c (aout_adobe_object_p): Don't declare getenv.
4548
ae1b99e4
JL
4549Thu Oct 3 09:29:09 1996 Jeffrey A Law (law@cygnus.com)
4550
4551 * cpu-mn10x00.c, elf32-mn10x00: Removed.
4552 * cpu-mn10200.c, cpu-mn10300.c: New files.
4553 * elf32-mn10200.c, elf32-mn10300.c: New files.
4554 * Makefile.in: Break mn10x00 support into two separate
4555 configurations, mn10200 and mn10300.
4556 * archures.c, config.bfd, configure.in, elf.c, targets.c: Likewise.
4557 * bfd-in2.h, configure: Rebuilt.
4558
4c7f3fde
JM
4559Thu Oct 3 15:38:19 1996 Jason Molenda (crash@godzilla.cygnus.co.jp)
4560
4561 * Makefile.in (do_clean): Move config.log to do_distclean.
4562
efc2b064
JL
4563Wed Oct 2 21:40:55 1996 Jeffrey A Law (law@cygnus.com)
4564
4565 * cpu-mn10x00.c, elf32-mn10x00.c: New files.
4566 * Makefile.in (ALL_MACHINES): Add cpu-mn10x00.o.
4567 (BFD32_BACKENDS): Similarly for elf32-mn10x00.o.
4568 (elf32-mn10x00.o): Add dependencies.
4569 * archures.c (enum bfd_architecture): Add bfd_arch_mn10x00.
4570 (bfd_mn10x00_arch): Declare.
4571 (bfd_archures_list): Add bfd_mn10x00_arch.
4572 * config.bfd: Add mn10x00-*-*.
4573 * configure.in: Add bfd_elf32_mn10x00_vec.
4574 * elf.c (prep_headers): Handle bfd_arch_mn10x00.
4575 * targets.c (bfd_elf32_mn10x00_vec): Declare.
4576 (bfd_target_vector): Add bfd_elf32_mn10x00_vec.
4577 * bfd-in2.h, configure: Rebuilt.
cf2cd4cf 4578
bf53bd9f
ILT
4579Wed Oct 2 15:46:45 1996 Klaus Kaempf <kkaempf@progis.de>
4580
4581 openVMS/Alpha: Provide filename and case_hack flags via
4582 symbol table from gas.
4583 Add case_hack code for symbol output from vax/vms.
4584 * evax-alpha.c (evax_initialize): Remove filename handling,
4585 filename is provided via symbol table.
4586 (evax_get_symtab): Use local symbol count when setting up table.
4587 * evax-egsd.c (_bfd_evax_slurp_egsd): Print correct name when
4588 debugging.
4589 (_bfd_evax_write_egsd): Skip file name symbol.
4590 * evax-emh.c (get_vms_time_string): Local function now.
4591 (_bfd_evax_write_emh): Extract source filename and case_hack flags
4592 from symbol table.
4593 * evax_write_etir (_bfd_evax_write_etir): Pass all symbol names
4594 through _bfd_evax_case_hack_symbol.
4595 * evax-misc.c (hash_string, _bfd_evax_case_hack_symbol): New
4596 functions.
4597 (_bfd_evax_basename): Removed.
4598 (_bfd_get_vms_time_string): Moved to evax-emh.c.
4599 * evax.h (evax_private_data_struct): Remove filename.
4600 (flag_hash_long_names, flag_show_after_trunc,
4601 flag_no_hash_mixed_case, vms_name_mapping): New flags for
4602 vms_case_hack.
4603
263d4a62
ILT
4604Wed Oct 2 12:02:02 1996 Ian Lance Taylor <ian@cygnus.com>
4605
a0fe6c2d
ILT
4606 * freebsd.h (N_GET_MAGIC_NET): Don't use ntohl.
4607 (N_GETMID_NET, N_GETFLAG_NET): Likewise.
4608 (NO_SWAP_MAGIC): Don't define.
4609 (SWAP_MAGIC): Define.
4610
263d4a62
ILT
4611 * cofflink.c (_bfd_coff_link_input_bfd): Don't crash if there is
4612 no hash table entry for a global symbol.
4613
161ac690
ILT
4614Tue Oct 1 16:14:22 1996 Joel Sherrill <joel@oarcorp.com>
4615
4616 * config.bfd (mips*-*-rtems*): New target, like mips*-*-elf*.
4617
0db6249c
ILT
4618Tue Oct 1 12:31:39 1996 Ian Lance Taylor <ian@cygnus.com>
4619
8dd53b5c
ILT
4620 * cofflink.c (coff_link_add_symbols): Don't override a meaningful
4621 symbol type with T_NULL. Warn if symbol type changes. Based on
e5c4495c 4622 patch from Philippe De Muyter <phdm@info.ucl.ac.be>.
8dd53b5c 4623
0db6249c
ILT
4624 * elflink.h (elf_link_add_object_symbols): Only put a symbol from
4625 a dynamic object in the dynamic symbol table if it is referenced
4626 or defined by a regular object.
4627
0db6249c
ILT
4628Fri Sep 27 18:41:07 1996 Stu Grossman (grossman@critters.cygnus.com)
4629
4630 * elf32-v850.c (bfd_elf32_v850_is_local_label): New function to
4631 remove dwarf local labels. Shrinks binaries by a factor of 3!
4632
0db6249c
ILT
4633Mon Sep 23 13:33:00 1996 Ian Lance Taylor <ian@cygnus.com>
4634
4635 * elf32-ppc.c (ppc_elf_add_symbol_hook): Create the .sbss section
4636 by hand, rather than by calling bfd_make_section.
4637
80675684
DE
4638Mon Sep 23 09:23:41 1996 Doug Evans <dje@seba.cygnus.com>
4639
4640 * reloc.c: Rename m32r relocs.
4641 * bfd-in2.h, libbfd.h: Rebuilt.
4642 * elf32-m32r.c: Update.
80675684 4643
a5a43df1
ILT
4644Fri Sep 20 11:43:43 1996 Ian Lance Taylor <ian@cygnus.com>
4645
e12ab364
ILT
4646 * aoutx.h (aout_link_input_section_ext): When doing a relocateable
4647 link, adjust the symbol index of a base relative reloc. Don't
4648 change the addend of a PC relative reloc if pcrel_offset is set.
4649 * sunos.c (bfd_sunos_size_dynamic_sections): Don't do anything for
4650 a relocateable link.
4651
a5a43df1
ILT
4652 * reloc.c (bfd_perform_relocation): Apply the relocation even if
4653 it is zero, in case src_mask matters.
4654 (bfd_install_relocation): Likewise.
4655
e425358f
ILT
4656Thu Sep 19 11:03:06 1996 Ian Lance Taylor <ian@cygnus.com>
4657
4658 * xcofflink.c (xcoff_link_add_symbols): Always initialize
4659 keep_syms.
4660 (_bfd_xcoff_bfd_final_link): Don't set target_index
4661 to an uninitialized value.
4662
7f21c97c
ILT
4663Tue Sep 17 14:18:31 1996 Ian Lance Taylor <ian@cygnus.com>
4664
4665 * coffcode.h (coff_slurp_line_table): Warn about illegal symbol
4666 indices, rather than crashing.
4667 (coff_slurp_reloc_table): Likewise. Check whether the howto field
4668 is NULL.
8d784abe
ILT
4669 * coff-sh.c (sh_relocate_section): Check for an illegal symbol
4670 index.
7f21c97c 4671
9859bc31
ILT
4672Mon Sep 16 12:39:36 1996 Ian Lance Taylor <ian@cygnus.com>
4673
1153e84b
ILT
4674 * coff-arm.c (aoutarm_std_reloc_howto): Change dst_mask for ARM26D
4675 reloc to 0.
4676 (coff_arm_adjust_symndx): New static function.
4677 (coff_adjust_symndx): Define.
4678
9859bc31
ILT
4679 * srec.c (srec_scan): Accept multiple symbols on a single line.
4680 From Pascal Martin <pmartin@alsys.com>.
4681
4682 * README: New file.
4683
f8b82e49
DE
4684Fri Sep 13 14:32:42 1996 Doug Evans <dje@canuck.cygnus.com>
4685
4686 * aoutf1.h (MY_bfd_merge_private_bfd_data): Define.
4687 (sunos_merge_private_bfd_data): New function.
4688
0a7b8735
ILT
4689Fri Sep 13 15:50:57 1996 Ian Lance Taylor <ian@cygnus.com>
4690
76d30c3f
ILT
4691 * bfd.c (bfd_copy_private_bfd_data): Switch on output BFD rather
4692 than input BFD.
4693 (bfd_merge_private_bfd_data): Likewise.
4694 * section.c (bfd_copy_private_section_data): Likewise.
4695 * syms.c (bfd_copy_private_symbol_data): Likewise.
4696 * bfd-in2.h: Rebuild.
4697 * aout-target.h (MY_bfd_copy_private_section_data): Check that
4698 both BFD's are the right flavour.
4699 * ecoff.c (_bfd_ecoff_bfd_copy_private_bfd_data): Likewise.
4700 * elf.c (_bfd_elf_copy_private_symbol_data): Likewise.
4701 * elf32-mips.c (_bfd_mips_elf_copy_private_bfd_data): Likewise.
4702 (_bfd_mips_elf_merge_private_bfd_data): Likewise.
4703 * elf32-ppc.c (ppc_elf_copy_private_bfd_data): Likewise.
4704 (ppc_elf_merge_private_bfd_data): Likewise.
4705 * elf32-sparc.c (elf32_sparc_merge_private_bfd_data): Likewise.
4706 * peicode.h (pe_bfd_copy_private_section_data): Likewise.
4707
0a7b8735
ILT
4708 * elf32-hppa.c (elf_hppa_howto_table): Fill in some fields for
4709 R_PARISC_DIR32, so that _bfd_stab_section_find_nearest_line passes
4710 its sanity check.
4711
3ebefb07
DE
4712Thu Sep 12 11:45:57 1996 Doug Evans <dje@seba.cygnus.com>
4713
4714 * reloc.c: Add m32r relocs.
4715 * bfd-in2.h, libbfd.h: Rebuilt.
6cb9c903 4716 * cpu-m32r.c,elf32-m32r.c: New files.
3ebefb07 4717
cacfb845
ILT
4718Thu Sep 12 11:10:05 1996 Ian Lance Taylor <ian@cygnus.com>
4719
4720 * ieee.c (ieee_vec): Set symbol_leading_char field to '_'.
4721
d7775b43
ILT
4722Wed Sep 11 11:57:56 1996 Ian Lance Taylor <ian@cygnus.com>
4723
e461da9b
ILT
4724 * tekhex.c (first_phase): Change type parameter from char to int.
4725 (out): Likewise.
4726 (pass_over): Change func to expect int, not char.
4727
d7775b43
ILT
4728 * elf.c (assign_file_positions_for_segments): Test SEC_ALLOC
4729 rather than SEC_LOAD when aligning the file offset for the first
4730 section in a segment.
4731
ea3f0585
FF
4732Tue Sep 10 16:18:30 1996 Fred Fish <fnf@cygnus.com>
4733
4734 * syms.c (coff_section_type): Make arg const.
4735 * irix-core.c (irix_core_core_file_p): Remove extraneous extra arg
4736 to make_bfd_asection().
4737 * elf-bfd.h (bfd_section_from_phdr): Add prototype.
4738 * elfcode.h (bfd_section_from_phdr): Remove prototype.
4739 (_bfd_elf_stringtab_init): Remove prototype.
4740
4741 * netbsd-core.c (swap_abort): Add prototype.
4742 * aix386-core.c (swap_abort): Ditto & make static
4743 * hpux-core.c (swap_abort): Ditto & make static.
4744 * irix-core.c (swap_abort): Ditto & make static.
4745 * ptrace-core.c (swap_abort): Ditto & make static.
4746 * trad-core.c (swap_abort): Ditto & make static.
4747 * coffswap.h (coff_swap_reloc_in): Ditto.
4748 (coff_swap_reloc_out): Ditto.
4749 (coff_swap_filehdr_in): Ditto.
4750 (coff_swap_filehdr_out): Ditto.
4751 (coff_swap_sym_in): Ditto.
4752 (coff_swap_sym_out): Ditto.
4753 (coff_swap_aux_in): Ditto.
4754 (coff_swap_aux_out): Ditto.
4755 (coff_swap_lineno_in): Ditto.
4756 (coff_swap_lineno_out): Ditto.
4757 (coff_swap_aouthdr_in): Ditto.
4758 (coff_swap_aouthdr_out): Ditto.
4759 (coff_swap_scnhdr_in): Ditto.
4760 (coff_swap_scnhdr_out): Ditto.
4761 * ihex.c (ihex_sizeof_headers): Ditto.
4762 * tekhex.c (getsym): Ditto.
4763 (find_chunk): Ditto & make static.
4764 (insert_byte): Ditto.
4765 (first_phase): Ditto.
4766 (pass_over): Ditto.
4767 (tekhex_get_symtab): Ditto & make static.
4768 (tekhex_get_symtab_upper_bound): Ditto & make static.
4769 (tekhex_mkobject): Ditto.
4770 (tekhex_object_p): Ditto.
4771 (move_section_contents): Ditto.
4772 (tekhex_get_section_contents): Ditto.
4773 (tekhex_set_arch_mach): Ditto & make static.
4774 (tekhex_set_section_contents): Ditto.
4775 (writevalue): Ditto.
4776 (writesym): Ditto.
4777 (out): Ditto.
4778 (tekhex_write_object_contents): Ditto.
4779 (tekhex_sizeof_headers): Ditto.
4780 (tekhex_make_empty_symbol): Ditto.
4781 (tekhex_get_symbol_info): Ditto.
4782 (tekhex_print_symbol): Ditto.
4783 * irix-core.c (make_bfd_asection): Ditto.
4784 (irix_core_core_file_p): Ditto.
4785 (irix_core_core_file_failing_command): Ditto.
4786 (irix_core_core_file_failing_signal): Ditto.
4787 (irix_core_core_file_matches_executable_p): Ditto.
4788 (irix_core_make_empty_symbol): Ditto.
4789 * coff-mips.c (mips_bfd_reloc_type_lookup): Ditto.
4790 * srec.c (srec_new_symbol): Ditto.
4791 (srec_get_section_contents): Ditto.
4792 (srec_set_arch_mach): Ditto.
4793 (srec_set_section_contents): Ditto.
4794 (internal_srec_write_object_contents): Ditto.
4795 (srec_write_object_contents): Ditto.
4796 (symbolsrec_write_object_contents): Ditto.
4797 (srec_sizeof_headers): Ditto.
4798 (srec_make_empty_symbol): Ditto.
4799 (srec_get_symtab_upper_bound): Ditto.
4800 (srec_get_symtab): Ditto.
4801 (srec_print_symbol): Ditto and make static.
4802 * elf.c (elf_read): Ditto
4803 (assign_section_numbers): Ditto.
4804 (elf_fake_sections): Ditto.
4805 (sym_is_global): Ditto.
4806 (elf_map_symbols): Ditto.
4807 (get_program_header_size): Ditto.
4808 * coffgen.c (make_a_section_from_file): Ditto.
4809 (coff_real_object_p): Ditto.
4810 (fixup_symbol_value): Ditto.
4811 (build_debug_section): Ditto.
4812 (copy_name): Ditto.
4813 * syms.c (coff_section_type): Ditto.
cf2cd4cf 4814
00d7a64b
JL
4815Mon Sep 9 22:36:01 1996 Jeffrey A Law (law@cygnus.com)
4816
4817 * bfd-in2.h: Rebuilt after m32r changes.
4818
71d7d44f
DE
4819Mon Sep 9 12:31:22 1996 Doug Evans <dje@canuck.cygnus.com>
4820
66e4c229 4821 * config.bfd,configure.in,configure: Add m32r support.
f0c12b73 4822 * Makefile.in,archures.c,elf.c,targets.c: Likewise.
71d7d44f
DE
4823 * config.bfd: Keep target list alphabetically sorted.
4824
629f776a
JL
4825Mon Sep 9 11:48:41 1996 Jeffrey A Law (law@cygnus.com)
4826
4827 * elf32-v850.c (bfd_elf32_v850_reloc, case R_V850_HI16): Don't forget
4828 to add in the constant part found in the instruction itself.
4829 (case R_V850_HI16_S): Likewise.
4830
9c85b19d
MH
4831Fri Sep 6 17:04:39 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
4832
4833 * elf32-d10v.c (elf_d10v_howto_table): Modify the size of R_D10V_16
4834 and R_D10V_18 to be 1 (word).
4835
4be2140e
ILT
4836Thu Sep 5 15:23:08 1996 Ian Lance Taylor <ian@cygnus.com>
4837
4838 * stabs.c (_bfd_link_section_stabs): If the output_section field
4839 of either section is bfd_abs_section, then the linker is
4840 discarding the section and we should not optimize it.
4841
0cd98b92
DE
4842Tue Sep 3 12:16:20 1996 Doug Evans <dje@canuck.cygnus.com>
4843
4844 * Makefile.in (aout-sparcle.o): New target.
4845 * aoutf1.h (TARGET_IS_BIG_ENDIAN_P): Don't define if little endian.
4846 * config.bfd (sparclet-*-aout*): Add case.
4847 * configure.in (sparcle_aout_vec): Add case.
4848 * configure: Regenerated.
0cd98b92
DE
4849 * targets.c (sparcle_aout_vec): Declare.
4850 (bfd_target_vector): Add sparcle_aout_vec.
4851 * aout-sparcle.c: New file.
4852
7b0af209 4853Tue Sep 3 00:57:02 1996 Jeffrey A Law (law@cygnus.com)
b5ef63c4 4854
e73b6ae6
JL
4855 * elf32-v850.c (bfd_elf32_v850_reloc): Fix handling of
4856 low order sign bit propogation for R_V850_HI16_S.
4857
4858 * elf32-v850.c (bfd_elf32_v850_reloc): New function for
7b0af209
JL
4859 handling V850 specific relocs.
4860 (elf_v850_howto_table): Use the new function for some
4861 relocations. Twiddle masks & shifts for some relocs.
4862 Set partial_inplace where needed.
4863
7b0af209
JL
4864Mon Sep 2 12:12:34 1996 Ian Lance Taylor <ian@cygnus.com>
4865
4866 * cpu-mips.c: Add an explicit mips:3000 entry, and change the
4867 default architecture to a machine number of 0.
4868 * elf32-mips.c (_bfd_mips_elf_object_p): Set the machine number
4869 for E_MIPS_ARCH_1.
4870 (_bfd_mips_elf_merge_private_bfd_data): If the machine number of
4871 the output BFD is the default, set it from the first input BFD.
4872
7b0af209
JL
4873Sun Sep 1 18:38:01 1996 Jeffrey A Law (law@cygnus.com)
4874
4875 * elf32-v850.c (elf_v850_howto_table): All the 16bit relocs
4876 insert at bitpos zero. The HI16 relocs are shifted right
4877 by 16 bits. Fix src_mask for all relocs.
4878 (TARGET_LITTLE_SYM, TARGET_LITTLE_NAME): Define. The V850 is
4879 little endian!
4880 (TARGET_BIG_SYM, TARGET_BIG_NAME): Remove. The V850 is little
4881 endian!
b5ef63c4 4882
bde9d875
ILT
4883Sun Sep 1 15:41:08 1996 Ian Lance Taylor <ian@cygnus.com>
4884
4885 * rs6000-core.c (rs6000coff_core_file_matches_executable_p):
4886 Rewrite to use BFD file read routines and to avoid using a fixed
4887 length for the file name.
4888
237b5c4c
JL
4889Sat Aug 31 10:22:25 1996 Jeffrey A Law (law@cygnus.com)
4890
4891 * elf32-v850.c (enum reloc_type): Add R_V850_{32,16,8}.
4892 (elf_v850_howto_table): Add support for R_V850_{32,16,8}.
4893 (v850_reloc_map): Add translation from BFD_RELOC_{32,16,8}
4894 to R_V850_{32,16,8}.
4895
01b49cb3
C
4896Fri Aug 30 18:06:04 1996 J.T. Conklin <jtc@hippo.cygnus.com>
4897
4898 * elf32-v850.c (reloc_type): Add R_V850_HI16_S.
4899 (elf_v850_howto_table): Add info for HI16_S reloc.
4900 (v850_reloc_map): Add HI_16_S reloc.
4901 * reloc.c: Define BFD_RELOC_V850_* relocs.
4902
492cfc71
ILT
4903Fri Aug 30 11:49:19 1996 Ian Lance Taylor <ian@cygnus.com>
4904
c86158e5
ILT
4905 Add SH ELF support.
4906 * elf32-sh.c: New file.
4907 * elf.c (prep_headers): Handle bfd_arch_sh.
4908 * elfcode.h (write_relocs): Handle absolute symbol.
4909 * elf-bfd.h (_bfd_elf32_link_read_relocs): Declare.
4910 (_bfd_elf64_link_read_relocs): Declare.
4911 * elflink.h (NAME(_bfd_elf,link_read_relocs)): Rename from
4912 elf_link_read_relocs. Make globally visible. Change all
4913 callers.
4914 (elf_link_input_bfd): Get external symbols from cache in
4915 symtab_hdr->contents. Get contents from cache in
4916 elf_section_data.
4917 * elfxx-target.h (bfD_elfNN_bfd_relax_section): Only define if not
4918 already defined.
4919 * reloc.c: Define BFD_RELOC_SH_* relocs.
4920 * libbfd-in.h (_bfd_sh_align_load_span): Declare.
4921 * coff-sh.c (sh_insns_conflict): Fix a return value.
4922 (_bfd_sh_align_load_span): New globally visible function, broken
4923 out of sh_align_load.
4924 (sh_align_load): Call _bfd_sh_align_load_span.
4925 (sh_swap_insns): Change relocs parameter to PTR.
4926 * bfd-in2.h, libbfd.h: Rebuild.
4927 * targets.c (bfd_elf32_sh_vec): Declare.
4928 (bfd_elf32_shl_vec): Declare.
4929 * config.bfd (sh-*-elf*): New target.
4930 * configure.in (bfd_elf32_sh_vec): New target vector.
4931 (bfd_elf32_shl_vec): New target vector.
4932 * configure: Rebuild.
4933 * Makefile.in: Rebuild dependencies.
4934 (BFD32_BACKENDS): Add elf32-sh.o.
4935 (BFD32_BACKENDS_CFILES): Add elf32-sh.c.
4936
4937 * elf.c (map_sections_to_segments): Check that LMA does not skip a
4938 page before checking D_PAGED.
4939
492cfc71
ILT
4940 * ihex.c (ihex_scan): Removed unnecessary extbase variable.
4941 (ihex_write_object_contents): Remove extbase; always use segbase
4942 instead.
4943
f7954d86
MM
4944Thu Aug 29 16:52:17 1996 Michael Meissner <meissner@tiktok.cygnus.com>
4945
4946 * configure.in (i[345]86-*-*): Recognize i686 for pentium pro.
4947 * configure.host (i[345]86-*-*): Ditto.
4948 * config.bfd (i[345]86-*-*): Ditto.
4949 * configure: Regenerate.
4950
4951 * config.bfd (i[3456]86-*-dgux*): Recognize as a synonym for x86
4952 elf.
4953
4954Tue Aug 27 09:18:18 1996 Jeffrey A Law (law@cygnus.com)
4955
4956 * elf32-hppa.c (hppa_elf_gen_reloc_type): Add new argument.
4957 * elf32-hppa.h (hppa_elf_gen_reloc_type): Update prototype.
4958 * som.c (hppa_som_gen_reloc_type): Add new argument. If
4959 we encounter an R_DATA_ONE_SYMBOL reloc against a symbol that
4960 will have an ST_CODE type, change the symbol's type to ST_DATA.
4961 * som.c (hppa_som_gen_reloc_type): Update prototype.
4962
4da624dd
ILT
4963Tue Aug 27 00:12:22 1996 Ian Lance Taylor <ian@cygnus.com>
4964
4965 * elf32-mips.c (mips_elf_check_relocs): Set dynobj if needed for
4966 R_MIPS_32 and R_MIPS_REL32. Set sgot and g as soon as possible.
4967 (mips_elf_size_dynamic_sections): Don't require .got to exist.
4968 (mips_elf_finish_dynamic_sections): Likewise.
4969
9461513b
ILT
4970Thu Aug 22 10:54:38 1996 Ian Lance Taylor <ian@cygnus.com>
4971
1c952df6
ILT
4972 * configure.host (HLDENV): New variable to set. Set it for
4973 *-*-sysv4*, since those linkers may not support -R but they always
4974 support LD_RUN_PATH.
4975
9461513b
ILT
4976 * libieee.h (NSECTIONS): Don't define.
4977 (ieee_data_struct): Change section_table to asection **. Add
4978 section_table_size.
4979 * ieee.c (get_section_entry): If the table isn't big enough, make
4980 it bigger.
4981 (ieee_slurp_sections): Remove assertion about number of sections.
4982 (ieee_object_p): Adjust initialization of ieee to match changes to
4983 the structure.
4984
4985 * xcofflink.c (xcoff_mark): Don't copy relocs for undefined
4986 symbols merely because we are generating a shared library.
4987 (xcoff_build_ldsyms): Don't set up global linkage code for an
4988 undefined symbol merely because we are generating a shared
4989 library.
4990
0c1d95c7 4991Tue Aug 20 15:06:05 1996 J.T. Conklin <jtc@hippo.cygnus.com>
cf2cd4cf 4992
0c1d95c7
C
4993 * Makefile.in (ALL_MACHINES): Add cpu-v850.o.
4994 (BFD32_BACKENDS) Add elf32-v850.o.
4995 * archures.c: Add bfd_v850_arch.
4996 * bfd-in2.h: Add bfd_v850_arch.
4997 * config.bfd (v850-*-*): New target.
4998 * configure: (bfd_elf32_v850_vec) New vector.
4999 * configure.in: (bfd_elf32_v850_vec) New vector.
5000 * cpu-v850.c: New file.
5001 * elf.c (prep_headers): Added case bfd_arch_v850.
5002 * elf32-v850.c: New file.
5003 * targets.c (bfd_elf32_v850_vec): New vector.
cf2cd4cf 5004
0c1d95c7
C
5005Fri Aug 16 16:25:35 1996 Ian Lance Taylor <ian@cygnus.com>
5006
5007 * xcofflink.c (xcoff_link_add_dynamic_symbols): Create and define
5008 a function code symbol for an XMC_XO symbol.
5009
22edd547
SS
5010Thu Aug 15 12:33:29 1996 Stan Shebs <shebs@andros.cygnus.com>
5011
5012 * mpw-config.in: Update editing of autoconf vars to reflect
5013 Jul 18 configure.in change.
5014 * mpw-make.sed: Update editing of include pathnames to be
5015 more general, add @DASH_C_FLAG@ to explicit compile rule edit.
5016
5017Thu Aug 15 10:35:13 1996 Richard Henderson <rth@tamu.edu>
5018
5019 * elf64-alpha.c (elf64_alpha_output_extsym): The section from
5020 which to offset to get the .plt entry address is ".plt".
5021
53ef6e60
JSC
5022Thu Aug 15 16:40:30 1996 James G. Smith <jsmith@cygnus.co.uk>
5023
5024 * reloc.c: (BFD_RELOC_ARM_THUMB_ADD, BFD_RELOC_ARM_THUMB_IMM,
5025 BFD_RELOC_ARM_THUMB_SHIFT, BFD_RELOC_ARM_THUMB_OFFSET):
5026 Added, for internal use by the ARM gas.
5027 * libbfd.h: Rebuilt
5028 * bfd-in2.h: Rebuilt
5029
37d7888d
ILT
5030Wed Aug 14 17:02:09 1996 Richard Henderson <rth@tamu.edu>
5031
5032 * elf64-alpha.c (elf64_alpha_size_dynamic_sections): Correct typo
5033 in section dynidx start.
5034
e38d6d36
ILT
5035Tue Aug 13 14:35:38 1996 Ian Lance Taylor <ian@cygnus.com>
5036
5037 * elf.c (_bfd_elf_make_section_from_shdr): Treat sections whose
5038 name begins with .gnu.linkonce as SEC_LINK_ONCE. This is an
5039 optimization for g++.
5040
ae20860e
MM
5041Tue Aug 13 17:04:40 1996 Michael Meissner <meissner@tiktok.cygnus.com>
5042
5043 * elf32-ppc.c (ppc_elf_merge_private_bfd_data): If one module has
5044 the -mrelocatable-lib bit set and the other doesn't, clear the
5045 -mrelocatable-lib bit in the header.
5046
4596421b
ILT
5047Sat Aug 10 22:59:17 1996 Ian Lance Taylor <ian@cygnus.com>
5048
5049 * elflink.h (elf_link_add_object_symbols): Do not resolve a common
5050 symbol against a STT_FUNC symbol in a shared library.
5051
f11e3f62
ILT
5052Fri Aug 9 12:44:57 1996 Ian Lance Taylor <ian@cygnus.com>
5053
410bc61d
ILT
5054 * xcofflink.c (xcoff_link_add_dynamic_symbols): If a descriptor
5055 symbol is found, automatically define the corresponding function
5056 code.
5057
d92099f1
ILT
5058 * cofflink.c (coff_link_add_symbols): Only set (*sym_hash)->numaux
5059 if sym.n_numaux is not zero.
5060 (_bfd_coff_link_input_bfd): Permit the symbol and the hash table
5061 entry to disagree about the number of aux entries if the symbol
5062 has zero.
5063
f11e3f62
ILT
5064 * elf32-mips.c (mips_elf_check_relocs): Create the .rel.dyn
5065 section if it might be needed, not just if info->shared.
5066 (mips_elf_adjust_dynamic_symbol): Make room for a null element at
5067 the start of .rel.dyn if we are going to use it.
5068 (mips_elf_finish_dynamic_sections): Only clear the first element
5069 of .rel.dyn if the size is greater than zero.
5070
fbc4ed7d
ILT
5071Thu Aug 8 16:24:55 1996 Ian Lance Taylor <ian@cygnus.com>
5072
b2a05baf
ILT
5073 * xcofflink.c (xcoff_link_input_bfd): If we already called the
5074 undefined_symbol callback for a symbol, then don't issue any more
5075 warnings about loader relocs.
5076 (_bfd_ppc_xcoff_relocate_section): Don't do any further processing
5077 after calling the undefined_symbol callback.
5078
fbc4ed7d
ILT
5079 * xcofflink.c (XCOFF_MULTIPLY_DEFINED): Define.
5080 (xcoff_link_add_symbols): Permit multiple definitions of a symbol
5081 as the AIX linker seems to do.
5082
8612a388
ILT
5083Thu Aug 8 12:21:56 1996 Klaus Kaempf <kkaempf@progis.de>
5084
5085 * evax-alpha.c (evax_alpha_vec): Corrected flags, cleanup.
5086 (evax_initialize): Remove evax_reloc_table.
5087 (evax_close_and_cleanup): Ditto.
5088 (reloc_nil): Ditto.
5089 (alpha_howto_table): Remove ALPHA_R_SWREL32 and ALPHA_R_SWREL64
5090 entries.
5091 (evax_bfd_reloc_type_lookup): Ditto.
5092 * evax-egsd.c (_bfd_evax_slurp_egsd): Add a few casts; set
5093 cooked_size == raw_size.
5094 * evax-emh.c (_bfd_evax_register_filename): Remove.
5095 * evax-etir.c (etir_stc): Allow ETIR_S_C_STC_xx commands.
5096 * evax-misc.c (add_new_contents): Malloc section at full size.
5097 (_bfd_save_evax_section): Memcpy section contents directly.
5098 * evax.h (ALPHA_R_SWREL32, ALPHA_R_SWREL64): Remove.
5099 (evax_reloc_table): Remove.
5100
5101 * hosts/alphavms.h (O_ACCMODE): Define if needed.
5102
5103 * makefile.vms: Add better support for DEC C compilation
5104 Add evax.h dependencies
5105
5106 * reloc.c (bfd_get_reloc_size): Add case for 16 byte reloc.
5107 (BFD_RELOC_SWREL32,BFD_RELOC_SWREL64): Remove.
5108 (BFD_RELOC_ALPHA_BASEREG): Remove.
5109 * bfd-in2.h, libbfd.h: Rebuild.
5110
320a5c6b
SG
5111Thu Aug 8 08:17:32 1996 Stu Grossman (grossman@critters.cygnus.com)
5112
5113 * archive.c (bsd_write_armap): Ifdef around calls to getuid and
5114 getgid if _WIN32 is defined.
5115 * opncls.c (bfd_fdopenr): Remove unnecessary WINGDB ifdef.
5116
2055bf85
SG
5117Wed Aug 7 23:19:00 1996 Stu Grossman (grossman@critters.cygnus.com)
5118
5119 * aoutx.h bfd-in.h bfd-in2.h opncls.c riscix.c som.c targets.c:
5120 Change NO_FLAGS to BFD_NO_FLAGS to avoid conflict with an HPUX
5121 include file.
5122 * libbfd.c: Create dummy getpagesize() macro if HAVE_GETPAGESIZE
5123 isn't defined.
5124
85fe9d3e
ILT
5125Wed Aug 7 14:11:44 1996 Philippe De Muyter <phdm@info.ucl.ac.be>
5126
5127 * configure.in: Call BFD_NEEDED_DECLARATION on strstr and
5128 realloc.
5129 * acconfig.h (NEED_DECLARATION_STRSTR): New macro.
5130 (NEED_DECLARATION_REALLOC): New macro.
5131 * configure, config.in: Rebuild.
5132 * sysdep.h (strstr): Declare if NEED_DECLARATION_STRSTR.
5133 (realloc): Declare if NEED_DECLARATION_REALLOC.
5134
5135 * aclocal.m4 (BFD_NEED_DECLARATION): Include <string.h> or
5136 <strings.h> if they exist.
5137
5138 * ieee.c (ieee_set_section_contents): Cast bfd_alloc return.
5139
9b3307b0
ILT
5140Wed Aug 7 12:12:03 1996 Ian Lance Taylor <ian@cygnus.com>
5141
cc425b55
ILT
5142 * cpu-i386.c (i8086_arch): Architecture info for the i8086.
5143
9b3307b0
ILT
5144 Based on patches from Eric Valette <valette@crf.canon.fr>:
5145 * elf32-i386.c (enum reloc_type): Add FIRST_INVALID_RELOC,
5146 LAST_INVALID_RELOC, R_386_16, R_386_PC16, R_386_8, R_386_PC8.
5147 (elf_howto_table): Add entries for new relocs.
5148 (elf_i386_reloc_type_lookup): Handle new relocs.
5149 (elf_i386_info_to_howto): Just call abort.
5150 (elf_i386_info_to_howto_rel): Check that the reloc type is valid.
5151 (elf_i386_relocate_section): Likewise.
5152
75e3a45a
MH
5153Tue Aug 6 12:54:56 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
5154
5155 * elf32-d10v.c (elf_d10v_howto_table): Added R_D10V_32.
5156
191d910c
ILT
5157Mon Aug 5 13:42:41 1996 Ian Lance Taylor <ian@cygnus.com>
5158
b944e7e8
ILT
5159 * elf.c (_bfd_elf_make_section_from_shdr): For a loadable section,
5160 only get the LMA from the phdr if they are in the same part of the
5161 file.
5162
191d910c
ILT
5163 * elf.c (map_sections_to_segments): Rewrite tests for starting a
5164 new segment to make them more comprehensible. If the relationship
5165 between the LMA and the VMA changed, start a new segment. Don't
5166 check dynsec when deciding whether to start a new segment for a
5167 writeable section; -N will now handle this.
5168
e751d506
JL
5169Thu Aug 1 22:43:08 1996 Jeffrey A Law (law@cygnus.com)
5170
5171 * libhppa.h: Remove "esel" changes. Not the right approach.
5172 * som.c: Corresponding changes.
5173 (som_bfd_derive_misc_symbol_info): Use ST_DATA for symbols
5174 which don't have a SOM symbol type associated with them.
5175 Reverses a 1994 change.
5176
cdb88e87
ILT
5177Wed Jul 31 15:50:55 1996 Ian Lance Taylor <ian@cygnus.com>
5178
5179 Make ld -N more reasonable for ELF:
5180 * elf.c (map_sections_to_segments): If D_PAGED is not set, set
5181 phdr_in_section to false, and always use a single load segment.
5182 (elf_sort_sections): Sort sections by LMA after VMA.
5183 (assign_file_positions_for_segments): If D_PAGED is not set, don't
5184 align to maxpagesize.
5185 (assign_file_positions_except_relocs): Likewise.
5186 * elfcode.h (elf_object_p): If a section is loaded but not page
5187 aligned, clear D_PAGED.
5188
d1b40d8e
JSC
5189Wed Jul 31 15:00:12 1996 James G. Smith <jsmith@cygnus.co.uk>
5190
5191 * reloc.c: (BFD_RELOC_ARM_OFFSETIMM8, BFD_RELOC_ARM_HWLITERAL):
5192 Added, for internal use by the ARM gas.
5193 * libbfd.h: Rebuilt
5194 * bfd-in2.h: Rebuilt
5195
ad240a82
JL
5196Tue Jul 30 14:14:57 1996 Jeffrey A Law (law@cygnus.com)
5197
5198 * libhppa.h (R_HPPA_ESEL): New field selector.
5199 (e_esel): Similarly.
5200 * som.c (hppa_som_gen_reloc_type): If we encounter an e_esel,
5201 then generate R_COMP2 (PUSH_SYM), R_DATA_EXPR fixup stream.
5202 (som_write_fixups): Handle R_DATA_EXPR just like R_CODE_EXPR.
5203
fb4dc1eb
ILT
5204Tue Jul 30 13:31:27 1996 Ian Lance Taylor <ian@cygnus.com>
5205
5206 * xcofflink.c (_bfd_xcoff_bfd_link_add_symbols): Do the regular
5207 archive search before looking for stripped dynamic objects.
5208
b223f950
ILT
5209Fri Jul 26 17:51:39 1996 Ian Lance Taylor <ian@cygnus.com>
5210
5211 * xcofflink.c (xcoff_build_ldsyms): Make exporting an undefined
5212 symbol a warning rather than an error.
5213
64f808f9
ILT
5214Wed Jul 24 12:02:53 1996 Ian Lance Taylor <ian@cygnus.com>
5215
5216 * elf.c (assign_file_positions_for_segments): Track the virtual
5217 memory position separately from the file position, and use it to
5218 compute the alignment adjustment.
5219
11609502
MH
5220Tue Jul 23 10:43:31 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
5221
5222 * elf32-d10v.c (elf_d10v_howto_table): Changed all relocs to "long"
5223 and fixed mask on R_D10V_10_PCREL_L.
5224
9bd65136
ILT
5225Mon Jul 22 15:30:30 1996 Ian Lance Taylor <ian@cygnus.com>
5226
bf9884d4
ILT
5227 * elf64-mips.c: Include "aout/ar.h".
5228 (mips_elf64_slurp_armap): New static function.
5229 (mips_elf64_write_armap): New static function.
5230 (bfd_elf64_archive_*): Define.
5231 * elfxx-target.h (bfd_elfNN_archive_p): Define if not defined.
5232 Use instead of bfd_generic_archive_p.
5233 (bfd_elfNN_write_archive_contents): Define if not defined. Use
5234 instead of _bfd_write_archive_contents.
5235 (bfd_elfNN_mkdarchive): Define if not defined. Use instead of
5236 _bfd_generic_mkarchive.
5237 (TARGET_BIG_SYM): If bfd_elfNN_archive_functions is defined, use
5238 bfd_elfNN_archive in BFD_JUMP_TABLE_ARCHIVE rather than
5239 _bfd_archive_coff.
5240 (TARGET_LITTLE_SYM): Likewise.
5241 * archive.c (bfd_slurp_armap): Check for and reject an archive map
5242 name of /SYM64/.
5243 * Makefile.in: Rebuild dependencies.
5244
5245 * elf32-mips.c (_bfd_mips_elf_final_write_processing): Handle
5246 SHT_MIPS_LIBLIST, SHT_MIPS_CONTENT, SHT_MIPS_SYMBOL_LIB, and
5247 SHT_MIPS_EVENTS sections.
5248 (_bfd_mips_elf_section_from_shdr): Handle SHT_MIPS_IFACE,
5249 SHT_MIPS_CONTENT, SHT_MIPS_SYMBOL_LIB, and SHT_MIPS_EVENTS
5250 sections.
5251 (_bfd_mips_elf_fake_sections): Likewise.
5252
9bd65136
ILT
5253 * libecoff.h (ecoff_data_type): Add rdata_in_text field.
5254 * ecoff.c (ecoff_compute_section_file_positions): Copy
5255 rdata_in_text from backend info to tdata. Clear it if any data
5256 section comes before .rdata.
5257 (_bfd_ecoff_write_object_contents): Use rdata_in_text field in
5258 tdata rather than backend info.
5259
194141a9
ILT
5260Fri Jul 19 18:15:51 1996 Ian Lance Taylor <ian@cygnus.com>
5261
5262 * configure.in: Fix test for whether a compiler has a 64 bit
5263 type. From Jim Wilson <wilson@cygnus.com>.
5264
a8a3d83a
ILT
5265Thu Jul 18 15:39:10 1996 Ian Lance Taylor <ian@cygnus.com>
5266
f4e14cb9
ILT
5267 * configure.host (mips-sgi-irix6*): New host.
5268
5269 * configure.in: Set and substitute VERSION, BFD_HOST_64BIT_LONG
5270 (replacing HOST_64BITLONG), BFD_HOST_64_BIT_DEFINED,
5271 BFD_HOST_64_BIT, and BFD_HOST_U_64_BIT. Add bfd-in2.h:bfd-in2.h
5272 to AC_OUTPUT call.
5273 * configure: Rebuild.
5274 * bfd-in.h (BFD_ARCH_SIZE): Define as @wordsize@, not @WORDSIZE@.
5275 (BFD_HOST_64_BIT): Define conditionally.
5276 (BFD_HOST_U_64_BIT): Define when BFD_HOST_64_BIT is defined.
5277 (bfd_vma): Typedef as BFD_HOST_U_64_BIT.
5278 (symvalue, bfd_size_type): Likewise.
5279 * bfd-in2.h: Rebuild.
5280 * Makefile.in (do_clean): Remove bfd-tmp.h.
5281 (do_distclean): Remove bfd-in3.h.
5282 (stmp-bfd.h): Just do copy-if-change bfd-in3.h bfd.h.
5283 (bfd-in3.h): New target.
5284
74556b94
ILT
5285 * config.bfd (sparc-*-sysv4*): Don't build sunos_big_vec. From
5286 Andrew Gierth <ANDREWG@microlise.co.uk>.
5287
ab659fd6
ILT
5288 * configure.host: Set INSTALL_SHLIB.
5289 * configure.in: Call AC_SUBST (INSTALL_SHLIB).
5290 * configure: Rebuild.
5291 * Makefile.in (install): Use @INSTALL_SHLIB@.
5292
e8c249cb
ILT
5293 * config.bfd (mips*-*-irix6*): New target.
5294 * configure.host: Handle Irix 6 shared library like Irix 5.
5295
a8a3d83a
ILT
5296 * xcofflink.c (xcoff_link_add_symbols): Don't check an XMC_TD
5297 symbol for a magic name.
5298 (xcoff_link_input_bfd): Don't change the reloc symbol for an
5299 XMC_TD symbol.
5300 (_bfd_ppc_xcoff_relocate_section): Don't get the TOC offset for an
5301 XMC_TD symbol.
5302
b576c7b3
SS
5303Thu Jul 18 11:36:31 1996 Stan Shebs <shebs@andros.cygnus.com>
5304
5305 * mpw-config.in: Add ELF support to mips config, create the
5306 elf32-target.h file in the object dir.
5307 * mpw-make.sed: Edit elfXX-target.h refs at beginnings of lines.
5308
2ba0d82d
KK
5309Wed Jul 17 18:02:32 1996 Kim Knuttila <krk@cygnus.com>
5310
5311 * coff-ppc.c: Redid debug scheme - numerous fprintf's gone.
5312 Also removed most abort calls, in favor of using bfd reporting.
5313
b576c7b3 5314Wed Jul 17 14:51:52 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
50bd50d4 5315
b576c7b3
SS
5316 * Makefile.in (ALL_MACHINES): Add cpu-d10v.o.
5317 (BFD32_BACKENDS) Add elf32-d10v.o.
50bd50d4
MH
5318 * archures.c: Add bfd_d10v_arch.
5319 * bfd-in2.h: Add bfd_d10v_arch.
5320 * config.bfd (d10v-*-*): New target.
5321 * configure: (bfd_elf32_d10v_vec) New vector.
5322 * configure.in: (bfd_elf32_d10v_vec) New vector.
5323 * cpu-d10v.c: New file.
5324 * elf.c (prep_headers): Added case bfd_arch_d10v.
5325 * elf32-d10v.c: New file.
5326 * libbfd.h: Rebuild.
b576c7b3
SS
5327 * reloc.c (BFD_RELOC_D10V_10_PCREL_R, BFD_RELOC_D10V_10_PCREL_L,
5328 BFD_RELOC_D10V_18, BFD_RELOC_D10V_18_PCREL): Define.
50bd50d4 5329 * targets.c (bfd_elf32_d10v_vec): New vector.
cf2cd4cf 5330
2ce9802e
KK
5331Wed Jul 17 10:58:55 1996 Kim Knuttila <krk@cygnus.com>
5332
5333 * coff-ppc.c (coff_ppc_relocate_section): Removed bogus fprintf
5334
9676e446 5335Tue Jul 16 23:49:02 1996 Stu Grossman (grossman@critters.cygnus.com)
3cc21bf6 5336
9676e446
SG
5337 * archures.c bfd-in2.h: Add bfd_mach_i386_i386 and
5338 bfd_mach_i386_i8086 machine types.
3cc21bf6 5339
f7171978
ILT
5340Wed Jul 10 12:42:56 1996 Ian Lance Taylor <ian@cygnus.com>
5341
5342 * ecoff.c (_bfd_ecoff_new_section_hook): Set SEC_CODE for _INIT
5343 and _FINI sections.
5344
74e2ab38
ILT
5345Wed Jul 10 11:18:21 1996 Richard Henderson <rth@tamu.edu>
5346
5347 * coffcode.h (coff_set_section_contents): A/UX does not require
5348 special handling of the _LIB section.
5349
01cfaa6b
JL
5350Tue Jul 9 15:52:20 1996 Jeffrey A Law (law@cygnus.com)
5351
5352 * coff-h8300.c (h8300_reloc16_extra_cases): Use the correct
5353 value for R_RELBYTE.
5354
5355 * reloc16.c (bfd_coff_reloc16_relax_section): Only "shrinks"
5356 array if one was allocated.
5357
eb52b9dc
ILT
5358Tue Jul 9 12:21:54 1996 Ian Lance Taylor <ian@cygnus.com>
5359
5360 From Kazumoto Kojima <kkojima@kk.info.kanagawa-u.ac.jp>:
5361 * elf32-mips.c (struct mips_elf_link_hash_table): Add new fields
5362 use_rld_obj_head and rld_value.
5363 (mips_elf_link_hash_table_create): Initialize new fields.
5364 (mips_elf_add_symbol_hook): Mark __rld_obj_head symbol as
5365 dynamic.
5366 (mips_elf_create_dynamic_sections): Create .rld_map section. If
5367 __rld_obj_head symbol not seen, create an __rld_map symbol.
5368 (mips_elf_size_dynamic_sections): Make space in .rld_map section.
5369 Create a DT_MIPS_RLD_MAP entry rather than a DT_DEBUG entry.
5370 (mips_elf_finish_dynamic_symbol): Save value of __rld_map or
5371 __rld_obj_head symbol.
5372 (mips_elf_finish_dynamic_sections): Handle DT_MIPS_RLD_MAP.
5373
56b4cbaa
ILT
5374Mon Jul 8 16:18:03 1996 Ian Lance Taylor <ian@cygnus.com>
5375
9b292d4c
ILT
5376 * elf32-mips.c (mips_reloc_map): Remove BFD_RELOC_32_PCREL entry.
5377
dab45734
ILT
5378 * elf32-ppc.c (ppc_elf_howto_raw): For R_PPC_ADDR16_HA, use
5379 ppc_elf_addr16_ha_reloc.
5380 (ppc_elf_addr16_ha_reloc): New static function.
5381
56b4cbaa
ILT
5382 * coff-mips.c (struct mips_hi): Define.
5383 (mips_refhi_list): New static variable.
5384 (mips_refhi_addr, mips_refhi_addend): Remove.
5385 (mips_refhi_reloc): Maintain a list of unmatched REFHI relocs.
5386 (mips_reflo_reloc): Process mips_refhi_list.
5387 (mips_relhi_list): New static variable.
5388 (mips_relhi_addr, mips_relhi_addend): Remove.
5389 (mips_relhi_reloc): Maintain a list of unmatched RELHI relocs.
5390 (mips_rello_reloc): Process mips_relhi_list.
5391 (mips_relocate_section): Permit an arbitrary number of REFHI or
5392 RELHI relocs before the associated REFLO or RELLO reloc.
5393
b777c6a7
ILT
5394Fri Jul 5 19:27:49 1996 Ian Lance Taylor <ian@cygnus.com>
5395
5396 * aout-target.h (MY(callback)): Set reloc_count fields.
5397
100b65dd
ILT
5398Thu Jul 4 12:00:37 1996 Ian Lance Taylor <ian@cygnus.com>
5399
48f3aaf3
ILT
5400 * sunos.c (sunos_add_dynamic_symbols): Don't create dynamic
5401 sections unless this is a SunOS link.
5402
100b65dd
ILT
5403 * VERSION: Set to 2.7.1.
5404
5405 * Released binutils 2.7.
5406
a31e14f4
ILT
5407Wed Jul 3 14:59:47 1996 Ian Lance Taylor <ian@cygnus.com>
5408
4d3daf4f
ILT
5409 * i386aout.c: Include "aout/aout64.h".
5410 (i386aout_write_object_contents): New static function.
5411 (MY_write_object_contents): Define.
5412
a31e14f4
ILT
5413 * netbsd.h (MY(write_object_contents)): Make sure that
5414 adjust_sizes_and_vmas is called before fiddling with the magic
5415 number.
5416
d2d04f7a
ILT
5417Tue Jul 2 23:30:39 1996 Ian Lance Taylor <ian@cygnus.com>
5418
5419 * stabs.c (_bfd_link_section_stabs): Fix casts of psinfo.
5420
4f6ee760
ILT
5421Sun Jun 30 13:34:33 1996 Ian Lance Taylor <ian@cygnus.com>
5422
5423 * libbfd-in.h (itos, stoi): Don't define.
5424 * libbfd.h: Rebuild.
5425 * i386lynx.c (KEEPIT): Define as udata.i.
5426 (NAME(lynx,swap_std_reloc_out)): Don't use stoi.
5427 (NAME(lynx,swap_ext_reloc_out)): Likewise.
5428 * riscix.c (riscix_swap_std_reloc_out): Use udata.i rather than
5429 flags. Don't use stoi.
5430
5431 * elf32-mips.c (ELF_MAGPAGESIZE): Change definition to 0x1000.
5432
5433 * elf.c (map_sections_to_segments): Don't start a new segment for
5434 a writable section if it's on the same page as the previous
5435 segment. Reset the writable variable for a readonly section.
5436
dfb89b82
KK
5437Sat Jun 29 16:18:51 1996 Kim Knuttila <krk@cygnus.com>
5438
5439 * peicode.h (coff_swap_aouthdr_in): Missing initializations of
5440 first_thunk_address, thunk_size, and import_table_size.
5441 * peicode.h: Improved some diagnostics regarding edata sections.
5442
5443 * coff-ppc.c (coff_ppc_relocate_section): Earlier error check
5444 on IMGLUE relocs.
5445 (coff_ppc_relocate_section): Improved diagnostic for large TOCDEFN's.
5446 (TARGET_LITTLE_SYM): Added missing D_PAGED.
5447
8e80606f
ILT
5448Fri Jun 28 13:48:45 1996 Ian Lance Taylor <ian@cygnus.com>
5449
f93fb275
ILT
5450 * xcofflink.c (xcoff_link_check_ar_symbols): An undefined symbol
5451 with XCOFF_DEF_DYNAMIC set is really defined.
5452 (xcoff_link_check_dynamic_ar_symbols): Likewise.
5453 (xcoff_link_add_symbols): Only create special sections if using an
5454 XCOFF hash table.
5455
8e80606f
ILT
5456 * reloc.c (bfd_perform_relocation): Handle xcoff-powermac like
5457 aixcoff-rs6000.
5458 (bfd_install_relocation): Likewise.
5459
eec2f824
ILT
5460Fri Jun 28 11:17:00 1996 Richard Henderson <rth@tamu.edu>
5461
5462 * elf64-alpha.c (struct alpha_elf_link_hash_entry): Add flags
5463 field.
5464 (ALPHA_ELF_LINK_HASH_LU_ADDR): Define.
5465 (ALPHA_ELF_LINK_HASH_LU_MEM): Define.
5466 (ALPHA_ELF_LINK_HASH_LU_FUNC): Define.
5467 (elf64_alpha_link_hash_newfunc): Initialize flags field.
5468 (elf64_alpha_check_relocs): Record types of LITUSE entries that
5469 are found for LITERAL relocs.
5470 (elf64_alpha_adjust_dynamic_symbol): If a symbol has its address
5471 taken, we cannot generate a .plt entry for the symbol.
5472
5304aea9
ILT
5473Thu Jun 27 11:24:29 1996 Ian Lance Taylor <ian@cygnus.com>
5474
5475 * configure.in: Add AC_ISC_POSIX, and check for setitimer and
5476 sysconf functions (for gprof).
5477 * configure, config.in: Rebuild.
5478
017047d4
ILT
5479Wed Jun 26 16:29:02 1996 Ian Lance Taylor <ian@cygnus.com>
5480
f292bbe9
ILT
5481 * ecoff.c (_bfd_ecoff_archive_p): Check the first object file in
5482 an archive if it has a map. If the object file has the wrong
5483 xvec, reject it.
5484
566e2325
ILT
5485 * coff-alpha.c (alpha_adjust_reloc_in): Set the addend for a
5486 BRADDR, SREL16, SREL32, or SREL64 reloc against an external
5487 symbol.
5488 (alpha_relocate_section): Likewise.
5489
017047d4
ILT
5490 * coffswap.h (coff_swap_reloc_out): Use RELSZ, not sizeof.
5491 (coff_swap_filehdr_out): Use FILHSZ, not sizeof.
5492 (coff_swap_sym_out): Use SYMESZ, not sizeof.
5493 (coff_swap_aux_out): Use AUXESZ, not sizeof.
5494 (coff_swap_lineno_out): Use LINESZ, not sizeof.
5495 (coff_swap_aouthdr_out): Use AOUTSZ, not sizeof.
5496 (coff_swap_scnhdr_out): Use SCNHSZ, not sizeof.
5497 * peicode.h: Corresponding changes.
5498
cb73f5d7
MM
5499Tue Jun 25 15:28:34 1996 Michael Meissner <meissner@tiktok.cygnus.com>
5500
5501 * elflink.h (elf_create_pointer_linker_section): Comment out code
5502 dealing with making GOT pointers negative of the GOT symbol for
5503 now.
5504
297a4f1a
ILT
5505Tue Jun 25 11:41:24 1996 Richard Henderson <rth@tamu.edu>
5506
5507 * elf64-alpha.c (elf64_alpha_adjust_dynamic_symbol): Don't
5508 increment the .rela.plt size until after we're done creating the
5509 .plt entry.
5510 (elf64_alpha_finish_dynamic_symbol): Change .plt entry to load the
5511 .rela.plt offset directly rather than calculating it.
5512
dbbfec07 5513Mon Jun 24 17:15:10 1996 Jason Molenda (crash@godzilla.cygnus.co.jp)
cf2cd4cf
UD
5514
5515 * Makefile.in, (bindir, libdir, datadir, mandir, infodir, includedir):
01e58ff6 5516 Use autoconf-set values.
cf2cd4cf
UD
5517 * doc/Makefile.in (bindir, libdir, datadir, mandir, infodir,
5518 includedir, INSTALL, INSTALL_PROGRAM, INSTALL_DATA): Use autoconf-set
01e58ff6 5519 values.
dbbfec07
JM
5520 (docdir): Deleted.
5521 * configure.in (AC_PREREQ): autoconf v2.5 or higher.
5522 * configure: Rebuilt.
cf2cd4cf 5523
50004d8d
JL
5524Mon Jun 24 22:50:35 1996 Jeffrey A Law (law@cygnus.com)
5525
5526 * som.c (som_write_fixups): Fix typo in R_END_TRY for exception
5527 handling code > 1k away.
5528
5529Mon Jun 24 18:41:06 1996 Michael Meissner <meissner@tiktok.cygnus.com>
5530
5531 * elflink.h (elf_create_pointer_linker_section): If DEBUG is
5532 defined, output whenever the symbol is updated.
5533
2e0567eb
ILT
5534Mon Jun 24 17:58:12 1996 Jouke Numan <jnuman@bazis.nl>
5535
5536 * elf.c (elf_fake_sections): Don't set sh_addr of a non SEC_ALLOC
5537 section to 0 if user_set_vma is set.
5538 * elflink.h (elf_bfd_final_link): Likewise.
5539
5540Sun Jun 23 20:42:51 1996 Doug Evans <dje@canuck.cygnus.com>
5541
5542 Partially undo patch of Jun 20.
5543 * coffcode.h (coff_set_alignment_hook): Use COFF_IMAGE_WITH_PE.
5544 (coff_compute_section_file_positions): Likewise.
5545 (coff_write_object_contents): Likewise. Re-add deleted code, but
5546 use #ifdef COFF_WITH_PE, not COFF_OBJ_WITH_PE.
5547 * peicode.h (pe_bfd_copy_private_bfd_data): Re-add #ifdef.
5548
bff4a496
ILT
5549Fri Jun 21 17:38:15 1996 Joel Sherrill <joel@merlin.gcs.redstone.army.mil>
5550
5551 * config.bfd: Add support for *-*-rtems* configurations.
cf2cd4cf 5552
7ae6550f
ILT
5553Fri Jun 21 15:19:59 1996 Ian Lance Taylor <ian@cygnus.com>
5554
5555 * elf.c (prep_headers): Add bfd_arch_alpha case.
5556
e8f46717
ILT
5557Fri Jun 21 12:35:27 1996 Richard Henderson <rth@tamu.edu>
5558
5559 * elf64-alpha.c: New file.
5560 * config.bfd (alpha-*-linuxecoff*): New target.
5561 (alpha-*-linux*, alpha-*-elf*): New targets.
5562 * configure.in (bfd_elf64_alpha_vec): New vector.
5563 * configure: Rebuild.
5564 * targets.c (bfd_elf64_alpha_vec): Declare.
5565 (bfd_target_vector): Add bfd_elf64_alpha_vec if BFD64.
5566 * reloc.c (BFD_RELOC_ALPHA_GPDISP): Define.
5567 * bfd-in2.h, libbfd.h: Rebuild.
5568 * Makefile.in: Rebuild dependencies.
5569 (BFD64_BACKENDS): Add elf64-alpha.o.
5570 (BFD64_BACKENDS_CFILES): Add elf64-alpha.c.
5571
bacecac8
ILT
5572Thu Jun 20 18:14:25 1996 Ian Lance Taylor <ian@cygnus.com>
5573
5574 * ecoff.c (ecoff_armap_hash): If hlog is 0, just return 0, rather
5575 than relying on a right shift of 32.
5576
9ca108cd
DE
5577Thu Jun 20 11:00:57 1996 Doug Evans <dje@canuck.cygnus.com>
5578
b9110a3c
DE
5579 * coffcode.h (coff_set_alignment_hook): Change COFF_IMAGE_WITH_PE
5580 ifdef to COFF_WITH_PE.
5581 (coff_compute_section_file_positions): Likewise.
5582 (coff_write_object_contents): Likewise. Delete COFF_OBJ_WITH_PE.
5583 * pe-{arm,i386,ppc}.c (COFF_OBJ_WITH_PE): Delete.
5584 * peicode.h (pe_bfd_copy_private_bfd_data): Delete ifdef
5585 COFF_IMAGE_WITH_PE, always include.
5586
9ca108cd
DE
5587 * peicode.h (coff_swap_scnhdr_out): ".drectve" doesn't have trailing 0.
5588
c2073f05
ILT
5589Wed Jun 19 11:37:52 1996 Ian Lance Taylor <ian@cygnus.com>
5590
7fc6a16a
ILT
5591 * elf.c (map_sections_to_segments): Fix up the test for -Ttext to
5592 approximate the correct answer if SIZEOF_HEADERS was not used.
5593
c2073f05
ILT
5594 * binary.c (binary_set_section_contents): Set section file
5595 position based on LMA rather than VMA.
5596
4838929e
ILT
5597Wed Jun 19 11:19:25 1996 Manfred Hollstein KS/EIC5 60/3/142 #40283 <manfred@lts.sel.alcatel.de>
5598
5599 * linker.c (_bfd_generic_link_output_symbols): Don't output any
5600 symbols if info->strip == strip_all.
5601
5602Tue Jun 18 15:17:36 1996 Jeffrey A. Law <law@rtl.cygnus.com>
5603
5604 * coff-h8300.c: Remove #if 0 code.
5605 (compatable): Don't allow mixing/matching of different architectures.
cf2cd4cf 5606
4838929e
ILT
5607 * archures.c (bfd_mach_h8300s): Add.
5608 * bfd-in2.h: Rebuilt.
5609 * coff-h8300.c (funcvec_hash_newfunc): Handle H8/S too.
5610 (BADMAG): Likewise.
5611 (h8300_reloc16_estimate): Likewise.
5612 (h8300_reloc16_extra_cases): Likewise.
5613 (h8300_bfd_link_add_symbols): Likewise.
5614 * coffcode.h (coff_set_arch_mach_hook): Likewise.
5615 (coff_set_flags): Likewise.
5616 * cpu-h8300.c (h8300_scan): Likewise.
5617 Add H8/S to bfd_h8300_arch list.
5618
c3d8e071
ILT
5619Tue Jun 18 14:42:58 1996 Klaus Kaempf <kkaempf@progis.de>
5620
5621 Added support for Alpha OpenVMS:
5622 * evax.h, evax-alpha.c, evax-egsd.c, evax-emh.c: New files.
5623 * evax-etir.c, evax-misc.c, hosts/alphavms.h: New files.
5624 * config.h-vms, makefile.vms: New files.
5625 * config.bfd (alpha-*-*vms*): New target.
5626 * configure.in (evax_alpha_vec): New target vector.
5627 * configure: Rebuild.
5628 * reloc.c (BFD_RELOC_SWREL32, BFD_RELOC_SWREL64): Define.
5629 (BFD_RELOC_ALPHA_LINKAGE, BFD_RELOC_ALPHA_BASEREG): Define.
5630 * targets.c (bfd_target_evax_flavour): Define.
5631 (evax_alpha_vec): Declare.
5632 (bfd_target_vector): Add ecoffalpha_little_vec and evax_alpha_vec
5633 if BFD64 is defined.
5634 * bfd-in2.h, libbfd.h: Rebuild.
5635 * Makefile.in: Rebuild dependencies.
5636 (BFD64_BACKENDS): Add evax-alpha.o, evax-egsd.o, evax-etir.o,
5637 evax-emh.o, and evax-misc.o.
5638 (BFD64_BACKENDS_CFILES): Add evax-alpha.c, evax-egsd.c,
5639 evax-etir.c, evax-emh.c, and evax-misc.c.
5640 (HFILES): Add evax.h.
5641
142aa7d9
ILT
5642Tue Jun 18 13:54:18 1996 Ian Lance Taylor <ian@cygnus.com>
5643
5644 * coff-h8300.c (h8300_reloc16_extra_cases): Make name a const
5645 pointer.
5646 (h8300_bfd_link_add_symbols): Likewise.
5647
b658d64d
JL
5648Mon Jun 17 10:06:50 1996 Jeffrey A. Law <law@rtl.cygnus.com>
5649
5650 * som.h (R_HPPA_BEGIN_TRY, R_HPPA_END_TRY): Define.
5651 * som.c (som_write_fixups): Handle R_BEGIN_TRY and R_END_TRY.
5652
2df1e84b
ILT
5653Mon Jun 17 12:49:11 1996 Ian Lance Taylor <ian@cygnus.com>
5654
5655 * elf32-mips.c (mips_elf_relocate_section): Don't create a reloc
5656 for R_MIPS_REL32 and R_MIPS_32 relocs if no dynamic sections were
5657 created.
5658 (mips_elf_check_relocs): Only create .rel.dyn for R_MIPS_REL32 and
5659 R_MIPS_32 relocs if creating a shared library.
5660
5661Thu Jun 13 20:14:51 1996 Doug Evans <dje@canuck.cygnus.com>
5662
5663 * peicode.h (add_data_entry): Use pei_section_data rather than
5664 _cooked_size. Corresponds to May 13 change in coffcode.h.
5665
8100e72c
ILT
5666Thu Jun 13 10:23:40 1996 Ian Lance Taylor <ian@cygnus.com>
5667
51bc9642
ILT
5668 * cofflink.c (_bfd_coff_final_link): Handle long section names.
5669 * coffcode.h (coff_write_object_contents): If there are long
5670 section names, always set the f_symptr field, even if there are no
5671 symbols.
5672 * peicode.h (coff_swap_filehdr_in): Don't clear the f_symptr field
5673 if there are no symbols.
5674
8100e72c
ILT
5675 * coffgen.c (make_a_section_from_file): Check return value of
5676 _bfd_coff_read_string_table.
5677 (coff_real_object_p): Check return value of
5678 make_a_section_from_file.
5679 (_bfd_coff_read_string_table): Check that there are some symbols
5680 before trying to read the string table size.
5681
0e3bd85e
ILT
5682Wed Jun 12 11:16:37 1996 Ian Lance Taylor <ian@cygnus.com>
5683
ed675a04
ILT
5684 * xcofflink.c (xcoff_link_add_symbols): When considering whether
5685 to replace a symbol in a dynamic object with a symbol from another
5686 dynamic object, do the replacement if the existing symbol is
5687 global linkage code.
5688
49144784
ILT
5689 * xcofflink.c (_bfd_ppc_xcoff_relocate_section): Check explicitly
5690 for _ptrgl, and treat it as global linkage code.
5691
0e3bd85e
ILT
5692 * aoutx.h (NAME(aout,find_nearest_line)): Notice if we find a
5693 filename or N_SO symbol past the offset, and use it to indicate
5694 that there is no line number or function when appropriate.
5695
a5c7acea
ILT
5696Tue Jun 11 15:24:48 1996 Ian Lance Taylor <ian@cygnus.com>
5697
5698 * xcofflink.c (xcoff_build_ldsyms): Set XCOFF_DEF_REGULAR for a
5699 common symbol defined by the linker. Don't export function code
5700 even if export_defineds is set.
5701
5702Mon Jun 10 11:57:27 1996 Jeffrey A Law (law@cygnus.com)
5703
5704 * coff-h8300.c (howto_table): Add new entries for R_BCC_INV
5705 and R_JMP_DEL.
5706 (rtype2howto): Handle R_BCC_INV and R_JMP_DEL.
5707 (h8300_symbol_address_p): New function.
5708 (h8300_reloc16_estimate): Eliminate jumps made unnecessary by
5709 relaxing.
5710
890f5b7f
JL
5711Sun Jun 9 16:30:20 1996 Jeffrey A Law (law@cygnus.com)
5712
5713 * coff-h8300.c (h8300_reloc16_estimate): Fix many minor spacing
5714 problems.
5715 (h8300_reloc16_estimate, cases R_JMP1, R_JMP2): Adjust "dot"
5716 correctly for the two variants. Allow relaxing if the target
5717 is 128 bytes away since after relaxation it'll be 126 bytes away.
5718 (h8300_reloc16_estimate, case R_PCRWORD): Correctly adjust
5719 "dot" and "value". Allow relaxing if the target is 128 bytes
5720 away since after relaxation it'll be 126 bytes away.
5721 * reloc16.c (bfd_coff_reloc16_relax_section): Keep relaxing
5722 the given section until nothing changes.
5723
0593fc16
ILT
5724Thu Jun 6 15:24:45 1996 Richard Henderson <rth@tamu.edu>
5725
5726 * ecoff.c (_bfd_ecoff_new_section_hook): Remove the _PDATA
5727 alignment hack--we can get the lnnoptr info another way without
5728 suddenly increasing the alignment requirements. Set the flags for
5729 the _PDATA section.
5730 (ecoff_compute_section_file_positions): Do so.
5731
9b263b79
ILT
5732Thu Jun 6 11:24:37 1996 Ian Lance Taylor <ian@cygnus.com>
5733
bbf7c335
ILT
5734 * ieee.c (ieee_write_object_contents): Put a timestamp in the file
5735 to keep the HP emulator database happy.
5736
9b263b79
ILT
5737 * config.bfd: Recognize powerpc-*-linux* and powerpcle-*-linux*.
5738 From Kevin Buettner <kev@primenet.com>.
5739
5740Wed Jun 5 15:16:04 1996 Ian Lance Taylor <ian@cygnus.com>
5741
5742 * aoutx.h (translate_to_native_sym_flags): Don't try to print the
5743 name of a NULL section.
5744
26145b15
ILT
5745Tue Jun 4 18:53:58 1996 Ian Lance Taylor <ian@cygnus.com>
5746
5747 * linker.c (_bfd_generic_link_add_one_symbol): If notice_all is
5748 set, always call the notice callback.
5749
5750 * VERSION: Increment for bfdlink.h change.
5751
3a2080d8
ILT
5752Mon Jun 3 11:01:53 1996 Ian Lance Taylor <ian@cygnus.com>
5753
9d175198
ILT
5754 * coff-sh.c (COFF_DEFAULT_SECTION_ALIGNMENT_POWER): Set to 4.
5755 (sh_relax_delete_bytes): Correct handling of differently sized
5756 trailing alignment reloc.
5757
5a04f1bd
ILT
5758 * bfd-in.h: Use #error if BFD_HOST_64_BIT can not be defined.
5759 * bfd-in2.h: Rebuild.
5760 * configure.in: Warn if there is no known 64 bit type.
5761 * configure: Rebuild.
5762
60c8b04f
ILT
5763 * Makefile.in: Rebuild dependencies.
5764 (BFD32_BACKENDS): Add ppcboot.o.
5765 (BFD32_BACKENDS_CFILES): Add ppcboot.c.
5766
3a2080d8
ILT
5767 * elf32-mips.c (mips_elf_size_dynamic_sections): Initialize c.
5768 From Per Fogelstrom <per.fogelstrom@mailbox200.swipnet.se>.
5769
903612a2
ILT
5770Sat Jun 1 21:49:58 1996 Ian Lance Taylor <ian@cygnus.com>
5771
5772 * elf64-mips.c (bfd_mips_elf64_swap_reginfo_in)
5773 (bfd_mips_elf64_swap_reginfo_out): Move from here...
5774 * elf32-mips.c (bfd_mips_elf64_swap_reginfo_in)
5775 (bfd_mips_elf64_swap_reginfo_out): ...to here.
5776
38893c8c
ILT
5777Fri May 31 13:51:28 1996 Ian Lance Taylor <ian@cygnus.com>
5778
bc05732b
ILT
5779 * elf64-mips.c: Improve reloc special_functions and handling of
5780 SHT_MIPS_OPTIONS section.
5781 * elf32-mips.c (_bfd_mips_elf_hi16_reloc): Rename from
5782 mips_elf_hi16_reloc and make globally visible.
5783 (_bfd_mips_elf_lo16_reloc): Rename from mips_elf_lo16_reloc and
5784 make globally visible.
5785 (_bfd_mips_elf_got16_reloc): Rename from mips_elf_got16_reloc and
5786 make globally visible.
5787 (_bfd_mips_elf_gprel16_reloc): Rename from mips_elf_gprel16_reloc
5788 and make globally visible.
5789 (gprel16_with_gp): Check howto->src_mask before using value in
5790 insn.
5791 (_bfd_mips_elf_gprel32_reloc): Rename from mips_elf_gprel32_reloc
5792 and make globally visible.
5793 (gprel32_with_gp): Check howto->src_mask before fetching value.
5794 (bfd_mips_elf_swap_options_in): New function.
5795 (bfd_mips_elf_swap_options_out): New function.
5796 (_bfd_mips_elf_set_private_flags): Rename from
5797 mips_elf_set_private_flags and make globally visible.
5798 (_bfd_mips_elf_copy_private_bfd_data): Rename from
5799 mips_elf_copy_private_bfd_data and make globally visible.
5800 (_bfd_mips_elf_merge_private_bfd_data): Rename from
5801 mips_elf_merge_private_bfd_data and make globally visible.
5802 (_bfd_mips_elf_section_from_shdr): Accept .MIPS.options as a name
5803 for a SHT_MIPS_OPTIONS section.
5804 (mips_elf32_section_from_shdr): Handle SHT_MIPS_OPTIONS section.
5805 (_bfd_mips_elf_fake_sections): Consider .MIPS.options to be the
5806 name of a SHT_MIPS_OPTIONS section.
5807 (_bfd_mips_elf_set_section_contents): New function.
5808 (mips_elf32_section_processing): Set the GP value in a
5809 SHT_MIPS_OPTIONS section.
5810 (_bfd_mips_elf_find_nearest_line): Rename from
5811 mips_elf_find_nearest_line and make globally visible.
5812 (bfd_elf32_set_section_contents): Define.
5813 * elf-bfd.h (_bfd_mips_elf_hi16_reloc): Declare.
5814 (_bfd_mips_elf_lo16_reloc): Declare.
5815 (_bfd_mips_elf_gprel16_reloc): Declare.
5816 (_bfd_mips_elf_got16_reloc): Declare.
5817 (_bfd_mips_elf_gprel32_reloc): Declare.
5818 (_bfd_mips_elf_set_private_flags): Declare.
5819 (_bfd_mips_elf_copy_private_bfd_data): Declare.
5820 (_bfd_mips_elf_merge_private_bfd_data): Declare.
5821 (_bfd_mips_elf_find_nearest_line): Declare.
5822 (_bfd_mips_elf_set_section_contents): Declare.
5823
38893c8c
ILT
5824 * elf32-hppa.c (elf32_hppa_info_to_howto): Rename from
5825 elf_info_to_howto.
5826 (elf_info_to_howto): Define.
5827 * elf32-sparc.c (elf32_sparc_info_to_howto): Rename from
5828 elf_info_to_howto.
5829 (elf_info_to_howto): Define.
5830 * elf64-sparc.c (sparc64_elf_info_to_howto): Rename from
5831 elf_info_to_howto.
5832 (elf_info_to_howto): Define.
5833
5834 * coff-w65.c (h8300_reloc16_estimate): Rename R_MOVB[12] to
5835 R_MOV16B[12], to match change in coff/internal.h.
5836
cabd8fa0
ILT
5837Thu May 30 12:38:49 1996 Ian Lance Taylor <ian@cygnus.com>
5838
00176555
ILT
5839 * elf64-mips.c: Extensive additions to provide better support for
5840 writing files and for gas.
5841 * elf32-mips.c (_bfd_mips_elf_object_p): New function, broken out
5842 of mips_elf_object_p.
5843 (mips_elf32_object_p): Rename from mips_elf_object_p; call
5844 _bfd_mips_elf_object_p.
5845 (_bfd_mips_elf_final_write_processing): Rename from
5846 mips_elf_final_write_processing and make globally visible.
5847 (_bfd_mips_elf_fake_sections): Rename from
5848 mips_elf_fake_sections and make globally visible.
5849 (_bfd_mips_elf_section_from_bfd_section): Rename from
5850 mips_elf_section_from_bfd_section and make globally visible.
5851 (_bfd_mips_elf_section_processing): New function, broken out of
5852 mips_elf_section_processing.
5853 (mips_elf32_section_processing): Rename from
5854 mips_elf_section_processing; call
5855 _bfd_mips_elf_section_processing.
5856 (_bfd_mips_elf_symbol_processing): Rename from
5857 mips_elf_symbol_processing and make globally visible.
5858 (_bfd_mips_elf_read_ecoff_info): Rename from
5859 mips_elf_read_ecoff_info and make globally visible.
5860 (mips_elf32_ecoff_debug_swap): Rename from
5861 mips_elf_ecoff_debug_swap.
5862 * elf.c (_bfd_elf_symbol_from_bfd_symbol): Use asymbol rather than
5863 struct symbol_cache_entry.
5864 (_bfd_elf_validate_reloc): New function, moved in from
5865 elfcode.h:validate_reloc.
5866 * elfcode.h (validate_reloc): Remove; moved into elf.c and renamed
5867 to _bfd_elf_validate_reloc. Change all callers.
5868 * elf-bfd.h (bfd_section_from_shdr): Declare.
5869 (_bfd_elf_symbol_from_bfd_symbol): Declare.
5870 (_bfd_elf_validate_reloc): Declare.
5871 (_bfd_mips_elf_object_p): Declare.
5872 (_bfd_mips_elf_fake_sections): Declare.
5873 (_bfd_mips_elf_section_from_bfd_section): Declare.
5874 (_bfd_mips_elf_section_processing): Declare.
5875 (_bfd_mips_elf_symbol_processing): Declare.
5876 (_bfd_mips_elf_read_ecoff_info): Declare.
5877 (_bfd_mips_elf_final_write_processing): Declare.
5878 * elfxx-target.h (bfd_elfNN_get_reloc_upper_bound): Don't define
5879 if already defined.
5880
cabd8fa0
ILT
5881 * elf32-mips.c (mips_elf_object_p): Handle E_MIPS_ARCH_4.
5882 (mips_elf_final_write_processing): Likewise.
5883
d1bf45aa
ILT
5884Wed May 29 16:15:29 1996 Ian Lance Taylor <ian@cygnus.com>
5885
5886 64-bit MIPS ELF ABI objdump support:
5887 * elf64-mips.c: New file.
5888 * Makefile.in: Rebuild dependencies.
5889 (BFD64_BACKENDS): Add elf64-mips.o.
5890 (BFD64_BACKENDS_CFILES): Add elf64-mips.c.
5891 * config.bfd (mips*el-*-elf*) Add bfd_elf64_bigmips_vec and
5892 bfd_elf64_littlemips_vec to targ_selvecs.
5893 (mips*-*-elf*): Likewise.
5894 * confingure.in: Add bfd_elf64_bigmips_vec and
5895 bfd_elf64_littlemips_vec to vector switch.
5896 * configure: Rebuild.
5897 * elf32-mips.c (_bfd_mips_elf_section_from_shdr): New function,
5898 broken out of mips_elf_section_from_shdr.
5899 (mips_elf32_section_from_shdr): Rename from
5900 mips_elf_section_from_shdr. Call new function.
5901 (elf_backend_section_from_shdr): Update name of renamed function.
5902 * elf-bfd.h (struct elf_size_info): Change second parameter of
5903 write_out_phdrs to be const. Likewise for second parameter of
5904 swap_symbol_out.
5905 (struct bfd_elf_section_data): Add rel_hdr2 field.
5906 (bfd_elf32_swap_symbol_in): Change second parameter to be const.
5907 (bfd_elf32_swap_symbol_out): Likewise.
5908 (bfd_elf32_swap_reloc_in): Likewise.
5909 (bfd_elf32_swap_reloc_out): Likewise.
5910 (bfd_elf32_swap_reloca_in): Likewise.
5911 (bfd_elf32_swap_reloca_out): Likewise.
5912 (bfd_elf32_swap_phdr_in): Likewise.
5913 (bfd_elf32_swap_phdr_out): Likewise.
5914 (bfd_elf32_swap_dyn_in): Likewise.
5915 (bfd_elf32_swap_dyn_out): Likewise.
5916 (bfd_elf32_slurp_symbol_table): Declare.
5917 (bfd_elf32_write_shdrs_and_ehdr): Declare.
5918 (bfd_elf32_write_out_phdrs): Declare.
5919 (bfd_elf64_swap_symbol_in): Change second parameter to be const.
5920 (bfd_elf64_swap_symbol_out): Likewise.
5921 (bfd_elf64_swap_reloc_in): Likewise.
5922 (bfd_elf64_swap_reloc_out): Likewise.
5923 (bfd_elf64_swap_reloca_in): Likewise.
5924 (bfd_elf64_swap_reloca_out): Likewise.
5925 (bfd_elf64_swap_phdr_in): Likewise.
5926 (bfd_elf64_swap_phdr_out): Likewise.
5927 (bfd_elf64_swap_dyn_in): Likewise.
5928 (bfd_elf64_swap_dyn_out): Likewise.
5929 (bfd_elf64_slurp_symbol_table): Declare.
5930 (bfd_elf64_write_shdrs_and_ehdr): Declare.
5931 (bfd_elf64_write_out_phdrs): Declare.
5932 (_bfd_mips_elf_section_from_shdr): Declare.
5933 * elf.c (bfd_section_from_shdr): Remove assertion requiring
5934 SHT_REL/SHT_RELA to match use_rela_p. If there is already a reloc
5935 section for the section, add the new one to rel_hdr2. Increment
5936 reloc_count rather than setting it.
5937 * elfcode.h (elf_slurp_symbol_table): Define name as macro.
5938 Remove static declaration.
5939 (elf_write_shdrs_and_ehdr): Define name as macro.
5940 (elf_write_out_phdrs): Likewise.
5941 (elf_swap_ehdr_in, elf_swap_ehdr_out): Declare.
5942 (elf_swap_shdr_in, elf_swap_shdr_out): Declare.
5943 (elf_swap_symbol_in): Change second parameter to be const.
5944 (elf_swap_symbol_out): Likewise.
5945 (elf_swap_ehdr_in, elf_swap_ehdr_out): Likewise.
5946 (elf_swap_shdr_in, elf_swap_shdr_out): Likewise.
5947 (elf_swap_phdr_in, elf_swap_phdr_out): Likewise.
5948 (elf_swap_reloc_in, elf_swap_reloc_out): Likewise.
5949 (elf_swap_reloca_in, elf_swap_reloca_out): Likewise.
5950 (elf_write_out_phdrs): Rename from write_out_phdrs. Change second
5951 parameter to be const. Make non-static.
5952 (elf_write_shdrs_and_ehdr): Rename from write_shdrs_and_ehdr.
5953 Make non-static.
5954 (elf_slurp_symbol_table): Make non-static.
5955 (NAME(_bfd_elf,size_info)): Update names of renamed functions.
5956 * elfxx-target.h (elf_info_to_howto): Define if not defined.
5957 (elf_backend_size_info): Likewise.
5958 (elfNN_bed): Use elf_backend_size_info.
5959 * targets.c (bfd_elf64_bigmips_vec): Declare.
5960 (bfd_elf64_littlemips_vec): Declare.
5961 (bfd_target_vector): Add bfd_elf64_bigmips_vec and
5962 bfd_elf64_littlemips_vec if BFD64 is defined.
cf2cd4cf 5963
d1bf45aa
ILT
5964 * libbfd.c (bfd_get_file_window): Add cast to fprintf argument.
5965
7dd3d45a
ILT
5966Tue May 28 11:42:08 1996 Ian Lance Taylor <ian@cygnus.com>
5967
07692951
ILT
5968 * coff-sh.c (sh_relax_delete_bytes): Insert nop instructions, not
5969 zeroes, in alignment holes.
5970
a4322a77
ILT
5971 * configure: Rebuild with autoconf 2.10.
5972
7dd3d45a
ILT
5973 * aoutx.h (NAME(aout,find_nearest_line)): Make room for the
5974 potential leading underscore in the allocated buffer.
5975
0293d5b0
MM
5976Fri May 24 14:28:38 1996 Michael Meissner <meissner@tiktok.cygnus.com>
5977
5978 * elf32-ppc.c (ppc_elf_add_symbol_hook): Do not put small common
5979 symbols into .sbss if this is a relocatable link.
5980
a5d0cd50
ILT
5981Thu May 23 12:26:24 1996 Ian Lance Taylor <ian@cygnus.com>
5982
5983 * xcofflink.c (_bfd_ppc_xcoff_relocate_section): Warn about
5984 undefined symbols when creating a shared library.
5985
5986Fri May 17 13:54:15 1996 Ian Lance Taylor <ian@cygnus.com>
5987
5988 * coff-sh.c: Add a bunch of new code and static const arrays to
5989 support aligning loads and stores on four byte memory boundaries.
5990 Also:
5991 (sh_coff_howtos): Add entries for R_SH_CODE, R_SH_DATA and
5992 R_SH_LABEL.
5993 (sh_relax_section): Look for R_SH_CODE relocs. If we find one,
5994 call sh_align_loads.
5995 (sh_relax_delete_bytes): Don't mark R_SH_CODE or R_SH_DATA relocs
5996 as unused.
5997
c403d358
ILT
5998Thu May 16 16:34:13 1996 Ian Lance Taylor <ian@cygnus.com>
5999
6000 * cache.c (bfd_open_file): Unlink the file before opening it for
6001 write. From Marty Leisner <leisner@sdsp.mc.xerox.com>.
6002
6003 * opncls.c (bfd_fdopenr): Set opened_once.
6004
2f710e17
ILT
6005Tue May 14 12:35:32 1996 Ian Lance Taylor <ian@cygnus.com>
6006
ff60fc3a
ILT
6007 * som.c (som_slurp_reloc_table): Clear external_relocs cache after
6008 freeing it.
6009
2f710e17
ILT
6010 * libbfd.c: Remove #ifdef FILE_OFFSET_IS_CHAR_INDEX, and compile
6011 the code unconditionally.
6012
efb33f6b
ILT
6013Mon May 13 19:51:37 1996 Ian Lance Taylor <ian@cygnus.com>
6014
6015 * libcoff-in.h (struct pei_section_tdata): Define structure.
6016 (pei_section_data): Define macro.
6017 * libcoff.h: Rebuild.
6018 * coffcode.h (coff_set_alignment_hook): If COFF_IMAGE_WITH_PE,
6019 store s_paddr field in pei_section_data.
6020 (coff_compute_section_file_positions): Use pei_section_data rather
6021 than _cooked_size, and don't overwrite an existing value.
6022 (coff_write_object_contents): If COFF_OBJ_WITH_PE, set s_paddr to
6023 0. If COFF_IMAGE_WITH_PE, set s_paddr to pei_section_data.
6024 * peicode.h (coff_bfd_copy_private_section_data): Define if
6025 COFF_IMAGE_WITH_PE.
6026 (pe_bfd_copy_private_section_data): New static function if
6027 COFF_IMAGE_WITH_PE.
6028
5ecd6d7f
ILT
6029Wed May 8 16:10:38 1996 Ian Lance Taylor <ian@cygnus.com>
6030
db1e2aa7
ILT
6031 * srec.c (srec_set_arch_mach): Write as a function rather than a
6032 macro definition.
6033
5ecd6d7f
ILT
6034 * xcofflink.c (_bfd_xcoff_bfd_link_add_symbols): If an archive has
6035 no map, just check each member in turn to see whether it is
6036 required.
6037
aefee5c8
MM
6038Wed May 8 09:17:34 1996 Michael Meissner <meissner@tiktok.cygnus.com>
6039
6040 * ppcboot.c (ppcboot_object_p): Check for type 0x41 in partition
6041 table. Call BFD_ASSERT to validate header size, instead of
6042 calling fatal.
6043 (ppcboot_bfd_print_private_bfd_data): Put quotes around partition
6044 name.
6045
0d1fcbbb
MM
6046Tue May 7 16:10:19 1996 Michael Meissner <meissner@tiktok.cygnus.com>
6047
6048 * ppcboot.c: New target for looking at PPCbug boot records.
6049
6050 * config{ure.in,.bfd}: Add support for ppcboot target.
6051 * targets.c: Ditto.
6052 * configure: Regenerate.
cf2cd4cf 6053
f4597f8c
JL
6054Tue May 7 11:15:19 1996 Jeffrey A Law (law@cygnus.com)
6055
6056 * coff-h8300.c (howto_table): Update names to match recent
6057 changes to include/coff/internal.h. Fix minor errors in the
6058 existing relocs. Add R_MOVL1 and R_MOVL2.
6059 (rtype2howto): Similarly.
6060 (h8300_reloc16_estimate): Rewrite to simplify, fix bugs in the
6061 existing relaxing code and peform more relaxing.
6062 (h8300_reloc16_extra_cases): Likewise.
6063
0dc70e1a
JL
6064Mon May 6 18:24:09 1996 Jeffrey A Law (law@cygnus.com)
6065
6066 * reloc16.c (bfd_coff_reloc16_get_value): Handle common
6067 symbols correctly.
6068
d1b8ccb0
PS
6069Sat May 4 05:08:45 1996 Peter Schauer (pes@regent.e-technik.tu-muenchen.de)
6070
6071 * elfcode.h (elf_object_p): Reject generic ELF target if
6072 e_machine matches an alternate machine code in a specific backend.
6073
6074 * netbsd-core.c (netbsd_core_vec): Remove initializer for
6075 obsolete align_power_min field.
6076
c9f5444e
JL
6077Fri May 3 13:07:35 1996 Jeffrey A Law (law@cygnus.com)
6078
6079 * coff-h8300.c (reloc_howto_type): Add howto entry for
6080 R_PCRWORD_B.
6081 (rtype2howto): Handle R_PCRWORD_B.
6082 (h8300_reloc16_extra_cases): Handle R_PCRWORD_B.
6083 (h8300_reloc_16_estimate): Likewise. Try to turn a 16bit
6084 pc-relative branch (R_PCRWORD) into an 8bit pc-relative
6085 branch (R_PCWORD_B).
6086
4ad842aa
ILT
6087Fri May 3 10:47:41 1996 Ian Lance Taylor <ian@cygnus.com>
6088
340d654f
ILT
6089 * aoutx.h (translate_from_native_sym_flags): Set the section for
6090 BSF_CONSTRUCTOR symbols.
6091
4ad842aa
ILT
6092 * cofflink.c (_bfd_coff_link_input_bfd): Correct setting of
6093 last_bf_index.
6094
9c7a5748
DE
6095Wed May 1 18:39:32 1996 Doug Evans <dje@canuck.cygnus.com>
6096
6097 * coffcode.h (coff_write_object_contents): In comdat section lookup,
6098 stop looking when section is found.
6099
622c93a3
ILT
6100Wed May 1 14:17:57 1996 Ian Lance Taylor <ian@cygnus.com>
6101
e8f3bb64 6102 * coffcode.h (STRING_SIZE_SIZE): Define.
9aac8e83
ILT
6103 (styp_to_sec_flags): Handle long symbol names when looking for the
6104 section symbol.
e8f3bb64
ILT
6105 (bfd_coff_backend_data): Add _bfd_coff_long_section_names field.
6106 (bfd_coff_long_section_names): Define.
6107 (coff_write_object_contents): Handle long section names.
6108 (bfd_coff_std_swap_table): Initialize new field.
6109 * libcoff.h: Rebuild.
6110 * coffgen.c (make_a_section_from_file): Handle long section
6111 names.
6112 (coff_write_symbols): Handle long section names.
6113 * coff-alpha.c (alpha_ecoff_backend_data): Initialize new field.
6114 * coff-mips.c (mips_ecoff_backend_data): Likewise.
6115 * pe-arm.c (COFF_LONG_SECTION_NAMES): Define.
6116 * pei-arm.c (COFF_LONG_SECTION_NAMES): Define.
6117 * pe-i386.c (COFF_LONG_SECTION_NAMES): Define.
6118 * pei-i386.c (COFF_LONG_SECTION_NAMES): Define.
6119 * pe-ppc.c (COFF_LONG_SECTION_NAMES): Define.
6120 * pei-ppc.c (COFF_LONG_SECTION_NAMES): Define.
6121
622c93a3
ILT
6122 * bout.c (b_out_callback): Set lma of sections.
6123 (b_out_bfd_get_relocated_section_contents): Rename in_abfd
6124 parameter to output_bfd. Used input_bfd instead of output_bfd in
6125 several places.
6126
6b725f83
ILT
6127Tue Apr 30 17:56:39 1996 Ian Lance Taylor <ian@cygnus.com>
6128
b7d1158a
ILT
6129 * aoutx.h (translate_from_native_sym_flags): Don't create
6130 SEC_CONSTRUCTOR sections.
6131 * ecoff.c (ecoff_set_symbol_info): Likewise.
6132
6b725f83
ILT
6133 * elf32-mips.c (mips_elf_copy_private_bfd_data): Copy elf_gp.
6134 From Don Bowman <bowman@waterloo.hp.com>.
6135
e28a1e77
DE
6136Tue Apr 30 17:06:32 1996 Doug Evans <dje@canuck.cygnus.com>
6137
6138 * coff-arm.c (armcoff_little_vec): If COFF_WITH_PE is defined, add
6139 SEC_LINK_ONCE and SEC_LINK_DUPLICATES to section_flags.
6140
abec70b9
ILT
6141Mon Apr 29 13:15:17 1996 Ian Lance Taylor <ian@cygnus.com>
6142
6143 * elf32-mips.c (struct mips_elf_link_hash_entry): Add
6144 mips_32_relocs field.
6145 (mips_elf_link_hash_newfunc): Initialize mips_32_relocs field.
6146 (mips_elf_relocate_section): Copy R_MIPS_REL32 and R_MIPS_32
6147 relocs against a global symbol which is not defined in a regular
6148 file.
6149 (mips_elf_check_relocs): For a R_MIPS_REL32 or R_MIPS_32 reloc
6150 against a global symbol, increment mips_32_relocs.
6151 (mips_elf_adjust_dynamic_symbol): If mips_32_relocs is set, and
6152 the symbol is not defined in a regular file, make room in the
6153 .rel.dyn section.
6154
ecba7a3a
ILT
6155Fri Apr 26 18:00:37 1996 Ian Lance Taylor <ian@cygnus.com>
6156
656c5b6d
ILT
6157 * ecoff.c (ecoff_compute_section_file_positions): Track the real
6158 file position and the virtual file position separately. Set
6159 filepos information bsaed on the real file position.
6160 (_bfd_ecoff_set_section_contents): Handle .lib sections like the
6161 Jan 23 change to coffcode.h.
6162
ecba7a3a
ILT
6163 * som.c (som_slurp_symbol_table): Set the symbol count to the
6164 number of BFD symbols created.
6165
e25a7988
MM
6166Fri Apr 26 12:34:29 1996 Michael Meissner <meissner@tiktok.cygnus.com>
6167
6168 * elf32-ppc.c (ppc_elf_check_relocs): Forward relocations to the
6169 output file if linking shared objects. Loop to check all relocs,
6170 rather than returning false on first error.
6171
5c28a96e
MM
6172Thu Apr 25 13:25:12 1996 Michael Meissner <meissner@tiktok.cygnus.com>
6173
3f7ca26b
MM
6174 * elf32-ppc.c (ppc_elf_create_linker_section): Add PLT case.
6175 (ppc_elf_additional_program_headers): If .interp section, bump #
6176 of program headers by 1.
6177 (ppc_elf_adjust_dynamic_symbol): Flesh out support.
6178 (ppc_elf_size_dynamic_sections): Add support for .plt section.
6179 (ppc_elf_check_relocs): Print out filename in debug code. Enable
6180 PLT support.
6181 (ppc_elf_finish_dynamic_symbol): Add support for PLT's, beef up
6182 debug output.
6183 (ppc_elf_relocate_section): If the output section isn't defined,
6184 don't abort, just give an error message.
6185
5c28a96e
MM
6186 * elflink.c (_bfd_elf_create_dynamic_sections): If the section
6187 being created is .sdata or .sdata2, don't make the symbol dynamic.
6188
f5d65485
ILT
6189Wed Apr 24 14:04:07 1996 Ian Lance Taylor <ian@cygnus.com>
6190
6191 * xcofflink.c (_bfd_xcoff_bfd_link_add_symbols): Look through the
6192 members of an archive for dynamic objects with no symbols, and
6193 pass them directly to check_archive_element.
6194 (xcoff_link_check_ar_symbols): Pass dynamic objects to
6195 xcoff_link_check_dynamic_ar_symbols.
6196 (xcoff_link_check_dynamic_ar_symbols): New static function.
6197
6198 * coff-rs6000.c (rs6000coff_vec): Change BFD_JUMP_TABLE_DYNAMIC
6199 from _bfd_nodynamic to _bfd_xcoff.
6200 * libcoff-in.h (_bfd_xcoff_get_dynamic_symtab_upper_bound):
6201 Declare.
6202 (_bfd_xcoff_canonicalize_dynamic_symtab): Declare.
6203 (_bfd_xcoff_get_dynamic_reloc_upper_bound): Declare.
6204 (_bfd_xcoff_canonicalize_dynamic_reloc): Declare.
6205 * libcoff.h: Rebuild.
6206 * xcofflink.c (xcoff_swap_ldrel_in): New static function.
6207 (xcoff_get_section_contents): New static function.
6208 (_bfd_xcoff_get_dynamic_symtab_upper_bound): New function.
6209 (_bfd_xcoff_canonicalize_dynamic_symtab): New function.
6210 (_bfd_xcoff_get_dynamic_reloc_upper_bound): New function.
6211 (xcoff_dynamic_reloc): New static variable.
6212 (_bfd_xcoff_canonicalize_dynamic_reloc): New function.
6213 (xcoff_link_add_dynamic_symbols): Use xcoff_get_section_contents.
cf2cd4cf 6214
f5d65485
ILT
6215Tue Apr 23 12:48:42 1996 Ian Lance Taylor <ian@cygnus.com>
6216
6217 * coff-sparc.c (bfd_coff_generic_reloc): Return bfd_reloc_ok even
6218 if reloc_entry->addend is not 0.
6219 (CALC_ADDEND): Just set the addend to reloc.r_offset.
6220
34249b2f
DE
6221Mon Apr 22 18:29:01 1996 Doug Evans <dje@canuck.cygnus.com>
6222
6223 * elf32-sparc.c (_bfd_sparc_elf_howto_table): Fix spelling of
6224 R_SPARC_GLOB_JMP.
6225 * elf64-sparc.c (sparc64_elf_howto_table): Likewise.
6226 Add entries for R_SPARC_[56].
6227 (sparc_reloc_map): Add entries for R_SPARC_[56].
6228
af50cd91
ILT
6229Mon Apr 22 15:07:24 1996 Ian Lance Taylor <ian@cygnus.com>
6230
1726b8f0
ILT
6231 Optimize linking of stabs in sections as used in ELF and COFF.
6232 * stabs.c: New file.
6233 * libbfd-in.h (_bfd_link_section_stabs): Declare.
6234 (_bfd_write_section_stabs): Declare.
6235 (_bfd_write_stab_strings): Declare.
6236 * libbfd.h: Rebuild.
6237 * libcoff-in.h (struct coff_section_tdata): Add stab_info field.
6238 (struct coff_link_hash_table): Add stab_info field.
6239 * libcoff.h: Rebuild.
6240 * cofflink.c (_bfd_coff_link_hash_table_init): Initialize
6241 stab_info field.
6242 (coff_link_add_symbols): Call _bfd_link_section_stabs if
6243 appropriate.
6244 (_bfd_coff_final_link): Write out stab strings hash table.
6245 (_bfd_coff_link_input_bfd): Handle optimized stabs sections.
6246 * coff-ppc.c (ppc_bfd_coff_final_link): Write out stab strings
6247 hash table.
6248 * elf-bfd.h (struct elf_link_hash_table): Add stab_info field.
6249 (struct bfd_elf_section_data): Add stab_info field.
6250 * elf.c (_bfd_elf_link_hash_table_init): Initialize stab_info
6251 field.
6252 * elflink.h (elf_link_add_object_symbols): If appropriate, call
6253 _bfd_link_section_stabs.
6254 (elf_bfd_final_link): Write out stab strings hash table.
6255 (elf_link_input_bfd): Handle optimized stabs sections.
6256 * reloc.c (_bfd_final_link_relocate): Check address against
6257 _raw_size rather than _cooked_size.
6258 * Makefile.in: Rebuild dependencies.
6259 (BFD_LIBS): Add stabs.o
6260 (BFD_LIBS_CFILES): Add stabs.c.
6261
6262 * VERSION: Increment for bfdlink.h change.
6263
af50cd91
ILT
6264 * coffgen.c (coff_renumber_symbols): Correct handling of
6265 BSF_NOT_AT_END common symbols.
6266
f9fa5df3
ILT
6267Fri Apr 19 19:21:56 1996 Ian Lance Taylor <ian@cygnus.com>
6268
6269 * coff-ppc.c (record_toc): Add cast to avoid warning.
6270 (ppc_allocate_toc_section): Likewise.
6271 (coff_ppc_relocate_section): Remove ANSI C string concatenation.
6272 (ppc_coff_reloc_type_lookup): Remove unreached code.
6273 * coffcode.h (coff_write_object_contents): Don't take the address
6274 of an array.
6275 * peicode.h (pe_print_idata): Add casts to avoid warning.
6276 (pe_print_edata): Likewise.
6277 (pe_print_reloc): Remove ANSI C string concatenation.
6278
d6e0e2f7
ILT
6279Thu Apr 18 18:51:18 1996 Ian Lance Taylor <ian@cygnus.com>
6280
6281 * libcoff-in.h (struct coff_final_link_info): Add last_bf_index
6282 and last_bf fields.
6283 * libcoff.h: Rebuild.
6284 * coffswap.h (coff_swap_aux_in): Swap endndx field for C_FCN
6285 symbols.
6286 (coff_swap_aux_out): Likewise.
6287 * peicode.h (coff_swap_aux_in): Likewise.
6288 (coff_swap_aux_out): Likewise.
6289 * coffgen.c (coff_pointerize_aux): Check endndx field for C_FCN
6290 symbols.
6291 * cofflink.c (_bfd_coff_final_link): Initialize last_bf_index
6292 field.
6293 (_bfd_coff_link_input_bfd): Check endndx field for C_FCN symbols.
6294 Fix up .bf endndx link fields.
6295 * coff-ppc.c (ppc_bfd_coff_final_link): Initialize last_bf_index
6296 field.
6297 * xcofflink.c (xcoff_link_input_bfd): Check endndx field for C_FCN
6298 symbols.
6299
221d1e19
MM
6300Wed Apr 17 12:08:24 1996 Michael Meissner <meissner@tiktok.cygnus.com>
6301
6302 * pe{,i}-ppc.c (PPC_PE): Define instead of PPC, so that compiling
6303 on Solaris PowerPC systems doesn't get confused.
6304
6305 * ccffcode.h (coff_write_object_contents): Use #ifdef PPC_PE, not
6306 #ifdef PPC.
6307
6308 * elfcore.h (bfd_prstatus, bfd_fpregset): Add thread argument.
6309 (elf_corefile_note): If HAVE_SYS_PROCFS_H is not defined, don't
6310 update did_reg and did_reg2.
6311
8f9a56c6
ILT
6312Wed Apr 17 13:07:37 1996 Ian Lance Taylor <ian@cygnus.com>
6313
f97fca78
ILT
6314 * xcofflink.c (xcoff_link_input_bfd): Check for TOC overflow.
6315
8f9a56c6
ILT
6316 * linker.c (_bfd_generic_link_add_one_symbol): When calling the
6317 callback routines, pass h->root.string rather than name, in case
6318 copy is true and name is transient.
6319
603fdf16
SG
6320Tue Apr 16 16:36:38 1996 Stu Grossman (grossman@lisa.cygnus.com)
6321
6322 * elfcore.h: Add support for core files with multiple threads.
6323 (Primarily for Solaris.)
6324
a2d914e1
ILT
6325Tue Apr 16 13:44:08 1996 Ian Lance Taylor <ian@cygnus.com>
6326
cdf23557
ILT
6327 * aoutx.h (NAME(aout,squirt_out_relocs)): Don't do anything if
6328 section->orelocation is NULL.
6329
a2d914e1
ILT
6330 * coffgen.c (bfd_coff_get_syment): New function.
6331 (bfd_coff_get_auxent): New function.
6332 * bfd-in.h (bfd_coff_get_syment): Declare.
6333 (bfd_coff_get_auxent): Declare.
6334 * bfd-in2.h: Rebuild.
6335
5cf36a32
ILT
6336Mon Apr 15 19:06:59 1996 Ian Lance Taylor <ian@cygnus.com>
6337
6338 * elf32-mips.c (struct mips_hi16): Define.
6339 (mips_hi16_addr, mips_hi16_addend): Remove.
6340 (mips_hi16_list): New static variable.
6341 (mips_elf_hi16_reloc): Maintain a list of unmatched HI16 relocs.
6342 (mips_elf_lo16_reloc): Process mips_hi16_list.
6343 (mips_elf_relocate_section): Permit an arbitrary number of HI16
6344 relocs before the associated LO16 reloc.
6345
b7fce5be
ILT
6346Wed Apr 10 00:23:53 1996 Ian Lance Taylor <ian@cygnus.com>
6347
176512da
ILT
6348 * versados.c (versados_scan): Check bfd_alloc return value.
6349 (versados_object_p): Check all bfd_read return values. Require
6350 that lang field be less than 10, to avoid confusion with Intel Hex
6351 files.
6352
18de3f19
ILT
6353 * libaout.h (WRITE_HEADERS): Write out the relocs even if there
6354 aren't any symbols.
6355 * aoutx.h (NAME(aout,swap_std_reloc_out)): Set r_index to N_ABS,
6356 not 0, for an absolute symbol.
6357 (NAME(aout,swap_ext_reloc_out)): Likewise.
6358
66ab4152
ILT
6359 * ihex.c (ihex_scan): Accept a length of 4 for record type 5.
6360 (ihex_write_object_contents): For a large start address, output
6361 the full 32 bit address in record type 5.
6362
b7fce5be
ILT
6363 * ieee.c (ieee_write_byte): Change second parameter from bfd_byte
6364 to int to avoid promotion problems in prototype.
6365
f1b45745
ILT
6366Tue Apr 9 11:44:21 1996 Ian Lance Taylor <ian@cygnus.com>
6367
f400f358
ILT
6368 * configure.host: Use ${srcdir} when looking for picfrag.
6369
3d9a5986
ILT
6370 * configure.host: Switch on ${libdir}, not $(libdir). From
6371 alan@spri.levels.unisa.edu.au (Alan Modra).
6372
f1b45745
ILT
6373 * aoutx.h (aout_link_add_symbols): Always call add_dynamic_symbols
6374 entry point, not just for DYNAMIC objects.
6375 * sunos.c (sunos_add_dynamic_symbols): Always call
6376 sunos_create_dynamic_sections. If called with a non DYNAMIC
6377 object, don't do anything else.
6378 (sunos_add_one_symbol): Don't call sunos_create_dynamic_sections.
6379
6f21f2e3
ILT
6380Mon Apr 8 12:09:36 1996 Ian Lance Taylor <ian@cygnus.com>
6381
639b5a09
ILT
6382 * configure.in: Permit --enable-shared to specify a list of
6383 directories.
6384 * configure: Rebuild.
6385
6f21f2e3
ILT
6386 * configure.host: Set HLDFLAGS and SHLIB_CFLAGS for *-dec-osf*
6387 host when configuring with --enable-shard.
6388
3f5f565b
ILT
6389Fri Apr 5 12:24:13 1996 Ian Lance Taylor <ian@cygnus.com>
6390
1ac75f5c
ILT
6391 * config.bfd: Add i[345]86-*-freebsdelf* target; from John Polstra
6392 <jdp@polstra.com>.
6393
1a9951a9
ILT
6394 * linker.c (link_action): For WARN_ROW/warn, use MWARN, not CYCLE,
6395 to avoid crashing in bfd_hash_replace.
6396
f1ac3acb 6397 * sysdep.h: Use #ifdef, not #if.
3f5f565b 6398
eb5f58e0
ILT
6399Thu Apr 4 23:32:23 1996 Ian Lance Taylor <ian@cygnus.com>
6400
6401 * config.in: Rebuild.
6402
ab1aa5cd
FF
6403Thu Apr 4 18:49:09 1996 Fred Fish <fnf@cygnus.com>
6404
6405 * configure.in (mips-sony-bsd*): Fix typo in AC_DEFINE.
6406 (AC_CHECK_HEADERS): Check for sys/time.h
6407 (AC_HEADER_TIME): Add macro.
6408 * configure: Rebuild.
6409 * sysdep.h: Use TIME_WITH_SYS_TIME and HAVE_SYS_TIME_H
6410 to control what combination of <time> and <sys/time.h>
6411 get included.
cf2cd4cf 6412
d1f74cd2
DE
6413Tue Apr 2 13:11:53 1996 Doug Evans <dje@canuck.cygnus.com>
6414
6415 * aoutf1.h (sunos_32_set_arch_mach): Handle M_SPARCLET.
6416 (aout_32_sunos4_write_object_contents): Likewise.
6417 * aoutx.h (NAME(aout,machine_type)): Handle
6418 bfd_mach_sparc_{sparclet,sparclite}.
6419 * archures.c (bfd_mach_sparc_{sparclet,sparclite}): Define.
6420 (bfd_mach_sparc_v9_p): Update.
6421 * cpu-sparc.c (arch_info_struct): Add entries for sparclet,sparclite.
6422 * libaout.h (enum machine_type): Add M_SPARCLET.
6423 * sunos.c (MACHTYPE_OK): Define.
6424 * bfd-in2.h: Regenerated.
6425
1dad72bd
ILT
6426Tue Apr 2 00:33:18 1996 Ian Lance Taylor <ian@cygnus.com>
6427
19bfbcbe
ILT
6428 * elf-bfd.h (struct elf_link_hash_table): Add hgot field.
6429 * elf.c (_bfd_elf_link_hash_table_init): Initialize hgot field.
6430 * elflink.c (_bfd_elf_create_got_section): Store the
6431 _GLOBAL_OFFSET_TABLE_ hash table entry in the hgot field.
6432 * elf32-sparc.c (elf32_sparc_check_relocs): If the size of the
6433 global offset table goes over 0x1000, set the value of
6434 _GLOBAL_OFFSET_TABLE_ to 0x1000 into the section.
6435 (elf32_sparc_relocate_section): Subtract the offset of
6436 _GLOBAL_OFFSET_TABLE_ when handling GOT relocations.
6437
1dad72bd
ILT
6438 * elfcode.h: Don't include <string.h>.
6439
ca4e2190
JL
6440Mon Apr 1 10:39:24 1996 Jeffrey A Law (law@cygnus.com)
6441
6442 * linker.c (_bfd_generic_link_hash_newfunc): Renamed from
6443 generic_link_hash_newfunc. All references changed.
6444 * genlink.h (_bfd_generic_link_hash_newfunc): Declaration
6445 moved here from libbfd-in.h.
6446 * libbfd-in.h: Corresponding changes.
6447 * libbfd.h: Regenerated.
6448
ce6a7731
ILT
6449Mon Apr 1 12:35:36 1996 Ian Lance Taylor <ian@cygnus.com>
6450
aad53b0d
ILT
6451 * aoutx.h (aout_link_input_section_std): When reporting an
6452 overflow error, use the name of the symbol in the hash table if
6453 available.
6454 (aout_link_input_section_ext): Likewise.
6455
ce6a7731
ILT
6456 * elflink.h (elf_adjust_dynamic_symbol): If a common symbol got
6457 defined in a regular file, set ELF_LINK_HASH_DEF_REGULAR.
6458
323b430f
SC
6459Sun Mar 31 01:58:41 1996 steve chamberlain <sac@slash.cygnus.com>
6460
6461 * peicode.h (coff_swap_aouthdr_out): Delete test for .junk.
6462 * coffcode.h (coff_compute_section_file_positions): Likewise.
6463 (coff_write_object_contents): Likewise.
cf2cd4cf 6464
7fc1cd16
ILT
6465Fri Mar 29 12:44:36 1996 Ian Lance Taylor <ian@cygnus.com>
6466
5a28331f
ILT
6467 * section.c (SEC_LINK_ONCE): Define.
6468 (SEC_LINK_DUPLICATES): Define.
6469 (SEC_LINK_DUPLICATES_DISCARD): Define.
6470 (SEC_LINK_DUPLICATES_ONE_ONLY): Define.
6471 (SEC_LINK_DUPLICATES_SAME_SIZE): Define.
6472 (SEC_LINK_DUPLICATES_SAME_CONTENTS): Define.
6473 * bfd-in2.h: Rebuild.
6474 * coffcode.h (sec_to_styp_flags): If COFF_WITH_PE, turn
6475 SEC_LINK_ONCE into IMAGE_SCN_LNK_COMDAT.
6476 (styp_to_sec_flags): If COFF_WITH_PE, turn IMAGE_SCN_LNK_REMOVE
6477 into SEC_EXCLUDE. If IMAGE_SCN_LNK_COMDAT is set, set
6478 SEC_LINK_ONCE, and look through the symbol table for the setting
6479 for SEC_LINK_DUPLICATES.
6480 (coff_write_object_contents): If COFF_WITH_PE, if SEC_LINK_ONCE is
6481 set for a section, find the section symbol in the symbol table,
6482 and set the aux entry based on SEC_LINK_DUPLICATES.
6483 * coffgen.c (coff_print_symbol): Add a space before "checksum".
6484 * coff-arm.c (armcoff_big_vec): If COFF_WITH_PE is defined, add
6485 SEC_LINK_ONCE and SEC_LINK_DUPLICATES to section_flags.
6486 * coff-i386.c (i386coff_vec): Likewise.
6487 * coff-ppc.c (TARGET_LITTLE_SYM, TARGET_BIG_SYM): Likewise.
6488
7fc1cd16
ILT
6489 * VERSION: Bump to 2.6.1.
6490 * Makefile.in (stamp-h): Depend upon VERSION.
6491
9399a257
JL
6492Thu Mar 28 23:48:49 1996 Jeffrey A Law (law@cygnus.com)
6493
6494 * libbfd-in.h (generic_link_hash_newfunc): Add declaration.
6495 * libbfd.h: Rebuilt.
6496 * linker.c (generic_link_hash_newfunc): No longer static.
6497 * coffcode.h (coff_bfd_link_hash_create): Allow specific targets
6498 to override.
6499 * coff-h8300.c: Add two derived hash tables and their associated
6500 funtions and #defines for use by the h8300 linker.
6501 (h8300_reloc16_extra_cases, case R_MEM_INDIRECT): Create entries in
6502 the function vector as needed. Place the address of the function
6503 vector entry in the location specified by the R_MEM_INDIRECT reloc.
6504 Rewrite the vectors section contents as necessary.
cf2cd4cf 6505 (h8300_bfd_link_add_symbols): New function for the h8300 linker.
9399a257
JL
6506 (coff_bfd_link_add_symbols): Define to use h8300 specific version.
6507 (coff_bfd_link_hash_table_create): Likewise.
6508
506f2bb4
ILT
6509Thu Mar 28 17:44:08 1996 Ian Lance Taylor <ian@cygnus.com>
6510
6511 * libhppa.h: If gcc 2.7 or higher, declare all the functions with
6512 __attribute__ ((__unused__)) so that -Wall doesn't warn about
6513 them.
6514 (hppa_rebuild_insn): Pass pointer to correct type to
6515 low_sign_unext and dis_assemble_21.
6516
05a84ae1
DE
6517Thu Mar 28 11:00:36 1996 Doug Evans <dje@canuck.cygnus.com>
6518
6519 * config.bfd (sparc64-{sysv4*,solaris2*}): Delete.
6520 Stick with sparc-*-{sysv4*,solaris2*}.
6521
919cf4b5
ILT
6522Wed Mar 27 10:43:34 1996 Ian Lance Taylor <ian@cygnus.com>
6523
8230f31c
ILT
6524 * peicode.h (coff_swap_aux_in): Swap in extra PE x_scn fields.
6525 (coff_swap_aux_out): Swap out extra PE x_scn fields.
6526 * coffswap.h (coff_swap_aux_in): Zero out extra PE x_scn fields.
6527 * coffgen.c (coff_print_symbol): If any of the extra PE x_scn
6528 fields is non-zero, print them.
6529
9addd1d4
ILT
6530 * coff-ppc.c (ppc_record_toc_entry): Put inside COFF_IMAGE_WITH_PE
6531 ifdef. Remove unused variables.
6532 (ppc_record_data_in_toc_entry): Ifdef out. Removed unused
6533 variables.
6534 (ppc_mark_symbol_as_glue): Put inside COFF_IMAGE_WITH_PE ifdef.
6535 (get_symbol_value): Ifdef out.
6536 (pe_ppc_reloc): Ifdef out. Remove unused variables.
6537 (coff_ppc_relocate_section): Remove unused variables. Make
6538 fprintf strings and argument types correspond. Put before_addr in
6539 DEBUG_RELOC ifdef.
ff0e4a93
ILT
6540 (dump_toc): Make fprintf strings and argument types correspond.
6541 (ppc_process_before_allocation): Remove unused variables. Always
6542 return a value.
9addd1d4
ILT
6543 (ppc_reflo_reloc): Ifdef out.
6544 (ppc_addr32nb_reloc): Ifdef out.
6545 (ppc_coff_rtype2howto): Make fprintf strings and argument types
6546 correspond.
6547 (coff_ppc_rtype_to_howto): Likewise.
6548 (ppc_coff_swap_sym_in_hook): Remove unused variables.
6549
6550 * peicode.h (pe_print_idata): Move otherwise unused variables into
6551 the #ifdef where they are used. Always return a value.
ff0e4a93
ILT
6552 (pe_print_edata): Make fprintf strings and argument types
6553 correspond. Always return a value.
9addd1d4
ILT
6554 (pe_print_pdata): Removed unused variable addr_value. Always
6555 return a value.
6556 (pe_print_reloc): Remove unused variable onaline. Make fprintf
ff0e4a93 6557 strings and argument types correspond. Always return a value.
9addd1d4
ILT
6558
6559 * elf32-ppc.c (ppc_elf_fake_sections): Return true.
6560 (ppc_elf_finish_dynamic_symbol): Move definition of unused
6561 variable rela inside #if 0 section where it is used.
6562
c877bdf1
ILT
6563 * ns32k.h: New file.
6564 * cpu-ns32k.h: Include ns32k.h. Rename externally visible
6565 functions to start with _bfd_.
6566 * aout-ns32k.c: Include ns32k.h. Change references to renamed
6567 functions in cpu-ns32k.h.
6568 * Makefile.in: Rebuild dependencies.
6569 (HFILES): Add ns32k.h.
6570
ff0e4a93
ILT
6571 * section.c (struct sec): Add linker_mark field. Change
6572 user_set_vma and reloc_done to be single bit fields.
6573 (STD_SECTION): Update accordingly.
7ec49f91
ILT
6574 * bfd-in2.h: Rebuild.
6575 * aoutx.h (NAME(aout,final_link)): Mark sections included in the
6576 link.
6577 (aout_link_input_bfd): Don't link unmarked sections.
6578 * cofflink.c (_bfd_coff_final_link): Mark sections included in the
6579 link.
6580 (_bfd_coff_link_input_bfd): Don't link unmarked sections.
6581 * coff-ppc.c (ppc_bfd_coff_final_link): Mark sections included in
6582 the link.
6583 * elflink.h (elf_bfd_final_link): Mark sections included in the
6584 link.
6585 (elf_link_input_bfd): Don't link unmarked sections.
6586 * xcofflink.c (_bfd_xcoff_bfd_final_link): Mark sections included
6587 in the link.
6588 (xcoff_link_input_bfd): Don't link unmarked sections.
6589
919cf4b5
ILT
6590 * coffswap.h (coff_swap_scnhdr_out): Include section name in
6591 overflow error messages.
6592
986cf3b8
ILT
6593Tue Mar 26 15:46:18 1996 Ian Lance Taylor <ian@cygnus.com>
6594
fd681dcd
ILT
6595 * bfd.c (_bfd_default_error_handler): If _bfd_error_program_name
6596 is not set, print "BFD: " before the error message.
6597
986cf3b8
ILT
6598 * configure.in: Use AC_CHECK_TOOL to find ar and ranlib. From
6599 Miles Bader <miles@gnu.ai.mit.edu>.
6600 * configure: Rebuild.
6601
3998d526
ILT
6602Fri Mar 22 12:17:00 1996 Ian Lance Taylor <ian@cygnus.com>
6603
c3dffbd7
ILT
6604 * xcofflink.c (xcoff_link_input_bfd): Fix scan for C_BINCL/C_EINCL
6605 symbols.
6606
3998d526
ILT
6607 * config.bfd: Add ieee_vec to targ_selvecs for i960 targets and
6608 m68k-aout, m68k-coff, and m68k-elf targets.
6609
e4d27380
ILT
6610Fri Mar 22 11:33:44 1996 Martin Anantharaman <martin@goofy.imech.uni-duisburg.de>
6611
6612 * ieee.c: Changed #ifdef KEEPMINUSPCININST to #if KEEPMINUSPCININST.
6613 (ieee_generic_stat_arch_elt): Restructured to prevent
6614 ieee_object_p from being called repeatedly.
6615
51776a11
SC
6616Thu Mar 21 11:00:47 1996 steve chamberlain <sac@slash.cygnus.com>
6617
6618 * coffcode.h (coff_write_object_contents): Allocate
6619 buffers large enough for any FILEHDR or AOUTHDR.
6620
6621Thu Mar 21 16:28:17 1996 David Mosberger-Tang <davidm@azstarnet.com>
6622
6623 * ecofflink.c (lookup_line): New static function, renamed and
6624 slighly changed from old _bfd_ecoff_locate_line.
6625 (_bfd_ecoff_locate_line): Cache line number information. Use
6626 lookup_line for actual lookup.
6627
9e4ebb1b
MM
6628Thu Mar 21 14:59:11 1996 Michael Meissner <meissner@tiktok.cygnus.com>
6629
6630 * peicode.h (pe_print_pdata): Warn if the .pdata section is not a
6631 multiple of 20 bytes.
6632
9e7427a4
ILT
6633Thu Mar 21 13:54:40 1996 Ian Lance Taylor <ian@cygnus.com>
6634
51776a11
SC
6635 * ecoff.c (_bfd_ecoff_find_nearest_line): Use bfd_zalloc to
6636 allocate ecoff_find_line, and don't initialize by hand.
6637 * elf32-mips.c (mips_elf_find_nearest_line): Use bfd_zalloc for
6638 mips_elf_find_line, and don't call memset.
6639
9e7427a4
ILT
6640 * coffcode.h (coff_compute_section_file_positions): If not
6641 producing a final executable, don't consider sofar when aligning
6642 the section to the correct size.
6643
6644Wed Mar 20 16:53:12 1996 Ian Lance Taylor <ian@cygnus.com>
6645
6646 * coffcode.h (coff_add_missing_symbols): Ifdef out.
6647 (coff_write_object_contents): Don't call coff_add_missing_symbols.
6648 * coffgen.c (coff_section_symbol): Ifdef out.
6649
e7f9ba4f
ILT
6650Mon Mar 18 12:54:41 1996 Ian Lance Taylor <ian@cygnus.com>
6651
6652 * elf32-mips.c (mips_elf_gprel32_reloc): Initialize gp if
6653 output_bfd is not NULL.
6654
34c4d647
DE
6655Thu Mar 14 17:12:06 1996 Doug Evans <dje@charmed.cygnus.com>
6656
6657 * coffgen.c (coff_get_normalized_symtab): Call bfd_zalloc instead
6658 of bfd_alloc (fixes fix_line not being initialized).
6659 Delete zeroing of fix_{value,tag,end,scnlen} fields.
6660
4e054247
JL
6661Thu Mar 14 16:06:06 1996 Jeffrey A Law (law@cygnus.com)
6662
57289b5c
JL
6663 * coffcode.h: Allow specific backends to override the
6664 bfd_link_add_symbols routine.
6665
4e054247
JL
6666 * coff-h8300.c: Include genlink.h.
6667 (howto_table): Add R_MEM_INDIRECT.
6668 (rtype2howto): Support R_MEM_INDIRECT.
6669 (h8300_reloc16_extra_cases): Handle R_MEM_INDIRECT like R_RELBYTE
6670 for now.
cf2cd4cf 6671
a10d3dec
ILT
6672Tue Mar 12 12:41:17 1996 David Mosberger-Tang <davidm@koala.azstarnet.com>
6673
6674 * coff-alpha.c (alpha_relocate_section): Use
6675 info->callbacks_warning, rather than _bfd_error_handler, for
6676 "multiple gp" warning.
6677
ea2488ad
ILT
6678Tue Mar 12 12:10:55 1996 Ian Lance Taylor <ian@cygnus.com>
6679
8881b321
ILT
6680 * linker.c (bfd_wrapped_link_hash_lookup): New function.
6681 (_bfd_generic_link_add_one_symbol): Remove BFD_ASSERT on hash
6682 table string. Use bfd_wrapped_link_hash_lookup.
6683 (_bfd_generic_link_write_global_symbol): Remove BFD_ASSERT on hash
6684 table string.
6685 * aoutx.h (aout_link_write_symbols): Use the name from the hash
6686 table, if any, when writing out symbols.
6687 (aout_link_input_section_std): Use the name from the hash table,
6688 if any, when reporting undefined symbols.
6689 (aout_link_input_section_ext): Likewise.
6690 (aout_link_reloc_link_order): Use bfd_wrapped_link_hash_lookup.
6691 * bout.c (get_value): Likewise.
6692 * cofflink.c (_bfd_coff_reloc_link_order): Likewise.
6693 * ecoff.c (ecoff_reloc_link_order): Likewise.
6694 * elflink.h (elf_link_add_object_symbols): Likewise.
cf2cd4cf 6695 (elf_reloc_link_order): Likewise.
8881b321
ILT
6696 * linker.c (_bfd_generic_link_output_symbols): Likewise.
6697 (_bfd_generic_reloc_link_order): Likewise.
6698 (default_indirect_link_order): Likewise.
6699 * reloc16.c (bfd_coff_reloc16_get_value): Likewise.
6700 * sunos.c (sunos_add_one_symbol): Likewise.
6701 * xcofflink.c (xcoff_link_add_symbols): Likewise.
6702 (bfd_xcoff_link_count_reloc): Likewise.
6703 (xcoff_reloc_link_order): Likewise.
6704
6705 * ecoffswap.h (ecoff_swap_fdr_in): If ECOFF_64, turn 0xffffffff
6706 into -1 for intern->rss.
6707
ea2488ad
ILT
6708 * configure: Rebuild with autoconf 2.8.
6709
c189fdfb
ILT
6710Mon Mar 11 12:28:31 1996 Ian Lance Taylor <ian@cygnus.com>
6711
6712 * stab-syms.c (__define_stab_duplicate): Define.
6713 (bfd_get_stab_name): Rename from aout_stab_name. Rewrite to use a
6714 switch.
6715 * bfd-in.h (bfd_get_stab_name): Declare.
6716 * bfd-in2.h: Rebuild.
6717 * Makefile.in: Rebuild dependencies.
6718 (BFD_LIBS): Add stab-syms.o.
6719 (BFD_LIBS_CFILES): Add stab-syms.c.
6720 (BFD32_BACKENDS): Remove stab-syms.o.
6721 (BFD32_BACKENDS_CFILES): Remove stab-syms.c.
6722 * configure.in: Don't list stab-syms.o in bfd_backends.
6723 * configure: Rebuild.
6724 * libaout.h (aout_stab_name): Don't declare.
6725 * aoutx.h (NAME(aout,get_symbol_info)): Call bfd_get_stab_name,
6726 not aout_stab_name.
6727
6728Fri Mar 8 11:26:20 1996 Ian Lance Taylor <ian@cygnus.com>
6729
6730 * elf.c (assign_file_positions_for_segments): Adjust file offset
6731 for section alignment even if SEC_LOAD is not set.
6732
c5bde1ef
ILT
6733Tue Mar 5 12:02:23 1996 Ian Lance Taylor <ian@cygnus.com>
6734
8f218e05
ILT
6735 * configure.in: Don't set SHLIB or SHLINK to an empty string,
6736 since they appear as targets in Makefile.in.
6737 * configure: Rebuild.
6738
c5bde1ef
ILT
6739 * sunos.c (sunos_scan_ext_relocs): If not making a shared library,
6740 don't fiddle with a symbol which is not defined anywhere.
6741
cb84f028
ILT
6742Mon Mar 4 12:49:16 1996 Ian Lance Taylor <ian@cygnus.com>
6743
4e59f523
ILT
6744 * xcofflink.c (xcoff_mark): Treat undefined imported symbols as
6745 though they are defined in a shared library.
6746 (xcoff_build_ldsyms): Likewise.
6747
ea2504d5
ILT
6748 * coffgen.c (coff_find_nearest_line): Don't look at the line
6749 numbers for the section if section->lineno is NULL.
6750
cb84f028
ILT
6751 * elf.c (_bfd_elf_symbol_from_bfd_symbol): Print a useful error
6752 message rather than calling BFD_ASSERT.
6753 * elfcode.h (write_relocs): Check return value of
6754 _bfd_elf_symbol_from_bfd_symbol.
6755
6e036cf7
MM
6756Fri Mar 1 09:42:59 1996 Michael Meissner <meissner@tiktok.cygnus.com>
6757
6758 * elf32-ppc.c (ppc_elf_add_symbol_hook): Don't set SEC_LOAD flag
6759 for .sbss section.
6760
d08435de
JL
6761Wed Feb 28 11:25:47 1996 Jeffrey A Law (law@cygnus.com)
6762
6763 * libhppa.h (hppa_reloc_field_selector_type): Add R_HPPA_NLSEL
6764 and R_HPPA_NLRSEL.
6765 (e_nsel, e_nlsel, e_nlrsel): Undefine. Add to
6766 hppa_reloc_field_selector_type_alt.
6767 (hppa_field_adjust): Handle e_nlsel, e_nlrsel. Fix e_nsel handling.
6768 * som.c (hppa_som_gen_reloc_type): Handle N', NL' NLR' field
6769 selectors.
6770 (som_write_fixups): Finish handling of R_N0SEL and R_N1SEL.
6771
09609415
ILT
6772Wed Feb 28 11:00:24 1996 Ian Lance Taylor <ian@cygnus.com>
6773
6774 * elf.c (assign_file_positions_for_segments): Adjust the segment
6775 memory size for the alignment of a SEC_ALLOC section, not just a
6776 SEC_LOAD section.
6777
55626bf0
ILT
6778Tue Feb 27 14:17:31 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
6779
6780 * m68klinux.c: New file.
6781 * hosts/m68klinux.h: New file.
6782 * config.bfd (m68*-*-linuxaout*, m68*-*-linux*): New targets.
6783 * configure.in (m68*-*-linux*): New native host.
6784 (m68klinux_vec): New vector.
6785 * configure: Rebuild.
6786 * targets.c (m68klinux_vec): Declare.
6787 * i386linux.c (bfd_i386linux_size_dynamic_sections): Renamed from
6788 bfd_linux_size_dynmic_sections to avoid clash with m68klinux.c.
6789 * bfd-in.h (bfd_i386linux_size_dynamic_sections): Rename
6790 declaration from bfd_linux_size_dynamic_sections.
6791 (bfd_m68klinux_size_dynamic_sections): Declare.
6792 * bfd-in2.h: Rebuild.
6793 * Makefile.in: Rebuild dependencies.
6794 (BFD32_BACKENDS): Add m68klinux.o.
6795 (BFD32_BACKENDS_CFILES): Add m68klinux.c.
6796
6c7b3090
JL
6797Tue Feb 27 11:31:34 1996 Jeffrey A Law (law@cygnus.com)
6798
6799 * libhppa.h (pa_arch): Add pa20.
6800 (hppa_reloc_field_selector_type): Add R_HPPA_NSEL.
6801 (e_nsel): Undefine. Add to hppa_reloc_field_selector_type_alt.
6802 (hppa_field_adjust): Handle e_nsel.
6803 * som.c: Provide default definitions for many new relocs found only
6804 in hpux10 include files.
6805 (som_fixup_formats): Add several new relocs from hpux10.
6806 (som_hppa_howto_table): Add hpux10 relocs.
6807 (som_write_fixups): Handle R_N0SEL and R_N1SEL hpux10 relocs.
6808
14fd4616
SS
6809Mon Feb 26 12:52:48 1996 Stan Shebs <shebs@andros.cygnus.com>
6810
6811 * mpw-make.sed: Edit out recent shared library support, and
6812 rules to rebuild .h files using doc/chew.
6813
3d9f042c
ILT
6814Mon Feb 26 14:48:39 1996 David Mosberger-Tang <davidm@AZStarNet.com>
6815
6816 * ecoff.c (ecoff_compute_section_file_positions): Adjust the file
6817 size even of sections with no contents.
6818
bdec6228
ILT
6819Mon Feb 26 14:01:13 1996 Ian Lance Taylor <ian@cygnus.com>
6820
88358469
ILT
6821 * cofflink.c (_bfd_coff_link_input_bfd): When merging, skip names
6822 starting with '$' the way we skip names starting with '.'. When
6823 updating x_endndx, don't be fooled by an index which has been
6824 merged.
6825
bdec6228
ILT
6826 * cofflink.c (_bfd_coff_link_input_bfd): Don't try to optimize a
6827 struct/union/enum type with no elements.
6828
053ae1d7
ILT
6829Sat Feb 24 11:38:58 1996 Ian Lance Taylor <ian@cygnus.com>
6830
15f4406c
ILT
6831 * bfd.c (bfd_errmsg): Handle a NULL return from strerror.
6832
c8435133
ILT
6833 * archive.c (bfd_generic_archive_p): If the first file in the
6834 archive can not be recognized as an object, don't assume that this
6835 is the wrong format.
6836
053ae1d7
ILT
6837 * elf.c (bfd_elf_set_dt_needed_name): Don't do anything if the
6838 format is not bfd_object.
6839 (bfd_elf_get_dt_soname): Likewise.
6840
ea74d979
ILT
6841Wed Feb 21 13:58:04 1996 Ian Lance Taylor <ian@cygnus.com>
6842
6843 * coff-sh.c (sh_relax_delete_bytes): Correct range of R_SH_USES
6844 reloc.
6845
871a3f3b
C
6846Tue Feb 20 16:22:44 1996 J.T. Conklin <jtc@rtl.cygnus.com>
6847
6848 * bfd.c (tdata): Add netbsd_core_data.
6849 * bfd-in2.h: Regenerated.
6850
6851Tue Feb 20 16:50:02 1996 Ian Lance Taylor <ian@cygnus.com>
6852
fe6fc35f
ILT
6853 * sunos.c (SUNOS_CONSTRUCTOR): Define.
6854 (sunos_add_one_symbol): Don't let a symbol from a dynamic object
6855 override a constructor symbol. Set SUNOS_CONSTRUCTOR when
6856 appropriate.
6857
871a3f3b
C
6858 * bout.c (b_out_squirt_out_relocs): Use udata.i rather than flags
6859 to get the symbol index, matching 14 Jul 95 change.
6860
d3785301
FF
6861Tue Feb 20 08:26:27 1996 Fred Fish <fnf@phydeaux.cygnus.com>
6862
6863 * coff-alpha.c (alpha_ecoff_get_relocated_section_contents):
6864 Remove duplicate definition of gp.
6865
60a49e7f
ILT
6866Mon Feb 19 12:37:41 1996 Ian Lance Taylor <ian@cygnus.com>
6867
81bdcecf
ILT
6868 * coff-alpha.c (alpha_ecoff_get_relocated_section_contents): Don't
6869 assume that we can set the GP value and then get the same value,
6870 since it won't be true if the output file is neither ELF nor
6871 ECOFF.
6872 * coff-mips.c (mips_adjust_reloc_in): Don't bother to use
6873 _bfd_get_gp_value here.
6874 (mips_gprel_reloc): Don't assume we can set and get the GP value.
6875 * elf32-mips.c (mips_elf_hi16_reloc): Get gp value from
6876 mips_elf_final_gp.
6877 (mips_elf_lo16_reloc): Likewise.
6878 (mips_elf_final_gp): Add pgp parameter. Set it to the GP value.
6879 Don't require that the BFD be ELF.
6880 (mips_elf_gprel16_reloc): Get gp value from mips_elf_final_gp.
6881 (mips_elf_gprel32_reloc): Likewise.
6882 (mips_elf_relocate_section): Don't assume we can set and get the
6883 GP value.
6884 (mips_elf_finish_dynamic_symbol): Don't bother to use
6885 _bfd_get_gp_value here.
6886
6887 * elf32-mips.c (mips_elf_create_procedure_table): Initialize sv.
6888 Don't change epdr between malloc and free. Be careful not to free
6889 NULL pointers. Zero out the first RPDR.
6890
7b61165a
ILT
6891 * configure.host: On Linux, only pass -rpath option if $(libdir)
6892 is neither /lib nor /usr/lib. From Alan Modra
6893 <alan@mullet.Levels.UniSA.Edu.Au>.
6894
60a49e7f
ILT
6895 * elf-bfd.h (struct elf_obj_tdata): Rename dt_needed_name to
6896 dt_name.
6897 (elf_dt_name): Rename from elf_dt_needed_name.
6898 * elf.c (bfd_elf_set_dt_needed_name): Use elf_dt_name, not
6899 elf_dt_needed_name.
6900 (bfd_elf_get_dt_soname): New function.
6901 * elflink.h (elf_link_add_object_symbols): Use elf_dt_name, not
6902 elf_dt_needed_name. Save the SONAME back in elf_dt_name.
6903 * bfd-in.h (bfd_elf_get_dt_soname): Declare.
6904 * bfd-in2.h: Rebuild.
6905
b268e261
DE
6906Mon Feb 19 02:50:23 1996 Doug Evans <dje@charmed.cygnus.com>
6907
6908 * elf32-sparc.c (elf32_sparc_reloc_type_lookup): Renamed from
6909 _bfd_sparc_elf_reloc_type_lookup.
6910 (bfd_elf32_bfd_reloc_type_lookup): Update.
6911 * elf64-sparc.c (SPARC64_OLD_RELOCS): Define.
6912 (sparc64_elf_howto_table): Define.
6913 (sparc_reloc_map): Define.
6914 (sparc64_elf_reloc_type_lookup): New function.
6915 (sparc_elf_wdisp16_reloc): New function.
6916 (elf_info_to_howto): Use sparc64_elf_howto_table.
6917 (sparc64_elf_relocate_section): Likewise.
6918 (bfd_elf64_bfd_reloc_type_lookup): Update.
6919
9e2ef098
ILT
6920Sun Feb 18 15:02:25 1996 Ian Lance Taylor <ian@cygnus.com>
6921
6922 * configure.host: Check for 'do not mix' from native linker before
6923 trying to use -rpath.
6924
4c70373f
ILT
6925Fri Feb 16 12:46:18 1996 Ian Lance Taylor <ian@cygnus.com>
6926
cba3f8a9
ILT
6927 * bfd.c (_bfd_get_gp_value): New function.
6928 (_bfd_set_gp_value): New function.
6929 * libbfd-in.h (_bfd_get_gp_value): Declare.
6930 (_bfd_set_gp_value): Declare.
6931 * libbfd.h: Rebuild.
6932 * coff-alpha.c (alpha_ecoff_get_relocated_section_contents): Use
6933 _bfd_get_gp_value and _bfd_set_gp_value rather than referring
6934 directly to the fields in the tdata information.
6935 (alpha_relocate_section): Likewise.
6936 * coff-mips.c (mips_adjust_reloc_in): Likewise.
6937 (mips_gprel_reloc): Likewise.
6938 (mips_relocate_section): Likewise.
6939 * elf32-mips.c (mips_elf_hi16_reloc): Likewise.
6940 (mips_elf_lo16_reloc): Likewise.
6941 (mips_elf_final_gp): Likewise.
6942 (mips_elf_gprel16_reloc): Likewise.
6943 (mips_elf_gprel32_reloc): Likewise.
6944 (mips_elf_relocate_section): Likewise.
6945 (mips_elf_finish_dynamic_symbol): Likewise.
6946
4c70373f
ILT
6947 * bout.c (b_out_set_arch_mach): Recognize bfd_mach_i960_jx.
6948
a0a2dd54
ILT
6949Thu Feb 15 11:29:13 1996 Ian Lance Taylor <ian@cygnus.com>
6950
f54c7482 6951 * configure.in: Call AC_PROG_CC before configure.host.
65eed095
ILT
6952 * configure: Rebuild.
6953 * configure.host: Don't set information which autoconf should
6954 figure out, namely CC, CFLAGS, LDFLAGS, AR, and RANLIB.
65eed095 6955
14293419
ILT
6956 * configure.host: Remove go32 and win32 host information, since it
6957 should no longer be needed.
6958
edf3fe48
ILT
6959 * elf.c (map_sections_to_segments): If we have a .dynamic section,
6960 then start a new segment rather than put a writable section in a
6961 readonly segment.
6962
b5e4f369
ILT
6963 * configure.host: Set RPATH_ENVVAR.
6964
f2e33e27
ILT
6965 * Makefile.in: Rebuild dependencies.
6966
a0a2dd54
ILT
6967 * elflink.c (_bfd_elf_create_linker_section): Remove unused
6968 zero_section variable.
6969
52c6bc4d
ILT
6970Thu Feb 15 10:39:17 1996 H.J. Lu <hjl@zoom.com>
6971
6972 * Makefile.in ($(srcdir)/bfd-in2.h): Rename target from bfd-in2.h.
6973 ($(srcdir)/libbfd.h): Rename from libbfd.h.
6974 ($(srcdir)/libcoff.h): Rename from libcoff.h.
6975
c9e5279f
ILT
6976Wed Feb 14 16:29:07 1996 Martin Anantharaman <martin@mail.imech.uni-duisburg.de>
6977
cb50baea
ILT
6978 * ieee.c (ieee_write_expression): Only use an R variable for a
6979 local symbol. Don't output a zero offset. Handle a zero address.
6980 (SRC_MASK, PCREL_OFFSET): Define based on KEEPMINUSPCININST.
6981 (rel32_howto, rel16_howto, rel8_howto): Use SRC_MASK and
6982 PCREL_OFFSET.
6983 (parse_expression): Don't try to handle multiple occurrences of a
6984 P variable. Handle I variables differently from X variables. Fix
6985 the order of minus expressions.
6986 (ieee_slurp_external_symbols): Generate an I variable for an NN
6987 record. Fix handling of ATI and ATX records.
6988 (ieee_slurp_sections): Only set minimal section attributes.
6989 Adjust them later, based on the section contents.
6990 (ieee_object_p): Read in the file until just after the ME record.
6991 Call ieee_slurp_section_data to set the section flags.
6992 (do_one): Add iterations parameter. Only repeat the first load
6993 item. Set the section and file reloc flags.
6994 (ieee_slurp_section_data): Set section flags. Pass iterations to
6995 do_one.
6996 (ieee_canonicalize_reloc): Handle I variables.
6997 (do_with_relocs): Only emit relocation size when necessary.
6998 Increase MAXRUN to 127. Change ov to be assigned, and take
6999 src_mask and pcrel_offset into account.
7000 (ieee_write_data_part): Skip sections that are not loaded.
7001 (ieee_write_external_part): Don't output optional last entry of WX
7002 records.
7003 (ieee_write_me_part): Make setting of me_record neater.
7004 (ieee_generic_stat_arch_elt): Get the size of an archive element.
7005
c9e5279f
ILT
7006 * syms.c (stt): Add entries for zerovars, vars, and code.
7007
7008 * elfcode.h (validate_reloc): New static function.
7009 (write_relocs): Call validate_reloc for non ELF relocs.
7010
7011 * elfxx-target.h (elf_symbol_leading_char): Define if not defined.
7012 (TARGET_BIG_SYM): Use elf_symbol_leading_char.
7013 (TARGET_LITTLE_SYM): Likewise.
7014
7015 * config.bfd (m68*-*-psos*): New target.
7016
d9d65be6
ILT
7017Tue Feb 13 15:56:22 1996 Bryan Ford <baford@snake.cs.utah.edu>
7018
7019 * i386msdos.c: Remove some #if 0 code.
7020 (msdos_write_object_contents): Don't include empty sections in the
7021 size computation, regardless of their address.
7022
7023Tue Feb 13 15:36:37 1996 Michael Meissner <meissner@tiktok.cygnus.com>
7024
7025 * elf32-ppc.c (ppc_elf_relocate_section): Don't segfault if dynboj
7026 is NULL, ie, the -r switch is used.
7027
db5970c7
ILT
7028Tue Feb 13 14:35:15 1996 Ian Lance Taylor <ian@cygnus.com>
7029
e9f03cd4
ILT
7030 * reloc.c (BFD_RELOC_MIPS_GOT_HI16): Define.
7031 (BFD_RELOC_MIPS_GOT_LO16): Define.
b7384d22 7032 (BFD_RELOC_MIPS_CALL_HI16, BFD_RELOC_MIPS_CALL_LO16): Define.
e9f03cd4
ILT
7033 * bfd-in2.h, libbfd.h: Rebuild.
7034 * elf32-mips.c (mips_reloc_map): Map new relocs.
7035
fe7c066a
ILT
7036 * configure.host: Set HDLFLAGS for *-*-hpux with --enable-shared.
7037
1ab628e4
ILT
7038 * Makefile.in ($(SHLINK)): Check ts against $(SHLIB), not
7039 $(SHLINK).
7040
db5970c7
ILT
7041 * ieee.c (get_symbol): Set the section to bfd_abs_section.
7042 (do_with_relocs): If EXEC_P is set and there are no relocs, use a
7043 simple number for the section address, rather than an expression.
7044 Limit the number of bytes between relocs to MAXRUN.
7045 (ieee_write_me_part): Set me_record to the file offset after the
7046 start address.
7047 (ieee_write_processor): New static function.
7048 (ieee_write_object_contents): Use ieee_write_processor.
7049
318b7c18
ILT
7050Fri Feb 9 10:53:00 1996 Ian Lance Taylor <ian@cygnus.com>
7051
db5970c7
ILT
7052 * configure.host: Use ${CC-gcc} when testing for -rpath on SunOS.
7053
7054 * coff-aux.c: Change include of aux.h to aux-coff.h.
318b7c18 7055
56b64690
ILT
7056Thu Feb 8 14:01:03 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
7057
7058 * elf32-m68k.c (elf_m68k_relocate_section): For a R_68K_RELATIVE
7059 relocation put the addend both in the reloc entry and the data.
7060 (elf_m68k_finish_dynamic_symbol): Likewise. Mask out marker in
7061 GOT offset value.
7062
7063 * elf32-m68k.c (elf_m68k_relocate_section): If -Bsymbolic, resolve
7064 a R_68K_PCxx reloc against a defined global symbol directly.
7065 (elf_m68k_check_relocs): Don't count such a reloc.
7066
7067 * elf32-m68k.c (elf_m68k_check_relocs): Don't record a symbol with
7068 a PLTxx reloc as dynamic. Disallow PLTxxO reloc against a local
7069 symbol for now, otherwise always record the symbol as dynamic.
7070 (elf_m68k_adjust_dynamic_symbol): If a symbol with a PLTxx reloc
7071 is not referenced by a dynamic object, and we are not making a
7072 shared object, then don't make a PLT entry. If we do make a PLT
7073 entry, make sure the symbol has been recorded as dynamic.
7074
5d649ca8
ILT
7075Wed Feb 7 13:56:06 1996 Ian Lance Taylor <ian@cygnus.com>
7076
7077 * configure.host: When making a shared library, set HLDFLAGS to
7078 pass an appropriate -rpath option. Use the make variable SONAME
7079 as the shared library soname, rather than computing it here. On
7080 SunOS, build stamp-tshlink in place of $(SHLINK).
7081 * Makefile.in (SONAME): New variable.
7082 ($(SHLINK)): Make a link to the transformed name, as well.
7083 (stamp-tshlink): New target.
7084 (install): Skip stamp-tshlink during install.
7085
8cc98cd5
MM
7086Wed Feb 7 13:37:39 1996 Michael Meissner <meissner@tiktok.cygnus.com>
7087
56b64690
ILT
7088 * elf32-ppc.c (ppc_elf_add_symbol_hook): Do not assume that the
7089 linker sections have been set up yet.
7090
8cc98cd5
MM
7091 * elf.c (make_mapping): Add an additional argument to suppress
7092 making the first section include the program headers.
7093 (map_sections_to_segments): If the user used -Ttext such that the
7094 program headers are on a different page, do not set the flags
7095 saying that this section includes the program headers.
7096
fe16107d
C
7097Tue Feb 6 14:04:49 1996 J.T. Conklin <jtc@rtl.cygnus.com>
7098
7099 * configure.in (*-*-netbsd*): Set COREFILE to netbsd-core.c.
7100 don't define TRAD_HEADER.
7101 * configure: Rebuild.
7102
7103 * netbsd-core.c: New file, support for NetBSD core files.
7104 * hosts/*nbsd.h: Removed.
7105
f1783016
DE
7106Tue Feb 6 11:47:49 1996 Doug Evans <dje@charmed.cygnus.com>
7107
7108 * reloc.c (BFD_RELOC_SPARC_[567]): New reloc types.
7109 (BFD_RELOC_SPARC_LO7 reloc type): Deleted.
7110 * libbfd.h, bfd-in2.h: Regenerated.
7111 * elf32-sparc.c (_bfd_sparc_elf_reloc_type_lookup): Renamed from
7112 bfd_elf32_bfd_reloc_type_lookup.
7113 (reloc_type{,_names}): Deleted.
7114 (_bfd_sparc_elf_howto_table): Renamed from elf_sparc_howto_table.
7115 Add sparc64 relocs.
7116 (sparc_reloc_map): Add sparc64 relocs.
7117 (sparc_elf_notsupported_reloc): New static function.
7118 (sparc_elf_wdisp16_reloc): New static function.
7119 (elf32_sparc_check_relocs): Handle R_SPARC_WDISP{16,19}.
7120 (elf32_sparc_relocate_section): Likewise.
7121 (bfd_elf32_bfd_reloc_type_lookup): Define.
7122 * elf64-sparc.c (sparc64_elf_wdisp16_reloc): Deleted.
7123 (reloc_type{,_names}): Deleted.
7124 (elf_sparc_howto_table): Deleted.
7125 (sparc_reloc_map): Deleted.
7126 (_bfd_sparc_elf_howto_table): Renamed from elf_sparc_howto_table.
7127 (bfd_elf64_bfd_reloc_type_lookup): Change from function to #define.
7128
48fd00b6
ILT
7129Tue Feb 6 12:12:22 1996 Ian Lance Taylor <ian@cygnus.com>
7130
2300e217
ILT
7131 * configure.host: Make SHLIB_CFLAGS include $(PICFLAG) on a
7132 *-*-hpux* host.
7133
48fd00b6
ILT
7134 * Makefile.in (program_transform_name): New variable.
7135 (install): Transform library name before installing it.
7136
8adca582
ILT
7137Mon Feb 5 10:38:27 1996 Ian Lance Taylor <ian@cygnus.com>
7138
cbe75cb6
ILT
7139 * archures.c (bfd_mach_i960_hx): Define.
7140 * bfd-in2.h: Rebuild.
7141 * cpu-i960.c (scan_960_mach): Accept machine "hx".
7142 (MATRIX): Expand entries for HX.
7143 (arch_info_struct): Add i960:hx entry.
7144 * bout.c (b_out_set_arch_mach): Handle bfd_mach_i960_hx.
7145 * coffcode.h (coff_set_arch_mach_hook): Handle F_I960HX.
7146 (coff_set_flags): Handle bfd_mach_i960_hx.
7147
44f795f7
ILT
7148 Support for building as a shared library, based on patches from
7149 Alan Modra <alan@spri.levels.unisa.edu.au>:
7150 * configure.in: Add AC_ARG_ENABLE for shared and commonbfdlib.
7151 New substitutions: ALLLIBS, PICFLAG, SHLIB, SHLIB_CC,
7152 SHLIB_CFLAGS, COMMON_SHLIB, PICLIST, SHLINK.
7153 * configure: Rebuild.
7154 * configure.host: If --enable-shared, adjust shared library stuff
7155 based on the host. If the host is SunOS, and the linker supports
7156 -rpath, set HLDFLAGS to use it.
7157 * Makefile.in (ALLLIBS): New variable.
7158 (PICFLAG, SHLIB, SHLIB_CC, SHLIB_CFLAGS): New variables.
7159 (COMMON_SHLIB, SHLINK): New variables.
7160 (.c.o): If PICFLAG is set, compile twice, once PIC, once normal.
7161 (STAGESTUFF): Remove variable.
7162 (all): Depend upon $(ALLLIBS) and @PICLIST@ rather than
7163 $(TARGETLIB).
7164 (stamp-ofiles): New target, like old ofiles target, but build
7165 using a temporary file and move-if-change, and touch stamp-ofiles
7166 when done.
7167 (ofiles): Just depend upon stamp-ofiles.
7168 (stamp-piclist, piclist): New targets.
7169 ($(SHLIB), $(SHLINK)): New targets.
7170 (targets.o, archures.o): Build twice if PICFLAG is set.
7171 (do_mostlyclean): Remove pic/*.o.
7172 (do_clean): Remove stamp-ofiles, $(SHLIB), $(SHLINK), piclist, and
7173 stamp-piclist.
7174 (do_distclean): Remove pic and stamp-picdir.
7175 (install): Install shared libraries.
7176 ($(OFILES)): Depend upon stamp-picdir.
7177 (stamp-picdir): New target.
7178
cb62d2bc
ILT
7179 * libcoff-in.h: Add comment reminding people that libcoff.h is a
7180 generated file.
7181 * libcoff.h: Rebuild.
7182
8adca582
ILT
7183 * elflink.h (elf_adjust_dynamic_symbol): Don't try to get the
7184 flavour of a section with no owner.
7185
7186 * elf32-mips.c (mips_elf_create_dynamic_sections): Clear
7187 ELF_LINK_NON_ELF flag.
7188 (mips_elf_create_got_section): Likewise.
7189
7190 * elf.c: Revert last change, since it breaks dynamic linking.
7191 * elf-bfd.h (struct elf_backend_data): Remove want_hdr_in_seg
7192 field.
7193 * elf32-mips.c (elf_backend_want_hdr_in_seg): Don't define.
7194 * elfxx-target.h (elf_backend_want_hdr_in_seg): Don't define.
7195 (elfNN_bed): Don't initialize want_hdr_in_seg field.
7196
7197Sun Feb 4 20:45:13 1996 Michael Meissner <meissner@tiktok.cygnus.com>
7198
7199 * elf.c (assign_file_positions_for_segments): If the backend does
7200 not want the elf header or the program headers in the address
7201 space, do not include them in the calculations.
7202
7203 * elf32-ppc.c (ppc_elf_additional_program_headers): New hook
7204 function to determine if we need additional program headers.
7205 (ppc_elf_modify_segment_map): Define as a NOP function for now.
7206 (ppc_elf_create_linker_section): .sdata2 is a read-only section.
7207
0f09ddd4
ILT
7208Sat Feb 3 23:00:03 1996 Ian Lance Taylor <ian@cygnus.com>
7209
7210 * coffcode.h: Move today's libcoff.h change into coffcode.h.
7211
b48f10ba
FF
7212Sat Feb 3 15:43:44 1996 Fred Fish <fnf@cygnus.com>
7213
0f09ddd4
ILT
7214 * libcoff.h (bfd_coff_link_add_one_symbol): Combine macro args
7215 back into one line. Some compilers (sunos 4.1.3 for example)
7216 won't accept args split across more than one line.
b48f10ba 7217
50761d3b
SC
7218Fri Feb 2 11:42:15 1996 Steve Chamberlain <sac@slash.cygnus.com>
7219
7220 * aclocal.m4 (BFD_BINARY_FOPEN): Understand cygwin32.
7221 * configure: Regenerate.
7222
9dce8260
JL
7223Fri Feb 2 12:12:16 1996 Jeffrey A Law (law@cygnus.com)
7224
7225 * elf32-hppa.c (elf32_hppa_backend_symbol_table_processing): Don't
7226 try to do arithmetic on a void *, cast it to a unsigned char * first.
7227
6c55897c
ILT
7228Thu Feb 1 16:04:06 1996 Ian Lance Taylor <ian@cygnus.com>
7229
869b7d80
ILT
7230 * elf-bfd.h (ELF_LINK_NON_ELF): Define.
7231 * elf.c (_bfd_elf_link_hash_newfunc): Set elf_link_hash_flags to
7232 ELF_LINK_NON_ELF.
7233 * elflink.h (elf_link_add_object_symbols): Reset ELF_LINK_NON_ELF
7234 flag for a newly defined symbol.
7235 (NAME(bfd_elf,record_link_assignment)): Likewise.
7236 (elf_adjust_dynamic_symbol): If ELF_LINK_NON_ELF is set, try to
7237 set the DEF or REF_REGULAR flags correctly.
7238
6f6956c6
ILT
7239 * Makefile.in (bfd-in2.h): Make bfd.h, not protos, in docdir.
7240 (libbfd.h, libcoff.h): Corresponding change.
7241
6c55897c
ILT
7242 * elf32-i386.c (elf_i386_check_relocs): Don't record a symbol with
7243 a PLT32 reloc as dynamic.
7244 (elf_i386_adjust_dynamic_symbol): If a symbol with a PLT32 reloc
7245 is not referenced by a dynamic object, and we are not making a
7246 shared object, then don't make a PLT entry. If we do make a PLT
7247 entry, make sure the symbol has been recorded as dynamic.
7248
b06136f2
SC
7249Wed Jan 31 17:23:32 1996 Steve Chamberlain <sac@slash.cygnus.com>
7250
7251 * coff-i386.c (coff_i386_reloc_type_lookup): Add BFD_RELOC_32_PCREL.
7252 * config.bfd (i[345]86-*-win32): Becomes i[345]86-*-cygwin32.
7253 (powerpcle-*-cygwin32): New.
7254 * peicode.h (add_data_entry): Get address from vma.
7255
5c867ecd
MM
7256Wed Jan 31 16:23:57 1996 Michael Meissner <meissner@tiktok.cygnus.com>
7257
7258 * elflink.c (_bfd_elf_create_linker_section): If the symbol
7259 attached to the section has already been created as an undefined
7260 symbol, treat it as if it hasn't been created yet.
7261
28c16b55
ILT
7262Wed Jan 31 16:16:53 1996 Ian Lance Taylor <ian@cygnus.com>
7263
7264 * elflink.h (elf_bfd_final_link): Don't output initial dummy
7265 symbol or section symbols if stripping all symbols and this is not
7266 a relocateable link. Don't output the symbol string table if
7267 there are no symbols.
7268 (elf_link_flush_output_syms): Don't do anything if there are no
7269 symbols to flush.
7270
d19df9b5
ILT
7271Wed Jan 31 12:55:49 1996 Richard Henderson <rth@tamu.edu>
7272
7273 * coff-aux.c: New file.
7274 * hosts/m68kaux.h: New file.
7275 * config.bfd (m68*-apple-aux*): New target.
7276 * configure.in (m68*-apple-aux*): New native host.
7277 (m68kaux_coff_vec): New vector.
7278 * configure: Rebuild.
7279 * targets.c (m68kaux_coff_vec): Declare.
7280 * coffcode.h (bfd_coff_backend_data): Add field
7281 _bfd_coff_link_add_one_symbol.
7282 (bfd_coff_link_add_one_symbol): Define.
7283 (compare_arelent_ptr): New static function if TARG_AUX.
7284 (coff_write_relocs): If TARG_AUX, sort the relocs.
7285 (coff_write_object_contents): Set A/UX aouthdr magic number.
7286 (coff_link_add_one_symbol): Define if not defined.
7287 (bfd_coff_std_swap_table): Initialize new field.
7288 * libcoff.h: Rebuild.
7289 * cofflink.c (coff_link_add_symbols): Call
7290 bfd_coff_link_add_one_symbol rather than
7291 _bfd_generic_link_add_one_symbol.
7292 * coff-m68k.c (COFF_PAGE_SIZE): Don't define if already defined.
7293 * coff-alpha.c (alpha_ecoff_backend_data): Initialize new field.
7294 * coff-mips.c (mips_ecoff_backend_data): Likewise.
7295 * Makefile.in: Rebuild dependencies.
7296 (BFD32_BACKENDS): Add coff-aux.o.
7297 (BFD32_BACKENDS_CFILES): Add coff-aux.c.
7298
a796aafd
ILT
7299Wed Jan 31 11:37:46 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
7300
7301 * elf32-m68k.c (elf_m68k_relocate_section): Fix R_68K_GOT*
7302 relocation; ignore addend with R_68K_{GOT,PLT}*O relocation.
7303
a8763553
ILT
7304Tue Jan 30 12:09:04 1996 Ian Lance Taylor <ian@cygnus.com>
7305
66761e59
ILT
7306 * Makefile.in (do_maintainer_clean): Remove $(srcdir)/bfd-in2.h,
7307 $(srcdir)/libbfd.h and $(srcdir)/libcoff.h.
7308 (maintainer-clean): Warn about deleting special files.
7309 (bfd-in2.h, libbfd.h, libcoff.h): New targets.
7310
cf5138e3
ILT
7311 * elf32-hppa.c (elf32_hppa_relocate_section): Handle indirect and
7312 warning symbols correctly.
7313 * elf32-i386.c (elf_i386_relocate_section): Likewise.
7314 * elf32-m68k.c (elf_m68k_relocate_section): Likewise.
7315 * elf32-mips.c (mips_elf_relocate_section): Likewise.
7316 * elf32-ppc.c (ppc_elf_relocate_section): Likewise.
7317 * elf32-sparc.c (elf32_sparc_relocate_section): Likewise.
7318 * elf64-sparc.c (sparc64_elf_relocate_section): Likewise.
7319
a8763553
ILT
7320 * syms.c (_bfd_stab_section_find_nearest_line): Add casts to avoid
7321 warnings.
7322
bdd2e7f1
KK
7323Mon Jan 29 14:27:24 1996 Kim Knuttila <krk@cygnus.com>
7324
cf2cd4cf 7325 * libcoff-in.h: aligned newly exported names with bfd naming
bdd2e7f1
KK
7326 conventions. Removed an erroneous define of POWERPC_LE_PE.
7327 * libcoff.h: Rebuild.
7328 * cofflink.c, coff-ppc.c: the above function name changes
7329
d2bb6c79
ILT
7330Mon Jan 29 13:06:28 1996 Ian Lance Taylor <ian@cygnus.com>
7331
eb5bc1f3
ILT
7332 From Basim Kadhim <kadhim@spock.cs.colorado.edu>:
7333 * ecoff.c (struct extsym_info): Define.
7334 (_bfd_ecoff_bfd_final_link): Pass a pointer to struct extsym_info
7335 to ecoff_link_write_external.
7336 (ecoff_link_write_external): Accept a struct extsym_info pointer.
7337 Strip symbols when appropriate.
7338
052b35d2
ILT
7339 Based on patches from Ronald F. Guilmette <rfg@monkeys.com>:
7340 * syms.c (BSF_OBJECT): Define.
7341 (bfd_print_symbol_vandf): Print 'O' for BSF_OBJECT.
7342 * bfd-in2.h: Rebuild.
7343 * elfcode.h (elf_slurp_symbol_table): Set BSF_OBJECT for an
7344 STT_OBJECT symbol.
7345 * elf.c (swap_out_syms): Only set type to STT_OBJECT if BSF_OBJECT
7346 is set.
7347
53787b23
ILT
7348 * elf32-i386.c (elf_i386_relocate_section): If -Bsymbolic, when
7349 copying relocs into a shared object, treat a defined global symbol
7350 as a local symbol.
7351 * elf32-m68k.c (elf_m68k_relocate_section): Likewise.
7352 * elf32-mips.c (mips_elf_relocate_section): Likewise.
7353 * elf32-sparc.c (elf32_sparc_relocate_section): Likewise.
7354
d2bb6c79
ILT
7355 * elflink.h (elf_link_add_object_symbols): Only set weakdef to a
7356 real defined symbol, not to a weak defined symbol.
7357
13d1a4dd
KK
7358Mon Jan 29 11:34:36 1996 Kim Knuttila <krk@cygnus.com>
7359
7360 * cofflink.c: removed the POWERPC_LE_PE hack, promoted some types
7361 and made a few static functions externs.
7362
7363 * coff-ppc.c (ppc_bfd_coff_final_link): new function, replaces the
7364 POWERPC_LE_PE hack in cofflink.
7365
7366 * libcoff-in.h: promoted the following from cofflink.c to allow
7367 _bfd_coff_final_link to be overridden - STRING_SIZE_SIZE,
cf2cd4cf 7368 coff_debug_merge_element, struct coff_debug_merge_type,
13d1a4dd
KK
7369 coff_debug_merge_hash_entry, coff_debug_merge_hash_table,
7370 coff_debug_merge_hash_table_init, coff_debug_merge_hash_table_free,
cf2cd4cf 7371 coff_debug_merge_hash_lookup, coff_link_section_info,
13d1a4dd
KK
7372 coff_final_link_info, coff_debug_merge_hash_newfunc,
7373 coff_write_global_sym, coff_link_input_bfd, coff_reloc_link_order.
7374
7375 * libcoff.h: re-gen'd
7376
86aac8ea
ILT
7377Fri Jan 26 18:33:35 1996 Ian Lance Taylor <ian@cygnus.com>
7378
7379 * syms.c: Include "bfdlink.h".
7380 (struct stab_find_info): Define.
7381 (_bfd_stab_section_find_nearest_line): New function.
7382 * libbfd-in.h (_bfd_stab_section_find_nearest_line): Declare.
7383 * libbfd.h: Rebuild.
7384 * elf-bfd.h (struct elf_obj_tdata): Add line_info field.
7385 * elf.c (_bfd_elf_find_nearest_line): Try calling
7386 _bfd_stab_section_find_nearest_line before searching the ELF
7387 symbol table. Find the closest STT_FUNC symbol, not the last one.
7388 * libcoff-in.h (coff_data_type): Add line_info field.
bdd2e7f1 7389 * libcoff.h: Rebuild.
86aac8ea
ILT
7390 * coffgen.c (coff_find_nearest_line): Try calling
7391 _bfd_stab_section_find_nearest_line before searching the COFF
7392 symbol table.
7393 * Makefile.in: Rebuild dependencies.
7394
7395Fri Jan 26 16:11:19 1996 Michael Meissner <meissner@tiktok.cygnus.com>
7396
7397 * elf32-ppc.c (R_PPC_EMB_SDA21 relocations): Make relocation size
7398 4 bytes, so we get the correct value when updating the register
7399 field in little endian mode.
7400
43d36aad
ILT
7401Thu Jan 25 12:14:16 1996 Ian Lance Taylor <ian@cygnus.com>
7402
f0a97077
ILT
7403 * libcoff-in.h (struct xcoff_tdata): Remove toc_section and
7404 entry_section fields. Add sntoc and snentry fields.
7405 * libcoff.h: Rebuild.
7406 * coffcode.h (coff_mkobject_hook): Initialize sntoc and snentry,
7407 not toc_section and entry_section (the COFF file does not have any
7408 sections at this point).
7409 (coff_write_object_contents): Set o_snentry and o_sntoc from
7410 snentry and sntoc rather than entry_section and toc_section.
7411 * coff-rs6000.c (xcoff_copy_private_bfd_data): Copy sntoc and
7412 snentry, not toc_section and entry_section.
7413 * xcofflink.c (bfd_xcoff_size_dynamic_sections): Don't set
7414 entry_section from hentry.
7415 (xcoff_link_input_bfd): If a defined symbol has XCOFF_ENTRY set,
ea2504d5 7416 set snenty.
f0a97077
ILT
7417 (xcoff_link_input_bfd): Set sntoc, not toc_section.
7418 (xcoff_write_global_symbol): Get toc_section from sntoc, rather
7419 than using toc_section directly.
7420
9b4598d0
ILT
7421 * archures.c: Add missing `.' in enum bfd_architecture.
7422 * bfd-in2.h: Rebuild.
7423
43d36aad
ILT
7424 * config.bfd (i[345]86-*-sco*elf*): Use bfd_elf32_i386_vec. From
7425 Robert Lipe <robertl@arnet.com>.
7426
eb82bc60
MM
7427Thu Jan 25 12:08:51 1996 Michael Meissner <meissner@tiktok.cygnus.com>
7428
7429 * elf32-ppc.c (ppc_elf_size_dynamic_sections): Add .rela.sdata{,2}
7430 to sections we allocate. Use bfd_zalloc to allocate initialial
7431 sections, not bfd_alloc.
7432 (ppc_elf_check_relocs): Remove BFD_ASSERTs for !shared from
7433 SDA{,2}I16 relocations.
7434 (ppc_elf_add_symbol_hook): Use the value of -G nn to determine
7435 whether to put something in .sbss or not.
7436 (ppc_elf_relocate_section): Add support for more relocations. Add
c1e65e24
MM
7437 in sec->output_offset where appropriate. Make error messages
7438 include the symbol name.
eb82bc60
MM
7439
7440 * elflink.c (_bfd_elf_create_linker_section): Lookup symbol before
7441 trying to add it to the symbol table, so _GLOBAL_OFFSET_TABLE_
7442 doesn't get redefined messages if -shared.
7443
7444 * elflink.h (elf_create_pointer_linker_section) Only bump RELA
7445 section if the rel_section field has been set up.
7446
9d621c7d
MM
7447Wed Jan 24 20:40:26 1996 Michael Meissner <meissner@tiktok.cygnus.com>
7448
7449 * elf32-ppc.c (ppc_elf_relocate_section): Fix typo in eabi
7450 relocations.
7451
75c9ddc9
DE
7452Wed Jan 24 10:38:34 1996 Doug Evans <dje@charmed.cygnus.com>
7453
7454 * elf32-sparc.c (elf32_sparc_merge_private_bfd_data): Delete checking
7455 of flags, only flags used are controlled by mach number. Bump up
7456 output file mach number to highest of input file mach numbers.
7457 (elf32_sparc_object_p): Watch for EF_SPARC_SUN_US1.
7458 (elf32_sparc_final_write_processing): Set EF_SPARC_SUN_US1 if v8plusa.
7459
72c513bc
DE
7460 * config.bfd (sparc64-*-{sysv4*,solaris2*}): Comment out
7461 bfd_elf64_sparc_vec support.
7462
3cbe19d2
MM
7463Tue Jan 23 14:33:05 1996 Michael Meissner <meissner@tiktok.cygnus.com>
7464
7465 * elf32-ppc.c (ppc_elf_copy_private_bfd_data): Don't complain if
7466 the embedded bit is set on some objects and not on others. Just
7467 or it together.
d8fd85ad
MM
7468 (ppc_elf_relocate_section): Implement R_PPC_EMB_{SDA21,RELSDA}
7469 relocations.
3cbe19d2 7470
5eb83ede
ILT
7471Tue Jan 23 14:22:45 1996 Ian Lance Taylor <ian@cygnus.com>
7472
4a3d3b42
ILT
7473 * coffcode.h (coff_new_section_hook): Don't try to align the
7474 .stabstr section.
7475
5eb83ede
ILT
7476 * coffcode.h (coff_set_section_contents): Fix the handling of the
7477 .lib section to work even if the entire section contents are
7478 written at once. From Gvran Uddeborg <gvran@uddeborg.pp.se> and
7479 Robert Lipe <robertl@arnet.com>.
7480
05f927dd
MM
7481Mon Jan 22 18:45:51 1996 Michael Meissner <meissner@tiktok.cygnus.com>
7482
7483 * elflink.h (elf_finish_pointer_linker_section): Don't allocate
7484 memory here for contents.
7485
7486 * elf32-ppc.c (ppc_elf_relocate_section): Bump up _SDA_BASE_ and
7487 _SDA2_BASE_ by 32768.
7488 (ppc_elf_size_dynamic_sections): #if out PLT code which we haven't
7489 started using. Allocate contents for .sdata and .sdata2 sections
7490 also.
7491 (ppc_elf_check_relocs): Use bfd_get_section_name in debug message,
7492 rather than _name.
7493 (ppc_elf_finish_dynamic_symbol): Remove code that attempted to
7494 size _SDA{,2}_BASE_.
7495 (ppc_elf_relocate_section): Change how sdata{,2} relocations are
7496 done.
7497
5bc513b4
DE
7498Mon Jan 22 08:52:04 1996 Doug Evans <dje@charmed.cygnus.com>
7499
5a5bac64
DE
7500 * elflink.h (elf_finish_pointer_linker_section): Fix typo.
7501
5bc513b4 7502 * archures.c (bfd_mach_sparc_v9): Renamed from bfd_mach_sparc64.
5bc513b4 7503 (bfd_mach_sparc_{v8plus,v8plusa}): Define.
5bc513b4 7504 (bfd_mach_sparc_v9a): Define.
049f3d4c 7505 (bfd_mach_sparc_v9_p): Define.
5bc513b4
DE
7506 * bfd-in2.h: Regenerated.
7507 * aoutx.h (aout,machine_type): bfd_mach_sparc64 renamed to
7508 bfd_mach_sparc_v9.
d3366d23 7509 * elf64-sparc.c (sparc64_elf_object_p): Likewise.
5bc513b4
DE
7510 * config.bfd (sparc64-*-sysv4*,sparc64-*-solaris2*): Set targ_defvec
7511 to bfd_elf32_sparc_vec.
7512 * cpu-sparc.c (arch_info_struct): Renamed from sparc_arch_info.
5bc513b4 7513 Add v8plus{,a} support.
5bc513b4 7514 Add v9a support.
768b8ade 7515 (sparc_compatible): New function.
5bc513b4 7516 * elf32-sparc.h: #include "elf/sparc.h".
75c9ddc9 7517 (elf32_sparc_merge_private_bfd_data, elf32_sparc_object_p,
5bc513b4 7518 elf32_sparc_final_write_processing): New functions.
75c9ddc9 7519 (bfd_elf32_bfd_merge_private_bfd_data, elf_backend_object_p,
5bc513b4 7520 elf_backend_final_write_processing): Define.
5bc513b4 7521
3b3753b8
MM
7522Mon Jan 22 11:21:51 1996 Michael Meissner <meissner@tiktok.cygnus.com>
7523
7524 * elf-bfd.h (struct elf_link_hash_entry): Add
7525 linker_section_pointer field.
7526 (enum elf_linker_section_enum): Enumeration for new way of
7527 creating linker dynamic sections and symbols.
7528 (elf_linker_section{,_pointers}): New structures for creating
7529 dynamic sections and symbols.
7530 (elf_obj_tdata): Add linker_section_pointers and linker_section
7531 fields.
7532 (elf_local_ptr_offsets,elf_linker_section): New accessor macros.
7533 (_bfd_elf_create_linker_section): New declarations.
7534 (_bfd_elf_find_pointer_linker_section): Ditto.
7535 (bfd_elf{32,64}_{create,finish}_pointer_linker_section): Ditto.
7536 (_bfd_elf_make_linker_section_rela): Ditto.
7537
7538 * elf.c (_bfd_elf_link_hash_newfunc): Initialize new fields.
7539
7540 * elf32-ppc.c (ppc_elf_create_dynamic_sections): Delete.
7541 (ppc_elf_create_linker_section): New function to create the
7542 sections .got, .sdata, and .sdata2.
7543 (ppc_elf_size_dynamic_sections): Zap .rela.{sdata,sdata2} if
7544 needed.
7545 (ppc_elf_check_relocs): Support more of the eabi relocations.
7546 (ppc_elf_relocate_section): Ditto.
7547 (ppc_elf_finish_dynamic_symbols): Adjust _SDA{,2}_BASE_ by 32768
7548 if the .sdata{,2} + .sbss{,2} section size is > 32k.
7549
7550 * elflink.h (elf_create_pointer_linker_section): New function to
7551 create initialized pointers in dynamic linker sections.
7552 (elf_finish_pointer_linker_section): Actually intialize the
7553 pointers created above.
7554
7555 * elfcode.h (bfd_elf{32,64}_create_pointer_linker_section): New
7556 macros to provide both 32 and 64 bit versions of
7557 elf_create_pointer_linker_section.
7558 (bfd_elf{32,64}_finish_pointer_linker_section): New macros to
7559 provide both 32 and 64 bit versions of
7560 elf_finish_pointer_linker_section.
7561
7562 * elflink.c (_bfd_elf_create_linker_section): New function to
7563 create a linker section.
7564 (_bfd_elf_find_pointer_linker_section): Find a unique pointer to a
7565 given address in the linker pointer offsets created for a given
7566 symbol.
7567 (_bfd_elf_make_linker_section_rela): Make a RELA section
7568 corresponding to the generated linker section.
7569
6b3eb07e
DE
7570Sat Jan 20 08:36:10 1996 Doug Evans <dje@canuck.cygnus.com>
7571
7572 * elf32-sparc.c (ELF_MACHINE_ALT1): Define.
7573
e7894f6b
KK
7574Thu Jan 18 18:25:34 1996 Kim Knuttila <krk@cygnus.com>
7575
7576 * coff-ppc.c (coff_ppc_relocate_section): changed TOCDEFN relocs.
7577 (coff_ppc_relocate_section): Handle special values for gcc built dlls.
7578 (dump_toc): fix diagnosing code to identify out-of-toc-bounds entries.
7579 Also begin the toc at 4 as an eye catcher ('31313131' marks the first
7580 toc entry in an objdump) for now.
cf2cd4cf 7581 (ppc_do_last, ppc_get_last): New function - needed to save processing
e7894f6b 7582 the toc owner to the end.
cf2cd4cf 7583 (ppc_coff_swap_sym_in_hook): Removed an incorrect hack for doing the
e7894f6b
KK
7584 toc owner last.
7585
cf2cd4cf
UD
7586 * cofflink.c (_bfd_coff_final_link): Added a new hack to keep the
7587 toc owner from being done till last. Must define POWERPC_LE_PC
e7894f6b
KK
7588 to enable it.
7589
7590 * coffcode.h (coff_set_alignment_hook): alignment setting for .stab
7591
7592 * peicode.h (coff_swap_scnhdr_out): set section flags for stab/str
7593 to INFO.
7594 (coff_swap_aouthdr_out): Removed a non-working hack for computing the
7595 SizeOfImage for PowerPC. Ignore the size of the .junk section.
7596
80b99ca0
ILT
7597Thu Jan 18 17:42:12 1996 Ian Lance Taylor <ian@cygnus.com>
7598
7599 * elfcore.h: Include <signal.h> before <sys/procfs.h>.
7600
df96df4c
ILT
7601Wed Jan 17 12:40:14 1996 Ian Lance Taylor <ian@cygnus.com>
7602
7603 * cpu-powerpc.c (arch_info_struct): Change last entry to not point
7604 back to first.
7605 (bfd_powerpc_arch): Point at first entry in arch_info_struct.
7606
d49ddb85
ILT
7607Tue Jan 16 15:10:49 1996 Ian Lance Taylor <ian@cygnus.com>
7608
7609 * elf.c (assign_file_positions_for_segments): Don't increment file
7610 offset for a segment which contains no loadable sections.
7611
4500a112
MM
7612Mon Jan 15 17:46:27 1996 Michael Meissner <meissner@tiktok.cygnus.com>
7613
7614 * reloc.c: Add new PowerPC relocations.
7615 * {bfd-in2,libbfd}.h: Regenerate.
7616
7617 * elf32-ppc.c (ppc_elf_howto_raw): Add more PPC relocations.
7618 (ppc_elf_reloc_type_lookup): Lookup new relocations.
7619
252239f8
ILT
7620Mon Jan 15 14:29:44 1996 Ian Lance Taylor <ian@cygnus.com>
7621
20ab764e
ILT
7622 * aoutx.h (howto_table_ext): Fix RELOC_BASE10 and RELOC_BASE22
7623 entries.
7624
0a4ffa2d
ILT
7625 * sunos.c (sunos_scan_ext_relocs): Don't fail assert if
7626 info->shared.
7627
45ca3195
ILT
7628 * coffgen.c (coff_find_nearest_line): Don't try to cache
7629 information in sections that are not owned by a BFD. From Richard
7630 Henderson <richard@atheist.tamu.edu>.
7631
252239f8
ILT
7632 * elf32-mips.c: Numerous changes to dynamic linking code, mostly
7633 from Kazumoto Kojima <kkojima@info.kanagawa-u.ac.jp>.
7634 * elflink.h (elf_link_output_extsym): Remove special check for
7635 _rld_new_interface.
7636
7637 * ecoffswap.h: Add prototypes for static functions.
7638
bd2d10c0
MM
7639Sun Jan 14 21:36:08 1996 Michael Meissner <meissner@tiktok.cygnus.com>
7640
7641 * elf32-ppc.c (ppc_elf_{unsupported,std}_reloc): Remove functions.
7642 (ppc_elf_howto_raw): Remove ppc_elf_{unsupported,std}_reloc
7643 references.
7644 (ppc_elf_relocate_section): No longer allow .sdata/.sbss sections
7645 to satisfy a TOC16 relocation. Rewrite unsupported relocation
7646 support. Begin support for R_PPC_SDA{2,}REL.
7647
1c3a295b
MM
7648Sat Jan 13 09:36:52 1996 Michael Meissner <meissner@tiktok.cygnus.com>
7649
7650 * elf32-ppc.c (ppc_elf_create_dynamic_sections): New function to
7651 create the .got and .got.neg sections.
7652 (ppc_elf_size_dynamic_sections): Call it.
7653 (ppc_elf_check_relocs): Call it.
7654 (ppc_elf_size_dynamic_sections): Support .got.neg, just like .got.
7655 (ppc_elf_check_relocs): Add error messages for relocations we
7656 don't yet support. Do not include R_PPC_SDAREL16 like a GOT
7657 relocation.
7658
57081126
MM
7659Fri Jan 12 15:27:59 1996 Michael Meissner <meissner@tiktok.cygnus.com>
7660
7661 * elf32-ppc.c (ppc_elf_fake_sections): Define, and handle the new
7662 section flags for V.4 and eabi.
7663
3c38b3df
ILT
7664Fri Jan 12 13:59:16 1996 Ian Lance Taylor <ian@cygnus.com>
7665
14899eb7
ILT
7666 * elf.c (assign_file_positions_for_segments): If a segment
7667 contains no sections, don't mark it as readable.
7668
98bb57ad
ILT
7669 * elf-bfd.h (_bfd_elf_section_from_bfd_section): Declare.
7670 * elfcode.h (_bfd_elf_section_from_bfd_section): Don't declare.
7671
02fcd126
ILT
7672 * elf.c (_bfd_elf_print_private_bfd_data): Dump contents of
7673 dynamic section, if there is one.
7674 * elf-bfd.h (struct elf_size_info): Add swap_dyn_in field.
7675 (bfd_elf32_swap_dyn_in): Change type of second parameter to PTR.
7676 (bfd_elf64_swap_dyn_in): Likewise.
7677 * elfcode.h (elf_swap_dyn_in): Change type of second parameter to
7678 PTR.
7679 (NAME(_bfd_elf,size_info)): Initialize swap_dyn_in field.
7680
3c38b3df
ILT
7681 * elf32-i386.c (elf_i386_size_dynamic_sections): Don't create a
7682 DT_TEXTREL entry because of .rel.plt. From Martin Pirker
7683 <pirker@eiunix.tuwien.ac.at>.
7684
83f4323e
MM
7685Thu Jan 11 17:06:14 1996 Michael Meissner <meissner@tiktok.cygnus.com>
7686
7687 * section.c (SEC_{EXCLUDE,SORT_ENTRIES}): New section flags for
7688 PowerPC V.4 and eabi.
7689 * bfd-in2.h: Regenerate.
7690 * libfd.h: Regenerate.
7691
7692 * elfxx-target.h (TARGET_{BIG,LITTLE}_SYM): Add new flags.
7693
7694 * elf32-ppc.c (ppc_elf_section_from_shdr): Support SHT_ORDERED
7695 section type and SHF_EXCLUDE section flag, turning them into the
7696 appropriate bfd section flag.
7697
a0271667
ILT
7698Thu Jan 11 11:23:30 1996 Ian Lance Taylor <ian@cygnus.com>
7699
c9746fb6
ILT
7700 * xcofflink.c (xcoff_link_add_symbols): Create the special
7701 sections if we see a DYNAMIC object, in case that is the only
7702 XCOFF input object we see.
cf2cd4cf 7703
5b3b9ff6
ILT
7704 * elf32-mips.c: Extensive changes for a start at dynamic linking
7705 support, from Kazumoto Kojima <kkojima@info.kanagawa-u.ac.jp>.
7706
7707 * elf-bfd.h (struct elf_backend_data): Add type_change_ok field.
7708 (struct elf_backend_data): Remove
7709 elf_backend_create_program_headers field. Add
7710 elf_backend_additional_program_headers and
7711 elf_backend_modify_segment_map fields.
7712 * elfxx-target.h (elf_backend_type_change_ok): Define if not
7713 defined.
7714 (elf_backend_additional_program_headers): Likewise.
7715 (elf_backend_modify_segment_map): Likewise.
7716 (elf_backend_create_program_headers): Don't define.
7717 (elfNN_bed): Change to account for field changes.
7718 * elf.c (assign_file_positions_for_segments): Call new
7719 modify_segment_map backend function. Don't call old
7720 create_program_headers backend function.
7721 (get_program_header_size): Call additional_program_headers rather
7722 than create_program_headers.
7723 * elflink.h (elf_link_add_object_symbols): Initialize
7724 type_change_ok from new backend field.
7725 (elf_link_output_extsym): Don't warn if _rld_new_interface is
7726 defined.
7727 (elf_reloc_link_order): Treat a reloc against a defined symbol as
7728 a reloc against the appropriate section.
7729
761f377f
ILT
7730 * elf-bfd.h (struct bfd_elf_section_data): Add tdata field.
7731 (struct elf_obj_tdata): Rename ppc_flags_init field to flags_init.
7732 (elf_flags_init): Rename from elf_ppc_flags_init.
7733 * elf32-ppc.c (ppc_elf_set_private_flags): Use elf_flags_init, not
7734 elf_ppc_flags_init.
7735 (ppc_elf_copy_private_bfd_data): Likewise.
7736 (ppc_elf_merge_private_bfd_data): Likewise.
7737
a0271667
ILT
7738 * elf32-m68k.c (howto_table): Change src_mask to 0 for all
7739 relocation entries.
7740
64d5f5d0
ILT
7741Tue Jan 9 15:22:53 1996 David Mosberger-Tang <davidm@azstarnet.com>
7742
7743 * coff-alpha.c (alpha_relocate_section): During final link, allow
7744 output .lita section to be bigger than 64k by adjusting gp value
7745 on a per-input section basis.
7746 * libecoff.h (struct ecoff_tdata): Add issued_multiple_gp_warning
7747 field.
7748 (struct ecoff_section_tdata): Add gp field.
7749
c40d9c77
ILT
7750Tue Jan 9 12:00:36 1996 Ian Lance Taylor <ian@cygnus.com>
7751
64d5f5d0
ILT
7752 Handle Alpha ECOFF changes in OSF/1 3.2.
7753 * libecoff.h (struct ecoff_backend_data): Add get_elt_at_filepos
7754 field.
7755 * coff-alpha.c: Include "aout/ar.h".
7756 (alpha_ecoff_get_relocated_section_contents): Don't require an
7757 ALPHA_R_IGNORE reloc after an ALPHA_R_GPDISP reloc, since OSF/1
7758 3.2 doesn't generate one.
7759 (alpha_relocate_section): Likewise.
7760 (alpha_ecoff_slurp_armap): Define.
7761 (alpha_ecoff_slurp_extended_name_table): Define.
7762 (alpha_ecoff_construct_extended_name_table): Define.
7763 (alpha_ecoff_truncate_arname): Define.
7764 (alpha_ecoff_write_armap): Define.
7765 (alpha_ecoff_generic_stat_arch_elt): Define.
7766 (alpha_ecoff_update_armap_timestamp): Define.
7767 (ARFZMAG): Define.
7768 (alpha_ecoff_read_ar_hdr): New static function.
7769 (alpha_ecoff_get_elt_at_filepos): New static function.
7770 (alpha_ecoff_openr_next_archived_file): New static function.
7771 (alpha_ecoff_get_elt_at_index): New static function.
7772 (alpha_ecoff_backend_data): Initialize get_elt_at_filepos field.
7773 (ecoffalpha_little_vec): Change BFD_JUMP_TABLE_ARCHIVE from
7774 _bfd_ecoff to alpha_ecoff.
7775 * ecoff.c (ecoff_link_add_archive_symbols): Use get_elt_at_filepos
7776 field from backend structure, rather than always calling
7777 _bfd_get_elt_at_filepos.
7778 * coff-mips.c (mips_ecoff_backend_data): Initialize
7779 get_elt_at_filepos field.
7780 * archive.c (_bfd_generic_read_ar_hdr_mag): New function, copied
7781 from _bfd_generic_read_ar_hdr with minor changes.
7782 (_bfd_generic_read_ar_hdr): Use _bfd_generic_read_ar_hdr_mag.
7783 * libbfd-in.h (_bfd_generic_read_ar_hdr_mag): Declare.
7784 * libbfd.h: Rebuild.
7785
7786 * bfd-in.h (BFD_IN_MEMORY): Define.
7787 * libbfd-in.h (struct bfd_in_memory): Define.
7788 * libbfd.c (bfd_read): Handle BFD_IN_MEMORY flag.
7789 (bfd_get_file_window): Don't try to map a BFD_IN_MEMORY file.
7790 (bfd_write, bfd_stat): Abort if BFD_IN_MEMORY is set.
7791 (bfd_tell, bfd_flush, bfd_seek): Handle BFD_IN_MEMORY flag.
7792 * bfd.c (struct _bfd): Change iostream field from char * to PTR.
7793 (bfd_get_size): Handle BFD_IN_MEMORY flag.
7794 * cache.c (bfd_cache_close): Ignore BFD_IN_MEMORY files.
7795 (bfd_open_file): Cast to PTR, not char *, when setting iostream.
7796 (bfd_cache_lookup_worker): Abort if BFD_IN_MEMORY is set.
7797 * opncls.c (bfd_fdopenr): Cast to PTR, not char *, when setting
7798 iostream.
7799 (bfd_openstreamr): Likewise.
7800 * aoutx.h (NAME(aout,some_aout_object_p)): Only fstat iostream if
7801 BFD_IN_MEMORY is not set.
7802 * riscix.c (riscix_some_aout_object_p): Likewise.
7803 * bfd-in2.h, libbfd.h: Rebuild.
7804
7805 * targets.c (bfd_target): Add _bfd_get_elt_at_index field.
7806 (BFD_JUMP_TABLE_ARCHIVE): Add _get_elt_at_index.
7807 (bfd_get_elt_at_index): Define.
7808 * archive.c (_bfd_generic_get_elt_at_index): Rename from
7809 bfd_get_elt_at_index. Change index parameter from int to
7810 symindex.
7811 * libbfd-in.h (_bfd_generic_get_elt_at_index): Declare.
7812 (_bfd_noarchive_get_elt_at_index): Define.
7813 (_bfd_archive_bsd_get_elt_at_index): Define.
7814 (_bfd_archive_coff_get_elt_at_index): Define.
7815 * bfd-in2.h, libbfd.h: Rebuild.
7816 * aout-target.h (MY_get_elt_at_index): Define if not defined.
7817 * coff-rs6000.c (xcoff_get_elt_at_index): Define.
7818 * ieee.c (ieee_get_elt_at_index): Define.
7819 * libecoff.h (_bfd_ecoff_get_elt_at_index): Define.
7820 * oasys.c (oasys_get_elt_at_index): Define.
7821 * som.c (som_get_elt_at_index): Define.
7822
c40d9c77
ILT
7823 * ecoff.c (_bfd_ecoff_find_nearest_line): Don't restrict line
7824 numbers to the .text section.
7825
efa77952
ILT
7826Mon Jan 8 17:00:57 1996 Ian Lance Taylor <ian@cygnus.com>
7827
7828 * ieee.c (ieee_write_debug_part): Change return type to boolean.
7829 If there is a SEC_DEBUGGING section, get the contents of the debug
7830 information part from it.
7831 (ieee_set_section_contents): Store the contents of a SEC_DEBUGGING
7832 section in memory.
7833 (ieee_write_object_contents): Check ieee_write_debug_part return.
7834
767f22d5
FF
7835Thu Jan 4 17:12:37 1996 Fred Fish <fnf@cygnus.com>
7836
7837 * config.bfd (i[345]86-*-freebsd*): Add target.
7838 * configure.in (i386freebsd_vec): Add vec.
7839 * configure: Regenerate.
7840 * Makefile.in (BFD32_BACKENDS): Add i386freebsd.o.
7841 (BFD32_BACKENDS_CFILES): Add i386freebsd.c.
7842 Rebuild dependencies..
7843 * freebsd.h: New file.
7844 * i386freebsd.c: New file.
7845 * targets.c (i386freebsd_vec): Declare.
7846 (bfd_target_vector): Add i386freebsd_vec.
7847 * i386linux.c (SEGMENT_SIZE): Define as TARGET_PAGE_SIZE
7848 * i386netbsd.c (SEGMENT_SIZE): Define as TARGET_PAGE_SIZE
cf2cd4cf 7849
f8254a3c
ILT
7850Thu Jan 4 16:27:46 1996 Ian Lance Taylor <ian@cygnus.com>
7851
7852 * ieee.c (ieee_slurp_debug): New static function.
7853 (ieee_object_p): Call it.
7854 (ieee_slurp_section_data): Skip debugging sections.
7855 (ieee_get_reloc_upper_bound): Likewise.
7856 (ieee_get_section_contents): Likewise.
7857 (ieee_canonicalize_reloc): Likewise.
7858 (ieee_write_section_part): Likewise.
7859 (ieee_write_debug_part): Likewise.
7860 (ieee_write_data_part): Likewise.
7861 (init_for_output): Likewise.
7862
07a159db
MM
7863Wed Jan 3 19:42:47 1996 Michael Meissner <meissner@wogglebug.tiac.net>
7864
7865 * elf32-ppc.c (ppc_elf_relocate_section): Make @GOT relocations
7866 work.
7867 (ppc_elf_howto_raw): Just use bfd_elf_generic_reloc for all howto
7868 relocs, since ppc_elf_relocate_section handles the linker case.
7869 (ppc_elf_{addr16_ha,got16,toc16,brtaken}_reloc): Delete, no longer
7870 used.
7871 (ppc_elf_{addr16_ha,got16,toc16,brtaken}_inner): Merge these into
7872 ppc_elf_relocate_section since that is now the only caller.
7873 (ppc_elf_relocate_section): Ditto.
7874
d812945a
ILT
7875Wed Jan 3 15:11:30 1996 Ian Lance Taylor <ian@cygnus.com>
7876
7877 * coffcode.h (coff_write_object_contents): If we don't know the
7878 section of the entry point for an XCOFF executable, always set the
7879 entry address to -1.
7880
3a56d0b4
MM
7881Tue Jan 2 14:17:15 1996 Michael Meissner <meissner@tiktok.cygnus.com>
7882
7883 * elf.c (bfd_section_from_shdr): Add support for note sections.
7884
c4406e50
ILT
7885Tue Jan 2 13:10:25 1996 Ian Lance Taylor <ian@cygnus.com>
7886
d812945a
ILT
7887 * bfd-in.h (struct _symbol_info): Add stab_type field.
7888 * bfd-in2.h: Rebuild.
7889 * aoutx.h (NAME(aout,get_symbol_info)): Set stab_type.
7890
c4406e50
ILT
7891 * elf32-ppc.c: Remove trailing newline from calls to
7892 _bfd_error_handler.
7893 (ppc_elf_merge_private_bfd_data): Only warn about endianness
7894 difference if target endianness is known.
7895
08556813
MM
7896Thu Dec 21 12:43:49 1995 Michael Meissner <meissner@tiktok.cygnus.com>
7897
7898 * elf32-ppc.c (ppc_elf_howto_raw): Add a phony reloc to handle the
7899 old style TOC16 references without using R_PPC_GOT.
7900 (ppc_reloc_type): Ditto.
7901 (ppc_elf_reloc_type_lookup): Add support for TOC16.
7902 (ppc_elf_toc16_inner): Renamed from ppc_elf_got16_inner.
7903 (ppc_elf_toc16_reloc): Renamed from ppc_elf_toc16_reloc.
7904 (ppc_elf_got16_{inner,reloc}): Stubs for real GOT support.
7905 (ppc_elf_check_relocs): New function for GOT/PLT support that is
7906 work in progress.
7907 (ppc_elf_adjust_dynamic_symbol): Ditto.
7908 (ppc_elf_adjust_dynindx): Ditto.
7909 (ppc_elf_size_dynamic_sections): Ditto.
7910 (ppc_elf_finish_dynamic_symbol): Ditto.
7911 (ppc_elf_finish_dynamic_sections): Ditto.
7912 (ELF_DYNAMIC_INTERPRETER): Define.
7913
86587dd4
KR
7914Wed Dec 20 19:14:18 1995 Ken Raeburn <raeburn@cygnus.com>
7915
7916 * elf.c (copy_private_bfd_data): When attaching sections to
7917 segments ignore sections that won't be allocated. Patch from
7918 Andreas Schwab.
7919
bf7f243f
KR
7920Tue Dec 19 20:01:43 1995 Ken Raeburn <raeburn@cygnus.com>
7921
7922 * config.bfd: Match on m68k-cbm-* only if OS doesn't match
7923 anything else.
7924
d9518e2e
ILT
7925Tue Dec 19 16:38:59 1995 Ian Lance Taylor <ian@cygnus.com>
7926
7927 * coff-i960.c (CALC_ADDEND): Define.
7928 (coff_i960_relocate_section): Add the input section VMA to the
7929 addend for PC relative relocs.
7930
7931Sun Dec 17 20:11:55 1995 Kim Knuttila <krk@cygnus.com>
7932
7933 * peicode.h (pe_print_pdata): Must test the entire entry for zero
7934 to correctly terminate.
7935
010a405a
ILT
7936Fri Dec 15 12:05:57 1995 Ian Lance Taylor <ian@cygnus.com>
7937
dc092b6b
ILT
7938 * targets.c (enum bfd_endian): Define.
7939 (bfd_target): Rename byteorder_big_p to byteorder, and change it
7940 from boolean to enum bfd_endian. Change header_byteorder_big_p
7941 correspondingly.
7942 * bfd-in.h (bfd_big_endian, bfd_little_endian): New macros.
7943 (bfd_header_big_endian, bfd_header_little_endian): New macros.
7944 * bfd-in2.h: Rebuild.
7945 * All targets: Change initialization of byteorder and
7946 header_byteorder to use enum bfd_endian values rather than
7947 booleans.
7948 * All files: Change all references to byteorder_big_p and
7949 header_byteorder_big_p to use new bfd_*_endian macros.
7950
010a405a
ILT
7951 * coffgen.c (make_a_section_from_file): Set lma to s_paddr, not
7952 s_vaddr.
7953 * coffcode.h (coff_write_object_contents): Set s_paddr to lma, not
7954 vma.
7955 * ecoff.c (_bfd_ecoff_write_object_contents): Likewise.
7956
fcb43906
SC
7957Fri Dec 15 07:32:09 1995 steve chamberlain <sac@slash.cygnus.com>
7958
7959 * pe[i]-i386.c (TARGET_UNDERSCORE): Define to '_'.
7960
0d709d31
ILT
7961Thu Dec 14 13:45:37 1995 Ian Lance Taylor <ian@cygnus.com>
7962
14578105
ILT
7963 * ieee.c: Lots of minor cleanups. Make many functions return
7964 errors rather than calling abort. Also:
7965 (ieee_write_twobyte): Remove; change callers to call existing
7966 ieee_write_2bytes function.
7967 (ieee_write_expression): Don't output the section twice when
7968 outputting a local symbol. Don't emit an extraneous zero if there
7969 is only one term.
7970 (ieee_slurp_sections): Set the lma as well as the vma.
7971 (ieee_archive_p): Use bfd_alloc_grow rather than an obstack.
7972
0d709d31
ILT
7973 * ihex.c (ihex_set_arch_mach): Don't accept any architecture, just
7974 a recognized one or bfd_arch_unknown.
7975 (ihex_get_symtab_upper_bound): Define as bfd_0l, to permit objcopy
7976 to succeed.
7977 (ihex_get_symtab): Likewise.
7978
14dc2f77
ILT
7979Wed Dec 13 15:44:06 1995 Ian Lance Taylor <ian@cygnus.com>
7980
7981 * aoutx.h: Include <ctype.h>.
7982 (struct aout_link_includes_table): Define.
7983 (struct aout_link_includes_totals): Define.
7984 (struct aout_link_includes_entry): Define.
7985 (aout_link_includes_lookup): Define macro.
7986 (struct aout_final_link_info): Add includes field.
7987 (aout_link_includes_newfunc): New static function.
7988 (NAME(aout,final_link)): Initialize includes hash table.
7989 (aout_link_write_symbols): Eliminate duplicate N_BINCL entries.
7990
480ccad5
SS
7991Wed Dec 13 10:52:14 1995 Stan Shebs <shebs@andros.cygnus.com>
7992
7993 * mpw-config.in: Match on mips-*-* instead of mips-idt-ecoff.
7994
3920d9c9
KK
7995Wed Dec 13 11:07:45 1995 Kim Knuttila <krk@cygnus.com>
7996
7997 * coff-ppc.c (coff_ppc_relocate_section): removed debugging code.
7998
207345f2
KK
7999Tue Dec 12 17:42:06 1995 Kim Knuttila <krk@cygnus.com>
8000
8001 * peicode.h (pe_print_reloc): New function to dump the .reloc section.
8002 (pe_print_private_bfd_data): call pe_print_reloc.
8003 * coffcode.h (coff_set_alignment_hook): .reloc section alignment.
8004 * coff-ppc.c (in_reloc_p): Added missing non-eligible relocs. Spiffed
8005 up some debugging as well.
8006
273c019e
ILT
8007Tue Dec 12 11:34:23 1995 Ian Lance Taylor <ian@cygnus.com>
8008
8009 * config.bfd: Handle sparc-*-elf*. From Ronald F. Guilmette
8010 <rfg@monkeys.com>.
8011
010d9f2d
ILT
8012Fri Dec 8 17:47:07 1995 Ian Lance Taylor <ian@cygnus.com>
8013
8014 * elflink.h (elf_link_add_object_symbols): Set section_count to 0
8015 when setting sections to NULL.
8016
4a4a66bd
ILT
8017Wed Dec 6 17:05:37 1995 Ian Lance Taylor <ian@cygnus.com>
8018
8019 * xcofflink.c (struct xcoff_loader_info): Add export_defineds
8020 field.
8021 (bfd_xcoff_size_dynamic_sections): Add export_defineds parameter.
8022 (xcoff_build_ldsyms): If export_defineds is set, set XCOFF_EXPORT
8023 for all symbols.
8024 * bfd-in.h (bfd_xcoff_size_dynamic_sections): Update declaration.
8025 * bfd-in2.h: Rebuild.
8026
545bf026
KK
8027Mon Dec 4 16:40:47 1995 Kim Knuttila <krk@cygnus.com>
8028
8029 * coffcode.h (coff_set_alignment_hook): Removed some debugging printf's
8030
1f4ae0d6
ILT
8031Mon Dec 4 11:25:39 1995 Ian Lance Taylor <ian@cygnus.com>
8032
55cac920
ILT
8033 * ihex.c (ihex_scan): Handle record types 4 and 5.
8034 (ihex_object_p): Permit types 4 and 5.
8035 (ihex_set_section_contents): Remove check for out of range
8036 addresses.
8037 (ihex_write_object_contents): Generate types 4 and 5.
8038
1f4ae0d6
ILT
8039 * elflink.h (elf_link_output_extsym): Just ignore warning and
8040 indirect references to symbols which don't really exist.
8041
53d45489
KK
8042Sun Dec 3 19:00:27 1995 Kim Knuttila <krk@cygnus.com>
8043
8044 * peicode.h (pe_print_idata): Minor format fixes
8045 (pe_print_edata): New function. Under private printing, this formats
8046 the edata section of a PE file.
8047 (pe_print_private_bfd_data): Added call to pe_print_edata.
8048
361e8876
DE
8049Sun Dec 3 16:46:54 1995 Richard Earnshaw (rearnsha@armltd.co.uk)
8050
8051 * aout-arm.c (MY_swap_std_reloc_out): Use KEEPIT to get the symbol
8052 index, don't call stoi.
8053
58142f10
ILT
8054Fri Dec 1 14:46:51 1995 Ian Lance Taylor <ian@cygnus.com>
8055
ffd15489
ILT
8056 * srec.c (srec_scan): Set lma as well as vma.
8057
8058 * ihex.c: New file; support for Intel Hex format.
8059 * targets.c (enum bfd_flavour): Add bfd_target_ihex_flavour.
8060 (ihex_vec): Declare.
8061 (bfd_target_vector): Always include ihex_vec.
8062 * bfd.c (struct _bfd): Add ihex_data field to tdata union.
8063 * Makefile.in: Rebuild dependencies.
8064 (BFD_LIBS): Add ihex.o
8065 (BFD_LIBS_CFILES): Add ihex.c.
8066 * bfd-in2.h: Rebuild.
8067
ae0a6bea
ILT
8068 * elf.c (assign_file_positions_for_segments): Sort the sections in
8069 each segment.
8070 (get_program_header_size): Return the right size if segment_map is
8071 not NULL.
8072 (copy_private_bfd_data): Don't bother to sort the sections.
8073
8074 * bfd.c (bfd_record_phdr): New function.
8075 * bfd-in.h (bfd_record_phdr): Declare.
8076 * bfd_in2.h: Rebuild.
8077
ce0ee4bf
ILT
8078 * elf32-sparc.c (elf32_sparc_relocate_section): Remove bogus
8079 BFD_ASSERT.
8080
58142f10
ILT
8081 * libbfd.c (bfd_malloc, bfd_realloc): New functions.
8082 (bfd_zmalloc): Return PTR, not char *. Take size_t, not
8083 bfd_size_type.
8084 * libbfd-in.h (bfd_malloc, bfd_realloc): Declare.
8085 (bfd_zmalloc): Change declaration.
8086 * libbfd.h: Rebuild.
8087 * Many files: Use bfd_malloc and bfd_realloc rather than malloc
8088 and realloc. Don't set bfd_error_no_memory if they fail.
8089
59066248
KK
8090Thu Nov 30 19:32:26 1995 Kim Knuttila <krk@cygnus.com>
8091
8092 * coff-ppc.c: Added macros to tidy up toc cell treatment. Numerous
cf2cd4cf 8093 uses as well. Added a new howto to deal with TOCREL16 relocs that
59066248
KK
8094 are TOCDEFN as well.
8095 (coff_ppc_relocate_section): Expanded treatment of ADDR32NB relocs
8096 to handle RVA relocs from dlltool.
8097 (ppc_coff_rtype2howto): TOCDEFN reloc addition.
8098 (coff_ppc_rtype_to_howto): TOCDEFN reloc addition.
8099 (ppc_coff_reloc_type_lookup): TOCDEFN reloc addition.
8100
cf2cd4cf 8101 * coffcode.h (coff_set_alignment_hook): check idata$X sections
59066248
KK
8102 to get the right section alignment.
8103
6933148a
ILT
8104Thu Nov 30 16:48:18 1995 Ian Lance Taylor <ian@cygnus.com>
8105
8106 * elf.c (_bfd_elf_make_section_from_shdr): Don't set lma based on
8107 p_paddr if p_paddr is zero.
8108 (make_mapping): Set includes_filehdr and includes_phdrs for first
8109 PT_LOAD segment.
8110 (map_sections_to_segments): Set includes_phdrs for PT_PHDR
8111 segment.
8112 (assign_file_positions_for_segments): Handle includes_filehdr and
8113 includes_phdrs. Remove special handling of PT_PHDR and first
8114 PT_LOAD segments.
8115 (copy_private_bfd_data): Set includes_filehdr and includes_phdr
8116 when appropriate. Remove special handling of PT_PHDR segment.
8117 Use a more complex condition for when a section is included in a
8118 segment to handle Solaris linker oddities.
8119
f62fed1c
ILT
8120Thu Nov 30 11:17:33 1995 Manfred Hollstein KS/EF4A 60/1F/110 #40283 <manfred@lts.sel.alcatel.de>
8121
8122 * coff-m88k.c (howto_table): Reformatted for easier reading;
8123 special_function now points to new function m88k_special_reloc.
8124 (howto_hvrt16): Function previously used for handling HVRT16 relocs
8125 removed.
8126 (rtype2howto): Do not add reloc's r_offset to the addend, this will
8127 be done correctly by m88k_special_reloc.
8128 (reloc_processing): New function to be used by RELOC_PROCESSING.
8129 (RELOC_PROCESSING): Define to call reloc_processing.
8130
64ecde46
ILT
8131Wed Nov 29 12:42:36 1995 Ian Lance Taylor <ian@cygnus.com>
8132
b00c57ec
ILT
8133 * peicode.h (pe_print_idata): Call malloc rather than xmalloc.
8134 (pe_print_pdata): Likewise.
8135
a9713b91
ILT
8136 * opncls.c (bfd_alloc_by_size_t): Set bfd_error_no_memory if
8137 obstack_alloc fails.
8138 (bfd_alloc_finish): Set bfd_error_no_memory if obstack_finish
8139 fails.
8140 * libbfd.c (bfd_zmalloc): Set bfd_error_no_memory if malloc fails.
8141 * Many files: don't set bfd_error_no_memory if one of the above
8142 routines fails.
8143
3dbf33ee
ILT
8144 * elf.c (assign_file_positions_for_segments): Don't adjust p_paddr
8145 if p_paddr_valid is set.
8146 (copy_private_bfd_data): New static function.
8147 (_bfd_elf_copy_private_section_data): Call copy_private_bfd_data.
8148
44ef8897
ILT
8149 * elf.c (assign_file_positions_for_segments): Fix case where extra
8150 program headers were allocated.
8151
27fb8f29
ILT
8152 * elf.c (_bfd_elf_print_private_bfd_data): New function.
8153 * elf-bfd.h (_bfd_elf_print_private_bfd_data): Declare.
8154 * elfxx-target.h (bfd_elfNN_bfd_print_private_bfd_data): Define to
8155 _bfd_elf_print_private_bfd_data.
8156
64ecde46
ILT
8157 * coff-alpha.c (alpha_ecoff_swap_reloc_in): Don't abort if
8158 r_symndx is RELOC_SECTION_NONE for an ALPHA_R_IGNORE reloc.
8159 Change a RELOC_SECTION_LITA symndx to RELOC_SECTION_ABS.
8160 (alpha_ecoff_swap_reloc_out): Change RELOC_SECTION_ABS to
8161 RELOC_SECTION_LITA for ALPHA_R_IGNORE.
8162 (alpha_adjust_reloc_out): For ALPHA_R_IGNORE, don't change
8163 RELOC_SECTION_ABS to RELOC_SECTION_NONE.
8164
fd0198f0
ILT
8165Tue Nov 28 16:59:50 1995 Ian Lance Taylor <ian@cygnus.com>
8166
8167 * elf-bfd.h (struct elf_obj_tdata): Add segment_map field.
8168 * elf.c (make_mapping): New static function.
8169 (map_sections_to_segments): New static function.
8170 (elf_sort_sections): New static function.
8171 (assign_file_positions_for_segments): New static function.
8172 (map_program_segments): Remove.
8173 (get_program_header_size): Remove sorted_hdrs, count, and
8174 maxpagesize parameters. Simplify.
8175 (assign_file_positions_except_relocs): When generating an
8176 executable, use assign_file_positions_for_segments.
8177 (elf_sort_hdrs): Remove.
8178 (_bfd_elf_sizeof_headers): Remove eliminated parameters from call
8179 to get_program_header_size.
8180
3b3f7625
ILT
8181Mon Nov 27 12:27:46 1995 Ian Lance Taylor <ian@cygnus.com>
8182
1ff0461b
ILT
8183 * hp300hpux.c (MY(callback)): Set lma as well as vma.
8184
80c8485c
ILT
8185 * configure, config.in: Regenerate with autoconf 2.7.
8186
3b3f7625
ILT
8187 * elf32-i386.c (elf_backend_plt_readonly): Set correctly, to 1.
8188 * elf32-sparc.c (elf_backend_plt_readonly): Set correctly, to 0.
8189
fa63d1ef
ILT
8190Wed Nov 22 12:02:09 1995 Ian Lance Taylor <ian@cygnus.com>
8191
a877f591
ILT
8192 * ecoff.c (_bfd_ecoff_new_section_hook): Handle .rconst section.
8193 (ecoff_sec_to_styp_flags): Likewise.
8194 (_bfd_ecoff_styp_to_sec_flags): Handle STYP_RCONST.
8195 (ecoff_set_symbol_info): Handle scRConst.
8196 (ecoff_slurp_reloc_table): Handle RELOC_SECTION_RCONST.
8197 (ecoff_compute_section_file_positions): Handle .rconst section.
8198 (_bfd_ecoff_write_object_contents): Likewise.
8199 (ecoff_link_check_archive_element): Handle scRConst.
8200 (ecoff_link_add_externals): Likewise.
8201 (ecoff_link_write_external): Handle .rconst section.
8202 (ecoff_reloc_link_order): Likewise.
8203 * ecofflink.c (bfd_ecoff_debug_accumulate): Handle scRConst.
8204 * coff-alpha.c (alpha_convert_external_reloc): Handle .rconst
8205 section.
8206 (alpha_relocate_section): Handle RELOC_SECTION_RCONST.
8207
fa63d1ef
ILT
8208 * sunos.c (sunos_scan_dynamic_symbol): Only set written if the
8209 DEF_DYNAMIC flag is set.
8210
25bada65
KR
8211Tue Nov 21 13:25:29 1995 Ken Raeburn <raeburn@cygnus.com>
8212
8213 * host-aout.c: If TRAD_HEADER is defined, include it.
8214
7938b4cb
ILT
8215Tue Nov 21 13:03:57 1995 Ian Lance Taylor <ian@cygnus.com>
8216
85e493f0
ILT
8217 * aclocal.m4 (AC_PROG_CC): Remove local definition.
8218 (BFD_BINARY_FOPEN): Require AC_CANONICAL_SYSTEM.
8219 (BFD_NEED_DECLARATION): New function.
8220 * configure.in: Use BFD_NEED_DECLARATION.
bd77213b
ILT
8221 * acconfig.h: Put NEED_DECLARATION_* in @TOP@ section.
8222 * configure, config.in: Rebuild with autoconf 2.6.
85e493f0 8223
83dcdc61
ILT
8224 * xcofflink.c (bfd_xcoff_size_dynamic_sections): Clear
8225 special_sections before returning when called with a non XCOFF
8226 BFD.
8227
7938b4cb
ILT
8228 * coffgen.c (coff_renumber_symbols): Sort common symbols with
8229 global symbols.
8230
8231 * coffcode.h (coff_compute_section_file_positions): Only pad the
8232 previous section to force file alignment when creating an
8233 executable.
8234
b5403ad7
ILT
8235Mon Nov 20 14:54:09 1995 Ian Lance Taylor <ian@cygnus.com>
8236
a418e05d
ILT
8237 * coffcode.h (coff_compute_section_file_positions): If
8238 RS6000COFF_C, set up the .debug section.
8239
b5403ad7
ILT
8240 * xcofflink.c (xcoff_link_input_bfd): Adjust the TOC anchor value
8241 if it is not large enough to accomodate the entire TOC area with
8242 signed 16 bit offsets.
8243 (xcoff_write_global_symbol): Handle negative TOC offsets in global
8244 linkage code.
8245 (_bfd_ppc_xcoff_relocate_section): Adjust relocations against a
8246 TOC anchor to use the TOC value used in the output file.
8247
90a7abbc
ILT
8248Sat Nov 18 18:01:41 1995 Ian Lance Taylor <ian@cygnus.com>
8249
8250 * coffgen.c (_bfd_coff_get_external_symbols): Cast malloc return.
8251 (_bfd_coff_read_string_table): Likewise.
8252
177b1932
DE
8253Sat Nov 18 19:43:04 1995 Richard Earnshaw (rearnsha@armltd.co.uk)
8254
8255 * pe-arm.c: Fix typos.
8256 * coff-arm.c: Likewise.
8257
8258Fri Nov 17 16:22:04 1995 Kim Knuttila <krk@cygnus.com>
8259
8260 * coff-ppc.c (list_ele): Added "cat"egory member.
8261 (record_toc): New category parameter (priv or pub).
8262 (ppc_record_toc_entry): Check to see if toc bounds exceeded.
8263 (ppc_process_before_allocation): Removed embrionic data-in-toc from
8264 the mainline. It addes extra toc cells in error.
8265 (ppc_coff_swap_sym_in_hook): Added some documentation.
8266 (dump_toc): Can now diagnose "virtual toc" chicanery.
8267
e34314c4
ILT
8268Fri Nov 17 10:41:25 1995 Philippe De Muyter <phdm@info.ucl.ac.be>
8269
8270 * elf-bfd.h (struct elf_link_hash_table): Change type of
8271 dynsymcount and bucketcount fields from size_t to bfd_size_type.
8272
73a68447
ILT
8273Fri Nov 17 10:02:58 1995 Ian Lance Taylor <ian@cygnus.com>
8274
535e9e29
ILT
8275 * coffcode.h (coff_pointerize_aux_hook): I960 version: don't
8276 pointerize C_LEAFSTAT or C_LEAFEXT entries.
8277
73a68447
ILT
8278 * elflink.h (NAME(bfd_elf,size_dynamic_sections)): Only create
8279 DT_INIT and DT_FINI entries if the _init or _fini symbol is
8280 defined or mentioned in a regular file.
8281
cd2b2402
KK
8282Thu Nov 16 15:16:42 1995 Kim Knuttila <krk@cygnus.com>
8283
8284 * coff-ppc.c (ppc_record_data_in_toc_entry): new function
8285 (coff_ppc_relocate_section): Handle TOCDEFN attribute
8286 (coff_ppc_relocate_section): Correct REL24 handling
8287 (ppc_process_before_allocation): Correct TOCDEFN handling
8288
8289 * peicode.h (dir_names): Added name descriptions
8290
b218076e
KR
8291Thu Nov 16 03:38:03 1995 Ken Raeburn <raeburn@cygnus.com>
8292
8293 * VERSION: Updated to cygnus-2.6.
8294
8295Wed Nov 15 19:30:07 1995 Ken Raeburn <raeburn@cygnus.com>
8296
8297 * targets.c (m68k4knetbsd_vec): Declare.
8298
e9f30616
ILT
8299Wed Nov 15 18:05:52 1995 Ian Lance Taylor <ian@cygnus.com>
8300
8301 * targets.c (bfd_target): Change type of second argument to
8302 _bfd_print_private_bfd_data from void * to PTR.
8303 * libbfd-in.h (_bfd_generic_bfd_print_private_bfd_data): Cast
8304 using PTR rather than void *.
8305 * bfd-in2, libbfd.h: Rebuild.
8306 * peicode.h (pe_print_private_bfd_data): Change vfile from void *
8307 to PTR.
8308 * elfxx-target.h (bfd_elfNN_bfd_print_private_bfd_data): Define as
8309 _bfd_generic_bfd_print_private_bfd_data rather than casting
8310 bfd_true.
8311
ae75c4a4
KR
8312Wed Nov 15 04:09:14 1995 Ken Raeburn <raeburn@cygnus.com>
8313
8314 * Makefile.in (.dep1): Fix stupid typo in last change. Remove any
8315 "DO NOT DELETE" lines or blank lines that mkdep writes on some
8316 systems.
8317 (BFD_LIBS_CFILES, ALL_MACHINES_CFILES, BFD32_BACKENDS_CFILES,
8318 BFD64_BACKENDS_CFILES): New variables.
8319 (CFILES): Use them.
cf2cd4cf 8320
bebcd3db
ILT
8321Tue Nov 14 11:52:23 1995 Ian Lance Taylor <ian@cygnus.com>
8322
4b71e164
ILT
8323 * peicode.h (coff_swap_aouthdr_out): For PPC PE, start isize at 0,
8324 not at the file position of the first section.
8325 * coffcode.h (coff_compute_section_file_positions): Avoid using
8326 unportable #elif.
8327 (coff_write_object_contents): When generating a PPC PE executable
8328 with no symbols, round up the file size to a COFF_PAGE_SIZE
8329 boundary.
8330 * cofflink.c (_bfd_coff_final_link): If there are no symbols,
8331 don't write out a string table.
8332
631b10f4
ILT
8333 * elf.c (bfd_section_from_shdr): When using a different section
8334 header, pass the new one to _bfd_elf_make_section_from_shdr.
8335 (elf_fake_sections): Don't set sh_info and sh_entsize fields.
8336 (elf_map_symbols): Add section VMA to symbol value when comparing
8337 against 0.
8338 (_bfd_elf_compute_section_file_positions): Only build symbol table
8339 if there are some symbols. Set file offset of symtab and strtab
8340 sections.
8341 (assign_file_positions_except_relocs): Remove dosyms parameter.
8342 Change all callers. Never set file offset of symtab and strtab
8343 sections.
8344 (_bfd_elf_copy_private_section_data): New function.
8345 (MAP_ONESYMTAB, MAP_DYNSYMTAB, MAP_STRTAB, MAP_SHSTRTAB): Define.
8346 (_bfd_elf_copy_private_symbol_data): New function.
8347 (swap_out_syms): Check for special mapping of st_shndx created by
8348 copy_private_symbol_data.
8349 * elfxx-target.h: Use new copy routines.
8350 * elf-bfd.h (_bfd_elf_copy_private_symbol_data): Declare.
8351 (_bfd_elf_copy_private_section_data): Declare.
8352
8353 * config.bfd (sh-*-*): Set targ_defvec to shcoff_vec.
8354
8355 * coffcode.h (coff_slurp_symbol_table): If COFF_WITH_PE, handle
8356 C_NT_WEAK.
8357
bebcd3db
ILT
8358 * coff-sh.c (shlcoff_vec): Use _bfd_generic_archive_p, not
8359 _bfd_dummy_target, matching the recent change to archive
8360 recognition.
8361
7ad4ba81
ILT
8362Mon Nov 13 13:24:38 1995 Ian Lance Taylor <ian@cygnus.com>
8363
afa67334
ILT
8364 * libbfd.c (bfd_get_file_window): Use casts to avoid doing
8365 arithmetic on PTR types.
8366
f2bd8915
ILT
8367 * aout-target.h (MY(callback)): Set the lma of the sections.
8368
7ad4ba81
ILT
8369 * ecoff.c (ecoff_reloc_link_order): Turn a reloc against a defined
8370 symbol into a reloc against the section.
8371
93b6a3f8
KK
8372Mon Nov 13 07:31:35 1995 Kim Knuttila <krk@cygnus.com>
8373
8374 * coff-ppc.c (ppc_coff_link_hash_entry): added support for inline
8375 glue for the relocs: IMGLUE and IFGLUE.
8376 (record_toc): new function - tracks toc contents
8377 (ppc_mark_symbol_as_glue): new function - supports the IMGLUE reloc
8378 (coff_ppc_relocate_section): Added support and fixes for IMGLUE/IFGLUE
8379 (ppc_coff_rtype2howto): removed invalid IMGLUE hack
8380 (coff_ppc_rtype_to_howto): removed invalid IMGLUE hack
125d37c4 8381 (ppc_record_toc_entry): Removed a debug define (duh)
93b6a3f8
KK
8382
8383 * peicode.h (coff_swap_scnhdr_out): Fixed invalid strcmp for ".reldata"
8384 (pe_print_idata): New function - formats the idata section data
8385 (pe_print_pdata): New function - formats the pdata section data
8386 (pe_print_private_bfd_data): calls to above
8387
c769947b
SS
8388Sun Nov 12 12:23:24 1995 Stan Shebs <shebs@andros.cygnus.com>
8389
8390 * Makefile.in (bfd_libs_here, etc): Provide empty definitions.
8391 * coff-rs6000.c (rs6000coff_vec): Add conditional defines
8392 TARGET_SYM and TARGET_NAME for vector and BFD name.
8393 * coff-pmac.c (pmac_xcoff_vec): Remove.
8394 (TARGET_SYM, TARGET_NAME): Define.
8395 * coffcode.h (coff_set_arch_mach_hook) [POWERMAC]: Set the
8396 machine to 0, not all PowerMacs are 601s.
8397
8398Fri Nov 10 12:10:14 1995 Ian Lance Taylor <ian@cygnus.com>
8399
8400 * elfcode.h (elf_object_p): Read in any program headers.
8401 * elf.c (_bfd_elf_make_section_from_shdr): Adjust section lma
8402 based on the program headers, if any.
8403 (elf_fake_sections): Set sh_addr from the vma, not the lma.
8404 (map_program_segments): Set p_paddr of program headers based on
8405 the lma.
8406
ee174815
ILT
8407Thu Nov 9 13:01:31 1995 Ian Lance Taylor <ian@cygnus.com>
8408
839087b7
ILT
8409 * archive.c (bfd_generic_archive_p): Preserve tdata in case of
8410 failure.
8411
922530a6
ILT
8412 * aoutx.h (NAME(aout,final_link)): Report a reasonable error when
8413 trying to do a relocateable link with a non-a.out object file.
8414
8415 * archive.c (bfd_generic_archive_p): Check the first object file
8416 in an archive even if target_defaulted is set. If the object file
8417 has the wrong xvec, reject it.
8418
a1774c51
ILT
8419 * aoutx.h (NAME(aout,set_section_contents)): If a section can not
8420 be represented, report the name via _bfd_error_handler.
8421 (translate_to_native_sym_flags): Likewise.
8422 * elf32-mips.c (mips_elf_final_link): Likewise.
8423 * oasys.c (oasys_write_sections): Likewise.
8424
4a378b13
ILT
8425 * coffcode.h (coff_set_alignment_hook): Write RS6000COFF_C version
8426 which checks for STYP_OVRFLO sections.
8427 (coff_compute_section_file_positions): If RS6000COFF_C, handle
8428 reloc and lineno count overflows.
8429 (coff_write_object_contents): Call coff_count_linenumbers before
8430 coff_compute_section_file_positions. If RS6000COFF_C, handle
8431 reloc and lineno count overflows.
8432 * xcofflink.c (_bfd_xcoff_bfd_final_link): Count line numbers and
8433 relocs before dealing with .pad sections. Count overflow section
8434 headers when handling .pad sections.
8435
7906bf87
ILT
8436 * coffcode.h (coff_write_object_contents): Set a.out vstamp to 1
8437 if RS6000COFF_C.
8438
ee174815
ILT
8439 * xcofflink.c (XCOFF_DESCRIPTOR): Define.
8440 (struct xcoff_link_hash_table): Add descriptor_section and
8441 special_sections fields.
8442 (_bfd_xcoff_bfd_link_hash_table_create): Initialize new fields.
8443 (xcoff_link_add_symbols): Set linkage section alignment. Create
8444 descriptor section. Check for magic symbol names (_text, etc.),
8445 and record them in special_sections if found. Set
8446 XCOFF_DESCRIPTOR flag for a function descriptor, and set its
8447 descriptor field to point back to the function code symbol.
8448 (xcoff_sweep): Always mark the special descriptor_section.
8449 (bfd_xcoff_export_symbol): Check whether the symbol might be a
8450 function descriptor, and mark it if it is.
8451 (bfd_xcoff_size_dynamic_sections): Add new special_sections
8452 parameter, and fill it in. Allocate space for the descriptor
8453 section.
8454 (xcoff_build_ldsyms): Set XCOFF_DEF_REGULAR flag when defining
8455 global linkage code. If an undefined function descriptor is
8456 exported, arrange to define it. Warn about any other undefined
8457 exported symbol.
8458 (_bfd_xcoff_bfd_final_link): Write out the descriptor section.
8459 (xcoff_write_global_symbol): Create a function descriptor when
8460 necessary.
8461 * bfd-in.h (bfd_xcoff_size_dynamic_sections): Update declaration.
8462 * bfd-in2.h: Rebuild.
8463
0e829f18
KK
8464Thu Nov 9 08:40:23 1995 Kim Knuttila <krk@cygnus.com>
8465
8466 * coff-ppc.c (ppc_coff_link_hash_entry): new types for hashing
8467 (ppc_coff_link_hash_table): new types for hashing
8468 (ppc_coff_link_hash_newfunc): hash entry constructor
8469 (ppc_coff_link_hash_table_init): hash table initializer
8470 (ppc_coff_link_hash_table_create): hash table constructor
8471 (ppc_record_toc_entry): changed references to hash table
8472 (coff_ppc_relocate_section): changed references to hash table
8473
8474 * libcoff-in.h (coff_link_hash_entry): removed toc_offset
8475 * libcoff.h: Rebuild
8476
8477 * cofflink.c (_bfd_coff_link_hash_newfunc): removed toc_offset init
8478 (coff_link_add_symbols): removed toc_offset init
8479
7ac84736
KR
8480Thu Nov 9 04:00:38 1995 Ken Raeburn <raeburn@cygnus.com>
8481
b27cc4bc
KR
8482 * Makefile.in (.dep1): Make sure the file mkdep is to write exists
8483 first.
8484
7ac84736
KR
8485 * configure.in: Added new option --with[out]-mmap. Set USE_MMAP
8486 if it is given and mmep is available.
8487 * acconfig.h: Undef USE_MMAP.
8488 * configure, config.in: Regenerated.
8489 * aoutx.h: If USE_MMAP is not defined, do all symbol and string
8490 table handling the old way.
8491 (aout_get_external_symbols): Don't complain if last byte of string
8492 table is nonzero.
8493 * libbfd.c [HAVE_MADVISE]: Include sys/types.h and sys/mman.h.
8494 (bfd_free_window) [! USE_MMAP]: Don't define.
8495 (bfd_get_file_window,
8496 _bfd_generic_get_section_contents_in_window) [! USE_MMAP]: Abort.
8497
1b3b0c03
ILT
8498Wed Nov 8 20:03:44 1995 Eric Freudenthal <freudenthal@nyu.edu>
8499
8500 * coff-a29k.c (SIGN_EXTEND_HWORD): Use ~0xffff rather than
8501 0xffff0000.
8502
092abcdf
ILT
8503Wed Nov 8 11:31:11 1995 Ian Lance Taylor <ian@cygnus.com>
8504
33698029
ILT
8505 * coff-a29k.c (a29k_reloc): Change handling of R_IREL reloc to be
8506 compatible with AMD generated COFF files. Try to support both AMD
8507 and GNU formats simultaneously.
8508 (coff_a29k_relocate_section): Likewise.
8509
0bb8ff19
ILT
8510 * libbfd.c (bfd_get_file_window): Change writable parameter from
8511 int to boolean; update all callers. Pass MAP_SHARED if not
8512 writable--it's required on Solaris. Cast fprintf argument to
8513 avoid warning.
8514 * bfd-in.h (bfd_get_file_window): Update declaration.
8515 * bfd-in2.h: Rebuild.
8516 * aoutx.h: Update calls to bfd_get_file_window.
8517
0634a431
ILT
8518 * xcofflink.c (XCOFF_DEF_DYNAMIC): Rename from XCOFF_REF_DYNAMIC.
8519 Change all uses.
8520 (xcoff_swap_ldhdr_in): New static function.
8521 (xcoff_swap_ldsym_in): New static function.
7812bf9c 8522 (xcoff_find_reloc): Handle the case of a single reloc correctly.
0634a431
ILT
8523 (xcoff_link_add_symbols): If we just created a descriptor, pass it
8524 to _bfd_generic_link_add_one_symbol, to save a hash lookup.
417acf22 8525 Handle XTY_ER/XMC_XO symbols correctly.
0634a431
ILT
8526 (xcoff_link_add_dynamic_symbols): Rewrite to read .loader symbols
8527 rather than normal symbol table.
417acf22
ILT
8528 (bfd_xcoff_import_symbol): It's not an error if the symbol is
8529 already defined with the same absolute value.
0634a431
ILT
8530 (xcoff_mark): When considering called symbols, check whether the
8531 descriptor is from a dynamic object, rather than the symbol
8532 itself.
8533 (xcoff_build_ldsyms): Likewise.
8534
092abcdf
ILT
8535 * libbfd.c (bfd_get_file_window): Change return type to boolean.
8536 Cast realloc and malloc return values. If malloc or realloc fail,
8537 set bfd_error_no_memory.
8538 * bfd-in.h (bfd_get_file_window): Change type to boolean.
8539 * bfd-in2.h: Rebuild.
8540
d6f41a7d
KK
8541Tue Nov 7 11:53:48 1995 Kim Knuttila <krk@cygnus.com>
8542
8543 * coff-ppc.c (ppc_record_toc_entry): new function.
8544 (in_reloc_p): changed return value.
8545 (coff_ppc_relocate_section): much rework.
8546 (ppc_allocate_toc_section): new function.
8547 (ppc_process_before_allocation): new function.
8548 (ppc_coff_swap_sym_in_hook): new function.
8549
8550 * cofflink.c (_bfd_coff_link_hash_newfunc): initialize toc_offset.
8551 (coff_link_add_symbols): initialize toc_offset.
8552
8553 * peicode.h (coff_swap_sym_in): Added coff_swap_sym_in_hook
8554 (coff_swap_aouthdr_out): Added more sections to the data
8555 dictionary for the pe file header. Also changed linker version
8556 number on the ppc side.
8557 (dir_names): small improvements to the dictionary printing.
8558 (pe_mkobject_hook): save the file level flags.
8559
8560 * libcoff-in.h (coff_link_hash_entry): added toc_offset field
8561 (pe_tdata): added real_flags field
8562 (coff_tdata): added local_toc_sym_map and access macro
8563
8564 * libcoff.h (coff_link_hash_entry): added toc_offset field
8565 (pe_tdata): added real_flags field
8566 (coff_tdata): added local_toc_sym_map and access macro
8567
8568 * coffcode.h (coff_set_alignment_hook): added hook for PE.
8569 (coff_mkobject): init for local_toc_sym_map
8570 (coff_write_object_contents): set the internal_a.magic to
8571 IMAGE_NT_OPTIONAL_HDR_MAGIC which appears to be what other
8572 ppc compilers use.
8573
6bc200f2
ILT
8574Tue Nov 7 13:48:58 1995 Ian Lance Taylor <ian@cygnus.com>
8575
c0971298
ILT
8576 * ecofflink.c (_bfd_ecoff_locate_line): Keep looking through stabs
8577 entries until both the line number address and the function name
8578 address are too large.
8579
6a468850
ILT
8580 * configure.in: Call AC_CHECK_PROG to find and cache AR.
8581 * configure: Rebuilt.
8582
6bc200f2
ILT
8583 * aclocal.m4 (BFD_CC_FOR_BUILD): Don't define CC_FOR_BUILD if it
8584 is defined in the environment.
8585
c44bf94c
JL
8586Tue Nov 7 10:57:24 1995 Jeffrey A Law (law@cygnus.com)
8587
8588 * som.c (som_get_section_contents_in_window): Define to use
8589 generic version.
8590
cf587de8
ILT
8591Mon Nov 6 17:13:15 1995 Harry Dolan <dolan@ssd.intel.com>
8592
8593 * coff-i860.c: New file, based on coff-i386.c.
8594 * cpu-i860.c: New file, based on cpu-i386.c.
8595 * hosts/i860mach3.h: New file, based on hosts/i386mach3.h.
8596 * config.bfd (i860-*-mach3*, i860-*-osf1*, i860-*-coff*): New
8597 targets, using i860coff_vec.
8598 * configure.in (i860-*-mach3*, i860-*-osf1*): New hosts, using
8599 trad-core.o and hosts/i860mach3.h.
8600 (i860coff_vec): Use coff-i860.o and cofflink.o.
8601 * configure: Rebuild.
8602 * Makefile.in: Rebuild dependencies.
8603 (ALL_MACHINES): Add cpu-i860.o.
8604 (BFD32_BACKENDS): Add coff-i860.o.
8605 (CFILES): Add cpu-i860.c and coff-i860.c.
8606 * targets.c (i860coff_vec): Declare.
cf2cd4cf 8607 (bfd_target_vector): Add &i860coff_vec.
cf587de8
ILT
8608 * archures.c (bfd_i860_arch): Declare.
8609 (bfd_archures_list): Add &bfd_i860_arch.
8610 * coffcode.h (coff_set_arch_mach_hook): Handle I860 magic number.
8611 (coff_set_flags): Handle bfd_arch_i860.
8612 (coff_write_object_contents): Handle I860 a.out magic number.
8613
83c23fca
ILT
8614Mon Nov 6 14:34:07 1995 Ian Lance Taylor <ian@cygnus.com>
8615
8616 * xcofflink.c (xcoff_link_add_symbols): Set the alignment power of
8617 the created .tc section to 2.
8618 (xcoff_mark): Don't keep a .loader reloc for a call to an
8619 undefined symbol when creating a shared library.
8620 (xcoff_build_ldsyms): When creating a shared library, generate
8621 global linkage code for a call to an undefined symbol.
8622
5d9eb9c3
KR
8623Sun Nov 5 21:44:13 1995 Ken Raeburn <raeburn@cygnus.com>
8624
8625 * Makefile.in (CFILES): Rebuild list from BFD_LIBS, ALL_MACHINES,
8626 BFD32_BACKENDS, BFD64_BACKENDS.
8627 (.dep1): Put mkdep output in a separate file.
8628 Rebuilt dependencies.
8629
ffacb892
KR
8630 * ecoff.c (_bfd_ecoff_slurp_armap): Cast _bfd_read_ar_hdr return
8631 value.
8632
4fe6d901
KR
8633 Permit use of mmap when available:
8634
8635 * configure.in: Check for mmap, madvise, mprotect.
8636 * config.in, configure: Regenerated.
8637
8638 * libbfd.c (struct _bfd_window_internal): Define type.
8639 (bfd_init_window, bfd_free_window, bfd_get_file_window): New
8640 functions.
8641 (ok_to_map): New static variable for debugging.
8642 (_bfd_generic_get_section_contents_in_window): New function.
8643 * bfd-in.h (bfd_window_internal): Declare type.
8644 (bfd_window): Define type.
8645 (bfd_init_window, bfd_free_window, bfd_get_file_window): Declare.
8646 * libbfd-in.h (_bfd_generic_get_section_contents_in_window):
8647 Declare.
8648
8649 * libaout.h (struct aoutdata): Add two window fields.
8650 (obj_aout_sym_window, obj_aout_string_window): New macros.
8651 * aoutx.h (some_aout_object_p): Initialize windows.
8652 (aout_get_external_symbols): Get symbol data and strings in
8653 windows instead of explicitly allocated buffers.
8654 (slurp_symbol_table): Free window instead of memory.
8655 (bfd_free_cached_info): Release windows instead of freeing storage
8656 directly.
8657 (aout_link_free_symbols): Ditto.
8658
8659 * targets.c (bfd_target): Add new field for
8660 get_section_contents_in_window.
8661 (BFD_JUMP_TABLE_GENERIC): Updated.
8662 * aout-adobe.c, aout-target.h, binary.c, bout.c, coff-alpha.c,
8663 coff-mips.c, elfxx-target.h, i386msdos.c, i386os9k.c, ieee.c,
8664 libcoff-in.h, oasys.c, srec.c, tekhex.c, versados.c: Added new
8665 macros for get_section_contents_in_window field.
8666
d9e771e3
FF
8667Sat Nov 4 12:23:26 1995 Fred Fish <fnf@cygnus.com>
8668
8669 * core.c: Renamed to corefile.c
8670 * makefile.dos (OBJS): Change core.o to corefile.o
8671 * Makefile.in (CFILES, BFD_LIBS): Use corefile.c instead of core.c
cf2cd4cf 8672
583db7a8
ILT
8673Fri Nov 3 15:54:59 1995 Ian Lance Taylor <ian@cygnus.com>
8674
8675 * xcofflink.c (xcoff_link_add_symbols): Rename local variable sub
8676 to o. Clobber and restore the list of new csects around the call
8677 to _bfd_generic_link_add_one_symbol, in case it wants to report a
8678 linker error and the linker wants to read the symbol table. Reset
8679 the line number count of a real section even if it has no relocs.
8680 (_bfd_xcoff_bfd_final_link): If shared, set the DYNAMIC flag.
8681
8682 * coffgen.c (_bfd_coff_read_string_table): Warn if the string size
8683 is too small.
8684
68aed7db
ILT
8685Thu Nov 2 23:16:39 1995 Ian Lance Taylor <ian@cygnus.com>
8686
18a9609c
ILT
8687 * xcofflink.c (_bfd_ppc_xcoff_relocate_section): Don't warn about
8688 an undefined symbol in a shared link.
8689
68aed7db
ILT
8690 * linker.c (_bfd_generic_link_add_one_symbol): Correct type of
8691 oldtype from bfd_link_order_type to bfd_link_hash_type. From
8692 phdm@info.ucl.ac.be (Philippe De Muyter).
8693
7f82c7e1
ILT
8694Wed Nov 1 14:26:02 1995 Manfred Hollstein KS/EF4A 60/1F/110 #40283 <manfred@lts.sel.alcatel.de>
8695
8696 * coff-m88k.c (rtype2howto): New static function.
8697 (RTYPE2HOWTO): Use it rather than a macro definition.
8698
8699 * coffcode.h (coff_write_object_contents): set internal_a.magic
8700 to PAGEMAGICPEXECPAGED #if defined (M68) && !defined (LYNXOS).
8701
4c8b9746 8702 * configure.in: m68*-motorola-sysv* does not use ptrace-core.o;
7f82c7e1
ILT
8703 define TRAD_HEADER to new file hosts/delta68.h.
8704 m88*-motorola-sysv*, however, does use ptrace-core.o.
8705 * hosts/delta68.h: New file.
8706
8707 * ptrace-core.c (ptrace_unix_core_file_p): change bfd_zmalloc to
8708 bfd_zalloc; provide proper parm abfd to calls to bfd_zalloc.
8709
619c7730
KR
8710Wed Nov 1 13:51:54 1995 Ken Raeburn <raeburn@cygnus.com>
8711
8712 * i386linux.c (MY(vec)): Declare before use.
8713
73246ff8
ILT
8714Wed Nov 1 11:45:07 1995 Ian Lance Taylor <ian@cygnus.com>
8715
e8d6d5d0
ILT
8716 * reloc16.c (bfd_coff_reloc16_get_relocated_section_contents):
8717 Pass input_bfd, not in_bfd, to bfd_coff_reloc16_extra_cases.
8718
b2193cc5
ILT
8719 * elf.c (bfd_elf_set_dt_needed_name): Don't do anything if the
8720 BFD is not of the right type.
8721 (bfd_elf_get_needed_list): Likewise.
8722 * i386linux.c (bfd_linux_size_dynamic_sections): Likewise.
8723 * sunos.c (bfd_sunos_get_needed_list): Likewise.
8724 * xcofflink.c (XCOFF_XVECP): Define.
8725 (bfd_xcoff_link_record_set): Don't do anything if the BFD is not
8726 of the right type.
8727 (bfd_xcoff_import_symbol): Likewise.
8728 (bfd_xcoff_export_symbol): Likewise.
8729 (bfd_xcoff_link_count_reloc): Likewise.
8730 (bfd_xcoff_record_link_assignment): Likewise.
8731 (bfd_xcoff_size_dynamic_sections): Likewise.
8732
baabeb74
ILT
8733 * sunos.c (sunos_scan_ext_relocs): Only check the reloc symbol
8734 table index against the number of symbols for a base relative
8735 reloc.
8736
73246ff8
ILT
8737 * coff-rs6000.c (_bfd_xcoff_sizeof_headers): Change from macro to
8738 static function.
8739 * xcofflink.c (_bfd_xcoff_bfd_link_hash_table_create): Set
8740 full_aouthdr flag here...
8741 (_bfd_xcoff_bfd_final_link): ...not here.
8742
6ab826bd
FF
8743Tue Oct 31 12:52:02 1995 Fred Fish <fnf@cygnus.com>
8744
8745 * libelf.h: Rename to elf-bfd.h to avoid conflict with
8746 systems that have a system <libelf.h>.
8747 * Makefile.in: Globally replace libelf.h with elf-bfd.h.
8748 * bfd.c, elf.c, elf32-arc.c, elf32-gen.c, elf32-hppa.c,
8749 elf32-hppa.h, elf32-i386.c, elf32-i860.c, elf32-m68k.c,
8750 elf32-m88k.c, elf32-mips.c, elf32-ppc.c, elf32-sparc.c,
8751 elf64-gen.c, elf64-sparc.c, elfcode.h, elflink.c,
8752 elfxx-target.h: Include elf-bfd.h rather than libelf.h.
8753 * elfxx-target.h: Change libelf.h reference to elf-bfd.h.
8754
999cc186
ILT
8755Tue Oct 31 15:30:07 1995 David Mosberger-Tang <davidm@azstarnet.com>
8756
0652d579
ILT
8757 * ecoff.c (ecoff_set_symbol_info): Add new parameter weak. If
8758 set, set BSF_WEAK in symbol. Change all callers.
8759 (ecoff_get_extr): Set weakext based on BSF_WEAK.
8760 (ecoff_link_add_externals): If weakext is set, pass BSF_WEAK to
8761 _bfd_generic_link_add_one_symbol.
8762 (ecoff_indirect_link_order): Check that the section tdata relocs
8763 are not NULL before using them.
8764
999cc186
ILT
8765 * configure.in (alpha*-*-linux*): Set COREFILE to trad-core.o and
8766 define TRAD_HEADER as hosts/alphalinux.h.
8767 * configure: Rebuild.
8768 * hosts/alphalinux.h: New file.
8769 * trad-core.c (trad_unix_core_file_p): Cast u.u_ar0 to bfd_vma,
8770 not int.
8771
e6080520
ILT
8772Tue Oct 31 12:34:11 1995 Ian Lance Taylor <ian@cygnus.com>
8773
2bd0aeb9
ILT
8774 * coffcode.h (coff_slurp_symbol_table): Accept C_BCOMM and
8775 C_ECOMM storage classes.
8776
e6080520
ILT
8777 * xcofflink.c (xcoff_mark_symbol): New static function, broken out
8778 of xcoff_mark.
8779 (xcoff_mark): Call xcoff_mark_symbol.
8780 (bfd_xcoff_export_symbol): Call xcoff_mark_symbol.
8781 (bfd_xcoff_link_count_reloc): Call xcoff_mark_symbol rather than
8782 doing it by hand.
8783 (xcoff_build_ldsyms): Build a .loader symbol for an export symbol.
8784
5fe14a9f
ILT
8785Mon Oct 30 14:53:48 1995 Ian Lance Taylor <ian@cygnus.com>
8786
f630a0a4
ILT
8787 * xcofflink.c (struct xcoff_final_link_info): Add new line_filepos
8788 field.
8789 (xcoff_find_reloc): New static function.
8790 (xcoff_link_add_symbols): Use it.
8791 (_bfd_xcoff_bfd_final_link): Set finfo.line_filepos.
8792 (xcoff_link_input_bfd): Handle C_BINCL and C_EINCL. Don't
8793 relocate the value of C_DECL.
8794
5fe14a9f
ILT
8795 * elf.c (elf_fake_sections): Remove bogus BFD_ASSERT.
8796
dff77ed7
SC
8797Sat Oct 28 01:25:34 1995 steve chamberlain <sac@slash.cygnus.com>
8798
8799 * cofflink.c (_bfd_coff_generic_relocate_section): Make
8800 callback decide what goes in .relocs.
8801 * pe[i]-i386.c (TARGET_UNDERSCORE): Define.
8802 * peicode.h (pe_mkobject_hook): Only copy aouthdr if
8803 there is one.
8804
697a8fe8
ILT
8805Sat Oct 28 01:51:02 1995 Ian Lance Taylor <ian@cygnus.com>
8806
8807 * xcofflink.c (xcoff_link_add_symbols): Handle csects in the
8808 absolute section.
8809
2d7de17d
ILT
8810Fri Oct 27 18:14:39 1995 Ian Lance Taylor <ian@cygnus.com>
8811
8812 * xcofflink.c: More improvements, mostly to fix handling of
8813 constructors and a few other special cases.
8814 * coff-rs6000.c (rs6000coff_vec): Set symbol_leading_char back to
8815 zero, reverting yesterday's change.
8816 * bfd-in.h (bfd_xcoff_link_record_set): Declare.
8817 (bfd_xcoff_link_count_reloc): Declare.
8818 (bfd_xcoff_record_link_assignment): Declare.
8819 * bfd-in2.h: Rebuild.
8820
f552f751
NH
8821Fri Oct 27 14:42:15 1995 Niklas Hallqvist <niklas@appli.se>
8822
4906b2a3 8823 * PORTING, aout-arm.c, aout-encap.c, aout-target.h,
f552f751
NH
8824 aoutx.h, gen-aout.c, host-aout.c, hp300bsd.c, i386aout.c
8825 i386bsd.c, i386dynix.c, i386linux.c, i386lynx.c, i386mach3.c,
8826 i386netbsd.c, m68klynx.c, m88kmach3.c, mipsbsd.c, newsos3.c,
8827 ns32knetbsd.c, pc532-mach.c, riscix.c, sparclynx.c, sparcnetbsd.c:
8828 Change PAGE_SIZE to TARGET_PAGE_SIZE.
8829
8830 * m68knetbsd.c: Ditto as well as add support for the m68k4k object
8831 format.
8832
8833 * netbsd.h: Double ditto (incl. m68k4k support). NetBSD's text
8834 segments includes the a.out header. See to that the magic number
8835 *always* is big-endian.
8836
8837 * config.bfd: Add m68*-hp*-netbsd* case. Cross-pollinate m68k and
8838 m68k4k NetBSD configurations.
8839
8840 * configure.in, configure: Separate i386 & mips NetBSD
8841 configurations from other BSD ones. Don't assume DEC is the only
8842 thing NetBSD/mips run on. Add {m68k,ns32k,sparc}-*-netbsd*
8843 configurations. Add support for m68k4k NetBSD object format.
8844
8845 * libaout.h: Added M_68K4K_NETBSD magic.
6fd1f40d
NH
8846
8847 * m68k4knetbsd.c: New file.
cf2cd4cf 8848
f552f751
NH
8849 * hosts/{m68k,sparc}nbsd.h: Don't define HOST_BIG_ENDIAN_P.
8850
8851 * hosts/nbsd.h: Define HOST_BIG_ENDIAN_P according to
8852 <machine/endian.h>.
8853
6fd1f40d 8854 * hosts/mipsnbsd.h: New file.
cf2cd4cf 8855
867d923d
ILT
8856Thu Oct 26 14:16:47 1995 Ian Lance Taylor <ian@cygnus.com>
8857
8858 * xcofflink.c: Numerous changes to get closer to a working XCOFF
8859 linker.
8860 * libcoff-in.h (struct xcoff_tdata): Add full_aouthdr,
8861 toc_section, and entry_section fields.
8862 (struct xcoff_section_tdata): Remove ldrel_count field.
8863 * libcoff.h: Rebuild.
8864 * coffcode.h (coff_mkobject_hook): Initialize new xcoff_data
8865 fields.
8866 (coff_compute_section_file_positions): If RS6000COFF_C, generate
8867 full a.out header if full_aouthdr is set in xcoff_data.
8868 (coff_write_object_contents): Likewise. Set o_snentry and o_sntoc
8869 based on sections stored in xcoff_data.
8870 * coff-rs6000.c (xcoff_copy_private_bfd_data): Copy new xcoff_data
8871 fields.
aad2c618
ILT
8872 (xcoff_reloc_type_lookup): Handle BFD_RELOC_CTOR.
8873 (rs6000coff_vec): Set symbol_leading_char to '.'.
867d923d
ILT
8874 * coffgen.c (coff_get_symbol_info): If fix_value is set, fix the
8875 value stored in ret rather than returning a pointer value.
cf2cd4cf 8876
6bd9ffdb
MM
8877Wed Oct 25 23:10:39 1995 Michael Meissner <meissner@tiktok.cygnus.com>
8878
8879 * config.bfd (powerpc{,le}-{elf,sysv4,eabi,solaris2}): Remove MAC
8880 format for now.
8881
9d14250f
JL
8882Wed Oct 25 16:19:27 1995 Jeffrey A Law (law@cygnus.com)
8883
8884 * som.c (som_slurp_string_table): Allocate the strings with malloc
8885 since they're free'd by free_cached_info.
8886 (som_slurp_symbol_table): Similarly for the symbol table.
8887
a2bd0529
PB
8888Wed Oct 25 14:59:22 1995 Per Bothner <bothner@kalessin.cygnus.com>
8889
8890 * Makefile.in (diststuff): Don't make headers.
8891
28a0c103
ILT
8892Wed Oct 25 11:32:54 1995 Ian Lance Taylor <ian@cygnus.com>
8893
356cd465
ILT
8894 * Makefile.in: Rebuild dependencies.
8895
1edd3a7b
ILT
8896 * sunos.c (bfd_sunos_record_link_assignment): Don't do anything if
8897 output_bfd is not SunOS.
8898 (bfd_sunos_size_dynamic_sections): Likewise. Don't scan relocs of
8899 non-SunOS input files.
8900
28a0c103
ILT
8901 * xcofflink.c: Extensive changes to support linking shared objects
8902 and generating a .loader section.
8903 * libcoff-in.h (struct xcoff_tdata): Add import_file_id field.
b73322d9
ILT
8904 (struct xcoff_section_tdata): Add lineno_count, first_symndx,
8905 last_symndx, and ldrel_count fields.
28a0c103
ILT
8906 * libcoff.h: Rebuild.
8907 * coff-rs6000.c (xcoff_howto_table): Correct reloc names.
8908 * coffcode.h (styp_to_sec_flags): Don't set any flags if STYP_PAD
8909 is set.
8910 * bfd-in.h (bfd_xcoff_import_symbol): Declare.
8911 (bfd_xcoff_export_symbol): Declare.
8912 (bfd_xcoff_size_dynamic_sections): Declare.
8913 * bfd-in2.h: Rebuild.
8914
aadf04f7
SS
8915Tue Oct 24 17:44:20 1995 Stan Shebs <shebs@andros.cygnus.com>
8916
8917 * configure.in: Add xcofflink.o to pmac_xcoff_vec.
8918 * configure: Rebuild.
8919 * mpw-config.in: Add xcofflink.c.o to powerpc-apple-macos.
8920 * coff-pmac.c: Include coff-rs6000.c instead of duplicating its
8921 contents.
8922 (pmac_xcoff_vec): Update to use new xcoff support.
8923 * coff-rs6000.c (xcoff_generic_stat_arch_elt): Make static.
8924 (xcoff_write_armap): Declare buf as unsigned char.
8925 * xcofflink.c (xcoff_link_add_symbols): Declare a local as PTR.
8926
8927 * mpw-make.sed: Generalize subdir_do edit.
cf2cd4cf 8928
ddf4639b
JL
8929Tue Oct 24 10:25:01 1995 Jeffrey A Law (law@cygnus.com)
8930
8931 * hppabsd-core.c (make_bfd_asection): Initialize asect->filepos
8932 correctly. Don't initialize asect->vma.
8933
e7bedf65
KR
8934Fri Oct 20 13:23:48 1995 Ken Raeburn <raeburn@cygnus.com>
8935
8936 * opncls.c (_bfd_new_bfd): If _bfd_chunksize wasn't preset, use
8937 something a little less than the page size.
8938
8939Thu Oct 19 13:06:09 1995 Ian Lance Taylor <ian@cygnus.com>
8940
8941 * coff-i960.c (coff_i960_adjust_symndx): Clear *adjustedp.
8942
3a70e298
SC
8943Wed Oct 18 16:20:08 1995 steve chamberlain <sac@slash.cygnus.com>
8944
8945 * coff-i386.c (coff_i386_reloc_type_lookup): New.
8946 * coffcode.h (coff_write_object_contents): If .bss is before
8947 .data us that as data_start.
8948 * cofflink.c (_bfd_coff_generic_relocate_section): Get reloc
8949 calc correct.
8950 * peicode.h (add_data_entry): Use _cooked_size of data directory.
8951 (coff_swap_outhdr_out): Hardwire in version number.
cf2cd4cf 8952
5a2846e3
KR
8953Wed Oct 18 16:50:54 1995 Ken Raeburn <raeburn@cygnus.com>
8954
3c3a5268
KR
8955 * sunos.c (sunos_add_dynamic_symbols): Rename local variables
8956 major and minor to *_vno, since the former are also macros in
8957 SunOS header files. Cast result of bfd_alloc to appropriate
8958 type.
8959
5a2846e3
KR
8960 * coffgen.c (coff_find_nearest_line): Cast used_by_bfd value
8961 before assigning to sec_data.
8962
0f6c885e
ILT
8963Wed Oct 18 13:25:17 1995 Ian Lance Taylor <ian@cygnus.com>
8964
8965 * ecoff.c (_bfd_ecoff_find_nearest_line): The offset argument is
8966 now relative to the section, not absolute.
8967 * ecofflink.c (_bfd_ecoff_locate_line): Use the right symbol to
8968 get the file name when there is a N_SO directory name. When
8969 handling stabs, remember that section->vma was added to the
8970 offset.
8971
11fa6636
ILT
8972Tue Oct 17 18:24:54 1995 Ian Lance Taylor <ian@cygnus.com>
8973
8974 * sunos.c (struct sunos_link_hash_table): Add needed field.
8975 (sunos_link_hash_table_create): Call bfd_release, not free.
8976 (sunos_link_hash_table_create): Initialize needed field.
8977 (sunos_add_dynamic_symbols): Record needed objects.
8978 (bfd_sunos_get_needed_list): New function.
8979 * bfd-in.h (bfd_sunos_get_needed_list): Declare.
8980 * bfd-in2.h: Rebuild.
8981
c974e19e
SC
8982Mon Oct 16 14:43:59 1995 steve chamberlain <sac@slash.cygnus.com>
8983
8984 * libcoff-in.h (pe_data_type.in_reloc_p): New.
8985
22a35f0b
ILT
8986Mon Oct 16 10:52:50 1995 Ian Lance Taylor <ian@cygnus.com>
8987
54406786
ILT
8988 * bfd-in.h (struct bfd_link_needed_list): Rename from
8989 bfd_elf_link_needed_list.
8990 * bfd-in2.h: Rebuild.
8991 * elf.c, elflink.h, libelf.h: Corresponding changes.
8992
dd984644
ILT
8993 Add start at AIX linker support; no shared libraries yet.
8994 * xcofflink.c: New file.
8995 * configure.in (rs600coff_vec): Use xcofflink.o.
8996 * configure: Rebuild.
8997 * libcoff-in.h (struct xcoff_tdata): Add csects and debug_indices
8998 fields.
8999 (struct xcoff_section_tdata): Define.
9000 (xcoff_section_data): Define macro.
9001 (_bfd_xcoff_bfd_link_hash_table_create): Declare.
9002 (_bfd_xcoff_bfd_link_add_symbols): Declare.
9003 (_bfd_xcoff_bfd_final_link): Declare.
9004 (_bfd_ppc_xcoff_relocate_section): Declare.
9005 * libcoff.h: Rebuild.
9006 * coff-rs6000.c: Clean up a bit.
9007 (xcoff_mkobject): Default modtype to 1L, not RE. Initialize
9008 cputype, csects, and debug_indices.
9009 (xcoff_copy_private_bfd_data): Copy cputype.
9010 (xcoff_howto_table): Rename from rs6000coff_howto_table.
9011 (xcoff_rtype2howto): Rename from rs6000coff_rtype2howto.
9012 (xcoff_reloc_type_lookup): Rename from
9013 rs6000coff_reloc_type_lookup.
9014 (coff_relocate_section): Define.
9015 (_bfd_xcoff_sizeof_headers): Define.
9016 (_bfd_xcoff_bfd_get_relocated_section_contents): Define.
9017 (_bfd_xcoff_bfd_relax_section): Define.
9018 (_bfd_xcoff_bfd_link_split_section): Define.
9019 (rs6000coff_vec): For BFD_JUMP_TABLE_LINK, use _bfd_xcoff, not
9020 coff.
9021 * coffcode.h (coff_compute_section_file_positions): If AIX,
9022 increment sofar by SMALL_AOUTSZ if not executable.
9023 (coff_write_object_contents): If AIX, always output an a.out
9024 header; if not executable, header size of SMALL_AOUTSZ.
9025 * hash.c (struct bfd_strtab_hash): Add xcoff field.
9026 (_bfd_stringtab_init): Initialize xcoff field.
9027 (_bfd_xcoff_stringtab_init): New function.
9028 (_bfd_stringtab_add): In XCOFF mode, leave two bytes for length.
9029 (_bfd_stringtab_emit): In XCOFF mode, write out length.
9030 * libbfd-in.h (_bfd_xcoff_stringtab_init): Declare.
9031 * libbfd.h: Rebuild.
9032 * Makefile.in: Rebuild dependencies.
9033 (BFD32_BACKENDS): Add xcofflink.o.
9034 (CFILES): Add xcofflink.c.
9035
22a35f0b
ILT
9036 * elf32-mips.c (mips_elf_symbol_processing): Set SEC_ALLOC, not
9037 SEC_NO_FLAGS, for .acommon section. From Peter Schauer
9038 <Peter.Schauer@Regent.E-Technik.TU-Muenchen.DE>.
9039
fb417a21
MM
9040Sat Oct 14 21:36:02 1995 Michael Meissner <meissner@tiktok.cygnus.com>
9041
9042 * coff-ppc.c (in_reloc_p): Add, clone from coff-i386.c.
9043
9044Fri Oct 13 17:48:43 1995 Ken Raeburn <raeburn@cygnus.com>
9045
9046 * acconfig.h (HAVE_SYS_PROCFS_H): Undef, with comment.
9047 * config.in: Regenerated.
9048
9049 * opncls.c (getpagesize) [!HAVE_GETPAGESIZE]: Define as 2048.
9050 (_bfd_chunksize): New variable.
9051 (_bfd_new_bfd): Set it to getpagesize() if negative, and use it
9052 for obstack chunk size.
9053 * configure.in: Check for getpagesize.
9054 * configure: Regenerated.
9055
9056 Mon Sep 25 22:49:32 1995 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
9057
9058 * trad-core.c (rawptr): Make it a local variable of
9059 ptrace_unix_core_file_p.
9060
b1e46369
SC
9061Fri Oct 13 11:22:01 1995 steve chamberlain <sac@slash.cygnus.com>
9062
9063 * coff-arm.c (in_reloc_p): New.
9064 * coff-i386.c (in_reloc_p): New.
9065 * coffcode.h: Allways include peicode.h if COFF_WITH_PE.
9066 (coff_write_object_contents): Only set has_reloc_section
9067 if PE_IMAGE.
9068 * cofflink.c (_bfd_coff_generic_relocate_section): Call
9069 in_reloc_p to decide if reloc should be emitted.
9070 * libcoff.h (pe_data_type.in_reloc_p): New.
9071 * peicode.h (pe_mkobject): Initialize in_reloc_p.
9072
ee9f09cd
ILT
9073Wed Oct 11 00:49:29 1995 Ian Lance Taylor <ian@cygnus.com>
9074
b1e46369
SC
9075 * cofflink.c (_bfd_coff_internal_syment_name): Move to coffgen.c.
9076 (_bfd_coff_read_internal_relocs): Likewise.
9077 * coffgen.c (_bfd_coff_internal_syment_name): Copy from coffgen.c.
9078 (_bfd_coff_read_internal_relocs): Likewise.
9079
ee9f09cd
ILT
9080 * elflink.h (elf_link_add_object_symbols): Correct conditions
9081 under which type and size change warnings are issued.
9082
78b31b6b
ILT
9083Tue Oct 10 18:32:46 1995 Ian Lance Taylor <ian@cygnus.com>
9084
9085 * coffgen.c (coff_count_linenumbers): Don't count line numbers for
9086 a symbol which is not in a real section.
9087 (coff_write_native_symbol): Corresponding change.
9088
9089 * cofflink.c (_bfd_coff_link_hash_newfunc): Rename from
9090 coff_link_hash_newfunc and make non-static.
9091 (_bfd_coff_link_hash_table_init): New function, broken out of
9092 _bfd_coff_link_hash_table_create.
9093 (_bfd_coff_link_hash_table_create): Use it.
9094 (process_embedded_commands): Make static.
9095 * libcoff-in.h ((_bfd_coff_link_hash_newfunc): Declare.
9096 (_bfd_coff_link_hash_table_init): Declare.
9097 * libcoff.h: Rebuild.
9098
9099 * coffcode.h (coff_mkobject_hook): If RS6000COFF_C, set cputype
9100 field in XCOFF tdata.
9101 (coff_set_arch_mach_hook): Check ifdef RS6000COFF_C, not ifdef
9102 U802ROMAGIC, for clarity. Try to set arch and machine correctly
9103 based on cputype stored in a.out header, or in n_type of initial
9104 .file symbol.
9105 (coff_write_object_contents): Set cputype correctly in a.out
9106 header.
9107 (coff_slurp_symbol_table): Add casts to file_ptr to avoid
9108 warnings.
9109 * coffswap.h (coff_swap_aouthdr_in): Swap in cputype field.
9110 (coff_swap_aouthdr_out): Swap out cputype field. Don't clear
9111 old resv1 field.
9112 * libcoff-in.h (struct xcoff_tdata): Add cputype field.
9113 * libcoff.h: Rebuild.
9114
9115 * cpu-rs6000.c (rs6000_compatible): New static function.
9116 (bfd_rs6000_arch): Use it.
9117 * cpu-powerpc.c (powerpc_compatible): New static function.
9118 (arch_info_struct): Define various flavours of PowerPC.
9119 (bfd_powerpc_arch): Use powerpc_compatible. Point at
9120 arch_info_struct.
9121
9dd7e56f
FF
9122Tue Oct 10 10:50:46 1995 Fred Fish <fnf@cygnus.com>
9123
78b31b6b 9124 * Makefile.in (FLAGS_TO_PASS): Remove BISON.
9dd7e56f 9125
8235c112
ILT
9126Tue Oct 10 01:28:29 1995 Ian Lance Taylor <ian@cygnus.com>
9127
9128 * elflink.h (elf_link_add_object_symbols): Don't warn about
9129 changing the size or type if the old definition was weak.
9130
0322af0d
ILT
9131Mon Oct 9 11:24:08 1995 Ian Lance Taylor <ian@cygnus.com>
9132
49488f2b
ILT
9133 * coffcode.h (combined_entry_type): Add fix_line field.
9134 (coff_slurp_line_table): Warn if we try to set the lineno field of
9135 a symbol twice.
9136 (coff_slurp_symbol_table): If RS6000COFF_C, handle C_BINCL and
9137 C_EINCL by setting fix_line. Fix C_BSTAT symbol value.
9138 * coffgen.c (coff_mangle_symbols): Handle fix_line.
9139 (coff_write_symbol): Only use N_DEBUG if the symbol is in the
9140 absolute section.
9141 (coff_print_symbol): Print fix_value symbols in a useful fashion.
9142 * libcoff.h: Rebuild.
9143
5f710a3a
ILT
9144 * libcoff-in.h (struct xcoff_tdata): Define.
9145 (xcoff_data): Define.
9146 * bfd.c (struct _bfd): Add xcoff_obj_data field to tdata union.
9147 * bfd-in2.h, libcoff.h: Rebuild.
9148 * coff-rs6000.c (xcoff_mkobject): New static function.
9149 (coff_mkobject): Define.
9150 (xcoff_copy_private_bfd_data): New static function.
9151 (coff_bfd_copy_private_bfd_data): Define.
9152 (rs6000coff_howto_table): Change R_TOC complain_on_overflow from
9153 signed to bitfield.
9154 (rs6000coff_vec): Add DYNAMIC to object_flags.
9155 * coffcode.h (sec_to_styp_flags): If RS6000COFF_C, handle .pad and
9156 .loader sections specially.
9157 (coff_new_section_hook): If RS6000COFF_C, get the .text and .data
9158 section alignment from the XCOFF tdata information.
9159 (coff_mkobject_hook): If RS6000COFF_C, set DYNAMIC based on
9160 F_SHROBJ, and copy the extra a.out header information into the
9161 XCOFF tdata structure.
9162 (coff_write_object_contents): If RS6000COFF_C, set F_SHROBJ,
9163 F_DYNLOAD and the extra a.out header information.
9164 (coff_slurp_symbol_table): Set BSF_NOT_AT_END for a C_EXT or
9165 C_HIDEXT symbol with attached csect information.
9166 * coffswap.h (coff_swap_aouthdr_in): If RS6000COFF_C, swap
9167 in the o_maxdata field.
9168 (coff_swap_aouthdr_out): If RS6000COFF_C, swap extra XCOFF fields.
9169 * coffgen.c (coff_renumber_symbols): Don't move any symbol to the
9170 end if BSF_NOT_AT_END is set.
3f2c5b2d 9171
0322af0d
ILT
9172 * targets.c (bfd_target): Rename _bfd_read_ar_hdr field to
9173 _bfd_read_ar_hdr_fn.
9174 * libbfd-in.h (_bfd_read_ar_hdr): Update accordingly.
9175 * bfd-in2.h, libbfd.h: Rebuild.
9176 * archive.c (_bfd_get_elt_at_filepos): Cast _bfd_read_ar_hdr
9177 return value.
9178 (do_slurp_bsd_armap, do_slurp_coff_armap): Likewise.
9179 (bfd_slurp_bsd_armap_f2): Likewise.
9180 (_bfd_slurp_extended_name_table): Likewise.
9181
3266eaff
KR
9182Fri Oct 6 16:18:35 1995 Ken Raeburn <raeburn@cygnus.com>
9183
9184 Mon Sep 25 22:49:32 1995 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
9185
9186 * archive.c (bfd_get_next_mapent): Return BFD_NO_MORE_SYMBOLS
9187 when the symbol table is empty.
9188
9189 * elf32-m68k.c (elf_m68k_size_dynamic_sections): Don't reserve
9190 space for section symbols, since we don't output them either.
9191 (elf_m68k_adjust_dynindx): Removed.
9192
9193 * ptrace-core.c (rawptr): Make it a local variable of
9194 ptrace_unix_core_file_p.
3266eaff 9195
249479fa
MM
9196Fri Oct 6 12:24:47 1995 Michael Meissner <meissner@tiktok.cygnus.com>
9197
45b5d2f0
MM
9198 * coff-rs6000.c (xcoff_write_archive_contents): Return false, not
9199 NULL.
9200
249479fa
MM
9201 * config.bfd (powerpc{,le}-{elf,sysv4,eabi,solaris2}): Add NT, and
9202 Mac object file formats.
9203
c53fac12
ILT
9204Fri Oct 6 12:04:02 1995 Ian Lance Taylor <ian@cygnus.com>
9205
4372f33f
ILT
9206 * coffgen.c (coff_fix_symbol_name): Don't try to set up file
9207 auxent if there isn't one.
9208 (coff_write_symbols): If there is no file auxent, use SYMNMLEN
9209 rather than FILNMLEN as the maximum name length.
9210
0fc9ada9
ILT
9211 * coffcode.h (bfd_coff_backend_data): Add new field
9212 _bfd_coff_print_aux.
9213 (bfd_coff_print_aux): New static function.
9214 (coff_pointerize_aux_hook (RS6000COFF_C version)): Pointerize the
9215 scnlen field of an XTY_LD csect aux entry.
9216 (coff_print_aux): New static function.
9217 (coff_slurp_symbol_table): Don't pointerize scnlen field; now done
9218 in coff_pointerize_aux_hook.
9219 (bfd_coff_std_swap_table): Initialize new field.
9220 * coffgen.c (coff_print_symbol): Call bfd_coff_print_aux.
9221 * libcoff.h: Rebuild.
9222 * coff-alpha.c (alpha_ecoff_backend_data): Initialize new field.
9223 * coff-mips.c (mips_ecoff_backend_data): Likewise.
9224
7860fe38
ILT
9225 * coffcode.h (coff_write_object_contents): On AIX, clear F_RELFLG
9226 if there are symbols, for native AIX ld compatibility.
9227
c80cc833
ILT
9228 * coffcode.h (bfd_coff_backend_data): Add new field
9229 _bfd_coff_pointerize_aux_hook.
9230 (coff_pointerize_aux_hook): Define as a function if RS6000COFF_C
9231 or I960, and as 0 otherwise.
9232 (bfd_coff_std_swap_table): Initialize new field.
9233 * libcoff.h: Rebuild.
9234 * coffgen.c (coff_pointerize_aux): Change parameters to take
9235 symbol pointer instead of type and class, and to take aux index.
9236 Call _bfd_coff_pointerize_aux_hook if it is defined.
9237 (coff_get_normalized_symtab): Always call coff_pointerize_aux.
9238 * coff-alpha.c (alpha_ecoff_backend_data): Initialize all fields.
9239 * coff-mips.c (mips_ecoff_backend_data): Likewise.
9240
c53fac12
ILT
9241 * coff-rs6000.c: Add full support for AIX archives. Rewrite old
9242 read-only/host-only support.
9243
9244 * coffcode.h (coff_slurp_symbol_table): Set C_HIDEXT symbols to be
9245 BSF_LOCAL.
d11e6b52
ILT
9246 (OTHER_GLOBAL_CLASS): Do not define to be C_HIDEXT if
9247 RS6000COFF_C.
c53fac12
ILT
9248
9249 * targets.c (bfd_target): Add _bfd_read_ar_hdr field. Modify
9250 BFD_JUMP_TABLE_ARCHIVE accordingly.
9251 * libbfd-in.h (_bfd_snarf_ar_hdr): Don't declare.
9252 (_bfd_compute_and_write_armap): Declare.
9253 (_bfd_generic_read_ar_hdr): Declare.
9254 (_bfd_read_ar_hdr): Define.
9255 (_bfd_noarchive_read_ar_hdr): Define.
9256 (_bfd_archive_bsd_read_ar_hdr): Define.
9257 (_bfd_archive_coff_read_ar_hdr): Define.
9258 * archive.c: Change all callers of _bfd_snarf_ar_hdr to call
9259 _bfd_read_ar_hdr instead.
9260 (_bfd_generic_read_ar_hdr): Rename from _bfd_snarf_ar_hdr.
9261 (_bfd_compute_and_write_armap): Rename from
9262 compute_and_write_armap. Make non-static. Change all callers.
9263 * ecoff.c (_bfd_ecoff_slurp_armap): Call _bfd_read_ar_hdr rather
9264 than _bfd_snarf_ar_hdr.
9265 * aout-target.h (MY_read_ar_hdr): Define if not defined.
9266 * ieee.c (ieee_read_ar_hdr): Define.
9267 * libecoff.h (_bfd_ecoff_read_ar_hdr): Define.
9268 * oasys.c (oasys_read_ar_hdr): Define.
9269 * som.c (som_read_ar_hdr): Define.
9270 * bfd-in2.h, libbfd.h: Rebuild.
9271
f8e47484
SC
9272Thu Oct 5 14:04:07 1995 steve chamberlain <sac@slash.cygnus.com>
9273
9274 * peicode.c (coff_swap_filehdr_in): If symptr is
9275 zero, there aren't any symbols, even if nsyms is set.
9276
2b874a2d
ILT
9277Thu Oct 5 11:45:02 1995 Ian Lance Taylor <ian@cygnus.com>
9278
aca73687
ILT
9279 * libecoff.h (struct ecoff_backend_data): Add adjust_headers
9280 field.
9281 * ecoff.c (ecoff_sec_to_styp_flags): Check for various Alpha
9282 sections, and set styp correctly for them: .got, .hash, .dynamic,
9283 .liblist, .rel.dyn, .conflic, .dynstr, .dynsym, .comment.
9284 (_bfd_ecoff_styp_to_sec_flags): Check for various Alpha section
9285 types.
9286 (ecoff_sort_hdrs): New static function.
9287 (ecoff_compute_section_file_positions): Return boolean, not void.
9288 Sort the sections by VMA before looking through them. Put the
9289 first non SEC_ALLOC section on a new page. Put every SEC_ALLOC
9290 section on an appropriate boundary within the page.
9291 (ecoff_compute_reloc_file_positions): Check return value of
9292 ecoff_compute_section_file_positions.
9293 (_bfd_ecoff_set_section_contents): Likewise.
9294 (_bfd_ecoff_write_object_contents): Check for various Alpha
9295 section types when incrementing text_size and data_size. Call
9296 adjust_headers backend function if it exists.
9297 * coff-alpha.c (alpha_adjust_headers): New static function.
9298 (alpha_ecoff_backend_data): Initialize adjust_headers field.
9299 * coff-mips.c (mips_ecoff_backend_data): Likewise.
9300
2b874a2d
ILT
9301 * hosts/i386bsd.h: Restore file incorrectly deleted on Sep 6.
9302
c780e5db
JL
9303Wed Oct 4 18:15:02 1995 Jeff Law (law@hurl.cygnus.com)
9304
9305 * rs6000-core.c (CORE_VERSION_1): Use CORE_VERSION_1 instead
9306 of ALTERNATE_AIX_CORE_FORMAT.
9307 * configure.in (aix4): No longer need CORE_FLAGS.
9308 * configure: Updated.
9309
2a01c351
KR
9310Wed Oct 4 15:36:36 1995 Ken Raeburn <raeburn@cygnus.com>
9311
9312 NS32k changes from Ian Dall:
9313 * aoutx.h (MY_final_link_relocate, MY_relocate_contents): New
9314 macros.
9315 (aout_link_input_section_std, aout_link_input_section_ext,
9316 aout_link_reloc_link_order): Call them instead of _bfd_*
9317 versions.
9318 * aout-target.h (MY_exec_header_not_counted): New macro, defaults
9319 to zero.
9320 (backend_data): Use it instead of hardcoded zero.
9321
9322 * aout-ns32k.c (CTOR_TABLE_RELOC_HOWTO): New macro.
9323 (MY_swap_std_reloc_out): Use udata.i for KEEPIT, don't call stoi.
9324
9325 * ns32knetbsd.c: Include bfd.h.
9326 (MY_text_includes_header, MY_bfd_reloc_type_lookup): New macros.
9327 (MY_bfd_reloc_type_lookup): Declare function too.
9328 * pc532-mach.c (set_sizes): Don't declare.
9329 (MY_text_includes_header, MY_exec_header_not_counted): Define.
9330 (backend_data, MY_backend_data): Don't define.
9331
9332 * config.bfd: Treat ns32k-pc532-ux* like ns32k-pc532-mach*, and
9333 ns32k-*-lites* like ns32k-*-netbsd*.
9334
9335 * hosts/nbsd.h: Swap order of sys/vmparam.h and sys/param.h, to
9336 compile on lites.
9337
5944d75b
ILT
9338Wed Oct 4 14:15:52 1995 Ian Lance Taylor <ian@cygnus.com>
9339
9340 * coffcode.h (coff_write_object_contents): Restore setting
9341 f_timdat to 0, deleted on August 22.
9342
db344f82
SC
9343Tue Oct 3 16:28:32 1995 steve chamberlain <sac@slash.cygnus.com>
9344
9345 * coffcode.h (coff_bfd_copy_private_symbol_data,
9346 coff_bfd_copy_private_section_data,
9347 coff_bfd_copy_private_bfd_data): ifdef to allow overrides.
9348 * peicode.h (coff_bfd_copy_private_bfd_data): New
9349 (pe_bfd_copy_private_bfd_data): New.
9350 (coff_swap_scnhdr_in): Swap bss size into the right place.
9351 (pe_print_private_bfd_data): Add some newlines.
5944d75b 9352
c780e5db 9353Tue Oct 3 11:53:04 1995 Jeff Law (law@hurl.cygnus.com)
97f1feda
JL
9354
9355 * som.c (setup_sections): Don't die if a space has no subspaces.
9356
3d7c42c9
ILT
9357Mon Oct 2 14:08:55 1995 Ian Lance Taylor <ian@cygnus.com>
9358
9359 * elflink.h (elf_link_add_object_symbols): Don't let a weak
9360 dynamic symbol override a common symbol. Don't change the size or
9361 type if they have been set and the new symbol is not a definition.
9362 Warn if the size or type changes.
9363
c780e5db 9364Sun Oct 1 01:34:41 1995 Jeff Law (law@hurl.cygnus.com)
709af562
JL
9365
9366 * som.c (som_begin_writing): Don't write the symbol table or
9367 symbol strings.
9368 (som_finish_writing): Write them here. Place them after the
9369 subspace data, but before the relocs.
9370
9371Fri Sep 29 11:01:55 1995 Ian Lance Taylor <ian@cygnus.com>
9372
9373 * sunos.c (sunos_add_one_symbol): Just pass false, not
9374 info->shared_library, to sunos_create_dynamic_sections.
9375 (sunos_scan_ext_relocs): Don't warn about a reloc in the .text
9376 section.
9377 (sunos_check_dynamic_reloc): Remove .text section assertion.
9378
7009e451
SS
9379Thu Sep 28 18:48:47 1995 Stan Shebs <shebs@andros.cygnus.com>
9380
9381 * config.bfd: Add powerpc-*-macos*, powerpc-*-mpw*.
9382 * configure, configure.in: Add pmac_xcoff_vec case.
9383 * Makefile.in (BFD32_BACKENDS): Add coff-pmac.o.
9384 * coff-pmac.c: New file, PowerMac XCOFF support.
9385 * coffcode.h (coff_set_arch_mach_hook): Add PowerMac case.
9386 * targets.c (pmac_xcoff_vec): Declare.
9387
9388 * mpw-config.in: Various changes to be compatible with the
9389 autoconf-based configury.
9390 * mpw-make.sed: New file, sed commands to translate Unix
9391 makefile into MPW syntax.
9392 * mpw-make.in: Remove.
9393 * hosts/mpw.h: Remove.
9394 * bfd-in.h, bfd-in2.h: If MPW, include the file that defines
9395 true and false as enums, then define TRUE_FALSE_ALREADY_DEFINED.
9396
b91537be
SC
9397Thu Sep 28 17:06:23 1995 steve chamberlain <sac@slash.cygnus.com>
9398
9399 * binary.c (binary_get_symtab): Return an empty string on error.
9400 * opncls.c (bfd_fdpenr): Change WIN32 restriction to WINGDB.
9401
30360a6f
KK
9402Thu Sep 28 15:30:44 1995 Kim Knuttila <krk@nellie>
9403
9404 * coff-ppc.c: Reformatted according to gnu conventions
9405 Removed irrelevant "if 0" code
9406
20d1e233
ILT
9407Thu Sep 28 11:19:53 1995 Ian Lance Taylor <ian@cygnus.com>
9408
69fd4fdd
ILT
9409 * hp300hpux.c (convert_sym_type): Treat secondary symbols as weak
9410 symbols rather than as indirect symbols.
9411 (MY(slurp_symbol_table)): Don't do anything special about
9412 secondary symbols.
9413
46b5a892
ILT
9414 * coffcode.h (coff_new_section_hook): Make sure that the alignment
9415 of .ctors and .dtors sections is no larger than 2.
9416
9db59230
ILT
9417 * sunos.c (sunos_add_one_symbol): Don't change
9418 bfd_link_hash_common to bfd_link_hash_new, since it may be on the
9419 undef list.
9420 (bfd_sunos_record_link_assignment): Don't put __DYNAMIC in the
9421 dynamic symbols when creating a shared library.
9422 (sunos_scan_ext_relocs): Handle relocs correctly when creating a
9423 shared library.
9424 (sunos_scan_dynamic_symbol): Don't mark the __DYNAMIC symbol as
9425 written even if it is not defined in a regular object.
9426 (sunos_write_dynamic_symbol): Use plt_offset for the address of
9427 the jump table reloc. Add an assertion. Use RELOC_JMP_SLOT
9428 rather than the constant 22.
9429 (sunos_check_dynamic_reloc): Handle creating a shared library.
9430 (sunos_finish_dynamic_link): Set the first entry in the GOT to
9431 zero when creating a shared library.
9432 * aoutx.h (NAME(aout,final_link)): If there is a symbol __DYNAMIC,
9433 write it out at the start of the symbol table.
9434
20d1e233
ILT
9435 * Makefile.in (BFD32_BACKENDS): Add coff-arm.o.
9436
a11e10fe
DE
9437Thu Sep 28 00:58:05 1995 Doug Evans <dje@deneb.cygnus.com>
9438
9439 * config.bfd: Add arm-*-coff.
9440 * configure.in, configure: Add armcoff_{little,big}_vec.
9441 * targets.c (armcoff_{little,big}_vec): Declare.
9442 (bfd_target_vector): Add armcoff_{little,big}_vec.
9443 * coff-arm.c (armcoff_{little,big}_vec): Always define.
9444
99062cfc
ILT
9445Wed Sep 27 10:37:14 1995 Ian Lance Taylor <ian@cygnus.com>
9446
9447 * targets.c (bfd_find_target): Remove debugging code.
9448
deacbe0f
KK
9449Wed Sep 27 07:23:39 1995 Kim Knuttila <krk@nellie>
9450
cf2cd4cf 9451 * coff-ppc.c, pe-ppc.c, pei-ppc.c: Initial bfd for coff/PE
deacbe0f
KK
9452 support on powerpc.
9453 * Makefile.in: added *-ppc files
9454 * coffcode.h: ppc MAGIC, and use peicode.h rather than coffswap.h to
9455 allow pe based .o's to be shared with other tools on ppc/NT
9456 * config.bfd: added powerpc[le]-[pe|winnt] config support
cf2cd4cf 9457 * configure, configure.in: added bfd_powerpc[le]_pe[i]_vec
deacbe0f
KK
9458 * peicode.h: Added more section flags for PE on ppc
9459 Added coff_swap_filehdr_out to allow peicode.h to be
9460 used for non-image PE files on ppc.
9461 Check for image, or not, before copying pe_opthdr
9462 * targets.c: Added new bfd's
30360a6f
KK
9463 * targets.c: Removed two inactive bfds that shouldn't have made it this
9464 far.
deacbe0f 9465
d22b02e0
MM
9466Tue Sep 26 14:06:41 1995 Michael Meissner <meissner@tiktok.cygnus.com>
9467
9468 * elf32-ppc.c (ppc_reloc_type): Rename from reloc_type, and use
9469 explicit values to initialize all relocs. Change all users.
9470 (ppc_elf_brtaken_inner): New function to handle branch predicition
9471 relocs.
9472 (ppc_elf_brtaken_reloc): Ditto.
9473 (ppc_elf_howto_raw): Use new functions. Make sure all unsupported
9474 relocs use ppc_elf_unsupported_reloc.
9475 (ppc_elf_merge_private_bfd_data): Keep track of whether an error
9476 needs to be reported.
9477 (ppc_elf_relocate_section): Support branch prediction relocs.
9478
fcf490c0
ILT
9479Tue Sep 26 12:48:05 1995 Ian Lance Taylor <ian@cygnus.com>
9480
e6cb7b41
ILT
9481 * bfd.c (bfd_assert): Remove \n from string passed to
9482 _bfd_error_handler.
9483
1af85fbb
ILT
9484 * coff-i386.c: (TWO_DATA_SECS): Don't define.
9485 * coffcode.h (bfd_coff_backend_data): Remove _bfd_make_section_hook.
9486 (bfd_coff_make_section_hook): Don't define.
9487 (coff_make_section_hook): Remove.
9488 (sec_to_styp_flags): Remove TWO_DATA_SECS case.
9489 (styp_to_sec_flags): Likewise.
9490 (coff_write_object_contents): Likewise.
9491 (bfd_coff_std_swap_table): Don't initialize make_section_hook
9492 field.
9493 * libcoff.h: Rebuild.
9494 * coffgen.c (make_a_section_from_file): Just call
9495 bfd_make_section_anyway, not bfd_make_section or
9496 bfd_coff_make_section_hook.
9497 * ecoff.c (_bfd_ecoff_make_section_hook): Remove.
9498 * libecoff.h (_bfd_ecoff_make_section_hook): Don't declare.
9499 * coff-alpha.c (alpha_ecoff_backend_data): Don't initialize
9500 make_section_hook field.
9501 * coff-mips.c (mips_ecoff_backend_data): Likewise.
9502
fcf490c0
ILT
9503 * aoutx.h (translate_from_native_sym_flags): Don't try to stuff
9504 pointers into value field for warning and indirect symbols; just
9505 leave the value field alone.
9506 * linker.c (generic_link_add_symbol_list): Use next symbol for
9507 warning and indirect symbols, rather than looking in symbol value.
9508 * ecoff.c (ecoff_set_symbol_info): Remove indirect_ptr_ptr
9509 parameter. Change all callers. Remove support for indirect
9510 symbols; it didn't work anyhow.
9511 (_bfd_ecoff_slurp_symbol_table): Remove indirect_ptr variable.
9512 * syms.c: Change comments about BSF_WARNING and BSF_INDIRECT.
9513 * bfd-in2.h: Rebuild.
9514
cc47d19a
MM
9515Mon Sep 25 16:04:09 1995 Michael Meissner <meissner@tiktok.cygnus.com>
9516
9517 * elf32-ppc.c (ppc_elf_howto_raw): For all 14-bit branch relocs,
9518 go back to telling the tools this reloc operates on 32 bits.
9519
81449d47
ILT
9520Mon Sep 25 11:48:02 1995 Ian Lance Taylor <ian@cygnus.com>
9521
7a7fbffb
ILT
9522 * aout-adobe.c (aout_adobe_callback): Use _bfd_error_handler
9523 rather than a direct fprintf.
9524 * archive.c (_bfd_write_archive_contents): Likewise.
9525 * coffcode.h (coff_slurp_symbol_table): Likewise.
9526 * elf32-ppc.c (ppc_elf_merge_private_bfd_data): Likewise.
9527 (ppc_elf_unsupported_reloc): Likewise.
9528 (ppc_elf_relocate_section): Likewise.
9529 * i386linux.c (linux_tally_symbols): Likewise.
9530 (linux_finish_dynamic_link): Likewise.
9531 * osf-core.c (osf_core_core_file_p): Likewise.
9532 * rs6000-core.c (rs6000coff_get_section_contents): Likewise.
9533 * som.c (som_sizeof_headers): Likewise.
9534 * srec.c (srec_bad_byte): Likewise.
9535 * bfd.c (bfd_assert): Likewise. Also change file to be const.
9536 * libbfd-in.h (bfd_assert): Declare first parameter const.
9537 * libbfd.h: Rebuild.
9538 * coff-a29k.c (a29k_reloc): Don't bother to fprintf; returning
9539 bfd_reloc_overflow is enough.
9540 * coff-h8300.c (rtype2howto): Don't bother to fprintf; just abort.
9541 * coff-h8500.c (rtype2howto): Likewise.
9542 * coff-z8k.c (rtype2howto): Likewise.
9543 * coffcode.h (dummy_reloc16_extra_cases): Likewise.
9544 * elf.c (_bfd_elf_get_lineno): Likewise.
9545 (_bfd_elf_no_info_to_howto): Likewise.
9546 (_bfd_elf_no_info_to_howto_rel): Likewise.
9547 * hp300hpux.c (convert_sym_type): Likewise.
9548 (MY(swap_std_reloc_in)): Likewise.
9549 * elf.c (bfd_section_from_shdr): Remove #if 0 sections.
9550
f1c6dd5d
ILT
9551 * libaout.h (struct aoutdata): Add line_buf field.
9552 * aoutx.h (NAME(aout,find_nearest_line)): Remove statics buffer
9553 and filename_buffer. Instead, use a malloc buffer stored in the
9554 new line_buf field. Remove length restrictions.
9555
f0500a41
ILT
9556 * coffgen.c (string_size): Remove static variable.
9557 (debug_string_size, debug_string_section): Likewise.
9558 (coff_fix_symbol_name): Add string_size_p, debug_string_section_p,
9559 and debug_string_size_p parameters. Use them instead of the
9560 global variables. Change all callers.
9561 (coff_write_symbol): Likewise.
9562 (coff_write_alien_symbol, coff_write_native_symbol): Likewise.
9563 (coff_write_symbols): Add local variables to replace removed
9564 global variables.
9565
25b5a53d
ILT
9566 * libcoff-in.h (struct coff_section_tdata): Add offset, i,
9567 function, and line_base fields.
9568 * libcoff.h: Rebuild.
9569 * coffgen.c (coff_find_nearest_line): Use section tdata to cache
9570 information, rather than using static variables.
9571
641ac26a
ILT
9572 * sunos.c (sunos_read_dynamic_info): Adjust offsets in an NMAGIC
9573 file. From Peter DeWolf <pld@amt.tay1.dec.com>.
9574
81449d47
ILT
9575 * init.c (initialized): Remove static variable.
9576 (bfd_init): Don't bother setting initialized.
9577 (bfd_check_init): Remove.
9578 * opncls.c (_bfd_new_bfd): Don't call bfd_check_init.
9579 * libbfd.h: Rebuild.
9580
138b9b81
PS
9581Sat Sep 23 01:22:23 1995 Peter Schauer (pes@regent.e-technik.tu-muenchen.de)
9582
9583 * rs6000-core.c (rs6000coff_core_p): Don't check the core file
9584 size for full core dumps. Copy core file header to private data.
9585 (rs6000coff_core_file_failing_command,
9586 rs6000coff_core_file_failing_signal): New functions to extract
9587 the file name and terminating signal from the core file.
9588 * coff-rs6000.c: Use them.
9589
2ffbb79a
ILT
9590Fri Sep 22 17:44:47 1995 Ian Lance Taylor <ian@cygnus.com>
9591
9592 Change arch info to be const, initialized at compile time.
9593 * archures.c: Reindent many functions. Change CONST to const.
9594 (bfd_arch_info_type): Make arch_name const. Remove disassemble;
9595 nothing set it anyhow. Make next const.
9596 (bfd_arch_info_list): Remove.
9597 (bfd_archures_list): Rename from archures_init_table. Change from
9598 a table of function pointers to a table of bfd_arch_info_type
9599 structure addresses.
9600 (bfd_scan_arch): Rewrite accordingly. Return a const pointer.
9601 (bfd_lookup_arch): Likewise.
9602 (bfd_set_arch_info): Rewrite accordingly. Change argument to be a
9603 const pointer.
9604 (bfd_default_arch_struct): Make const.
9605 (bfd_arch_init, bfd_arch_linkin): Remove.
9606 (bfd_get_arch_info): Return a const pointer.
9607 * init.c (bfd_init): Don't call bfd_arch_init.
9608 * bfd.c (struct _bfd): Make arch_info const.
9609 * bfd-in2.h: Rebuild.
9610 * libbfd.h: Rebuild.
9611 * configure.in: Put & before everything in $selarchs.
9612 * configure: Rebuild.
9613 * cpu-*.c: Change bfd_*_arch from a function which calls
9614 bfd_arch_linkin to a const structure.
9615 * ieee.c (ieee_object_p): Make arch const.
9616
02f85cda
MM
9617Fri Sep 22 16:23:18 1995 Michael Meissner <meissner@tiktok.cygnus.com>
9618
9619 * reloc.c (bfd_reloc_code_type): Add relocations to support all of
9620 PowerPC V.4.
9621 * bfd-in2.h: Regenerate.
9622 * libbfd.h: Regenerate.
9623
9624 * elf32-ppc.c (reloc_type): Update names to match current draft.
9625 (ppc_elf_howto_raw): Mark 14 bit relocs as short sized and PC
9626 relative. Update names to current V.4 draft.
9627 (ppc_elf_reloc_type_lookup): Add support for more relocations.
9628 (ppc_elf_relocate_section): Rename relocations to match draft.
9629
dd82c578
MM
9630Thu Sep 21 21:53:18 1995 Michael Meissner <meissner@cygnus.com>
9631
9632 * elf32-ppc.c (ppc_elf_merge_private_bfd_data): Allow modules
9633 compiled with -mrelocatable-lib to be linked with either normal
9634 modules or -mrelocatable modules.
9635
f69e888e
ILT
9636Wed Sep 20 12:03:26 1995 Ian Lance Taylor <ian@cygnus.com>
9637
e18c4e8f
ILT
9638 * coffcode.h (coff_write_object_contents): Clear the vstamp field
9639 in the a.out header.
9640
f69e888e
ILT
9641 * aoutx.h (NAME(aout,swap_ext_reloc_out)): Don't set r_extern for
9642 a reloc against a local symbol, even if it's not a section.
9643
a5655244
ILT
9644Tue Sep 19 17:02:26 1995 Ian Lance Taylor <ian@cygnus.com>
9645
9646 * targets.c (bfd_target): Remove unused align_power_min field.
9647 * bfd-in2.h: Rebuild.
9648 * All backends: Remove initialization of align_power_min.
9649
500d7394
SC
9650Tue Sep 19 14:02:21 1995 steve chamberlain <sac@slash.cygnus.com>
9651
9652 * peicode.h (coff_swap_scnhdr_out): Get sizes for BSS right.
500d7394 9653
049df0a8
ILT
9654Mon Sep 18 14:35:01 1995 Arne H. Juul <arnej@pvv.unit.no>
9655
9656 * config.bfd (mips-dec-netbsd*): New target.
9657 * configure.host (mips-dec-netbsd*): New host.
9658 * configure.in (mips-dec-netbsd*): New native.
9659 * configure: Rebuild.
9660
1862bbd8
ILT
9661Fri Sep 15 10:24:36 1995 Ian Lance Taylor <ian@cygnus.com>
9662
9663 Make the COFF backend linker merge common types:
9664 * cofflink.c (struct coff_debug_merge_element): Define.
9665 (struct coff_debug_merge_type): Define.
9666 (struct coff_debug_merge_hash_entry): Define.
9667 (struct coff_debug_merge_hash_table): Define.
9668 (coff_debug_merge_hash_table_init): Define.
9669 (coff_debug_merge_hash_table_free): Define.
9670 (coff_debug_merge_hash_lookup): Define.
9671 (struct coff_final_link_info): Add debug_merge field.
9672 (coff_debug_merge_hash_newfunc): New static function.
9673 (_bfd_coff_final_link): Allocate and free debug_merge table.
9674 (coff_link_input_bfd): Merge identical enum, struct and union
9675 types.
9676
a208a70f
ILT
9677Thu Sep 14 14:53:58 1995 Ian Lance Taylor <ian@cygnus.com>
9678
9679 Convert i960 COFF to use COFF backend linker.
9680 * coff-i960.c (coff_i960_relocate): Use a coff_section_data
9681 structure to store the symbol being used.
9682 (coff_i960_start_final_link): New static function.
9683 (coff_i960_relocate_section): New static function.
9684 (coff_i960_adjust_symndx): New static function.
9685 (coff_start_final_link): Define.
9686 (coff_relocate_section): Define.
9687 (coff_adjust_symndx): Define.
9688 * coffcode.h (bfd_coff_backend_data): Add new callback function
9689 _bfd_coff_start_final_link.
9690 (bfd_coff_start_final_link): Define.
9691 (coff_start_final_link): Define if not defined.
9692 (bfd_coff_std_swap_table): Add coff_start_final_link.
9693 * cofflink.c (_bfd_coff_internal_syment_name): Make globally
9694 visible.
9695 (_bfd_coff_final_link): Call bfd_coff_start_final_link if the
9696 function callback is not NULL.
9697 * libcoff-in.h (struct coff_section_tdata): Add tdata field.
9698 (_bfd_coff_internal_syment_name): Declare.
9699 * libcoff.h: Rebuild.
9700 * configure.in (icoff_big_vec): Add cofflink.o.
9701 (icoff_little_vec): Likewise.
9702 * configure: Rebuild.
9703
f0abedbe
FF
9704Wed Sep 13 17:38:23 1995 Fred Fish <fnf@rtl.cygnus.com>
9705
9706 * Makefile.in (clean-info): Remove extraneous tab from line
9707 following action.
9708
aa4b3dc5
ILT
9709Wed Sep 13 13:27:53 1995 Ian Lance Taylor <ian@cygnus.com>
9710
9711 * cofflink.c (coff_link_input_bfd): Fail if a section with no
9712 contents has relocs.
9713
4ca63811 9714Thu Sep 12 12:45:34 1995 steve chamberlain <sac@slash.cygnus.com>
beee31b1
SC
9715
9716 * coffcode.h (coff_compute_section_file_positions): Keep the
cf2cd4cf 9717 raw size safe.
beee31b1
SC
9718 (coff_write_object_contents): Remember if it's a relocatable
9719 file.
9720 * libcoff-in.h (pe_data_type): New member 'has_reloc_section'
9721 * peicode.h (coff_swap_filehdr_out): Clear not-reloc flag
9722 if relocatable file. Swap out saved raw size.
9723
ae115e51
ILT
9724Tue Sep 12 12:14:33 1995 Ian Lance Taylor <ian@cygnus.com>
9725
9521bac3
ILT
9726 * Makefile.in (do_maintainer_clean): Rename from do_realclean.
9727 (maintainer-clean): Rename from realclean, passing
9728 maintainer-clean down to subdirectories, but leave realclean as a
9729 synonym.
9730
4ca63811
ILT
9731 * linker.c (_bfd_generic_link_add_one_symbol): Pass symbol name to
9732 warning callback.
9733
5aa4c3ff
ILT
9734 * dep-in.sed: Remove config.h from generated dependencies.
9735
396aaeb2
ILT
9736 * sunos.c (sunos_slurp_dynamic_symtab): New static function,
9737 broken out of sunos_canonicalize_dynamic_symtab.
9738 (sunos_canonicalize_dynamic_symtab): Call new function
9739 sunos_slurp_dynamic_symtab.
9740 (sunos_add_dynamic_symbols): Add three new parameters. Return the
9741 dynamic symbol table to the caller.
9742 * aoutx.h (aout_link_add_symbols): Permit add_dynamic_symbols
9743 callback to override the symbols being read.
9744 * libaout.h (struct aout_backend_data): Add three new parameters
9745 to add_dynamic_symbols callback.
9746
ae115e51
ILT
9747 Extensive minor changes to avoid various gcc warnings. Also:
9748 * Makefile.in (BFD32_BACKENDS): Remove coff-arm.o.
9749 * archures.c (bfd_arch_info_type): Change mach field from long to
9750 unsigned long.
9751 (bfd_lookup_arch): Change machine parameter from long to unsigned
9752 long.
9753
b088e4b2
ILT
9754Mon Sep 11 10:55:47 1995 Ian Lance Taylor <ian@cygnus.com>
9755
9756 * sunos.c (sunos_scan_std_relocs): Fix BFD_ASSERT: it's OK to find
9757 a symbol with a non-zero plt_offset.
9758
1dff7902
ILT
9759Fri Sep 8 11:47:24 1995 Ian Lance Taylor <ian@cygnus.com>
9760
2b71e1e4
ILT
9761 * elfcode.h (align_file_position): Remove; not used.
9762
1dff7902
ILT
9763 * configure.in: Only check for <sys/procfs.h> on a native system,
9764 and make sure it defines prstatus_t.
9765 * configure: Rebuild.
9766
870015b1
ILT
9767Thu Sep 7 12:48:01 1995 Ian Lance Taylor <ian@cygnus.com>
9768
535c89f0
ILT
9769 * sunos.c (sunos_write_dynamic_symbol): Correct m68k abort test.
9770
936b870c
ILT
9771 * config.in: Rename from config.h.in.
9772 * configure.in: Call AC_CONFIG_HEADER with config.h:config.in.
a7873a6c 9773 Check for config.h:config.in when creating stamp-h.
936b870c 9774 * configure: Rebuild.
a7873a6c
ILT
9775 * Makefile.in (stamp-h): Depend upon config.in rather than
9776 config.h.in. Set CONFIG_HEADERS to config.h:config.in when
9777 calling config.status.
936b870c 9778
870015b1
ILT
9779 * Makefile.in (do_distclean): Remove config.h and stamp-h.
9780 (Makefile): Just rebuild Makefile.
9781 (config.h, stamp-h): New targets.
9782 * configure.in: Create stamp-h when rebuilding config.h.
9783 * configure: Rebuild.
9784
b7577823
ILT
9785Wed Sep 6 15:00:33 1995 Ian Lance Taylor <ian@cygnus.com>
9786
9787 * configure.in: Call AC_CONFIG_HEADER. Substitute
9788 HOST_64BIT_LONG. Check that various header files exist. Check
9789 that fcntl exists. Call BFD_BINARY_FOPEN. Check whether malloc
9790 and/or free need to be declared. Don't make a link to sysdep.h.
9791 Define TRAD_HEADER for various hosts.
9792 * configure: Rebuild.
9793 * configure.host: Don't set my_host. Add definitions taken from
9794 host header files for various entries. Remove entries which now
9795 do nothing.
9796 * acconfig.h: New file.
9797 * config.h.in: New file, built by autoheader.
9798 * sysdep.h: New file.
9799 * Makefile.in (do_distclean): Don't remove sysdep.h.
9800 (RECONFIG): Remove.
9801 (LOCAL_H_DEPS): New variable.
9802 ($(BFD_LIBS)): Use $(LOCAL_H_DEPS) rather than libbfd.h and
9803 $(RECONFIG).
9804 ($(BFD_MACHINES), $(BFD_BACKENDS)): Likewise.
9805 ($(OPTIONAL_BACKENDS)): Likewise.
9806 (stmp-bfd.h): Just substitute for BFD_HOST_64BIT_LONG, rather than
9807 looking through sysdep.h.
9808 * bfd-in.h (BFD_HOST_64BIT_LONG): Define; set by Makefile.
9809 (BFD_HOST_64_BIT): Define based on BFD_HOST_64BIT_LONG.
9810 (fprintf_vma, sprintf_vma): Likewise.
9811 (int64_type, uint64_type): Don't define.
9812 * bfd-in2.h: Rebuild.
9813 * archures.c, bfd.c, srec.c: Include <ctype.h>.
9814 * elfcore.h: Check HAVE_SYS_PROCFS_H rather than HAVE_PROCFS.
9815 * lynx-core.c: Include stuff from old hosts/lynx.h.
9816 * opncls.c (bfd_fdopenr): Check HAVE_FNCTL and defined (F_GETFL),
9817 rather than NO_FCNTL.
9818 * targets.c (bfd_target_list): Check HOST_HPPAHPUX and ! __STDC__
9819 rather than NATIVE_HPPAHPUX_COMPILER.
9820 * trad-core.c: Don't include <errno.h>. Include TRAD_HEADER if it
9821 is defined.
9822 * hosts/*.h: Remove all header files which merely include,
9823 declare, and define things. Leave header files which define
9824 information needed by trad-core.c.
9825
9826 * aclocal.m4 (BFD_BINARY_FOPEN): Define.
9827 (BFD_CC_FOR_BUILD): Define.
9828 * configure.in: Use BFD_CC_FOR_BUILD.
9829 * configure: Rebuild.
9830
7a93ebdd
ILT
9831Tue Sep 5 19:35:28 1995 Ian Lance Taylor <ian@cygnus.com>
9832
4c2e4d0e
ILT
9833 * aclocal.m4: Don't try to grep ../Makefile if it doesn't exist.
9834 * configure: Rebuild.
9835
7a93ebdd
ILT
9836 * coff-sparc.c (CALC_ADDEND): Don't set the addend to the value of
9837 a global symbol.
9838
866bb9e5
JM
9839Tue Sep 5 12:48:26 1995 Jason Molenda (crash@phydeaux.cygnus.com)
9840
9841 * config.bfd: i386pe_ve -> i386pe_vec.
9842
2b79a104
ILT
9843Mon Sep 4 14:02:43 1995 Ian Lance Taylor <ian@cygnus.com>
9844
f515fb2f
ILT
9845 * configure.host: Incorporate host Makefile fragments by setting
9846 shell variables.
9847 * configure.in: Call AC_PROG_CC. Substitute CFLAGS, HDEFINES and
9848 AR. Call AC_PROG_INSTALL. Substitute CC_FOR_BUILD, choosing a
9849 value based on whether the code is being compiled by a cross
9850 compiler. Don't substitute host_makefile_frag or frags.
9851 * aclocal.m4: New file to define local AC_PROG_CC.
9852 * configure: Rebuild.
9853 * Makefile.in (INSTALL): Set to @INSTALL@.
9854 (INSTALL_PROGRAM): Set to @INSTALL_PROGRAM@.
9855 (INSTALL_DATA): Set to @INSTALL_DATA@.
9856 (AR): Set to @AR@.
9857 (CC): Define as @CC@.
9858 (CFLAGS): Set to @CFLAGS@.
9859 (CC_FOR_BUILD): Set to @CC_FOR_BUILD@.
9860 (@host_makefile_frag@): Remove.
9861 (ALL_CFLAGS): Change $(HDEFINES) to @HDEFINES@. Move $(CFLAGS)
9862 after other options.
9863 (config.status): Remove dependency upon @frags@.
9864 * config/*.mh, config/README: Remove.
9865
2b79a104
ILT
9866 * config.bfd: Rewrite to incorporate the contents of the Makefile
9867 fragments by setting shell variables, rather than merely returning
9868 the name of a Makefile fragment.
9869 * configure.in: Use shell variables set by config.bfd rather than
9870 looking at the target Makefile fragment files. Don't substitute
9871 target_makefile_frag. Do substitute TDEFINES.
9872 * configure: Rebuild.
9873 * Makefile.in (@target_makefile_frag@): Remove.
9874 (ALL_CFLAGS): Change $(TDEFINES) to @TDEFINES@.
9875 * config/*.mt: Remove.
9876
2cb159a5
KR
9877Mon Sep 4 03:13:28 1995 Ken Raeburn <raeburn@cygnus.com>
9878
9879 * configure.in: Put changequote lines around "i[345]86" patterns
9880 section of core file support.
9881
ef07871c
JL
9882Sun Sep 3 11:31:58 1995 Jeff Law (law@snake.cs.utah.edu)
9883
9884 * som.c (som_bfd_print_private_bfd_data): Define to use the
9885 generic version.
9886
1613e075
SC
9887Fri Sep 1 17:08:40 1995 steve chamberlain <sac@slash.cygnus.com>
9888
9889 * peicode.h (coff_swap_aouthdr_in): Add ImageBase to
9890 entry, text_start and data_start.
9891
a52a3ce8
ILT
9892Fri Sep 1 18:06:28 1995 Ian Lance Taylor <ian@cygnus.com>
9893
a21227ef
ILT
9894 * Makefile.in (OFILES): Remove $(TDEPFILES).
9895 * config/apollo.mt (TDEPFILES): Remove.
9896 * config/README: Update.
9897
a52a3ce8
ILT
9898 * configure.in: For a native configuration, set COREFILE and
9899 COREFLAG based on the canonical host name.
9900 * configure: Rebuild.
9901 * Makefile.in: Rebuild dependencies.
9902 (ALL_CFLAGS): Add @COREFLAG@.
9903 (OFILES): Replace $(HDEPFILES) with @COREFILE@.
9904 * coff-rs6000.c: Check AIX_CORE rather than HOST_AIX for core file
9905 support routines. Check LYNX_CORE rather than HOST_LYNX.
9906 * lynx-core.c: Check LYNX_CORE rather than HOST_LYNX.
9907 * i386lynx.c: Likewise.
9908 * m68klynx.c: Likewise.
9909 * sparclynx.c: Likewise.
9910 * rs6000-core.c: Check AIX_CORE rather than HOST_AIX.
9911 * *-core.c: Comment changes.
9912 * config/decstation.mh (HDEPFILES): Remove.
9913 (HDEFINES): Remove -DTRAD_CORE.
9914 * config/irix3.mh (RANLIB): Remove.
9915 * config/irix4.mh (HDEPFILES, RANLIB): Remove.
9916 (HDEFINES): Remove -DIRIX_CORE.
9917 * config/riscos.mh (RANLIB, HDEPFILES): Remove.
9918 (HDEFINES): Remove -DTRAD_CORE.
9919 * config/ncr3000.mh (AR_FLAGS, RANLIB): Remove.
9920 * config/ultra3.mh (RANLIB): Remove.
9921 * config/aix4.mh, config/alphaosf.mh, config/amix.mh: Remove.
9922 * config/apollo.mh, config/delta68.mh, config/delta88.mh: Remove.
9923 * config/dpx2.mh, config/esix.mh, config/harris.mh: Remove.
9924 * config/hp300.mh, config/hp300bsd.mh, config/hppabsd.mh: Remove.
9925 * config/hppahpux.mh, config/hppaosf.mh: Remove.
9926 * config/i386aix.mh, config/i386bsd.mh: Remove.
9927 * config/i386linux.mh, config/i386mach3.mh: Remove.
9928 * config/i386sco.mh, config/i386v.mh, config/i386v4.mh: Remove.
9929 * config/irix5.mh, config/m88kmach3.mh, config/mipsbsd.mh: Remove.
9930 * config/mipsmach3.mh, config/news-mips.mh: Remove.
9931 * config/news.mh, config/pc532mach.mh, config/riscix.mh: Remove.
9932 * config/rs600.mh, config/rs6000lynx.mh: Remove.
9933 * config/solaris2.mh, config/stratus.mh: Remove.
9934 * config/symmetry.mh, config/sysv4.mh, config/tahoe.mh: Remove.
9935 * config/vaxbsd.mh, config/vaxult.mh, config/vaxult2.mh: Remove.
9936
d6f672b8
ILT
9937Fri Sep 1 15:18:50 1995 Kazumoto Kojima <kkojima@info.kanagawa-u.ac.jp>
9938
9939 * elflink.h (elf_bfd_final_link): Don't change a DT_INIT or
9940 DT_FINI entry if the appropriate symbol is not in the hash table.
9941
9942 * libelf.h (struct elf_backend_data): Add create_program_headers
9943 and want_hdr_in_seg fields.
9944 * elfxx-target.h (elf_backend_want_hdr_in_seg): Define if not
9945 defined.
9946 (elf_backend_create_program_headers): Likewise.
9947 (elfNN_bed): Initialize create_program_headers and
9948 want_hdr_in_seg.
9949 * elf.c (get_program_header_size): Call create_program_headers
9950 backend routine.
9951 (map_program_segments): Check want_hdr_in_seg backend field. Call
9952 create_program_headers backend routine.
9953
9954 * elf.c (assign_file_positions_except_relocs): Align non allocated
9955 sections when creating an executable.
9956
9957 * elfcode.h (elf_swap_phdr_in): Make non static.
9958 (elf_swap_phdr_out): Make non static.
9959 * libelf.h (bfd_elf32_swap_phdr_in): Declare.
9960 (bfd_elf32_swap_phdr_out): Declare.
9961 (bfd_elf64_swap_phdr_in): Declare.
9962 (bfd_elf64_swap_phdr_out): Declare.
9963
9964 * ecofflink.c (ecoff_collect_shuffle): New static function.
9965 (_bfd_ecoff_get_accumulated_pdr): New function.
9966 (_bfd_ecoff_get_accumulated_sym): New function.
9967 (_bfd_ecoff_get_accumulated_ss): New function.
9968 * libbfd-in.h (_bfd_ecoff_get_accumulated_pdr): Declare.
9969 (_bfd_ecoff_get_accumulated_sym): Declare.
9970 (_bfd_ecoff_get_accumulated_ss): Declare.
9971 * libbfd.h: Rebuild.
9972
0cb70568
ILT
9973Fri Sep 1 13:20:25 1995 Ian Lance Taylor <ian@cygnus.com>
9974
d6f672b8
ILT
9975 * libecoff.h (_bfd_ecoff_bfd_print_private_bfd_data): Fix typo.
9976
0cb70568
ILT
9977 * elflink.h (elf_link_add_object_symbols): Handle indirect and
9978 warning symbols. If any section is named .gnu.warning.XXX, treat
9979 the contents as a warning to be issued if the symbol XXX is
9980 referenced.
9981 (elf_link_output_extsym): For an indirect or warning symbol, just
9982 output the symbol it points to.
9983
9984 * linker.c (_bfd_link_hash_newfunc): Don't bother to set bfd_error
9985 if bfd_hash_allocate fails, since it will already be set.
9986 (generic_link_hash_newfunc): Likewise.
9987 (archive_hash_newfunc): Likewise.
9988 (hash_entry_bfd): New static function.
9989 (_bfd_generic_link_add_one_symbol): Pass new arguments to warning
9990 callback. Allocate a new warning using the hash table newfunc.
9991 Use bfd_hash_replace to update the entry in the hash table, rather
9992 than assuming we can copy the fields with structure assignment.
9993
9994 * hash.c (bfd_hash_replace): New function.
9995 * bfd-in.h (bfd_hash_replace): Declare.
9996 * bfd-in2.h: Rebuild.
9997
f14db880
JSC
9998Fri Sep 1 08:12:50 1995 James G. Smith <jsmith@beauty.cygnus.com>
9999
10000 * config.bfd: Add mips*vr4300-*-elf* target.
10001 * config/mipsbvr4300.mt: Added.
10002
1613e075 10003See file ChangeLog.2
e6d739eb 10004
41126f15
JK
10005\f
10006Local Variables:
c6c7035c 10007mode: change-log
41126f15 10008left-margin: 8
6ec3bb6a
ILT
10009fill-column: 74
10010version-control: never
10011End:
This page took 1.149429 seconds and 4 git commands to generate.