* configure.in (*-*-netbsd*): Set COREFILE to netbsd-core.c.
[deliverable/binutils-gdb.git] / bfd / ChangeLog
1 Tue Feb 6 14:04:49 1996 J.T. Conklin <jtc@rtl.cygnus.com>
2
3 * configure.in (*-*-netbsd*): Set COREFILE to netbsd-core.c.
4 don't define TRAD_HEADER.
5 * configure: Rebuild.
6
7 * netbsd-core.c: New file, support for NetBSD core files.
8 * hosts/*nbsd.h: Removed.
9
10 Tue Feb 6 11:47:49 1996 Doug Evans <dje@charmed.cygnus.com>
11
12 * reloc.c (BFD_RELOC_SPARC_[567]): New reloc types.
13 (BFD_RELOC_SPARC_LO7 reloc type): Deleted.
14 * libbfd.h, bfd-in2.h: Regenerated.
15 * elf32-sparc.c (_bfd_sparc_elf_reloc_type_lookup): Renamed from
16 bfd_elf32_bfd_reloc_type_lookup.
17 (reloc_type{,_names}): Deleted.
18 (_bfd_sparc_elf_howto_table): Renamed from elf_sparc_howto_table.
19 Add sparc64 relocs.
20 (sparc_reloc_map): Add sparc64 relocs.
21 (sparc_elf_notsupported_reloc): New static function.
22 (sparc_elf_wdisp16_reloc): New static function.
23 (elf32_sparc_check_relocs): Handle R_SPARC_WDISP{16,19}.
24 (elf32_sparc_relocate_section): Likewise.
25 (bfd_elf32_bfd_reloc_type_lookup): Define.
26 * elf64-sparc.c (sparc64_elf_wdisp16_reloc): Deleted.
27 (reloc_type{,_names}): Deleted.
28 (elf_sparc_howto_table): Deleted.
29 (sparc_reloc_map): Deleted.
30 (_bfd_sparc_elf_howto_table): Renamed from elf_sparc_howto_table.
31 (bfd_elf64_bfd_reloc_type_lookup): Change from function to #define.
32
33 Tue Feb 6 12:12:22 1996 Ian Lance Taylor <ian@cygnus.com>
34
35 * configure.host: Make SHLIB_CFLAGS include $(PICFLAG) on a
36 *-*-hpux* host.
37
38 * Makefile.in (program_transform_name): New variable.
39 (install): Transform library name before installing it.
40
41 Mon Feb 5 10:38:27 1996 Ian Lance Taylor <ian@cygnus.com>
42
43 * archures.c (bfd_mach_i960_hx): Define.
44 * bfd-in2.h: Rebuild.
45 * cpu-i960.c (scan_960_mach): Accept machine "hx".
46 (MATRIX): Expand entries for HX.
47 (arch_info_struct): Add i960:hx entry.
48 * bout.c (b_out_set_arch_mach): Handle bfd_mach_i960_hx.
49 * coffcode.h (coff_set_arch_mach_hook): Handle F_I960HX.
50 (coff_set_flags): Handle bfd_mach_i960_hx.
51
52 Support for building as a shared library, based on patches from
53 Alan Modra <alan@spri.levels.unisa.edu.au>:
54 * configure.in: Add AC_ARG_ENABLE for shared and commonbfdlib.
55 New substitutions: ALLLIBS, PICFLAG, SHLIB, SHLIB_CC,
56 SHLIB_CFLAGS, COMMON_SHLIB, PICLIST, SHLINK.
57 * configure: Rebuild.
58 * configure.host: If --enable-shared, adjust shared library stuff
59 based on the host. If the host is SunOS, and the linker supports
60 -rpath, set HLDFLAGS to use it.
61 * Makefile.in (ALLLIBS): New variable.
62 (PICFLAG, SHLIB, SHLIB_CC, SHLIB_CFLAGS): New variables.
63 (COMMON_SHLIB, SHLINK): New variables.
64 (.c.o): If PICFLAG is set, compile twice, once PIC, once normal.
65 (STAGESTUFF): Remove variable.
66 (all): Depend upon $(ALLLIBS) and @PICLIST@ rather than
67 $(TARGETLIB).
68 (stamp-ofiles): New target, like old ofiles target, but build
69 using a temporary file and move-if-change, and touch stamp-ofiles
70 when done.
71 (ofiles): Just depend upon stamp-ofiles.
72 (stamp-piclist, piclist): New targets.
73 ($(SHLIB), $(SHLINK)): New targets.
74 (targets.o, archures.o): Build twice if PICFLAG is set.
75 (do_mostlyclean): Remove pic/*.o.
76 (do_clean): Remove stamp-ofiles, $(SHLIB), $(SHLINK), piclist, and
77 stamp-piclist.
78 (do_distclean): Remove pic and stamp-picdir.
79 (install): Install shared libraries.
80 ($(OFILES)): Depend upon stamp-picdir.
81 (stamp-picdir): New target.
82
83 * libcoff-in.h: Add comment reminding people that libcoff.h is a
84 generated file.
85 * libcoff.h: Rebuild.
86
87 * elflink.h (elf_adjust_dynamic_symbol): Don't try to get the
88 flavour of a section with no owner.
89
90 * elf32-mips.c (mips_elf_create_dynamic_sections): Clear
91 ELF_LINK_NON_ELF flag.
92 (mips_elf_create_got_section): Likewise.
93
94 * elf.c: Revert last change, since it breaks dynamic linking.
95 * elf-bfd.h (struct elf_backend_data): Remove want_hdr_in_seg
96 field.
97 * elf32-mips.c (elf_backend_want_hdr_in_seg): Don't define.
98 * elfxx-target.h (elf_backend_want_hdr_in_seg): Don't define.
99 (elfNN_bed): Don't initialize want_hdr_in_seg field.
100
101 Sun Feb 4 20:45:13 1996 Michael Meissner <meissner@tiktok.cygnus.com>
102
103 * elf.c (assign_file_positions_for_segments): If the backend does
104 not want the elf header or the program headers in the address
105 space, do not include them in the calculations.
106
107 * elf32-ppc.c (ppc_elf_additional_program_headers): New hook
108 function to determine if we need additional program headers.
109 (ppc_elf_modify_segment_map): Define as a NOP function for now.
110 (ppc_elf_create_linker_section): .sdata2 is a read-only section.
111
112 Sat Feb 3 23:00:03 1996 Ian Lance Taylor <ian@cygnus.com>
113
114 * coffcode.h: Move today's libcoff.h change into coffcode.h.
115
116 Sat Feb 3 15:43:44 1996 Fred Fish <fnf@cygnus.com>
117
118 * libcoff.h (bfd_coff_link_add_one_symbol): Combine macro args
119 back into one line. Some compilers (sunos 4.1.3 for example)
120 won't accept args split across more than one line.
121
122 Fri Feb 2 11:42:15 1996 Steve Chamberlain <sac@slash.cygnus.com>
123
124 * aclocal.m4 (BFD_BINARY_FOPEN): Understand cygwin32.
125 * configure: Regenerate.
126
127 Fri Feb 2 12:12:16 1996 Jeffrey A Law (law@cygnus.com)
128
129 * elf32-hppa.c (elf32_hppa_backend_symbol_table_processing): Don't
130 try to do arithmetic on a void *, cast it to a unsigned char * first.
131
132 Thu Feb 1 16:04:06 1996 Ian Lance Taylor <ian@cygnus.com>
133
134 * elf-bfd.h (ELF_LINK_NON_ELF): Define.
135 * elf.c (_bfd_elf_link_hash_newfunc): Set elf_link_hash_flags to
136 ELF_LINK_NON_ELF.
137 * elflink.h (elf_link_add_object_symbols): Reset ELF_LINK_NON_ELF
138 flag for a newly defined symbol.
139 (NAME(bfd_elf,record_link_assignment)): Likewise.
140 (elf_adjust_dynamic_symbol): If ELF_LINK_NON_ELF is set, try to
141 set the DEF or REF_REGULAR flags correctly.
142
143 * Makefile.in (bfd-in2.h): Make bfd.h, not protos, in docdir.
144 (libbfd.h, libcoff.h): Corresponding change.
145
146 * elf32-i386.c (elf_i386_check_relocs): Don't record a symbol with
147 a PLT32 reloc as dynamic.
148 (elf_i386_adjust_dynamic_symbol): If a symbol with a PLT32 reloc
149 is not referenced by a dynamic object, and we are not making a
150 shared object, then don't make a PLT entry. If we do make a PLT
151 entry, make sure the symbol has been recorded as dynamic.
152
153 Wed Jan 31 17:23:32 1996 Steve Chamberlain <sac@slash.cygnus.com>
154
155 * coff-i386.c (coff_i386_reloc_type_lookup): Add BFD_RELOC_32_PCREL.
156 * config.bfd (i[345]86-*-win32): Becomes i[345]86-*-cygwin32.
157 (powerpcle-*-cygwin32): New.
158 * peicode.h (add_data_entry): Get address from vma.
159
160 Wed Jan 31 16:23:57 1996 Michael Meissner <meissner@tiktok.cygnus.com>
161
162 * elflink.c (_bfd_elf_create_linker_section): If the symbol
163 attached to the section has already been created as an undefined
164 symbol, treat it as if it hasn't been created yet.
165
166 Wed Jan 31 16:16:53 1996 Ian Lance Taylor <ian@cygnus.com>
167
168 * elflink.h (elf_bfd_final_link): Don't output initial dummy
169 symbol or section symbols if stripping all symbols and this is not
170 a relocateable link. Don't output the symbol string table if
171 there are no symbols.
172 (elf_link_flush_output_syms): Don't do anything if there are no
173 symbols to flush.
174
175 Wed Jan 31 12:55:49 1996 Richard Henderson <rth@tamu.edu>
176
177 * coff-aux.c: New file.
178 * hosts/m68kaux.h: New file.
179 * config.bfd (m68*-apple-aux*): New target.
180 * configure.in (m68*-apple-aux*): New native host.
181 (m68kaux_coff_vec): New vector.
182 * configure: Rebuild.
183 * targets.c (m68kaux_coff_vec): Declare.
184 * coffcode.h (bfd_coff_backend_data): Add field
185 _bfd_coff_link_add_one_symbol.
186 (bfd_coff_link_add_one_symbol): Define.
187 (compare_arelent_ptr): New static function if TARG_AUX.
188 (coff_write_relocs): If TARG_AUX, sort the relocs.
189 (coff_write_object_contents): Set A/UX aouthdr magic number.
190 (coff_link_add_one_symbol): Define if not defined.
191 (bfd_coff_std_swap_table): Initialize new field.
192 * libcoff.h: Rebuild.
193 * cofflink.c (coff_link_add_symbols): Call
194 bfd_coff_link_add_one_symbol rather than
195 _bfd_generic_link_add_one_symbol.
196 * coff-m68k.c (COFF_PAGE_SIZE): Don't define if already defined.
197 * coff-alpha.c (alpha_ecoff_backend_data): Initialize new field.
198 * coff-mips.c (mips_ecoff_backend_data): Likewise.
199 * Makefile.in: Rebuild dependencies.
200 (BFD32_BACKENDS): Add coff-aux.o.
201 (BFD32_BACKENDS_CFILES): Add coff-aux.c.
202
203 Wed Jan 31 11:37:46 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
204
205 * elf32-m68k.c (elf_m68k_relocate_section): Fix R_68K_GOT*
206 relocation; ignore addend with R_68K_{GOT,PLT}*O relocation.
207
208 Tue Jan 30 12:09:04 1996 Ian Lance Taylor <ian@cygnus.com>
209
210 * Makefile.in (do_maintainer_clean): Remove $(srcdir)/bfd-in2.h,
211 $(srcdir)/libbfd.h and $(srcdir)/libcoff.h.
212 (maintainer-clean): Warn about deleting special files.
213 (bfd-in2.h, libbfd.h, libcoff.h): New targets.
214
215 * elf32-hppa.c (elf32_hppa_relocate_section): Handle indirect and
216 warning symbols correctly.
217 * elf32-i386.c (elf_i386_relocate_section): Likewise.
218 * elf32-m68k.c (elf_m68k_relocate_section): Likewise.
219 * elf32-mips.c (mips_elf_relocate_section): Likewise.
220 * elf32-ppc.c (ppc_elf_relocate_section): Likewise.
221 * elf32-sparc.c (elf32_sparc_relocate_section): Likewise.
222 * elf64-sparc.c (sparc64_elf_relocate_section): Likewise.
223
224 * syms.c (_bfd_stab_section_find_nearest_line): Add casts to avoid
225 warnings.
226
227 Mon Jan 29 14:27:24 1996 Kim Knuttila <krk@cygnus.com>
228
229 * libcoff-in.h: aligned newly exported names with bfd naming
230 conventions. Removed an erroneous define of POWERPC_LE_PE.
231 * libcoff.h: Rebuild.
232 * cofflink.c, coff-ppc.c: the above function name changes
233
234 Mon Jan 29 13:06:28 1996 Ian Lance Taylor <ian@cygnus.com>
235
236 From Basim Kadhim <kadhim@spock.cs.colorado.edu>:
237 * ecoff.c (struct extsym_info): Define.
238 (_bfd_ecoff_bfd_final_link): Pass a pointer to struct extsym_info
239 to ecoff_link_write_external.
240 (ecoff_link_write_external): Accept a struct extsym_info pointer.
241 Strip symbols when appropriate.
242
243 Based on patches from Ronald F. Guilmette <rfg@monkeys.com>:
244 * syms.c (BSF_OBJECT): Define.
245 (bfd_print_symbol_vandf): Print 'O' for BSF_OBJECT.
246 * bfd-in2.h: Rebuild.
247 * elfcode.h (elf_slurp_symbol_table): Set BSF_OBJECT for an
248 STT_OBJECT symbol.
249 * elf.c (swap_out_syms): Only set type to STT_OBJECT if BSF_OBJECT
250 is set.
251
252 * elf32-i386.c (elf_i386_relocate_section): If -Bsymbolic, when
253 copying relocs into a shared object, treat a defined global symbol
254 as a local symbol.
255 * elf32-m68k.c (elf_m68k_relocate_section): Likewise.
256 * elf32-mips.c (mips_elf_relocate_section): Likewise.
257 * elf32-sparc.c (elf32_sparc_relocate_section): Likewise.
258
259 * elflink.h (elf_link_add_object_symbols): Only set weakdef to a
260 real defined symbol, not to a weak defined symbol.
261
262 Mon Jan 29 11:34:36 1996 Kim Knuttila <krk@cygnus.com>
263
264 * cofflink.c: removed the POWERPC_LE_PE hack, promoted some types
265 and made a few static functions externs.
266
267 * coff-ppc.c (ppc_bfd_coff_final_link): new function, replaces the
268 POWERPC_LE_PE hack in cofflink.
269
270 * libcoff-in.h: promoted the following from cofflink.c to allow
271 _bfd_coff_final_link to be overridden - STRING_SIZE_SIZE,
272 coff_debug_merge_element, struct coff_debug_merge_type,
273 coff_debug_merge_hash_entry, coff_debug_merge_hash_table,
274 coff_debug_merge_hash_table_init, coff_debug_merge_hash_table_free,
275 coff_debug_merge_hash_lookup, coff_link_section_info,
276 coff_final_link_info, coff_debug_merge_hash_newfunc,
277 coff_write_global_sym, coff_link_input_bfd, coff_reloc_link_order.
278
279 * libcoff.h: re-gen'd
280
281 Fri Jan 26 18:33:35 1996 Ian Lance Taylor <ian@cygnus.com>
282
283 * syms.c: Include "bfdlink.h".
284 (struct stab_find_info): Define.
285 (_bfd_stab_section_find_nearest_line): New function.
286 * libbfd-in.h (_bfd_stab_section_find_nearest_line): Declare.
287 * libbfd.h: Rebuild.
288 * elf-bfd.h (struct elf_obj_tdata): Add line_info field.
289 * elf.c (_bfd_elf_find_nearest_line): Try calling
290 _bfd_stab_section_find_nearest_line before searching the ELF
291 symbol table. Find the closest STT_FUNC symbol, not the last one.
292 * libcoff-in.h (coff_data_type): Add line_info field.
293 * libcoff.h: Rebuild.
294 * coffgen.c (coff_find_nearest_line): Try calling
295 _bfd_stab_section_find_nearest_line before searching the COFF
296 symbol table.
297 * Makefile.in: Rebuild dependencies.
298
299 Fri Jan 26 16:11:19 1996 Michael Meissner <meissner@tiktok.cygnus.com>
300
301 * elf32-ppc.c (R_PPC_EMB_SDA21 relocations): Make relocation size
302 4 bytes, so we get the correct value when updating the register
303 field in little endian mode.
304
305 Thu Jan 25 12:14:16 1996 Ian Lance Taylor <ian@cygnus.com>
306
307 * libcoff-in.h (struct xcoff_tdata): Remove toc_section and
308 entry_section fields. Add sntoc and snentry fields.
309 * libcoff.h: Rebuild.
310 * coffcode.h (coff_mkobject_hook): Initialize sntoc and snentry,
311 not toc_section and entry_section (the COFF file does not have any
312 sections at this point).
313 (coff_write_object_contents): Set o_snentry and o_sntoc from
314 snentry and sntoc rather than entry_section and toc_section.
315 * coff-rs6000.c (xcoff_copy_private_bfd_data): Copy sntoc and
316 snentry, not toc_section and entry_section.
317 * xcofflink.c (bfd_xcoff_size_dynamic_sections): Don't set
318 entry_section from hentry.
319 (xcoff_link_input_bfd): If a defined symbol has XCOFF_ENTRY set,
320 set snentyr.
321 (xcoff_link_input_bfd): Set sntoc, not toc_section.
322 (xcoff_write_global_symbol): Get toc_section from sntoc, rather
323 than using toc_section directly.
324
325 * archures.c: Add missing `.' in enum bfd_architecture.
326 * bfd-in2.h: Rebuild.
327
328 * config.bfd (i[345]86-*-sco*elf*): Use bfd_elf32_i386_vec. From
329 Robert Lipe <robertl@arnet.com>.
330
331 Thu Jan 25 12:08:51 1996 Michael Meissner <meissner@tiktok.cygnus.com>
332
333 * elf32-ppc.c (ppc_elf_size_dynamic_sections): Add .rela.sdata{,2}
334 to sections we allocate. Use bfd_zalloc to allocate initialial
335 sections, not bfd_alloc.
336 (ppc_elf_check_relocs): Remove BFD_ASSERTs for !shared from
337 SDA{,2}I16 relocations.
338 (ppc_elf_add_symbol_hook): Use the value of -G nn to determine
339 whether to put something in .sbss or not.
340 (ppc_elf_relocate_section): Add support for more relocations. Add
341 in sec->output_offset where appropriate. Make error messages
342 include the symbol name.
343
344 * elflink.c (_bfd_elf_create_linker_section): Lookup symbol before
345 trying to add it to the symbol table, so _GLOBAL_OFFSET_TABLE_
346 doesn't get redefined messages if -shared.
347
348 * elflink.h (elf_create_pointer_linker_section) Only bump RELA
349 section if the rel_section field has been set up.
350
351 Wed Jan 24 20:40:26 1996 Michael Meissner <meissner@tiktok.cygnus.com>
352
353 * elf32-ppc.c (ppc_elf_relocate_section): Fix typo in eabi
354 relocations.
355
356 Wed Jan 24 10:38:34 1996 Doug Evans <dje@charmed.cygnus.com>
357
358 * elf32-sparc.c (elf32_sparc_merge_private_bfd_data): Delete checking
359 of flags, only flags used are controlled by mach number. Bump up
360 output file mach number to highest of input file mach numbers.
361 (elf32_sparc_object_p): Watch for EF_SPARC_SUN_US1.
362 (elf32_sparc_final_write_processing): Set EF_SPARC_SUN_US1 if v8plusa.
363
364 * config.bfd (sparc64-*-{sysv4*,solaris2*}): Comment out
365 bfd_elf64_sparc_vec support.
366
367 Tue Jan 23 14:33:05 1996 Michael Meissner <meissner@tiktok.cygnus.com>
368
369 * elf32-ppc.c (ppc_elf_copy_private_bfd_data): Don't complain if
370 the embedded bit is set on some objects and not on others. Just
371 or it together.
372 (ppc_elf_relocate_section): Implement R_PPC_EMB_{SDA21,RELSDA}
373 relocations.
374
375 Tue Jan 23 14:22:45 1996 Ian Lance Taylor <ian@cygnus.com>
376
377 * coffcode.h (coff_new_section_hook): Don't try to align the
378 .stabstr section.
379
380 * coffcode.h (coff_set_section_contents): Fix the handling of the
381 .lib section to work even if the entire section contents are
382 written at once. From Gvran Uddeborg <gvran@uddeborg.pp.se> and
383 Robert Lipe <robertl@arnet.com>.
384
385 Mon Jan 22 18:45:51 1996 Michael Meissner <meissner@tiktok.cygnus.com>
386
387 * elflink.h (elf_finish_pointer_linker_section): Don't allocate
388 memory here for contents.
389
390 * elf32-ppc.c (ppc_elf_relocate_section): Bump up _SDA_BASE_ and
391 _SDA2_BASE_ by 32768.
392 (ppc_elf_size_dynamic_sections): #if out PLT code which we haven't
393 started using. Allocate contents for .sdata and .sdata2 sections
394 also.
395 (ppc_elf_check_relocs): Use bfd_get_section_name in debug message,
396 rather than _name.
397 (ppc_elf_finish_dynamic_symbol): Remove code that attempted to
398 size _SDA{,2}_BASE_.
399 (ppc_elf_relocate_section): Change how sdata{,2} relocations are
400 done.
401
402 Mon Jan 22 08:52:04 1996 Doug Evans <dje@charmed.cygnus.com>
403
404 * elflink.h (elf_finish_pointer_linker_section): Fix typo.
405
406 * archures.c (bfd_mach_sparc_v9): Renamed from bfd_mach_sparc64.
407 (bfd_mach_sparc_{v8plus,v8plusa}): Define.
408 (bfd_mach_sparc_v9a): Define.
409 (bfd_mach_sparc_v9_p): Define.
410 * bfd-in2.h: Regenerated.
411 * aoutx.h (aout,machine_type): bfd_mach_sparc64 renamed to
412 bfd_mach_sparc_v9.
413 * elf64-sparc.c (sparc64_elf_object_p): Likewise.
414 * config.bfd (sparc64-*-sysv4*,sparc64-*-solaris2*): Set targ_defvec
415 to bfd_elf32_sparc_vec.
416 * cpu-sparc.c (arch_info_struct): Renamed from sparc_arch_info.
417 Add v8plus{,a} support.
418 Add v9a support.
419 (sparc_compatible): New function.
420 * elf32-sparc.h: #include "elf/sparc.h".
421 (elf32_sparc_merge_private_bfd_data, elf32_sparc_object_p,
422 elf32_sparc_final_write_processing): New functions.
423 (bfd_elf32_bfd_merge_private_bfd_data, elf_backend_object_p,
424 elf_backend_final_write_processing): Define.
425
426 Mon Jan 22 11:21:51 1996 Michael Meissner <meissner@tiktok.cygnus.com>
427
428 * elf-bfd.h (struct elf_link_hash_entry): Add
429 linker_section_pointer field.
430 (enum elf_linker_section_enum): Enumeration for new way of
431 creating linker dynamic sections and symbols.
432 (elf_linker_section{,_pointers}): New structures for creating
433 dynamic sections and symbols.
434 (elf_obj_tdata): Add linker_section_pointers and linker_section
435 fields.
436 (elf_local_ptr_offsets,elf_linker_section): New accessor macros.
437 (_bfd_elf_create_linker_section): New declarations.
438 (_bfd_elf_find_pointer_linker_section): Ditto.
439 (bfd_elf{32,64}_{create,finish}_pointer_linker_section): Ditto.
440 (_bfd_elf_make_linker_section_rela): Ditto.
441
442 * elf.c (_bfd_elf_link_hash_newfunc): Initialize new fields.
443
444 * elf32-ppc.c (ppc_elf_create_dynamic_sections): Delete.
445 (ppc_elf_create_linker_section): New function to create the
446 sections .got, .sdata, and .sdata2.
447 (ppc_elf_size_dynamic_sections): Zap .rela.{sdata,sdata2} if
448 needed.
449 (ppc_elf_check_relocs): Support more of the eabi relocations.
450 (ppc_elf_relocate_section): Ditto.
451 (ppc_elf_finish_dynamic_symbols): Adjust _SDA{,2}_BASE_ by 32768
452 if the .sdata{,2} + .sbss{,2} section size is > 32k.
453
454 * elflink.h (elf_create_pointer_linker_section): New function to
455 create initialized pointers in dynamic linker sections.
456 (elf_finish_pointer_linker_section): Actually intialize the
457 pointers created above.
458
459 * elfcode.h (bfd_elf{32,64}_create_pointer_linker_section): New
460 macros to provide both 32 and 64 bit versions of
461 elf_create_pointer_linker_section.
462 (bfd_elf{32,64}_finish_pointer_linker_section): New macros to
463 provide both 32 and 64 bit versions of
464 elf_finish_pointer_linker_section.
465
466 * elflink.c (_bfd_elf_create_linker_section): New function to
467 create a linker section.
468 (_bfd_elf_find_pointer_linker_section): Find a unique pointer to a
469 given address in the linker pointer offsets created for a given
470 symbol.
471 (_bfd_elf_make_linker_section_rela): Make a RELA section
472 corresponding to the generated linker section.
473
474 Sat Jan 20 08:36:10 1996 Doug Evans <dje@canuck.cygnus.com>
475
476 * elf32-sparc.c (ELF_MACHINE_ALT1): Define.
477
478 Thu Jan 18 18:25:34 1996 Kim Knuttila <krk@cygnus.com>
479
480 * coff-ppc.c (coff_ppc_relocate_section): changed TOCDEFN relocs.
481 (coff_ppc_relocate_section): Handle special values for gcc built dlls.
482 (dump_toc): fix diagnosing code to identify out-of-toc-bounds entries.
483 Also begin the toc at 4 as an eye catcher ('31313131' marks the first
484 toc entry in an objdump) for now.
485 (ppc_do_last, ppc_get_last): New function - needed to save processing
486 the toc owner to the end.
487 (ppc_coff_swap_sym_in_hook): Removed an incorrect hack for doing the
488 toc owner last.
489
490 * cofflink.c (_bfd_coff_final_link): Added a new hack to keep the
491 toc owner from being done till last. Must define POWERPC_LE_PC
492 to enable it.
493
494 * coffcode.h (coff_set_alignment_hook): alignment setting for .stab
495
496 * peicode.h (coff_swap_scnhdr_out): set section flags for stab/str
497 to INFO.
498 (coff_swap_aouthdr_out): Removed a non-working hack for computing the
499 SizeOfImage for PowerPC. Ignore the size of the .junk section.
500
501 Thu Jan 18 17:42:12 1996 Ian Lance Taylor <ian@cygnus.com>
502
503 * elfcore.h: Include <signal.h> before <sys/procfs.h>.
504
505 Wed Jan 17 12:40:14 1996 Ian Lance Taylor <ian@cygnus.com>
506
507 * cpu-powerpc.c (arch_info_struct): Change last entry to not point
508 back to first.
509 (bfd_powerpc_arch): Point at first entry in arch_info_struct.
510
511 Tue Jan 16 15:10:49 1996 Ian Lance Taylor <ian@cygnus.com>
512
513 * elf.c (assign_file_positions_for_segments): Don't increment file
514 offset for a segment which contains no loadable sections.
515
516 Mon Jan 15 17:46:27 1996 Michael Meissner <meissner@tiktok.cygnus.com>
517
518 * reloc.c: Add new PowerPC relocations.
519 * {bfd-in2,libbfd}.h: Regenerate.
520
521 * elf32-ppc.c (ppc_elf_howto_raw): Add more PPC relocations.
522 (ppc_elf_reloc_type_lookup): Lookup new relocations.
523
524 Mon Jan 15 14:29:44 1996 Ian Lance Taylor <ian@cygnus.com>
525
526 * aoutx.h (howto_table_ext): Fix RELOC_BASE10 and RELOC_BASE22
527 entries.
528
529 * sunos.c (sunos_scan_ext_relocs): Don't fail assert if
530 info->shared.
531
532 * coffgen.c (coff_find_nearest_line): Don't try to cache
533 information in sections that are not owned by a BFD. From Richard
534 Henderson <richard@atheist.tamu.edu>.
535
536 * elf32-mips.c: Numerous changes to dynamic linking code, mostly
537 from Kazumoto Kojima <kkojima@info.kanagawa-u.ac.jp>.
538 * elflink.h (elf_link_output_extsym): Remove special check for
539 _rld_new_interface.
540
541 * ecoffswap.h: Add prototypes for static functions.
542
543 Sun Jan 14 21:36:08 1996 Michael Meissner <meissner@tiktok.cygnus.com>
544
545 * elf32-ppc.c (ppc_elf_{unsupported,std}_reloc): Remove functions.
546 (ppc_elf_howto_raw): Remove ppc_elf_{unsupported,std}_reloc
547 references.
548 (ppc_elf_relocate_section): No longer allow .sdata/.sbss sections
549 to satisfy a TOC16 relocation. Rewrite unsupported relocation
550 support. Begin support for R_PPC_SDA{2,}REL.
551
552 Sat Jan 13 09:36:52 1996 Michael Meissner <meissner@tiktok.cygnus.com>
553
554 * elf32-ppc.c (ppc_elf_create_dynamic_sections): New function to
555 create the .got and .got.neg sections.
556 (ppc_elf_size_dynamic_sections): Call it.
557 (ppc_elf_check_relocs): Call it.
558 (ppc_elf_size_dynamic_sections): Support .got.neg, just like .got.
559 (ppc_elf_check_relocs): Add error messages for relocations we
560 don't yet support. Do not include R_PPC_SDAREL16 like a GOT
561 relocation.
562
563 Fri Jan 12 15:27:59 1996 Michael Meissner <meissner@tiktok.cygnus.com>
564
565 * elf32-ppc.c (ppc_elf_fake_sections): Define, and handle the new
566 section flags for V.4 and eabi.
567
568 Fri Jan 12 13:59:16 1996 Ian Lance Taylor <ian@cygnus.com>
569
570 * elf.c (assign_file_positions_for_segments): If a segment
571 contains no sections, don't mark it as readable.
572
573 * elf-bfd.h (_bfd_elf_section_from_bfd_section): Declare.
574 * elfcode.h (_bfd_elf_section_from_bfd_section): Don't declare.
575
576 * elf.c (_bfd_elf_print_private_bfd_data): Dump contents of
577 dynamic section, if there is one.
578 * elf-bfd.h (struct elf_size_info): Add swap_dyn_in field.
579 (bfd_elf32_swap_dyn_in): Change type of second parameter to PTR.
580 (bfd_elf64_swap_dyn_in): Likewise.
581 * elfcode.h (elf_swap_dyn_in): Change type of second parameter to
582 PTR.
583 (NAME(_bfd_elf,size_info)): Initialize swap_dyn_in field.
584
585 * elf32-i386.c (elf_i386_size_dynamic_sections): Don't create a
586 DT_TEXTREL entry because of .rel.plt. From Martin Pirker
587 <pirker@eiunix.tuwien.ac.at>.
588
589 Thu Jan 11 17:06:14 1996 Michael Meissner <meissner@tiktok.cygnus.com>
590
591 * section.c (SEC_{EXCLUDE,SORT_ENTRIES}): New section flags for
592 PowerPC V.4 and eabi.
593 * bfd-in2.h: Regenerate.
594 * libfd.h: Regenerate.
595
596 * elfxx-target.h (TARGET_{BIG,LITTLE}_SYM): Add new flags.
597
598 * elf32-ppc.c (ppc_elf_section_from_shdr): Support SHT_ORDERED
599 section type and SHF_EXCLUDE section flag, turning them into the
600 appropriate bfd section flag.
601
602 Thu Jan 11 11:23:30 1996 Ian Lance Taylor <ian@cygnus.com>
603
604 * xcofflink.c (xcoff_link_add_symbols): Create the special
605 sections if we see a DYNAMIC object, in case that is the only
606 XCOFF input object we see.
607
608 * elf32-mips.c: Extensive changes for a start at dynamic linking
609 support, from Kazumoto Kojima <kkojima@info.kanagawa-u.ac.jp>.
610
611 * elf-bfd.h (struct elf_backend_data): Add type_change_ok field.
612 (struct elf_backend_data): Remove
613 elf_backend_create_program_headers field. Add
614 elf_backend_additional_program_headers and
615 elf_backend_modify_segment_map fields.
616 * elfxx-target.h (elf_backend_type_change_ok): Define if not
617 defined.
618 (elf_backend_additional_program_headers): Likewise.
619 (elf_backend_modify_segment_map): Likewise.
620 (elf_backend_create_program_headers): Don't define.
621 (elfNN_bed): Change to account for field changes.
622 * elf.c (assign_file_positions_for_segments): Call new
623 modify_segment_map backend function. Don't call old
624 create_program_headers backend function.
625 (get_program_header_size): Call additional_program_headers rather
626 than create_program_headers.
627 * elflink.h (elf_link_add_object_symbols): Initialize
628 type_change_ok from new backend field.
629 (elf_link_output_extsym): Don't warn if _rld_new_interface is
630 defined.
631 (elf_reloc_link_order): Treat a reloc against a defined symbol as
632 a reloc against the appropriate section.
633
634 * elf-bfd.h (struct bfd_elf_section_data): Add tdata field.
635 (struct elf_obj_tdata): Rename ppc_flags_init field to flags_init.
636 (elf_flags_init): Rename from elf_ppc_flags_init.
637 * elf32-ppc.c (ppc_elf_set_private_flags): Use elf_flags_init, not
638 elf_ppc_flags_init.
639 (ppc_elf_copy_private_bfd_data): Likewise.
640 (ppc_elf_merge_private_bfd_data): Likewise.
641
642 * elf32-m68k.c (howto_table): Change src_mask to 0 for all
643 relocation entries.
644
645 Tue Jan 9 15:22:53 1996 David Mosberger-Tang <davidm@azstarnet.com>
646
647 * coff-alpha.c (alpha_relocate_section): During final link, allow
648 output .lita section to be bigger than 64k by adjusting gp value
649 on a per-input section basis.
650 * libecoff.h (struct ecoff_tdata): Add issued_multiple_gp_warning
651 field.
652 (struct ecoff_section_tdata): Add gp field.
653
654 Tue Jan 9 12:00:36 1996 Ian Lance Taylor <ian@cygnus.com>
655
656 Handle Alpha ECOFF changes in OSF/1 3.2.
657 * libecoff.h (struct ecoff_backend_data): Add get_elt_at_filepos
658 field.
659 * coff-alpha.c: Include "aout/ar.h".
660 (alpha_ecoff_get_relocated_section_contents): Don't require an
661 ALPHA_R_IGNORE reloc after an ALPHA_R_GPDISP reloc, since OSF/1
662 3.2 doesn't generate one.
663 (alpha_relocate_section): Likewise.
664 (alpha_ecoff_slurp_armap): Define.
665 (alpha_ecoff_slurp_extended_name_table): Define.
666 (alpha_ecoff_construct_extended_name_table): Define.
667 (alpha_ecoff_truncate_arname): Define.
668 (alpha_ecoff_write_armap): Define.
669 (alpha_ecoff_generic_stat_arch_elt): Define.
670 (alpha_ecoff_update_armap_timestamp): Define.
671 (ARFZMAG): Define.
672 (alpha_ecoff_read_ar_hdr): New static function.
673 (alpha_ecoff_get_elt_at_filepos): New static function.
674 (alpha_ecoff_openr_next_archived_file): New static function.
675 (alpha_ecoff_get_elt_at_index): New static function.
676 (alpha_ecoff_backend_data): Initialize get_elt_at_filepos field.
677 (ecoffalpha_little_vec): Change BFD_JUMP_TABLE_ARCHIVE from
678 _bfd_ecoff to alpha_ecoff.
679 * ecoff.c (ecoff_link_add_archive_symbols): Use get_elt_at_filepos
680 field from backend structure, rather than always calling
681 _bfd_get_elt_at_filepos.
682 * coff-mips.c (mips_ecoff_backend_data): Initialize
683 get_elt_at_filepos field.
684 * archive.c (_bfd_generic_read_ar_hdr_mag): New function, copied
685 from _bfd_generic_read_ar_hdr with minor changes.
686 (_bfd_generic_read_ar_hdr): Use _bfd_generic_read_ar_hdr_mag.
687 * libbfd-in.h (_bfd_generic_read_ar_hdr_mag): Declare.
688 * libbfd.h: Rebuild.
689
690 * bfd-in.h (BFD_IN_MEMORY): Define.
691 * libbfd-in.h (struct bfd_in_memory): Define.
692 * libbfd.c (bfd_read): Handle BFD_IN_MEMORY flag.
693 (bfd_get_file_window): Don't try to map a BFD_IN_MEMORY file.
694 (bfd_write, bfd_stat): Abort if BFD_IN_MEMORY is set.
695 (bfd_tell, bfd_flush, bfd_seek): Handle BFD_IN_MEMORY flag.
696 * bfd.c (struct _bfd): Change iostream field from char * to PTR.
697 (bfd_get_size): Handle BFD_IN_MEMORY flag.
698 * cache.c (bfd_cache_close): Ignore BFD_IN_MEMORY files.
699 (bfd_open_file): Cast to PTR, not char *, when setting iostream.
700 (bfd_cache_lookup_worker): Abort if BFD_IN_MEMORY is set.
701 * opncls.c (bfd_fdopenr): Cast to PTR, not char *, when setting
702 iostream.
703 (bfd_openstreamr): Likewise.
704 * aoutx.h (NAME(aout,some_aout_object_p)): Only fstat iostream if
705 BFD_IN_MEMORY is not set.
706 * riscix.c (riscix_some_aout_object_p): Likewise.
707 * bfd-in2.h, libbfd.h: Rebuild.
708
709 * targets.c (bfd_target): Add _bfd_get_elt_at_index field.
710 (BFD_JUMP_TABLE_ARCHIVE): Add _get_elt_at_index.
711 (bfd_get_elt_at_index): Define.
712 * archive.c (_bfd_generic_get_elt_at_index): Rename from
713 bfd_get_elt_at_index. Change index parameter from int to
714 symindex.
715 * libbfd-in.h (_bfd_generic_get_elt_at_index): Declare.
716 (_bfd_noarchive_get_elt_at_index): Define.
717 (_bfd_archive_bsd_get_elt_at_index): Define.
718 (_bfd_archive_coff_get_elt_at_index): Define.
719 * bfd-in2.h, libbfd.h: Rebuild.
720 * aout-target.h (MY_get_elt_at_index): Define if not defined.
721 * coff-rs6000.c (xcoff_get_elt_at_index): Define.
722 * ieee.c (ieee_get_elt_at_index): Define.
723 * libecoff.h (_bfd_ecoff_get_elt_at_index): Define.
724 * oasys.c (oasys_get_elt_at_index): Define.
725 * som.c (som_get_elt_at_index): Define.
726
727 * ecoff.c (_bfd_ecoff_find_nearest_line): Don't restrict line
728 numbers to the .text section.
729
730 Mon Jan 8 17:00:57 1996 Ian Lance Taylor <ian@cygnus.com>
731
732 * ieee.c (ieee_write_debug_part): Change return type to boolean.
733 If there is a SEC_DEBUGGING section, get the contents of the debug
734 information part from it.
735 (ieee_set_section_contents): Store the contents of a SEC_DEBUGGING
736 section in memory.
737 (ieee_write_object_contents): Check ieee_write_debug_part return.
738
739 Thu Jan 4 17:12:37 1996 Fred Fish <fnf@cygnus.com>
740
741 * config.bfd (i[345]86-*-freebsd*): Add target.
742 * configure.in (i386freebsd_vec): Add vec.
743 * configure: Regenerate.
744 * Makefile.in (BFD32_BACKENDS): Add i386freebsd.o.
745 (BFD32_BACKENDS_CFILES): Add i386freebsd.c.
746 Rebuild dependencies..
747 * freebsd.h: New file.
748 * i386freebsd.c: New file.
749 * targets.c (i386freebsd_vec): Declare.
750 (bfd_target_vector): Add i386freebsd_vec.
751 * i386linux.c (SEGMENT_SIZE): Define as TARGET_PAGE_SIZE
752 * i386netbsd.c (SEGMENT_SIZE): Define as TARGET_PAGE_SIZE
753
754 Thu Jan 4 16:27:46 1996 Ian Lance Taylor <ian@cygnus.com>
755
756 * ieee.c (ieee_slurp_debug): New static function.
757 (ieee_object_p): Call it.
758 (ieee_slurp_section_data): Skip debugging sections.
759 (ieee_get_reloc_upper_bound): Likewise.
760 (ieee_get_section_contents): Likewise.
761 (ieee_canonicalize_reloc): Likewise.
762 (ieee_write_section_part): Likewise.
763 (ieee_write_debug_part): Likewise.
764 (ieee_write_data_part): Likewise.
765 (init_for_output): Likewise.
766
767 Wed Jan 3 19:42:47 1996 Michael Meissner <meissner@wogglebug.tiac.net>
768
769 * elf32-ppc.c (ppc_elf_relocate_section): Make @GOT relocations
770 work.
771 (ppc_elf_howto_raw): Just use bfd_elf_generic_reloc for all howto
772 relocs, since ppc_elf_relocate_section handles the linker case.
773 (ppc_elf_{addr16_ha,got16,toc16,brtaken}_reloc): Delete, no longer
774 used.
775 (ppc_elf_{addr16_ha,got16,toc16,brtaken}_inner): Merge these into
776 ppc_elf_relocate_section since that is now the only caller.
777 (ppc_elf_relocate_section): Ditto.
778
779 Wed Jan 3 15:11:30 1996 Ian Lance Taylor <ian@cygnus.com>
780
781 * coffcode.h (coff_write_object_contents): If we don't know the
782 section of the entry point for an XCOFF executable, always set the
783 entry address to -1.
784
785 Tue Jan 2 14:17:15 1996 Michael Meissner <meissner@tiktok.cygnus.com>
786
787 * elf.c (bfd_section_from_shdr): Add support for note sections.
788
789 Tue Jan 2 13:10:25 1996 Ian Lance Taylor <ian@cygnus.com>
790
791 * bfd-in.h (struct _symbol_info): Add stab_type field.
792 * bfd-in2.h: Rebuild.
793 * aoutx.h (NAME(aout,get_symbol_info)): Set stab_type.
794
795 * elf32-ppc.c: Remove trailing newline from calls to
796 _bfd_error_handler.
797 (ppc_elf_merge_private_bfd_data): Only warn about endianness
798 difference if target endianness is known.
799
800 Thu Dec 21 12:43:49 1995 Michael Meissner <meissner@tiktok.cygnus.com>
801
802 * elf32-ppc.c (ppc_elf_howto_raw): Add a phony reloc to handle the
803 old style TOC16 references without using R_PPC_GOT.
804 (ppc_reloc_type): Ditto.
805 (ppc_elf_reloc_type_lookup): Add support for TOC16.
806 (ppc_elf_toc16_inner): Renamed from ppc_elf_got16_inner.
807 (ppc_elf_toc16_reloc): Renamed from ppc_elf_toc16_reloc.
808 (ppc_elf_got16_{inner,reloc}): Stubs for real GOT support.
809 (ppc_elf_check_relocs): New function for GOT/PLT support that is
810 work in progress.
811 (ppc_elf_adjust_dynamic_symbol): Ditto.
812 (ppc_elf_adjust_dynindx): Ditto.
813 (ppc_elf_size_dynamic_sections): Ditto.
814 (ppc_elf_finish_dynamic_symbol): Ditto.
815 (ppc_elf_finish_dynamic_sections): Ditto.
816 (ELF_DYNAMIC_INTERPRETER): Define.
817
818 Wed Dec 20 19:14:18 1995 Ken Raeburn <raeburn@cygnus.com>
819
820 * elf.c (copy_private_bfd_data): When attaching sections to
821 segments ignore sections that won't be allocated. Patch from
822 Andreas Schwab.
823
824 Tue Dec 19 20:01:43 1995 Ken Raeburn <raeburn@cygnus.com>
825
826 * config.bfd: Match on m68k-cbm-* only if OS doesn't match
827 anything else.
828
829 Tue Dec 19 16:38:59 1995 Ian Lance Taylor <ian@cygnus.com>
830
831 * coff-i960.c (CALC_ADDEND): Define.
832 (coff_i960_relocate_section): Add the input section VMA to the
833 addend for PC relative relocs.
834
835 Sun Dec 17 20:11:55 1995 Kim Knuttila <krk@cygnus.com>
836
837 * peicode.h (pe_print_pdata): Must test the entire entry for zero
838 to correctly terminate.
839
840 Fri Dec 15 12:05:57 1995 Ian Lance Taylor <ian@cygnus.com>
841
842 * targets.c (enum bfd_endian): Define.
843 (bfd_target): Rename byteorder_big_p to byteorder, and change it
844 from boolean to enum bfd_endian. Change header_byteorder_big_p
845 correspondingly.
846 * bfd-in.h (bfd_big_endian, bfd_little_endian): New macros.
847 (bfd_header_big_endian, bfd_header_little_endian): New macros.
848 * bfd-in2.h: Rebuild.
849 * All targets: Change initialization of byteorder and
850 header_byteorder to use enum bfd_endian values rather than
851 booleans.
852 * All files: Change all references to byteorder_big_p and
853 header_byteorder_big_p to use new bfd_*_endian macros.
854
855 * coffgen.c (make_a_section_from_file): Set lma to s_paddr, not
856 s_vaddr.
857 * coffcode.h (coff_write_object_contents): Set s_paddr to lma, not
858 vma.
859 * ecoff.c (_bfd_ecoff_write_object_contents): Likewise.
860
861 Fri Dec 15 07:32:09 1995 steve chamberlain <sac@slash.cygnus.com>
862
863 * pe[i]-i386.c (TARGET_UNDERSCORE): Define to '_'.
864
865 Thu Dec 14 13:45:37 1995 Ian Lance Taylor <ian@cygnus.com>
866
867 * ieee.c: Lots of minor cleanups. Make many functions return
868 errors rather than calling abort. Also:
869 (ieee_write_twobyte): Remove; change callers to call existing
870 ieee_write_2bytes function.
871 (ieee_write_expression): Don't output the section twice when
872 outputting a local symbol. Don't emit an extraneous zero if there
873 is only one term.
874 (ieee_slurp_sections): Set the lma as well as the vma.
875 (ieee_archive_p): Use bfd_alloc_grow rather than an obstack.
876
877 * ihex.c (ihex_set_arch_mach): Don't accept any architecture, just
878 a recognized one or bfd_arch_unknown.
879 (ihex_get_symtab_upper_bound): Define as bfd_0l, to permit objcopy
880 to succeed.
881 (ihex_get_symtab): Likewise.
882
883 Wed Dec 13 15:44:06 1995 Ian Lance Taylor <ian@cygnus.com>
884
885 * aoutx.h: Include <ctype.h>.
886 (struct aout_link_includes_table): Define.
887 (struct aout_link_includes_totals): Define.
888 (struct aout_link_includes_entry): Define.
889 (aout_link_includes_lookup): Define macro.
890 (struct aout_final_link_info): Add includes field.
891 (aout_link_includes_newfunc): New static function.
892 (NAME(aout,final_link)): Initialize includes hash table.
893 (aout_link_write_symbols): Eliminate duplicate N_BINCL entries.
894
895 Wed Dec 13 10:52:14 1995 Stan Shebs <shebs@andros.cygnus.com>
896
897 * mpw-config.in: Match on mips-*-* instead of mips-idt-ecoff.
898
899 Wed Dec 13 11:07:45 1995 Kim Knuttila <krk@cygnus.com>
900
901 * coff-ppc.c (coff_ppc_relocate_section): removed debugging code.
902
903 Tue Dec 12 17:42:06 1995 Kim Knuttila <krk@cygnus.com>
904
905 * peicode.h (pe_print_reloc): New function to dump the .reloc section.
906 (pe_print_private_bfd_data): call pe_print_reloc.
907 * coffcode.h (coff_set_alignment_hook): .reloc section alignment.
908 * coff-ppc.c (in_reloc_p): Added missing non-eligible relocs. Spiffed
909 up some debugging as well.
910
911 Tue Dec 12 11:34:23 1995 Ian Lance Taylor <ian@cygnus.com>
912
913 * config.bfd: Handle sparc-*-elf*. From Ronald F. Guilmette
914 <rfg@monkeys.com>.
915
916 Fri Dec 8 17:47:07 1995 Ian Lance Taylor <ian@cygnus.com>
917
918 * elflink.h (elf_link_add_object_symbols): Set section_count to 0
919 when setting sections to NULL.
920
921 Wed Dec 6 17:05:37 1995 Ian Lance Taylor <ian@cygnus.com>
922
923 * xcofflink.c (struct xcoff_loader_info): Add export_defineds
924 field.
925 (bfd_xcoff_size_dynamic_sections): Add export_defineds parameter.
926 (xcoff_build_ldsyms): If export_defineds is set, set XCOFF_EXPORT
927 for all symbols.
928 * bfd-in.h (bfd_xcoff_size_dynamic_sections): Update declaration.
929 * bfd-in2.h: Rebuild.
930
931 Mon Dec 4 16:40:47 1995 Kim Knuttila <krk@cygnus.com>
932
933 * coffcode.h (coff_set_alignment_hook): Removed some debugging printf's
934
935 Mon Dec 4 11:25:39 1995 Ian Lance Taylor <ian@cygnus.com>
936
937 * ihex.c (ihex_scan): Handle record types 4 and 5.
938 (ihex_object_p): Permit types 4 and 5.
939 (ihex_set_section_contents): Remove check for out of range
940 addresses.
941 (ihex_write_object_contents): Generate types 4 and 5.
942
943 * elflink.h (elf_link_output_extsym): Just ignore warning and
944 indirect references to symbols which don't really exist.
945
946 Sun Dec 3 19:00:27 1995 Kim Knuttila <krk@cygnus.com>
947
948 * peicode.h (pe_print_idata): Minor format fixes
949 (pe_print_edata): New function. Under private printing, this formats
950 the edata section of a PE file.
951 (pe_print_private_bfd_data): Added call to pe_print_edata.
952
953 Sun Dec 3 16:46:54 1995 Richard Earnshaw (rearnsha@armltd.co.uk)
954
955 * aout-arm.c (MY_swap_std_reloc_out): Use KEEPIT to get the symbol
956 index, don't call stoi.
957
958 Fri Dec 1 14:46:51 1995 Ian Lance Taylor <ian@cygnus.com>
959
960 * srec.c (srec_scan): Set lma as well as vma.
961
962 * ihex.c: New file; support for Intel Hex format.
963 * targets.c (enum bfd_flavour): Add bfd_target_ihex_flavour.
964 (ihex_vec): Declare.
965 (bfd_target_vector): Always include ihex_vec.
966 * bfd.c (struct _bfd): Add ihex_data field to tdata union.
967 * Makefile.in: Rebuild dependencies.
968 (BFD_LIBS): Add ihex.o
969 (BFD_LIBS_CFILES): Add ihex.c.
970 * bfd-in2.h: Rebuild.
971
972 * elf.c (assign_file_positions_for_segments): Sort the sections in
973 each segment.
974 (get_program_header_size): Return the right size if segment_map is
975 not NULL.
976 (copy_private_bfd_data): Don't bother to sort the sections.
977
978 * bfd.c (bfd_record_phdr): New function.
979 * bfd-in.h (bfd_record_phdr): Declare.
980 * bfd_in2.h: Rebuild.
981
982 * elf32-sparc.c (elf32_sparc_relocate_section): Remove bogus
983 BFD_ASSERT.
984
985 * libbfd.c (bfd_malloc, bfd_realloc): New functions.
986 (bfd_zmalloc): Return PTR, not char *. Take size_t, not
987 bfd_size_type.
988 * libbfd-in.h (bfd_malloc, bfd_realloc): Declare.
989 (bfd_zmalloc): Change declaration.
990 * libbfd.h: Rebuild.
991 * Many files: Use bfd_malloc and bfd_realloc rather than malloc
992 and realloc. Don't set bfd_error_no_memory if they fail.
993
994 Thu Nov 30 19:32:26 1995 Kim Knuttila <krk@cygnus.com>
995
996 * coff-ppc.c: Added macros to tidy up toc cell treatment. Numerous
997 uses as well. Added a new howto to deal with TOCREL16 relocs that
998 are TOCDEFN as well.
999 (coff_ppc_relocate_section): Expanded treatment of ADDR32NB relocs
1000 to handle RVA relocs from dlltool.
1001 (ppc_coff_rtype2howto): TOCDEFN reloc addition.
1002 (coff_ppc_rtype_to_howto): TOCDEFN reloc addition.
1003 (ppc_coff_reloc_type_lookup): TOCDEFN reloc addition.
1004
1005 * coffcode.h (coff_set_alignment_hook): check idata$X sections
1006 to get the right section alignment.
1007
1008 Thu Nov 30 16:48:18 1995 Ian Lance Taylor <ian@cygnus.com>
1009
1010 * elf.c (_bfd_elf_make_section_from_shdr): Don't set lma based on
1011 p_paddr if p_paddr is zero.
1012 (make_mapping): Set includes_filehdr and includes_phdrs for first
1013 PT_LOAD segment.
1014 (map_sections_to_segments): Set includes_phdrs for PT_PHDR
1015 segment.
1016 (assign_file_positions_for_segments): Handle includes_filehdr and
1017 includes_phdrs. Remove special handling of PT_PHDR and first
1018 PT_LOAD segments.
1019 (copy_private_bfd_data): Set includes_filehdr and includes_phdr
1020 when appropriate. Remove special handling of PT_PHDR segment.
1021 Use a more complex condition for when a section is included in a
1022 segment to handle Solaris linker oddities.
1023
1024 Thu Nov 30 11:17:33 1995 Manfred Hollstein KS/EF4A 60/1F/110 #40283 <manfred@lts.sel.alcatel.de>
1025
1026 * coff-m88k.c (howto_table): Reformatted for easier reading;
1027 special_function now points to new function m88k_special_reloc.
1028 (howto_hvrt16): Function previously used for handling HVRT16 relocs
1029 removed.
1030 (rtype2howto): Do not add reloc's r_offset to the addend, this will
1031 be done correctly by m88k_special_reloc.
1032 (reloc_processing): New function to be used by RELOC_PROCESSING.
1033 (RELOC_PROCESSING): Define to call reloc_processing.
1034
1035 Wed Nov 29 12:42:36 1995 Ian Lance Taylor <ian@cygnus.com>
1036
1037 * peicode.h (pe_print_idata): Call malloc rather than xmalloc.
1038 (pe_print_pdata): Likewise.
1039
1040 * opncls.c (bfd_alloc_by_size_t): Set bfd_error_no_memory if
1041 obstack_alloc fails.
1042 (bfd_alloc_finish): Set bfd_error_no_memory if obstack_finish
1043 fails.
1044 * libbfd.c (bfd_zmalloc): Set bfd_error_no_memory if malloc fails.
1045 * Many files: don't set bfd_error_no_memory if one of the above
1046 routines fails.
1047
1048 * elf.c (assign_file_positions_for_segments): Don't adjust p_paddr
1049 if p_paddr_valid is set.
1050 (copy_private_bfd_data): New static function.
1051 (_bfd_elf_copy_private_section_data): Call copy_private_bfd_data.
1052
1053 * elf.c (assign_file_positions_for_segments): Fix case where extra
1054 program headers were allocated.
1055
1056 * elf.c (_bfd_elf_print_private_bfd_data): New function.
1057 * elf-bfd.h (_bfd_elf_print_private_bfd_data): Declare.
1058 * elfxx-target.h (bfd_elfNN_bfd_print_private_bfd_data): Define to
1059 _bfd_elf_print_private_bfd_data.
1060
1061 * coff-alpha.c (alpha_ecoff_swap_reloc_in): Don't abort if
1062 r_symndx is RELOC_SECTION_NONE for an ALPHA_R_IGNORE reloc.
1063 Change a RELOC_SECTION_LITA symndx to RELOC_SECTION_ABS.
1064 (alpha_ecoff_swap_reloc_out): Change RELOC_SECTION_ABS to
1065 RELOC_SECTION_LITA for ALPHA_R_IGNORE.
1066 (alpha_adjust_reloc_out): For ALPHA_R_IGNORE, don't change
1067 RELOC_SECTION_ABS to RELOC_SECTION_NONE.
1068
1069 Tue Nov 28 16:59:50 1995 Ian Lance Taylor <ian@cygnus.com>
1070
1071 * elf-bfd.h (struct elf_obj_tdata): Add segment_map field.
1072 * elf.c (make_mapping): New static function.
1073 (map_sections_to_segments): New static function.
1074 (elf_sort_sections): New static function.
1075 (assign_file_positions_for_segments): New static function.
1076 (map_program_segments): Remove.
1077 (get_program_header_size): Remove sorted_hdrs, count, and
1078 maxpagesize parameters. Simplify.
1079 (assign_file_positions_except_relocs): When generating an
1080 executable, use assign_file_positions_for_segments.
1081 (elf_sort_hdrs): Remove.
1082 (_bfd_elf_sizeof_headers): Remove eliminated parameters from call
1083 to get_program_header_size.
1084
1085 Mon Nov 27 12:27:46 1995 Ian Lance Taylor <ian@cygnus.com>
1086
1087 * hp300hpux.c (MY(callback)): Set lma as well as vma.
1088
1089 * configure, config.in: Regenerate with autoconf 2.7.
1090
1091 * elf32-i386.c (elf_backend_plt_readonly): Set correctly, to 1.
1092 * elf32-sparc.c (elf_backend_plt_readonly): Set correctly, to 0.
1093
1094 Wed Nov 22 12:02:09 1995 Ian Lance Taylor <ian@cygnus.com>
1095
1096 * ecoff.c (_bfd_ecoff_new_section_hook): Handle .rconst section.
1097 (ecoff_sec_to_styp_flags): Likewise.
1098 (_bfd_ecoff_styp_to_sec_flags): Handle STYP_RCONST.
1099 (ecoff_set_symbol_info): Handle scRConst.
1100 (ecoff_slurp_reloc_table): Handle RELOC_SECTION_RCONST.
1101 (ecoff_compute_section_file_positions): Handle .rconst section.
1102 (_bfd_ecoff_write_object_contents): Likewise.
1103 (ecoff_link_check_archive_element): Handle scRConst.
1104 (ecoff_link_add_externals): Likewise.
1105 (ecoff_link_write_external): Handle .rconst section.
1106 (ecoff_reloc_link_order): Likewise.
1107 * ecofflink.c (bfd_ecoff_debug_accumulate): Handle scRConst.
1108 * coff-alpha.c (alpha_convert_external_reloc): Handle .rconst
1109 section.
1110 (alpha_relocate_section): Handle RELOC_SECTION_RCONST.
1111
1112 * sunos.c (sunos_scan_dynamic_symbol): Only set written if the
1113 DEF_DYNAMIC flag is set.
1114
1115 Tue Nov 21 13:25:29 1995 Ken Raeburn <raeburn@cygnus.com>
1116
1117 * host-aout.c: If TRAD_HEADER is defined, include it.
1118
1119 Tue Nov 21 13:03:57 1995 Ian Lance Taylor <ian@cygnus.com>
1120
1121 * aclocal.m4 (AC_PROG_CC): Remove local definition.
1122 (BFD_BINARY_FOPEN): Require AC_CANONICAL_SYSTEM.
1123 (BFD_NEED_DECLARATION): New function.
1124 * configure.in: Use BFD_NEED_DECLARATION.
1125 * acconfig.h: Put NEED_DECLARATION_* in @TOP@ section.
1126 * configure, config.in: Rebuild with autoconf 2.6.
1127
1128 * xcofflink.c (bfd_xcoff_size_dynamic_sections): Clear
1129 special_sections before returning when called with a non XCOFF
1130 BFD.
1131
1132 * coffgen.c (coff_renumber_symbols): Sort common symbols with
1133 global symbols.
1134
1135 * coffcode.h (coff_compute_section_file_positions): Only pad the
1136 previous section to force file alignment when creating an
1137 executable.
1138
1139 Mon Nov 20 14:54:09 1995 Ian Lance Taylor <ian@cygnus.com>
1140
1141 * coffcode.h (coff_compute_section_file_positions): If
1142 RS6000COFF_C, set up the .debug section.
1143
1144 * xcofflink.c (xcoff_link_input_bfd): Adjust the TOC anchor value
1145 if it is not large enough to accomodate the entire TOC area with
1146 signed 16 bit offsets.
1147 (xcoff_write_global_symbol): Handle negative TOC offsets in global
1148 linkage code.
1149 (_bfd_ppc_xcoff_relocate_section): Adjust relocations against a
1150 TOC anchor to use the TOC value used in the output file.
1151
1152 Sat Nov 18 18:01:41 1995 Ian Lance Taylor <ian@cygnus.com>
1153
1154 * coffgen.c (_bfd_coff_get_external_symbols): Cast malloc return.
1155 (_bfd_coff_read_string_table): Likewise.
1156
1157 Sat Nov 18 19:43:04 1995 Richard Earnshaw (rearnsha@armltd.co.uk)
1158
1159 * pe-arm.c: Fix typos.
1160 * coff-arm.c: Likewise.
1161
1162 Fri Nov 17 16:22:04 1995 Kim Knuttila <krk@cygnus.com>
1163
1164 * coff-ppc.c (list_ele): Added "cat"egory member.
1165 (record_toc): New category parameter (priv or pub).
1166 (ppc_record_toc_entry): Check to see if toc bounds exceeded.
1167 (ppc_process_before_allocation): Removed embrionic data-in-toc from
1168 the mainline. It addes extra toc cells in error.
1169 (ppc_coff_swap_sym_in_hook): Added some documentation.
1170 (dump_toc): Can now diagnose "virtual toc" chicanery.
1171
1172 Fri Nov 17 10:41:25 1995 Philippe De Muyter <phdm@info.ucl.ac.be>
1173
1174 * elf-bfd.h (struct elf_link_hash_table): Change type of
1175 dynsymcount and bucketcount fields from size_t to bfd_size_type.
1176
1177 Fri Nov 17 10:02:58 1995 Ian Lance Taylor <ian@cygnus.com>
1178
1179 * coffcode.h (coff_pointerize_aux_hook): I960 version: don't
1180 pointerize C_LEAFSTAT or C_LEAFEXT entries.
1181
1182 * elflink.h (NAME(bfd_elf,size_dynamic_sections)): Only create
1183 DT_INIT and DT_FINI entries if the _init or _fini symbol is
1184 defined or mentioned in a regular file.
1185
1186 Thu Nov 16 15:16:42 1995 Kim Knuttila <krk@cygnus.com>
1187
1188 * coff-ppc.c (ppc_record_data_in_toc_entry): new function
1189 (coff_ppc_relocate_section): Handle TOCDEFN attribute
1190 (coff_ppc_relocate_section): Correct REL24 handling
1191 (ppc_process_before_allocation): Correct TOCDEFN handling
1192
1193 * peicode.h (dir_names): Added name descriptions
1194
1195 Thu Nov 16 03:38:03 1995 Ken Raeburn <raeburn@cygnus.com>
1196
1197 * VERSION: Updated to cygnus-2.6.
1198
1199 Wed Nov 15 19:30:07 1995 Ken Raeburn <raeburn@cygnus.com>
1200
1201 * targets.c (m68k4knetbsd_vec): Declare.
1202
1203 Wed Nov 15 18:05:52 1995 Ian Lance Taylor <ian@cygnus.com>
1204
1205 * targets.c (bfd_target): Change type of second argument to
1206 _bfd_print_private_bfd_data from void * to PTR.
1207 * libbfd-in.h (_bfd_generic_bfd_print_private_bfd_data): Cast
1208 using PTR rather than void *.
1209 * bfd-in2, libbfd.h: Rebuild.
1210 * peicode.h (pe_print_private_bfd_data): Change vfile from void *
1211 to PTR.
1212 * elfxx-target.h (bfd_elfNN_bfd_print_private_bfd_data): Define as
1213 _bfd_generic_bfd_print_private_bfd_data rather than casting
1214 bfd_true.
1215
1216 Wed Nov 15 04:09:14 1995 Ken Raeburn <raeburn@cygnus.com>
1217
1218 * Makefile.in (.dep1): Fix stupid typo in last change. Remove any
1219 "DO NOT DELETE" lines or blank lines that mkdep writes on some
1220 systems.
1221 (BFD_LIBS_CFILES, ALL_MACHINES_CFILES, BFD32_BACKENDS_CFILES,
1222 BFD64_BACKENDS_CFILES): New variables.
1223 (CFILES): Use them.
1224
1225 Tue Nov 14 11:52:23 1995 Ian Lance Taylor <ian@cygnus.com>
1226
1227 * peicode.h (coff_swap_aouthdr_out): For PPC PE, start isize at 0,
1228 not at the file position of the first section.
1229 * coffcode.h (coff_compute_section_file_positions): Avoid using
1230 unportable #elif.
1231 (coff_write_object_contents): When generating a PPC PE executable
1232 with no symbols, round up the file size to a COFF_PAGE_SIZE
1233 boundary.
1234 * cofflink.c (_bfd_coff_final_link): If there are no symbols,
1235 don't write out a string table.
1236
1237 * elf.c (bfd_section_from_shdr): When using a different section
1238 header, pass the new one to _bfd_elf_make_section_from_shdr.
1239 (elf_fake_sections): Don't set sh_info and sh_entsize fields.
1240 (elf_map_symbols): Add section VMA to symbol value when comparing
1241 against 0.
1242 (_bfd_elf_compute_section_file_positions): Only build symbol table
1243 if there are some symbols. Set file offset of symtab and strtab
1244 sections.
1245 (assign_file_positions_except_relocs): Remove dosyms parameter.
1246 Change all callers. Never set file offset of symtab and strtab
1247 sections.
1248 (_bfd_elf_copy_private_section_data): New function.
1249 (MAP_ONESYMTAB, MAP_DYNSYMTAB, MAP_STRTAB, MAP_SHSTRTAB): Define.
1250 (_bfd_elf_copy_private_symbol_data): New function.
1251 (swap_out_syms): Check for special mapping of st_shndx created by
1252 copy_private_symbol_data.
1253 * elfxx-target.h: Use new copy routines.
1254 * elf-bfd.h (_bfd_elf_copy_private_symbol_data): Declare.
1255 (_bfd_elf_copy_private_section_data): Declare.
1256
1257 * config.bfd (sh-*-*): Set targ_defvec to shcoff_vec.
1258
1259 * coffcode.h (coff_slurp_symbol_table): If COFF_WITH_PE, handle
1260 C_NT_WEAK.
1261
1262 * coff-sh.c (shlcoff_vec): Use _bfd_generic_archive_p, not
1263 _bfd_dummy_target, matching the recent change to archive
1264 recognition.
1265
1266 Mon Nov 13 13:24:38 1995 Ian Lance Taylor <ian@cygnus.com>
1267
1268 * libbfd.c (bfd_get_file_window): Use casts to avoid doing
1269 arithmetic on PTR types.
1270
1271 * aout-target.h (MY(callback)): Set the lma of the sections.
1272
1273 * ecoff.c (ecoff_reloc_link_order): Turn a reloc against a defined
1274 symbol into a reloc against the section.
1275
1276 Mon Nov 13 07:31:35 1995 Kim Knuttila <krk@cygnus.com>
1277
1278 * coff-ppc.c (ppc_coff_link_hash_entry): added support for inline
1279 glue for the relocs: IMGLUE and IFGLUE.
1280 (record_toc): new function - tracks toc contents
1281 (ppc_mark_symbol_as_glue): new function - supports the IMGLUE reloc
1282 (coff_ppc_relocate_section): Added support and fixes for IMGLUE/IFGLUE
1283 (ppc_coff_rtype2howto): removed invalid IMGLUE hack
1284 (coff_ppc_rtype_to_howto): removed invalid IMGLUE hack
1285 (ppc_record_toc_entry): Removed a debug define (duh)
1286
1287 * peicode.h (coff_swap_scnhdr_out): Fixed invalid strcmp for ".reldata"
1288 (pe_print_idata): New function - formats the idata section data
1289 (pe_print_pdata): New function - formats the pdata section data
1290 (pe_print_private_bfd_data): calls to above
1291
1292 Sun Nov 12 12:23:24 1995 Stan Shebs <shebs@andros.cygnus.com>
1293
1294 * Makefile.in (bfd_libs_here, etc): Provide empty definitions.
1295 * coff-rs6000.c (rs6000coff_vec): Add conditional defines
1296 TARGET_SYM and TARGET_NAME for vector and BFD name.
1297 * coff-pmac.c (pmac_xcoff_vec): Remove.
1298 (TARGET_SYM, TARGET_NAME): Define.
1299 * coffcode.h (coff_set_arch_mach_hook) [POWERMAC]: Set the
1300 machine to 0, not all PowerMacs are 601s.
1301
1302 Fri Nov 10 12:10:14 1995 Ian Lance Taylor <ian@cygnus.com>
1303
1304 * elfcode.h (elf_object_p): Read in any program headers.
1305 * elf.c (_bfd_elf_make_section_from_shdr): Adjust section lma
1306 based on the program headers, if any.
1307 (elf_fake_sections): Set sh_addr from the vma, not the lma.
1308 (map_program_segments): Set p_paddr of program headers based on
1309 the lma.
1310
1311 Thu Nov 9 13:01:31 1995 Ian Lance Taylor <ian@cygnus.com>
1312
1313 * archive.c (bfd_generic_archive_p): Preserve tdata in case of
1314 failure.
1315
1316 * aoutx.h (NAME(aout,final_link)): Report a reasonable error when
1317 trying to do a relocateable link with a non-a.out object file.
1318
1319 * archive.c (bfd_generic_archive_p): Check the first object file
1320 in an archive even if target_defaulted is set. If the object file
1321 has the wrong xvec, reject it.
1322
1323 * aoutx.h (NAME(aout,set_section_contents)): If a section can not
1324 be represented, report the name via _bfd_error_handler.
1325 (translate_to_native_sym_flags): Likewise.
1326 * elf32-mips.c (mips_elf_final_link): Likewise.
1327 * oasys.c (oasys_write_sections): Likewise.
1328
1329 * coffcode.h (coff_set_alignment_hook): Write RS6000COFF_C version
1330 which checks for STYP_OVRFLO sections.
1331 (coff_compute_section_file_positions): If RS6000COFF_C, handle
1332 reloc and lineno count overflows.
1333 (coff_write_object_contents): Call coff_count_linenumbers before
1334 coff_compute_section_file_positions. If RS6000COFF_C, handle
1335 reloc and lineno count overflows.
1336 * xcofflink.c (_bfd_xcoff_bfd_final_link): Count line numbers and
1337 relocs before dealing with .pad sections. Count overflow section
1338 headers when handling .pad sections.
1339
1340 * coffcode.h (coff_write_object_contents): Set a.out vstamp to 1
1341 if RS6000COFF_C.
1342
1343 * xcofflink.c (XCOFF_DESCRIPTOR): Define.
1344 (struct xcoff_link_hash_table): Add descriptor_section and
1345 special_sections fields.
1346 (_bfd_xcoff_bfd_link_hash_table_create): Initialize new fields.
1347 (xcoff_link_add_symbols): Set linkage section alignment. Create
1348 descriptor section. Check for magic symbol names (_text, etc.),
1349 and record them in special_sections if found. Set
1350 XCOFF_DESCRIPTOR flag for a function descriptor, and set its
1351 descriptor field to point back to the function code symbol.
1352 (xcoff_sweep): Always mark the special descriptor_section.
1353 (bfd_xcoff_export_symbol): Check whether the symbol might be a
1354 function descriptor, and mark it if it is.
1355 (bfd_xcoff_size_dynamic_sections): Add new special_sections
1356 parameter, and fill it in. Allocate space for the descriptor
1357 section.
1358 (xcoff_build_ldsyms): Set XCOFF_DEF_REGULAR flag when defining
1359 global linkage code. If an undefined function descriptor is
1360 exported, arrange to define it. Warn about any other undefined
1361 exported symbol.
1362 (_bfd_xcoff_bfd_final_link): Write out the descriptor section.
1363 (xcoff_write_global_symbol): Create a function descriptor when
1364 necessary.
1365 * bfd-in.h (bfd_xcoff_size_dynamic_sections): Update declaration.
1366 * bfd-in2.h: Rebuild.
1367
1368 Thu Nov 9 08:40:23 1995 Kim Knuttila <krk@cygnus.com>
1369
1370 * coff-ppc.c (ppc_coff_link_hash_entry): new types for hashing
1371 (ppc_coff_link_hash_table): new types for hashing
1372 (ppc_coff_link_hash_newfunc): hash entry constructor
1373 (ppc_coff_link_hash_table_init): hash table initializer
1374 (ppc_coff_link_hash_table_create): hash table constructor
1375 (ppc_record_toc_entry): changed references to hash table
1376 (coff_ppc_relocate_section): changed references to hash table
1377
1378 * libcoff-in.h (coff_link_hash_entry): removed toc_offset
1379 * libcoff.h: Rebuild
1380
1381 * cofflink.c (_bfd_coff_link_hash_newfunc): removed toc_offset init
1382 (coff_link_add_symbols): removed toc_offset init
1383
1384 Thu Nov 9 04:00:38 1995 Ken Raeburn <raeburn@cygnus.com>
1385
1386 * Makefile.in (.dep1): Make sure the file mkdep is to write exists
1387 first.
1388
1389 * configure.in: Added new option --with[out]-mmap. Set USE_MMAP
1390 if it is given and mmep is available.
1391 * acconfig.h: Undef USE_MMAP.
1392 * configure, config.in: Regenerated.
1393 * aoutx.h: If USE_MMAP is not defined, do all symbol and string
1394 table handling the old way.
1395 (aout_get_external_symbols): Don't complain if last byte of string
1396 table is nonzero.
1397 * libbfd.c [HAVE_MADVISE]: Include sys/types.h and sys/mman.h.
1398 (bfd_free_window) [! USE_MMAP]: Don't define.
1399 (bfd_get_file_window,
1400 _bfd_generic_get_section_contents_in_window) [! USE_MMAP]: Abort.
1401
1402 Wed Nov 8 20:03:44 1995 Eric Freudenthal <freudenthal@nyu.edu>
1403
1404 * coff-a29k.c (SIGN_EXTEND_HWORD): Use ~0xffff rather than
1405 0xffff0000.
1406
1407 Wed Nov 8 11:31:11 1995 Ian Lance Taylor <ian@cygnus.com>
1408
1409 * coff-a29k.c (a29k_reloc): Change handling of R_IREL reloc to be
1410 compatible with AMD generated COFF files. Try to support both AMD
1411 and GNU formats simultaneously.
1412 (coff_a29k_relocate_section): Likewise.
1413
1414 * libbfd.c (bfd_get_file_window): Change writable parameter from
1415 int to boolean; update all callers. Pass MAP_SHARED if not
1416 writable--it's required on Solaris. Cast fprintf argument to
1417 avoid warning.
1418 * bfd-in.h (bfd_get_file_window): Update declaration.
1419 * bfd-in2.h: Rebuild.
1420 * aoutx.h: Update calls to bfd_get_file_window.
1421
1422 * xcofflink.c (XCOFF_DEF_DYNAMIC): Rename from XCOFF_REF_DYNAMIC.
1423 Change all uses.
1424 (xcoff_swap_ldhdr_in): New static function.
1425 (xcoff_swap_ldsym_in): New static function.
1426 (xcoff_find_reloc): Handle the case of a single reloc correctly.
1427 (xcoff_link_add_symbols): If we just created a descriptor, pass it
1428 to _bfd_generic_link_add_one_symbol, to save a hash lookup.
1429 Handle XTY_ER/XMC_XO symbols correctly.
1430 (xcoff_link_add_dynamic_symbols): Rewrite to read .loader symbols
1431 rather than normal symbol table.
1432 (bfd_xcoff_import_symbol): It's not an error if the symbol is
1433 already defined with the same absolute value.
1434 (xcoff_mark): When considering called symbols, check whether the
1435 descriptor is from a dynamic object, rather than the symbol
1436 itself.
1437 (xcoff_build_ldsyms): Likewise.
1438
1439 * libbfd.c (bfd_get_file_window): Change return type to boolean.
1440 Cast realloc and malloc return values. If malloc or realloc fail,
1441 set bfd_error_no_memory.
1442 * bfd-in.h (bfd_get_file_window): Change type to boolean.
1443 * bfd-in2.h: Rebuild.
1444
1445 Tue Nov 7 11:53:48 1995 Kim Knuttila <krk@cygnus.com>
1446
1447 * coff-ppc.c (ppc_record_toc_entry): new function.
1448 (in_reloc_p): changed return value.
1449 (coff_ppc_relocate_section): much rework.
1450 (ppc_allocate_toc_section): new function.
1451 (ppc_process_before_allocation): new function.
1452 (ppc_coff_swap_sym_in_hook): new function.
1453
1454 * cofflink.c (_bfd_coff_link_hash_newfunc): initialize toc_offset.
1455 (coff_link_add_symbols): initialize toc_offset.
1456
1457 * peicode.h (coff_swap_sym_in): Added coff_swap_sym_in_hook
1458 (coff_swap_aouthdr_out): Added more sections to the data
1459 dictionary for the pe file header. Also changed linker version
1460 number on the ppc side.
1461 (dir_names): small improvements to the dictionary printing.
1462 (pe_mkobject_hook): save the file level flags.
1463
1464 * libcoff-in.h (coff_link_hash_entry): added toc_offset field
1465 (pe_tdata): added real_flags field
1466 (coff_tdata): added local_toc_sym_map and access macro
1467
1468 * libcoff.h (coff_link_hash_entry): added toc_offset field
1469 (pe_tdata): added real_flags field
1470 (coff_tdata): added local_toc_sym_map and access macro
1471
1472 * coffcode.h (coff_set_alignment_hook): added hook for PE.
1473 (coff_mkobject): init for local_toc_sym_map
1474 (coff_write_object_contents): set the internal_a.magic to
1475 IMAGE_NT_OPTIONAL_HDR_MAGIC which appears to be what other
1476 ppc compilers use.
1477
1478 Tue Nov 7 13:48:58 1995 Ian Lance Taylor <ian@cygnus.com>
1479
1480 * ecofflink.c (_bfd_ecoff_locate_line): Keep looking through stabs
1481 entries until both the line number address and the function name
1482 address are too large.
1483
1484 * configure.in: Call AC_CHECK_PROG to find and cache AR.
1485 * configure: Rebuilt.
1486
1487 * aclocal.m4 (BFD_CC_FOR_BUILD): Don't define CC_FOR_BUILD if it
1488 is defined in the environment.
1489
1490 Tue Nov 7 10:57:24 1995 Jeffrey A Law (law@cygnus.com)
1491
1492 * som.c (som_get_section_contents_in_window): Define to use
1493 generic version.
1494
1495 Mon Nov 6 17:13:15 1995 Harry Dolan <dolan@ssd.intel.com>
1496
1497 * coff-i860.c: New file, based on coff-i386.c.
1498 * cpu-i860.c: New file, based on cpu-i386.c.
1499 * hosts/i860mach3.h: New file, based on hosts/i386mach3.h.
1500 * config.bfd (i860-*-mach3*, i860-*-osf1*, i860-*-coff*): New
1501 targets, using i860coff_vec.
1502 * configure.in (i860-*-mach3*, i860-*-osf1*): New hosts, using
1503 trad-core.o and hosts/i860mach3.h.
1504 (i860coff_vec): Use coff-i860.o and cofflink.o.
1505 * configure: Rebuild.
1506 * Makefile.in: Rebuild dependencies.
1507 (ALL_MACHINES): Add cpu-i860.o.
1508 (BFD32_BACKENDS): Add coff-i860.o.
1509 (CFILES): Add cpu-i860.c and coff-i860.c.
1510 * targets.c (i860coff_vec): Declare.
1511 (bfd_target_vector): Add &i860coff_vec.
1512 * archures.c (bfd_i860_arch): Declare.
1513 (bfd_archures_list): Add &bfd_i860_arch.
1514 * coffcode.h (coff_set_arch_mach_hook): Handle I860 magic number.
1515 (coff_set_flags): Handle bfd_arch_i860.
1516 (coff_write_object_contents): Handle I860 a.out magic number.
1517
1518 Mon Nov 6 14:34:07 1995 Ian Lance Taylor <ian@cygnus.com>
1519
1520 * xcofflink.c (xcoff_link_add_symbols): Set the alignment power of
1521 the created .tc section to 2.
1522 (xcoff_mark): Don't keep a .loader reloc for a call to an
1523 undefined symbol when creating a shared library.
1524 (xcoff_build_ldsyms): When creating a shared library, generate
1525 global linkage code for a call to an undefined symbol.
1526
1527 Sun Nov 5 21:44:13 1995 Ken Raeburn <raeburn@cygnus.com>
1528
1529 * Makefile.in (CFILES): Rebuild list from BFD_LIBS, ALL_MACHINES,
1530 BFD32_BACKENDS, BFD64_BACKENDS.
1531 (.dep1): Put mkdep output in a separate file.
1532 Rebuilt dependencies.
1533
1534 * ecoff.c (_bfd_ecoff_slurp_armap): Cast _bfd_read_ar_hdr return
1535 value.
1536
1537 Permit use of mmap when available:
1538
1539 * configure.in: Check for mmap, madvise, mprotect.
1540 * config.in, configure: Regenerated.
1541
1542 * libbfd.c (struct _bfd_window_internal): Define type.
1543 (bfd_init_window, bfd_free_window, bfd_get_file_window): New
1544 functions.
1545 (ok_to_map): New static variable for debugging.
1546 (_bfd_generic_get_section_contents_in_window): New function.
1547 * bfd-in.h (bfd_window_internal): Declare type.
1548 (bfd_window): Define type.
1549 (bfd_init_window, bfd_free_window, bfd_get_file_window): Declare.
1550 * libbfd-in.h (_bfd_generic_get_section_contents_in_window):
1551 Declare.
1552
1553 * libaout.h (struct aoutdata): Add two window fields.
1554 (obj_aout_sym_window, obj_aout_string_window): New macros.
1555 * aoutx.h (some_aout_object_p): Initialize windows.
1556 (aout_get_external_symbols): Get symbol data and strings in
1557 windows instead of explicitly allocated buffers.
1558 (slurp_symbol_table): Free window instead of memory.
1559 (bfd_free_cached_info): Release windows instead of freeing storage
1560 directly.
1561 (aout_link_free_symbols): Ditto.
1562
1563 * targets.c (bfd_target): Add new field for
1564 get_section_contents_in_window.
1565 (BFD_JUMP_TABLE_GENERIC): Updated.
1566 * aout-adobe.c, aout-target.h, binary.c, bout.c, coff-alpha.c,
1567 coff-mips.c, elfxx-target.h, i386msdos.c, i386os9k.c, ieee.c,
1568 libcoff-in.h, oasys.c, srec.c, tekhex.c, versados.c: Added new
1569 macros for get_section_contents_in_window field.
1570
1571 Sat Nov 4 12:23:26 1995 Fred Fish <fnf@cygnus.com>
1572
1573 * core.c: Renamed to corefile.c
1574 * makefile.dos (OBJS): Change core.o to corefile.o
1575 * Makefile.in (CFILES, BFD_LIBS): Use corefile.c instead of core.c
1576
1577 start-sanitize-gm
1578 Sat Nov 4 10:16:54 1995 Stu Grossman (grossman@cygnus.com)
1579
1580 * config.bfd (mips*-*-magic*): Add bfd_elf32_bigmips_vec to
1581 targ_selvecs to allow debugging under Irix-5 native.
1582
1583 end-sanitize-gm
1584 Fri Nov 3 15:54:59 1995 Ian Lance Taylor <ian@cygnus.com>
1585
1586 * xcofflink.c (xcoff_link_add_symbols): Rename local variable sub
1587 to o. Clobber and restore the list of new csects around the call
1588 to _bfd_generic_link_add_one_symbol, in case it wants to report a
1589 linker error and the linker wants to read the symbol table. Reset
1590 the line number count of a real section even if it has no relocs.
1591 (_bfd_xcoff_bfd_final_link): If shared, set the DYNAMIC flag.
1592
1593 * coffgen.c (_bfd_coff_read_string_table): Warn if the string size
1594 is too small.
1595
1596 Thu Nov 2 23:16:39 1995 Ian Lance Taylor <ian@cygnus.com>
1597
1598 * xcofflink.c (_bfd_ppc_xcoff_relocate_section): Don't warn about
1599 an undefined symbol in a shared link.
1600
1601 * linker.c (_bfd_generic_link_add_one_symbol): Correct type of
1602 oldtype from bfd_link_order_type to bfd_link_hash_type. From
1603 phdm@info.ucl.ac.be (Philippe De Muyter).
1604
1605 Wed Nov 1 14:26:02 1995 Manfred Hollstein KS/EF4A 60/1F/110 #40283 <manfred@lts.sel.alcatel.de>
1606
1607 * coff-m88k.c (rtype2howto): New static function.
1608 (RTYPE2HOWTO): Use it rather than a macro definition.
1609
1610 * coffcode.h (coff_write_object_contents): set internal_a.magic
1611 to PAGEMAGICPEXECPAGED #if defined (M68) && !defined (LYNXOS).
1612
1613 * configure.in: m68*-motorola-sysv* does not use ptrace-core.o;
1614 define TRAD_HEADER to new file hosts/delta68.h.
1615 m88*-motorola-sysv*, however, does use ptrace-core.o.
1616 * hosts/delta68.h: New file.
1617
1618 * ptrace-core.c (ptrace_unix_core_file_p): change bfd_zmalloc to
1619 bfd_zalloc; provide proper parm abfd to calls to bfd_zalloc.
1620
1621 Wed Nov 1 13:51:54 1995 Ken Raeburn <raeburn@cygnus.com>
1622
1623 * i386linux.c (MY(vec)): Declare before use.
1624
1625 Wed Nov 1 11:45:07 1995 Ian Lance Taylor <ian@cygnus.com>
1626
1627 * reloc16.c (bfd_coff_reloc16_get_relocated_section_contents):
1628 Pass input_bfd, not in_bfd, to bfd_coff_reloc16_extra_cases.
1629
1630 * elf.c (bfd_elf_set_dt_needed_name): Don't do anything if the
1631 BFD is not of the right type.
1632 (bfd_elf_get_needed_list): Likewise.
1633 * i386linux.c (bfd_linux_size_dynamic_sections): Likewise.
1634 * sunos.c (bfd_sunos_get_needed_list): Likewise.
1635 * xcofflink.c (XCOFF_XVECP): Define.
1636 (bfd_xcoff_link_record_set): Don't do anything if the BFD is not
1637 of the right type.
1638 (bfd_xcoff_import_symbol): Likewise.
1639 (bfd_xcoff_export_symbol): Likewise.
1640 (bfd_xcoff_link_count_reloc): Likewise.
1641 (bfd_xcoff_record_link_assignment): Likewise.
1642 (bfd_xcoff_size_dynamic_sections): Likewise.
1643
1644 * sunos.c (sunos_scan_ext_relocs): Only check the reloc symbol
1645 table index against the number of symbols for a base relative
1646 reloc.
1647
1648 * coff-rs6000.c (_bfd_xcoff_sizeof_headers): Change from macro to
1649 static function.
1650 * xcofflink.c (_bfd_xcoff_bfd_link_hash_table_create): Set
1651 full_aouthdr flag here...
1652 (_bfd_xcoff_bfd_final_link): ...not here.
1653
1654 Tue Oct 31 12:52:02 1995 Fred Fish <fnf@cygnus.com>
1655
1656 * libelf.h: Rename to elf-bfd.h to avoid conflict with
1657 systems that have a system <libelf.h>.
1658 * Makefile.in: Globally replace libelf.h with elf-bfd.h.
1659 * bfd.c, elf.c, elf32-arc.c, elf32-gen.c, elf32-hppa.c,
1660 elf32-hppa.h, elf32-i386.c, elf32-i860.c, elf32-m68k.c,
1661 elf32-m88k.c, elf32-mips.c, elf32-ppc.c, elf32-sparc.c,
1662 elf64-gen.c, elf64-sparc.c, elfcode.h, elflink.c,
1663 elfxx-target.h: Include elf-bfd.h rather than libelf.h.
1664 * elfxx-target.h: Change libelf.h reference to elf-bfd.h.
1665
1666 Tue Oct 31 15:30:07 1995 David Mosberger-Tang <davidm@azstarnet.com>
1667
1668 * ecoff.c (ecoff_set_symbol_info): Add new parameter weak. If
1669 set, set BSF_WEAK in symbol. Change all callers.
1670 (ecoff_get_extr): Set weakext based on BSF_WEAK.
1671 (ecoff_link_add_externals): If weakext is set, pass BSF_WEAK to
1672 _bfd_generic_link_add_one_symbol.
1673 (ecoff_indirect_link_order): Check that the section tdata relocs
1674 are not NULL before using them.
1675
1676 * configure.in (alpha*-*-linux*): Set COREFILE to trad-core.o and
1677 define TRAD_HEADER as hosts/alphalinux.h.
1678 * configure: Rebuild.
1679 * hosts/alphalinux.h: New file.
1680 * trad-core.c (trad_unix_core_file_p): Cast u.u_ar0 to bfd_vma,
1681 not int.
1682
1683 Tue Oct 31 12:34:11 1995 Ian Lance Taylor <ian@cygnus.com>
1684
1685 * coffcode.h (coff_slurp_symbol_table): Accept C_BCOMM and
1686 C_ECOMM storage classes.
1687
1688 * xcofflink.c (xcoff_mark_symbol): New static function, broken out
1689 of xcoff_mark.
1690 (xcoff_mark): Call xcoff_mark_symbol.
1691 (bfd_xcoff_export_symbol): Call xcoff_mark_symbol.
1692 (bfd_xcoff_link_count_reloc): Call xcoff_mark_symbol rather than
1693 doing it by hand.
1694 (xcoff_build_ldsyms): Build a .loader symbol for an export symbol.
1695
1696 Mon Oct 30 14:53:48 1995 Ian Lance Taylor <ian@cygnus.com>
1697
1698 * xcofflink.c (struct xcoff_final_link_info): Add new line_filepos
1699 field.
1700 (xcoff_find_reloc): New static function.
1701 (xcoff_link_add_symbols): Use it.
1702 (_bfd_xcoff_bfd_final_link): Set finfo.line_filepos.
1703 (xcoff_link_input_bfd): Handle C_BINCL and C_EINCL. Don't
1704 relocate the value of C_DECL.
1705
1706 * elf.c (elf_fake_sections): Remove bogus BFD_ASSERT.
1707
1708 Sat Oct 28 01:25:34 1995 steve chamberlain <sac@slash.cygnus.com>
1709
1710 * cofflink.c (_bfd_coff_generic_relocate_section): Make
1711 callback decide what goes in .relocs.
1712 * pe[i]-i386.c (TARGET_UNDERSCORE): Define.
1713 * peicode.h (pe_mkobject_hook): Only copy aouthdr if
1714 there is one.
1715
1716 Sat Oct 28 01:51:02 1995 Ian Lance Taylor <ian@cygnus.com>
1717
1718 * xcofflink.c (xcoff_link_add_symbols): Handle csects in the
1719 absolute section.
1720
1721 Fri Oct 27 18:14:39 1995 Ian Lance Taylor <ian@cygnus.com>
1722
1723 * xcofflink.c: More improvements, mostly to fix handling of
1724 constructors and a few other special cases.
1725 * coff-rs6000.c (rs6000coff_vec): Set symbol_leading_char back to
1726 zero, reverting yesterday's change.
1727 * bfd-in.h (bfd_xcoff_link_record_set): Declare.
1728 (bfd_xcoff_link_count_reloc): Declare.
1729 (bfd_xcoff_record_link_assignment): Declare.
1730 * bfd-in2.h: Rebuild.
1731
1732 Fri Oct 27 14:42:15 1995 Niklas Hallqvist <niklas@appli.se>
1733
1734 * PORTING, aout-arm.c, aout-encap.c, aout-rce.c, aout-target.h,
1735 aoutx.h, gen-aout.c, host-aout.c, hp300bsd.c, i386aout.c
1736 i386bsd.c, i386dynix.c, i386linux.c, i386lynx.c, i386mach3.c,
1737 i386netbsd.c, m68klynx.c, m88kmach3.c, mipsbsd.c, newsos3.c,
1738 ns32knetbsd.c, pc532-mach.c, riscix.c, sparclynx.c, sparcnetbsd.c:
1739 Change PAGE_SIZE to TARGET_PAGE_SIZE.
1740
1741 * m68knetbsd.c: Ditto as well as add support for the m68k4k object
1742 format.
1743
1744 * netbsd.h: Double ditto (incl. m68k4k support). NetBSD's text
1745 segments includes the a.out header. See to that the magic number
1746 *always* is big-endian.
1747
1748 * config.bfd: Add m68*-hp*-netbsd* case. Cross-pollinate m68k and
1749 m68k4k NetBSD configurations.
1750
1751 * configure.in, configure: Separate i386 & mips NetBSD
1752 configurations from other BSD ones. Don't assume DEC is the only
1753 thing NetBSD/mips run on. Add {m68k,ns32k,sparc}-*-netbsd*
1754 configurations. Add support for m68k4k NetBSD object format.
1755
1756 * libaout.h: Added M_68K4K_NETBSD magic.
1757
1758 * m68k4knetbsd.c: New file.
1759
1760 * hosts/{m68k,sparc}nbsd.h: Don't define HOST_BIG_ENDIAN_P.
1761
1762 * hosts/nbsd.h: Define HOST_BIG_ENDIAN_P according to
1763 <machine/endian.h>.
1764
1765 * hosts/mipsnbsd.h: New file.
1766
1767 start-sanitize-gm
1768 Fri Oct 27 09:41:51 1995 Stu Grossman (grossman@cygnus.com)
1769
1770 * config.bfd: Add config stuff for mips*-*-magic* to set
1771 targ_defvec to ecoff_big_vec.
1772
1773 end-sanitize-gm
1774 Thu Oct 26 14:16:47 1995 Ian Lance Taylor <ian@cygnus.com>
1775
1776 * xcofflink.c: Numerous changes to get closer to a working XCOFF
1777 linker.
1778 * libcoff-in.h (struct xcoff_tdata): Add full_aouthdr,
1779 toc_section, and entry_section fields.
1780 (struct xcoff_section_tdata): Remove ldrel_count field.
1781 * libcoff.h: Rebuild.
1782 * coffcode.h (coff_mkobject_hook): Initialize new xcoff_data
1783 fields.
1784 (coff_compute_section_file_positions): If RS6000COFF_C, generate
1785 full a.out header if full_aouthdr is set in xcoff_data.
1786 (coff_write_object_contents): Likewise. Set o_snentry and o_sntoc
1787 based on sections stored in xcoff_data.
1788 * coff-rs6000.c (xcoff_copy_private_bfd_data): Copy new xcoff_data
1789 fields.
1790 (xcoff_reloc_type_lookup): Handle BFD_RELOC_CTOR.
1791 (rs6000coff_vec): Set symbol_leading_char to '.'.
1792 * coffgen.c (coff_get_symbol_info): If fix_value is set, fix the
1793 value stored in ret rather than returning a pointer value.
1794
1795 Wed Oct 25 23:10:39 1995 Michael Meissner <meissner@tiktok.cygnus.com>
1796
1797 * config.bfd (powerpc{,le}-{elf,sysv4,eabi,solaris2}): Remove MAC
1798 format for now.
1799
1800 Wed Oct 25 16:19:27 1995 Jeffrey A Law (law@cygnus.com)
1801
1802 * som.c (som_slurp_string_table): Allocate the strings with malloc
1803 since they're free'd by free_cached_info.
1804 (som_slurp_symbol_table): Similarly for the symbol table.
1805
1806 Wed Oct 25 14:59:22 1995 Per Bothner <bothner@kalessin.cygnus.com>
1807
1808 * Makefile.in (diststuff): Don't make headers.
1809
1810 Wed Oct 25 11:32:54 1995 Ian Lance Taylor <ian@cygnus.com>
1811
1812 * Makefile.in: Rebuild dependencies.
1813
1814 * sunos.c (bfd_sunos_record_link_assignment): Don't do anything if
1815 output_bfd is not SunOS.
1816 (bfd_sunos_size_dynamic_sections): Likewise. Don't scan relocs of
1817 non-SunOS input files.
1818
1819 * xcofflink.c: Extensive changes to support linking shared objects
1820 and generating a .loader section.
1821 * libcoff-in.h (struct xcoff_tdata): Add import_file_id field.
1822 (struct xcoff_section_tdata): Add lineno_count, first_symndx,
1823 last_symndx, and ldrel_count fields.
1824 * libcoff.h: Rebuild.
1825 * coff-rs6000.c (xcoff_howto_table): Correct reloc names.
1826 * coffcode.h (styp_to_sec_flags): Don't set any flags if STYP_PAD
1827 is set.
1828 * bfd-in.h (bfd_xcoff_import_symbol): Declare.
1829 (bfd_xcoff_export_symbol): Declare.
1830 (bfd_xcoff_size_dynamic_sections): Declare.
1831 * bfd-in2.h: Rebuild.
1832
1833 Tue Oct 24 17:44:20 1995 Stan Shebs <shebs@andros.cygnus.com>
1834
1835 * configure.in: Add xcofflink.o to pmac_xcoff_vec.
1836 * configure: Rebuild.
1837 * mpw-config.in: Add xcofflink.c.o to powerpc-apple-macos.
1838 * coff-pmac.c: Include coff-rs6000.c instead of duplicating its
1839 contents.
1840 (pmac_xcoff_vec): Update to use new xcoff support.
1841 * coff-rs6000.c (xcoff_generic_stat_arch_elt): Make static.
1842 (xcoff_write_armap): Declare buf as unsigned char.
1843 * xcofflink.c (xcoff_link_add_symbols): Declare a local as PTR.
1844
1845 * mpw-make.sed: Generalize subdir_do edit.
1846
1847 Tue Oct 24 10:25:01 1995 Jeffrey A Law (law@cygnus.com)
1848
1849 * hppabsd-core.c (make_bfd_asection): Initialize asect->filepos
1850 correctly. Don't initialize asect->vma.
1851
1852 Fri Oct 20 13:23:48 1995 Ken Raeburn <raeburn@cygnus.com>
1853
1854 * opncls.c (_bfd_new_bfd): If _bfd_chunksize wasn't preset, use
1855 something a little less than the page size.
1856
1857 Thu Oct 19 13:06:09 1995 Ian Lance Taylor <ian@cygnus.com>
1858
1859 * coff-i960.c (coff_i960_adjust_symndx): Clear *adjustedp.
1860
1861 Wed Oct 18 16:20:08 1995 steve chamberlain <sac@slash.cygnus.com>
1862
1863 * coff-i386.c (coff_i386_reloc_type_lookup): New.
1864 * coffcode.h (coff_write_object_contents): If .bss is before
1865 .data us that as data_start.
1866 * cofflink.c (_bfd_coff_generic_relocate_section): Get reloc
1867 calc correct.
1868 * peicode.h (add_data_entry): Use _cooked_size of data directory.
1869 (coff_swap_outhdr_out): Hardwire in version number.
1870
1871 Wed Oct 18 16:50:54 1995 Ken Raeburn <raeburn@cygnus.com>
1872
1873 * sunos.c (sunos_add_dynamic_symbols): Rename local variables
1874 major and minor to *_vno, since the former are also macros in
1875 SunOS header files. Cast result of bfd_alloc to appropriate
1876 type.
1877
1878 * coffgen.c (coff_find_nearest_line): Cast used_by_bfd value
1879 before assigning to sec_data.
1880
1881 Wed Oct 18 13:25:17 1995 Ian Lance Taylor <ian@cygnus.com>
1882
1883 * ecoff.c (_bfd_ecoff_find_nearest_line): The offset argument is
1884 now relative to the section, not absolute.
1885 * ecofflink.c (_bfd_ecoff_locate_line): Use the right symbol to
1886 get the file name when there is a N_SO directory name. When
1887 handling stabs, remember that section->vma was added to the
1888 offset.
1889
1890 Tue Oct 17 18:24:54 1995 Ian Lance Taylor <ian@cygnus.com>
1891
1892 * sunos.c (struct sunos_link_hash_table): Add needed field.
1893 (sunos_link_hash_table_create): Call bfd_release, not free.
1894 (sunos_link_hash_table_create): Initialize needed field.
1895 (sunos_add_dynamic_symbols): Record needed objects.
1896 (bfd_sunos_get_needed_list): New function.
1897 * bfd-in.h (bfd_sunos_get_needed_list): Declare.
1898 * bfd-in2.h: Rebuild.
1899
1900 Mon Oct 16 14:43:59 1995 steve chamberlain <sac@slash.cygnus.com>
1901
1902 * libcoff-in.h (pe_data_type.in_reloc_p): New.
1903
1904 Mon Oct 16 10:52:50 1995 Ian Lance Taylor <ian@cygnus.com>
1905
1906 * bfd-in.h (struct bfd_link_needed_list): Rename from
1907 bfd_elf_link_needed_list.
1908 * bfd-in2.h: Rebuild.
1909 * elf.c, elflink.h, libelf.h: Corresponding changes.
1910
1911 Add start at AIX linker support; no shared libraries yet.
1912 * xcofflink.c: New file.
1913 * configure.in (rs600coff_vec): Use xcofflink.o.
1914 * configure: Rebuild.
1915 * libcoff-in.h (struct xcoff_tdata): Add csects and debug_indices
1916 fields.
1917 (struct xcoff_section_tdata): Define.
1918 (xcoff_section_data): Define macro.
1919 (_bfd_xcoff_bfd_link_hash_table_create): Declare.
1920 (_bfd_xcoff_bfd_link_add_symbols): Declare.
1921 (_bfd_xcoff_bfd_final_link): Declare.
1922 (_bfd_ppc_xcoff_relocate_section): Declare.
1923 * libcoff.h: Rebuild.
1924 * coff-rs6000.c: Clean up a bit.
1925 (xcoff_mkobject): Default modtype to 1L, not RE. Initialize
1926 cputype, csects, and debug_indices.
1927 (xcoff_copy_private_bfd_data): Copy cputype.
1928 (xcoff_howto_table): Rename from rs6000coff_howto_table.
1929 (xcoff_rtype2howto): Rename from rs6000coff_rtype2howto.
1930 (xcoff_reloc_type_lookup): Rename from
1931 rs6000coff_reloc_type_lookup.
1932 (coff_relocate_section): Define.
1933 (_bfd_xcoff_sizeof_headers): Define.
1934 (_bfd_xcoff_bfd_get_relocated_section_contents): Define.
1935 (_bfd_xcoff_bfd_relax_section): Define.
1936 (_bfd_xcoff_bfd_link_split_section): Define.
1937 (rs6000coff_vec): For BFD_JUMP_TABLE_LINK, use _bfd_xcoff, not
1938 coff.
1939 * coffcode.h (coff_compute_section_file_positions): If AIX,
1940 increment sofar by SMALL_AOUTSZ if not executable.
1941 (coff_write_object_contents): If AIX, always output an a.out
1942 header; if not executable, header size of SMALL_AOUTSZ.
1943 * hash.c (struct bfd_strtab_hash): Add xcoff field.
1944 (_bfd_stringtab_init): Initialize xcoff field.
1945 (_bfd_xcoff_stringtab_init): New function.
1946 (_bfd_stringtab_add): In XCOFF mode, leave two bytes for length.
1947 (_bfd_stringtab_emit): In XCOFF mode, write out length.
1948 * libbfd-in.h (_bfd_xcoff_stringtab_init): Declare.
1949 * libbfd.h: Rebuild.
1950 * Makefile.in: Rebuild dependencies.
1951 (BFD32_BACKENDS): Add xcofflink.o.
1952 (CFILES): Add xcofflink.c.
1953
1954 * elf32-mips.c (mips_elf_symbol_processing): Set SEC_ALLOC, not
1955 SEC_NO_FLAGS, for .acommon section. From Peter Schauer
1956 <Peter.Schauer@Regent.E-Technik.TU-Muenchen.DE>.
1957
1958 Sat Oct 14 21:36:02 1995 Michael Meissner <meissner@tiktok.cygnus.com>
1959
1960 * coff-ppc.c (in_reloc_p): Add, clone from coff-i386.c.
1961
1962 Fri Oct 13 17:48:43 1995 Ken Raeburn <raeburn@cygnus.com>
1963
1964 * acconfig.h (HAVE_SYS_PROCFS_H): Undef, with comment.
1965 * config.in: Regenerated.
1966
1967 * opncls.c (getpagesize) [!HAVE_GETPAGESIZE]: Define as 2048.
1968 (_bfd_chunksize): New variable.
1969 (_bfd_new_bfd): Set it to getpagesize() if negative, and use it
1970 for obstack chunk size.
1971 * configure.in: Check for getpagesize.
1972 * configure: Regenerated.
1973
1974 Mon Sep 25 22:49:32 1995 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
1975
1976 * trad-core.c (rawptr): Make it a local variable of
1977 ptrace_unix_core_file_p.
1978
1979 Fri Oct 13 11:22:01 1995 steve chamberlain <sac@slash.cygnus.com>
1980
1981 * coff-arm.c (in_reloc_p): New.
1982 * coff-i386.c (in_reloc_p): New.
1983 * coffcode.h: Allways include peicode.h if COFF_WITH_PE.
1984 (coff_write_object_contents): Only set has_reloc_section
1985 if PE_IMAGE.
1986 * cofflink.c (_bfd_coff_generic_relocate_section): Call
1987 in_reloc_p to decide if reloc should be emitted.
1988 * libcoff.h (pe_data_type.in_reloc_p): New.
1989 * peicode.h (pe_mkobject): Initialize in_reloc_p.
1990
1991 Wed Oct 11 00:49:29 1995 Ian Lance Taylor <ian@cygnus.com>
1992
1993 * cofflink.c (_bfd_coff_internal_syment_name): Move to coffgen.c.
1994 (_bfd_coff_read_internal_relocs): Likewise.
1995 * coffgen.c (_bfd_coff_internal_syment_name): Copy from coffgen.c.
1996 (_bfd_coff_read_internal_relocs): Likewise.
1997
1998 * elflink.h (elf_link_add_object_symbols): Correct conditions
1999 under which type and size change warnings are issued.
2000
2001 Tue Oct 10 18:32:46 1995 Ian Lance Taylor <ian@cygnus.com>
2002
2003 * coffgen.c (coff_count_linenumbers): Don't count line numbers for
2004 a symbol which is not in a real section.
2005 (coff_write_native_symbol): Corresponding change.
2006
2007 * cofflink.c (_bfd_coff_link_hash_newfunc): Rename from
2008 coff_link_hash_newfunc and make non-static.
2009 (_bfd_coff_link_hash_table_init): New function, broken out of
2010 _bfd_coff_link_hash_table_create.
2011 (_bfd_coff_link_hash_table_create): Use it.
2012 (process_embedded_commands): Make static.
2013 * libcoff-in.h ((_bfd_coff_link_hash_newfunc): Declare.
2014 (_bfd_coff_link_hash_table_init): Declare.
2015 * libcoff.h: Rebuild.
2016
2017 * coffcode.h (coff_mkobject_hook): If RS6000COFF_C, set cputype
2018 field in XCOFF tdata.
2019 (coff_set_arch_mach_hook): Check ifdef RS6000COFF_C, not ifdef
2020 U802ROMAGIC, for clarity. Try to set arch and machine correctly
2021 based on cputype stored in a.out header, or in n_type of initial
2022 .file symbol.
2023 (coff_write_object_contents): Set cputype correctly in a.out
2024 header.
2025 (coff_slurp_symbol_table): Add casts to file_ptr to avoid
2026 warnings.
2027 * coffswap.h (coff_swap_aouthdr_in): Swap in cputype field.
2028 (coff_swap_aouthdr_out): Swap out cputype field. Don't clear
2029 old resv1 field.
2030 * libcoff-in.h (struct xcoff_tdata): Add cputype field.
2031 * libcoff.h: Rebuild.
2032
2033 * cpu-rs6000.c (rs6000_compatible): New static function.
2034 (bfd_rs6000_arch): Use it.
2035 * cpu-powerpc.c (powerpc_compatible): New static function.
2036 (arch_info_struct): Define various flavours of PowerPC.
2037 (bfd_powerpc_arch): Use powerpc_compatible. Point at
2038 arch_info_struct.
2039
2040 Tue Oct 10 10:50:46 1995 Fred Fish <fnf@cygnus.com>
2041
2042 * Makefile.in (FLAGS_TO_PASS): Remove BISON.
2043
2044 Tue Oct 10 01:28:29 1995 Ian Lance Taylor <ian@cygnus.com>
2045
2046 * elflink.h (elf_link_add_object_symbols): Don't warn about
2047 changing the size or type if the old definition was weak.
2048
2049 Mon Oct 9 11:24:08 1995 Ian Lance Taylor <ian@cygnus.com>
2050
2051 * coffcode.h (combined_entry_type): Add fix_line field.
2052 (coff_slurp_line_table): Warn if we try to set the lineno field of
2053 a symbol twice.
2054 (coff_slurp_symbol_table): If RS6000COFF_C, handle C_BINCL and
2055 C_EINCL by setting fix_line. Fix C_BSTAT symbol value.
2056 * coffgen.c (coff_mangle_symbols): Handle fix_line.
2057 (coff_write_symbol): Only use N_DEBUG if the symbol is in the
2058 absolute section.
2059 (coff_print_symbol): Print fix_value symbols in a useful fashion.
2060 * libcoff.h: Rebuild.
2061
2062 * libcoff-in.h (struct xcoff_tdata): Define.
2063 (xcoff_data): Define.
2064 * bfd.c (struct _bfd): Add xcoff_obj_data field to tdata union.
2065 * bfd-in2.h, libcoff.h: Rebuild.
2066 * coff-rs6000.c (xcoff_mkobject): New static function.
2067 (coff_mkobject): Define.
2068 (xcoff_copy_private_bfd_data): New static function.
2069 (coff_bfd_copy_private_bfd_data): Define.
2070 (rs6000coff_howto_table): Change R_TOC complain_on_overflow from
2071 signed to bitfield.
2072 (rs6000coff_vec): Add DYNAMIC to object_flags.
2073 * coffcode.h (sec_to_styp_flags): If RS6000COFF_C, handle .pad and
2074 .loader sections specially.
2075 (coff_new_section_hook): If RS6000COFF_C, get the .text and .data
2076 section alignment from the XCOFF tdata information.
2077 (coff_mkobject_hook): If RS6000COFF_C, set DYNAMIC based on
2078 F_SHROBJ, and copy the extra a.out header information into the
2079 XCOFF tdata structure.
2080 (coff_write_object_contents): If RS6000COFF_C, set F_SHROBJ,
2081 F_DYNLOAD and the extra a.out header information.
2082 (coff_slurp_symbol_table): Set BSF_NOT_AT_END for a C_EXT or
2083 C_HIDEXT symbol with attached csect information.
2084 * coffswap.h (coff_swap_aouthdr_in): If RS6000COFF_C, swap
2085 in the o_maxdata field.
2086 (coff_swap_aouthdr_out): If RS6000COFF_C, swap extra XCOFF fields.
2087 * coffgen.c (coff_renumber_symbols): Don't move any symbol to the
2088 end if BSF_NOT_AT_END is set.
2089
2090 * targets.c (bfd_target): Rename _bfd_read_ar_hdr field to
2091 _bfd_read_ar_hdr_fn.
2092 * libbfd-in.h (_bfd_read_ar_hdr): Update accordingly.
2093 * bfd-in2.h, libbfd.h: Rebuild.
2094 * archive.c (_bfd_get_elt_at_filepos): Cast _bfd_read_ar_hdr
2095 return value.
2096 (do_slurp_bsd_armap, do_slurp_coff_armap): Likewise.
2097 (bfd_slurp_bsd_armap_f2): Likewise.
2098 (_bfd_slurp_extended_name_table): Likewise.
2099
2100 Fri Oct 6 16:18:35 1995 Ken Raeburn <raeburn@cygnus.com>
2101
2102 Mon Sep 25 22:49:32 1995 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
2103
2104 * archive.c (bfd_get_next_mapent): Return BFD_NO_MORE_SYMBOLS
2105 when the symbol table is empty.
2106
2107 * elf32-m68k.c (elf_m68k_size_dynamic_sections): Don't reserve
2108 space for section symbols, since we don't output them either.
2109 (elf_m68k_adjust_dynindx): Removed.
2110
2111 * ptrace-core.c (rawptr): Make it a local variable of
2112 ptrace_unix_core_file_p.
2113
2114 Fri Oct 6 12:24:47 1995 Michael Meissner <meissner@tiktok.cygnus.com>
2115
2116 * coff-rs6000.c (xcoff_write_archive_contents): Return false, not
2117 NULL.
2118
2119 * config.bfd (powerpc{,le}-{elf,sysv4,eabi,solaris2}): Add NT, and
2120 Mac object file formats.
2121
2122 Fri Oct 6 12:04:02 1995 Ian Lance Taylor <ian@cygnus.com>
2123
2124 * coffgen.c (coff_fix_symbol_name): Don't try to set up file
2125 auxent if there isn't one.
2126 (coff_write_symbols): If there is no file auxent, use SYMNMLEN
2127 rather than FILNMLEN as the maximum name length.
2128
2129 * coffcode.h (bfd_coff_backend_data): Add new field
2130 _bfd_coff_print_aux.
2131 (bfd_coff_print_aux): New static function.
2132 (coff_pointerize_aux_hook (RS6000COFF_C version)): Pointerize the
2133 scnlen field of an XTY_LD csect aux entry.
2134 (coff_print_aux): New static function.
2135 (coff_slurp_symbol_table): Don't pointerize scnlen field; now done
2136 in coff_pointerize_aux_hook.
2137 (bfd_coff_std_swap_table): Initialize new field.
2138 * coffgen.c (coff_print_symbol): Call bfd_coff_print_aux.
2139 * libcoff.h: Rebuild.
2140 * coff-alpha.c (alpha_ecoff_backend_data): Initialize new field.
2141 * coff-mips.c (mips_ecoff_backend_data): Likewise.
2142
2143 * coffcode.h (coff_write_object_contents): On AIX, clear F_RELFLG
2144 if there are symbols, for native AIX ld compatibility.
2145
2146 * coffcode.h (bfd_coff_backend_data): Add new field
2147 _bfd_coff_pointerize_aux_hook.
2148 (coff_pointerize_aux_hook): Define as a function if RS6000COFF_C
2149 or I960, and as 0 otherwise.
2150 (bfd_coff_std_swap_table): Initialize new field.
2151 * libcoff.h: Rebuild.
2152 * coffgen.c (coff_pointerize_aux): Change parameters to take
2153 symbol pointer instead of type and class, and to take aux index.
2154 Call _bfd_coff_pointerize_aux_hook if it is defined.
2155 (coff_get_normalized_symtab): Always call coff_pointerize_aux.
2156 * coff-alpha.c (alpha_ecoff_backend_data): Initialize all fields.
2157 * coff-mips.c (mips_ecoff_backend_data): Likewise.
2158
2159 * coff-rs6000.c: Add full support for AIX archives. Rewrite old
2160 read-only/host-only support.
2161
2162 * coffcode.h (coff_slurp_symbol_table): Set C_HIDEXT symbols to be
2163 BSF_LOCAL.
2164 (OTHER_GLOBAL_CLASS): Do not define to be C_HIDEXT if
2165 RS6000COFF_C.
2166
2167 * targets.c (bfd_target): Add _bfd_read_ar_hdr field. Modify
2168 BFD_JUMP_TABLE_ARCHIVE accordingly.
2169 * libbfd-in.h (_bfd_snarf_ar_hdr): Don't declare.
2170 (_bfd_compute_and_write_armap): Declare.
2171 (_bfd_generic_read_ar_hdr): Declare.
2172 (_bfd_read_ar_hdr): Define.
2173 (_bfd_noarchive_read_ar_hdr): Define.
2174 (_bfd_archive_bsd_read_ar_hdr): Define.
2175 (_bfd_archive_coff_read_ar_hdr): Define.
2176 * archive.c: Change all callers of _bfd_snarf_ar_hdr to call
2177 _bfd_read_ar_hdr instead.
2178 (_bfd_generic_read_ar_hdr): Rename from _bfd_snarf_ar_hdr.
2179 (_bfd_compute_and_write_armap): Rename from
2180 compute_and_write_armap. Make non-static. Change all callers.
2181 * ecoff.c (_bfd_ecoff_slurp_armap): Call _bfd_read_ar_hdr rather
2182 than _bfd_snarf_ar_hdr.
2183 * aout-target.h (MY_read_ar_hdr): Define if not defined.
2184 * ieee.c (ieee_read_ar_hdr): Define.
2185 * libecoff.h (_bfd_ecoff_read_ar_hdr): Define.
2186 * oasys.c (oasys_read_ar_hdr): Define.
2187 * som.c (som_read_ar_hdr): Define.
2188 * bfd-in2.h, libbfd.h: Rebuild.
2189
2190 Thu Oct 5 14:04:07 1995 steve chamberlain <sac@slash.cygnus.com>
2191
2192 * peicode.c (coff_swap_filehdr_in): If symptr is
2193 zero, there aren't any symbols, even if nsyms is set.
2194
2195 Thu Oct 5 11:45:02 1995 Ian Lance Taylor <ian@cygnus.com>
2196
2197 * libecoff.h (struct ecoff_backend_data): Add adjust_headers
2198 field.
2199 * ecoff.c (ecoff_sec_to_styp_flags): Check for various Alpha
2200 sections, and set styp correctly for them: .got, .hash, .dynamic,
2201 .liblist, .rel.dyn, .conflic, .dynstr, .dynsym, .comment.
2202 (_bfd_ecoff_styp_to_sec_flags): Check for various Alpha section
2203 types.
2204 (ecoff_sort_hdrs): New static function.
2205 (ecoff_compute_section_file_positions): Return boolean, not void.
2206 Sort the sections by VMA before looking through them. Put the
2207 first non SEC_ALLOC section on a new page. Put every SEC_ALLOC
2208 section on an appropriate boundary within the page.
2209 (ecoff_compute_reloc_file_positions): Check return value of
2210 ecoff_compute_section_file_positions.
2211 (_bfd_ecoff_set_section_contents): Likewise.
2212 (_bfd_ecoff_write_object_contents): Check for various Alpha
2213 section types when incrementing text_size and data_size. Call
2214 adjust_headers backend function if it exists.
2215 * coff-alpha.c (alpha_adjust_headers): New static function.
2216 (alpha_ecoff_backend_data): Initialize adjust_headers field.
2217 * coff-mips.c (mips_ecoff_backend_data): Likewise.
2218
2219 * hosts/i386bsd.h: Restore file incorrectly deleted on Sep 6.
2220
2221 Wed Oct 4 18:15:02 1995 Jeff Law (law@hurl.cygnus.com)
2222
2223 * rs6000-core.c (CORE_VERSION_1): Use CORE_VERSION_1 instead
2224 of ALTERNATE_AIX_CORE_FORMAT.
2225 * configure.in (aix4): No longer need CORE_FLAGS.
2226 * configure: Updated.
2227
2228 Wed Oct 4 15:36:36 1995 Ken Raeburn <raeburn@cygnus.com>
2229
2230 NS32k changes from Ian Dall:
2231 * aoutx.h (MY_final_link_relocate, MY_relocate_contents): New
2232 macros.
2233 (aout_link_input_section_std, aout_link_input_section_ext,
2234 aout_link_reloc_link_order): Call them instead of _bfd_*
2235 versions.
2236 * aout-target.h (MY_exec_header_not_counted): New macro, defaults
2237 to zero.
2238 (backend_data): Use it instead of hardcoded zero.
2239
2240 * aout-ns32k.c (CTOR_TABLE_RELOC_HOWTO): New macro.
2241 (MY_swap_std_reloc_out): Use udata.i for KEEPIT, don't call stoi.
2242
2243 * ns32knetbsd.c: Include bfd.h.
2244 (MY_text_includes_header, MY_bfd_reloc_type_lookup): New macros.
2245 (MY_bfd_reloc_type_lookup): Declare function too.
2246 * pc532-mach.c (set_sizes): Don't declare.
2247 (MY_text_includes_header, MY_exec_header_not_counted): Define.
2248 (backend_data, MY_backend_data): Don't define.
2249
2250 * config.bfd: Treat ns32k-pc532-ux* like ns32k-pc532-mach*, and
2251 ns32k-*-lites* like ns32k-*-netbsd*.
2252
2253 * hosts/nbsd.h: Swap order of sys/vmparam.h and sys/param.h, to
2254 compile on lites.
2255
2256 Wed Oct 4 14:15:52 1995 Ian Lance Taylor <ian@cygnus.com>
2257
2258 * coffcode.h (coff_write_object_contents): Restore setting
2259 f_timdat to 0, deleted on August 22.
2260
2261 Tue Oct 3 16:28:32 1995 steve chamberlain <sac@slash.cygnus.com>
2262
2263 * coffcode.h (coff_bfd_copy_private_symbol_data,
2264 coff_bfd_copy_private_section_data,
2265 coff_bfd_copy_private_bfd_data): ifdef to allow overrides.
2266 * peicode.h (coff_bfd_copy_private_bfd_data): New
2267 (pe_bfd_copy_private_bfd_data): New.
2268 (coff_swap_scnhdr_in): Swap bss size into the right place.
2269 (pe_print_private_bfd_data): Add some newlines.
2270
2271 Tue Oct 3 11:53:04 1995 Jeff Law (law@hurl.cygnus.com)
2272
2273 * som.c (setup_sections): Don't die if a space has no subspaces.
2274
2275 Mon Oct 2 14:08:55 1995 Ian Lance Taylor <ian@cygnus.com>
2276
2277 * elflink.h (elf_link_add_object_symbols): Don't let a weak
2278 dynamic symbol override a common symbol. Don't change the size or
2279 type if they have been set and the new symbol is not a definition.
2280 Warn if the size or type changes.
2281
2282 Sun Oct 1 01:34:41 1995 Jeff Law (law@hurl.cygnus.com)
2283
2284 * som.c (som_begin_writing): Don't write the symbol table or
2285 symbol strings.
2286 (som_finish_writing): Write them here. Place them after the
2287 subspace data, but before the relocs.
2288
2289 Fri Sep 29 11:01:55 1995 Ian Lance Taylor <ian@cygnus.com>
2290
2291 * sunos.c (sunos_add_one_symbol): Just pass false, not
2292 info->shared_library, to sunos_create_dynamic_sections.
2293 (sunos_scan_ext_relocs): Don't warn about a reloc in the .text
2294 section.
2295 (sunos_check_dynamic_reloc): Remove .text section assertion.
2296
2297 Thu Sep 28 18:48:47 1995 Stan Shebs <shebs@andros.cygnus.com>
2298
2299 * config.bfd: Add powerpc-*-macos*, powerpc-*-mpw*.
2300 * configure, configure.in: Add pmac_xcoff_vec case.
2301 * Makefile.in (BFD32_BACKENDS): Add coff-pmac.o.
2302 * coff-pmac.c: New file, PowerMac XCOFF support.
2303 * coffcode.h (coff_set_arch_mach_hook): Add PowerMac case.
2304 * targets.c (pmac_xcoff_vec): Declare.
2305
2306 * mpw-config.in: Various changes to be compatible with the
2307 autoconf-based configury.
2308 * mpw-make.sed: New file, sed commands to translate Unix
2309 makefile into MPW syntax.
2310 * mpw-make.in: Remove.
2311 * hosts/mpw.h: Remove.
2312 * bfd-in.h, bfd-in2.h: If MPW, include the file that defines
2313 true and false as enums, then define TRUE_FALSE_ALREADY_DEFINED.
2314
2315 Thu Sep 28 17:06:23 1995 steve chamberlain <sac@slash.cygnus.com>
2316
2317 * binary.c (binary_get_symtab): Return an empty string on error.
2318 * opncls.c (bfd_fdpenr): Change WIN32 restriction to WINGDB.
2319
2320 Thu Sep 28 15:30:44 1995 Kim Knuttila <krk@nellie>
2321
2322 * coff-ppc.c: Reformatted according to gnu conventions
2323 Removed irrelevant "if 0" code
2324
2325 Thu Sep 28 11:19:53 1995 Ian Lance Taylor <ian@cygnus.com>
2326
2327 * hp300hpux.c (convert_sym_type): Treat secondary symbols as weak
2328 symbols rather than as indirect symbols.
2329 (MY(slurp_symbol_table)): Don't do anything special about
2330 secondary symbols.
2331
2332 * coffcode.h (coff_new_section_hook): Make sure that the alignment
2333 of .ctors and .dtors sections is no larger than 2.
2334
2335 * sunos.c (sunos_add_one_symbol): Don't change
2336 bfd_link_hash_common to bfd_link_hash_new, since it may be on the
2337 undef list.
2338 (bfd_sunos_record_link_assignment): Don't put __DYNAMIC in the
2339 dynamic symbols when creating a shared library.
2340 (sunos_scan_ext_relocs): Handle relocs correctly when creating a
2341 shared library.
2342 (sunos_scan_dynamic_symbol): Don't mark the __DYNAMIC symbol as
2343 written even if it is not defined in a regular object.
2344 (sunos_write_dynamic_symbol): Use plt_offset for the address of
2345 the jump table reloc. Add an assertion. Use RELOC_JMP_SLOT
2346 rather than the constant 22.
2347 (sunos_check_dynamic_reloc): Handle creating a shared library.
2348 (sunos_finish_dynamic_link): Set the first entry in the GOT to
2349 zero when creating a shared library.
2350 * aoutx.h (NAME(aout,final_link)): If there is a symbol __DYNAMIC,
2351 write it out at the start of the symbol table.
2352
2353 * Makefile.in (BFD32_BACKENDS): Add coff-arm.o.
2354
2355 Thu Sep 28 00:58:05 1995 Doug Evans <dje@deneb.cygnus.com>
2356
2357 * config.bfd: Add arm-*-coff.
2358 * configure.in, configure: Add armcoff_{little,big}_vec.
2359 * targets.c (armcoff_{little,big}_vec): Declare.
2360 (bfd_target_vector): Add armcoff_{little,big}_vec.
2361 * coff-arm.c (armcoff_{little,big}_vec): Always define.
2362
2363 Wed Sep 27 10:37:14 1995 Ian Lance Taylor <ian@cygnus.com>
2364
2365 * targets.c (bfd_find_target): Remove debugging code.
2366
2367 Wed Sep 27 07:23:39 1995 Kim Knuttila <krk@nellie>
2368
2369 * coff-ppc.c, pe-ppc.c, pei-ppc.c: Initial bfd for coff/PE
2370 support on powerpc.
2371 * Makefile.in: added *-ppc files
2372 * coffcode.h: ppc MAGIC, and use peicode.h rather than coffswap.h to
2373 allow pe based .o's to be shared with other tools on ppc/NT
2374 * config.bfd: added powerpc[le]-[pe|winnt] config support
2375 * configure, configure.in: added bfd_powerpc[le]_pe[i]_vec
2376 * peicode.h: Added more section flags for PE on ppc
2377 Added coff_swap_filehdr_out to allow peicode.h to be
2378 used for non-image PE files on ppc.
2379 Check for image, or not, before copying pe_opthdr
2380 * targets.c: Added new bfd's
2381 * targets.c: Removed two inactive bfds that shouldn't have made it this
2382 far.
2383
2384 Tue Sep 26 14:06:41 1995 Michael Meissner <meissner@tiktok.cygnus.com>
2385
2386 * elf32-ppc.c (ppc_reloc_type): Rename from reloc_type, and use
2387 explicit values to initialize all relocs. Change all users.
2388 (ppc_elf_brtaken_inner): New function to handle branch predicition
2389 relocs.
2390 (ppc_elf_brtaken_reloc): Ditto.
2391 (ppc_elf_howto_raw): Use new functions. Make sure all unsupported
2392 relocs use ppc_elf_unsupported_reloc.
2393 (ppc_elf_merge_private_bfd_data): Keep track of whether an error
2394 needs to be reported.
2395 (ppc_elf_relocate_section): Support branch prediction relocs.
2396
2397 Tue Sep 26 12:48:05 1995 Ian Lance Taylor <ian@cygnus.com>
2398
2399 * bfd.c (bfd_assert): Remove \n from string passed to
2400 _bfd_error_handler.
2401
2402 * coff-i386.c: (TWO_DATA_SECS): Don't define.
2403 * coffcode.h (bfd_coff_backend_data): Remove _bfd_make_section_hook.
2404 (bfd_coff_make_section_hook): Don't define.
2405 (coff_make_section_hook): Remove.
2406 (sec_to_styp_flags): Remove TWO_DATA_SECS case.
2407 (styp_to_sec_flags): Likewise.
2408 (coff_write_object_contents): Likewise.
2409 (bfd_coff_std_swap_table): Don't initialize make_section_hook
2410 field.
2411 * libcoff.h: Rebuild.
2412 * coffgen.c (make_a_section_from_file): Just call
2413 bfd_make_section_anyway, not bfd_make_section or
2414 bfd_coff_make_section_hook.
2415 * ecoff.c (_bfd_ecoff_make_section_hook): Remove.
2416 * libecoff.h (_bfd_ecoff_make_section_hook): Don't declare.
2417 * coff-alpha.c (alpha_ecoff_backend_data): Don't initialize
2418 make_section_hook field.
2419 * coff-mips.c (mips_ecoff_backend_data): Likewise.
2420
2421 * aoutx.h (translate_from_native_sym_flags): Don't try to stuff
2422 pointers into value field for warning and indirect symbols; just
2423 leave the value field alone.
2424 * linker.c (generic_link_add_symbol_list): Use next symbol for
2425 warning and indirect symbols, rather than looking in symbol value.
2426 * ecoff.c (ecoff_set_symbol_info): Remove indirect_ptr_ptr
2427 parameter. Change all callers. Remove support for indirect
2428 symbols; it didn't work anyhow.
2429 (_bfd_ecoff_slurp_symbol_table): Remove indirect_ptr variable.
2430 * syms.c: Change comments about BSF_WARNING and BSF_INDIRECT.
2431 * bfd-in2.h: Rebuild.
2432
2433 Mon Sep 25 16:04:09 1995 Michael Meissner <meissner@tiktok.cygnus.com>
2434
2435 * elf32-ppc.c (ppc_elf_howto_raw): For all 14-bit branch relocs,
2436 go back to telling the tools this reloc operates on 32 bits.
2437
2438 Mon Sep 25 11:48:02 1995 Ian Lance Taylor <ian@cygnus.com>
2439
2440 * aout-adobe.c (aout_adobe_callback): Use _bfd_error_handler
2441 rather than a direct fprintf.
2442 * archive.c (_bfd_write_archive_contents): Likewise.
2443 * coffcode.h (coff_slurp_symbol_table): Likewise.
2444 * elf32-ppc.c (ppc_elf_merge_private_bfd_data): Likewise.
2445 (ppc_elf_unsupported_reloc): Likewise.
2446 (ppc_elf_relocate_section): Likewise.
2447 * i386linux.c (linux_tally_symbols): Likewise.
2448 (linux_finish_dynamic_link): Likewise.
2449 * osf-core.c (osf_core_core_file_p): Likewise.
2450 * rs6000-core.c (rs6000coff_get_section_contents): Likewise.
2451 * som.c (som_sizeof_headers): Likewise.
2452 * srec.c (srec_bad_byte): Likewise.
2453 * bfd.c (bfd_assert): Likewise. Also change file to be const.
2454 * libbfd-in.h (bfd_assert): Declare first parameter const.
2455 * libbfd.h: Rebuild.
2456 * coff-a29k.c (a29k_reloc): Don't bother to fprintf; returning
2457 bfd_reloc_overflow is enough.
2458 * coff-h8300.c (rtype2howto): Don't bother to fprintf; just abort.
2459 * coff-h8500.c (rtype2howto): Likewise.
2460 * coff-z8k.c (rtype2howto): Likewise.
2461 * coffcode.h (dummy_reloc16_extra_cases): Likewise.
2462 * elf.c (_bfd_elf_get_lineno): Likewise.
2463 (_bfd_elf_no_info_to_howto): Likewise.
2464 (_bfd_elf_no_info_to_howto_rel): Likewise.
2465 * hp300hpux.c (convert_sym_type): Likewise.
2466 (MY(swap_std_reloc_in)): Likewise.
2467 * elf.c (bfd_section_from_shdr): Remove #if 0 sections.
2468
2469 * libaout.h (struct aoutdata): Add line_buf field.
2470 * aoutx.h (NAME(aout,find_nearest_line)): Remove statics buffer
2471 and filename_buffer. Instead, use a malloc buffer stored in the
2472 new line_buf field. Remove length restrictions.
2473
2474 * coffgen.c (string_size): Remove static variable.
2475 (debug_string_size, debug_string_section): Likewise.
2476 (coff_fix_symbol_name): Add string_size_p, debug_string_section_p,
2477 and debug_string_size_p parameters. Use them instead of the
2478 global variables. Change all callers.
2479 (coff_write_symbol): Likewise.
2480 (coff_write_alien_symbol, coff_write_native_symbol): Likewise.
2481 (coff_write_symbols): Add local variables to replace removed
2482 global variables.
2483
2484 * libcoff-in.h (struct coff_section_tdata): Add offset, i,
2485 function, and line_base fields.
2486 * libcoff.h: Rebuild.
2487 * coffgen.c (coff_find_nearest_line): Use section tdata to cache
2488 information, rather than using static variables.
2489
2490 * sunos.c (sunos_read_dynamic_info): Adjust offsets in an NMAGIC
2491 file. From Peter DeWolf <pld@amt.tay1.dec.com>.
2492
2493 * init.c (initialized): Remove static variable.
2494 (bfd_init): Don't bother setting initialized.
2495 (bfd_check_init): Remove.
2496 * opncls.c (_bfd_new_bfd): Don't call bfd_check_init.
2497 * libbfd.h: Rebuild.
2498
2499 Sat Sep 23 01:22:23 1995 Peter Schauer (pes@regent.e-technik.tu-muenchen.de)
2500
2501 * rs6000-core.c (rs6000coff_core_p): Don't check the core file
2502 size for full core dumps. Copy core file header to private data.
2503 (rs6000coff_core_file_failing_command,
2504 rs6000coff_core_file_failing_signal): New functions to extract
2505 the file name and terminating signal from the core file.
2506 * coff-rs6000.c: Use them.
2507
2508 Fri Sep 22 17:44:47 1995 Ian Lance Taylor <ian@cygnus.com>
2509
2510 Change arch info to be const, initialized at compile time.
2511 * archures.c: Reindent many functions. Change CONST to const.
2512 (bfd_arch_info_type): Make arch_name const. Remove disassemble;
2513 nothing set it anyhow. Make next const.
2514 (bfd_arch_info_list): Remove.
2515 (bfd_archures_list): Rename from archures_init_table. Change from
2516 a table of function pointers to a table of bfd_arch_info_type
2517 structure addresses.
2518 (bfd_scan_arch): Rewrite accordingly. Return a const pointer.
2519 (bfd_lookup_arch): Likewise.
2520 (bfd_set_arch_info): Rewrite accordingly. Change argument to be a
2521 const pointer.
2522 (bfd_default_arch_struct): Make const.
2523 (bfd_arch_init, bfd_arch_linkin): Remove.
2524 (bfd_get_arch_info): Return a const pointer.
2525 * init.c (bfd_init): Don't call bfd_arch_init.
2526 * bfd.c (struct _bfd): Make arch_info const.
2527 * bfd-in2.h: Rebuild.
2528 * libbfd.h: Rebuild.
2529 * configure.in: Put & before everything in $selarchs.
2530 * configure: Rebuild.
2531 * cpu-*.c: Change bfd_*_arch from a function which calls
2532 bfd_arch_linkin to a const structure.
2533 * ieee.c (ieee_object_p): Make arch const.
2534
2535 Fri Sep 22 16:23:18 1995 Michael Meissner <meissner@tiktok.cygnus.com>
2536
2537 * reloc.c (bfd_reloc_code_type): Add relocations to support all of
2538 PowerPC V.4.
2539 * bfd-in2.h: Regenerate.
2540 * libbfd.h: Regenerate.
2541
2542 * elf32-ppc.c (reloc_type): Update names to match current draft.
2543 (ppc_elf_howto_raw): Mark 14 bit relocs as short sized and PC
2544 relative. Update names to current V.4 draft.
2545 (ppc_elf_reloc_type_lookup): Add support for more relocations.
2546 (ppc_elf_relocate_section): Rename relocations to match draft.
2547
2548 Thu Sep 21 21:53:18 1995 Michael Meissner <meissner@cygnus.com>
2549
2550 * elf32-ppc.c (ppc_elf_merge_private_bfd_data): Allow modules
2551 compiled with -mrelocatable-lib to be linked with either normal
2552 modules or -mrelocatable modules.
2553
2554 Wed Sep 20 12:03:26 1995 Ian Lance Taylor <ian@cygnus.com>
2555
2556 * coffcode.h (coff_write_object_contents): Clear the vstamp field
2557 in the a.out header.
2558
2559 * aoutx.h (NAME(aout,swap_ext_reloc_out)): Don't set r_extern for
2560 a reloc against a local symbol, even if it's not a section.
2561
2562 Tue Sep 19 17:02:26 1995 Ian Lance Taylor <ian@cygnus.com>
2563
2564 * targets.c (bfd_target): Remove unused align_power_min field.
2565 * bfd-in2.h: Rebuild.
2566 * All backends: Remove initialization of align_power_min.
2567
2568 Tue Sep 19 14:02:21 1995 steve chamberlain <sac@slash.cygnus.com>
2569
2570 * peicode.h (coff_swap_scnhdr_out): Get sizes for BSS right.
2571
2572 Mon Sep 18 14:35:01 1995 Arne H. Juul <arnej@pvv.unit.no>
2573
2574 * config.bfd (mips-dec-netbsd*): New target.
2575 * configure.host (mips-dec-netbsd*): New host.
2576 * configure.in (mips-dec-netbsd*): New native.
2577 * configure: Rebuild.
2578
2579 Fri Sep 15 10:24:36 1995 Ian Lance Taylor <ian@cygnus.com>
2580
2581 Make the COFF backend linker merge common types:
2582 * cofflink.c (struct coff_debug_merge_element): Define.
2583 (struct coff_debug_merge_type): Define.
2584 (struct coff_debug_merge_hash_entry): Define.
2585 (struct coff_debug_merge_hash_table): Define.
2586 (coff_debug_merge_hash_table_init): Define.
2587 (coff_debug_merge_hash_table_free): Define.
2588 (coff_debug_merge_hash_lookup): Define.
2589 (struct coff_final_link_info): Add debug_merge field.
2590 (coff_debug_merge_hash_newfunc): New static function.
2591 (_bfd_coff_final_link): Allocate and free debug_merge table.
2592 (coff_link_input_bfd): Merge identical enum, struct and union
2593 types.
2594
2595 Thu Sep 14 14:53:58 1995 Ian Lance Taylor <ian@cygnus.com>
2596
2597 Convert i960 COFF to use COFF backend linker.
2598 * coff-i960.c (coff_i960_relocate): Use a coff_section_data
2599 structure to store the symbol being used.
2600 (coff_i960_start_final_link): New static function.
2601 (coff_i960_relocate_section): New static function.
2602 (coff_i960_adjust_symndx): New static function.
2603 (coff_start_final_link): Define.
2604 (coff_relocate_section): Define.
2605 (coff_adjust_symndx): Define.
2606 * coffcode.h (bfd_coff_backend_data): Add new callback function
2607 _bfd_coff_start_final_link.
2608 (bfd_coff_start_final_link): Define.
2609 (coff_start_final_link): Define if not defined.
2610 (bfd_coff_std_swap_table): Add coff_start_final_link.
2611 * cofflink.c (_bfd_coff_internal_syment_name): Make globally
2612 visible.
2613 (_bfd_coff_final_link): Call bfd_coff_start_final_link if the
2614 function callback is not NULL.
2615 * libcoff-in.h (struct coff_section_tdata): Add tdata field.
2616 (_bfd_coff_internal_syment_name): Declare.
2617 * libcoff.h: Rebuild.
2618 * configure.in (icoff_big_vec): Add cofflink.o.
2619 (icoff_little_vec): Likewise.
2620 * configure: Rebuild.
2621
2622 Wed Sep 13 17:38:23 1995 Fred Fish <fnf@rtl.cygnus.com>
2623
2624 * Makefile.in (clean-info): Remove extraneous tab from line
2625 following action.
2626
2627 Wed Sep 13 13:27:53 1995 Ian Lance Taylor <ian@cygnus.com>
2628
2629 * cofflink.c (coff_link_input_bfd): Fail if a section with no
2630 contents has relocs.
2631
2632 Thu Sep 12 12:45:34 1995 steve chamberlain <sac@slash.cygnus.com>
2633
2634 * coffcode.h (coff_compute_section_file_positions): Keep the
2635 raw size safe.
2636 (coff_write_object_contents): Remember if it's a relocatable
2637 file.
2638 * libcoff-in.h (pe_data_type): New member 'has_reloc_section'
2639 * peicode.h (coff_swap_filehdr_out): Clear not-reloc flag
2640 if relocatable file. Swap out saved raw size.
2641
2642 Tue Sep 12 12:14:33 1995 Ian Lance Taylor <ian@cygnus.com>
2643
2644 * Makefile.in (do_maintainer_clean): Rename from do_realclean.
2645 (maintainer-clean): Rename from realclean, passing
2646 maintainer-clean down to subdirectories, but leave realclean as a
2647 synonym.
2648
2649 * linker.c (_bfd_generic_link_add_one_symbol): Pass symbol name to
2650 warning callback.
2651
2652 * dep-in.sed: Remove config.h from generated dependencies.
2653
2654 * sunos.c (sunos_slurp_dynamic_symtab): New static function,
2655 broken out of sunos_canonicalize_dynamic_symtab.
2656 (sunos_canonicalize_dynamic_symtab): Call new function
2657 sunos_slurp_dynamic_symtab.
2658 (sunos_add_dynamic_symbols): Add three new parameters. Return the
2659 dynamic symbol table to the caller.
2660 * aoutx.h (aout_link_add_symbols): Permit add_dynamic_symbols
2661 callback to override the symbols being read.
2662 * libaout.h (struct aout_backend_data): Add three new parameters
2663 to add_dynamic_symbols callback.
2664
2665 Extensive minor changes to avoid various gcc warnings. Also:
2666 * Makefile.in (BFD32_BACKENDS): Remove coff-arm.o.
2667 * archures.c (bfd_arch_info_type): Change mach field from long to
2668 unsigned long.
2669 (bfd_lookup_arch): Change machine parameter from long to unsigned
2670 long.
2671
2672 Mon Sep 11 10:55:47 1995 Ian Lance Taylor <ian@cygnus.com>
2673
2674 * sunos.c (sunos_scan_std_relocs): Fix BFD_ASSERT: it's OK to find
2675 a symbol with a non-zero plt_offset.
2676
2677 Fri Sep 8 11:47:24 1995 Ian Lance Taylor <ian@cygnus.com>
2678
2679 * elfcode.h (align_file_position): Remove; not used.
2680
2681 * configure.in: Only check for <sys/procfs.h> on a native system,
2682 and make sure it defines prstatus_t.
2683 * configure: Rebuild.
2684
2685 Thu Sep 7 12:48:01 1995 Ian Lance Taylor <ian@cygnus.com>
2686
2687 * sunos.c (sunos_write_dynamic_symbol): Correct m68k abort test.
2688
2689 * config.in: Rename from config.h.in.
2690 * configure.in: Call AC_CONFIG_HEADER with config.h:config.in.
2691 Check for config.h:config.in when creating stamp-h.
2692 * configure: Rebuild.
2693 * Makefile.in (stamp-h): Depend upon config.in rather than
2694 config.h.in. Set CONFIG_HEADERS to config.h:config.in when
2695 calling config.status.
2696
2697 * Makefile.in (do_distclean): Remove config.h and stamp-h.
2698 (Makefile): Just rebuild Makefile.
2699 (config.h, stamp-h): New targets.
2700 * configure.in: Create stamp-h when rebuilding config.h.
2701 * configure: Rebuild.
2702
2703 Wed Sep 6 15:00:33 1995 Ian Lance Taylor <ian@cygnus.com>
2704
2705 * configure.in: Call AC_CONFIG_HEADER. Substitute
2706 HOST_64BIT_LONG. Check that various header files exist. Check
2707 that fcntl exists. Call BFD_BINARY_FOPEN. Check whether malloc
2708 and/or free need to be declared. Don't make a link to sysdep.h.
2709 Define TRAD_HEADER for various hosts.
2710 * configure: Rebuild.
2711 * configure.host: Don't set my_host. Add definitions taken from
2712 host header files for various entries. Remove entries which now
2713 do nothing.
2714 * acconfig.h: New file.
2715 * config.h.in: New file, built by autoheader.
2716 * sysdep.h: New file.
2717 * Makefile.in (do_distclean): Don't remove sysdep.h.
2718 (RECONFIG): Remove.
2719 (LOCAL_H_DEPS): New variable.
2720 ($(BFD_LIBS)): Use $(LOCAL_H_DEPS) rather than libbfd.h and
2721 $(RECONFIG).
2722 ($(BFD_MACHINES), $(BFD_BACKENDS)): Likewise.
2723 ($(OPTIONAL_BACKENDS)): Likewise.
2724 (stmp-bfd.h): Just substitute for BFD_HOST_64BIT_LONG, rather than
2725 looking through sysdep.h.
2726 * bfd-in.h (BFD_HOST_64BIT_LONG): Define; set by Makefile.
2727 (BFD_HOST_64_BIT): Define based on BFD_HOST_64BIT_LONG.
2728 (fprintf_vma, sprintf_vma): Likewise.
2729 (int64_type, uint64_type): Don't define.
2730 * bfd-in2.h: Rebuild.
2731 * archures.c, bfd.c, srec.c: Include <ctype.h>.
2732 * elfcore.h: Check HAVE_SYS_PROCFS_H rather than HAVE_PROCFS.
2733 * lynx-core.c: Include stuff from old hosts/lynx.h.
2734 * opncls.c (bfd_fdopenr): Check HAVE_FNCTL and defined (F_GETFL),
2735 rather than NO_FCNTL.
2736 * targets.c (bfd_target_list): Check HOST_HPPAHPUX and ! __STDC__
2737 rather than NATIVE_HPPAHPUX_COMPILER.
2738 * trad-core.c: Don't include <errno.h>. Include TRAD_HEADER if it
2739 is defined.
2740 * hosts/*.h: Remove all header files which merely include,
2741 declare, and define things. Leave header files which define
2742 information needed by trad-core.c.
2743
2744 * aclocal.m4 (BFD_BINARY_FOPEN): Define.
2745 (BFD_CC_FOR_BUILD): Define.
2746 * configure.in: Use BFD_CC_FOR_BUILD.
2747 * configure: Rebuild.
2748
2749 Tue Sep 5 19:35:28 1995 Ian Lance Taylor <ian@cygnus.com>
2750
2751 * aclocal.m4: Don't try to grep ../Makefile if it doesn't exist.
2752 * configure: Rebuild.
2753
2754 * coff-sparc.c (CALC_ADDEND): Don't set the addend to the value of
2755 a global symbol.
2756
2757 Tue Sep 5 12:48:26 1995 Jason Molenda (crash@phydeaux.cygnus.com)
2758
2759 * config.bfd: i386pe_ve -> i386pe_vec.
2760
2761 Mon Sep 4 14:02:43 1995 Ian Lance Taylor <ian@cygnus.com>
2762
2763 * configure.host: Incorporate host Makefile fragments by setting
2764 shell variables.
2765 * configure.in: Call AC_PROG_CC. Substitute CFLAGS, HDEFINES and
2766 AR. Call AC_PROG_INSTALL. Substitute CC_FOR_BUILD, choosing a
2767 value based on whether the code is being compiled by a cross
2768 compiler. Don't substitute host_makefile_frag or frags.
2769 * aclocal.m4: New file to define local AC_PROG_CC.
2770 * configure: Rebuild.
2771 * Makefile.in (INSTALL): Set to @INSTALL@.
2772 (INSTALL_PROGRAM): Set to @INSTALL_PROGRAM@.
2773 (INSTALL_DATA): Set to @INSTALL_DATA@.
2774 (AR): Set to @AR@.
2775 (CC): Define as @CC@.
2776 (CFLAGS): Set to @CFLAGS@.
2777 (CC_FOR_BUILD): Set to @CC_FOR_BUILD@.
2778 (@host_makefile_frag@): Remove.
2779 (ALL_CFLAGS): Change $(HDEFINES) to @HDEFINES@. Move $(CFLAGS)
2780 after other options.
2781 (config.status): Remove dependency upon @frags@.
2782 * config/*.mh, config/README: Remove.
2783
2784 * config.bfd: Rewrite to incorporate the contents of the Makefile
2785 fragments by setting shell variables, rather than merely returning
2786 the name of a Makefile fragment.
2787 * configure.in: Use shell variables set by config.bfd rather than
2788 looking at the target Makefile fragment files. Don't substitute
2789 target_makefile_frag. Do substitute TDEFINES.
2790 * configure: Rebuild.
2791 * Makefile.in (@target_makefile_frag@): Remove.
2792 (ALL_CFLAGS): Change $(TDEFINES) to @TDEFINES@.
2793 * config/*.mt: Remove.
2794
2795 Mon Sep 4 03:13:28 1995 Ken Raeburn <raeburn@cygnus.com>
2796
2797 * configure.in: Put changequote lines around "i[345]86" patterns
2798 section of core file support.
2799
2800 Sun Sep 3 11:31:58 1995 Jeff Law (law@snake.cs.utah.edu)
2801
2802 * som.c (som_bfd_print_private_bfd_data): Define to use the
2803 generic version.
2804
2805 Fri Sep 1 17:08:40 1995 steve chamberlain <sac@slash.cygnus.com>
2806
2807 * peicode.h (coff_swap_aouthdr_in): Add ImageBase to
2808 entry, text_start and data_start.
2809
2810 Fri Sep 1 18:06:28 1995 Ian Lance Taylor <ian@cygnus.com>
2811
2812 * Makefile.in (OFILES): Remove $(TDEPFILES).
2813 * config/apollo.mt (TDEPFILES): Remove.
2814 * config/README: Update.
2815
2816 * configure.in: For a native configuration, set COREFILE and
2817 COREFLAG based on the canonical host name.
2818 * configure: Rebuild.
2819 * Makefile.in: Rebuild dependencies.
2820 (ALL_CFLAGS): Add @COREFLAG@.
2821 (OFILES): Replace $(HDEPFILES) with @COREFILE@.
2822 * coff-rs6000.c: Check AIX_CORE rather than HOST_AIX for core file
2823 support routines. Check LYNX_CORE rather than HOST_LYNX.
2824 * lynx-core.c: Check LYNX_CORE rather than HOST_LYNX.
2825 * i386lynx.c: Likewise.
2826 * m68klynx.c: Likewise.
2827 * sparclynx.c: Likewise.
2828 * rs6000-core.c: Check AIX_CORE rather than HOST_AIX.
2829 * *-core.c: Comment changes.
2830 * config/decstation.mh (HDEPFILES): Remove.
2831 (HDEFINES): Remove -DTRAD_CORE.
2832 * config/irix3.mh (RANLIB): Remove.
2833 * config/irix4.mh (HDEPFILES, RANLIB): Remove.
2834 (HDEFINES): Remove -DIRIX_CORE.
2835 * config/riscos.mh (RANLIB, HDEPFILES): Remove.
2836 (HDEFINES): Remove -DTRAD_CORE.
2837 * config/ncr3000.mh (AR_FLAGS, RANLIB): Remove.
2838 * config/ultra3.mh (RANLIB): Remove.
2839 * config/aix4.mh, config/alphaosf.mh, config/amix.mh: Remove.
2840 * config/apollo.mh, config/delta68.mh, config/delta88.mh: Remove.
2841 * config/dpx2.mh, config/esix.mh, config/harris.mh: Remove.
2842 * config/hp300.mh, config/hp300bsd.mh, config/hppabsd.mh: Remove.
2843 * config/hppahpux.mh, config/hppaosf.mh: Remove.
2844 * config/i386aix.mh, config/i386bsd.mh: Remove.
2845 * config/i386linux.mh, config/i386mach3.mh: Remove.
2846 * config/i386sco.mh, config/i386v.mh, config/i386v4.mh: Remove.
2847 * config/irix5.mh, config/m88kmach3.mh, config/mipsbsd.mh: Remove.
2848 * config/mipsmach3.mh, config/news-mips.mh: Remove.
2849 * config/news.mh, config/pc532mach.mh, config/riscix.mh: Remove.
2850 * config/rs600.mh, config/rs6000lynx.mh: Remove.
2851 * config/solaris2.mh, config/stratus.mh: Remove.
2852 * config/symmetry.mh, config/sysv4.mh, config/tahoe.mh: Remove.
2853 * config/vaxbsd.mh, config/vaxult.mh, config/vaxult2.mh: Remove.
2854
2855 Fri Sep 1 15:18:50 1995 Kazumoto Kojima <kkojima@info.kanagawa-u.ac.jp>
2856
2857 * elflink.h (elf_bfd_final_link): Don't change a DT_INIT or
2858 DT_FINI entry if the appropriate symbol is not in the hash table.
2859
2860 * libelf.h (struct elf_backend_data): Add create_program_headers
2861 and want_hdr_in_seg fields.
2862 * elfxx-target.h (elf_backend_want_hdr_in_seg): Define if not
2863 defined.
2864 (elf_backend_create_program_headers): Likewise.
2865 (elfNN_bed): Initialize create_program_headers and
2866 want_hdr_in_seg.
2867 * elf.c (get_program_header_size): Call create_program_headers
2868 backend routine.
2869 (map_program_segments): Check want_hdr_in_seg backend field. Call
2870 create_program_headers backend routine.
2871
2872 * elf.c (assign_file_positions_except_relocs): Align non allocated
2873 sections when creating an executable.
2874
2875 * elfcode.h (elf_swap_phdr_in): Make non static.
2876 (elf_swap_phdr_out): Make non static.
2877 * libelf.h (bfd_elf32_swap_phdr_in): Declare.
2878 (bfd_elf32_swap_phdr_out): Declare.
2879 (bfd_elf64_swap_phdr_in): Declare.
2880 (bfd_elf64_swap_phdr_out): Declare.
2881
2882 * ecofflink.c (ecoff_collect_shuffle): New static function.
2883 (_bfd_ecoff_get_accumulated_pdr): New function.
2884 (_bfd_ecoff_get_accumulated_sym): New function.
2885 (_bfd_ecoff_get_accumulated_ss): New function.
2886 * libbfd-in.h (_bfd_ecoff_get_accumulated_pdr): Declare.
2887 (_bfd_ecoff_get_accumulated_sym): Declare.
2888 (_bfd_ecoff_get_accumulated_ss): Declare.
2889 * libbfd.h: Rebuild.
2890
2891 Fri Sep 1 13:20:25 1995 Ian Lance Taylor <ian@cygnus.com>
2892
2893 * libecoff.h (_bfd_ecoff_bfd_print_private_bfd_data): Fix typo.
2894
2895 * elflink.h (elf_link_add_object_symbols): Handle indirect and
2896 warning symbols. If any section is named .gnu.warning.XXX, treat
2897 the contents as a warning to be issued if the symbol XXX is
2898 referenced.
2899 (elf_link_output_extsym): For an indirect or warning symbol, just
2900 output the symbol it points to.
2901
2902 * linker.c (_bfd_link_hash_newfunc): Don't bother to set bfd_error
2903 if bfd_hash_allocate fails, since it will already be set.
2904 (generic_link_hash_newfunc): Likewise.
2905 (archive_hash_newfunc): Likewise.
2906 (hash_entry_bfd): New static function.
2907 (_bfd_generic_link_add_one_symbol): Pass new arguments to warning
2908 callback. Allocate a new warning using the hash table newfunc.
2909 Use bfd_hash_replace to update the entry in the hash table, rather
2910 than assuming we can copy the fields with structure assignment.
2911
2912 * hash.c (bfd_hash_replace): New function.
2913 * bfd-in.h (bfd_hash_replace): Declare.
2914 * bfd-in2.h: Rebuild.
2915
2916 Fri Sep 1 08:12:50 1995 James G. Smith <jsmith@beauty.cygnus.com>
2917
2918 * config.bfd: Add mips*vr4300-*-elf* target.
2919 * config/mipsbvr4300.mt: Added.
2920
2921 See file ChangeLog.2
2922
2923 \f
2924 Local Variables:
2925 mode: indented-text
2926 left-margin: 8
2927 fill-column: 74
2928 version-control: never
2929 End:
This page took 0.087525 seconds and 5 git commands to generate.