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