]> Git Repo - binutils.git/blame - bfd/ChangeLog
* elf.c (prep_headers): Add bfd_arch_alpha case.
[binutils.git] / bfd / ChangeLog
CommitLineData
7ae6550f
ILT
1Fri Jun 21 15:19:59 1996 Ian Lance Taylor <[email protected]>
2
3 * elf.c (prep_headers): Add bfd_arch_alpha case.
4
e8f46717
ILT
5Fri Jun 21 12:35:27 1996 Richard Henderson <[email protected]>
6
7 * elf64-alpha.c: New file.
8 * config.bfd (alpha-*-linuxecoff*): New target.
9 (alpha-*-linux*, alpha-*-elf*): New targets.
10 * configure.in (bfd_elf64_alpha_vec): New vector.
11 * configure: Rebuild.
12 * targets.c (bfd_elf64_alpha_vec): Declare.
13 (bfd_target_vector): Add bfd_elf64_alpha_vec if BFD64.
14 * reloc.c (BFD_RELOC_ALPHA_GPDISP): Define.
15 * bfd-in2.h, libbfd.h: Rebuild.
16 * Makefile.in: Rebuild dependencies.
17 (BFD64_BACKENDS): Add elf64-alpha.o.
18 (BFD64_BACKENDS_CFILES): Add elf64-alpha.c.
19
bacecac8
ILT
20Thu Jun 20 18:14:25 1996 Ian Lance Taylor <[email protected]>
21
22 * ecoff.c (ecoff_armap_hash): If hlog is 0, just return 0, rather
23 than relying on a right shift of 32.
24
9ca108cd
DE
25Thu Jun 20 11:00:57 1996 Doug Evans <[email protected]>
26
b9110a3c
DE
27 * coffcode.h (coff_set_alignment_hook): Change COFF_IMAGE_WITH_PE
28 ifdef to COFF_WITH_PE.
29 (coff_compute_section_file_positions): Likewise.
30 (coff_write_object_contents): Likewise. Delete COFF_OBJ_WITH_PE.
31 * pe-{arm,i386,ppc}.c (COFF_OBJ_WITH_PE): Delete.
32 * peicode.h (pe_bfd_copy_private_bfd_data): Delete ifdef
33 COFF_IMAGE_WITH_PE, always include.
34
9ca108cd
DE
35 * peicode.h (coff_swap_scnhdr_out): ".drectve" doesn't have trailing 0.
36
c2073f05
ILT
37Wed Jun 19 11:37:52 1996 Ian Lance Taylor <[email protected]>
38
7fc6a16a
ILT
39 * elf.c (map_sections_to_segments): Fix up the test for -Ttext to
40 approximate the correct answer if SIZEOF_HEADERS was not used.
41
c2073f05
ILT
42 * binary.c (binary_set_section_contents): Set section file
43 position based on LMA rather than VMA.
44
4838929e
ILT
45Wed Jun 19 11:19:25 1996 Manfred Hollstein KS/EIC5 60/3/142 #40283 <[email protected]>
46
47 * linker.c (_bfd_generic_link_output_symbols): Don't output any
48 symbols if info->strip == strip_all.
49
50Tue Jun 18 15:17:36 1996 Jeffrey A. Law <[email protected]>
51
52 * coff-h8300.c: Remove #if 0 code.
53 (compatable): Don't allow mixing/matching of different architectures.
54
55start-sanitize-h8s
56 * archures.c (bfd_mach_h8300s): Add.
57 * bfd-in2.h: Rebuilt.
58 * coff-h8300.c (funcvec_hash_newfunc): Handle H8/S too.
59 (BADMAG): Likewise.
60 (h8300_reloc16_estimate): Likewise.
61 (h8300_reloc16_extra_cases): Likewise.
62 (h8300_bfd_link_add_symbols): Likewise.
63 * coffcode.h (coff_set_arch_mach_hook): Likewise.
64 (coff_set_flags): Likewise.
65 * cpu-h8300.c (h8300_scan): Likewise.
66 Add H8/S to bfd_h8300_arch list.
67
68end-sanitize-h8s
c3d8e071
ILT
69Tue Jun 18 14:42:58 1996 Klaus Kaempf <[email protected]>
70
71 Added support for Alpha OpenVMS:
72 * evax.h, evax-alpha.c, evax-egsd.c, evax-emh.c: New files.
73 * evax-etir.c, evax-misc.c, hosts/alphavms.h: New files.
74 * config.h-vms, makefile.vms: New files.
75 * config.bfd (alpha-*-*vms*): New target.
76 * configure.in (evax_alpha_vec): New target vector.
77 * configure: Rebuild.
78 * reloc.c (BFD_RELOC_SWREL32, BFD_RELOC_SWREL64): Define.
79 (BFD_RELOC_ALPHA_LINKAGE, BFD_RELOC_ALPHA_BASEREG): Define.
80 * targets.c (bfd_target_evax_flavour): Define.
81 (evax_alpha_vec): Declare.
82 (bfd_target_vector): Add ecoffalpha_little_vec and evax_alpha_vec
83 if BFD64 is defined.
84 * bfd-in2.h, libbfd.h: Rebuild.
85 * Makefile.in: Rebuild dependencies.
86 (BFD64_BACKENDS): Add evax-alpha.o, evax-egsd.o, evax-etir.o,
87 evax-emh.o, and evax-misc.o.
88 (BFD64_BACKENDS_CFILES): Add evax-alpha.c, evax-egsd.c,
89 evax-etir.c, evax-emh.c, and evax-misc.c.
90 (HFILES): Add evax.h.
91
142aa7d9
ILT
92Tue Jun 18 13:54:18 1996 Ian Lance Taylor <[email protected]>
93
94 * coff-h8300.c (h8300_reloc16_extra_cases): Make name a const
95 pointer.
96 (h8300_bfd_link_add_symbols): Likewise.
97
b658d64d
JL
98Mon Jun 17 10:06:50 1996 Jeffrey A. Law <[email protected]>
99
100 * som.h (R_HPPA_BEGIN_TRY, R_HPPA_END_TRY): Define.
101 * som.c (som_write_fixups): Handle R_BEGIN_TRY and R_END_TRY.
102
2df1e84b
ILT
103Mon Jun 17 12:49:11 1996 Ian Lance Taylor <[email protected]>
104
105 * elf32-mips.c (mips_elf_relocate_section): Don't create a reloc
106 for R_MIPS_REL32 and R_MIPS_32 relocs if no dynamic sections were
107 created.
108 (mips_elf_check_relocs): Only create .rel.dyn for R_MIPS_REL32 and
109 R_MIPS_32 relocs if creating a shared library.
110
111Thu Jun 13 20:14:51 1996 Doug Evans <[email protected]>
112
113 * peicode.h (add_data_entry): Use pei_section_data rather than
114 _cooked_size. Corresponds to May 13 change in coffcode.h.
115
8100e72c
ILT
116Thu Jun 13 10:23:40 1996 Ian Lance Taylor <[email protected]>
117
51bc9642
ILT
118 * cofflink.c (_bfd_coff_final_link): Handle long section names.
119 * coffcode.h (coff_write_object_contents): If there are long
120 section names, always set the f_symptr field, even if there are no
121 symbols.
122 * peicode.h (coff_swap_filehdr_in): Don't clear the f_symptr field
123 if there are no symbols.
124
8100e72c
ILT
125 * coffgen.c (make_a_section_from_file): Check return value of
126 _bfd_coff_read_string_table.
127 (coff_real_object_p): Check return value of
128 make_a_section_from_file.
129 (_bfd_coff_read_string_table): Check that there are some symbols
130 before trying to read the string table size.
131
0e3bd85e
ILT
132Wed Jun 12 11:16:37 1996 Ian Lance Taylor <[email protected]>
133
ed675a04
ILT
134 * xcofflink.c (xcoff_link_add_symbols): When considering whether
135 to replace a symbol in a dynamic object with a symbol from another
136 dynamic object, do the replacement if the existing symbol is
137 global linkage code.
138
49144784
ILT
139 * xcofflink.c (_bfd_ppc_xcoff_relocate_section): Check explicitly
140 for _ptrgl, and treat it as global linkage code.
141
0e3bd85e
ILT
142 * aoutx.h (NAME(aout,find_nearest_line)): Notice if we find a
143 filename or N_SO symbol past the offset, and use it to indicate
144 that there is no line number or function when appropriate.
145
a5c7acea
ILT
146Tue Jun 11 15:24:48 1996 Ian Lance Taylor <[email protected]>
147
148 * xcofflink.c (xcoff_build_ldsyms): Set XCOFF_DEF_REGULAR for a
149 common symbol defined by the linker. Don't export function code
150 even if export_defineds is set.
151
152Mon Jun 10 11:57:27 1996 Jeffrey A Law ([email protected])
153
154 * coff-h8300.c (howto_table): Add new entries for R_BCC_INV
155 and R_JMP_DEL.
156 (rtype2howto): Handle R_BCC_INV and R_JMP_DEL.
157 (h8300_symbol_address_p): New function.
158 (h8300_reloc16_estimate): Eliminate jumps made unnecessary by
159 relaxing.
160
890f5b7f
JL
161Sun Jun 9 16:30:20 1996 Jeffrey A Law ([email protected])
162
163 * coff-h8300.c (h8300_reloc16_estimate): Fix many minor spacing
164 problems.
165 (h8300_reloc16_estimate, cases R_JMP1, R_JMP2): Adjust "dot"
166 correctly for the two variants. Allow relaxing if the target
167 is 128 bytes away since after relaxation it'll be 126 bytes away.
168 (h8300_reloc16_estimate, case R_PCRWORD): Correctly adjust
169 "dot" and "value". Allow relaxing if the target is 128 bytes
170 away since after relaxation it'll be 126 bytes away.
171 * reloc16.c (bfd_coff_reloc16_relax_section): Keep relaxing
172 the given section until nothing changes.
173
0593fc16
ILT
174Thu Jun 6 15:24:45 1996 Richard Henderson <[email protected]>
175
176 * ecoff.c (_bfd_ecoff_new_section_hook): Remove the _PDATA
177 alignment hack--we can get the lnnoptr info another way without
178 suddenly increasing the alignment requirements. Set the flags for
179 the _PDATA section.
180 (ecoff_compute_section_file_positions): Do so.
181
9b263b79
ILT
182Thu Jun 6 11:24:37 1996 Ian Lance Taylor <[email protected]>
183
bbf7c335
ILT
184 * ieee.c (ieee_write_object_contents): Put a timestamp in the file
185 to keep the HP emulator database happy.
186
9b263b79
ILT
187 * config.bfd: Recognize powerpc-*-linux* and powerpcle-*-linux*.
188 From Kevin Buettner <[email protected]>.
189
190Wed Jun 5 15:16:04 1996 Ian Lance Taylor <[email protected]>
191
192 * aoutx.h (translate_to_native_sym_flags): Don't try to print the
193 name of a NULL section.
194
26145b15
ILT
195Tue Jun 4 18:53:58 1996 Ian Lance Taylor <[email protected]>
196
197 * linker.c (_bfd_generic_link_add_one_symbol): If notice_all is
198 set, always call the notice callback.
199
200 * VERSION: Increment for bfdlink.h change.
201
3a2080d8
ILT
202Mon Jun 3 11:01:53 1996 Ian Lance Taylor <[email protected]>
203
9d175198
ILT
204 * coff-sh.c (COFF_DEFAULT_SECTION_ALIGNMENT_POWER): Set to 4.
205 (sh_relax_delete_bytes): Correct handling of differently sized
206 trailing alignment reloc.
207
5a04f1bd
ILT
208 * bfd-in.h: Use #error if BFD_HOST_64_BIT can not be defined.
209 * bfd-in2.h: Rebuild.
210 * configure.in: Warn if there is no known 64 bit type.
211 * configure: Rebuild.
212
60c8b04f
ILT
213 * Makefile.in: Rebuild dependencies.
214 (BFD32_BACKENDS): Add ppcboot.o.
215 (BFD32_BACKENDS_CFILES): Add ppcboot.c.
216
3a2080d8
ILT
217 * elf32-mips.c (mips_elf_size_dynamic_sections): Initialize c.
218 From Per Fogelstrom <[email protected]>.
219
903612a2
ILT
220Sat Jun 1 21:49:58 1996 Ian Lance Taylor <[email protected]>
221
222 * elf64-mips.c (bfd_mips_elf64_swap_reginfo_in)
223 (bfd_mips_elf64_swap_reginfo_out): Move from here...
224 * elf32-mips.c (bfd_mips_elf64_swap_reginfo_in)
225 (bfd_mips_elf64_swap_reginfo_out): ...to here.
226
38893c8c
ILT
227Fri May 31 13:51:28 1996 Ian Lance Taylor <[email protected]>
228
bc05732b
ILT
229 * elf64-mips.c: Improve reloc special_functions and handling of
230 SHT_MIPS_OPTIONS section.
231 * elf32-mips.c (_bfd_mips_elf_hi16_reloc): Rename from
232 mips_elf_hi16_reloc and make globally visible.
233 (_bfd_mips_elf_lo16_reloc): Rename from mips_elf_lo16_reloc and
234 make globally visible.
235 (_bfd_mips_elf_got16_reloc): Rename from mips_elf_got16_reloc and
236 make globally visible.
237 (_bfd_mips_elf_gprel16_reloc): Rename from mips_elf_gprel16_reloc
238 and make globally visible.
239 (gprel16_with_gp): Check howto->src_mask before using value in
240 insn.
241 (_bfd_mips_elf_gprel32_reloc): Rename from mips_elf_gprel32_reloc
242 and make globally visible.
243 (gprel32_with_gp): Check howto->src_mask before fetching value.
244 (bfd_mips_elf_swap_options_in): New function.
245 (bfd_mips_elf_swap_options_out): New function.
246 (_bfd_mips_elf_set_private_flags): Rename from
247 mips_elf_set_private_flags and make globally visible.
248 (_bfd_mips_elf_copy_private_bfd_data): Rename from
249 mips_elf_copy_private_bfd_data and make globally visible.
250 (_bfd_mips_elf_merge_private_bfd_data): Rename from
251 mips_elf_merge_private_bfd_data and make globally visible.
252 (_bfd_mips_elf_section_from_shdr): Accept .MIPS.options as a name
253 for a SHT_MIPS_OPTIONS section.
254 (mips_elf32_section_from_shdr): Handle SHT_MIPS_OPTIONS section.
255 (_bfd_mips_elf_fake_sections): Consider .MIPS.options to be the
256 name of a SHT_MIPS_OPTIONS section.
257 (_bfd_mips_elf_set_section_contents): New function.
258 (mips_elf32_section_processing): Set the GP value in a
259 SHT_MIPS_OPTIONS section.
260 (_bfd_mips_elf_find_nearest_line): Rename from
261 mips_elf_find_nearest_line and make globally visible.
262 (bfd_elf32_set_section_contents): Define.
263 * elf-bfd.h (_bfd_mips_elf_hi16_reloc): Declare.
264 (_bfd_mips_elf_lo16_reloc): Declare.
265 (_bfd_mips_elf_gprel16_reloc): Declare.
266 (_bfd_mips_elf_got16_reloc): Declare.
267 (_bfd_mips_elf_gprel32_reloc): Declare.
268 (_bfd_mips_elf_set_private_flags): Declare.
269 (_bfd_mips_elf_copy_private_bfd_data): Declare.
270 (_bfd_mips_elf_merge_private_bfd_data): Declare.
271 (_bfd_mips_elf_find_nearest_line): Declare.
272 (_bfd_mips_elf_set_section_contents): Declare.
273
38893c8c
ILT
274 * elf32-hppa.c (elf32_hppa_info_to_howto): Rename from
275 elf_info_to_howto.
276 (elf_info_to_howto): Define.
277 * elf32-sparc.c (elf32_sparc_info_to_howto): Rename from
278 elf_info_to_howto.
279 (elf_info_to_howto): Define.
280 * elf64-sparc.c (sparc64_elf_info_to_howto): Rename from
281 elf_info_to_howto.
282 (elf_info_to_howto): Define.
283
284 * coff-w65.c (h8300_reloc16_estimate): Rename R_MOVB[12] to
285 R_MOV16B[12], to match change in coff/internal.h.
286
cabd8fa0
ILT
287Thu May 30 12:38:49 1996 Ian Lance Taylor <[email protected]>
288
00176555
ILT
289 * elf64-mips.c: Extensive additions to provide better support for
290 writing files and for gas.
291 * elf32-mips.c (_bfd_mips_elf_object_p): New function, broken out
292 of mips_elf_object_p.
293 (mips_elf32_object_p): Rename from mips_elf_object_p; call
294 _bfd_mips_elf_object_p.
295 (_bfd_mips_elf_final_write_processing): Rename from
296 mips_elf_final_write_processing and make globally visible.
297 (_bfd_mips_elf_fake_sections): Rename from
298 mips_elf_fake_sections and make globally visible.
299 (_bfd_mips_elf_section_from_bfd_section): Rename from
300 mips_elf_section_from_bfd_section and make globally visible.
301 (_bfd_mips_elf_section_processing): New function, broken out of
302 mips_elf_section_processing.
303 (mips_elf32_section_processing): Rename from
304 mips_elf_section_processing; call
305 _bfd_mips_elf_section_processing.
306 (_bfd_mips_elf_symbol_processing): Rename from
307 mips_elf_symbol_processing and make globally visible.
308 (_bfd_mips_elf_read_ecoff_info): Rename from
309 mips_elf_read_ecoff_info and make globally visible.
310 (mips_elf32_ecoff_debug_swap): Rename from
311 mips_elf_ecoff_debug_swap.
312 * elf.c (_bfd_elf_symbol_from_bfd_symbol): Use asymbol rather than
313 struct symbol_cache_entry.
314 (_bfd_elf_validate_reloc): New function, moved in from
315 elfcode.h:validate_reloc.
316 * elfcode.h (validate_reloc): Remove; moved into elf.c and renamed
317 to _bfd_elf_validate_reloc. Change all callers.
318 * elf-bfd.h (bfd_section_from_shdr): Declare.
319 (_bfd_elf_symbol_from_bfd_symbol): Declare.
320 (_bfd_elf_validate_reloc): Declare.
321 (_bfd_mips_elf_object_p): Declare.
322 (_bfd_mips_elf_fake_sections): Declare.
323 (_bfd_mips_elf_section_from_bfd_section): Declare.
324 (_bfd_mips_elf_section_processing): Declare.
325 (_bfd_mips_elf_symbol_processing): Declare.
326 (_bfd_mips_elf_read_ecoff_info): Declare.
327 (_bfd_mips_elf_final_write_processing): Declare.
328 * elfxx-target.h (bfd_elfNN_get_reloc_upper_bound): Don't define
329 if already defined.
330
cabd8fa0
ILT
331 * elf32-mips.c (mips_elf_object_p): Handle E_MIPS_ARCH_4.
332 (mips_elf_final_write_processing): Likewise.
333
d1bf45aa
ILT
334Wed May 29 16:15:29 1996 Ian Lance Taylor <[email protected]>
335
336 64-bit MIPS ELF ABI objdump support:
337 * elf64-mips.c: New file.
338 * Makefile.in: Rebuild dependencies.
339 (BFD64_BACKENDS): Add elf64-mips.o.
340 (BFD64_BACKENDS_CFILES): Add elf64-mips.c.
341 * config.bfd (mips*el-*-elf*) Add bfd_elf64_bigmips_vec and
342 bfd_elf64_littlemips_vec to targ_selvecs.
343 (mips*-*-elf*): Likewise.
344 * confingure.in: Add bfd_elf64_bigmips_vec and
345 bfd_elf64_littlemips_vec to vector switch.
346 * configure: Rebuild.
347 * elf32-mips.c (_bfd_mips_elf_section_from_shdr): New function,
348 broken out of mips_elf_section_from_shdr.
349 (mips_elf32_section_from_shdr): Rename from
350 mips_elf_section_from_shdr. Call new function.
351 (elf_backend_section_from_shdr): Update name of renamed function.
352 * elf-bfd.h (struct elf_size_info): Change second parameter of
353 write_out_phdrs to be const. Likewise for second parameter of
354 swap_symbol_out.
355 (struct bfd_elf_section_data): Add rel_hdr2 field.
356 (bfd_elf32_swap_symbol_in): Change second parameter to be const.
357 (bfd_elf32_swap_symbol_out): Likewise.
358 (bfd_elf32_swap_reloc_in): Likewise.
359 (bfd_elf32_swap_reloc_out): Likewise.
360 (bfd_elf32_swap_reloca_in): Likewise.
361 (bfd_elf32_swap_reloca_out): Likewise.
362 (bfd_elf32_swap_phdr_in): Likewise.
363 (bfd_elf32_swap_phdr_out): Likewise.
364 (bfd_elf32_swap_dyn_in): Likewise.
365 (bfd_elf32_swap_dyn_out): Likewise.
366 (bfd_elf32_slurp_symbol_table): Declare.
367 (bfd_elf32_write_shdrs_and_ehdr): Declare.
368 (bfd_elf32_write_out_phdrs): Declare.
369 (bfd_elf64_swap_symbol_in): Change second parameter to be const.
370 (bfd_elf64_swap_symbol_out): Likewise.
371 (bfd_elf64_swap_reloc_in): Likewise.
372 (bfd_elf64_swap_reloc_out): Likewise.
373 (bfd_elf64_swap_reloca_in): Likewise.
374 (bfd_elf64_swap_reloca_out): Likewise.
375 (bfd_elf64_swap_phdr_in): Likewise.
376 (bfd_elf64_swap_phdr_out): Likewise.
377 (bfd_elf64_swap_dyn_in): Likewise.
378 (bfd_elf64_swap_dyn_out): Likewise.
379 (bfd_elf64_slurp_symbol_table): Declare.
380 (bfd_elf64_write_shdrs_and_ehdr): Declare.
381 (bfd_elf64_write_out_phdrs): Declare.
382 (_bfd_mips_elf_section_from_shdr): Declare.
383 * elf.c (bfd_section_from_shdr): Remove assertion requiring
384 SHT_REL/SHT_RELA to match use_rela_p. If there is already a reloc
385 section for the section, add the new one to rel_hdr2. Increment
386 reloc_count rather than setting it.
387 * elfcode.h (elf_slurp_symbol_table): Define name as macro.
388 Remove static declaration.
389 (elf_write_shdrs_and_ehdr): Define name as macro.
390 (elf_write_out_phdrs): Likewise.
391 (elf_swap_ehdr_in, elf_swap_ehdr_out): Declare.
392 (elf_swap_shdr_in, elf_swap_shdr_out): Declare.
393 (elf_swap_symbol_in): Change second parameter to be const.
394 (elf_swap_symbol_out): Likewise.
395 (elf_swap_ehdr_in, elf_swap_ehdr_out): Likewise.
396 (elf_swap_shdr_in, elf_swap_shdr_out): Likewise.
397 (elf_swap_phdr_in, elf_swap_phdr_out): Likewise.
398 (elf_swap_reloc_in, elf_swap_reloc_out): Likewise.
399 (elf_swap_reloca_in, elf_swap_reloca_out): Likewise.
400 (elf_write_out_phdrs): Rename from write_out_phdrs. Change second
401 parameter to be const. Make non-static.
402 (elf_write_shdrs_and_ehdr): Rename from write_shdrs_and_ehdr.
403 Make non-static.
404 (elf_slurp_symbol_table): Make non-static.
405 (NAME(_bfd_elf,size_info)): Update names of renamed functions.
406 * elfxx-target.h (elf_info_to_howto): Define if not defined.
407 (elf_backend_size_info): Likewise.
408 (elfNN_bed): Use elf_backend_size_info.
409 * targets.c (bfd_elf64_bigmips_vec): Declare.
410 (bfd_elf64_littlemips_vec): Declare.
411 (bfd_target_vector): Add bfd_elf64_bigmips_vec and
412 bfd_elf64_littlemips_vec if BFD64 is defined.
413
414 * libbfd.c (bfd_get_file_window): Add cast to fprintf argument.
415
7dd3d45a
ILT
416Tue May 28 11:42:08 1996 Ian Lance Taylor <[email protected]>
417
07692951
ILT
418 * coff-sh.c (sh_relax_delete_bytes): Insert nop instructions, not
419 zeroes, in alignment holes.
420
a4322a77
ILT
421 * configure: Rebuild with autoconf 2.10.
422
7dd3d45a
ILT
423 * aoutx.h (NAME(aout,find_nearest_line)): Make room for the
424 potential leading underscore in the allocated buffer.
425
0293d5b0
MM
426Fri May 24 14:28:38 1996 Michael Meissner <[email protected]>
427
428 * elf32-ppc.c (ppc_elf_add_symbol_hook): Do not put small common
429 symbols into .sbss if this is a relocatable link.
430
a5d0cd50
ILT
431Thu May 23 12:26:24 1996 Ian Lance Taylor <[email protected]>
432
433 * xcofflink.c (_bfd_ppc_xcoff_relocate_section): Warn about
434 undefined symbols when creating a shared library.
435
436Fri May 17 13:54:15 1996 Ian Lance Taylor <[email protected]>
437
438 * coff-sh.c: Add a bunch of new code and static const arrays to
439 support aligning loads and stores on four byte memory boundaries.
440 Also:
441 (sh_coff_howtos): Add entries for R_SH_CODE, R_SH_DATA and
442 R_SH_LABEL.
443 (sh_relax_section): Look for R_SH_CODE relocs. If we find one,
444 call sh_align_loads.
445 (sh_relax_delete_bytes): Don't mark R_SH_CODE or R_SH_DATA relocs
446 as unused.
447
c403d358
ILT
448Thu May 16 16:34:13 1996 Ian Lance Taylor <[email protected]>
449
450 * cache.c (bfd_open_file): Unlink the file before opening it for
451 write. From Marty Leisner <[email protected]>.
452
453 * opncls.c (bfd_fdopenr): Set opened_once.
454
2f710e17
ILT
455Tue May 14 12:35:32 1996 Ian Lance Taylor <[email protected]>
456
ff60fc3a
ILT
457 * som.c (som_slurp_reloc_table): Clear external_relocs cache after
458 freeing it.
459
2f710e17
ILT
460 * libbfd.c: Remove #ifdef FILE_OFFSET_IS_CHAR_INDEX, and compile
461 the code unconditionally.
462
efb33f6b
ILT
463Mon May 13 19:51:37 1996 Ian Lance Taylor <[email protected]>
464
465 * libcoff-in.h (struct pei_section_tdata): Define structure.
466 (pei_section_data): Define macro.
467 * libcoff.h: Rebuild.
468 * coffcode.h (coff_set_alignment_hook): If COFF_IMAGE_WITH_PE,
469 store s_paddr field in pei_section_data.
470 (coff_compute_section_file_positions): Use pei_section_data rather
471 than _cooked_size, and don't overwrite an existing value.
472 (coff_write_object_contents): If COFF_OBJ_WITH_PE, set s_paddr to
473 0. If COFF_IMAGE_WITH_PE, set s_paddr to pei_section_data.
474 * peicode.h (coff_bfd_copy_private_section_data): Define if
475 COFF_IMAGE_WITH_PE.
476 (pe_bfd_copy_private_section_data): New static function if
477 COFF_IMAGE_WITH_PE.
478
5ecd6d7f
ILT
479Wed May 8 16:10:38 1996 Ian Lance Taylor <[email protected]>
480
db1e2aa7
ILT
481 * srec.c (srec_set_arch_mach): Write as a function rather than a
482 macro definition.
483
5ecd6d7f
ILT
484 * xcofflink.c (_bfd_xcoff_bfd_link_add_symbols): If an archive has
485 no map, just check each member in turn to see whether it is
486 required.
487
aefee5c8
MM
488Wed May 8 09:17:34 1996 Michael Meissner <[email protected]>
489
490 * ppcboot.c (ppcboot_object_p): Check for type 0x41 in partition
491 table. Call BFD_ASSERT to validate header size, instead of
492 calling fatal.
493 (ppcboot_bfd_print_private_bfd_data): Put quotes around partition
494 name.
495
0d1fcbbb
MM
496Tue May 7 16:10:19 1996 Michael Meissner <[email protected]>
497
498 * ppcboot.c: New target for looking at PPCbug boot records.
499
500 * config{ure.in,.bfd}: Add support for ppcboot target.
501 * targets.c: Ditto.
502 * configure: Regenerate.
503
f4597f8c
JL
504Tue May 7 11:15:19 1996 Jeffrey A Law ([email protected])
505
506 * coff-h8300.c (howto_table): Update names to match recent
507 changes to include/coff/internal.h. Fix minor errors in the
508 existing relocs. Add R_MOVL1 and R_MOVL2.
509 (rtype2howto): Similarly.
510 (h8300_reloc16_estimate): Rewrite to simplify, fix bugs in the
511 existing relaxing code and peform more relaxing.
512 (h8300_reloc16_extra_cases): Likewise.
513
0dc70e1a
JL
514Mon May 6 18:24:09 1996 Jeffrey A Law ([email protected])
515
516 * reloc16.c (bfd_coff_reloc16_get_value): Handle common
517 symbols correctly.
518
d1b8ccb0
PS
519Sat May 4 05:08:45 1996 Peter Schauer ([email protected])
520
521 * elfcode.h (elf_object_p): Reject generic ELF target if
522 e_machine matches an alternate machine code in a specific backend.
523
524 * netbsd-core.c (netbsd_core_vec): Remove initializer for
525 obsolete align_power_min field.
526
c9f5444e
JL
527Fri May 3 13:07:35 1996 Jeffrey A Law ([email protected])
528
529 * coff-h8300.c (reloc_howto_type): Add howto entry for
530 R_PCRWORD_B.
531 (rtype2howto): Handle R_PCRWORD_B.
532 (h8300_reloc16_extra_cases): Handle R_PCRWORD_B.
533 (h8300_reloc_16_estimate): Likewise. Try to turn a 16bit
534 pc-relative branch (R_PCRWORD) into an 8bit pc-relative
535 branch (R_PCWORD_B).
536
4ad842aa
ILT
537Fri May 3 10:47:41 1996 Ian Lance Taylor <[email protected]>
538
340d654f
ILT
539 * aoutx.h (translate_from_native_sym_flags): Set the section for
540 BSF_CONSTRUCTOR symbols.
541
4ad842aa
ILT
542 * cofflink.c (_bfd_coff_link_input_bfd): Correct setting of
543 last_bf_index.
544
9c7a5748
DE
545Wed May 1 18:39:32 1996 Doug Evans <[email protected]>
546
547 * coffcode.h (coff_write_object_contents): In comdat section lookup,
548 stop looking when section is found.
549
622c93a3
ILT
550Wed May 1 14:17:57 1996 Ian Lance Taylor <[email protected]>
551
e8f3bb64 552 * coffcode.h (STRING_SIZE_SIZE): Define.
9aac8e83
ILT
553 (styp_to_sec_flags): Handle long symbol names when looking for the
554 section symbol.
e8f3bb64
ILT
555 (bfd_coff_backend_data): Add _bfd_coff_long_section_names field.
556 (bfd_coff_long_section_names): Define.
557 (coff_write_object_contents): Handle long section names.
558 (bfd_coff_std_swap_table): Initialize new field.
559 * libcoff.h: Rebuild.
560 * coffgen.c (make_a_section_from_file): Handle long section
561 names.
562 (coff_write_symbols): Handle long section names.
563 * coff-alpha.c (alpha_ecoff_backend_data): Initialize new field.
564 * coff-mips.c (mips_ecoff_backend_data): Likewise.
565 * pe-arm.c (COFF_LONG_SECTION_NAMES): Define.
566 * pei-arm.c (COFF_LONG_SECTION_NAMES): Define.
567 * pe-i386.c (COFF_LONG_SECTION_NAMES): Define.
568 * pei-i386.c (COFF_LONG_SECTION_NAMES): Define.
569 * pe-ppc.c (COFF_LONG_SECTION_NAMES): Define.
570 * pei-ppc.c (COFF_LONG_SECTION_NAMES): Define.
571
622c93a3
ILT
572 * bout.c (b_out_callback): Set lma of sections.
573 (b_out_bfd_get_relocated_section_contents): Rename in_abfd
574 parameter to output_bfd. Used input_bfd instead of output_bfd in
575 several places.
576
6b725f83
ILT
577Tue Apr 30 17:56:39 1996 Ian Lance Taylor <[email protected]>
578
b7d1158a
ILT
579 * aoutx.h (translate_from_native_sym_flags): Don't create
580 SEC_CONSTRUCTOR sections.
581 * ecoff.c (ecoff_set_symbol_info): Likewise.
582
6b725f83
ILT
583 * elf32-mips.c (mips_elf_copy_private_bfd_data): Copy elf_gp.
584 From Don Bowman <[email protected]>.
585
e28a1e77
DE
586Tue Apr 30 17:06:32 1996 Doug Evans <[email protected]>
587
588 * coff-arm.c (armcoff_little_vec): If COFF_WITH_PE is defined, add
589 SEC_LINK_ONCE and SEC_LINK_DUPLICATES to section_flags.
590
abec70b9
ILT
591Mon Apr 29 13:15:17 1996 Ian Lance Taylor <[email protected]>
592
593 * elf32-mips.c (struct mips_elf_link_hash_entry): Add
594 mips_32_relocs field.
595 (mips_elf_link_hash_newfunc): Initialize mips_32_relocs field.
596 (mips_elf_relocate_section): Copy R_MIPS_REL32 and R_MIPS_32
597 relocs against a global symbol which is not defined in a regular
598 file.
599 (mips_elf_check_relocs): For a R_MIPS_REL32 or R_MIPS_32 reloc
600 against a global symbol, increment mips_32_relocs.
601 (mips_elf_adjust_dynamic_symbol): If mips_32_relocs is set, and
602 the symbol is not defined in a regular file, make room in the
603 .rel.dyn section.
604
ecba7a3a
ILT
605Fri Apr 26 18:00:37 1996 Ian Lance Taylor <[email protected]>
606
656c5b6d
ILT
607 * ecoff.c (ecoff_compute_section_file_positions): Track the real
608 file position and the virtual file position separately. Set
609 filepos information bsaed on the real file position.
610 (_bfd_ecoff_set_section_contents): Handle .lib sections like the
611 Jan 23 change to coffcode.h.
612
ecba7a3a
ILT
613 * som.c (som_slurp_symbol_table): Set the symbol count to the
614 number of BFD symbols created.
615
e25a7988
MM
616Fri Apr 26 12:34:29 1996 Michael Meissner <[email protected]>
617
618 * elf32-ppc.c (ppc_elf_check_relocs): Forward relocations to the
619 output file if linking shared objects. Loop to check all relocs,
620 rather than returning false on first error.
621
5c28a96e
MM
622Thu Apr 25 13:25:12 1996 Michael Meissner <[email protected]>
623
3f7ca26b
MM
624 * elf32-ppc.c (ppc_elf_create_linker_section): Add PLT case.
625 (ppc_elf_additional_program_headers): If .interp section, bump #
626 of program headers by 1.
627 (ppc_elf_adjust_dynamic_symbol): Flesh out support.
628 (ppc_elf_size_dynamic_sections): Add support for .plt section.
629 (ppc_elf_check_relocs): Print out filename in debug code. Enable
630 PLT support.
631 (ppc_elf_finish_dynamic_symbol): Add support for PLT's, beef up
632 debug output.
633 (ppc_elf_relocate_section): If the output section isn't defined,
634 don't abort, just give an error message.
635
5c28a96e
MM
636 * elflink.c (_bfd_elf_create_dynamic_sections): If the section
637 being created is .sdata or .sdata2, don't make the symbol dynamic.
638
f5d65485
ILT
639Wed Apr 24 14:04:07 1996 Ian Lance Taylor <[email protected]>
640
641 * xcofflink.c (_bfd_xcoff_bfd_link_add_symbols): Look through the
642 members of an archive for dynamic objects with no symbols, and
643 pass them directly to check_archive_element.
644 (xcoff_link_check_ar_symbols): Pass dynamic objects to
645 xcoff_link_check_dynamic_ar_symbols.
646 (xcoff_link_check_dynamic_ar_symbols): New static function.
647
648 * coff-rs6000.c (rs6000coff_vec): Change BFD_JUMP_TABLE_DYNAMIC
649 from _bfd_nodynamic to _bfd_xcoff.
650 * libcoff-in.h (_bfd_xcoff_get_dynamic_symtab_upper_bound):
651 Declare.
652 (_bfd_xcoff_canonicalize_dynamic_symtab): Declare.
653 (_bfd_xcoff_get_dynamic_reloc_upper_bound): Declare.
654 (_bfd_xcoff_canonicalize_dynamic_reloc): Declare.
655 * libcoff.h: Rebuild.
656 * xcofflink.c (xcoff_swap_ldrel_in): New static function.
657 (xcoff_get_section_contents): New static function.
658 (_bfd_xcoff_get_dynamic_symtab_upper_bound): New function.
659 (_bfd_xcoff_canonicalize_dynamic_symtab): New function.
660 (_bfd_xcoff_get_dynamic_reloc_upper_bound): New function.
661 (xcoff_dynamic_reloc): New static variable.
662 (_bfd_xcoff_canonicalize_dynamic_reloc): New function.
663 (xcoff_link_add_dynamic_symbols): Use xcoff_get_section_contents.
664
665Tue Apr 23 12:48:42 1996 Ian Lance Taylor <[email protected]>
666
667 * coff-sparc.c (bfd_coff_generic_reloc): Return bfd_reloc_ok even
668 if reloc_entry->addend is not 0.
669 (CALC_ADDEND): Just set the addend to reloc.r_offset.
670
34249b2f
DE
671Mon Apr 22 18:29:01 1996 Doug Evans <[email protected]>
672
673 * elf32-sparc.c (_bfd_sparc_elf_howto_table): Fix spelling of
674 R_SPARC_GLOB_JMP.
675 * elf64-sparc.c (sparc64_elf_howto_table): Likewise.
676 Add entries for R_SPARC_[56].
677 (sparc_reloc_map): Add entries for R_SPARC_[56].
678
af50cd91
ILT
679Mon Apr 22 15:07:24 1996 Ian Lance Taylor <[email protected]>
680
1726b8f0
ILT
681 Optimize linking of stabs in sections as used in ELF and COFF.
682 * stabs.c: New file.
683 * libbfd-in.h (_bfd_link_section_stabs): Declare.
684 (_bfd_write_section_stabs): Declare.
685 (_bfd_write_stab_strings): Declare.
686 * libbfd.h: Rebuild.
687 * libcoff-in.h (struct coff_section_tdata): Add stab_info field.
688 (struct coff_link_hash_table): Add stab_info field.
689 * libcoff.h: Rebuild.
690 * cofflink.c (_bfd_coff_link_hash_table_init): Initialize
691 stab_info field.
692 (coff_link_add_symbols): Call _bfd_link_section_stabs if
693 appropriate.
694 (_bfd_coff_final_link): Write out stab strings hash table.
695 (_bfd_coff_link_input_bfd): Handle optimized stabs sections.
696 * coff-ppc.c (ppc_bfd_coff_final_link): Write out stab strings
697 hash table.
698 * elf-bfd.h (struct elf_link_hash_table): Add stab_info field.
699 (struct bfd_elf_section_data): Add stab_info field.
700 * elf.c (_bfd_elf_link_hash_table_init): Initialize stab_info
701 field.
702 * elflink.h (elf_link_add_object_symbols): If appropriate, call
703 _bfd_link_section_stabs.
704 (elf_bfd_final_link): Write out stab strings hash table.
705 (elf_link_input_bfd): Handle optimized stabs sections.
706 * reloc.c (_bfd_final_link_relocate): Check address against
707 _raw_size rather than _cooked_size.
708 * Makefile.in: Rebuild dependencies.
709 (BFD_LIBS): Add stabs.o
710 (BFD_LIBS_CFILES): Add stabs.c.
711
712 * VERSION: Increment for bfdlink.h change.
713
af50cd91
ILT
714 * coffgen.c (coff_renumber_symbols): Correct handling of
715 BSF_NOT_AT_END common symbols.
716
f9fa5df3
ILT
717Fri Apr 19 19:21:56 1996 Ian Lance Taylor <[email protected]>
718
719 * coff-ppc.c (record_toc): Add cast to avoid warning.
720 (ppc_allocate_toc_section): Likewise.
721 (coff_ppc_relocate_section): Remove ANSI C string concatenation.
722 (ppc_coff_reloc_type_lookup): Remove unreached code.
723 * coffcode.h (coff_write_object_contents): Don't take the address
724 of an array.
725 * peicode.h (pe_print_idata): Add casts to avoid warning.
726 (pe_print_edata): Likewise.
727 (pe_print_reloc): Remove ANSI C string concatenation.
728
d6e0e2f7
ILT
729Thu Apr 18 18:51:18 1996 Ian Lance Taylor <[email protected]>
730
731 * libcoff-in.h (struct coff_final_link_info): Add last_bf_index
732 and last_bf fields.
733 * libcoff.h: Rebuild.
734 * coffswap.h (coff_swap_aux_in): Swap endndx field for C_FCN
735 symbols.
736 (coff_swap_aux_out): Likewise.
737 * peicode.h (coff_swap_aux_in): Likewise.
738 (coff_swap_aux_out): Likewise.
739 * coffgen.c (coff_pointerize_aux): Check endndx field for C_FCN
740 symbols.
741 * cofflink.c (_bfd_coff_final_link): Initialize last_bf_index
742 field.
743 (_bfd_coff_link_input_bfd): Check endndx field for C_FCN symbols.
744 Fix up .bf endndx link fields.
745 * coff-ppc.c (ppc_bfd_coff_final_link): Initialize last_bf_index
746 field.
747 * xcofflink.c (xcoff_link_input_bfd): Check endndx field for C_FCN
748 symbols.
749
221d1e19
MM
750Wed Apr 17 12:08:24 1996 Michael Meissner <[email protected]>
751
752 * pe{,i}-ppc.c (PPC_PE): Define instead of PPC, so that compiling
753 on Solaris PowerPC systems doesn't get confused.
754
755 * ccffcode.h (coff_write_object_contents): Use #ifdef PPC_PE, not
756 #ifdef PPC.
757
758 * elfcore.h (bfd_prstatus, bfd_fpregset): Add thread argument.
759 (elf_corefile_note): If HAVE_SYS_PROCFS_H is not defined, don't
760 update did_reg and did_reg2.
761
8f9a56c6
ILT
762Wed Apr 17 13:07:37 1996 Ian Lance Taylor <[email protected]>
763
f97fca78
ILT
764 * xcofflink.c (xcoff_link_input_bfd): Check for TOC overflow.
765
8f9a56c6
ILT
766 * linker.c (_bfd_generic_link_add_one_symbol): When calling the
767 callback routines, pass h->root.string rather than name, in case
768 copy is true and name is transient.
769
603fdf16
SG
770Tue Apr 16 16:36:38 1996 Stu Grossman ([email protected])
771
772 * elfcore.h: Add support for core files with multiple threads.
773 (Primarily for Solaris.)
774
a2d914e1
ILT
775Tue Apr 16 13:44:08 1996 Ian Lance Taylor <[email protected]>
776
cdf23557
ILT
777 * aoutx.h (NAME(aout,squirt_out_relocs)): Don't do anything if
778 section->orelocation is NULL.
779
a2d914e1
ILT
780 * coffgen.c (bfd_coff_get_syment): New function.
781 (bfd_coff_get_auxent): New function.
782 * bfd-in.h (bfd_coff_get_syment): Declare.
783 (bfd_coff_get_auxent): Declare.
784 * bfd-in2.h: Rebuild.
785
5cf36a32
ILT
786Mon Apr 15 19:06:59 1996 Ian Lance Taylor <[email protected]>
787
788 * elf32-mips.c (struct mips_hi16): Define.
789 (mips_hi16_addr, mips_hi16_addend): Remove.
790 (mips_hi16_list): New static variable.
791 (mips_elf_hi16_reloc): Maintain a list of unmatched HI16 relocs.
792 (mips_elf_lo16_reloc): Process mips_hi16_list.
793 (mips_elf_relocate_section): Permit an arbitrary number of HI16
794 relocs before the associated LO16 reloc.
795
b7fce5be
ILT
796Wed Apr 10 00:23:53 1996 Ian Lance Taylor <[email protected]>
797
176512da
ILT
798 * versados.c (versados_scan): Check bfd_alloc return value.
799 (versados_object_p): Check all bfd_read return values. Require
800 that lang field be less than 10, to avoid confusion with Intel Hex
801 files.
802
18de3f19
ILT
803 * libaout.h (WRITE_HEADERS): Write out the relocs even if there
804 aren't any symbols.
805 * aoutx.h (NAME(aout,swap_std_reloc_out)): Set r_index to N_ABS,
806 not 0, for an absolute symbol.
807 (NAME(aout,swap_ext_reloc_out)): Likewise.
808
66ab4152
ILT
809 * ihex.c (ihex_scan): Accept a length of 4 for record type 5.
810 (ihex_write_object_contents): For a large start address, output
811 the full 32 bit address in record type 5.
812
b7fce5be
ILT
813 * ieee.c (ieee_write_byte): Change second parameter from bfd_byte
814 to int to avoid promotion problems in prototype.
815
f1b45745
ILT
816Tue Apr 9 11:44:21 1996 Ian Lance Taylor <[email protected]>
817
f400f358
ILT
818 * configure.host: Use ${srcdir} when looking for picfrag.
819
3d9a5986
ILT
820 * configure.host: Switch on ${libdir}, not $(libdir). From
821 [email protected] (Alan Modra).
822
f1b45745
ILT
823 * aoutx.h (aout_link_add_symbols): Always call add_dynamic_symbols
824 entry point, not just for DYNAMIC objects.
825 * sunos.c (sunos_add_dynamic_symbols): Always call
826 sunos_create_dynamic_sections. If called with a non DYNAMIC
827 object, don't do anything else.
828 (sunos_add_one_symbol): Don't call sunos_create_dynamic_sections.
829
6f21f2e3
ILT
830Mon Apr 8 12:09:36 1996 Ian Lance Taylor <[email protected]>
831
639b5a09
ILT
832 * configure.in: Permit --enable-shared to specify a list of
833 directories.
834 * configure: Rebuild.
835
6f21f2e3
ILT
836 * configure.host: Set HLDFLAGS and SHLIB_CFLAGS for *-dec-osf*
837 host when configuring with --enable-shard.
838
3f5f565b
ILT
839Fri Apr 5 12:24:13 1996 Ian Lance Taylor <[email protected]>
840
1ac75f5c
ILT
841 * config.bfd: Add i[345]86-*-freebsdelf* target; from John Polstra
842 <[email protected]>.
843
1a9951a9
ILT
844 * linker.c (link_action): For WARN_ROW/warn, use MWARN, not CYCLE,
845 to avoid crashing in bfd_hash_replace.
846
f1ac3acb 847 * sysdep.h: Use #ifdef, not #if.
3f5f565b 848
eb5f58e0
ILT
849Thu Apr 4 23:32:23 1996 Ian Lance Taylor <[email protected]>
850
851 * config.in: Rebuild.
852
ab1aa5cd
FF
853Thu Apr 4 18:49:09 1996 Fred Fish <[email protected]>
854
855 * configure.in (mips-sony-bsd*): Fix typo in AC_DEFINE.
856 (AC_CHECK_HEADERS): Check for sys/time.h
857 (AC_HEADER_TIME): Add macro.
858 * configure: Rebuild.
859 * sysdep.h: Use TIME_WITH_SYS_TIME and HAVE_SYS_TIME_H
860 to control what combination of <time> and <sys/time.h>
861 get included.
862
d1f74cd2
DE
863Tue Apr 2 13:11:53 1996 Doug Evans <[email protected]>
864
865 * aoutf1.h (sunos_32_set_arch_mach): Handle M_SPARCLET.
866 (aout_32_sunos4_write_object_contents): Likewise.
867 * aoutx.h (NAME(aout,machine_type)): Handle
868 bfd_mach_sparc_{sparclet,sparclite}.
869 * archures.c (bfd_mach_sparc_{sparclet,sparclite}): Define.
870 (bfd_mach_sparc_v9_p): Update.
871 * cpu-sparc.c (arch_info_struct): Add entries for sparclet,sparclite.
872 * libaout.h (enum machine_type): Add M_SPARCLET.
873 * sunos.c (MACHTYPE_OK): Define.
874 * bfd-in2.h: Regenerated.
875
1dad72bd
ILT
876Tue Apr 2 00:33:18 1996 Ian Lance Taylor <[email protected]>
877
19bfbcbe
ILT
878 * elf-bfd.h (struct elf_link_hash_table): Add hgot field.
879 * elf.c (_bfd_elf_link_hash_table_init): Initialize hgot field.
880 * elflink.c (_bfd_elf_create_got_section): Store the
881 _GLOBAL_OFFSET_TABLE_ hash table entry in the hgot field.
882 * elf32-sparc.c (elf32_sparc_check_relocs): If the size of the
883 global offset table goes over 0x1000, set the value of
884 _GLOBAL_OFFSET_TABLE_ to 0x1000 into the section.
885 (elf32_sparc_relocate_section): Subtract the offset of
886 _GLOBAL_OFFSET_TABLE_ when handling GOT relocations.
887
1dad72bd
ILT
888 * elfcode.h: Don't include <string.h>.
889
ca4e2190
JL
890Mon Apr 1 10:39:24 1996 Jeffrey A Law ([email protected])
891
892 * linker.c (_bfd_generic_link_hash_newfunc): Renamed from
893 generic_link_hash_newfunc. All references changed.
894 * genlink.h (_bfd_generic_link_hash_newfunc): Declaration
895 moved here from libbfd-in.h.
896 * libbfd-in.h: Corresponding changes.
897 * libbfd.h: Regenerated.
898
ce6a7731
ILT
899Mon Apr 1 12:35:36 1996 Ian Lance Taylor <[email protected]>
900
aad53b0d
ILT
901 * aoutx.h (aout_link_input_section_std): When reporting an
902 overflow error, use the name of the symbol in the hash table if
903 available.
904 (aout_link_input_section_ext): Likewise.
905
ce6a7731
ILT
906 * elflink.h (elf_adjust_dynamic_symbol): If a common symbol got
907 defined in a regular file, set ELF_LINK_HASH_DEF_REGULAR.
908
323b430f
SC
909Sun Mar 31 01:58:41 1996 steve chamberlain <[email protected]>
910
911 * peicode.h (coff_swap_aouthdr_out): Delete test for .junk.
912 * coffcode.h (coff_compute_section_file_positions): Likewise.
913 (coff_write_object_contents): Likewise.
914
7fc1cd16
ILT
915Fri Mar 29 12:44:36 1996 Ian Lance Taylor <[email protected]>
916
5a28331f
ILT
917 * section.c (SEC_LINK_ONCE): Define.
918 (SEC_LINK_DUPLICATES): Define.
919 (SEC_LINK_DUPLICATES_DISCARD): Define.
920 (SEC_LINK_DUPLICATES_ONE_ONLY): Define.
921 (SEC_LINK_DUPLICATES_SAME_SIZE): Define.
922 (SEC_LINK_DUPLICATES_SAME_CONTENTS): Define.
923 * bfd-in2.h: Rebuild.
924 * coffcode.h (sec_to_styp_flags): If COFF_WITH_PE, turn
925 SEC_LINK_ONCE into IMAGE_SCN_LNK_COMDAT.
926 (styp_to_sec_flags): If COFF_WITH_PE, turn IMAGE_SCN_LNK_REMOVE
927 into SEC_EXCLUDE. If IMAGE_SCN_LNK_COMDAT is set, set
928 SEC_LINK_ONCE, and look through the symbol table for the setting
929 for SEC_LINK_DUPLICATES.
930 (coff_write_object_contents): If COFF_WITH_PE, if SEC_LINK_ONCE is
931 set for a section, find the section symbol in the symbol table,
932 and set the aux entry based on SEC_LINK_DUPLICATES.
933 * coffgen.c (coff_print_symbol): Add a space before "checksum".
934 * coff-arm.c (armcoff_big_vec): If COFF_WITH_PE is defined, add
935 SEC_LINK_ONCE and SEC_LINK_DUPLICATES to section_flags.
936 * coff-i386.c (i386coff_vec): Likewise.
937 * coff-ppc.c (TARGET_LITTLE_SYM, TARGET_BIG_SYM): Likewise.
938
7fc1cd16
ILT
939 * VERSION: Bump to 2.6.1.
940 * Makefile.in (stamp-h): Depend upon VERSION.
941
9399a257
JL
942Thu Mar 28 23:48:49 1996 Jeffrey A Law ([email protected])
943
944 * libbfd-in.h (generic_link_hash_newfunc): Add declaration.
945 * libbfd.h: Rebuilt.
946 * linker.c (generic_link_hash_newfunc): No longer static.
947 * coffcode.h (coff_bfd_link_hash_create): Allow specific targets
948 to override.
949 * coff-h8300.c: Add two derived hash tables and their associated
950 funtions and #defines for use by the h8300 linker.
951 (h8300_reloc16_extra_cases, case R_MEM_INDIRECT): Create entries in
952 the function vector as needed. Place the address of the function
953 vector entry in the location specified by the R_MEM_INDIRECT reloc.
954 Rewrite the vectors section contents as necessary.
955 (h8300_bfd_link_add_symbols): New function for the h8300 linker.
956 (coff_bfd_link_add_symbols): Define to use h8300 specific version.
957 (coff_bfd_link_hash_table_create): Likewise.
958
506f2bb4
ILT
959Thu Mar 28 17:44:08 1996 Ian Lance Taylor <[email protected]>
960
961 * libhppa.h: If gcc 2.7 or higher, declare all the functions with
962 __attribute__ ((__unused__)) so that -Wall doesn't warn about
963 them.
964 (hppa_rebuild_insn): Pass pointer to correct type to
965 low_sign_unext and dis_assemble_21.
966
05a84ae1
DE
967Thu Mar 28 11:00:36 1996 Doug Evans <[email protected]>
968
969 * config.bfd (sparc64-{sysv4*,solaris2*}): Delete.
970 Stick with sparc-*-{sysv4*,solaris2*}.
971
919cf4b5
ILT
972Wed Mar 27 10:43:34 1996 Ian Lance Taylor <[email protected]>
973
8230f31c
ILT
974 * peicode.h (coff_swap_aux_in): Swap in extra PE x_scn fields.
975 (coff_swap_aux_out): Swap out extra PE x_scn fields.
976 * coffswap.h (coff_swap_aux_in): Zero out extra PE x_scn fields.
977 * coffgen.c (coff_print_symbol): If any of the extra PE x_scn
978 fields is non-zero, print them.
979
9addd1d4
ILT
980 * coff-ppc.c (ppc_record_toc_entry): Put inside COFF_IMAGE_WITH_PE
981 ifdef. Remove unused variables.
982 (ppc_record_data_in_toc_entry): Ifdef out. Removed unused
983 variables.
984 (ppc_mark_symbol_as_glue): Put inside COFF_IMAGE_WITH_PE ifdef.
985 (get_symbol_value): Ifdef out.
986 (pe_ppc_reloc): Ifdef out. Remove unused variables.
987 (coff_ppc_relocate_section): Remove unused variables. Make
988 fprintf strings and argument types correspond. Put before_addr in
989 DEBUG_RELOC ifdef.
ff0e4a93
ILT
990 (dump_toc): Make fprintf strings and argument types correspond.
991 (ppc_process_before_allocation): Remove unused variables. Always
992 return a value.
9addd1d4
ILT
993 (ppc_reflo_reloc): Ifdef out.
994 (ppc_addr32nb_reloc): Ifdef out.
995 (ppc_coff_rtype2howto): Make fprintf strings and argument types
996 correspond.
997 (coff_ppc_rtype_to_howto): Likewise.
998 (ppc_coff_swap_sym_in_hook): Remove unused variables.
999
1000 * peicode.h (pe_print_idata): Move otherwise unused variables into
1001 the #ifdef where they are used. Always return a value.
ff0e4a93
ILT
1002 (pe_print_edata): Make fprintf strings and argument types
1003 correspond. Always return a value.
9addd1d4
ILT
1004 (pe_print_pdata): Removed unused variable addr_value. Always
1005 return a value.
1006 (pe_print_reloc): Remove unused variable onaline. Make fprintf
ff0e4a93 1007 strings and argument types correspond. Always return a value.
9addd1d4
ILT
1008
1009 * elf32-ppc.c (ppc_elf_fake_sections): Return true.
1010 (ppc_elf_finish_dynamic_symbol): Move definition of unused
1011 variable rela inside #if 0 section where it is used.
1012
c877bdf1
ILT
1013 * ns32k.h: New file.
1014 * cpu-ns32k.h: Include ns32k.h. Rename externally visible
1015 functions to start with _bfd_.
1016 * aout-ns32k.c: Include ns32k.h. Change references to renamed
1017 functions in cpu-ns32k.h.
1018 * Makefile.in: Rebuild dependencies.
1019 (HFILES): Add ns32k.h.
1020
ff0e4a93
ILT
1021 * section.c (struct sec): Add linker_mark field. Change
1022 user_set_vma and reloc_done to be single bit fields.
1023 (STD_SECTION): Update accordingly.
7ec49f91
ILT
1024 * bfd-in2.h: Rebuild.
1025 * aoutx.h (NAME(aout,final_link)): Mark sections included in the
1026 link.
1027 (aout_link_input_bfd): Don't link unmarked sections.
1028 * cofflink.c (_bfd_coff_final_link): Mark sections included in the
1029 link.
1030 (_bfd_coff_link_input_bfd): Don't link unmarked sections.
1031 * coff-ppc.c (ppc_bfd_coff_final_link): Mark sections included in
1032 the link.
1033 * elflink.h (elf_bfd_final_link): Mark sections included in the
1034 link.
1035 (elf_link_input_bfd): Don't link unmarked sections.
1036 * xcofflink.c (_bfd_xcoff_bfd_final_link): Mark sections included
1037 in the link.
1038 (xcoff_link_input_bfd): Don't link unmarked sections.
1039
919cf4b5
ILT
1040 * coffswap.h (coff_swap_scnhdr_out): Include section name in
1041 overflow error messages.
1042
986cf3b8
ILT
1043Tue Mar 26 15:46:18 1996 Ian Lance Taylor <[email protected]>
1044
fd681dcd
ILT
1045 * bfd.c (_bfd_default_error_handler): If _bfd_error_program_name
1046 is not set, print "BFD: " before the error message.
1047
986cf3b8
ILT
1048 * configure.in: Use AC_CHECK_TOOL to find ar and ranlib. From
1049 Miles Bader <[email protected]>.
1050 * configure: Rebuild.
1051
3998d526
ILT
1052Fri Mar 22 12:17:00 1996 Ian Lance Taylor <[email protected]>
1053
c3dffbd7
ILT
1054 * xcofflink.c (xcoff_link_input_bfd): Fix scan for C_BINCL/C_EINCL
1055 symbols.
1056
3998d526
ILT
1057 * config.bfd: Add ieee_vec to targ_selvecs for i960 targets and
1058 m68k-aout, m68k-coff, and m68k-elf targets.
1059
e4d27380
ILT
1060Fri Mar 22 11:33:44 1996 Martin Anantharaman <[email protected]>
1061
1062 * ieee.c: Changed #ifdef KEEPMINUSPCININST to #if KEEPMINUSPCININST.
1063 (ieee_generic_stat_arch_elt): Restructured to prevent
1064 ieee_object_p from being called repeatedly.
1065
51776a11
SC
1066Thu Mar 21 11:00:47 1996 steve chamberlain <[email protected]>
1067
1068 * coffcode.h (coff_write_object_contents): Allocate
1069 buffers large enough for any FILEHDR or AOUTHDR.
1070
1071Thu Mar 21 16:28:17 1996 David Mosberger-Tang <[email protected]>
1072
1073 * ecofflink.c (lookup_line): New static function, renamed and
1074 slighly changed from old _bfd_ecoff_locate_line.
1075 (_bfd_ecoff_locate_line): Cache line number information. Use
1076 lookup_line for actual lookup.
1077
9e4ebb1b
MM
1078Thu Mar 21 14:59:11 1996 Michael Meissner <[email protected]>
1079
1080 * peicode.h (pe_print_pdata): Warn if the .pdata section is not a
1081 multiple of 20 bytes.
1082
9e7427a4
ILT
1083Thu Mar 21 13:54:40 1996 Ian Lance Taylor <[email protected]>
1084
51776a11
SC
1085 * ecoff.c (_bfd_ecoff_find_nearest_line): Use bfd_zalloc to
1086 allocate ecoff_find_line, and don't initialize by hand.
1087 * elf32-mips.c (mips_elf_find_nearest_line): Use bfd_zalloc for
1088 mips_elf_find_line, and don't call memset.
1089
9e7427a4
ILT
1090 * coffcode.h (coff_compute_section_file_positions): If not
1091 producing a final executable, don't consider sofar when aligning
1092 the section to the correct size.
1093
1094Wed Mar 20 16:53:12 1996 Ian Lance Taylor <[email protected]>
1095
1096 * coffcode.h (coff_add_missing_symbols): Ifdef out.
1097 (coff_write_object_contents): Don't call coff_add_missing_symbols.
1098 * coffgen.c (coff_section_symbol): Ifdef out.
1099
e7f9ba4f
ILT
1100Mon Mar 18 12:54:41 1996 Ian Lance Taylor <[email protected]>
1101
1102 * elf32-mips.c (mips_elf_gprel32_reloc): Initialize gp if
1103 output_bfd is not NULL.
1104
34c4d647
DE
1105Thu Mar 14 17:12:06 1996 Doug Evans <[email protected]>
1106
1107 * coffgen.c (coff_get_normalized_symtab): Call bfd_zalloc instead
1108 of bfd_alloc (fixes fix_line not being initialized).
1109 Delete zeroing of fix_{value,tag,end,scnlen} fields.
1110
4e054247
JL
1111Thu Mar 14 16:06:06 1996 Jeffrey A Law ([email protected])
1112
57289b5c
JL
1113 * coffcode.h: Allow specific backends to override the
1114 bfd_link_add_symbols routine.
1115
4e054247
JL
1116 * coff-h8300.c: Include genlink.h.
1117 (howto_table): Add R_MEM_INDIRECT.
1118 (rtype2howto): Support R_MEM_INDIRECT.
1119 (h8300_reloc16_extra_cases): Handle R_MEM_INDIRECT like R_RELBYTE
1120 for now.
1121
a10d3dec
ILT
1122Tue Mar 12 12:41:17 1996 David Mosberger-Tang <[email protected]>
1123
1124 * coff-alpha.c (alpha_relocate_section): Use
1125 info->callbacks_warning, rather than _bfd_error_handler, for
1126 "multiple gp" warning.
1127
ea2488ad
ILT
1128Tue Mar 12 12:10:55 1996 Ian Lance Taylor <[email protected]>
1129
8881b321
ILT
1130 * linker.c (bfd_wrapped_link_hash_lookup): New function.
1131 (_bfd_generic_link_add_one_symbol): Remove BFD_ASSERT on hash
1132 table string. Use bfd_wrapped_link_hash_lookup.
1133 (_bfd_generic_link_write_global_symbol): Remove BFD_ASSERT on hash
1134 table string.
1135 * aoutx.h (aout_link_write_symbols): Use the name from the hash
1136 table, if any, when writing out symbols.
1137 (aout_link_input_section_std): Use the name from the hash table,
1138 if any, when reporting undefined symbols.
1139 (aout_link_input_section_ext): Likewise.
1140 (aout_link_reloc_link_order): Use bfd_wrapped_link_hash_lookup.
1141 * bout.c (get_value): Likewise.
1142 * cofflink.c (_bfd_coff_reloc_link_order): Likewise.
1143 * ecoff.c (ecoff_reloc_link_order): Likewise.
1144 * elflink.h (elf_link_add_object_symbols): Likewise.
1145 (elf_reloc_link_order): Likewise.
1146 * linker.c (_bfd_generic_link_output_symbols): Likewise.
1147 (_bfd_generic_reloc_link_order): Likewise.
1148 (default_indirect_link_order): Likewise.
1149 * reloc16.c (bfd_coff_reloc16_get_value): Likewise.
1150 * sunos.c (sunos_add_one_symbol): Likewise.
1151 * xcofflink.c (xcoff_link_add_symbols): Likewise.
1152 (bfd_xcoff_link_count_reloc): Likewise.
1153 (xcoff_reloc_link_order): Likewise.
1154
1155 * ecoffswap.h (ecoff_swap_fdr_in): If ECOFF_64, turn 0xffffffff
1156 into -1 for intern->rss.
1157
ea2488ad
ILT
1158 * configure: Rebuild with autoconf 2.8.
1159
c189fdfb
ILT
1160Mon Mar 11 12:28:31 1996 Ian Lance Taylor <[email protected]>
1161
1162 * stab-syms.c (__define_stab_duplicate): Define.
1163 (bfd_get_stab_name): Rename from aout_stab_name. Rewrite to use a
1164 switch.
1165 * bfd-in.h (bfd_get_stab_name): Declare.
1166 * bfd-in2.h: Rebuild.
1167 * Makefile.in: Rebuild dependencies.
1168 (BFD_LIBS): Add stab-syms.o.
1169 (BFD_LIBS_CFILES): Add stab-syms.c.
1170 (BFD32_BACKENDS): Remove stab-syms.o.
1171 (BFD32_BACKENDS_CFILES): Remove stab-syms.c.
1172 * configure.in: Don't list stab-syms.o in bfd_backends.
1173 * configure: Rebuild.
1174 * libaout.h (aout_stab_name): Don't declare.
1175 * aoutx.h (NAME(aout,get_symbol_info)): Call bfd_get_stab_name,
1176 not aout_stab_name.
1177
1178Fri Mar 8 11:26:20 1996 Ian Lance Taylor <[email protected]>
1179
1180 * elf.c (assign_file_positions_for_segments): Adjust file offset
1181 for section alignment even if SEC_LOAD is not set.
1182
c5bde1ef
ILT
1183Tue Mar 5 12:02:23 1996 Ian Lance Taylor <[email protected]>
1184
8f218e05
ILT
1185 * configure.in: Don't set SHLIB or SHLINK to an empty string,
1186 since they appear as targets in Makefile.in.
1187 * configure: Rebuild.
1188
c5bde1ef
ILT
1189 * sunos.c (sunos_scan_ext_relocs): If not making a shared library,
1190 don't fiddle with a symbol which is not defined anywhere.
1191
cb84f028
ILT
1192Mon Mar 4 12:49:16 1996 Ian Lance Taylor <[email protected]>
1193
4e59f523
ILT
1194 * xcofflink.c (xcoff_mark): Treat undefined imported symbols as
1195 though they are defined in a shared library.
1196 (xcoff_build_ldsyms): Likewise.
1197
ea2504d5
ILT
1198 * coffgen.c (coff_find_nearest_line): Don't look at the line
1199 numbers for the section if section->lineno is NULL.
1200
cb84f028
ILT
1201 * elf.c (_bfd_elf_symbol_from_bfd_symbol): Print a useful error
1202 message rather than calling BFD_ASSERT.
1203 * elfcode.h (write_relocs): Check return value of
1204 _bfd_elf_symbol_from_bfd_symbol.
1205
6e036cf7
MM
1206Fri Mar 1 09:42:59 1996 Michael Meissner <[email protected]>
1207
1208 * elf32-ppc.c (ppc_elf_add_symbol_hook): Don't set SEC_LOAD flag
1209 for .sbss section.
1210
d08435de
JL
1211Wed Feb 28 11:25:47 1996 Jeffrey A Law ([email protected])
1212
1213 * libhppa.h (hppa_reloc_field_selector_type): Add R_HPPA_NLSEL
1214 and R_HPPA_NLRSEL.
1215 (e_nsel, e_nlsel, e_nlrsel): Undefine. Add to
1216 hppa_reloc_field_selector_type_alt.
1217 (hppa_field_adjust): Handle e_nlsel, e_nlrsel. Fix e_nsel handling.
1218 * som.c (hppa_som_gen_reloc_type): Handle N', NL' NLR' field
1219 selectors.
1220 (som_write_fixups): Finish handling of R_N0SEL and R_N1SEL.
1221
09609415
ILT
1222Wed Feb 28 11:00:24 1996 Ian Lance Taylor <[email protected]>
1223
1224 * elf.c (assign_file_positions_for_segments): Adjust the segment
1225 memory size for the alignment of a SEC_ALLOC section, not just a
1226 SEC_LOAD section.
1227
55626bf0
ILT
1228Tue Feb 27 14:17:31 1996 Andreas Schwab <[email protected]>
1229
1230 * m68klinux.c: New file.
1231 * hosts/m68klinux.h: New file.
1232 * config.bfd (m68*-*-linuxaout*, m68*-*-linux*): New targets.
1233 * configure.in (m68*-*-linux*): New native host.
1234 (m68klinux_vec): New vector.
1235 * configure: Rebuild.
1236 * targets.c (m68klinux_vec): Declare.
1237 * i386linux.c (bfd_i386linux_size_dynamic_sections): Renamed from
1238 bfd_linux_size_dynmic_sections to avoid clash with m68klinux.c.
1239 * bfd-in.h (bfd_i386linux_size_dynamic_sections): Rename
1240 declaration from bfd_linux_size_dynamic_sections.
1241 (bfd_m68klinux_size_dynamic_sections): Declare.
1242 * bfd-in2.h: Rebuild.
1243 * Makefile.in: Rebuild dependencies.
1244 (BFD32_BACKENDS): Add m68klinux.o.
1245 (BFD32_BACKENDS_CFILES): Add m68klinux.c.
1246
6c7b3090
JL
1247Tue Feb 27 11:31:34 1996 Jeffrey A Law ([email protected])
1248
1249 * libhppa.h (pa_arch): Add pa20.
1250 (hppa_reloc_field_selector_type): Add R_HPPA_NSEL.
1251 (e_nsel): Undefine. Add to hppa_reloc_field_selector_type_alt.
1252 (hppa_field_adjust): Handle e_nsel.
1253 * som.c: Provide default definitions for many new relocs found only
1254 in hpux10 include files.
1255 (som_fixup_formats): Add several new relocs from hpux10.
1256 (som_hppa_howto_table): Add hpux10 relocs.
1257 (som_write_fixups): Handle R_N0SEL and R_N1SEL hpux10 relocs.
1258
14fd4616
SS
1259Mon Feb 26 12:52:48 1996 Stan Shebs <[email protected]>
1260
1261 * mpw-make.sed: Edit out recent shared library support, and
1262 rules to rebuild .h files using doc/chew.
1263
3d9f042c
ILT
1264Mon Feb 26 14:48:39 1996 David Mosberger-Tang <[email protected]>
1265
1266 * ecoff.c (ecoff_compute_section_file_positions): Adjust the file
1267 size even of sections with no contents.
1268
bdec6228
ILT
1269Mon Feb 26 14:01:13 1996 Ian Lance Taylor <[email protected]>
1270
88358469
ILT
1271 * cofflink.c (_bfd_coff_link_input_bfd): When merging, skip names
1272 starting with '$' the way we skip names starting with '.'. When
1273 updating x_endndx, don't be fooled by an index which has been
1274 merged.
1275
bdec6228
ILT
1276 * cofflink.c (_bfd_coff_link_input_bfd): Don't try to optimize a
1277 struct/union/enum type with no elements.
1278
053ae1d7
ILT
1279Sat Feb 24 11:38:58 1996 Ian Lance Taylor <[email protected]>
1280
15f4406c
ILT
1281 * bfd.c (bfd_errmsg): Handle a NULL return from strerror.
1282
c8435133
ILT
1283 * archive.c (bfd_generic_archive_p): If the first file in the
1284 archive can not be recognized as an object, don't assume that this
1285 is the wrong format.
1286
053ae1d7
ILT
1287 * elf.c (bfd_elf_set_dt_needed_name): Don't do anything if the
1288 format is not bfd_object.
1289 (bfd_elf_get_dt_soname): Likewise.
1290
ea74d979
ILT
1291Wed Feb 21 13:58:04 1996 Ian Lance Taylor <[email protected]>
1292
1293 * coff-sh.c (sh_relax_delete_bytes): Correct range of R_SH_USES
1294 reloc.
1295
871a3f3b
C
1296Tue Feb 20 16:22:44 1996 J.T. Conklin <[email protected]>
1297
1298 * bfd.c (tdata): Add netbsd_core_data.
1299 * bfd-in2.h: Regenerated.
1300
1301Tue Feb 20 16:50:02 1996 Ian Lance Taylor <[email protected]>
1302
fe6fc35f
ILT
1303 * sunos.c (SUNOS_CONSTRUCTOR): Define.
1304 (sunos_add_one_symbol): Don't let a symbol from a dynamic object
1305 override a constructor symbol. Set SUNOS_CONSTRUCTOR when
1306 appropriate.
1307
871a3f3b
C
1308 * bout.c (b_out_squirt_out_relocs): Use udata.i rather than flags
1309 to get the symbol index, matching 14 Jul 95 change.
1310
d3785301
FF
1311Tue Feb 20 08:26:27 1996 Fred Fish <[email protected]>
1312
1313 * coff-alpha.c (alpha_ecoff_get_relocated_section_contents):
1314 Remove duplicate definition of gp.
1315
60a49e7f
ILT
1316Mon Feb 19 12:37:41 1996 Ian Lance Taylor <[email protected]>
1317
81bdcecf
ILT
1318 * coff-alpha.c (alpha_ecoff_get_relocated_section_contents): Don't
1319 assume that we can set the GP value and then get the same value,
1320 since it won't be true if the output file is neither ELF nor
1321 ECOFF.
1322 * coff-mips.c (mips_adjust_reloc_in): Don't bother to use
1323 _bfd_get_gp_value here.
1324 (mips_gprel_reloc): Don't assume we can set and get the GP value.
1325 * elf32-mips.c (mips_elf_hi16_reloc): Get gp value from
1326 mips_elf_final_gp.
1327 (mips_elf_lo16_reloc): Likewise.
1328 (mips_elf_final_gp): Add pgp parameter. Set it to the GP value.
1329 Don't require that the BFD be ELF.
1330 (mips_elf_gprel16_reloc): Get gp value from mips_elf_final_gp.
1331 (mips_elf_gprel32_reloc): Likewise.
1332 (mips_elf_relocate_section): Don't assume we can set and get the
1333 GP value.
1334 (mips_elf_finish_dynamic_symbol): Don't bother to use
1335 _bfd_get_gp_value here.
1336
1337 * elf32-mips.c (mips_elf_create_procedure_table): Initialize sv.
1338 Don't change epdr between malloc and free. Be careful not to free
1339 NULL pointers. Zero out the first RPDR.
1340
7b61165a
ILT
1341 * configure.host: On Linux, only pass -rpath option if $(libdir)
1342 is neither /lib nor /usr/lib. From Alan Modra
1343 <[email protected]>.
1344
60a49e7f
ILT
1345 * elf-bfd.h (struct elf_obj_tdata): Rename dt_needed_name to
1346 dt_name.
1347 (elf_dt_name): Rename from elf_dt_needed_name.
1348 * elf.c (bfd_elf_set_dt_needed_name): Use elf_dt_name, not
1349 elf_dt_needed_name.
1350 (bfd_elf_get_dt_soname): New function.
1351 * elflink.h (elf_link_add_object_symbols): Use elf_dt_name, not
1352 elf_dt_needed_name. Save the SONAME back in elf_dt_name.
1353 * bfd-in.h (bfd_elf_get_dt_soname): Declare.
1354 * bfd-in2.h: Rebuild.
1355
b268e261
DE
1356Mon Feb 19 02:50:23 1996 Doug Evans <[email protected]>
1357
1358 * elf32-sparc.c (elf32_sparc_reloc_type_lookup): Renamed from
1359 _bfd_sparc_elf_reloc_type_lookup.
1360 (bfd_elf32_bfd_reloc_type_lookup): Update.
1361 * elf64-sparc.c (SPARC64_OLD_RELOCS): Define.
1362 (sparc64_elf_howto_table): Define.
1363 (sparc_reloc_map): Define.
1364 (sparc64_elf_reloc_type_lookup): New function.
1365 (sparc_elf_wdisp16_reloc): New function.
1366 (elf_info_to_howto): Use sparc64_elf_howto_table.
1367 (sparc64_elf_relocate_section): Likewise.
1368 (bfd_elf64_bfd_reloc_type_lookup): Update.
1369
9e2ef098
ILT
1370Sun Feb 18 15:02:25 1996 Ian Lance Taylor <[email protected]>
1371
1372 * configure.host: Check for 'do not mix' from native linker before
1373 trying to use -rpath.
1374
4c70373f
ILT
1375Fri Feb 16 12:46:18 1996 Ian Lance Taylor <[email protected]>
1376
cba3f8a9
ILT
1377 * bfd.c (_bfd_get_gp_value): New function.
1378 (_bfd_set_gp_value): New function.
1379 * libbfd-in.h (_bfd_get_gp_value): Declare.
1380 (_bfd_set_gp_value): Declare.
1381 * libbfd.h: Rebuild.
1382 * coff-alpha.c (alpha_ecoff_get_relocated_section_contents): Use
1383 _bfd_get_gp_value and _bfd_set_gp_value rather than referring
1384 directly to the fields in the tdata information.
1385 (alpha_relocate_section): Likewise.
1386 * coff-mips.c (mips_adjust_reloc_in): Likewise.
1387 (mips_gprel_reloc): Likewise.
1388 (mips_relocate_section): Likewise.
1389 * elf32-mips.c (mips_elf_hi16_reloc): Likewise.
1390 (mips_elf_lo16_reloc): Likewise.
1391 (mips_elf_final_gp): Likewise.
1392 (mips_elf_gprel16_reloc): Likewise.
1393 (mips_elf_gprel32_reloc): Likewise.
1394 (mips_elf_relocate_section): Likewise.
1395 (mips_elf_finish_dynamic_symbol): Likewise.
1396
4c70373f
ILT
1397 * bout.c (b_out_set_arch_mach): Recognize bfd_mach_i960_jx.
1398
a0a2dd54
ILT
1399Thu Feb 15 11:29:13 1996 Ian Lance Taylor <[email protected]>
1400
f54c7482 1401 * configure.in: Call AC_PROG_CC before configure.host.
65eed095
ILT
1402 * configure: Rebuild.
1403 * configure.host: Don't set information which autoconf should
1404 figure out, namely CC, CFLAGS, LDFLAGS, AR, and RANLIB.
65eed095 1405
14293419
ILT
1406 * configure.host: Remove go32 and win32 host information, since it
1407 should no longer be needed.
1408
edf3fe48
ILT
1409 * elf.c (map_sections_to_segments): If we have a .dynamic section,
1410 then start a new segment rather than put a writable section in a
1411 readonly segment.
1412
b5e4f369
ILT
1413 * configure.host: Set RPATH_ENVVAR.
1414
f2e33e27
ILT
1415 * Makefile.in: Rebuild dependencies.
1416
a0a2dd54
ILT
1417 * elflink.c (_bfd_elf_create_linker_section): Remove unused
1418 zero_section variable.
1419
52c6bc4d
ILT
1420Thu Feb 15 10:39:17 1996 H.J. Lu <[email protected]>
1421
1422 * Makefile.in ($(srcdir)/bfd-in2.h): Rename target from bfd-in2.h.
1423 ($(srcdir)/libbfd.h): Rename from libbfd.h.
1424 ($(srcdir)/libcoff.h): Rename from libcoff.h.
1425
c9e5279f
ILT
1426Wed Feb 14 16:29:07 1996 Martin Anantharaman <[email protected]>
1427
cb50baea
ILT
1428 * ieee.c (ieee_write_expression): Only use an R variable for a
1429 local symbol. Don't output a zero offset. Handle a zero address.
1430 (SRC_MASK, PCREL_OFFSET): Define based on KEEPMINUSPCININST.
1431 (rel32_howto, rel16_howto, rel8_howto): Use SRC_MASK and
1432 PCREL_OFFSET.
1433 (parse_expression): Don't try to handle multiple occurrences of a
1434 P variable. Handle I variables differently from X variables. Fix
1435 the order of minus expressions.
1436 (ieee_slurp_external_symbols): Generate an I variable for an NN
1437 record. Fix handling of ATI and ATX records.
1438 (ieee_slurp_sections): Only set minimal section attributes.
1439 Adjust them later, based on the section contents.
1440 (ieee_object_p): Read in the file until just after the ME record.
1441 Call ieee_slurp_section_data to set the section flags.
1442 (do_one): Add iterations parameter. Only repeat the first load
1443 item. Set the section and file reloc flags.
1444 (ieee_slurp_section_data): Set section flags. Pass iterations to
1445 do_one.
1446 (ieee_canonicalize_reloc): Handle I variables.
1447 (do_with_relocs): Only emit relocation size when necessary.
1448 Increase MAXRUN to 127. Change ov to be assigned, and take
1449 src_mask and pcrel_offset into account.
1450 (ieee_write_data_part): Skip sections that are not loaded.
1451 (ieee_write_external_part): Don't output optional last entry of WX
1452 records.
1453 (ieee_write_me_part): Make setting of me_record neater.
1454 (ieee_generic_stat_arch_elt): Get the size of an archive element.
1455
c9e5279f
ILT
1456 * syms.c (stt): Add entries for zerovars, vars, and code.
1457
1458 * elfcode.h (validate_reloc): New static function.
1459 (write_relocs): Call validate_reloc for non ELF relocs.
1460
1461 * elfxx-target.h (elf_symbol_leading_char): Define if not defined.
1462 (TARGET_BIG_SYM): Use elf_symbol_leading_char.
1463 (TARGET_LITTLE_SYM): Likewise.
1464
1465 * config.bfd (m68*-*-psos*): New target.
1466
d9d65be6
ILT
1467Tue Feb 13 15:56:22 1996 Bryan Ford <[email protected]>
1468
1469 * i386msdos.c: Remove some #if 0 code.
1470 (msdos_write_object_contents): Don't include empty sections in the
1471 size computation, regardless of their address.
1472
1473Tue Feb 13 15:36:37 1996 Michael Meissner <[email protected]>
1474
1475 * elf32-ppc.c (ppc_elf_relocate_section): Don't segfault if dynboj
1476 is NULL, ie, the -r switch is used.
1477
db5970c7
ILT
1478Tue Feb 13 14:35:15 1996 Ian Lance Taylor <[email protected]>
1479
e9f03cd4
ILT
1480 * reloc.c (BFD_RELOC_MIPS_GOT_HI16): Define.
1481 (BFD_RELOC_MIPS_GOT_LO16): Define.
b7384d22 1482 (BFD_RELOC_MIPS_CALL_HI16, BFD_RELOC_MIPS_CALL_LO16): Define.
e9f03cd4
ILT
1483 * bfd-in2.h, libbfd.h: Rebuild.
1484 * elf32-mips.c (mips_reloc_map): Map new relocs.
1485
fe7c066a
ILT
1486 * configure.host: Set HDLFLAGS for *-*-hpux with --enable-shared.
1487
1ab628e4
ILT
1488 * Makefile.in ($(SHLINK)): Check ts against $(SHLIB), not
1489 $(SHLINK).
1490
db5970c7
ILT
1491 * ieee.c (get_symbol): Set the section to bfd_abs_section.
1492 (do_with_relocs): If EXEC_P is set and there are no relocs, use a
1493 simple number for the section address, rather than an expression.
1494 Limit the number of bytes between relocs to MAXRUN.
1495 (ieee_write_me_part): Set me_record to the file offset after the
1496 start address.
1497 (ieee_write_processor): New static function.
1498 (ieee_write_object_contents): Use ieee_write_processor.
1499
318b7c18
ILT
1500Fri Feb 9 10:53:00 1996 Ian Lance Taylor <[email protected]>
1501
db5970c7
ILT
1502 * configure.host: Use ${CC-gcc} when testing for -rpath on SunOS.
1503
1504 * coff-aux.c: Change include of aux.h to aux-coff.h.
318b7c18 1505
56b64690
ILT
1506Thu Feb 8 14:01:03 1996 Andreas Schwab <[email protected]>
1507
1508 * elf32-m68k.c (elf_m68k_relocate_section): For a R_68K_RELATIVE
1509 relocation put the addend both in the reloc entry and the data.
1510 (elf_m68k_finish_dynamic_symbol): Likewise. Mask out marker in
1511 GOT offset value.
1512
1513 * elf32-m68k.c (elf_m68k_relocate_section): If -Bsymbolic, resolve
1514 a R_68K_PCxx reloc against a defined global symbol directly.
1515 (elf_m68k_check_relocs): Don't count such a reloc.
1516
1517 * elf32-m68k.c (elf_m68k_check_relocs): Don't record a symbol with
1518 a PLTxx reloc as dynamic. Disallow PLTxxO reloc against a local
1519 symbol for now, otherwise always record the symbol as dynamic.
1520 (elf_m68k_adjust_dynamic_symbol): If a symbol with a PLTxx reloc
1521 is not referenced by a dynamic object, and we are not making a
1522 shared object, then don't make a PLT entry. If we do make a PLT
1523 entry, make sure the symbol has been recorded as dynamic.
1524
5d649ca8
ILT
1525Wed Feb 7 13:56:06 1996 Ian Lance Taylor <[email protected]>
1526
1527 * configure.host: When making a shared library, set HLDFLAGS to
1528 pass an appropriate -rpath option. Use the make variable SONAME
1529 as the shared library soname, rather than computing it here. On
1530 SunOS, build stamp-tshlink in place of $(SHLINK).
1531 * Makefile.in (SONAME): New variable.
1532 ($(SHLINK)): Make a link to the transformed name, as well.
1533 (stamp-tshlink): New target.
1534 (install): Skip stamp-tshlink during install.
1535
8cc98cd5
MM
1536Wed Feb 7 13:37:39 1996 Michael Meissner <[email protected]>
1537
56b64690
ILT
1538 * elf32-ppc.c (ppc_elf_add_symbol_hook): Do not assume that the
1539 linker sections have been set up yet.
1540
8cc98cd5
MM
1541 * elf.c (make_mapping): Add an additional argument to suppress
1542 making the first section include the program headers.
1543 (map_sections_to_segments): If the user used -Ttext such that the
1544 program headers are on a different page, do not set the flags
1545 saying that this section includes the program headers.
1546
fe16107d
C
1547Tue Feb 6 14:04:49 1996 J.T. Conklin <[email protected]>
1548
1549 * configure.in (*-*-netbsd*): Set COREFILE to netbsd-core.c.
1550 don't define TRAD_HEADER.
1551 * configure: Rebuild.
1552
1553 * netbsd-core.c: New file, support for NetBSD core files.
1554 * hosts/*nbsd.h: Removed.
1555
f1783016
DE
1556Tue Feb 6 11:47:49 1996 Doug Evans <[email protected]>
1557
1558 * reloc.c (BFD_RELOC_SPARC_[567]): New reloc types.
1559 (BFD_RELOC_SPARC_LO7 reloc type): Deleted.
1560 * libbfd.h, bfd-in2.h: Regenerated.
1561 * elf32-sparc.c (_bfd_sparc_elf_reloc_type_lookup): Renamed from
1562 bfd_elf32_bfd_reloc_type_lookup.
1563 (reloc_type{,_names}): Deleted.
1564 (_bfd_sparc_elf_howto_table): Renamed from elf_sparc_howto_table.
1565 Add sparc64 relocs.
1566 (sparc_reloc_map): Add sparc64 relocs.
1567 (sparc_elf_notsupported_reloc): New static function.
1568 (sparc_elf_wdisp16_reloc): New static function.
1569 (elf32_sparc_check_relocs): Handle R_SPARC_WDISP{16,19}.
1570 (elf32_sparc_relocate_section): Likewise.
1571 (bfd_elf32_bfd_reloc_type_lookup): Define.
1572 * elf64-sparc.c (sparc64_elf_wdisp16_reloc): Deleted.
1573 (reloc_type{,_names}): Deleted.
1574 (elf_sparc_howto_table): Deleted.
1575 (sparc_reloc_map): Deleted.
1576 (_bfd_sparc_elf_howto_table): Renamed from elf_sparc_howto_table.
1577 (bfd_elf64_bfd_reloc_type_lookup): Change from function to #define.
1578
48fd00b6
ILT
1579Tue Feb 6 12:12:22 1996 Ian Lance Taylor <[email protected]>
1580
2300e217
ILT
1581 * configure.host: Make SHLIB_CFLAGS include $(PICFLAG) on a
1582 *-*-hpux* host.
1583
48fd00b6
ILT
1584 * Makefile.in (program_transform_name): New variable.
1585 (install): Transform library name before installing it.
1586
8adca582
ILT
1587Mon Feb 5 10:38:27 1996 Ian Lance Taylor <[email protected]>
1588
cbe75cb6
ILT
1589 * archures.c (bfd_mach_i960_hx): Define.
1590 * bfd-in2.h: Rebuild.
1591 * cpu-i960.c (scan_960_mach): Accept machine "hx".
1592 (MATRIX): Expand entries for HX.
1593 (arch_info_struct): Add i960:hx entry.
1594 * bout.c (b_out_set_arch_mach): Handle bfd_mach_i960_hx.
1595 * coffcode.h (coff_set_arch_mach_hook): Handle F_I960HX.
1596 (coff_set_flags): Handle bfd_mach_i960_hx.
1597
44f795f7
ILT
1598 Support for building as a shared library, based on patches from
1599 Alan Modra <[email protected]>:
1600 * configure.in: Add AC_ARG_ENABLE for shared and commonbfdlib.
1601 New substitutions: ALLLIBS, PICFLAG, SHLIB, SHLIB_CC,
1602 SHLIB_CFLAGS, COMMON_SHLIB, PICLIST, SHLINK.
1603 * configure: Rebuild.
1604 * configure.host: If --enable-shared, adjust shared library stuff
1605 based on the host. If the host is SunOS, and the linker supports
1606 -rpath, set HLDFLAGS to use it.
1607 * Makefile.in (ALLLIBS): New variable.
1608 (PICFLAG, SHLIB, SHLIB_CC, SHLIB_CFLAGS): New variables.
1609 (COMMON_SHLIB, SHLINK): New variables.
1610 (.c.o): If PICFLAG is set, compile twice, once PIC, once normal.
1611 (STAGESTUFF): Remove variable.
1612 (all): Depend upon $(ALLLIBS) and @PICLIST@ rather than
1613 $(TARGETLIB).
1614 (stamp-ofiles): New target, like old ofiles target, but build
1615 using a temporary file and move-if-change, and touch stamp-ofiles
1616 when done.
1617 (ofiles): Just depend upon stamp-ofiles.
1618 (stamp-piclist, piclist): New targets.
1619 ($(SHLIB), $(SHLINK)): New targets.
1620 (targets.o, archures.o): Build twice if PICFLAG is set.
1621 (do_mostlyclean): Remove pic/*.o.
1622 (do_clean): Remove stamp-ofiles, $(SHLIB), $(SHLINK), piclist, and
1623 stamp-piclist.
1624 (do_distclean): Remove pic and stamp-picdir.
1625 (install): Install shared libraries.
1626 ($(OFILES)): Depend upon stamp-picdir.
1627 (stamp-picdir): New target.
1628
cb62d2bc
ILT
1629 * libcoff-in.h: Add comment reminding people that libcoff.h is a
1630 generated file.
1631 * libcoff.h: Rebuild.
1632
8adca582
ILT
1633 * elflink.h (elf_adjust_dynamic_symbol): Don't try to get the
1634 flavour of a section with no owner.
1635
1636 * elf32-mips.c (mips_elf_create_dynamic_sections): Clear
1637 ELF_LINK_NON_ELF flag.
1638 (mips_elf_create_got_section): Likewise.
1639
1640 * elf.c: Revert last change, since it breaks dynamic linking.
1641 * elf-bfd.h (struct elf_backend_data): Remove want_hdr_in_seg
1642 field.
1643 * elf32-mips.c (elf_backend_want_hdr_in_seg): Don't define.
1644 * elfxx-target.h (elf_backend_want_hdr_in_seg): Don't define.
1645 (elfNN_bed): Don't initialize want_hdr_in_seg field.
1646
1647Sun Feb 4 20:45:13 1996 Michael Meissner <[email protected]>
1648
1649 * elf.c (assign_file_positions_for_segments): If the backend does
1650 not want the elf header or the program headers in the address
1651 space, do not include them in the calculations.
1652
1653 * elf32-ppc.c (ppc_elf_additional_program_headers): New hook
1654 function to determine if we need additional program headers.
1655 (ppc_elf_modify_segment_map): Define as a NOP function for now.
1656 (ppc_elf_create_linker_section): .sdata2 is a read-only section.
1657
0f09ddd4
ILT
1658Sat Feb 3 23:00:03 1996 Ian Lance Taylor <[email protected]>
1659
1660 * coffcode.h: Move today's libcoff.h change into coffcode.h.
1661
b48f10ba
FF
1662Sat Feb 3 15:43:44 1996 Fred Fish <[email protected]>
1663
0f09ddd4
ILT
1664 * libcoff.h (bfd_coff_link_add_one_symbol): Combine macro args
1665 back into one line. Some compilers (sunos 4.1.3 for example)
1666 won't accept args split across more than one line.
b48f10ba 1667
50761d3b
SC
1668Fri Feb 2 11:42:15 1996 Steve Chamberlain <[email protected]>
1669
1670 * aclocal.m4 (BFD_BINARY_FOPEN): Understand cygwin32.
1671 * configure: Regenerate.
1672
9dce8260
JL
1673Fri Feb 2 12:12:16 1996 Jeffrey A Law ([email protected])
1674
1675 * elf32-hppa.c (elf32_hppa_backend_symbol_table_processing): Don't
1676 try to do arithmetic on a void *, cast it to a unsigned char * first.
1677
6c55897c
ILT
1678Thu Feb 1 16:04:06 1996 Ian Lance Taylor <[email protected]>
1679
869b7d80
ILT
1680 * elf-bfd.h (ELF_LINK_NON_ELF): Define.
1681 * elf.c (_bfd_elf_link_hash_newfunc): Set elf_link_hash_flags to
1682 ELF_LINK_NON_ELF.
1683 * elflink.h (elf_link_add_object_symbols): Reset ELF_LINK_NON_ELF
1684 flag for a newly defined symbol.
1685 (NAME(bfd_elf,record_link_assignment)): Likewise.
1686 (elf_adjust_dynamic_symbol): If ELF_LINK_NON_ELF is set, try to
1687 set the DEF or REF_REGULAR flags correctly.
1688
6f6956c6
ILT
1689 * Makefile.in (bfd-in2.h): Make bfd.h, not protos, in docdir.
1690 (libbfd.h, libcoff.h): Corresponding change.
1691
6c55897c
ILT
1692 * elf32-i386.c (elf_i386_check_relocs): Don't record a symbol with
1693 a PLT32 reloc as dynamic.
1694 (elf_i386_adjust_dynamic_symbol): If a symbol with a PLT32 reloc
1695 is not referenced by a dynamic object, and we are not making a
1696 shared object, then don't make a PLT entry. If we do make a PLT
1697 entry, make sure the symbol has been recorded as dynamic.
1698
b06136f2
SC
1699Wed Jan 31 17:23:32 1996 Steve Chamberlain <[email protected]>
1700
1701 * coff-i386.c (coff_i386_reloc_type_lookup): Add BFD_RELOC_32_PCREL.
1702 * config.bfd (i[345]86-*-win32): Becomes i[345]86-*-cygwin32.
1703 (powerpcle-*-cygwin32): New.
1704 * peicode.h (add_data_entry): Get address from vma.
1705
5c867ecd
MM
1706Wed Jan 31 16:23:57 1996 Michael Meissner <[email protected]>
1707
1708 * elflink.c (_bfd_elf_create_linker_section): If the symbol
1709 attached to the section has already been created as an undefined
1710 symbol, treat it as if it hasn't been created yet.
1711
28c16b55
ILT
1712Wed Jan 31 16:16:53 1996 Ian Lance Taylor <[email protected]>
1713
1714 * elflink.h (elf_bfd_final_link): Don't output initial dummy
1715 symbol or section symbols if stripping all symbols and this is not
1716 a relocateable link. Don't output the symbol string table if
1717 there are no symbols.
1718 (elf_link_flush_output_syms): Don't do anything if there are no
1719 symbols to flush.
1720
d19df9b5
ILT
1721Wed Jan 31 12:55:49 1996 Richard Henderson <[email protected]>
1722
1723 * coff-aux.c: New file.
1724 * hosts/m68kaux.h: New file.
1725 * config.bfd (m68*-apple-aux*): New target.
1726 * configure.in (m68*-apple-aux*): New native host.
1727 (m68kaux_coff_vec): New vector.
1728 * configure: Rebuild.
1729 * targets.c (m68kaux_coff_vec): Declare.
1730 * coffcode.h (bfd_coff_backend_data): Add field
1731 _bfd_coff_link_add_one_symbol.
1732 (bfd_coff_link_add_one_symbol): Define.
1733 (compare_arelent_ptr): New static function if TARG_AUX.
1734 (coff_write_relocs): If TARG_AUX, sort the relocs.
1735 (coff_write_object_contents): Set A/UX aouthdr magic number.
1736 (coff_link_add_one_symbol): Define if not defined.
1737 (bfd_coff_std_swap_table): Initialize new field.
1738 * libcoff.h: Rebuild.
1739 * cofflink.c (coff_link_add_symbols): Call
1740 bfd_coff_link_add_one_symbol rather than
1741 _bfd_generic_link_add_one_symbol.
1742 * coff-m68k.c (COFF_PAGE_SIZE): Don't define if already defined.
1743 * coff-alpha.c (alpha_ecoff_backend_data): Initialize new field.
1744 * coff-mips.c (mips_ecoff_backend_data): Likewise.
1745 * Makefile.in: Rebuild dependencies.
1746 (BFD32_BACKENDS): Add coff-aux.o.
1747 (BFD32_BACKENDS_CFILES): Add coff-aux.c.
1748
a796aafd
ILT
1749Wed Jan 31 11:37:46 1996 Andreas Schwab <[email protected]>
1750
1751 * elf32-m68k.c (elf_m68k_relocate_section): Fix R_68K_GOT*
1752 relocation; ignore addend with R_68K_{GOT,PLT}*O relocation.
1753
a8763553
ILT
1754Tue Jan 30 12:09:04 1996 Ian Lance Taylor <[email protected]>
1755
66761e59
ILT
1756 * Makefile.in (do_maintainer_clean): Remove $(srcdir)/bfd-in2.h,
1757 $(srcdir)/libbfd.h and $(srcdir)/libcoff.h.
1758 (maintainer-clean): Warn about deleting special files.
1759 (bfd-in2.h, libbfd.h, libcoff.h): New targets.
1760
cf5138e3
ILT
1761 * elf32-hppa.c (elf32_hppa_relocate_section): Handle indirect and
1762 warning symbols correctly.
1763 * elf32-i386.c (elf_i386_relocate_section): Likewise.
1764 * elf32-m68k.c (elf_m68k_relocate_section): Likewise.
1765 * elf32-mips.c (mips_elf_relocate_section): Likewise.
1766 * elf32-ppc.c (ppc_elf_relocate_section): Likewise.
1767 * elf32-sparc.c (elf32_sparc_relocate_section): Likewise.
1768 * elf64-sparc.c (sparc64_elf_relocate_section): Likewise.
1769
a8763553
ILT
1770 * syms.c (_bfd_stab_section_find_nearest_line): Add casts to avoid
1771 warnings.
1772
bdd2e7f1
KK
1773Mon Jan 29 14:27:24 1996 Kim Knuttila <[email protected]>
1774
1775 * libcoff-in.h: aligned newly exported names with bfd naming
1776 conventions. Removed an erroneous define of POWERPC_LE_PE.
1777 * libcoff.h: Rebuild.
1778 * cofflink.c, coff-ppc.c: the above function name changes
1779
d2bb6c79
ILT
1780Mon Jan 29 13:06:28 1996 Ian Lance Taylor <[email protected]>
1781
eb5bc1f3
ILT
1782 From Basim Kadhim <[email protected]>:
1783 * ecoff.c (struct extsym_info): Define.
1784 (_bfd_ecoff_bfd_final_link): Pass a pointer to struct extsym_info
1785 to ecoff_link_write_external.
1786 (ecoff_link_write_external): Accept a struct extsym_info pointer.
1787 Strip symbols when appropriate.
1788
052b35d2
ILT
1789 Based on patches from Ronald F. Guilmette <[email protected]>:
1790 * syms.c (BSF_OBJECT): Define.
1791 (bfd_print_symbol_vandf): Print 'O' for BSF_OBJECT.
1792 * bfd-in2.h: Rebuild.
1793 * elfcode.h (elf_slurp_symbol_table): Set BSF_OBJECT for an
1794 STT_OBJECT symbol.
1795 * elf.c (swap_out_syms): Only set type to STT_OBJECT if BSF_OBJECT
1796 is set.
1797
53787b23
ILT
1798 * elf32-i386.c (elf_i386_relocate_section): If -Bsymbolic, when
1799 copying relocs into a shared object, treat a defined global symbol
1800 as a local symbol.
1801 * elf32-m68k.c (elf_m68k_relocate_section): Likewise.
1802 * elf32-mips.c (mips_elf_relocate_section): Likewise.
1803 * elf32-sparc.c (elf32_sparc_relocate_section): Likewise.
1804
d2bb6c79
ILT
1805 * elflink.h (elf_link_add_object_symbols): Only set weakdef to a
1806 real defined symbol, not to a weak defined symbol.
1807
13d1a4dd
KK
1808Mon Jan 29 11:34:36 1996 Kim Knuttila <[email protected]>
1809
1810 * cofflink.c: removed the POWERPC_LE_PE hack, promoted some types
1811 and made a few static functions externs.
1812
1813 * coff-ppc.c (ppc_bfd_coff_final_link): new function, replaces the
1814 POWERPC_LE_PE hack in cofflink.
1815
1816 * libcoff-in.h: promoted the following from cofflink.c to allow
1817 _bfd_coff_final_link to be overridden - STRING_SIZE_SIZE,
1818 coff_debug_merge_element, struct coff_debug_merge_type,
1819 coff_debug_merge_hash_entry, coff_debug_merge_hash_table,
1820 coff_debug_merge_hash_table_init, coff_debug_merge_hash_table_free,
1821 coff_debug_merge_hash_lookup, coff_link_section_info,
1822 coff_final_link_info, coff_debug_merge_hash_newfunc,
1823 coff_write_global_sym, coff_link_input_bfd, coff_reloc_link_order.
1824
1825 * libcoff.h: re-gen'd
1826
86aac8ea
ILT
1827Fri Jan 26 18:33:35 1996 Ian Lance Taylor <[email protected]>
1828
1829 * syms.c: Include "bfdlink.h".
1830 (struct stab_find_info): Define.
1831 (_bfd_stab_section_find_nearest_line): New function.
1832 * libbfd-in.h (_bfd_stab_section_find_nearest_line): Declare.
1833 * libbfd.h: Rebuild.
1834 * elf-bfd.h (struct elf_obj_tdata): Add line_info field.
1835 * elf.c (_bfd_elf_find_nearest_line): Try calling
1836 _bfd_stab_section_find_nearest_line before searching the ELF
1837 symbol table. Find the closest STT_FUNC symbol, not the last one.
1838 * libcoff-in.h (coff_data_type): Add line_info field.
bdd2e7f1 1839 * libcoff.h: Rebuild.
86aac8ea
ILT
1840 * coffgen.c (coff_find_nearest_line): Try calling
1841 _bfd_stab_section_find_nearest_line before searching the COFF
1842 symbol table.
1843 * Makefile.in: Rebuild dependencies.
1844
1845Fri Jan 26 16:11:19 1996 Michael Meissner <[email protected]>
1846
1847 * elf32-ppc.c (R_PPC_EMB_SDA21 relocations): Make relocation size
1848 4 bytes, so we get the correct value when updating the register
1849 field in little endian mode.
1850
43d36aad
ILT
1851Thu Jan 25 12:14:16 1996 Ian Lance Taylor <[email protected]>
1852
f0a97077
ILT
1853 * libcoff-in.h (struct xcoff_tdata): Remove toc_section and
1854 entry_section fields. Add sntoc and snentry fields.
1855 * libcoff.h: Rebuild.
1856 * coffcode.h (coff_mkobject_hook): Initialize sntoc and snentry,
1857 not toc_section and entry_section (the COFF file does not have any
1858 sections at this point).
1859 (coff_write_object_contents): Set o_snentry and o_sntoc from
1860 snentry and sntoc rather than entry_section and toc_section.
1861 * coff-rs6000.c (xcoff_copy_private_bfd_data): Copy sntoc and
1862 snentry, not toc_section and entry_section.
1863 * xcofflink.c (bfd_xcoff_size_dynamic_sections): Don't set
1864 entry_section from hentry.
1865 (xcoff_link_input_bfd): If a defined symbol has XCOFF_ENTRY set,
ea2504d5 1866 set snenty.
f0a97077
ILT
1867 (xcoff_link_input_bfd): Set sntoc, not toc_section.
1868 (xcoff_write_global_symbol): Get toc_section from sntoc, rather
1869 than using toc_section directly.
1870
9b4598d0
ILT
1871 * archures.c: Add missing `.' in enum bfd_architecture.
1872 * bfd-in2.h: Rebuild.
1873
43d36aad
ILT
1874 * config.bfd (i[345]86-*-sco*elf*): Use bfd_elf32_i386_vec. From
1875 Robert Lipe <[email protected]>.
1876
eb82bc60
MM
1877Thu Jan 25 12:08:51 1996 Michael Meissner <[email protected]>
1878
1879 * elf32-ppc.c (ppc_elf_size_dynamic_sections): Add .rela.sdata{,2}
1880 to sections we allocate. Use bfd_zalloc to allocate initialial
1881 sections, not bfd_alloc.
1882 (ppc_elf_check_relocs): Remove BFD_ASSERTs for !shared from
1883 SDA{,2}I16 relocations.
1884 (ppc_elf_add_symbol_hook): Use the value of -G nn to determine
1885 whether to put something in .sbss or not.
1886 (ppc_elf_relocate_section): Add support for more relocations. Add
c1e65e24
MM
1887 in sec->output_offset where appropriate. Make error messages
1888 include the symbol name.
eb82bc60
MM
1889
1890 * elflink.c (_bfd_elf_create_linker_section): Lookup symbol before
1891 trying to add it to the symbol table, so _GLOBAL_OFFSET_TABLE_
1892 doesn't get redefined messages if -shared.
1893
1894 * elflink.h (elf_create_pointer_linker_section) Only bump RELA
1895 section if the rel_section field has been set up.
1896
9d621c7d
MM
1897Wed Jan 24 20:40:26 1996 Michael Meissner <[email protected]>
1898
1899 * elf32-ppc.c (ppc_elf_relocate_section): Fix typo in eabi
1900 relocations.
1901
75c9ddc9
DE
1902Wed Jan 24 10:38:34 1996 Doug Evans <[email protected]>
1903
1904 * elf32-sparc.c (elf32_sparc_merge_private_bfd_data): Delete checking
1905 of flags, only flags used are controlled by mach number. Bump up
1906 output file mach number to highest of input file mach numbers.
1907 (elf32_sparc_object_p): Watch for EF_SPARC_SUN_US1.
1908 (elf32_sparc_final_write_processing): Set EF_SPARC_SUN_US1 if v8plusa.
1909
72c513bc
DE
1910 * config.bfd (sparc64-*-{sysv4*,solaris2*}): Comment out
1911 bfd_elf64_sparc_vec support.
1912
3cbe19d2
MM
1913Tue Jan 23 14:33:05 1996 Michael Meissner <[email protected]>
1914
1915 * elf32-ppc.c (ppc_elf_copy_private_bfd_data): Don't complain if
1916 the embedded bit is set on some objects and not on others. Just
1917 or it together.
d8fd85ad
MM
1918 (ppc_elf_relocate_section): Implement R_PPC_EMB_{SDA21,RELSDA}
1919 relocations.
3cbe19d2 1920
5eb83ede
ILT
1921Tue Jan 23 14:22:45 1996 Ian Lance Taylor <[email protected]>
1922
4a3d3b42
ILT
1923 * coffcode.h (coff_new_section_hook): Don't try to align the
1924 .stabstr section.
1925
5eb83ede
ILT
1926 * coffcode.h (coff_set_section_contents): Fix the handling of the
1927 .lib section to work even if the entire section contents are
1928 written at once. From Gvran Uddeborg <[email protected]> and
1929 Robert Lipe <[email protected]>.
1930
05f927dd
MM
1931Mon Jan 22 18:45:51 1996 Michael Meissner <[email protected]>
1932
1933 * elflink.h (elf_finish_pointer_linker_section): Don't allocate
1934 memory here for contents.
1935
1936 * elf32-ppc.c (ppc_elf_relocate_section): Bump up _SDA_BASE_ and
1937 _SDA2_BASE_ by 32768.
1938 (ppc_elf_size_dynamic_sections): #if out PLT code which we haven't
1939 started using. Allocate contents for .sdata and .sdata2 sections
1940 also.
1941 (ppc_elf_check_relocs): Use bfd_get_section_name in debug message,
1942 rather than _name.
1943 (ppc_elf_finish_dynamic_symbol): Remove code that attempted to
1944 size _SDA{,2}_BASE_.
1945 (ppc_elf_relocate_section): Change how sdata{,2} relocations are
1946 done.
1947
5bc513b4
DE
1948Mon Jan 22 08:52:04 1996 Doug Evans <[email protected]>
1949
5a5bac64
DE
1950 * elflink.h (elf_finish_pointer_linker_section): Fix typo.
1951
5bc513b4 1952 * archures.c (bfd_mach_sparc_v9): Renamed from bfd_mach_sparc64.
5bc513b4 1953 (bfd_mach_sparc_{v8plus,v8plusa}): Define.
5bc513b4 1954 (bfd_mach_sparc_v9a): Define.
049f3d4c 1955 (bfd_mach_sparc_v9_p): Define.
5bc513b4
DE
1956 * bfd-in2.h: Regenerated.
1957 * aoutx.h (aout,machine_type): bfd_mach_sparc64 renamed to
1958 bfd_mach_sparc_v9.
d3366d23 1959 * elf64-sparc.c (sparc64_elf_object_p): Likewise.
5bc513b4
DE
1960 * config.bfd (sparc64-*-sysv4*,sparc64-*-solaris2*): Set targ_defvec
1961 to bfd_elf32_sparc_vec.
1962 * cpu-sparc.c (arch_info_struct): Renamed from sparc_arch_info.
5bc513b4 1963 Add v8plus{,a} support.
5bc513b4 1964 Add v9a support.
768b8ade 1965 (sparc_compatible): New function.
5bc513b4 1966 * elf32-sparc.h: #include "elf/sparc.h".
75c9ddc9 1967 (elf32_sparc_merge_private_bfd_data, elf32_sparc_object_p,
5bc513b4 1968 elf32_sparc_final_write_processing): New functions.
75c9ddc9 1969 (bfd_elf32_bfd_merge_private_bfd_data, elf_backend_object_p,
5bc513b4 1970 elf_backend_final_write_processing): Define.
5bc513b4 1971
3b3753b8
MM
1972Mon Jan 22 11:21:51 1996 Michael Meissner <[email protected]>
1973
1974 * elf-bfd.h (struct elf_link_hash_entry): Add
1975 linker_section_pointer field.
1976 (enum elf_linker_section_enum): Enumeration for new way of
1977 creating linker dynamic sections and symbols.
1978 (elf_linker_section{,_pointers}): New structures for creating
1979 dynamic sections and symbols.
1980 (elf_obj_tdata): Add linker_section_pointers and linker_section
1981 fields.
1982 (elf_local_ptr_offsets,elf_linker_section): New accessor macros.
1983 (_bfd_elf_create_linker_section): New declarations.
1984 (_bfd_elf_find_pointer_linker_section): Ditto.
1985 (bfd_elf{32,64}_{create,finish}_pointer_linker_section): Ditto.
1986 (_bfd_elf_make_linker_section_rela): Ditto.
1987
1988 * elf.c (_bfd_elf_link_hash_newfunc): Initialize new fields.
1989
1990 * elf32-ppc.c (ppc_elf_create_dynamic_sections): Delete.
1991 (ppc_elf_create_linker_section): New function to create the
1992 sections .got, .sdata, and .sdata2.
1993 (ppc_elf_size_dynamic_sections): Zap .rela.{sdata,sdata2} if
1994 needed.
1995 (ppc_elf_check_relocs): Support more of the eabi relocations.
1996 (ppc_elf_relocate_section): Ditto.
1997 (ppc_elf_finish_dynamic_symbols): Adjust _SDA{,2}_BASE_ by 32768
1998 if the .sdata{,2} + .sbss{,2} section size is > 32k.
1999
2000 * elflink.h (elf_create_pointer_linker_section): New function to
2001 create initialized pointers in dynamic linker sections.
2002 (elf_finish_pointer_linker_section): Actually intialize the
2003 pointers created above.
2004
2005 * elfcode.h (bfd_elf{32,64}_create_pointer_linker_section): New
2006 macros to provide both 32 and 64 bit versions of
2007 elf_create_pointer_linker_section.
2008 (bfd_elf{32,64}_finish_pointer_linker_section): New macros to
2009 provide both 32 and 64 bit versions of
2010 elf_finish_pointer_linker_section.
2011
2012 * elflink.c (_bfd_elf_create_linker_section): New function to
2013 create a linker section.
2014 (_bfd_elf_find_pointer_linker_section): Find a unique pointer to a
2015 given address in the linker pointer offsets created for a given
2016 symbol.
2017 (_bfd_elf_make_linker_section_rela): Make a RELA section
2018 corresponding to the generated linker section.
2019
6b3eb07e
DE
2020Sat Jan 20 08:36:10 1996 Doug Evans <[email protected]>
2021
2022 * elf32-sparc.c (ELF_MACHINE_ALT1): Define.
2023
e7894f6b
KK
2024Thu Jan 18 18:25:34 1996 Kim Knuttila <[email protected]>
2025
2026 * coff-ppc.c (coff_ppc_relocate_section): changed TOCDEFN relocs.
2027 (coff_ppc_relocate_section): Handle special values for gcc built dlls.
2028 (dump_toc): fix diagnosing code to identify out-of-toc-bounds entries.
2029 Also begin the toc at 4 as an eye catcher ('31313131' marks the first
2030 toc entry in an objdump) for now.
2031 (ppc_do_last, ppc_get_last): New function - needed to save processing
2032 the toc owner to the end.
2033 (ppc_coff_swap_sym_in_hook): Removed an incorrect hack for doing the
2034 toc owner last.
2035
2036 * cofflink.c (_bfd_coff_final_link): Added a new hack to keep the
2037 toc owner from being done till last. Must define POWERPC_LE_PC
2038 to enable it.
2039
2040 * coffcode.h (coff_set_alignment_hook): alignment setting for .stab
2041
2042 * peicode.h (coff_swap_scnhdr_out): set section flags for stab/str
2043 to INFO.
2044 (coff_swap_aouthdr_out): Removed a non-working hack for computing the
2045 SizeOfImage for PowerPC. Ignore the size of the .junk section.
2046
80b99ca0
ILT
2047Thu Jan 18 17:42:12 1996 Ian Lance Taylor <[email protected]>
2048
2049 * elfcore.h: Include <signal.h> before <sys/procfs.h>.
2050
df96df4c
ILT
2051Wed Jan 17 12:40:14 1996 Ian Lance Taylor <[email protected]>
2052
2053 * cpu-powerpc.c (arch_info_struct): Change last entry to not point
2054 back to first.
2055 (bfd_powerpc_arch): Point at first entry in arch_info_struct.
2056
d49ddb85
ILT
2057Tue Jan 16 15:10:49 1996 Ian Lance Taylor <[email protected]>
2058
2059 * elf.c (assign_file_positions_for_segments): Don't increment file
2060 offset for a segment which contains no loadable sections.
2061
4500a112
MM
2062Mon Jan 15 17:46:27 1996 Michael Meissner <[email protected]>
2063
2064 * reloc.c: Add new PowerPC relocations.
2065 * {bfd-in2,libbfd}.h: Regenerate.
2066
2067 * elf32-ppc.c (ppc_elf_howto_raw): Add more PPC relocations.
2068 (ppc_elf_reloc_type_lookup): Lookup new relocations.
2069
252239f8
ILT
2070Mon Jan 15 14:29:44 1996 Ian Lance Taylor <[email protected]>
2071
20ab764e
ILT
2072 * aoutx.h (howto_table_ext): Fix RELOC_BASE10 and RELOC_BASE22
2073 entries.
2074
0a4ffa2d
ILT
2075 * sunos.c (sunos_scan_ext_relocs): Don't fail assert if
2076 info->shared.
2077
45ca3195
ILT
2078 * coffgen.c (coff_find_nearest_line): Don't try to cache
2079 information in sections that are not owned by a BFD. From Richard
2080 Henderson <[email protected]>.
2081
252239f8
ILT
2082 * elf32-mips.c: Numerous changes to dynamic linking code, mostly
2083 from Kazumoto Kojima <[email protected]>.
2084 * elflink.h (elf_link_output_extsym): Remove special check for
2085 _rld_new_interface.
2086
2087 * ecoffswap.h: Add prototypes for static functions.
2088
bd2d10c0
MM
2089Sun Jan 14 21:36:08 1996 Michael Meissner <[email protected]>
2090
2091 * elf32-ppc.c (ppc_elf_{unsupported,std}_reloc): Remove functions.
2092 (ppc_elf_howto_raw): Remove ppc_elf_{unsupported,std}_reloc
2093 references.
2094 (ppc_elf_relocate_section): No longer allow .sdata/.sbss sections
2095 to satisfy a TOC16 relocation. Rewrite unsupported relocation
2096 support. Begin support for R_PPC_SDA{2,}REL.
2097
1c3a295b
MM
2098Sat Jan 13 09:36:52 1996 Michael Meissner <[email protected]>
2099
2100 * elf32-ppc.c (ppc_elf_create_dynamic_sections): New function to
2101 create the .got and .got.neg sections.
2102 (ppc_elf_size_dynamic_sections): Call it.
2103 (ppc_elf_check_relocs): Call it.
2104 (ppc_elf_size_dynamic_sections): Support .got.neg, just like .got.
2105 (ppc_elf_check_relocs): Add error messages for relocations we
2106 don't yet support. Do not include R_PPC_SDAREL16 like a GOT
2107 relocation.
2108
57081126
MM
2109Fri Jan 12 15:27:59 1996 Michael Meissner <[email protected]>
2110
2111 * elf32-ppc.c (ppc_elf_fake_sections): Define, and handle the new
2112 section flags for V.4 and eabi.
2113
3c38b3df
ILT
2114Fri Jan 12 13:59:16 1996 Ian Lance Taylor <[email protected]>
2115
14899eb7
ILT
2116 * elf.c (assign_file_positions_for_segments): If a segment
2117 contains no sections, don't mark it as readable.
2118
98bb57ad
ILT
2119 * elf-bfd.h (_bfd_elf_section_from_bfd_section): Declare.
2120 * elfcode.h (_bfd_elf_section_from_bfd_section): Don't declare.
2121
02fcd126
ILT
2122 * elf.c (_bfd_elf_print_private_bfd_data): Dump contents of
2123 dynamic section, if there is one.
2124 * elf-bfd.h (struct elf_size_info): Add swap_dyn_in field.
2125 (bfd_elf32_swap_dyn_in): Change type of second parameter to PTR.
2126 (bfd_elf64_swap_dyn_in): Likewise.
2127 * elfcode.h (elf_swap_dyn_in): Change type of second parameter to
2128 PTR.
2129 (NAME(_bfd_elf,size_info)): Initialize swap_dyn_in field.
2130
3c38b3df
ILT
2131 * elf32-i386.c (elf_i386_size_dynamic_sections): Don't create a
2132 DT_TEXTREL entry because of .rel.plt. From Martin Pirker
2133 <[email protected]>.
2134
83f4323e
MM
2135Thu Jan 11 17:06:14 1996 Michael Meissner <[email protected]>
2136
2137 * section.c (SEC_{EXCLUDE,SORT_ENTRIES}): New section flags for
2138 PowerPC V.4 and eabi.
2139 * bfd-in2.h: Regenerate.
2140 * libfd.h: Regenerate.
2141
2142 * elfxx-target.h (TARGET_{BIG,LITTLE}_SYM): Add new flags.
2143
2144 * elf32-ppc.c (ppc_elf_section_from_shdr): Support SHT_ORDERED
2145 section type and SHF_EXCLUDE section flag, turning them into the
2146 appropriate bfd section flag.
2147
a0271667
ILT
2148Thu Jan 11 11:23:30 1996 Ian Lance Taylor <[email protected]>
2149
c9746fb6
ILT
2150 * xcofflink.c (xcoff_link_add_symbols): Create the special
2151 sections if we see a DYNAMIC object, in case that is the only
2152 XCOFF input object we see.
2153
5b3b9ff6
ILT
2154 * elf32-mips.c: Extensive changes for a start at dynamic linking
2155 support, from Kazumoto Kojima <[email protected]>.
2156
2157 * elf-bfd.h (struct elf_backend_data): Add type_change_ok field.
2158 (struct elf_backend_data): Remove
2159 elf_backend_create_program_headers field. Add
2160 elf_backend_additional_program_headers and
2161 elf_backend_modify_segment_map fields.
2162 * elfxx-target.h (elf_backend_type_change_ok): Define if not
2163 defined.
2164 (elf_backend_additional_program_headers): Likewise.
2165 (elf_backend_modify_segment_map): Likewise.
2166 (elf_backend_create_program_headers): Don't define.
2167 (elfNN_bed): Change to account for field changes.
2168 * elf.c (assign_file_positions_for_segments): Call new
2169 modify_segment_map backend function. Don't call old
2170 create_program_headers backend function.
2171 (get_program_header_size): Call additional_program_headers rather
2172 than create_program_headers.
2173 * elflink.h (elf_link_add_object_symbols): Initialize
2174 type_change_ok from new backend field.
2175 (elf_link_output_extsym): Don't warn if _rld_new_interface is
2176 defined.
2177 (elf_reloc_link_order): Treat a reloc against a defined symbol as
2178 a reloc against the appropriate section.
2179
761f377f
ILT
2180 * elf-bfd.h (struct bfd_elf_section_data): Add tdata field.
2181 (struct elf_obj_tdata): Rename ppc_flags_init field to flags_init.
2182 (elf_flags_init): Rename from elf_ppc_flags_init.
2183 * elf32-ppc.c (ppc_elf_set_private_flags): Use elf_flags_init, not
2184 elf_ppc_flags_init.
2185 (ppc_elf_copy_private_bfd_data): Likewise.
2186 (ppc_elf_merge_private_bfd_data): Likewise.
2187
a0271667
ILT
2188 * elf32-m68k.c (howto_table): Change src_mask to 0 for all
2189 relocation entries.
2190
64d5f5d0
ILT
2191Tue Jan 9 15:22:53 1996 David Mosberger-Tang <[email protected]>
2192
2193 * coff-alpha.c (alpha_relocate_section): During final link, allow
2194 output .lita section to be bigger than 64k by adjusting gp value
2195 on a per-input section basis.
2196 * libecoff.h (struct ecoff_tdata): Add issued_multiple_gp_warning
2197 field.
2198 (struct ecoff_section_tdata): Add gp field.
2199
c40d9c77
ILT
2200Tue Jan 9 12:00:36 1996 Ian Lance Taylor <[email protected]>
2201
64d5f5d0
ILT
2202 Handle Alpha ECOFF changes in OSF/1 3.2.
2203 * libecoff.h (struct ecoff_backend_data): Add get_elt_at_filepos
2204 field.
2205 * coff-alpha.c: Include "aout/ar.h".
2206 (alpha_ecoff_get_relocated_section_contents): Don't require an
2207 ALPHA_R_IGNORE reloc after an ALPHA_R_GPDISP reloc, since OSF/1
2208 3.2 doesn't generate one.
2209 (alpha_relocate_section): Likewise.
2210 (alpha_ecoff_slurp_armap): Define.
2211 (alpha_ecoff_slurp_extended_name_table): Define.
2212 (alpha_ecoff_construct_extended_name_table): Define.
2213 (alpha_ecoff_truncate_arname): Define.
2214 (alpha_ecoff_write_armap): Define.
2215 (alpha_ecoff_generic_stat_arch_elt): Define.
2216 (alpha_ecoff_update_armap_timestamp): Define.
2217 (ARFZMAG): Define.
2218 (alpha_ecoff_read_ar_hdr): New static function.
2219 (alpha_ecoff_get_elt_at_filepos): New static function.
2220 (alpha_ecoff_openr_next_archived_file): New static function.
2221 (alpha_ecoff_get_elt_at_index): New static function.
2222 (alpha_ecoff_backend_data): Initialize get_elt_at_filepos field.
2223 (ecoffalpha_little_vec): Change BFD_JUMP_TABLE_ARCHIVE from
2224 _bfd_ecoff to alpha_ecoff.
2225 * ecoff.c (ecoff_link_add_archive_symbols): Use get_elt_at_filepos
2226 field from backend structure, rather than always calling
2227 _bfd_get_elt_at_filepos.
2228 * coff-mips.c (mips_ecoff_backend_data): Initialize
2229 get_elt_at_filepos field.
2230 * archive.c (_bfd_generic_read_ar_hdr_mag): New function, copied
2231 from _bfd_generic_read_ar_hdr with minor changes.
2232 (_bfd_generic_read_ar_hdr): Use _bfd_generic_read_ar_hdr_mag.
2233 * libbfd-in.h (_bfd_generic_read_ar_hdr_mag): Declare.
2234 * libbfd.h: Rebuild.
2235
2236 * bfd-in.h (BFD_IN_MEMORY): Define.
2237 * libbfd-in.h (struct bfd_in_memory): Define.
2238 * libbfd.c (bfd_read): Handle BFD_IN_MEMORY flag.
2239 (bfd_get_file_window): Don't try to map a BFD_IN_MEMORY file.
2240 (bfd_write, bfd_stat): Abort if BFD_IN_MEMORY is set.
2241 (bfd_tell, bfd_flush, bfd_seek): Handle BFD_IN_MEMORY flag.
2242 * bfd.c (struct _bfd): Change iostream field from char * to PTR.
2243 (bfd_get_size): Handle BFD_IN_MEMORY flag.
2244 * cache.c (bfd_cache_close): Ignore BFD_IN_MEMORY files.
2245 (bfd_open_file): Cast to PTR, not char *, when setting iostream.
2246 (bfd_cache_lookup_worker): Abort if BFD_IN_MEMORY is set.
2247 * opncls.c (bfd_fdopenr): Cast to PTR, not char *, when setting
2248 iostream.
2249 (bfd_openstreamr): Likewise.
2250 * aoutx.h (NAME(aout,some_aout_object_p)): Only fstat iostream if
2251 BFD_IN_MEMORY is not set.
2252 * riscix.c (riscix_some_aout_object_p): Likewise.
2253 * bfd-in2.h, libbfd.h: Rebuild.
2254
2255 * targets.c (bfd_target): Add _bfd_get_elt_at_index field.
2256 (BFD_JUMP_TABLE_ARCHIVE): Add _get_elt_at_index.
2257 (bfd_get_elt_at_index): Define.
2258 * archive.c (_bfd_generic_get_elt_at_index): Rename from
2259 bfd_get_elt_at_index. Change index parameter from int to
2260 symindex.
2261 * libbfd-in.h (_bfd_generic_get_elt_at_index): Declare.
2262 (_bfd_noarchive_get_elt_at_index): Define.
2263 (_bfd_archive_bsd_get_elt_at_index): Define.
2264 (_bfd_archive_coff_get_elt_at_index): Define.
2265 * bfd-in2.h, libbfd.h: Rebuild.
2266 * aout-target.h (MY_get_elt_at_index): Define if not defined.
2267 * coff-rs6000.c (xcoff_get_elt_at_index): Define.
2268 * ieee.c (ieee_get_elt_at_index): Define.
2269 * libecoff.h (_bfd_ecoff_get_elt_at_index): Define.
2270 * oasys.c (oasys_get_elt_at_index): Define.
2271 * som.c (som_get_elt_at_index): Define.
2272
c40d9c77
ILT
2273 * ecoff.c (_bfd_ecoff_find_nearest_line): Don't restrict line
2274 numbers to the .text section.
2275
efa77952
ILT
2276Mon Jan 8 17:00:57 1996 Ian Lance Taylor <[email protected]>
2277
2278 * ieee.c (ieee_write_debug_part): Change return type to boolean.
2279 If there is a SEC_DEBUGGING section, get the contents of the debug
2280 information part from it.
2281 (ieee_set_section_contents): Store the contents of a SEC_DEBUGGING
2282 section in memory.
2283 (ieee_write_object_contents): Check ieee_write_debug_part return.
2284
767f22d5
FF
2285Thu Jan 4 17:12:37 1996 Fred Fish <[email protected]>
2286
2287 * config.bfd (i[345]86-*-freebsd*): Add target.
2288 * configure.in (i386freebsd_vec): Add vec.
2289 * configure: Regenerate.
2290 * Makefile.in (BFD32_BACKENDS): Add i386freebsd.o.
2291 (BFD32_BACKENDS_CFILES): Add i386freebsd.c.
2292 Rebuild dependencies..
2293 * freebsd.h: New file.
2294 * i386freebsd.c: New file.
2295 * targets.c (i386freebsd_vec): Declare.
2296 (bfd_target_vector): Add i386freebsd_vec.
2297 * i386linux.c (SEGMENT_SIZE): Define as TARGET_PAGE_SIZE
2298 * i386netbsd.c (SEGMENT_SIZE): Define as TARGET_PAGE_SIZE
2299
f8254a3c
ILT
2300Thu Jan 4 16:27:46 1996 Ian Lance Taylor <[email protected]>
2301
2302 * ieee.c (ieee_slurp_debug): New static function.
2303 (ieee_object_p): Call it.
2304 (ieee_slurp_section_data): Skip debugging sections.
2305 (ieee_get_reloc_upper_bound): Likewise.
2306 (ieee_get_section_contents): Likewise.
2307 (ieee_canonicalize_reloc): Likewise.
2308 (ieee_write_section_part): Likewise.
2309 (ieee_write_debug_part): Likewise.
2310 (ieee_write_data_part): Likewise.
2311 (init_for_output): Likewise.
2312
07a159db
MM
2313Wed Jan 3 19:42:47 1996 Michael Meissner <[email protected]>
2314
2315 * elf32-ppc.c (ppc_elf_relocate_section): Make @GOT relocations
2316 work.
2317 (ppc_elf_howto_raw): Just use bfd_elf_generic_reloc for all howto
2318 relocs, since ppc_elf_relocate_section handles the linker case.
2319 (ppc_elf_{addr16_ha,got16,toc16,brtaken}_reloc): Delete, no longer
2320 used.
2321 (ppc_elf_{addr16_ha,got16,toc16,brtaken}_inner): Merge these into
2322 ppc_elf_relocate_section since that is now the only caller.
2323 (ppc_elf_relocate_section): Ditto.
2324
d812945a
ILT
2325Wed Jan 3 15:11:30 1996 Ian Lance Taylor <[email protected]>
2326
2327 * coffcode.h (coff_write_object_contents): If we don't know the
2328 section of the entry point for an XCOFF executable, always set the
2329 entry address to -1.
2330
3a56d0b4
MM
2331Tue Jan 2 14:17:15 1996 Michael Meissner <[email protected]>
2332
2333 * elf.c (bfd_section_from_shdr): Add support for note sections.
2334
c4406e50
ILT
2335Tue Jan 2 13:10:25 1996 Ian Lance Taylor <[email protected]>
2336
d812945a
ILT
2337 * bfd-in.h (struct _symbol_info): Add stab_type field.
2338 * bfd-in2.h: Rebuild.
2339 * aoutx.h (NAME(aout,get_symbol_info)): Set stab_type.
2340
c4406e50
ILT
2341 * elf32-ppc.c: Remove trailing newline from calls to
2342 _bfd_error_handler.
2343 (ppc_elf_merge_private_bfd_data): Only warn about endianness
2344 difference if target endianness is known.
2345
08556813
MM
2346Thu Dec 21 12:43:49 1995 Michael Meissner <[email protected]>
2347
2348 * elf32-ppc.c (ppc_elf_howto_raw): Add a phony reloc to handle the
2349 old style TOC16 references without using R_PPC_GOT.
2350 (ppc_reloc_type): Ditto.
2351 (ppc_elf_reloc_type_lookup): Add support for TOC16.
2352 (ppc_elf_toc16_inner): Renamed from ppc_elf_got16_inner.
2353 (ppc_elf_toc16_reloc): Renamed from ppc_elf_toc16_reloc.
2354 (ppc_elf_got16_{inner,reloc}): Stubs for real GOT support.
2355 (ppc_elf_check_relocs): New function for GOT/PLT support that is
2356 work in progress.
2357 (ppc_elf_adjust_dynamic_symbol): Ditto.
2358 (ppc_elf_adjust_dynindx): Ditto.
2359 (ppc_elf_size_dynamic_sections): Ditto.
2360 (ppc_elf_finish_dynamic_symbol): Ditto.
2361 (ppc_elf_finish_dynamic_sections): Ditto.
2362 (ELF_DYNAMIC_INTERPRETER): Define.
2363
86587dd4
KR
2364Wed Dec 20 19:14:18 1995 Ken Raeburn <[email protected]>
2365
2366 * elf.c (copy_private_bfd_data): When attaching sections to
2367 segments ignore sections that won't be allocated. Patch from
2368 Andreas Schwab.
2369
bf7f243f
KR
2370Tue Dec 19 20:01:43 1995 Ken Raeburn <[email protected]>
2371
2372 * config.bfd: Match on m68k-cbm-* only if OS doesn't match
2373 anything else.
2374
d9518e2e
ILT
2375Tue Dec 19 16:38:59 1995 Ian Lance Taylor <[email protected]>
2376
2377 * coff-i960.c (CALC_ADDEND): Define.
2378 (coff_i960_relocate_section): Add the input section VMA to the
2379 addend for PC relative relocs.
2380
2381Sun Dec 17 20:11:55 1995 Kim Knuttila <[email protected]>
2382
2383 * peicode.h (pe_print_pdata): Must test the entire entry for zero
2384 to correctly terminate.
2385
010a405a
ILT
2386Fri Dec 15 12:05:57 1995 Ian Lance Taylor <[email protected]>
2387
dc092b6b
ILT
2388 * targets.c (enum bfd_endian): Define.
2389 (bfd_target): Rename byteorder_big_p to byteorder, and change it
2390 from boolean to enum bfd_endian. Change header_byteorder_big_p
2391 correspondingly.
2392 * bfd-in.h (bfd_big_endian, bfd_little_endian): New macros.
2393 (bfd_header_big_endian, bfd_header_little_endian): New macros.
2394 * bfd-in2.h: Rebuild.
2395 * All targets: Change initialization of byteorder and
2396 header_byteorder to use enum bfd_endian values rather than
2397 booleans.
2398 * All files: Change all references to byteorder_big_p and
2399 header_byteorder_big_p to use new bfd_*_endian macros.
2400
010a405a
ILT
2401 * coffgen.c (make_a_section_from_file): Set lma to s_paddr, not
2402 s_vaddr.
2403 * coffcode.h (coff_write_object_contents): Set s_paddr to lma, not
2404 vma.
2405 * ecoff.c (_bfd_ecoff_write_object_contents): Likewise.
2406
fcb43906
SC
2407Fri Dec 15 07:32:09 1995 steve chamberlain <[email protected]>
2408
2409 * pe[i]-i386.c (TARGET_UNDERSCORE): Define to '_'.
2410
0d709d31
ILT
2411Thu Dec 14 13:45:37 1995 Ian Lance Taylor <[email protected]>
2412
14578105
ILT
2413 * ieee.c: Lots of minor cleanups. Make many functions return
2414 errors rather than calling abort. Also:
2415 (ieee_write_twobyte): Remove; change callers to call existing
2416 ieee_write_2bytes function.
2417 (ieee_write_expression): Don't output the section twice when
2418 outputting a local symbol. Don't emit an extraneous zero if there
2419 is only one term.
2420 (ieee_slurp_sections): Set the lma as well as the vma.
2421 (ieee_archive_p): Use bfd_alloc_grow rather than an obstack.
2422
0d709d31
ILT
2423 * ihex.c (ihex_set_arch_mach): Don't accept any architecture, just
2424 a recognized one or bfd_arch_unknown.
2425 (ihex_get_symtab_upper_bound): Define as bfd_0l, to permit objcopy
2426 to succeed.
2427 (ihex_get_symtab): Likewise.
2428
14dc2f77
ILT
2429Wed Dec 13 15:44:06 1995 Ian Lance Taylor <[email protected]>
2430
2431 * aoutx.h: Include <ctype.h>.
2432 (struct aout_link_includes_table): Define.
2433 (struct aout_link_includes_totals): Define.
2434 (struct aout_link_includes_entry): Define.
2435 (aout_link_includes_lookup): Define macro.
2436 (struct aout_final_link_info): Add includes field.
2437 (aout_link_includes_newfunc): New static function.
2438 (NAME(aout,final_link)): Initialize includes hash table.
2439 (aout_link_write_symbols): Eliminate duplicate N_BINCL entries.
2440
480ccad5
SS
2441Wed Dec 13 10:52:14 1995 Stan Shebs <[email protected]>
2442
2443 * mpw-config.in: Match on mips-*-* instead of mips-idt-ecoff.
2444
3920d9c9
KK
2445Wed Dec 13 11:07:45 1995 Kim Knuttila <[email protected]>
2446
2447 * coff-ppc.c (coff_ppc_relocate_section): removed debugging code.
2448
207345f2
KK
2449Tue Dec 12 17:42:06 1995 Kim Knuttila <[email protected]>
2450
2451 * peicode.h (pe_print_reloc): New function to dump the .reloc section.
2452 (pe_print_private_bfd_data): call pe_print_reloc.
2453 * coffcode.h (coff_set_alignment_hook): .reloc section alignment.
2454 * coff-ppc.c (in_reloc_p): Added missing non-eligible relocs. Spiffed
2455 up some debugging as well.
2456
273c019e
ILT
2457Tue Dec 12 11:34:23 1995 Ian Lance Taylor <[email protected]>
2458
2459 * config.bfd: Handle sparc-*-elf*. From Ronald F. Guilmette
2460 <[email protected]>.
2461
010d9f2d
ILT
2462Fri Dec 8 17:47:07 1995 Ian Lance Taylor <[email protected]>
2463
2464 * elflink.h (elf_link_add_object_symbols): Set section_count to 0
2465 when setting sections to NULL.
2466
4a4a66bd
ILT
2467Wed Dec 6 17:05:37 1995 Ian Lance Taylor <[email protected]>
2468
2469 * xcofflink.c (struct xcoff_loader_info): Add export_defineds
2470 field.
2471 (bfd_xcoff_size_dynamic_sections): Add export_defineds parameter.
2472 (xcoff_build_ldsyms): If export_defineds is set, set XCOFF_EXPORT
2473 for all symbols.
2474 * bfd-in.h (bfd_xcoff_size_dynamic_sections): Update declaration.
2475 * bfd-in2.h: Rebuild.
2476
545bf026
KK
2477Mon Dec 4 16:40:47 1995 Kim Knuttila <[email protected]>
2478
2479 * coffcode.h (coff_set_alignment_hook): Removed some debugging printf's
2480
1f4ae0d6
ILT
2481Mon Dec 4 11:25:39 1995 Ian Lance Taylor <[email protected]>
2482
55cac920
ILT
2483 * ihex.c (ihex_scan): Handle record types 4 and 5.
2484 (ihex_object_p): Permit types 4 and 5.
2485 (ihex_set_section_contents): Remove check for out of range
2486 addresses.
2487 (ihex_write_object_contents): Generate types 4 and 5.
2488
1f4ae0d6
ILT
2489 * elflink.h (elf_link_output_extsym): Just ignore warning and
2490 indirect references to symbols which don't really exist.
2491
53d45489
KK
2492Sun Dec 3 19:00:27 1995 Kim Knuttila <[email protected]>
2493
2494 * peicode.h (pe_print_idata): Minor format fixes
2495 (pe_print_edata): New function. Under private printing, this formats
2496 the edata section of a PE file.
2497 (pe_print_private_bfd_data): Added call to pe_print_edata.
2498
361e8876
DE
2499Sun Dec 3 16:46:54 1995 Richard Earnshaw ([email protected])
2500
2501 * aout-arm.c (MY_swap_std_reloc_out): Use KEEPIT to get the symbol
2502 index, don't call stoi.
2503
58142f10
ILT
2504Fri Dec 1 14:46:51 1995 Ian Lance Taylor <[email protected]>
2505
ffd15489
ILT
2506 * srec.c (srec_scan): Set lma as well as vma.
2507
2508 * ihex.c: New file; support for Intel Hex format.
2509 * targets.c (enum bfd_flavour): Add bfd_target_ihex_flavour.
2510 (ihex_vec): Declare.
2511 (bfd_target_vector): Always include ihex_vec.
2512 * bfd.c (struct _bfd): Add ihex_data field to tdata union.
2513 * Makefile.in: Rebuild dependencies.
2514 (BFD_LIBS): Add ihex.o
2515 (BFD_LIBS_CFILES): Add ihex.c.
2516 * bfd-in2.h: Rebuild.
2517
ae0a6bea
ILT
2518 * elf.c (assign_file_positions_for_segments): Sort the sections in
2519 each segment.
2520 (get_program_header_size): Return the right size if segment_map is
2521 not NULL.
2522 (copy_private_bfd_data): Don't bother to sort the sections.
2523
2524 * bfd.c (bfd_record_phdr): New function.
2525 * bfd-in.h (bfd_record_phdr): Declare.
2526 * bfd_in2.h: Rebuild.
2527
ce0ee4bf
ILT
2528 * elf32-sparc.c (elf32_sparc_relocate_section): Remove bogus
2529 BFD_ASSERT.
2530
58142f10
ILT
2531 * libbfd.c (bfd_malloc, bfd_realloc): New functions.
2532 (bfd_zmalloc): Return PTR, not char *. Take size_t, not
2533 bfd_size_type.
2534 * libbfd-in.h (bfd_malloc, bfd_realloc): Declare.
2535 (bfd_zmalloc): Change declaration.
2536 * libbfd.h: Rebuild.
2537 * Many files: Use bfd_malloc and bfd_realloc rather than malloc
2538 and realloc. Don't set bfd_error_no_memory if they fail.
2539
59066248
KK
2540Thu Nov 30 19:32:26 1995 Kim Knuttila <[email protected]>
2541
2542 * coff-ppc.c: Added macros to tidy up toc cell treatment. Numerous
2543 uses as well. Added a new howto to deal with TOCREL16 relocs that
2544 are TOCDEFN as well.
2545 (coff_ppc_relocate_section): Expanded treatment of ADDR32NB relocs
2546 to handle RVA relocs from dlltool.
2547 (ppc_coff_rtype2howto): TOCDEFN reloc addition.
2548 (coff_ppc_rtype_to_howto): TOCDEFN reloc addition.
2549 (ppc_coff_reloc_type_lookup): TOCDEFN reloc addition.
2550
2551 * coffcode.h (coff_set_alignment_hook): check idata$X sections
2552 to get the right section alignment.
2553
6933148a
ILT
2554Thu Nov 30 16:48:18 1995 Ian Lance Taylor <[email protected]>
2555
2556 * elf.c (_bfd_elf_make_section_from_shdr): Don't set lma based on
2557 p_paddr if p_paddr is zero.
2558 (make_mapping): Set includes_filehdr and includes_phdrs for first
2559 PT_LOAD segment.
2560 (map_sections_to_segments): Set includes_phdrs for PT_PHDR
2561 segment.
2562 (assign_file_positions_for_segments): Handle includes_filehdr and
2563 includes_phdrs. Remove special handling of PT_PHDR and first
2564 PT_LOAD segments.
2565 (copy_private_bfd_data): Set includes_filehdr and includes_phdr
2566 when appropriate. Remove special handling of PT_PHDR segment.
2567 Use a more complex condition for when a section is included in a
2568 segment to handle Solaris linker oddities.
2569
f62fed1c
ILT
2570Thu Nov 30 11:17:33 1995 Manfred Hollstein KS/EF4A 60/1F/110 #40283 <[email protected]>
2571
2572 * coff-m88k.c (howto_table): Reformatted for easier reading;
2573 special_function now points to new function m88k_special_reloc.
2574 (howto_hvrt16): Function previously used for handling HVRT16 relocs
2575 removed.
2576 (rtype2howto): Do not add reloc's r_offset to the addend, this will
2577 be done correctly by m88k_special_reloc.
2578 (reloc_processing): New function to be used by RELOC_PROCESSING.
2579 (RELOC_PROCESSING): Define to call reloc_processing.
2580
64ecde46
ILT
2581Wed Nov 29 12:42:36 1995 Ian Lance Taylor <[email protected]>
2582
b00c57ec
ILT
2583 * peicode.h (pe_print_idata): Call malloc rather than xmalloc.
2584 (pe_print_pdata): Likewise.
2585
a9713b91
ILT
2586 * opncls.c (bfd_alloc_by_size_t): Set bfd_error_no_memory if
2587 obstack_alloc fails.
2588 (bfd_alloc_finish): Set bfd_error_no_memory if obstack_finish
2589 fails.
2590 * libbfd.c (bfd_zmalloc): Set bfd_error_no_memory if malloc fails.
2591 * Many files: don't set bfd_error_no_memory if one of the above
2592 routines fails.
2593
3dbf33ee
ILT
2594 * elf.c (assign_file_positions_for_segments): Don't adjust p_paddr
2595 if p_paddr_valid is set.
2596 (copy_private_bfd_data): New static function.
2597 (_bfd_elf_copy_private_section_data): Call copy_private_bfd_data.
2598
44ef8897
ILT
2599 * elf.c (assign_file_positions_for_segments): Fix case where extra
2600 program headers were allocated.
2601
27fb8f29
ILT
2602 * elf.c (_bfd_elf_print_private_bfd_data): New function.
2603 * elf-bfd.h (_bfd_elf_print_private_bfd_data): Declare.
2604 * elfxx-target.h (bfd_elfNN_bfd_print_private_bfd_data): Define to
2605 _bfd_elf_print_private_bfd_data.
2606
64ecde46
ILT
2607 * coff-alpha.c (alpha_ecoff_swap_reloc_in): Don't abort if
2608 r_symndx is RELOC_SECTION_NONE for an ALPHA_R_IGNORE reloc.
2609 Change a RELOC_SECTION_LITA symndx to RELOC_SECTION_ABS.
2610 (alpha_ecoff_swap_reloc_out): Change RELOC_SECTION_ABS to
2611 RELOC_SECTION_LITA for ALPHA_R_IGNORE.
2612 (alpha_adjust_reloc_out): For ALPHA_R_IGNORE, don't change
2613 RELOC_SECTION_ABS to RELOC_SECTION_NONE.
2614
fd0198f0
ILT
2615Tue Nov 28 16:59:50 1995 Ian Lance Taylor <[email protected]>
2616
2617 * elf-bfd.h (struct elf_obj_tdata): Add segment_map field.
2618 * elf.c (make_mapping): New static function.
2619 (map_sections_to_segments): New static function.
2620 (elf_sort_sections): New static function.
2621 (assign_file_positions_for_segments): New static function.
2622 (map_program_segments): Remove.
2623 (get_program_header_size): Remove sorted_hdrs, count, and
2624 maxpagesize parameters. Simplify.
2625 (assign_file_positions_except_relocs): When generating an
2626 executable, use assign_file_positions_for_segments.
2627 (elf_sort_hdrs): Remove.
2628 (_bfd_elf_sizeof_headers): Remove eliminated parameters from call
2629 to get_program_header_size.
2630
3b3f7625
ILT
2631Mon Nov 27 12:27:46 1995 Ian Lance Taylor <[email protected]>
2632
1ff0461b
ILT
2633 * hp300hpux.c (MY(callback)): Set lma as well as vma.
2634
80c8485c
ILT
2635 * configure, config.in: Regenerate with autoconf 2.7.
2636
3b3f7625
ILT
2637 * elf32-i386.c (elf_backend_plt_readonly): Set correctly, to 1.
2638 * elf32-sparc.c (elf_backend_plt_readonly): Set correctly, to 0.
2639
fa63d1ef
ILT
2640Wed Nov 22 12:02:09 1995 Ian Lance Taylor <[email protected]>
2641
a877f591
ILT
2642 * ecoff.c (_bfd_ecoff_new_section_hook): Handle .rconst section.
2643 (ecoff_sec_to_styp_flags): Likewise.
2644 (_bfd_ecoff_styp_to_sec_flags): Handle STYP_RCONST.
2645 (ecoff_set_symbol_info): Handle scRConst.
2646 (ecoff_slurp_reloc_table): Handle RELOC_SECTION_RCONST.
2647 (ecoff_compute_section_file_positions): Handle .rconst section.
2648 (_bfd_ecoff_write_object_contents): Likewise.
2649 (ecoff_link_check_archive_element): Handle scRConst.
2650 (ecoff_link_add_externals): Likewise.
2651 (ecoff_link_write_external): Handle .rconst section.
2652 (ecoff_reloc_link_order): Likewise.
2653 * ecofflink.c (bfd_ecoff_debug_accumulate): Handle scRConst.
2654 * coff-alpha.c (alpha_convert_external_reloc): Handle .rconst
2655 section.
2656 (alpha_relocate_section): Handle RELOC_SECTION_RCONST.
2657
fa63d1ef
ILT
2658 * sunos.c (sunos_scan_dynamic_symbol): Only set written if the
2659 DEF_DYNAMIC flag is set.
2660
25bada65
KR
2661Tue Nov 21 13:25:29 1995 Ken Raeburn <[email protected]>
2662
2663 * host-aout.c: If TRAD_HEADER is defined, include it.
2664
7938b4cb
ILT
2665Tue Nov 21 13:03:57 1995 Ian Lance Taylor <[email protected]>
2666
85e493f0
ILT
2667 * aclocal.m4 (AC_PROG_CC): Remove local definition.
2668 (BFD_BINARY_FOPEN): Require AC_CANONICAL_SYSTEM.
2669 (BFD_NEED_DECLARATION): New function.
2670 * configure.in: Use BFD_NEED_DECLARATION.
bd77213b
ILT
2671 * acconfig.h: Put NEED_DECLARATION_* in @TOP@ section.
2672 * configure, config.in: Rebuild with autoconf 2.6.
85e493f0 2673
83dcdc61
ILT
2674 * xcofflink.c (bfd_xcoff_size_dynamic_sections): Clear
2675 special_sections before returning when called with a non XCOFF
2676 BFD.
2677
7938b4cb
ILT
2678 * coffgen.c (coff_renumber_symbols): Sort common symbols with
2679 global symbols.
2680
2681 * coffcode.h (coff_compute_section_file_positions): Only pad the
2682 previous section to force file alignment when creating an
2683 executable.
2684
b5403ad7
ILT
2685Mon Nov 20 14:54:09 1995 Ian Lance Taylor <[email protected]>
2686
a418e05d
ILT
2687 * coffcode.h (coff_compute_section_file_positions): If
2688 RS6000COFF_C, set up the .debug section.
2689
b5403ad7
ILT
2690 * xcofflink.c (xcoff_link_input_bfd): Adjust the TOC anchor value
2691 if it is not large enough to accomodate the entire TOC area with
2692 signed 16 bit offsets.
2693 (xcoff_write_global_symbol): Handle negative TOC offsets in global
2694 linkage code.
2695 (_bfd_ppc_xcoff_relocate_section): Adjust relocations against a
2696 TOC anchor to use the TOC value used in the output file.
2697
90a7abbc
ILT
2698Sat Nov 18 18:01:41 1995 Ian Lance Taylor <[email protected]>
2699
2700 * coffgen.c (_bfd_coff_get_external_symbols): Cast malloc return.
2701 (_bfd_coff_read_string_table): Likewise.
2702
177b1932
DE
2703Sat Nov 18 19:43:04 1995 Richard Earnshaw ([email protected])
2704
2705 * pe-arm.c: Fix typos.
2706 * coff-arm.c: Likewise.
2707
2708Fri Nov 17 16:22:04 1995 Kim Knuttila <[email protected]>
2709
2710 * coff-ppc.c (list_ele): Added "cat"egory member.
2711 (record_toc): New category parameter (priv or pub).
2712 (ppc_record_toc_entry): Check to see if toc bounds exceeded.
2713 (ppc_process_before_allocation): Removed embrionic data-in-toc from
2714 the mainline. It addes extra toc cells in error.
2715 (ppc_coff_swap_sym_in_hook): Added some documentation.
2716 (dump_toc): Can now diagnose "virtual toc" chicanery.
2717
e34314c4
ILT
2718Fri Nov 17 10:41:25 1995 Philippe De Muyter <[email protected]>
2719
2720 * elf-bfd.h (struct elf_link_hash_table): Change type of
2721 dynsymcount and bucketcount fields from size_t to bfd_size_type.
2722
73a68447
ILT
2723Fri Nov 17 10:02:58 1995 Ian Lance Taylor <[email protected]>
2724
535e9e29
ILT
2725 * coffcode.h (coff_pointerize_aux_hook): I960 version: don't
2726 pointerize C_LEAFSTAT or C_LEAFEXT entries.
2727
73a68447
ILT
2728 * elflink.h (NAME(bfd_elf,size_dynamic_sections)): Only create
2729 DT_INIT and DT_FINI entries if the _init or _fini symbol is
2730 defined or mentioned in a regular file.
2731
cd2b2402
KK
2732Thu Nov 16 15:16:42 1995 Kim Knuttila <[email protected]>
2733
2734 * coff-ppc.c (ppc_record_data_in_toc_entry): new function
2735 (coff_ppc_relocate_section): Handle TOCDEFN attribute
2736 (coff_ppc_relocate_section): Correct REL24 handling
2737 (ppc_process_before_allocation): Correct TOCDEFN handling
2738
2739 * peicode.h (dir_names): Added name descriptions
2740
b218076e
KR
2741Thu Nov 16 03:38:03 1995 Ken Raeburn <[email protected]>
2742
2743 * VERSION: Updated to cygnus-2.6.
2744
2745Wed Nov 15 19:30:07 1995 Ken Raeburn <[email protected]>
2746
2747 * targets.c (m68k4knetbsd_vec): Declare.
2748
e9f30616
ILT
2749Wed Nov 15 18:05:52 1995 Ian Lance Taylor <[email protected]>
2750
2751 * targets.c (bfd_target): Change type of second argument to
2752 _bfd_print_private_bfd_data from void * to PTR.
2753 * libbfd-in.h (_bfd_generic_bfd_print_private_bfd_data): Cast
2754 using PTR rather than void *.
2755 * bfd-in2, libbfd.h: Rebuild.
2756 * peicode.h (pe_print_private_bfd_data): Change vfile from void *
2757 to PTR.
2758 * elfxx-target.h (bfd_elfNN_bfd_print_private_bfd_data): Define as
2759 _bfd_generic_bfd_print_private_bfd_data rather than casting
2760 bfd_true.
2761
ae75c4a4
KR
2762Wed Nov 15 04:09:14 1995 Ken Raeburn <[email protected]>
2763
2764 * Makefile.in (.dep1): Fix stupid typo in last change. Remove any
2765 "DO NOT DELETE" lines or blank lines that mkdep writes on some
2766 systems.
2767 (BFD_LIBS_CFILES, ALL_MACHINES_CFILES, BFD32_BACKENDS_CFILES,
2768 BFD64_BACKENDS_CFILES): New variables.
2769 (CFILES): Use them.
2770
bebcd3db
ILT
2771Tue Nov 14 11:52:23 1995 Ian Lance Taylor <[email protected]>
2772
4b71e164
ILT
2773 * peicode.h (coff_swap_aouthdr_out): For PPC PE, start isize at 0,
2774 not at the file position of the first section.
2775 * coffcode.h (coff_compute_section_file_positions): Avoid using
2776 unportable #elif.
2777 (coff_write_object_contents): When generating a PPC PE executable
2778 with no symbols, round up the file size to a COFF_PAGE_SIZE
2779 boundary.
2780 * cofflink.c (_bfd_coff_final_link): If there are no symbols,
2781 don't write out a string table.
2782
631b10f4
ILT
2783 * elf.c (bfd_section_from_shdr): When using a different section
2784 header, pass the new one to _bfd_elf_make_section_from_shdr.
2785 (elf_fake_sections): Don't set sh_info and sh_entsize fields.
2786 (elf_map_symbols): Add section VMA to symbol value when comparing
2787 against 0.
2788 (_bfd_elf_compute_section_file_positions): Only build symbol table
2789 if there are some symbols. Set file offset of symtab and strtab
2790 sections.
2791 (assign_file_positions_except_relocs): Remove dosyms parameter.
2792 Change all callers. Never set file offset of symtab and strtab
2793 sections.
2794 (_bfd_elf_copy_private_section_data): New function.
2795 (MAP_ONESYMTAB, MAP_DYNSYMTAB, MAP_STRTAB, MAP_SHSTRTAB): Define.
2796 (_bfd_elf_copy_private_symbol_data): New function.
2797 (swap_out_syms): Check for special mapping of st_shndx created by
2798 copy_private_symbol_data.
2799 * elfxx-target.h: Use new copy routines.
2800 * elf-bfd.h (_bfd_elf_copy_private_symbol_data): Declare.
2801 (_bfd_elf_copy_private_section_data): Declare.
2802
2803 * config.bfd (sh-*-*): Set targ_defvec to shcoff_vec.
2804
2805 * coffcode.h (coff_slurp_symbol_table): If COFF_WITH_PE, handle
2806 C_NT_WEAK.
2807
bebcd3db
ILT
2808 * coff-sh.c (shlcoff_vec): Use _bfd_generic_archive_p, not
2809 _bfd_dummy_target, matching the recent change to archive
2810 recognition.
2811
7ad4ba81
ILT
2812Mon Nov 13 13:24:38 1995 Ian Lance Taylor <[email protected]>
2813
afa67334
ILT
2814 * libbfd.c (bfd_get_file_window): Use casts to avoid doing
2815 arithmetic on PTR types.
2816
f2bd8915
ILT
2817 * aout-target.h (MY(callback)): Set the lma of the sections.
2818
7ad4ba81
ILT
2819 * ecoff.c (ecoff_reloc_link_order): Turn a reloc against a defined
2820 symbol into a reloc against the section.
2821
93b6a3f8
KK
2822Mon Nov 13 07:31:35 1995 Kim Knuttila <[email protected]>
2823
2824 * coff-ppc.c (ppc_coff_link_hash_entry): added support for inline
2825 glue for the relocs: IMGLUE and IFGLUE.
2826 (record_toc): new function - tracks toc contents
2827 (ppc_mark_symbol_as_glue): new function - supports the IMGLUE reloc
2828 (coff_ppc_relocate_section): Added support and fixes for IMGLUE/IFGLUE
2829 (ppc_coff_rtype2howto): removed invalid IMGLUE hack
2830 (coff_ppc_rtype_to_howto): removed invalid IMGLUE hack
125d37c4 2831 (ppc_record_toc_entry): Removed a debug define (duh)
93b6a3f8
KK
2832
2833 * peicode.h (coff_swap_scnhdr_out): Fixed invalid strcmp for ".reldata"
2834 (pe_print_idata): New function - formats the idata section data
2835 (pe_print_pdata): New function - formats the pdata section data
2836 (pe_print_private_bfd_data): calls to above
2837
c769947b
SS
2838Sun Nov 12 12:23:24 1995 Stan Shebs <[email protected]>
2839
2840 * Makefile.in (bfd_libs_here, etc): Provide empty definitions.
2841 * coff-rs6000.c (rs6000coff_vec): Add conditional defines
2842 TARGET_SYM and TARGET_NAME for vector and BFD name.
2843 * coff-pmac.c (pmac_xcoff_vec): Remove.
2844 (TARGET_SYM, TARGET_NAME): Define.
2845 * coffcode.h (coff_set_arch_mach_hook) [POWERMAC]: Set the
2846 machine to 0, not all PowerMacs are 601s.
2847
2848Fri Nov 10 12:10:14 1995 Ian Lance Taylor <[email protected]>
2849
2850 * elfcode.h (elf_object_p): Read in any program headers.
2851 * elf.c (_bfd_elf_make_section_from_shdr): Adjust section lma
2852 based on the program headers, if any.
2853 (elf_fake_sections): Set sh_addr from the vma, not the lma.
2854 (map_program_segments): Set p_paddr of program headers based on
2855 the lma.
2856
ee174815
ILT
2857Thu Nov 9 13:01:31 1995 Ian Lance Taylor <[email protected]>
2858
839087b7
ILT
2859 * archive.c (bfd_generic_archive_p): Preserve tdata in case of
2860 failure.
2861
922530a6
ILT
2862 * aoutx.h (NAME(aout,final_link)): Report a reasonable error when
2863 trying to do a relocateable link with a non-a.out object file.
2864
2865 * archive.c (bfd_generic_archive_p): Check the first object file
2866 in an archive even if target_defaulted is set. If the object file
2867 has the wrong xvec, reject it.
2868
a1774c51
ILT
2869 * aoutx.h (NAME(aout,set_section_contents)): If a section can not
2870 be represented, report the name via _bfd_error_handler.
2871 (translate_to_native_sym_flags): Likewise.
2872 * elf32-mips.c (mips_elf_final_link): Likewise.
2873 * oasys.c (oasys_write_sections): Likewise.
2874
4a378b13
ILT
2875 * coffcode.h (coff_set_alignment_hook): Write RS6000COFF_C version
2876 which checks for STYP_OVRFLO sections.
2877 (coff_compute_section_file_positions): If RS6000COFF_C, handle
2878 reloc and lineno count overflows.
2879 (coff_write_object_contents): Call coff_count_linenumbers before
2880 coff_compute_section_file_positions. If RS6000COFF_C, handle
2881 reloc and lineno count overflows.
2882 * xcofflink.c (_bfd_xcoff_bfd_final_link): Count line numbers and
2883 relocs before dealing with .pad sections. Count overflow section
2884 headers when handling .pad sections.
2885
7906bf87
ILT
2886 * coffcode.h (coff_write_object_contents): Set a.out vstamp to 1
2887 if RS6000COFF_C.
2888
ee174815
ILT
2889 * xcofflink.c (XCOFF_DESCRIPTOR): Define.
2890 (struct xcoff_link_hash_table): Add descriptor_section and
2891 special_sections fields.
2892 (_bfd_xcoff_bfd_link_hash_table_create): Initialize new fields.
2893 (xcoff_link_add_symbols): Set linkage section alignment. Create
2894 descriptor section. Check for magic symbol names (_text, etc.),
2895 and record them in special_sections if found. Set
2896 XCOFF_DESCRIPTOR flag for a function descriptor, and set its
2897 descriptor field to point back to the function code symbol.
2898 (xcoff_sweep): Always mark the special descriptor_section.
2899 (bfd_xcoff_export_symbol): Check whether the symbol might be a
2900 function descriptor, and mark it if it is.
2901 (bfd_xcoff_size_dynamic_sections): Add new special_sections
2902 parameter, and fill it in. Allocate space for the descriptor
2903 section.
2904 (xcoff_build_ldsyms): Set XCOFF_DEF_REGULAR flag when defining
2905 global linkage code. If an undefined function descriptor is
2906 exported, arrange to define it. Warn about any other undefined
2907 exported symbol.
2908 (_bfd_xcoff_bfd_final_link): Write out the descriptor section.
2909 (xcoff_write_global_symbol): Create a function descriptor when
2910 necessary.
2911 * bfd-in.h (bfd_xcoff_size_dynamic_sections): Update declaration.
2912 * bfd-in2.h: Rebuild.
2913
0e829f18
KK
2914Thu Nov 9 08:40:23 1995 Kim Knuttila <[email protected]>
2915
2916 * coff-ppc.c (ppc_coff_link_hash_entry): new types for hashing
2917 (ppc_coff_link_hash_table): new types for hashing
2918 (ppc_coff_link_hash_newfunc): hash entry constructor
2919 (ppc_coff_link_hash_table_init): hash table initializer
2920 (ppc_coff_link_hash_table_create): hash table constructor
2921 (ppc_record_toc_entry): changed references to hash table
2922 (coff_ppc_relocate_section): changed references to hash table
2923
2924 * libcoff-in.h (coff_link_hash_entry): removed toc_offset
2925 * libcoff.h: Rebuild
2926
2927 * cofflink.c (_bfd_coff_link_hash_newfunc): removed toc_offset init
2928 (coff_link_add_symbols): removed toc_offset init
2929
7ac84736
KR
2930Thu Nov 9 04:00:38 1995 Ken Raeburn <[email protected]>
2931
b27cc4bc
KR
2932 * Makefile.in (.dep1): Make sure the file mkdep is to write exists
2933 first.
2934
7ac84736
KR
2935 * configure.in: Added new option --with[out]-mmap. Set USE_MMAP
2936 if it is given and mmep is available.
2937 * acconfig.h: Undef USE_MMAP.
2938 * configure, config.in: Regenerated.
2939 * aoutx.h: If USE_MMAP is not defined, do all symbol and string
2940 table handling the old way.
2941 (aout_get_external_symbols): Don't complain if last byte of string
2942 table is nonzero.
2943 * libbfd.c [HAVE_MADVISE]: Include sys/types.h and sys/mman.h.
2944 (bfd_free_window) [! USE_MMAP]: Don't define.
2945 (bfd_get_file_window,
2946 _bfd_generic_get_section_contents_in_window) [! USE_MMAP]: Abort.
2947
1b3b0c03
ILT
2948Wed Nov 8 20:03:44 1995 Eric Freudenthal <[email protected]>
2949
2950 * coff-a29k.c (SIGN_EXTEND_HWORD): Use ~0xffff rather than
2951 0xffff0000.
2952
092abcdf
ILT
2953Wed Nov 8 11:31:11 1995 Ian Lance Taylor <[email protected]>
2954
33698029
ILT
2955 * coff-a29k.c (a29k_reloc): Change handling of R_IREL reloc to be
2956 compatible with AMD generated COFF files. Try to support both AMD
2957 and GNU formats simultaneously.
2958 (coff_a29k_relocate_section): Likewise.
2959
0bb8ff19
ILT
2960 * libbfd.c (bfd_get_file_window): Change writable parameter from
2961 int to boolean; update all callers. Pass MAP_SHARED if not
2962 writable--it's required on Solaris. Cast fprintf argument to
2963 avoid warning.
2964 * bfd-in.h (bfd_get_file_window): Update declaration.
2965 * bfd-in2.h: Rebuild.
2966 * aoutx.h: Update calls to bfd_get_file_window.
2967
0634a431
ILT
2968 * xcofflink.c (XCOFF_DEF_DYNAMIC): Rename from XCOFF_REF_DYNAMIC.
2969 Change all uses.
2970 (xcoff_swap_ldhdr_in): New static function.
2971 (xcoff_swap_ldsym_in): New static function.
7812bf9c 2972 (xcoff_find_reloc): Handle the case of a single reloc correctly.
0634a431
ILT
2973 (xcoff_link_add_symbols): If we just created a descriptor, pass it
2974 to _bfd_generic_link_add_one_symbol, to save a hash lookup.
417acf22 2975 Handle XTY_ER/XMC_XO symbols correctly.
0634a431
ILT
2976 (xcoff_link_add_dynamic_symbols): Rewrite to read .loader symbols
2977 rather than normal symbol table.
417acf22
ILT
2978 (bfd_xcoff_import_symbol): It's not an error if the symbol is
2979 already defined with the same absolute value.
0634a431
ILT
2980 (xcoff_mark): When considering called symbols, check whether the
2981 descriptor is from a dynamic object, rather than the symbol
2982 itself.
2983 (xcoff_build_ldsyms): Likewise.
2984
092abcdf
ILT
2985 * libbfd.c (bfd_get_file_window): Change return type to boolean.
2986 Cast realloc and malloc return values. If malloc or realloc fail,
2987 set bfd_error_no_memory.
2988 * bfd-in.h (bfd_get_file_window): Change type to boolean.
2989 * bfd-in2.h: Rebuild.
2990
d6f41a7d
KK
2991Tue Nov 7 11:53:48 1995 Kim Knuttila <[email protected]>
2992
2993 * coff-ppc.c (ppc_record_toc_entry): new function.
2994 (in_reloc_p): changed return value.
2995 (coff_ppc_relocate_section): much rework.
2996 (ppc_allocate_toc_section): new function.
2997 (ppc_process_before_allocation): new function.
2998 (ppc_coff_swap_sym_in_hook): new function.
2999
3000 * cofflink.c (_bfd_coff_link_hash_newfunc): initialize toc_offset.
3001 (coff_link_add_symbols): initialize toc_offset.
3002
3003 * peicode.h (coff_swap_sym_in): Added coff_swap_sym_in_hook
3004 (coff_swap_aouthdr_out): Added more sections to the data
3005 dictionary for the pe file header. Also changed linker version
3006 number on the ppc side.
3007 (dir_names): small improvements to the dictionary printing.
3008 (pe_mkobject_hook): save the file level flags.
3009
3010 * libcoff-in.h (coff_link_hash_entry): added toc_offset field
3011 (pe_tdata): added real_flags field
3012 (coff_tdata): added local_toc_sym_map and access macro
3013
3014 * libcoff.h (coff_link_hash_entry): added toc_offset field
3015 (pe_tdata): added real_flags field
3016 (coff_tdata): added local_toc_sym_map and access macro
3017
3018 * coffcode.h (coff_set_alignment_hook): added hook for PE.
3019 (coff_mkobject): init for local_toc_sym_map
3020 (coff_write_object_contents): set the internal_a.magic to
3021 IMAGE_NT_OPTIONAL_HDR_MAGIC which appears to be what other
3022 ppc compilers use.
3023
6bc200f2
ILT
3024Tue Nov 7 13:48:58 1995 Ian Lance Taylor <[email protected]>
3025
c0971298
ILT
3026 * ecofflink.c (_bfd_ecoff_locate_line): Keep looking through stabs
3027 entries until both the line number address and the function name
3028 address are too large.
3029
6a468850
ILT
3030 * configure.in: Call AC_CHECK_PROG to find and cache AR.
3031 * configure: Rebuilt.
3032
6bc200f2
ILT
3033 * aclocal.m4 (BFD_CC_FOR_BUILD): Don't define CC_FOR_BUILD if it
3034 is defined in the environment.
3035
c44bf94c
JL
3036Tue Nov 7 10:57:24 1995 Jeffrey A Law ([email protected])
3037
3038 * som.c (som_get_section_contents_in_window): Define to use
3039 generic version.
3040
cf587de8
ILT
3041Mon Nov 6 17:13:15 1995 Harry Dolan <[email protected]>
3042
3043 * coff-i860.c: New file, based on coff-i386.c.
3044 * cpu-i860.c: New file, based on cpu-i386.c.
3045 * hosts/i860mach3.h: New file, based on hosts/i386mach3.h.
3046 * config.bfd (i860-*-mach3*, i860-*-osf1*, i860-*-coff*): New
3047 targets, using i860coff_vec.
3048 * configure.in (i860-*-mach3*, i860-*-osf1*): New hosts, using
3049 trad-core.o and hosts/i860mach3.h.
3050 (i860coff_vec): Use coff-i860.o and cofflink.o.
3051 * configure: Rebuild.
3052 * Makefile.in: Rebuild dependencies.
3053 (ALL_MACHINES): Add cpu-i860.o.
3054 (BFD32_BACKENDS): Add coff-i860.o.
3055 (CFILES): Add cpu-i860.c and coff-i860.c.
3056 * targets.c (i860coff_vec): Declare.
3057 (bfd_target_vector): Add &i860coff_vec.
3058 * archures.c (bfd_i860_arch): Declare.
3059 (bfd_archures_list): Add &bfd_i860_arch.
3060 * coffcode.h (coff_set_arch_mach_hook): Handle I860 magic number.
3061 (coff_set_flags): Handle bfd_arch_i860.
3062 (coff_write_object_contents): Handle I860 a.out magic number.
3063
83c23fca
ILT
3064Mon Nov 6 14:34:07 1995 Ian Lance Taylor <[email protected]>
3065
3066 * xcofflink.c (xcoff_link_add_symbols): Set the alignment power of
3067 the created .tc section to 2.
3068 (xcoff_mark): Don't keep a .loader reloc for a call to an
3069 undefined symbol when creating a shared library.
3070 (xcoff_build_ldsyms): When creating a shared library, generate
3071 global linkage code for a call to an undefined symbol.
3072
5d9eb9c3
KR
3073Sun Nov 5 21:44:13 1995 Ken Raeburn <[email protected]>
3074
3075 * Makefile.in (CFILES): Rebuild list from BFD_LIBS, ALL_MACHINES,
3076 BFD32_BACKENDS, BFD64_BACKENDS.
3077 (.dep1): Put mkdep output in a separate file.
3078 Rebuilt dependencies.
3079
ffacb892
KR
3080 * ecoff.c (_bfd_ecoff_slurp_armap): Cast _bfd_read_ar_hdr return
3081 value.
3082
4fe6d901
KR
3083 Permit use of mmap when available:
3084
3085 * configure.in: Check for mmap, madvise, mprotect.
3086 * config.in, configure: Regenerated.
3087
3088 * libbfd.c (struct _bfd_window_internal): Define type.
3089 (bfd_init_window, bfd_free_window, bfd_get_file_window): New
3090 functions.
3091 (ok_to_map): New static variable for debugging.
3092 (_bfd_generic_get_section_contents_in_window): New function.
3093 * bfd-in.h (bfd_window_internal): Declare type.
3094 (bfd_window): Define type.
3095 (bfd_init_window, bfd_free_window, bfd_get_file_window): Declare.
3096 * libbfd-in.h (_bfd_generic_get_section_contents_in_window):
3097 Declare.
3098
3099 * libaout.h (struct aoutdata): Add two window fields.
3100 (obj_aout_sym_window, obj_aout_string_window): New macros.
3101 * aoutx.h (some_aout_object_p): Initialize windows.
3102 (aout_get_external_symbols): Get symbol data and strings in
3103 windows instead of explicitly allocated buffers.
3104 (slurp_symbol_table): Free window instead of memory.
3105 (bfd_free_cached_info): Release windows instead of freeing storage
3106 directly.
3107 (aout_link_free_symbols): Ditto.
3108
3109 * targets.c (bfd_target): Add new field for
3110 get_section_contents_in_window.
3111 (BFD_JUMP_TABLE_GENERIC): Updated.
3112 * aout-adobe.c, aout-target.h, binary.c, bout.c, coff-alpha.c,
3113 coff-mips.c, elfxx-target.h, i386msdos.c, i386os9k.c, ieee.c,
3114 libcoff-in.h, oasys.c, srec.c, tekhex.c, versados.c: Added new
3115 macros for get_section_contents_in_window field.
3116
d9e771e3
FF
3117Sat Nov 4 12:23:26 1995 Fred Fish <[email protected]>
3118
3119 * core.c: Renamed to corefile.c
3120 * makefile.dos (OBJS): Change core.o to corefile.o
3121 * Makefile.in (CFILES, BFD_LIBS): Use corefile.c instead of core.c
3122
bf917766
SG
3123start-sanitize-gm
3124Sat Nov 4 10:16:54 1995 Stu Grossman ([email protected])
3125
3126 * config.bfd (mips*-*-magic*): Add bfd_elf32_bigmips_vec to
3127 targ_selvecs to allow debugging under Irix-5 native.
3128
3129end-sanitize-gm
583db7a8
ILT
3130Fri Nov 3 15:54:59 1995 Ian Lance Taylor <[email protected]>
3131
3132 * xcofflink.c (xcoff_link_add_symbols): Rename local variable sub
3133 to o. Clobber and restore the list of new csects around the call
3134 to _bfd_generic_link_add_one_symbol, in case it wants to report a
3135 linker error and the linker wants to read the symbol table. Reset
3136 the line number count of a real section even if it has no relocs.
3137 (_bfd_xcoff_bfd_final_link): If shared, set the DYNAMIC flag.
3138
3139 * coffgen.c (_bfd_coff_read_string_table): Warn if the string size
3140 is too small.
3141
68aed7db
ILT
3142Thu Nov 2 23:16:39 1995 Ian Lance Taylor <[email protected]>
3143
18a9609c
ILT
3144 * xcofflink.c (_bfd_ppc_xcoff_relocate_section): Don't warn about
3145 an undefined symbol in a shared link.
3146
68aed7db
ILT
3147 * linker.c (_bfd_generic_link_add_one_symbol): Correct type of
3148 oldtype from bfd_link_order_type to bfd_link_hash_type. From
3149 [email protected] (Philippe De Muyter).
3150
7f82c7e1
ILT
3151Wed Nov 1 14:26:02 1995 Manfred Hollstein KS/EF4A 60/1F/110 #40283 <[email protected]>
3152
3153 * coff-m88k.c (rtype2howto): New static function.
3154 (RTYPE2HOWTO): Use it rather than a macro definition.
3155
3156 * coffcode.h (coff_write_object_contents): set internal_a.magic
3157 to PAGEMAGICPEXECPAGED #if defined (M68) && !defined (LYNXOS).
3158
4c8b9746 3159 * configure.in: m68*-motorola-sysv* does not use ptrace-core.o;
7f82c7e1
ILT
3160 define TRAD_HEADER to new file hosts/delta68.h.
3161 m88*-motorola-sysv*, however, does use ptrace-core.o.
3162 * hosts/delta68.h: New file.
3163
3164 * ptrace-core.c (ptrace_unix_core_file_p): change bfd_zmalloc to
3165 bfd_zalloc; provide proper parm abfd to calls to bfd_zalloc.
3166
619c7730
KR
3167Wed Nov 1 13:51:54 1995 Ken Raeburn <[email protected]>
3168
3169 * i386linux.c (MY(vec)): Declare before use.
3170
73246ff8
ILT
3171Wed Nov 1 11:45:07 1995 Ian Lance Taylor <[email protected]>
3172
e8d6d5d0
ILT
3173 * reloc16.c (bfd_coff_reloc16_get_relocated_section_contents):
3174 Pass input_bfd, not in_bfd, to bfd_coff_reloc16_extra_cases.
3175
b2193cc5
ILT
3176 * elf.c (bfd_elf_set_dt_needed_name): Don't do anything if the
3177 BFD is not of the right type.
3178 (bfd_elf_get_needed_list): Likewise.
3179 * i386linux.c (bfd_linux_size_dynamic_sections): Likewise.
3180 * sunos.c (bfd_sunos_get_needed_list): Likewise.
3181 * xcofflink.c (XCOFF_XVECP): Define.
3182 (bfd_xcoff_link_record_set): Don't do anything if the BFD is not
3183 of the right type.
3184 (bfd_xcoff_import_symbol): Likewise.
3185 (bfd_xcoff_export_symbol): Likewise.
3186 (bfd_xcoff_link_count_reloc): Likewise.
3187 (bfd_xcoff_record_link_assignment): Likewise.
3188 (bfd_xcoff_size_dynamic_sections): Likewise.
3189
baabeb74
ILT
3190 * sunos.c (sunos_scan_ext_relocs): Only check the reloc symbol
3191 table index against the number of symbols for a base relative
3192 reloc.
3193
73246ff8
ILT
3194 * coff-rs6000.c (_bfd_xcoff_sizeof_headers): Change from macro to
3195 static function.
3196 * xcofflink.c (_bfd_xcoff_bfd_link_hash_table_create): Set
3197 full_aouthdr flag here...
3198 (_bfd_xcoff_bfd_final_link): ...not here.
3199
6ab826bd
FF
3200Tue Oct 31 12:52:02 1995 Fred Fish <[email protected]>
3201
3202 * libelf.h: Rename to elf-bfd.h to avoid conflict with
3203 systems that have a system <libelf.h>.
3204 * Makefile.in: Globally replace libelf.h with elf-bfd.h.
3205 * bfd.c, elf.c, elf32-arc.c, elf32-gen.c, elf32-hppa.c,
3206 elf32-hppa.h, elf32-i386.c, elf32-i860.c, elf32-m68k.c,
3207 elf32-m88k.c, elf32-mips.c, elf32-ppc.c, elf32-sparc.c,
3208 elf64-gen.c, elf64-sparc.c, elfcode.h, elflink.c,
3209 elfxx-target.h: Include elf-bfd.h rather than libelf.h.
3210 * elfxx-target.h: Change libelf.h reference to elf-bfd.h.
3211
999cc186
ILT
3212Tue Oct 31 15:30:07 1995 David Mosberger-Tang <[email protected]>
3213
0652d579
ILT
3214 * ecoff.c (ecoff_set_symbol_info): Add new parameter weak. If
3215 set, set BSF_WEAK in symbol. Change all callers.
3216 (ecoff_get_extr): Set weakext based on BSF_WEAK.
3217 (ecoff_link_add_externals): If weakext is set, pass BSF_WEAK to
3218 _bfd_generic_link_add_one_symbol.
3219 (ecoff_indirect_link_order): Check that the section tdata relocs
3220 are not NULL before using them.
3221
999cc186
ILT
3222 * configure.in (alpha*-*-linux*): Set COREFILE to trad-core.o and
3223 define TRAD_HEADER as hosts/alphalinux.h.
3224 * configure: Rebuild.
3225 * hosts/alphalinux.h: New file.
3226 * trad-core.c (trad_unix_core_file_p): Cast u.u_ar0 to bfd_vma,
3227 not int.
3228
e6080520
ILT
3229Tue Oct 31 12:34:11 1995 Ian Lance Taylor <[email protected]>
3230
2bd0aeb9
ILT
3231 * coffcode.h (coff_slurp_symbol_table): Accept C_BCOMM and
3232 C_ECOMM storage classes.
3233
e6080520
ILT
3234 * xcofflink.c (xcoff_mark_symbol): New static function, broken out
3235 of xcoff_mark.
3236 (xcoff_mark): Call xcoff_mark_symbol.
3237 (bfd_xcoff_export_symbol): Call xcoff_mark_symbol.
3238 (bfd_xcoff_link_count_reloc): Call xcoff_mark_symbol rather than
3239 doing it by hand.
3240 (xcoff_build_ldsyms): Build a .loader symbol for an export symbol.
3241
5fe14a9f
ILT
3242Mon Oct 30 14:53:48 1995 Ian Lance Taylor <[email protected]>
3243
f630a0a4
ILT
3244 * xcofflink.c (struct xcoff_final_link_info): Add new line_filepos
3245 field.
3246 (xcoff_find_reloc): New static function.
3247 (xcoff_link_add_symbols): Use it.
3248 (_bfd_xcoff_bfd_final_link): Set finfo.line_filepos.
3249 (xcoff_link_input_bfd): Handle C_BINCL and C_EINCL. Don't
3250 relocate the value of C_DECL.
3251
5fe14a9f
ILT
3252 * elf.c (elf_fake_sections): Remove bogus BFD_ASSERT.
3253
dff77ed7
SC
3254Sat Oct 28 01:25:34 1995 steve chamberlain <[email protected]>
3255
3256 * cofflink.c (_bfd_coff_generic_relocate_section): Make
3257 callback decide what goes in .relocs.
3258 * pe[i]-i386.c (TARGET_UNDERSCORE): Define.
3259 * peicode.h (pe_mkobject_hook): Only copy aouthdr if
3260 there is one.
3261
697a8fe8
ILT
3262Sat Oct 28 01:51:02 1995 Ian Lance Taylor <[email protected]>
3263
3264 * xcofflink.c (xcoff_link_add_symbols): Handle csects in the
3265 absolute section.
3266
2d7de17d
ILT
3267Fri Oct 27 18:14:39 1995 Ian Lance Taylor <[email protected]>
3268
3269 * xcofflink.c: More improvements, mostly to fix handling of
3270 constructors and a few other special cases.
3271 * coff-rs6000.c (rs6000coff_vec): Set symbol_leading_char back to
3272 zero, reverting yesterday's change.
3273 * bfd-in.h (bfd_xcoff_link_record_set): Declare.
3274 (bfd_xcoff_link_count_reloc): Declare.
3275 (bfd_xcoff_record_link_assignment): Declare.
3276 * bfd-in2.h: Rebuild.
3277
f552f751
NH
3278Fri Oct 27 14:42:15 1995 Niklas Hallqvist <[email protected]>
3279
4906b2a3 3280 * PORTING, aout-arm.c, aout-encap.c, aout-target.h,
f552f751
NH
3281 aoutx.h, gen-aout.c, host-aout.c, hp300bsd.c, i386aout.c
3282 i386bsd.c, i386dynix.c, i386linux.c, i386lynx.c, i386mach3.c,
3283 i386netbsd.c, m68klynx.c, m88kmach3.c, mipsbsd.c, newsos3.c,
3284 ns32knetbsd.c, pc532-mach.c, riscix.c, sparclynx.c, sparcnetbsd.c:
3285 Change PAGE_SIZE to TARGET_PAGE_SIZE.
3286
3287 * m68knetbsd.c: Ditto as well as add support for the m68k4k object
3288 format.
3289
3290 * netbsd.h: Double ditto (incl. m68k4k support). NetBSD's text
3291 segments includes the a.out header. See to that the magic number
3292 *always* is big-endian.
3293
3294 * config.bfd: Add m68*-hp*-netbsd* case. Cross-pollinate m68k and
3295 m68k4k NetBSD configurations.
3296
3297 * configure.in, configure: Separate i386 & mips NetBSD
3298 configurations from other BSD ones. Don't assume DEC is the only
3299 thing NetBSD/mips run on. Add {m68k,ns32k,sparc}-*-netbsd*
3300 configurations. Add support for m68k4k NetBSD object format.
3301
3302 * libaout.h: Added M_68K4K_NETBSD magic.
6fd1f40d
NH
3303
3304 * m68k4knetbsd.c: New file.
f552f751
NH
3305
3306 * hosts/{m68k,sparc}nbsd.h: Don't define HOST_BIG_ENDIAN_P.
3307
3308 * hosts/nbsd.h: Define HOST_BIG_ENDIAN_P according to
3309 <machine/endian.h>.
3310
6fd1f40d
NH
3311 * hosts/mipsnbsd.h: New file.
3312
d6d44ef9
SG
3313start-sanitize-gm
3314Fri Oct 27 09:41:51 1995 Stu Grossman ([email protected])
3315
3316 * config.bfd: Add config stuff for mips*-*-magic* to set
3317 targ_defvec to ecoff_big_vec.
3318
3319end-sanitize-gm
867d923d
ILT
3320Thu Oct 26 14:16:47 1995 Ian Lance Taylor <[email protected]>
3321
3322 * xcofflink.c: Numerous changes to get closer to a working XCOFF
3323 linker.
3324 * libcoff-in.h (struct xcoff_tdata): Add full_aouthdr,
3325 toc_section, and entry_section fields.
3326 (struct xcoff_section_tdata): Remove ldrel_count field.
3327 * libcoff.h: Rebuild.
3328 * coffcode.h (coff_mkobject_hook): Initialize new xcoff_data
3329 fields.
3330 (coff_compute_section_file_positions): If RS6000COFF_C, generate
3331 full a.out header if full_aouthdr is set in xcoff_data.
3332 (coff_write_object_contents): Likewise. Set o_snentry and o_sntoc
3333 based on sections stored in xcoff_data.
3334 * coff-rs6000.c (xcoff_copy_private_bfd_data): Copy new xcoff_data
3335 fields.
aad2c618
ILT
3336 (xcoff_reloc_type_lookup): Handle BFD_RELOC_CTOR.
3337 (rs6000coff_vec): Set symbol_leading_char to '.'.
867d923d
ILT
3338 * coffgen.c (coff_get_symbol_info): If fix_value is set, fix the
3339 value stored in ret rather than returning a pointer value.
3340
6bd9ffdb
MM
3341Wed Oct 25 23:10:39 1995 Michael Meissner <[email protected]>
3342
3343 * config.bfd (powerpc{,le}-{elf,sysv4,eabi,solaris2}): Remove MAC
3344 format for now.
3345
9d14250f
JL
3346Wed Oct 25 16:19:27 1995 Jeffrey A Law ([email protected])
3347
3348 * som.c (som_slurp_string_table): Allocate the strings with malloc
3349 since they're free'd by free_cached_info.
3350 (som_slurp_symbol_table): Similarly for the symbol table.
3351
a2bd0529
PB
3352Wed Oct 25 14:59:22 1995 Per Bothner <[email protected]>
3353
3354 * Makefile.in (diststuff): Don't make headers.
3355
28a0c103
ILT
3356Wed Oct 25 11:32:54 1995 Ian Lance Taylor <[email protected]>
3357
356cd465
ILT
3358 * Makefile.in: Rebuild dependencies.
3359
1edd3a7b
ILT
3360 * sunos.c (bfd_sunos_record_link_assignment): Don't do anything if
3361 output_bfd is not SunOS.
3362 (bfd_sunos_size_dynamic_sections): Likewise. Don't scan relocs of
3363 non-SunOS input files.
3364
28a0c103
ILT
3365 * xcofflink.c: Extensive changes to support linking shared objects
3366 and generating a .loader section.
3367 * libcoff-in.h (struct xcoff_tdata): Add import_file_id field.
b73322d9
ILT
3368 (struct xcoff_section_tdata): Add lineno_count, first_symndx,
3369 last_symndx, and ldrel_count fields.
28a0c103
ILT
3370 * libcoff.h: Rebuild.
3371 * coff-rs6000.c (xcoff_howto_table): Correct reloc names.
3372 * coffcode.h (styp_to_sec_flags): Don't set any flags if STYP_PAD
3373 is set.
3374 * bfd-in.h (bfd_xcoff_import_symbol): Declare.
3375 (bfd_xcoff_export_symbol): Declare.
3376 (bfd_xcoff_size_dynamic_sections): Declare.
3377 * bfd-in2.h: Rebuild.
3378
aadf04f7
SS
3379Tue Oct 24 17:44:20 1995 Stan Shebs <[email protected]>
3380
3381 * configure.in: Add xcofflink.o to pmac_xcoff_vec.
3382 * configure: Rebuild.
3383 * mpw-config.in: Add xcofflink.c.o to powerpc-apple-macos.
3384 * coff-pmac.c: Include coff-rs6000.c instead of duplicating its
3385 contents.
3386 (pmac_xcoff_vec): Update to use new xcoff support.
3387 * coff-rs6000.c (xcoff_generic_stat_arch_elt): Make static.
3388 (xcoff_write_armap): Declare buf as unsigned char.
3389 * xcofflink.c (xcoff_link_add_symbols): Declare a local as PTR.
3390
3391 * mpw-make.sed: Generalize subdir_do edit.
3392
ddf4639b
JL
3393Tue Oct 24 10:25:01 1995 Jeffrey A Law ([email protected])
3394
3395 * hppabsd-core.c (make_bfd_asection): Initialize asect->filepos
3396 correctly. Don't initialize asect->vma.
3397
e7bedf65
KR
3398Fri Oct 20 13:23:48 1995 Ken Raeburn <[email protected]>
3399
3400 * opncls.c (_bfd_new_bfd): If _bfd_chunksize wasn't preset, use
3401 something a little less than the page size.
3402
3403Thu Oct 19 13:06:09 1995 Ian Lance Taylor <[email protected]>
3404
3405 * coff-i960.c (coff_i960_adjust_symndx): Clear *adjustedp.
3406
3a70e298
SC
3407Wed Oct 18 16:20:08 1995 steve chamberlain <[email protected]>
3408
3409 * coff-i386.c (coff_i386_reloc_type_lookup): New.
3410 * coffcode.h (coff_write_object_contents): If .bss is before
3411 .data us that as data_start.
3412 * cofflink.c (_bfd_coff_generic_relocate_section): Get reloc
3413 calc correct.
3414 * peicode.h (add_data_entry): Use _cooked_size of data directory.
3415 (coff_swap_outhdr_out): Hardwire in version number.
3416
5a2846e3
KR
3417Wed Oct 18 16:50:54 1995 Ken Raeburn <[email protected]>
3418
3c3a5268
KR
3419 * sunos.c (sunos_add_dynamic_symbols): Rename local variables
3420 major and minor to *_vno, since the former are also macros in
3421 SunOS header files. Cast result of bfd_alloc to appropriate
3422 type.
3423
5a2846e3
KR
3424 * coffgen.c (coff_find_nearest_line): Cast used_by_bfd value
3425 before assigning to sec_data.
3426
0f6c885e
ILT
3427Wed Oct 18 13:25:17 1995 Ian Lance Taylor <[email protected]>
3428
3429 * ecoff.c (_bfd_ecoff_find_nearest_line): The offset argument is
3430 now relative to the section, not absolute.
3431 * ecofflink.c (_bfd_ecoff_locate_line): Use the right symbol to
3432 get the file name when there is a N_SO directory name. When
3433 handling stabs, remember that section->vma was added to the
3434 offset.
3435
11fa6636
ILT
3436Tue Oct 17 18:24:54 1995 Ian Lance Taylor <[email protected]>
3437
3438 * sunos.c (struct sunos_link_hash_table): Add needed field.
3439 (sunos_link_hash_table_create): Call bfd_release, not free.
3440 (sunos_link_hash_table_create): Initialize needed field.
3441 (sunos_add_dynamic_symbols): Record needed objects.
3442 (bfd_sunos_get_needed_list): New function.
3443 * bfd-in.h (bfd_sunos_get_needed_list): Declare.
3444 * bfd-in2.h: Rebuild.
3445
c974e19e
SC
3446Mon Oct 16 14:43:59 1995 steve chamberlain <[email protected]>
3447
3448 * libcoff-in.h (pe_data_type.in_reloc_p): New.
3449
22a35f0b
ILT
3450Mon Oct 16 10:52:50 1995 Ian Lance Taylor <[email protected]>
3451
54406786
ILT
3452 * bfd-in.h (struct bfd_link_needed_list): Rename from
3453 bfd_elf_link_needed_list.
3454 * bfd-in2.h: Rebuild.
3455 * elf.c, elflink.h, libelf.h: Corresponding changes.
3456
dd984644
ILT
3457 Add start at AIX linker support; no shared libraries yet.
3458 * xcofflink.c: New file.
3459 * configure.in (rs600coff_vec): Use xcofflink.o.
3460 * configure: Rebuild.
3461 * libcoff-in.h (struct xcoff_tdata): Add csects and debug_indices
3462 fields.
3463 (struct xcoff_section_tdata): Define.
3464 (xcoff_section_data): Define macro.
3465 (_bfd_xcoff_bfd_link_hash_table_create): Declare.
3466 (_bfd_xcoff_bfd_link_add_symbols): Declare.
3467 (_bfd_xcoff_bfd_final_link): Declare.
3468 (_bfd_ppc_xcoff_relocate_section): Declare.
3469 * libcoff.h: Rebuild.
3470 * coff-rs6000.c: Clean up a bit.
3471 (xcoff_mkobject): Default modtype to 1L, not RE. Initialize
3472 cputype, csects, and debug_indices.
3473 (xcoff_copy_private_bfd_data): Copy cputype.
3474 (xcoff_howto_table): Rename from rs6000coff_howto_table.
3475 (xcoff_rtype2howto): Rename from rs6000coff_rtype2howto.
3476 (xcoff_reloc_type_lookup): Rename from
3477 rs6000coff_reloc_type_lookup.
3478 (coff_relocate_section): Define.
3479 (_bfd_xcoff_sizeof_headers): Define.
3480 (_bfd_xcoff_bfd_get_relocated_section_contents): Define.
3481 (_bfd_xcoff_bfd_relax_section): Define.
3482 (_bfd_xcoff_bfd_link_split_section): Define.
3483 (rs6000coff_vec): For BFD_JUMP_TABLE_LINK, use _bfd_xcoff, not
3484 coff.
3485 * coffcode.h (coff_compute_section_file_positions): If AIX,
3486 increment sofar by SMALL_AOUTSZ if not executable.
3487 (coff_write_object_contents): If AIX, always output an a.out
3488 header; if not executable, header size of SMALL_AOUTSZ.
3489 * hash.c (struct bfd_strtab_hash): Add xcoff field.
3490 (_bfd_stringtab_init): Initialize xcoff field.
3491 (_bfd_xcoff_stringtab_init): New function.
3492 (_bfd_stringtab_add): In XCOFF mode, leave two bytes for length.
3493 (_bfd_stringtab_emit): In XCOFF mode, write out length.
3494 * libbfd-in.h (_bfd_xcoff_stringtab_init): Declare.
3495 * libbfd.h: Rebuild.
3496 * Makefile.in: Rebuild dependencies.
3497 (BFD32_BACKENDS): Add xcofflink.o.
3498 (CFILES): Add xcofflink.c.
3499
22a35f0b
ILT
3500 * elf32-mips.c (mips_elf_symbol_processing): Set SEC_ALLOC, not
3501 SEC_NO_FLAGS, for .acommon section. From Peter Schauer
3502 <[email protected]>.
3503
fb417a21
MM
3504Sat Oct 14 21:36:02 1995 Michael Meissner <[email protected]>
3505
3506 * coff-ppc.c (in_reloc_p): Add, clone from coff-i386.c.
3507
3508Fri Oct 13 17:48:43 1995 Ken Raeburn <[email protected]>
3509
3510 * acconfig.h (HAVE_SYS_PROCFS_H): Undef, with comment.
3511 * config.in: Regenerated.
3512
3513 * opncls.c (getpagesize) [!HAVE_GETPAGESIZE]: Define as 2048.
3514 (_bfd_chunksize): New variable.
3515 (_bfd_new_bfd): Set it to getpagesize() if negative, and use it
3516 for obstack chunk size.
3517 * configure.in: Check for getpagesize.
3518 * configure: Regenerated.
3519
3520 Mon Sep 25 22:49:32 1995 Andreas Schwab <[email protected]>
3521
3522 * trad-core.c (rawptr): Make it a local variable of
3523 ptrace_unix_core_file_p.
3524
b1e46369
SC
3525Fri Oct 13 11:22:01 1995 steve chamberlain <[email protected]>
3526
3527 * coff-arm.c (in_reloc_p): New.
3528 * coff-i386.c (in_reloc_p): New.
3529 * coffcode.h: Allways include peicode.h if COFF_WITH_PE.
3530 (coff_write_object_contents): Only set has_reloc_section
3531 if PE_IMAGE.
3532 * cofflink.c (_bfd_coff_generic_relocate_section): Call
3533 in_reloc_p to decide if reloc should be emitted.
3534 * libcoff.h (pe_data_type.in_reloc_p): New.
3535 * peicode.h (pe_mkobject): Initialize in_reloc_p.
3536
ee9f09cd
ILT
3537Wed Oct 11 00:49:29 1995 Ian Lance Taylor <[email protected]>
3538
b1e46369
SC
3539 * cofflink.c (_bfd_coff_internal_syment_name): Move to coffgen.c.
3540 (_bfd_coff_read_internal_relocs): Likewise.
3541 * coffgen.c (_bfd_coff_internal_syment_name): Copy from coffgen.c.
3542 (_bfd_coff_read_internal_relocs): Likewise.
3543
ee9f09cd
ILT
3544 * elflink.h (elf_link_add_object_symbols): Correct conditions
3545 under which type and size change warnings are issued.
3546
78b31b6b
ILT
3547Tue Oct 10 18:32:46 1995 Ian Lance Taylor <[email protected]>
3548
3549 * coffgen.c (coff_count_linenumbers): Don't count line numbers for
3550 a symbol which is not in a real section.
3551 (coff_write_native_symbol): Corresponding change.
3552
3553 * cofflink.c (_bfd_coff_link_hash_newfunc): Rename from
3554 coff_link_hash_newfunc and make non-static.
3555 (_bfd_coff_link_hash_table_init): New function, broken out of
3556 _bfd_coff_link_hash_table_create.
3557 (_bfd_coff_link_hash_table_create): Use it.
3558 (process_embedded_commands): Make static.
3559 * libcoff-in.h ((_bfd_coff_link_hash_newfunc): Declare.
3560 (_bfd_coff_link_hash_table_init): Declare.
3561 * libcoff.h: Rebuild.
3562
3563 * coffcode.h (coff_mkobject_hook): If RS6000COFF_C, set cputype
3564 field in XCOFF tdata.
3565 (coff_set_arch_mach_hook): Check ifdef RS6000COFF_C, not ifdef
3566 U802ROMAGIC, for clarity. Try to set arch and machine correctly
3567 based on cputype stored in a.out header, or in n_type of initial
3568 .file symbol.
3569 (coff_write_object_contents): Set cputype correctly in a.out
3570 header.
3571 (coff_slurp_symbol_table): Add casts to file_ptr to avoid
3572 warnings.
3573 * coffswap.h (coff_swap_aouthdr_in): Swap in cputype field.
3574 (coff_swap_aouthdr_out): Swap out cputype field. Don't clear
3575 old resv1 field.
3576 * libcoff-in.h (struct xcoff_tdata): Add cputype field.
3577 * libcoff.h: Rebuild.
3578
3579 * cpu-rs6000.c (rs6000_compatible): New static function.
3580 (bfd_rs6000_arch): Use it.
3581 * cpu-powerpc.c (powerpc_compatible): New static function.
3582 (arch_info_struct): Define various flavours of PowerPC.
3583 (bfd_powerpc_arch): Use powerpc_compatible. Point at
3584 arch_info_struct.
3585
9dd7e56f
FF
3586Tue Oct 10 10:50:46 1995 Fred Fish <[email protected]>
3587
78b31b6b 3588 * Makefile.in (FLAGS_TO_PASS): Remove BISON.
9dd7e56f 3589
8235c112
ILT
3590Tue Oct 10 01:28:29 1995 Ian Lance Taylor <[email protected]>
3591
3592 * elflink.h (elf_link_add_object_symbols): Don't warn about
3593 changing the size or type if the old definition was weak.
3594
0322af0d
ILT
3595Mon Oct 9 11:24:08 1995 Ian Lance Taylor <[email protected]>
3596
49488f2b
ILT
3597 * coffcode.h (combined_entry_type): Add fix_line field.
3598 (coff_slurp_line_table): Warn if we try to set the lineno field of
3599 a symbol twice.
3600 (coff_slurp_symbol_table): If RS6000COFF_C, handle C_BINCL and
3601 C_EINCL by setting fix_line. Fix C_BSTAT symbol value.
3602 * coffgen.c (coff_mangle_symbols): Handle fix_line.
3603 (coff_write_symbol): Only use N_DEBUG if the symbol is in the
3604 absolute section.
3605 (coff_print_symbol): Print fix_value symbols in a useful fashion.
3606 * libcoff.h: Rebuild.
3607
5f710a3a
ILT
3608 * libcoff-in.h (struct xcoff_tdata): Define.
3609 (xcoff_data): Define.
3610 * bfd.c (struct _bfd): Add xcoff_obj_data field to tdata union.
3611 * bfd-in2.h, libcoff.h: Rebuild.
3612 * coff-rs6000.c (xcoff_mkobject): New static function.
3613 (coff_mkobject): Define.
3614 (xcoff_copy_private_bfd_data): New static function.
3615 (coff_bfd_copy_private_bfd_data): Define.
3616 (rs6000coff_howto_table): Change R_TOC complain_on_overflow from
3617 signed to bitfield.
3618 (rs6000coff_vec): Add DYNAMIC to object_flags.
3619 * coffcode.h (sec_to_styp_flags): If RS6000COFF_C, handle .pad and
3620 .loader sections specially.
3621 (coff_new_section_hook): If RS6000COFF_C, get the .text and .data
3622 section alignment from the XCOFF tdata information.
3623 (coff_mkobject_hook): If RS6000COFF_C, set DYNAMIC based on
3624 F_SHROBJ, and copy the extra a.out header information into the
3625 XCOFF tdata structure.
3626 (coff_write_object_contents): If RS6000COFF_C, set F_SHROBJ,
3627 F_DYNLOAD and the extra a.out header information.
3628 (coff_slurp_symbol_table): Set BSF_NOT_AT_END for a C_EXT or
3629 C_HIDEXT symbol with attached csect information.
3630 * coffswap.h (coff_swap_aouthdr_in): If RS6000COFF_C, swap
3631 in the o_maxdata field.
3632 (coff_swap_aouthdr_out): If RS6000COFF_C, swap extra XCOFF fields.
3633 * coffgen.c (coff_renumber_symbols): Don't move any symbol to the
3634 end if BSF_NOT_AT_END is set.
3f2c5b2d 3635
0322af0d
ILT
3636 * targets.c (bfd_target): Rename _bfd_read_ar_hdr field to
3637 _bfd_read_ar_hdr_fn.
3638 * libbfd-in.h (_bfd_read_ar_hdr): Update accordingly.
3639 * bfd-in2.h, libbfd.h: Rebuild.
3640 * archive.c (_bfd_get_elt_at_filepos): Cast _bfd_read_ar_hdr
3641 return value.
3642 (do_slurp_bsd_armap, do_slurp_coff_armap): Likewise.
3643 (bfd_slurp_bsd_armap_f2): Likewise.
3644 (_bfd_slurp_extended_name_table): Likewise.
3645
3266eaff
KR
3646Fri Oct 6 16:18:35 1995 Ken Raeburn <[email protected]>
3647
3648 Mon Sep 25 22:49:32 1995 Andreas Schwab <[email protected]>
3649
3650 * archive.c (bfd_get_next_mapent): Return BFD_NO_MORE_SYMBOLS
3651 when the symbol table is empty.
3652
3653 * elf32-m68k.c (elf_m68k_size_dynamic_sections): Don't reserve
3654 space for section symbols, since we don't output them either.
3655 (elf_m68k_adjust_dynindx): Removed.
3656
3657 * ptrace-core.c (rawptr): Make it a local variable of
3658 ptrace_unix_core_file_p.
3266eaff 3659
249479fa
MM
3660Fri Oct 6 12:24:47 1995 Michael Meissner <[email protected]>
3661
45b5d2f0
MM
3662 * coff-rs6000.c (xcoff_write_archive_contents): Return false, not
3663 NULL.
3664
249479fa
MM
3665 * config.bfd (powerpc{,le}-{elf,sysv4,eabi,solaris2}): Add NT, and
3666 Mac object file formats.
3667
c53fac12
ILT
3668Fri Oct 6 12:04:02 1995 Ian Lance Taylor <[email protected]>
3669
4372f33f
ILT
3670 * coffgen.c (coff_fix_symbol_name): Don't try to set up file
3671 auxent if there isn't one.
3672 (coff_write_symbols): If there is no file auxent, use SYMNMLEN
3673 rather than FILNMLEN as the maximum name length.
3674
0fc9ada9
ILT
3675 * coffcode.h (bfd_coff_backend_data): Add new field
3676 _bfd_coff_print_aux.
3677 (bfd_coff_print_aux): New static function.
3678 (coff_pointerize_aux_hook (RS6000COFF_C version)): Pointerize the
3679 scnlen field of an XTY_LD csect aux entry.
3680 (coff_print_aux): New static function.
3681 (coff_slurp_symbol_table): Don't pointerize scnlen field; now done
3682 in coff_pointerize_aux_hook.
3683 (bfd_coff_std_swap_table): Initialize new field.
3684 * coffgen.c (coff_print_symbol): Call bfd_coff_print_aux.
3685 * libcoff.h: Rebuild.
3686 * coff-alpha.c (alpha_ecoff_backend_data): Initialize new field.
3687 * coff-mips.c (mips_ecoff_backend_data): Likewise.
3688
7860fe38
ILT
3689 * coffcode.h (coff_write_object_contents): On AIX, clear F_RELFLG
3690 if there are symbols, for native AIX ld compatibility.
3691
c80cc833
ILT
3692 * coffcode.h (bfd_coff_backend_data): Add new field
3693 _bfd_coff_pointerize_aux_hook.
3694 (coff_pointerize_aux_hook): Define as a function if RS6000COFF_C
3695 or I960, and as 0 otherwise.
3696 (bfd_coff_std_swap_table): Initialize new field.
3697 * libcoff.h: Rebuild.
3698 * coffgen.c (coff_pointerize_aux): Change parameters to take
3699 symbol pointer instead of type and class, and to take aux index.
3700 Call _bfd_coff_pointerize_aux_hook if it is defined.
3701 (coff_get_normalized_symtab): Always call coff_pointerize_aux.
3702 * coff-alpha.c (alpha_ecoff_backend_data): Initialize all fields.
3703 * coff-mips.c (mips_ecoff_backend_data): Likewise.
3704
c53fac12
ILT
3705 * coff-rs6000.c: Add full support for AIX archives. Rewrite old
3706 read-only/host-only support.
3707
3708 * coffcode.h (coff_slurp_symbol_table): Set C_HIDEXT symbols to be
3709 BSF_LOCAL.
d11e6b52
ILT
3710 (OTHER_GLOBAL_CLASS): Do not define to be C_HIDEXT if
3711 RS6000COFF_C.
c53fac12
ILT
3712
3713 * targets.c (bfd_target): Add _bfd_read_ar_hdr field. Modify
3714 BFD_JUMP_TABLE_ARCHIVE accordingly.
3715 * libbfd-in.h (_bfd_snarf_ar_hdr): Don't declare.
3716 (_bfd_compute_and_write_armap): Declare.
3717 (_bfd_generic_read_ar_hdr): Declare.
3718 (_bfd_read_ar_hdr): Define.
3719 (_bfd_noarchive_read_ar_hdr): Define.
3720 (_bfd_archive_bsd_read_ar_hdr): Define.
3721 (_bfd_archive_coff_read_ar_hdr): Define.
3722 * archive.c: Change all callers of _bfd_snarf_ar_hdr to call
3723 _bfd_read_ar_hdr instead.
3724 (_bfd_generic_read_ar_hdr): Rename from _bfd_snarf_ar_hdr.
3725 (_bfd_compute_and_write_armap): Rename from
3726 compute_and_write_armap. Make non-static. Change all callers.
3727 * ecoff.c (_bfd_ecoff_slurp_armap): Call _bfd_read_ar_hdr rather
3728 than _bfd_snarf_ar_hdr.
3729 * aout-target.h (MY_read_ar_hdr): Define if not defined.
3730 * ieee.c (ieee_read_ar_hdr): Define.
3731 * libecoff.h (_bfd_ecoff_read_ar_hdr): Define.
3732 * oasys.c (oasys_read_ar_hdr): Define.
3733 * som.c (som_read_ar_hdr): Define.
3734 * bfd-in2.h, libbfd.h: Rebuild.
3735
f8e47484
SC
3736Thu Oct 5 14:04:07 1995 steve chamberlain <[email protected]>
3737
3738 * peicode.c (coff_swap_filehdr_in): If symptr is
3739 zero, there aren't any symbols, even if nsyms is set.
3740
2b874a2d
ILT
3741Thu Oct 5 11:45:02 1995 Ian Lance Taylor <[email protected]>
3742
aca73687
ILT
3743 * libecoff.h (struct ecoff_backend_data): Add adjust_headers
3744 field.
3745 * ecoff.c (ecoff_sec_to_styp_flags): Check for various Alpha
3746 sections, and set styp correctly for them: .got, .hash, .dynamic,
3747 .liblist, .rel.dyn, .conflic, .dynstr, .dynsym, .comment.
3748 (_bfd_ecoff_styp_to_sec_flags): Check for various Alpha section
3749 types.
3750 (ecoff_sort_hdrs): New static function.
3751 (ecoff_compute_section_file_positions): Return boolean, not void.
3752 Sort the sections by VMA before looking through them. Put the
3753 first non SEC_ALLOC section on a new page. Put every SEC_ALLOC
3754 section on an appropriate boundary within the page.
3755 (ecoff_compute_reloc_file_positions): Check return value of
3756 ecoff_compute_section_file_positions.
3757 (_bfd_ecoff_set_section_contents): Likewise.
3758 (_bfd_ecoff_write_object_contents): Check for various Alpha
3759 section types when incrementing text_size and data_size. Call
3760 adjust_headers backend function if it exists.
3761 * coff-alpha.c (alpha_adjust_headers): New static function.
3762 (alpha_ecoff_backend_data): Initialize adjust_headers field.
3763 * coff-mips.c (mips_ecoff_backend_data): Likewise.
3764
2b874a2d
ILT
3765 * hosts/i386bsd.h: Restore file incorrectly deleted on Sep 6.
3766
c780e5db
JL
3767Wed Oct 4 18:15:02 1995 Jeff Law ([email protected])
3768
3769 * rs6000-core.c (CORE_VERSION_1): Use CORE_VERSION_1 instead
3770 of ALTERNATE_AIX_CORE_FORMAT.
3771 * configure.in (aix4): No longer need CORE_FLAGS.
3772 * configure: Updated.
3773
2a01c351
KR
3774Wed Oct 4 15:36:36 1995 Ken Raeburn <[email protected]>
3775
3776 NS32k changes from Ian Dall:
3777 * aoutx.h (MY_final_link_relocate, MY_relocate_contents): New
3778 macros.
3779 (aout_link_input_section_std, aout_link_input_section_ext,
3780 aout_link_reloc_link_order): Call them instead of _bfd_*
3781 versions.
3782 * aout-target.h (MY_exec_header_not_counted): New macro, defaults
3783 to zero.
3784 (backend_data): Use it instead of hardcoded zero.
3785
3786 * aout-ns32k.c (CTOR_TABLE_RELOC_HOWTO): New macro.
3787 (MY_swap_std_reloc_out): Use udata.i for KEEPIT, don't call stoi.
3788
3789 * ns32knetbsd.c: Include bfd.h.
3790 (MY_text_includes_header, MY_bfd_reloc_type_lookup): New macros.
3791 (MY_bfd_reloc_type_lookup): Declare function too.
3792 * pc532-mach.c (set_sizes): Don't declare.
3793 (MY_text_includes_header, MY_exec_header_not_counted): Define.
3794 (backend_data, MY_backend_data): Don't define.
3795
3796 * config.bfd: Treat ns32k-pc532-ux* like ns32k-pc532-mach*, and
3797 ns32k-*-lites* like ns32k-*-netbsd*.
3798
3799 * hosts/nbsd.h: Swap order of sys/vmparam.h and sys/param.h, to
3800 compile on lites.
3801
5944d75b
ILT
3802Wed Oct 4 14:15:52 1995 Ian Lance Taylor <[email protected]>
3803
3804 * coffcode.h (coff_write_object_contents): Restore setting
3805 f_timdat to 0, deleted on August 22.
3806
db344f82
SC
3807Tue Oct 3 16:28:32 1995 steve chamberlain <[email protected]>
3808
3809 * coffcode.h (coff_bfd_copy_private_symbol_data,
3810 coff_bfd_copy_private_section_data,
3811 coff_bfd_copy_private_bfd_data): ifdef to allow overrides.
3812 * peicode.h (coff_bfd_copy_private_bfd_data): New
3813 (pe_bfd_copy_private_bfd_data): New.
3814 (coff_swap_scnhdr_in): Swap bss size into the right place.
3815 (pe_print_private_bfd_data): Add some newlines.
5944d75b 3816
c780e5db 3817Tue Oct 3 11:53:04 1995 Jeff Law ([email protected])
97f1feda
JL
3818
3819 * som.c (setup_sections): Don't die if a space has no subspaces.
3820
3d7c42c9
ILT
3821Mon Oct 2 14:08:55 1995 Ian Lance Taylor <[email protected]>
3822
3823 * elflink.h (elf_link_add_object_symbols): Don't let a weak
3824 dynamic symbol override a common symbol. Don't change the size or
3825 type if they have been set and the new symbol is not a definition.
3826 Warn if the size or type changes.
3827
c780e5db 3828Sun Oct 1 01:34:41 1995 Jeff Law ([email protected])
709af562
JL
3829
3830 * som.c (som_begin_writing): Don't write the symbol table or
3831 symbol strings.
3832 (som_finish_writing): Write them here. Place them after the
3833 subspace data, but before the relocs.
3834
3835Fri Sep 29 11:01:55 1995 Ian Lance Taylor <[email protected]>
3836
3837 * sunos.c (sunos_add_one_symbol): Just pass false, not
3838 info->shared_library, to sunos_create_dynamic_sections.
3839 (sunos_scan_ext_relocs): Don't warn about a reloc in the .text
3840 section.
3841 (sunos_check_dynamic_reloc): Remove .text section assertion.
3842
7009e451
SS
3843Thu Sep 28 18:48:47 1995 Stan Shebs <[email protected]>
3844
3845 * config.bfd: Add powerpc-*-macos*, powerpc-*-mpw*.
3846 * configure, configure.in: Add pmac_xcoff_vec case.
3847 * Makefile.in (BFD32_BACKENDS): Add coff-pmac.o.
3848 * coff-pmac.c: New file, PowerMac XCOFF support.
3849 * coffcode.h (coff_set_arch_mach_hook): Add PowerMac case.
3850 * targets.c (pmac_xcoff_vec): Declare.
3851
3852 * mpw-config.in: Various changes to be compatible with the
3853 autoconf-based configury.
3854 * mpw-make.sed: New file, sed commands to translate Unix
3855 makefile into MPW syntax.
3856 * mpw-make.in: Remove.
3857 * hosts/mpw.h: Remove.
3858 * bfd-in.h, bfd-in2.h: If MPW, include the file that defines
3859 true and false as enums, then define TRUE_FALSE_ALREADY_DEFINED.
3860
b91537be
SC
3861Thu Sep 28 17:06:23 1995 steve chamberlain <[email protected]>
3862
3863 * binary.c (binary_get_symtab): Return an empty string on error.
3864 * opncls.c (bfd_fdpenr): Change WIN32 restriction to WINGDB.
3865
30360a6f
KK
3866Thu Sep 28 15:30:44 1995 Kim Knuttila <krk@nellie>
3867
3868 * coff-ppc.c: Reformatted according to gnu conventions
3869 Removed irrelevant "if 0" code
3870
20d1e233
ILT
3871Thu Sep 28 11:19:53 1995 Ian Lance Taylor <[email protected]>
3872
69fd4fdd
ILT
3873 * hp300hpux.c (convert_sym_type): Treat secondary symbols as weak
3874 symbols rather than as indirect symbols.
3875 (MY(slurp_symbol_table)): Don't do anything special about
3876 secondary symbols.
3877
46b5a892
ILT
3878 * coffcode.h (coff_new_section_hook): Make sure that the alignment
3879 of .ctors and .dtors sections is no larger than 2.
3880
9db59230
ILT
3881 * sunos.c (sunos_add_one_symbol): Don't change
3882 bfd_link_hash_common to bfd_link_hash_new, since it may be on the
3883 undef list.
3884 (bfd_sunos_record_link_assignment): Don't put __DYNAMIC in the
3885 dynamic symbols when creating a shared library.
3886 (sunos_scan_ext_relocs): Handle relocs correctly when creating a
3887 shared library.
3888 (sunos_scan_dynamic_symbol): Don't mark the __DYNAMIC symbol as
3889 written even if it is not defined in a regular object.
3890 (sunos_write_dynamic_symbol): Use plt_offset for the address of
3891 the jump table reloc. Add an assertion. Use RELOC_JMP_SLOT
3892 rather than the constant 22.
3893 (sunos_check_dynamic_reloc): Handle creating a shared library.
3894 (sunos_finish_dynamic_link): Set the first entry in the GOT to
3895 zero when creating a shared library.
3896 * aoutx.h (NAME(aout,final_link)): If there is a symbol __DYNAMIC,
3897 write it out at the start of the symbol table.
3898
20d1e233
ILT
3899 * Makefile.in (BFD32_BACKENDS): Add coff-arm.o.
3900
a11e10fe
DE
3901Thu Sep 28 00:58:05 1995 Doug Evans <[email protected]>
3902
3903 * config.bfd: Add arm-*-coff.
3904 * configure.in, configure: Add armcoff_{little,big}_vec.
3905 * targets.c (armcoff_{little,big}_vec): Declare.
3906 (bfd_target_vector): Add armcoff_{little,big}_vec.
3907 * coff-arm.c (armcoff_{little,big}_vec): Always define.
3908
99062cfc
ILT
3909Wed Sep 27 10:37:14 1995 Ian Lance Taylor <[email protected]>
3910
3911 * targets.c (bfd_find_target): Remove debugging code.
3912
deacbe0f
KK
3913Wed Sep 27 07:23:39 1995 Kim Knuttila <krk@nellie>
3914
3915 * coff-ppc.c, pe-ppc.c, pei-ppc.c: Initial bfd for coff/PE
3916 support on powerpc.
3917 * Makefile.in: added *-ppc files
3918 * coffcode.h: ppc MAGIC, and use peicode.h rather than coffswap.h to
3919 allow pe based .o's to be shared with other tools on ppc/NT
3920 * config.bfd: added powerpc[le]-[pe|winnt] config support
3921 * configure, configure.in: added bfd_powerpc[le]_pe[i]_vec
3922 * peicode.h: Added more section flags for PE on ppc
3923 Added coff_swap_filehdr_out to allow peicode.h to be
3924 used for non-image PE files on ppc.
3925 Check for image, or not, before copying pe_opthdr
3926 * targets.c: Added new bfd's
30360a6f
KK
3927 * targets.c: Removed two inactive bfds that shouldn't have made it this
3928 far.
deacbe0f 3929
d22b02e0
MM
3930Tue Sep 26 14:06:41 1995 Michael Meissner <[email protected]>
3931
3932 * elf32-ppc.c (ppc_reloc_type): Rename from reloc_type, and use
3933 explicit values to initialize all relocs. Change all users.
3934 (ppc_elf_brtaken_inner): New function to handle branch predicition
3935 relocs.
3936 (ppc_elf_brtaken_reloc): Ditto.
3937 (ppc_elf_howto_raw): Use new functions. Make sure all unsupported
3938 relocs use ppc_elf_unsupported_reloc.
3939 (ppc_elf_merge_private_bfd_data): Keep track of whether an error
3940 needs to be reported.
3941 (ppc_elf_relocate_section): Support branch prediction relocs.
3942
fcf490c0
ILT
3943Tue Sep 26 12:48:05 1995 Ian Lance Taylor <[email protected]>
3944
e6cb7b41
ILT
3945 * bfd.c (bfd_assert): Remove \n from string passed to
3946 _bfd_error_handler.
3947
1af85fbb
ILT
3948 * coff-i386.c: (TWO_DATA_SECS): Don't define.
3949 * coffcode.h (bfd_coff_backend_data): Remove _bfd_make_section_hook.
3950 (bfd_coff_make_section_hook): Don't define.
3951 (coff_make_section_hook): Remove.
3952 (sec_to_styp_flags): Remove TWO_DATA_SECS case.
3953 (styp_to_sec_flags): Likewise.
3954 (coff_write_object_contents): Likewise.
3955 (bfd_coff_std_swap_table): Don't initialize make_section_hook
3956 field.
3957 * libcoff.h: Rebuild.
3958 * coffgen.c (make_a_section_from_file): Just call
3959 bfd_make_section_anyway, not bfd_make_section or
3960 bfd_coff_make_section_hook.
3961 * ecoff.c (_bfd_ecoff_make_section_hook): Remove.
3962 * libecoff.h (_bfd_ecoff_make_section_hook): Don't declare.
3963 * coff-alpha.c (alpha_ecoff_backend_data): Don't initialize
3964 make_section_hook field.
3965 * coff-mips.c (mips_ecoff_backend_data): Likewise.
3966
fcf490c0
ILT
3967 * aoutx.h (translate_from_native_sym_flags): Don't try to stuff
3968 pointers into value field for warning and indirect symbols; just
3969 leave the value field alone.
3970 * linker.c (generic_link_add_symbol_list): Use next symbol for
3971 warning and indirect symbols, rather than looking in symbol value.
3972 * ecoff.c (ecoff_set_symbol_info): Remove indirect_ptr_ptr
3973 parameter. Change all callers. Remove support for indirect
3974 symbols; it didn't work anyhow.
3975 (_bfd_ecoff_slurp_symbol_table): Remove indirect_ptr variable.
3976 * syms.c: Change comments about BSF_WARNING and BSF_INDIRECT.
3977 * bfd-in2.h: Rebuild.
3978
cc47d19a
MM
3979Mon Sep 25 16:04:09 1995 Michael Meissner <[email protected]>
3980
3981 * elf32-ppc.c (ppc_elf_howto_raw): For all 14-bit branch relocs,
3982 go back to telling the tools this reloc operates on 32 bits.
3983
81449d47
ILT
3984Mon Sep 25 11:48:02 1995 Ian Lance Taylor <[email protected]>
3985
7a7fbffb
ILT
3986 * aout-adobe.c (aout_adobe_callback): Use _bfd_error_handler
3987 rather than a direct fprintf.
3988 * archive.c (_bfd_write_archive_contents): Likewise.
3989 * coffcode.h (coff_slurp_symbol_table): Likewise.
3990 * elf32-ppc.c (ppc_elf_merge_private_bfd_data): Likewise.
3991 (ppc_elf_unsupported_reloc): Likewise.
3992 (ppc_elf_relocate_section): Likewise.
3993 * i386linux.c (linux_tally_symbols): Likewise.
3994 (linux_finish_dynamic_link): Likewise.
3995 * osf-core.c (osf_core_core_file_p): Likewise.
3996 * rs6000-core.c (rs6000coff_get_section_contents): Likewise.
3997 * som.c (som_sizeof_headers): Likewise.
3998 * srec.c (srec_bad_byte): Likewise.
3999 * bfd.c (bfd_assert): Likewise. Also change file to be const.
4000 * libbfd-in.h (bfd_assert): Declare first parameter const.
4001 * libbfd.h: Rebuild.
4002 * coff-a29k.c (a29k_reloc): Don't bother to fprintf; returning
4003 bfd_reloc_overflow is enough.
4004 * coff-h8300.c (rtype2howto): Don't bother to fprintf; just abort.
4005 * coff-h8500.c (rtype2howto): Likewise.
4006 * coff-z8k.c (rtype2howto): Likewise.
4007 * coffcode.h (dummy_reloc16_extra_cases): Likewise.
4008 * elf.c (_bfd_elf_get_lineno): Likewise.
4009 (_bfd_elf_no_info_to_howto): Likewise.
4010 (_bfd_elf_no_info_to_howto_rel): Likewise.
4011 * hp300hpux.c (convert_sym_type): Likewise.
4012 (MY(swap_std_reloc_in)): Likewise.
4013 * elf.c (bfd_section_from_shdr): Remove #if 0 sections.
4014
f1c6dd5d
ILT
4015 * libaout.h (struct aoutdata): Add line_buf field.
4016 * aoutx.h (NAME(aout,find_nearest_line)): Remove statics buffer
4017 and filename_buffer. Instead, use a malloc buffer stored in the
4018 new line_buf field. Remove length restrictions.
4019
f0500a41
ILT
4020 * coffgen.c (string_size): Remove static variable.
4021 (debug_string_size, debug_string_section): Likewise.
4022 (coff_fix_symbol_name): Add string_size_p, debug_string_section_p,
4023 and debug_string_size_p parameters. Use them instead of the
4024 global variables. Change all callers.
4025 (coff_write_symbol): Likewise.
4026 (coff_write_alien_symbol, coff_write_native_symbol): Likewise.
4027 (coff_write_symbols): Add local variables to replace removed
4028 global variables.
4029
25b5a53d
ILT
4030 * libcoff-in.h (struct coff_section_tdata): Add offset, i,
4031 function, and line_base fields.
4032 * libcoff.h: Rebuild.
4033 * coffgen.c (coff_find_nearest_line): Use section tdata to cache
4034 information, rather than using static variables.
4035
641ac26a
ILT
4036 * sunos.c (sunos_read_dynamic_info): Adjust offsets in an NMAGIC
4037 file. From Peter DeWolf <[email protected]>.
4038
81449d47
ILT
4039 * init.c (initialized): Remove static variable.
4040 (bfd_init): Don't bother setting initialized.
4041 (bfd_check_init): Remove.
4042 * opncls.c (_bfd_new_bfd): Don't call bfd_check_init.
4043 * libbfd.h: Rebuild.
4044
138b9b81
PS
4045Sat Sep 23 01:22:23 1995 Peter Schauer ([email protected])
4046
4047 * rs6000-core.c (rs6000coff_core_p): Don't check the core file
4048 size for full core dumps. Copy core file header to private data.
4049 (rs6000coff_core_file_failing_command,
4050 rs6000coff_core_file_failing_signal): New functions to extract
4051 the file name and terminating signal from the core file.
4052 * coff-rs6000.c: Use them.
4053
2ffbb79a
ILT
4054Fri Sep 22 17:44:47 1995 Ian Lance Taylor <[email protected]>
4055
4056 Change arch info to be const, initialized at compile time.
4057 * archures.c: Reindent many functions. Change CONST to const.
4058 (bfd_arch_info_type): Make arch_name const. Remove disassemble;
4059 nothing set it anyhow. Make next const.
4060 (bfd_arch_info_list): Remove.
4061 (bfd_archures_list): Rename from archures_init_table. Change from
4062 a table of function pointers to a table of bfd_arch_info_type
4063 structure addresses.
4064 (bfd_scan_arch): Rewrite accordingly. Return a const pointer.
4065 (bfd_lookup_arch): Likewise.
4066 (bfd_set_arch_info): Rewrite accordingly. Change argument to be a
4067 const pointer.
4068 (bfd_default_arch_struct): Make const.
4069 (bfd_arch_init, bfd_arch_linkin): Remove.
4070 (bfd_get_arch_info): Return a const pointer.
4071 * init.c (bfd_init): Don't call bfd_arch_init.
4072 * bfd.c (struct _bfd): Make arch_info const.
4073 * bfd-in2.h: Rebuild.
4074 * libbfd.h: Rebuild.
4075 * configure.in: Put & before everything in $selarchs.
4076 * configure: Rebuild.
4077 * cpu-*.c: Change bfd_*_arch from a function which calls
4078 bfd_arch_linkin to a const structure.
4079 * ieee.c (ieee_object_p): Make arch const.
4080
02f85cda
MM
4081Fri Sep 22 16:23:18 1995 Michael Meissner <[email protected]>
4082
4083 * reloc.c (bfd_reloc_code_type): Add relocations to support all of
4084 PowerPC V.4.
4085 * bfd-in2.h: Regenerate.
4086 * libbfd.h: Regenerate.
4087
4088 * elf32-ppc.c (reloc_type): Update names to match current draft.
4089 (ppc_elf_howto_raw): Mark 14 bit relocs as short sized and PC
4090 relative. Update names to current V.4 draft.
4091 (ppc_elf_reloc_type_lookup): Add support for more relocations.
4092 (ppc_elf_relocate_section): Rename relocations to match draft.
4093
dd82c578
MM
4094Thu Sep 21 21:53:18 1995 Michael Meissner <[email protected]>
4095
4096 * elf32-ppc.c (ppc_elf_merge_private_bfd_data): Allow modules
4097 compiled with -mrelocatable-lib to be linked with either normal
4098 modules or -mrelocatable modules.
4099
f69e888e
ILT
4100Wed Sep 20 12:03:26 1995 Ian Lance Taylor <[email protected]>
4101
e18c4e8f
ILT
4102 * coffcode.h (coff_write_object_contents): Clear the vstamp field
4103 in the a.out header.
4104
f69e888e
ILT
4105 * aoutx.h (NAME(aout,swap_ext_reloc_out)): Don't set r_extern for
4106 a reloc against a local symbol, even if it's not a section.
4107
a5655244
ILT
4108Tue Sep 19 17:02:26 1995 Ian Lance Taylor <[email protected]>
4109
4110 * targets.c (bfd_target): Remove unused align_power_min field.
4111 * bfd-in2.h: Rebuild.
4112 * All backends: Remove initialization of align_power_min.
4113
500d7394
SC
4114Tue Sep 19 14:02:21 1995 steve chamberlain <[email protected]>
4115
4116 * peicode.h (coff_swap_scnhdr_out): Get sizes for BSS right.
500d7394 4117
049df0a8
ILT
4118Mon Sep 18 14:35:01 1995 Arne H. Juul <[email protected]>
4119
4120 * config.bfd (mips-dec-netbsd*): New target.
4121 * configure.host (mips-dec-netbsd*): New host.
4122 * configure.in (mips-dec-netbsd*): New native.
4123 * configure: Rebuild.
4124
1862bbd8
ILT
4125Fri Sep 15 10:24:36 1995 Ian Lance Taylor <[email protected]>
4126
4127 Make the COFF backend linker merge common types:
4128 * cofflink.c (struct coff_debug_merge_element): Define.
4129 (struct coff_debug_merge_type): Define.
4130 (struct coff_debug_merge_hash_entry): Define.
4131 (struct coff_debug_merge_hash_table): Define.
4132 (coff_debug_merge_hash_table_init): Define.
4133 (coff_debug_merge_hash_table_free): Define.
4134 (coff_debug_merge_hash_lookup): Define.
4135 (struct coff_final_link_info): Add debug_merge field.
4136 (coff_debug_merge_hash_newfunc): New static function.
4137 (_bfd_coff_final_link): Allocate and free debug_merge table.
4138 (coff_link_input_bfd): Merge identical enum, struct and union
4139 types.
4140
a208a70f
ILT
4141Thu Sep 14 14:53:58 1995 Ian Lance Taylor <[email protected]>
4142
4143 Convert i960 COFF to use COFF backend linker.
4144 * coff-i960.c (coff_i960_relocate): Use a coff_section_data
4145 structure to store the symbol being used.
4146 (coff_i960_start_final_link): New static function.
4147 (coff_i960_relocate_section): New static function.
4148 (coff_i960_adjust_symndx): New static function.
4149 (coff_start_final_link): Define.
4150 (coff_relocate_section): Define.
4151 (coff_adjust_symndx): Define.
4152 * coffcode.h (bfd_coff_backend_data): Add new callback function
4153 _bfd_coff_start_final_link.
4154 (bfd_coff_start_final_link): Define.
4155 (coff_start_final_link): Define if not defined.
4156 (bfd_coff_std_swap_table): Add coff_start_final_link.
4157 * cofflink.c (_bfd_coff_internal_syment_name): Make globally
4158 visible.
4159 (_bfd_coff_final_link): Call bfd_coff_start_final_link if the
4160 function callback is not NULL.
4161 * libcoff-in.h (struct coff_section_tdata): Add tdata field.
4162 (_bfd_coff_internal_syment_name): Declare.
4163 * libcoff.h: Rebuild.
4164 * configure.in (icoff_big_vec): Add cofflink.o.
4165 (icoff_little_vec): Likewise.
4166 * configure: Rebuild.
4167
f0abedbe
FF
4168Wed Sep 13 17:38:23 1995 Fred Fish <[email protected]>
4169
4170 * Makefile.in (clean-info): Remove extraneous tab from line
4171 following action.
4172
aa4b3dc5
ILT
4173Wed Sep 13 13:27:53 1995 Ian Lance Taylor <[email protected]>
4174
4175 * cofflink.c (coff_link_input_bfd): Fail if a section with no
4176 contents has relocs.
4177
4ca63811 4178Thu Sep 12 12:45:34 1995 steve chamberlain <[email protected]>
beee31b1
SC
4179
4180 * coffcode.h (coff_compute_section_file_positions): Keep the
4181 raw size safe.
4182 (coff_write_object_contents): Remember if it's a relocatable
4183 file.
4184 * libcoff-in.h (pe_data_type): New member 'has_reloc_section'
4185 * peicode.h (coff_swap_filehdr_out): Clear not-reloc flag
4186 if relocatable file. Swap out saved raw size.
4187
ae115e51
ILT
4188Tue Sep 12 12:14:33 1995 Ian Lance Taylor <[email protected]>
4189
9521bac3
ILT
4190 * Makefile.in (do_maintainer_clean): Rename from do_realclean.
4191 (maintainer-clean): Rename from realclean, passing
4192 maintainer-clean down to subdirectories, but leave realclean as a
4193 synonym.
4194
4ca63811
ILT
4195 * linker.c (_bfd_generic_link_add_one_symbol): Pass symbol name to
4196 warning callback.
4197
5aa4c3ff
ILT
4198 * dep-in.sed: Remove config.h from generated dependencies.
4199
396aaeb2
ILT
4200 * sunos.c (sunos_slurp_dynamic_symtab): New static function,
4201 broken out of sunos_canonicalize_dynamic_symtab.
4202 (sunos_canonicalize_dynamic_symtab): Call new function
4203 sunos_slurp_dynamic_symtab.
4204 (sunos_add_dynamic_symbols): Add three new parameters. Return the
4205 dynamic symbol table to the caller.
4206 * aoutx.h (aout_link_add_symbols): Permit add_dynamic_symbols
4207 callback to override the symbols being read.
4208 * libaout.h (struct aout_backend_data): Add three new parameters
4209 to add_dynamic_symbols callback.
4210
ae115e51
ILT
4211 Extensive minor changes to avoid various gcc warnings. Also:
4212 * Makefile.in (BFD32_BACKENDS): Remove coff-arm.o.
4213 * archures.c (bfd_arch_info_type): Change mach field from long to
4214 unsigned long.
4215 (bfd_lookup_arch): Change machine parameter from long to unsigned
4216 long.
4217
b088e4b2
ILT
4218Mon Sep 11 10:55:47 1995 Ian Lance Taylor <[email protected]>
4219
4220 * sunos.c (sunos_scan_std_relocs): Fix BFD_ASSERT: it's OK to find
4221 a symbol with a non-zero plt_offset.
4222
1dff7902
ILT
4223Fri Sep 8 11:47:24 1995 Ian Lance Taylor <[email protected]>
4224
2b71e1e4
ILT
4225 * elfcode.h (align_file_position): Remove; not used.
4226
1dff7902
ILT
4227 * configure.in: Only check for <sys/procfs.h> on a native system,
4228 and make sure it defines prstatus_t.
4229 * configure: Rebuild.
4230
870015b1
ILT
4231Thu Sep 7 12:48:01 1995 Ian Lance Taylor <[email protected]>
4232
535c89f0
ILT
4233 * sunos.c (sunos_write_dynamic_symbol): Correct m68k abort test.
4234
936b870c
ILT
4235 * config.in: Rename from config.h.in.
4236 * configure.in: Call AC_CONFIG_HEADER with config.h:config.in.
a7873a6c 4237 Check for config.h:config.in when creating stamp-h.
936b870c 4238 * configure: Rebuild.
a7873a6c
ILT
4239 * Makefile.in (stamp-h): Depend upon config.in rather than
4240 config.h.in. Set CONFIG_HEADERS to config.h:config.in when
4241 calling config.status.
936b870c 4242
870015b1
ILT
4243 * Makefile.in (do_distclean): Remove config.h and stamp-h.
4244 (Makefile): Just rebuild Makefile.
4245 (config.h, stamp-h): New targets.
4246 * configure.in: Create stamp-h when rebuilding config.h.
4247 * configure: Rebuild.
4248
b7577823
ILT
4249Wed Sep 6 15:00:33 1995 Ian Lance Taylor <[email protected]>
4250
4251 * configure.in: Call AC_CONFIG_HEADER. Substitute
4252 HOST_64BIT_LONG. Check that various header files exist. Check
4253 that fcntl exists. Call BFD_BINARY_FOPEN. Check whether malloc
4254 and/or free need to be declared. Don't make a link to sysdep.h.
4255 Define TRAD_HEADER for various hosts.
4256 * configure: Rebuild.
4257 * configure.host: Don't set my_host. Add definitions taken from
4258 host header files for various entries. Remove entries which now
4259 do nothing.
4260 * acconfig.h: New file.
4261 * config.h.in: New file, built by autoheader.
4262 * sysdep.h: New file.
4263 * Makefile.in (do_distclean): Don't remove sysdep.h.
4264 (RECONFIG): Remove.
4265 (LOCAL_H_DEPS): New variable.
4266 ($(BFD_LIBS)): Use $(LOCAL_H_DEPS) rather than libbfd.h and
4267 $(RECONFIG).
4268 ($(BFD_MACHINES), $(BFD_BACKENDS)): Likewise.
4269 ($(OPTIONAL_BACKENDS)): Likewise.
4270 (stmp-bfd.h): Just substitute for BFD_HOST_64BIT_LONG, rather than
4271 looking through sysdep.h.
4272 * bfd-in.h (BFD_HOST_64BIT_LONG): Define; set by Makefile.
4273 (BFD_HOST_64_BIT): Define based on BFD_HOST_64BIT_LONG.
4274 (fprintf_vma, sprintf_vma): Likewise.
4275 (int64_type, uint64_type): Don't define.
4276 * bfd-in2.h: Rebuild.
4277 * archures.c, bfd.c, srec.c: Include <ctype.h>.
4278 * elfcore.h: Check HAVE_SYS_PROCFS_H rather than HAVE_PROCFS.
4279 * lynx-core.c: Include stuff from old hosts/lynx.h.
4280 * opncls.c (bfd_fdopenr): Check HAVE_FNCTL and defined (F_GETFL),
4281 rather than NO_FCNTL.
4282 * targets.c (bfd_target_list): Check HOST_HPPAHPUX and ! __STDC__
4283 rather than NATIVE_HPPAHPUX_COMPILER.
4284 * trad-core.c: Don't include <errno.h>. Include TRAD_HEADER if it
4285 is defined.
4286 * hosts/*.h: Remove all header files which merely include,
4287 declare, and define things. Leave header files which define
4288 information needed by trad-core.c.
4289
4290 * aclocal.m4 (BFD_BINARY_FOPEN): Define.
4291 (BFD_CC_FOR_BUILD): Define.
4292 * configure.in: Use BFD_CC_FOR_BUILD.
4293 * configure: Rebuild.
4294
7a93ebdd
ILT
4295Tue Sep 5 19:35:28 1995 Ian Lance Taylor <[email protected]>
4296
4c2e4d0e
ILT
4297 * aclocal.m4: Don't try to grep ../Makefile if it doesn't exist.
4298 * configure: Rebuild.
4299
7a93ebdd
ILT
4300 * coff-sparc.c (CALC_ADDEND): Don't set the addend to the value of
4301 a global symbol.
4302
866bb9e5
JM
4303Tue Sep 5 12:48:26 1995 Jason Molenda ([email protected])
4304
4305 * config.bfd: i386pe_ve -> i386pe_vec.
4306
2b79a104
ILT
4307Mon Sep 4 14:02:43 1995 Ian Lance Taylor <[email protected]>
4308
f515fb2f
ILT
4309 * configure.host: Incorporate host Makefile fragments by setting
4310 shell variables.
4311 * configure.in: Call AC_PROG_CC. Substitute CFLAGS, HDEFINES and
4312 AR. Call AC_PROG_INSTALL. Substitute CC_FOR_BUILD, choosing a
4313 value based on whether the code is being compiled by a cross
4314 compiler. Don't substitute host_makefile_frag or frags.
4315 * aclocal.m4: New file to define local AC_PROG_CC.
4316 * configure: Rebuild.
4317 * Makefile.in (INSTALL): Set to @INSTALL@.
4318 (INSTALL_PROGRAM): Set to @INSTALL_PROGRAM@.
4319 (INSTALL_DATA): Set to @INSTALL_DATA@.
4320 (AR): Set to @AR@.
4321 (CC): Define as @CC@.
4322 (CFLAGS): Set to @CFLAGS@.
4323 (CC_FOR_BUILD): Set to @CC_FOR_BUILD@.
4324 (@host_makefile_frag@): Remove.
4325 (ALL_CFLAGS): Change $(HDEFINES) to @HDEFINES@. Move $(CFLAGS)
4326 after other options.
4327 (config.status): Remove dependency upon @frags@.
4328 * config/*.mh, config/README: Remove.
4329
2b79a104
ILT
4330 * config.bfd: Rewrite to incorporate the contents of the Makefile
4331 fragments by setting shell variables, rather than merely returning
4332 the name of a Makefile fragment.
4333 * configure.in: Use shell variables set by config.bfd rather than
4334 looking at the target Makefile fragment files. Don't substitute
4335 target_makefile_frag. Do substitute TDEFINES.
4336 * configure: Rebuild.
4337 * Makefile.in (@target_makefile_frag@): Remove.
4338 (ALL_CFLAGS): Change $(TDEFINES) to @TDEFINES@.
4339 * config/*.mt: Remove.
4340
2cb159a5
KR
4341Mon Sep 4 03:13:28 1995 Ken Raeburn <[email protected]>
4342
4343 * configure.in: Put changequote lines around "i[345]86" patterns
4344 section of core file support.
4345
ef07871c
JL
4346Sun Sep 3 11:31:58 1995 Jeff Law ([email protected])
4347
4348 * som.c (som_bfd_print_private_bfd_data): Define to use the
4349 generic version.
4350
1613e075
SC
4351Fri Sep 1 17:08:40 1995 steve chamberlain <[email protected]>
4352
4353 * peicode.h (coff_swap_aouthdr_in): Add ImageBase to
4354 entry, text_start and data_start.
4355
a52a3ce8
ILT
4356Fri Sep 1 18:06:28 1995 Ian Lance Taylor <[email protected]>
4357
a21227ef
ILT
4358 * Makefile.in (OFILES): Remove $(TDEPFILES).
4359 * config/apollo.mt (TDEPFILES): Remove.
4360 * config/README: Update.
4361
a52a3ce8
ILT
4362 * configure.in: For a native configuration, set COREFILE and
4363 COREFLAG based on the canonical host name.
4364 * configure: Rebuild.
4365 * Makefile.in: Rebuild dependencies.
4366 (ALL_CFLAGS): Add @COREFLAG@.
4367 (OFILES): Replace $(HDEPFILES) with @COREFILE@.
4368 * coff-rs6000.c: Check AIX_CORE rather than HOST_AIX for core file
4369 support routines. Check LYNX_CORE rather than HOST_LYNX.
4370 * lynx-core.c: Check LYNX_CORE rather than HOST_LYNX.
4371 * i386lynx.c: Likewise.
4372 * m68klynx.c: Likewise.
4373 * sparclynx.c: Likewise.
4374 * rs6000-core.c: Check AIX_CORE rather than HOST_AIX.
4375 * *-core.c: Comment changes.
4376 * config/decstation.mh (HDEPFILES): Remove.
4377 (HDEFINES): Remove -DTRAD_CORE.
4378 * config/irix3.mh (RANLIB): Remove.
4379 * config/irix4.mh (HDEPFILES, RANLIB): Remove.
4380 (HDEFINES): Remove -DIRIX_CORE.
4381 * config/riscos.mh (RANLIB, HDEPFILES): Remove.
4382 (HDEFINES): Remove -DTRAD_CORE.
4383 * config/ncr3000.mh (AR_FLAGS, RANLIB): Remove.
4384 * config/ultra3.mh (RANLIB): Remove.
4385 * config/aix4.mh, config/alphaosf.mh, config/amix.mh: Remove.
4386 * config/apollo.mh, config/delta68.mh, config/delta88.mh: Remove.
4387 * config/dpx2.mh, config/esix.mh, config/harris.mh: Remove.
4388 * config/hp300.mh, config/hp300bsd.mh, config/hppabsd.mh: Remove.
4389 * config/hppahpux.mh, config/hppaosf.mh: Remove.
4390 * config/i386aix.mh, config/i386bsd.mh: Remove.
4391 * config/i386linux.mh, config/i386mach3.mh: Remove.
4392 * config/i386sco.mh, config/i386v.mh, config/i386v4.mh: Remove.
4393 * config/irix5.mh, config/m88kmach3.mh, config/mipsbsd.mh: Remove.
4394 * config/mipsmach3.mh, config/news-mips.mh: Remove.
4395 * config/news.mh, config/pc532mach.mh, config/riscix.mh: Remove.
4396 * config/rs600.mh, config/rs6000lynx.mh: Remove.
4397 * config/solaris2.mh, config/stratus.mh: Remove.
4398 * config/symmetry.mh, config/sysv4.mh, config/tahoe.mh: Remove.
4399 * config/vaxbsd.mh, config/vaxult.mh, config/vaxult2.mh: Remove.
4400
d6f672b8
ILT
4401Fri Sep 1 15:18:50 1995 Kazumoto Kojima <[email protected]>
4402
4403 * elflink.h (elf_bfd_final_link): Don't change a DT_INIT or
4404 DT_FINI entry if the appropriate symbol is not in the hash table.
4405
4406 * libelf.h (struct elf_backend_data): Add create_program_headers
4407 and want_hdr_in_seg fields.
4408 * elfxx-target.h (elf_backend_want_hdr_in_seg): Define if not
4409 defined.
4410 (elf_backend_create_program_headers): Likewise.
4411 (elfNN_bed): Initialize create_program_headers and
4412 want_hdr_in_seg.
4413 * elf.c (get_program_header_size): Call create_program_headers
4414 backend routine.
4415 (map_program_segments): Check want_hdr_in_seg backend field. Call
4416 create_program_headers backend routine.
4417
4418 * elf.c (assign_file_positions_except_relocs): Align non allocated
4419 sections when creating an executable.
4420
4421 * elfcode.h (elf_swap_phdr_in): Make non static.
4422 (elf_swap_phdr_out): Make non static.
4423 * libelf.h (bfd_elf32_swap_phdr_in): Declare.
4424 (bfd_elf32_swap_phdr_out): Declare.
4425 (bfd_elf64_swap_phdr_in): Declare.
4426 (bfd_elf64_swap_phdr_out): Declare.
4427
4428 * ecofflink.c (ecoff_collect_shuffle): New static function.
4429 (_bfd_ecoff_get_accumulated_pdr): New function.
4430 (_bfd_ecoff_get_accumulated_sym): New function.
4431 (_bfd_ecoff_get_accumulated_ss): New function.
4432 * libbfd-in.h (_bfd_ecoff_get_accumulated_pdr): Declare.
4433 (_bfd_ecoff_get_accumulated_sym): Declare.
4434 (_bfd_ecoff_get_accumulated_ss): Declare.
4435 * libbfd.h: Rebuild.
4436
0cb70568
ILT
4437Fri Sep 1 13:20:25 1995 Ian Lance Taylor <[email protected]>
4438
d6f672b8
ILT
4439 * libecoff.h (_bfd_ecoff_bfd_print_private_bfd_data): Fix typo.
4440
0cb70568
ILT
4441 * elflink.h (elf_link_add_object_symbols): Handle indirect and
4442 warning symbols. If any section is named .gnu.warning.XXX, treat
4443 the contents as a warning to be issued if the symbol XXX is
4444 referenced.
4445 (elf_link_output_extsym): For an indirect or warning symbol, just
4446 output the symbol it points to.
4447
4448 * linker.c (_bfd_link_hash_newfunc): Don't bother to set bfd_error
4449 if bfd_hash_allocate fails, since it will already be set.
4450 (generic_link_hash_newfunc): Likewise.
4451 (archive_hash_newfunc): Likewise.
4452 (hash_entry_bfd): New static function.
4453 (_bfd_generic_link_add_one_symbol): Pass new arguments to warning
4454 callback. Allocate a new warning using the hash table newfunc.
4455 Use bfd_hash_replace to update the entry in the hash table, rather
4456 than assuming we can copy the fields with structure assignment.
4457
4458 * hash.c (bfd_hash_replace): New function.
4459 * bfd-in.h (bfd_hash_replace): Declare.
4460 * bfd-in2.h: Rebuild.
4461
f14db880
JSC
4462Fri Sep 1 08:12:50 1995 James G. Smith <[email protected]>
4463
4464 * config.bfd: Add mips*vr4300-*-elf* target.
4465 * config/mipsbvr4300.mt: Added.
4466
1613e075 4467See file ChangeLog.2
e6d739eb 4468
41126f15
JK
4469\f
4470Local Variables:
4471mode: indented-text
4472left-margin: 8
6ec3bb6a
ILT
4473fill-column: 74
4474version-control: never
4475End:
This page took 0.947217 seconds and 4 git commands to generate.