]> Git Repo - binutils.git/blame - bfd/ChangeLog
* config/tc-hppa.c (pa_ip): Use R_HPPA_ABS_CALL, not R_HPPA for
[binutils.git] / bfd / ChangeLog
CommitLineData
673aceca
JL
1Wed May 18 09:09:32 1994 Jeff Law ([email protected])
2
3 * elf32-hppa.h (R_HPPA_ABS_CALL): Define.
4 * elf32-hppa.c (hppa_elf_gen_reloc_type): Handle absolute calls.
5
6 * som.h (R_HPPA_ABS_CALL): Define.
7 * som.c (hppa_som_gen_reloc_type): Delete complex relocation types.
8
0f62bdc0
KR
9Tue May 17 19:33:12 1994 Ken Raeburn ([email protected])
10
11 * coff-i960.c (icoff_little_vec, icoff_big_vec): Indicate leading
12 underscore, for compatibility with Intel tool chain (gnu960v2).
13
c3cb04b4
JL
14Mon May 16 10:09:22 1994 Jeff Law ([email protected])
15
459ae909
JL
16 * bfd-in2.h: Rebuilt.
17
18 * elf32-hppa.c: Change .hppa_linker_stubs to .PARISC.stubs,
19 likewise for other PA specific sections.
20 (hppa_elf_relocate_unwind_table): Delete unused
21 function.
22 (elf_hppa_howto_table): Completely new table based on 94-02-02
23 draft PA ELF spec. Change relocation tags appropriately
24 throughout elf32-hppa.c
25 (hppa_elf_gen_reloc_type): Rewrite and simplify based on 94-02-02
26 spec.
27 (hppa_elf_reloc): Likewise.
28 (hppa_look_for_stubs_in_section): Likewise
29 (ELF_MACHINE_CODE): Change to EM_PARISC.
30 * elf32-hppa.h: Include "elf/hppa.h". Change relocation tags
31 appropriately throughout elf32-hppa.h.
32 (elf32_hppa_reloc_type): New table based on 94-02-02 draft PA ELF
33 spec.
34 (R_HPPA_ABS_CALL, R_HPPA_COMPLEX*, R_HPPA_UNWIND): Delete definitions.
35 * elfcode.h (prep_headers): Use EM_PARISC instead of EM_HPPA.
36 * reloc.c (bfd_reloc_code_real): Delete unused HPPA relocations.
37 * som.h (R_HPPA_ABS_CALL, R_HPPA_COMPLEX): Delete definitions.
38
c3cb04b4
JL
39 * libhppa.h (hppa_field_adjust): Avoid adding constant_value into
40 the final value twice for LR and RR field selectors.
41
cb9461ff
JK
42Sat May 14 09:09:19 1994 Jim Kingdon ([email protected])
43
44 * aoutx.h (add_to_stringtab): Use BFD_ASSERT not assert. This
45 avoids __eprintf troubles.
46
8db528c8
ILT
47Fri May 13 10:51:21 1994 Ian Lance Taylor ([email protected])
48
0d898d03
ILT
49 * bout.c (b_out_bfd_reloc_type_lookup): Handle BFD_RELOC_CTOR.
50
8db528c8
ILT
51 * config/mipsbelf.mt (SELECT_VECS): Add ecoff_big_vec and
52 ecoff_little_vec since Irix 5 supports ECOFF executables.
53
666f5925
ILT
54Wed May 11 00:31:57 1994 Ian Lance Taylor ([email protected])
55
4fa4476b
ILT
56 * ecoff.c (ecoff_find_nearest_line): Handle fdr.adr != pdr.adr
57 correctly.
58
666f5925
ILT
59 * Makefile.in (stmp-bfd.h): Use || instead of ; to force SunOS
60 make to invoke the shell.
61
c16313f0
ILT
62Tue May 10 14:23:43 1994 Ian Lance Taylor ([email protected])
63
64 * section.c (SEC_COFF_SHARED_LIBRARY): Renamed from
65 SEC_SHARED_LIBRARY for clarity. Changed all uses.
66 * bfd-in2.h: Rebuilt.
67 * coffcode.h (sec_to_styp_flags): If SEC_COFF_SHARED_LIBRARY is
68 set, set STYP_NOLOAD.
69 * coffgen.c (coff_section_from_bfd_index): Don't get an assertion
70 failure because of a bad shared library.
71
eeb8c187
BC
72Mon May 9 18:53:40 1994 Bill Cox ([email protected])
73
74 * linker.c: Add missing comment terminator.
75
6ec3bb6a
ILT
76Mon May 9 11:53:54 1994 Ian Lance Taylor ([email protected])
77
8e5090ce
ILT
78 * linker.c (_bfd_generic_link_add_one_symbol): If hashp and *hashp
79 are not NULL, assume the caller has already looked up the symbol
80 in the hash table and has stored the entry in *hashp.
81 (generic_link_add_symbol_list): Set h to NULL before calling
82 _bfd_generic_link_add_one_symbol.
83 * ecoff.c (ecoff_link_add_externals): Likewise.
84
85 * elfcode.h (assign_file_positions_except_relocs): Don't require
86 page shared between .data and .bss segments to contain zeroes.
87
6ec3bb6a
ILT
88 * elfcode.h: Include bfdlink.h. Added several new functions to do
89 linking.
90 (ELF_R_TYPE): Define.
91 (bfd_add_to_strtab): Return unsigned long. Change check for
92 realloc failure.
93 (elf_fake_sections): Check return value of bfd_add_to_strtab.
94 (elf_compute_section_file_positions): Add link_info argument.
95 Call elf_backend_begin_write_processing hook and prep_headers
96 here. Only call swap_out_syms if link_info is NULL. Set up
97 .shstrtab section here. Pass dosyms argument to
98 assign_file_positions_except_relocs. Set output_has_begun flag.
99 (assign_file_positions_for_symtab_and_strtabs): Add dosyms
100 argument, and use it to control setting .symtab and .strtab file
101 positions.
102 (assign_file_positions_except_relocs): Add dosyms argument, and
103 pass it on.
104 (prep_headers): Check return value of bfd_add_to_strtab.
105 (swap_out_syms): Likewise. Also, don't set up .shstrtab here.
106 (NAME(bfd_elf,write_object_contents)): Some calls moved into
107 elf_compute_section_file_positions.
108 (elf_set_section_contents): Likewise.
109 (elf_slurp_symbol_table): SHN_LORESERV corrected to SHN_LORESERVE.
110 * libelf.h: Include bfdlink.h.
111 (struct elf_backend_data): Add fields collect,
112 elf_add_symbol_hook, elf_backend_relocate_section.
113 (struct bfd_elf_section_data): Add field rel_hashes.
114 (struct elf_obj_tdata): Remove fields internal_syms and symbols.
115 Add field sym_hashes.
116 (obj_symbols, obj_internal_syms): Remove definitions.
117 (elf_sym_hashes): Define.
118 (struct elf_link_hash_entry): Define.
119 (struct elf_link_hash_table): Define.
120 (elf_link_hash_lookup): Define.
121 (elf_link_hash_traverse): Define.
122 (elf_hash_table): Define.
123 (_bfd_elf_link_hash_table_create): Declare.
124 (bfd_elf32_bfd_link_add_symbols): Declare.
125 (bfd_elf32_bfd_final_link): Declare.
126 (bfd_elf64_bfd_link_add_symbols): Declare.
127 (bfd_elf64_bfd_final_link): Declare.
128 * elf.c: Include bfdlink.h.
129 (elf_link_hash_newfunc): New function.
130 (_bfd_elf_link_hash_table_create): New function.
131 * elf32-target.h (elf_backend_relocate_section): If not defined,
132 define as 0 and use generic linker. Otherwise, use ELF backend
133 linker.
134 (elf_backend_collect): If not defined, define as false.
135 (elf_backend_add_symbol_hook): If not defined, define as 0.
136 (elf32_bed): Initialize new fields.
137 * elf64-target.h: Same changes as elf32-target.h.
138 * elf32-i386.c: Include bfdlink.h.
139 (elf_i386_relocate_section): New function.
140 (elf_backend_relocate_section): Define.
141 * elf32-sparc.c: Include bfdlink.h.
142 (elf_info_to_howto): Change type of dst from Elf32_Internal_Rela
143 to Elf_Internal_Rela (they're the same type anyhow).
144 (elf_sparc_relocate_section): New function.
145 (elf_backend_relocate_section): Define.
146 * elf32-mips.c (elf_backend_collect): Define.
147
148 * Makefile.in (stmp-bfd.h): Avoid useless make error message in a
149 different way; touch takes a numeric argument on some systems.
150
151Fri May 6 13:34:14 1994 Ian Lance Taylor ([email protected])
152
153 * nlmcode.h (nlm_swap_auxiliary_headers_in): Rework custom header
154 handling for latest suggested format.
155 (nlm_swap_auxiliary_headers_out): Likewise.
156 (nlm_compute_section_file_positions): Likewise.
157
158Fri May 6 11:11:50 1994 D. V. Henkel-Wallace ([email protected])
159
160 * config.bfd: handle erricsson config (for OSE).
161
162Thu May 5 15:40:47 1994 Ken Raeburn ([email protected])
163
164 Patches from Ralph Campbell:
165 * mipsbsd.c (mips_fix_jmp_addr): New function.
166 (mips_fix_hi16_s): Use bfd_is_com_section.
167 (mips_howto_table_ext): Call mips_fix_jmp_addr for MIPS_RELOC_JMP.
168
d66da742
SC
169Fri May 6 11:48:55 1994 Steve Chamberlain ([email protected])
170
171 * config/go32.mh: XX support.
172
173 From bill
174 * Makefile.in: Build sysdep.h without causing worrying but
175 harmless error message.
176
973bfc47
ILT
177Fri May 6 13:34:14 1994 Ian Lance Taylor ([email protected])
178
179 * nlmcode.h (nlm_swap_auxiliary_headers_in): Rework custom header
180 handling for latest suggested format.
181 (nlm_swap_auxiliary_headers_out): Likewise.
182 (nlm_compute_section_file_positions): Likewise.
183
184Thu May 5 15:40:47 1994 Ken Raeburn ([email protected])
185
186 Patches from Ralph Campbell:
187 * mipsbsd.c (mips_fix_jmp_addr): New function.
188 (mips_fix_hi16_s): Use bfd_is_com_section.
189 (mips_howto_table_ext): Call mips_fix_jmp_addr for MIPS_RELOC_JMP.
190
77d11284
ILT
191Wed May 4 11:09:53 1994 Ian Lance Taylor ([email protected])
192
193 Changed m68k-aout to set flags to 0; m68k-sunos still uses 1.
194 * aout0.c: New file.
195 * targets.c (aout0_big_vec): Declare.
196 (bfd_target_vector): Add aout0_big_vec.
197 * config.bfd (m68*-*-aout*): Use m68k-0aout, not m68k-aout.
198 * config/m68k-aout.mt (SELECT_VECS): Removed.
199 * config/m68k-0aout.mt: New file.
200 * configure.in (aout0_big_vec): New target vector: use aout0.o,
201 aout32.o and stab-syms.o.
202 * Makefile.in: Rebuilt dependencies.
203 (BFD32_BACKENDS): Add aout0.o.
204 (CFILES): Add aout0.c.
205
206 * libaout.h (struct aout_backend_data): Add field exec_hdr_flags.
207 * aout-target.h (MY_exec_hdr_flags): If not defined, define as 0.
208 MY(backend_data): Initialize exec_hdr_flags field.
209 * aoutf1.h (sunos_32_set_arch_mach): Make static.
210 (aout32_sunos4_write_object_contents): Set flags from backend
211 info.
212 (MY_exec_hdr_flags): If not defined, define as 1.
213 (sunos4_aout_backend): Initialize exec_hdr_flags field.
214 * aout-encap.c (encap_write_object_contents): Set flags from
215 backend info.
216 (MY_exec_hdr_flags): Define as N_FLAGS_COFF_ENCAPSULATE.
217 * hp300hpux.c (MY_exec_hdr_flags): Define as 0x2.
218 (MY(write_object_contents)): Set flags from backend info.
219 * i386aout.c (MY(backend_data)): Initialize exec_hdr_flags field.
220 * i386mach3.c (MY(backend_data)): Likewise.
221 * mipsbsd.c (MY(backend_data)): Likewise.
222 * sparclynx.c (NAME(aout,sparclynx_write_object_contents)): Set
223 flags from backend info.
224 (sparclynx_aout_backend): Initialize exec_hdr_flags field.
225
127f8e91
KR
226Wed May 4 02:56:00 1994 Ken Raeburn ([email protected])
227
228 * config.bfd (i386-*-gnu*): Treat like i386-*-mach*.
229 (m68*-apollo-*): Treat all Apollo configs the same, don't handle
230 BSD specially.
231
92400edb
ILT
232Tue May 3 19:43:21 1994 Ian Lance Taylor ([email protected])
233
234 * cache.c: Rewrote to work correctly.
235 * libbfd.h: Rebuilt.
236 * opncls.c (bfd_cache_init, bfd_open_file): Don't declare.
237 (bfd_fdopenr): Check return value of bfd_cache_init.
238
e3361fc3
ILT
239Fri Apr 29 15:08:23 1994 Ian Lance Taylor ([email protected])
240
241 * cf-m68klynx.c (CALC_ADDEND): Check for PC relative relocs by
242 enumerating them, since the reloc type can not serve as an index
243 into the m68k COFF howto_table.
244
7c6ba201
SC
245Fri Apr 29 09:42:39 1994 Steve Chamberlain ([email protected])
246
dbf13547 247 * config.bfd (*-go32): Changed to coff.
7c6ba201 248 * coff-h8300.c (JMPL1): Get HOWTO right for 24bit branches.
dbf13547
SC
249 * srec.c (srec_write_symbols): Write out the correct number of
250 symbols and don't stick in extra nulls.
7c6ba201 251
380c60b1
SS
252Tue Apr 26 15:07:24 1994 Stan Shebs ([email protected])
253
254 * cf-sparclynx.c (LYNXOS, COFF_LONG_FILENAMES): Define.
255 * coff-sparc.c (BADMAG): Recognize LYNXCOFFMAGIC.
256 (COFF_SPARC): Define.
257 * coffcode.h (coff_new_section_hook): If COFF_SPARC, set alignment
258 power of data and bss sections to 3.
259 * hosts/lynx.h (__LYNXOS): Define.
260
6c101bcf
JL
261Tue Apr 26 15:04:26 1994 Jeffrey A. Law ([email protected])
262
263 * elf32-hppa.c (hppa_elf_reloc): Adjust the addend of relocations
264 against section symbols to avoid losing during ld -r.
265
266Tue Apr 26 12:16:41 1994 Ian Lance Taylor ([email protected])
267
268 * elfcode.h (shstrtab_length_fixed): Remove useless static
269 variable.
270 (struct elf_sect_data): Remove unused structure.
271 (elf_object_p): Free memory if error occurs. Check return value
272 of bfd_default_set_arch_mach. If elf_get_str_section fails,
273 preserve error code rather than setting wrong_format.
274 (null_shdr): Remove static variable.
275 (assign_section_numbers): Remove shstrtab_length_fixed assignment.
276 Allocate first section header on BFD obstack rather than using
277 null_shdr.
278 (bfd_prpsinfo): Remove unused local variable newsect.
279
2e03ce18
ILT
280Mon Apr 25 15:31:04 1994 Ian Lance Taylor ([email protected])
281
ba436e33
ILT
282 * elfcode.h (write_relocs): Undo patch of Apr 10; breaks Solaris.
283
2e03ce18
ILT
284 * elfcode.h (bfd_section_from_shdr): Use bfd_make_section_anyway
285 to create sections. Check return value of recursive calls.
286 (bfd_section_from_phdr): Check return value of bfd_make_section.
287 (elf_symbol_from_bfd_symbol): Likewise.
288 (elf_object_p): Check return value of bfd_section_from_shdr.
289 (section_from_elf_index): Likewise.
290 (elf_slurp_symbol_table): Check return value of
291 section_from_elf_index.
292 (bfd_prstatus): Return boolean value. Check return value of
293 bfd_make_section.
294 (bfd_fpregset): Likewise.
295 (bfd_prpsinfo): Return boolean value.
296 (elf_corefile_note): Check return values of bfd_prstatus,
297 bfd_fpregset, and bfd_prpsinfo.
298 (elf_core_file_p): Check return value of elf_corefile_note.
299
79167def
ILT
300Fri Apr 22 11:08:38 1994 Ian Lance Taylor ([email protected])
301
cc71e155
ILT
302 Get rid of the ECOFF .reginfo section hack.
303 * ecoff.c (ecoff_mkobject_hook): Don't create a .reginfo section.
304 (ecoff_new_section_hook): Don't handle the .reginfo section.
305 (ecoff_sizeof_headers): Likewise.
306 (ecoff_get_section_contents): Likewise.
307 (ecoff_compute_section_file_positions): Likewise.
308 (ecoff_compute_reloc_file_positions): Likewise.
309 (ecoff_set_section_contents): Likewise.
310 (ecoff_write_object_contents): Likewise.
311 (ecoff_bfd_final_link): Likewise.
312 (ecoff_bfd_copy_private_bfd_data): Copy the GP value and the
313 register masks.
314 (bfd_ecoff_get_gp_value): New function.
315 (bfd_ecoff_set_gp_value): New function.
316 (bfd_ecoff_set_regmasks): New function.
317 * bfd-in.h (bfd_ecoff_get_gp_value): Declare.
318 (bfd_ecoff_set_gp_value): Declare.
319 (bfd_ecoff_set_regmasks): Declare.
320 * bfd-in2.h: Rebuilt.
321
1bb42b1f
ILT
322 Fix ECOFF objcopy to actually copy debugging information.
323 * ecoff.c (ecoff_bfd_copy_private_bfd_data): New function.
324 (ecoff_get_extr): Assume that any ECOFF symbol with local clear is
325 an external symbol, rather than checking the symbol flags. Only
326 check the flags for non-ECOFF symbols.
327 * ecofflink.c (bfd_ecoff_debug_externals): Don't crash if the
328 output_section field of the symbol section is NULL.
329 * libecoff.h (ecoff_bfd_copy_private_bfd_data): Declare as
330 function rather than defining as macro.
331
d290d8da
ILT
332 * ieee.c (ieee_object_p): Set bfd_error_got_wrong_format if
333 appropriate.
334
335 * targets.c (bfd_target_vector): Add bfd_elf32_powerpc_vec.
336
80a903c9
ILT
337 * aout-adobe.c (aout_adobe_set_arch_mach): Check return value of
338 bfd_default_set_arch_mach. Accept bfd_arch_m68k as well as
339 bfd_arch_unknown.
340 * coffcode.h (coff_set_arch_mach): Check return value of
341 bfd_default_set_arch_mach.
342 * elfcode.h (elf_set_arch_mach): Don't check a list of ELF
343 architectures, just see if the desired architecture matches what
344 the ELF backend permits.
345
346 * coffcode.h (coff_set_arch_mach_hook): Rename SHMAGIC to
347 SH_ARCH_MAGIC to match change in coff/sh.h.
348 (coff_set_flags): Likewise.
349
79167def
ILT
350 Follow convention in which each NLM header has an 8 byte stamp
351 followed by a four byte length.
352 * libnlm.h (struct nlm_obj_tdata): Rename nlm_cygnus_section_hdr
353 to nlm_cygnus_ext_header, and change type to
354 Nlm_Internal_Cygnus_Ext_Header.
355 (nlm_cygnus_ext_header): Rename from nlm_cygnus_section_header.
356 * nlmcode.h (nlm_swap_auxiliary_headers_in): Use CyGnUsEx instead
357 of CyGnUsSeCs. Rename from cygnus_section to cygnus_ext. Require
358 length word to be 8.
359 (nlm_swap_auxiliary_headers_out): Rename from cygnus_section to
360 cygnus_ext. Set length word to 8.
361 (nlm_compute_section_file_positions): Rename from cygnus_section
362 to cygnus_ext.
363
7f772644
SG
364Thu Apr 21 22:54:22 1994 Stu Grossman (grossman at cygnus.com)
365
366 * nlmcode.h (nlm_swap_auxiliary_headers_in): Keep section table
367 (from CyGnUsSeCs) in more permanent memory to keep section names
368 from getting trashed.
369
cb71adf1
PS
370Thu Apr 21 09:29:37 1994 Peter Schauer ([email protected])
371
372 * libelf.h (elf_obj_tdata): Add members for dynamic symbol table
373 handling.
374 * elfcode.h (bfd_section_from_shdr): Handle dynamic symbol table.
375 * elfcode.h (elf_slurp_symbol_table): Take additional parameter
376 to select static or dynamic symbol table and return number of
377 symbols slurped or -1 on error.
378 * elfcode.h (elf_get_symtab): Set bfd symcount from
379 elf_slurp_symbol_table result.
380 * elfcode.h (elf_get_dynamic_symtab_upper_bound,
381 elf_canonicalize_dynamic_symtab): New functions to handle dynamic
382 symbol table.
383 * elf32-target.h, elf64-target.h (BFD_JUMP_TABLE_DYNAMIC):
384 Change to handle dynamic symbol table, provide default definitions
385 for dynamic relocs.
386 * aoutx.h (howto_table_std, NAME(aout,swap_std_reloc_out),
387 NAME(aout,swap_std_reloc_in), aout_link_input_section_std,
388 aout_link_reloc_link_order): Handle r_jmptable and r_relative
389 relocations.
390
6c534df0
ILT
391Thu Apr 21 11:58:19 1994 Ian Lance Taylor ([email protected])
392
1eff2af3
ILT
393 Clean up uses of _bfd_dummy_target (from Peter Schauer).
394 * libbfd.c (_bfd_dummy_target): Set bfd_error_wrong_format.
395 * nlm-target.h (nlm_core_file_p): Define as _bfd_dummy_target, not
396 NULL.
397 * srec.c (srec_vec): Use _bfd_dummy_target, not NULL, in
398 _bfd_check_format.
399 (symbolsrec_vec): Likewise.
400 * tekhex.c (tekhex_vec): Likewise.
401
6c534df0
ILT
402 * libnlm.h (struct nlm_obj_tdata): Add nlm_cygnus_section_hdr
403 field.
404 (nlm_cygnus_section_header): New accessor macro.
405 * nlmcode.h (nlm_object_p): Free new tdata structure if failure.
406 Add fixed sections before swapping in auxiliary headers. After
407 adding sections, treat errors as real, not as wrong format.
408 (nlm_swap_auxiliary_headers_in): Swap in the sections header; add
409 sections to the BFD for each section it describes.
410 (nlm_swap_auxiliary_headers_out): Swap out the sections header.
411 (nlm_compute_section_file_positions): Account for the size of the
412 sections header.
413
71363c41
KR
414Wed Apr 20 16:45:51 1994 Ken Raeburn ([email protected])
415
4a5bfdbc
KR
416 * coff-sparc.c (sparccoff_vec): Change minimum alignment power to
417 2, so that stab sections can be multiples of 4 bytes only.
418
71363c41
KR
419 * hosts/i386aix.h: Changes to avoid prototypes conflicts with the
420 ones defined in stdlib.h. (From Minh Tran-Le.)
421
476d01f0
ILT
422Wed Apr 20 14:15:21 1994 Ian Lance Taylor ([email protected])
423start-sanitize-powerpc-netware
424
425 * nlm32-ppc.c: Complete rewrite for new version of PowerPC
426 NetWare. Old code still present, but ifdeffed out.
427end-sanitize-powerpc-netware
428
429 * nlmcode.h (nlm_swap_auxiliary_headers_in): Don't assume a
430 particular format for the customer header. Allocate a block of
431 memory and read it into that.
432 (nlm_swap_auxiliary_headers_out): Write out the block of memory.
433 (nlm_compute_section_file_positions): Include length of customer
434 header when computing its size.
435
69478700
JL
436Mon Apr 18 14:27:17 1994 Jeffrey A. Law ([email protected])
437
438 * som.c (som_prep_headers): Get the space's number from the
439 backend private section data rather than target_index.
440 (bfd_som_set_section_attributes): Store the space's number
441 in the backend private section data rather than target_index.
442
443 * som.h (som_copyable_section_data_struct): Add space_number.
444
2ec2e6a9
ILT
445Fri Apr 15 12:22:07 1994 Ian Lance Taylor ([email protected])
446
09ed3666
ILT
447 * coff-a29k.c (reloc_processing): Always set the address of a
448 R_IHCONST reloc to that of the immediately preceding R_IHIHALF.
449 gas does this anyhow, but some other assemblers seem to leave
450 garbage in the R_IHCONST address field.
451
97ea252e
ILT
452 * bfd/archive.c: Consistently use ARFMAG; from
453 [email protected] (Andreas Schwab).
454 (_bfd_write_archive_contents): Use ARFMAG rather than '`' and
455 '\012'.
456 (bsd_write_armap): Likewise.
457 (coff_write_armap): Likewise.
458
ef79dba3
ILT
459 * coff-mips.c (mips_relocate_section): When relaxing, adjust local
460 relocs against the .text section as required.
461 * ecofflink.c (bfd_ecoff_debug_accumulate): When relaxing, adjust
462 PDR addresses as required.
463
2ec2e6a9
ILT
464 * ecoff.c (ecoff_emit_aggregate): Take fdr argument. Map fdr
465 index through rfd map if it exists. Check for a couple of cases
466 which gdb handles specially. Change all callers.
467 (ecoff_type_to_string): Take fdr argument rather than aux_ptr and
468 bigendian argument. Change all callers.
469 (ecoff_print_symbol): Handle stStruct, stUnion and stEnum.
470
4f996613
ILT
471Thu Apr 14 13:05:10 1994 Ian Lance Taylor ([email protected])
472
473 * coff-mips.c (mips_howto_table): Add dummy entries to account for
474 numbering changes in include/coff/mips.h. Add entries for
475 MIPS_R_RELHI and MIPS_R_RELLO.
476 (mips_ecoff_swap_reloc_in): Handle an extra bit for the reloc type
477 when little endian. Treat internal MIPS_R_RELLO or MIPS_R_RELHI
478 relocs like MIPS_R_SWITCH, and convert r_offset from 24 to 32
479 bits.
480 (mips_ecoff_swap_reloc_out): Likewise.
481 (mips_adjust_reloc_in): Handle internal MIPS_R_RELLO or
482 MIPS_R_RELHI relocs like MIPS_R_SWITCH.
483 (mips_adjust_reloc_out): Likewise.
484 (mips_relhi_addr, mips_relhi_addend): New static variables.
485 (mips_relhi_reloc, mips_rello_reloc): New functions.
486 (mips_bfd_reloc_type_lookup): Turn BFD_RELOC_PCREL_HI16_S into
487 MIPS_R_RELHI and turn BFD_RELOC_PCREL_LO16 into MIPS_R_RELLO.
488 (mips_relocate_hi): Rename from mips_relocate_refhi, and add pcrel
489 argument. Changed all callers.
490 (mips_relocate_section): Rename got_reflo to got_lo and
491 reflo_int_rel to lo_int_rel. Handle MIPS_R_RELLO and MIPS_R_RELHI
492 relocs.
493 (mips_relax_section): Adjust MIPS_R_RELHI/MIPS_R_RELLO pairs when
494 expanding a PC relative call.
495
496 * reloc.c (bfd_reloc_code_real_type): Add BFD_RELOC_PCREL_HI16_S
497 and BFD_RELOC_PCREL_LO16.
498 * bfd-in2.h: Rebuilt.
499
1a000744
SS
500Wed Apr 13 11:50:07 1994 Stan Shebs ([email protected])
501
502 * coff-sparc.c (sparccoff_vec): Set minimum alignment power to 3.
503
41194a4a
JL
504Tue Apr 12 13:36:20 1994 Jeffrey A. Law ([email protected])
505
506 * som.c (som_write_fixups): Always emit at least
507 one relocation for any non-bss section.
508
bf08d1e2
ILT
509Mon Apr 11 14:41:44 1994 Ian Lance Taylor ([email protected])
510
511 * elfcode.h (assign_file_positions_except_relocs): Don't require
512 the file alignment to correspond to the page size when linking
513 with -N.
514
9a5334e5
JL
515Sun Apr 10 01:02:24 1994 Jeffrey A. Law ([email protected])
516
517 * elfcode.h (write_relocs): For rela relocations, adjust the
518 addend for relocations involving section symbols to account
519 for the lossage of 1:1 mapping from input section symbols to
520 output section symbols.
521
e48f985c
ILT
522Fri Apr 8 12:22:02 1994 Ian Lance Taylor ([email protected])
523
ec6b18c4
ILT
524 * aoutx.h (NAME(aout,make_sections)): New function.
525 (NAME(aout,some_aout_object_p)): Call NAME(aout,make_sections)
526 rather than making sections inline.
527 (NAME(aout,mkobject)): Don't make any sections.
528 (NAME(aout,adjust_sizes_and_vmas)): Call NAME(aout,make_sections).
529 (NAME(aout,final_link)): Don't dereference obj_textsec (abfd) or
530 obj_datasec (abfd) if they are NULL.
531 * libaout.h (NAME(aout,make_sections)): Declare.
532 * bout.c (b_out_mkobject): Don't make any sections.
533 (b_out_write_object_contents): Call aout_32_make_sections.
534 (b_out_set_section_contents): Likewise.
535 * i386os9k.c (os9k_mkobject): Don't make any sections.
536 (os9k_write_object_contents): Call aout_32_make_sections.
537 (os9k_set_section_contents): Likewise.
538
e48f985c
ILT
539 * aoutx.h (NAME(aout,new_section_hook)): Don't set N_EXT in target
540 index.
541
06863047
PS
542Wed Apr 6 20:44:56 1994 Peter Schauer ([email protected])
543
544 * config.bfd, configure.host: Add mips-*-sysv4* support.
545
dabf906e
ILT
546Thu Apr 7 14:23:05 1994 Ian Lance Taylor ([email protected])
547
548 * coff-mips.c (mips_howto_table): Add entry for MIPS_R_SWITCH.
549 (mips_ecoff_swap_reloc_in): For MIPS_R_SWTICH, copy r_symndx into
550 r_offset and set r_symndx to RELOC_SECTION_TEXT.
551 (mips_ecoff_swap_reloc_out): For MIPS_R_SWITCH, get the r_symndx
552 value from the r_offset field.
553 (mips_adjust_reloc_in): Maximum r_type value is now MIPS_R_SWITCH.
554 For MIPS_R_SWITCH, copy the r_offset field into the addend field.
555 (mips_adjust_reloc_out): For MIPS_R_SWITCH, copy the addend field
556 into the r_offset field.
557 (mips_switch_reloc): New function.
558 (mips_bfd_reloc_type_lookup): Translate BFD_RELOC_GPREL32 into
559 MIPS_R_SWITCH.
560 (mips_relocate_section): Handle MIPS_R_SWITCH.
561 (mips_relax_section): Adjust MIPS_R_SWITCH offset if necessary.
562
99a6c761
JL
563Thu Apr 7 11:10:51 1994 Jeffrey A. Law ([email protected])
564
565 * elfcode.h (elf_set_section_contents): Support calling the backend
566 function elf_backend_begin_write_processing when just beginning to
567 write an object file.
568
569 * libelf.h (elf_backend_begin_write_processing): Declare.
570
571 * elf{32,64}-target.h (elf_backend_begin_write_processing): Provide
572 a default definition.
573 (elf{32,64}_bed): Add elf_backend_begin_write_processing.
574
575 * elf32-hppa.h (elf_hppa_tc_symbol): Delete extern declaration.
576 (elf_hppa_tc_make_sections): Likewise.
577
578 * elf32-hppa.c (symext_chain_built): Delete.
579 (symext_chain_size): Renamed from symextn_contents_real_size.
580 (elf32_hppa_backend_{begin,final}_write_processing): New functions.
581 (add_entry_to_symext_chain): New function.
582 (hppa_elf_set_section_contents): Ignore writes to the symbol extension
583 section until it's been rebuilt internally.
584 (hppa_elf_get_section_contents): Symbol extension section is no
585 longer special.
586 (elf_backend_{begin,final}_write_processing): Define.
587 (elf_hppa_tc_make_sections): Simplify now that much code has
588 migrated into elf32_hppa_backend_{being,final}_write_processing.
589
6812b607
ILT
590Wed Apr 6 17:24:14 1994 Ian Lance Taylor ([email protected])
591
dfc1c006
ILT
592 Add new target vectors to read the dynamic symbols and dynamic
593 relocs. Change a.out to use these rather than reading the dynamic
594 symbols and relocs along with the normal symbols and relocs.
595 * targets.c (bfd_target): Add fields
596 _bfd_get_dynamic_symtab_upper_bound,
597 _bfd_canonicalize_dynamic_symtab,
598 _bfd_get_dynamic_reloc_upper_bound,
599 _bfd_canonicalize_dynamic_reloc.
600 (BFD_JUMP_TABLE_DYNAMIC): Define.
601 * libbfd-in.h (_bfd_nodynamic_get_dynamic_symtab_upper_bound):
602 Define.
603 (_bfd_nodynamic_canonicalize_dynamic_symtab): Define.
604 (_bfd_nodynamic_get_dynamic_reloc_upper_bound): Define.
605 (_bfd_nodynamic_canonicalize_dynamic_reloc): Define.
606 * bfd.c (bfd_get_dynamic_symtab_upper_bound): Define.
607 (bfd_canonicalize_dynamic_symtab): Define.
608 (bfd_get_dynamic_reloc_upper_bound): Define.
609 (bfd_canonicalize_dynamic_reloc): Define.
610 * sunos.c (MY_read_dynamic_symbols): Don't define.
611 (MY_read_dynamic_relocs): Don't define.
612 (MY_get_dynamic_symtab_upper_bound): Define.
613 (MY_canonicalize_dynamic_symtab): Define.
614 (MY_get_dynamic_reloc_upper_bound): Define.
615 (MY_canonicalize_dynamic_reloc): Define.
616 (struct sunos_dynamic_info): Change type of dynsym_count and
617 dynrel_count to long. Add fields canonical_dynsym and
618 canonical_dynrel.
619 (sunos_read_dynamic_info): Check that BFD had DYNAMIC flag set.
620 Clear info->canonical_dynsym and info->canonical_dynrel.
621 (MY(read_dynamic_symbols)): Removed.
622 (MY(read_dynamic_relocs)): Removed.
623 (sunos_get_dynamic_symtab_upper_bound): New function.
624 (sunos_canonicalize_dynamic_symtab): New function.
625 (sunos_get_dynamic_reloc_upper_bound): New function.
626 (sunos_canonicalize_dynamic_reloc): New function.
627 * libaout.h: Declare struct reloc_ext_external and
628 reloc_std_external to avoid prototype problems.
629 (struct aout_backend_data): Remove fields read_dynamic_symbols and
630 read_dynamic_relocs.
631 (NAME(aout,translate_symbol_table)): Declare.
632 (NAME(aout,swap_ext_reloc_in)): Declare.
633 (NAME(aout,swap_std_reloc_in)): Declare.
634 * aoutx.h (NAME(aout,translate_symbol_table)): Renamed from
635 translate_symbol_table and made non-static. Changed all callers.
636 (NAME(aout,slurp_symbol_table)): Don't read dynamic symbols.
637 (NAME(aout,slurp_reloc_table)): Don't read dynamic relocs.
638 (NAME(aout,get_reloc_upper_bound)): Don't count dynamic relocs.
639 * aoutf1.h (aout_32_sunos4_write_object_contents): Don't bother to
640 remove dynamic symbols and relocs. They will no longer be
641 present.
642 (MY_read_dynamic_symbols): Don't define.
643 (MY_read_dynamic_relocs): Don't define.
644 (sunos4_aout_backend): Don't initialize dynamic entry points.
645 * aout-target.h (MY_read_dynamic_symbols): Don't define.
646 (MY_read_dynamic_relocs): Don't define.
647 (MY(backend_data)): Don't initialize dynamic entry points.
648 (MY_get_dynamic_symtab_upper_bound): If not defined, define to
649 _bfd_nodynamic version.
650 (MY_canonicalize_dynamic_symtab): Likewise.
651 (MY_get_dynamic_reloc_upper_bound): Likewise.
652 (MY_canonicalize_dynamic_reloc): Likewise.
653 * All backends: Added BFD_JUMP_TABLE_DYNAMIC to target vector.
654 * bfd-in2.h: Rebuilt.
655 * libbfd.h: Rebuilt.
656
657 * cf-m68klynx.c: Include sysdep.h.
658
659 * hp300hpux.c: Removed some spaces in uses of NAME to avoid
660 problems with traditional C compilers.
661
6812b607
ILT
662 * targets.c (bfd_target): Rearranged fields in target vector.
663 Removed _bfd_debug_info_start, _bfd_debug_info_end and
664 _bfd_debug_info_accumulate, which were never used.
665 (BFD_JUMP_TABLE_GENERIC, BFD_JUMP_TABLE_COPY): Defined.
666 (BFD_JUMP_TABLE_CORE, BFD_JUMP_TABLE_ARCHIVE): Defined.
667 (BFD_JUMP_TABLE_SYMBOLS, BFD_JUMP_TABLE_RELOCS): Defined.
668 (BFD_JUMP_TABLE_WRITE, BFD_JUMP_TABLE_LINK): Defined.
669 * All backends: Changed to use the new BFD_JUMP_TABLE_* macros
670 rather than the single JUMP_TABLE macro. Removed many of the
671 weird macro definitions needed to support the monolithic
672 JUMP_TABLE.
673 * bfd-in.h (JUMP_TABLE): Removed.
674 * libbfd-in.h: Define a bunch of macros, and declare a few
675 functions, for use with the new BFD_JUMP_TABLE_* macros.
676 * libbfd.c (_bfd_dummy_new_section_hook): Removed.
677 (bfd_false): Set bfd_error_invalid_operation.
678 (bfd_nullvoidptr): Likewise.
679 (bfd_n1): New function.
680 (_bfd_nocore_core_file_matches_executable_p): Renamed from
681 _bfd_dummy_core_file_matches_executable_p.
682 (_bfd_nocore_core_file_failing_command): Similar rename. Set
683 bfd_error_invalid_operation.
684 (_bfd_nocore_core_file_failing_signal): Likewise.
685 (_bfd_generic_get_section_contents): Renamed from
686 bfd_generic_get_section_contents. Changed all callers.
687 (_bfd_generic_set_section_contents): Similar rename.
688 * ieee.c: #if 0 out ieee_bfd_debug_info_start,
689 ieee_bfd_debug_info_end, ieee_bfd_debug_info_accumulate. They
690 were never called.
691 * bfd-in2.h: Rebuilt.
692 * libbfd.h: Rebuilt.
693
65b1ef49
JL
694Tue Apr 5 22:10:04 1994 Jeffrey A. Law ([email protected])
695
696 * Crude support for examining dynamic libraries.
697 * som.c (som_object_setup): Set DYNAMIC flag for SHL_MAGIC and
698 DL_MAGIC objects.
699 (som_prep_headers): Preserve the system_id for DYNAMIC objects.
700 Use SHL_MAGIC as the magic number of the DYNAMIC flag is set.
701 Write exec headers for DYNAMIC objects.
702 (som_begin_writing): DYNAMIC objects have the same alignment
703 restrictions as D_PAGED objects.
704 (bfd_section_from_som_symbol): Treat DYNAMIC objects like EXEC_P
705 objects.
706 (object_flags): Add DYNAMIC.
707
08a43162
SS
708Tue Apr 5 17:48:52 1994 Stan Shebs ([email protected])
709
710 * i386lynx.c, sparclynx.c (NAME): Remove embedded whitespace in
711 macro uses, confuses some non-ANSI compilers.
712
b2452d39
JL
713Tue Apr 5 15:50:01 1994 Jeffrey A. Law ([email protected])
714
715 * som.c (som_bfd_free_cached_info): Add missing PARAMS decl.
716 Don't free anything if we don't have a bfd_object.
717 (som_close_and_cleanup): Call som_bfd_free_cached_info.
718
b3cee0a9
ILT
719Tue Apr 5 11:22:38 1994 Ian Lance Taylor ([email protected])
720
856613c4
ILT
721 * elf32-mips.c (mips_elf_final_link): Don't remove empty sections.
722 It turns out not to be required on Irix 5, and it causes problems
723 if the sections happen to contain symbols.
724
725 * elfcode.h (write_shdrs_and_ehdr): Correct bfd_write check.
726
b3cee0a9
ILT
727 * aoutx.h (NAME(aout,canonicalize_reloc)): Don't error out if
728 section->relocation is NULL; malloc might have returned NULL when
729 given a zero size if there were no relocations.
730 * bout.c (b_out_canonicalize_reloc): Likewise.
731 * coffcode.h (coff_canonicalize_reloc): Likewise.
732 * ecoff.c (ecoff_canonicalize_reloc): Likewise.
733 * elfcode.h (elf_canonicalize_reloc): Likewise.
734 * mipsbsd.c (MY(canonicalize_reloc)): Likewise.
735 * i386lynx.c (NAME(lynx,canonicalize_reloc)): Likewise.
736 * nlmcode.h (nlm_canonicalize_reloc): Likewise.
737 * som.c (som_canonicalize_reloc): Likewise.
738 * hp300hpux.c (MY(slurp_reloc_table)): Likewise. Also, if malloc
739 returns NULL, don't report an error if we asked for zero bytes.
740 * i386lynx.c (NAME(lynx,slurp_reloc_table)): If malloc returns
741 NULL, don't report an error if we asked for zero bytes.
742 * nlmcode.h (nlm_slurp_reloc_fixups): Likewise.
743
f3a14a9e
ILT
744Mon Apr 4 15:30:49 1994 Ian Lance Taylor ([email protected])
745
c4dd531f
ILT
746 * aoutx.h (NAME(aout,bfd_free_cached_info)): Don't free anything
747 if we don't have a bfd_object.
748
4002f18a
ILT
749 Made sure that every call to bfd_read, bfd_write, and bfd_seek
750 checks the return value and handled bfd_error correctly. These
751 changes are not itemised. Also:
752 * aoutx.h (emit_strtab): Change return type to boolean, and return
753 errors.
754 (NAME(aout,write_syms)): Check emit_strtab return value.
755 (NAME(aout,final_link)): Likewise.
756 * coffcode.h (coff_write_relocs): Change return type to boolean,
757 and return errors.
758 (coff_write_object_contents): Check coff_write_relocs return
759 value.
760 * i386os9k.c (os9k_swap_exec_header_in): Change return type to
761 boolean.
762 (os9k_object_p): Check os9k_swap_exec_header_in return value.
763 * oasys.c (oasys_read_record): Change return type to boolean.
764 (oasys_slurp_symbol_table: Check oasys_read_record return value.
765 (oasys_object_p, oasys_slurp_section_data): Likewise.
766 (oasys_write_record): Change return type to boolean.
767 (oasys_write_syms): Likewise. Also, check oasys_write_record
768 return value.
769 (oasys_write_sections): Check oasys_write_record return value.
770 (oasys_write_header): Change return type to boolean. Check
771 oasys_write_record return value.
772 (oasys_write_end, oasys_write_data): Likewise.
773 (oasys_write_object_contents): Check return values of
774 oasys_write_header, oasys_write_syms, oasys_write_data, and
775 oasys_write_end.
776 * srec.c (srec_write_record): Change return type to boolean.
777 (srec_write_header): Likewise. Also, check srec_write_record
778 return value.
779 (srec_write_section, srec_write_terminator): Likewise.
780 (srec_write_symbols): Change return type to boolean.
781 (internal_srec_write_object_contents): Check return value of
782 srec_write_symbols, srec_write_header, srec_write_section, and
783 srec_write_terminator.
784
f3a14a9e
ILT
785 * Makefile.in: Rebuilt dependencies.
786
3e2993b6
PS
787Mon Apr 4 10:56:45 1994 Peter Schauer ([email protected])
788
789 * aix386-core.c (aix386_bfd_is_local_label): Correct cast from
790 asection to asymbol.
791 * ptrace-core.c (ptrace_unix_bfd_is_local_label): Correct cast from
792 bfd to asymbol.
793 * trad-core.c (trad_unix_bfd_is_local_label): Correct cast from
794 asection to asymbol.
795
1f46bba3
JL
796Sun Apr 3 18:27:29 1994 Jeffrey A. Law ([email protected])
797
798 * som.c (som_slurp_string_table): Use malloc to allocate space
799 for the cached copy of the native string table.
800 (som_slurp_symbol_table): Likewise for the native symbol table.
801 (som_slurp_reloc_table): Likewise for the native and generic
802 relocation tables.
803 (som_bfd_free_cached_info): Free the cached native strings,
804 symbols, and relocations. Also free the canonical cached
805 relocations.
806
9deaaaf1
ILT
807Fri Apr 1 12:40:58 1994 Ian Lance Taylor ([email protected])
808
d6d6b18a
ILT
809 * aoutx.h (aout_link_write_symbols): If keep_memory is false, make
810 sure the symbol name is stored in permanent memory before adding
811 it to the string table.
812
dfe09c49
ILT
813 * archive.c (_bfd_write_archive_contents): Once we've found an
814 object, don't bother to look for more when deciding whether to
815 build a map.
816 (compute_and_write_armap): After adding the symbols for a BFD,
817 call bfd_free_cached_info on it.
818
819 Add bfd_free_cached_info support to a.out backends.
820 * aoutx.h (aout_get_external_symbols): Renamed from
821 aout_link_get_symbols. Read strings even if symbols have been
822 read. Store string size in obj_aout_string_size.
823 (NAME(aout,slurp_symbol_table)): Call aout_get_external_symbols to
824 read the symbols. Allocate the cached symbols with malloc, not
825 bfd_alloc.
826 (NAME(aout,slurp_reloc_table)): Allocate the cached relocs with
827 malloc, not bfd_alloc.
828 (NAME(aout,bfd_free_cached_info)): New function; free cached
829 symbols and relocs.
830 * libaout.h (struct aoutdata): Add external_string_size field.
831 (obj_aout_external_string_size): New accessor macro.
832 (NAME(aout,close_and_cleanup)): Don't declare.
833 (NAME(aout,bfd_free_cached_info)): Declare.
834 (aout_32_close_and_cleanup): Don't define.
835 (aout_64_close_and_cleanup): Don't define.
836 * aout-target.h (MY_bfd_free_cached_info): If not already defined,
837 define as NAME(aout,free_cached_info).
838 (MY_close_and_cleanup): If not already defined, define as
839 MY_bfd_free_cached_info.
840 * aout-adobe.c (aout_32_close_and_cleanup): Define.
841 (aout_32_bfd_free_cached_info): Don't define.
842 * bout.c (aout_32_close_and_cleanup): Define.
843 (aout_32_bfd_free_cached_info): Don't define.
844 * hp300hpux.c (MY_bfd_free_cached_info): Define as bfd_true.
845 (MY_close_and_cleanup): Don't define.
846 * i386lynx.c (NAME(lynx,slurp_reloc_table)): Allocate the cached
847 relocs with malloc, not bfd_alloc.
848 * i386os9k.c (aout_32_close_and_cleanup): Define.
849 (aout_32_bfd_free_cached_info): Don't define.
850
851 Add a new entry point to free memory cached by a BFD.
9deaaaf1
ILT
852 * targets.c (bfd_target): Add _bfd_free_cached_info field.
853 * bfd.c (bfd_free_cached_info): Define.
854 * bfd-in.h (JUMP_TABLE): Add _bfd_free_cached_info.
855 * bfd-in2.h: Rebuilt.
856 * All backends: Initialize bfd_free_cached_info entry point to
857 bfd_true.
858
859 * elf32-hppa.c (elf_hppa_reloc_type_lookup): Correct type of
860 first, unused, argument.
861 (hppa_elf_is_local_label): Declare instead of
862 som_bfd_is_local_label.
863
864 * coff-a29k.c (a29k_reloc): Add reloc_entry->address to value of
865 absolute R_IREL reloc.
866
bfe8224f
ILT
867Thu Mar 31 11:52:15 1994 Ian Lance Taylor ([email protected])
868
f8ee1ebb
ILT
869 Added some support for Irix 4 shared libraries.
870 * ecoff.c (ecoff_new_section_hook): Set SEC_SHARED_LIBRARY for a
871 .lib section.
872 (ecoff_sec_to_styp_flags): Set SEC_SHARED_LIBRARY if
873 STYP_ECOFF_LIB bit is set.
874 (ecoff_compute_section_file_positions): Round the contents of a
875 .lib section up to the next page boundary.
876 (ecoff_set_section_contents): If we see a .lib section, increment
877 the vma by one to count the number of shared libraries we have.
878 (ecoff_write_object_contents): Don't crash if we see a
879 STYP_ECOFF_LIB section, and don't adjust text_start or data_start
880 or bss_size either.
881
492d52cc
ILT
882 * coffcode.h (CALC_ADDEND): Change to fetch original symbol value
883 from original BFD, rather than using value of current BFD symbol.
884 Needed for new linker.
885 * coff-sparc.c (CALC_ADDEND): Likewise.
886
1788b1bd
ILT
887 * ecoff.c (ecoff_write_object_contents): Set the text_start and
888 data_start entries in the optional header correctly even if a text
889 or data section starts at location zero.
890
e9c6595d
ILT
891 * reloc.c (bfd_reloc_code_real_type): Added BFD_RELOC_26 (from sef
892 and raeburn).
893 * bfd-in2.h: Rebuilt.
894
3af0f479
ILT
895 * nlm32-i386.c (nlm_i386_read_import): Null terminate the symbol
896 name.
897 * nlm32-alpha.c (nlm_alpha_read_import): Likewise.
898 * nlm32-sparc.c (nlm_sparc_read_import): Likewise.
899
bfe8224f
ILT
900 * coffgen.c (coff_write_symbol): Reindented. Changed to return
901 boolean, and changed written to unsigned int *. Check error
902 returns from called functions.
903 (coff_write_alien_symbol): Likewise.
904 (coff_write_native_symbol): Likewise.
905 (coff_write_symbols): Likewise. Reworked checks on whether to
906 write symbol name to string table for clarity and to avoid core
907 dumping when given a non COFF symbol.
908 * libcoff-in.h (coff_write_symbols): Declare as returning boolean.
909 * libcoff.h: Rebuilt.
910 * coffcode.h (coff_write_object_contents): Check return value of
911 coff_write_symbols.
912
326e32d7
ILT
913Wed Mar 30 16:25:41 1994 Ian Lance Taylor ([email protected])
914
915 Changes to let BFD return an error indication from
916 get_symtab_upper_bound, bfd_canonicalize_symtab,
917 bfd_get_reloc_upper_bound, and bfd_canonicalize_reloc. They now
918 return long instead of unsigned int, and use -1 to indicate an
919 error. Along the way, rename get_symtab_upper_bound to
920 bfd_get_symtab_upper_bound.
921 * bfd.c (bfd_get_reloc_upper_bound): Return long, and -1 on
922 errors.
923 (bfd_canonicalize_reloc): Likewise.
924 * syms.c (bfd_get_symtab_upper_bound): Renamed from
925 get_symtab_upper_bound.
926 * targets.c (bfd_target): Renamed _get_symtab_upper_bound to
927 _bfd_get_symtab_upper_bound, and changed it and
928 _bfd_canonicalize_symtab and _get_reloc_upper_bound and
929 _bfd_canonicalize_reloc to all return long.
930 * aoutx.h (NAME(aout,get_symtab)): Return long, and -1 on errors.
931 (NAME(aout,canonicalize_reloc)): Likewise.
932 (NAME(aout,get_reloc_upper_bound)): Likewise.
933 (NAME(aout,get_symtab_upper_bound)): Likewise.
934 * bout.c (b_out_canonicalize_reloc): Likewise.
935 (b_out_get_reloc_upper_bound): Likewise.
936 * coffcode.h (coff_canonicalize_reloc): Likewise.
937 * coffgen.c (coff_get_symtab_upper_bound): Likewise.
938 (coff_get_symtab): Likewise.
939 (coff_get_reloc_upper_bound): Likewise.
940 * ecoff.c (ecoff_get_symtab_upper_bound): Likewise.
941 (ecoff_get_symtab): Likewise.
942 (ecoff_canonicalize_reloc): Likewise.
943 * elfcode.h (elf_get_symtab_upper_bound): Likewise.
944 (elf_get_reloc_upper_bound): Likewise.
945 (elf_canonicalize_reloc): Likewise.
946 (elf_get_symtab): Likewise.
947 * hp300hpux.c (MY(get_symtab)): Likewise.
948 (MY(get_symtab_upper_bound)): Likewise.
949 (MY(canonicalize_reloc)): Likewise.
950 * i386lynx.c (NAME(lynx,canonicalize_reloc)): Likewise.
951 * ieee.c (ieee_slurp_external_symbols): Change return type to
952 boolean. Check for errors from get_symbol.
953 (ieee_slurp_symbol_table): Change return type to boolean. Check
954 for errors from ieee_slurp_external_symbols.
955 (ieee_get_symtab_upper_bound): Return long, and -1 on errors.
956 (ieee_get_symtab): Likewise.
957 (ieee_get_reloc_upper_bound): Likewise.
958 (ieee_canonicalize_reloc): Likewise.
959 * mipsbsd.c (MY(canonicalize_reloc)): Likewise.
960 * nlmcode.h (nlm_get_symtab_upper_bound): Likewise.
961 (nlm_get_symtab): Likewise.
962 (nlm_get_reloc_upper_bound): Likewise.
963 (nlm_canonicalize_reloc): Likewise.
964 * oasys.c (oasys_get_symtab_upper_bound): Likewise.
965 (oasys_get_symtab): Likewise.
966 (oasys_get_reloc_upper_bound): Likewise.
967 (oasys_canonicalize_reloc): Likewise.
968 * som.c (som_get_symtab_upper_bound): Likewise.
969 (som_get_symtab): Likewise.
970 (som_get_reloc_upper_bound): Likewise.
971 (som_canonicalize_reloc): Likewise.
972 * srec.c (srec_get_symtab_upper_bound): Likewise.
973 (srec_get_symtab): Likewise.
974 (srec_get_reloc_upper_bound): Define as bfd_0l.
975 (srec_canonicalize_reloc): Likewise.
976 * tekhex.c (tekhex_get_symtab): Return long, and -1 on errors.
977 (tekhex_get_symtab_upper_bound): Likewise.
978 (tekhex_get_reloc_upper_bound): Define as bfd_0l.
979 (tekhex_canonicalize_reloc): Likewise.
980 * libaout.h (NAME(aout,get_symtab_upper_bound)): Change
981 declaration to return long.
982 (NAME(aout,get_symtab)): Likewise.
983 (NAME(aout,canonicalize_reloc)): Likewise.
984 (NAME(aout,get_reloc_upper_bound)): Likewise.
985 * libcoff-in.h (coff_get_symtab_upper_bound): Likewise.
986 (coff_get_symtab): Likewise.
987 (coff_get_reloc_upper_bound): Likewise.
988 * libecoff.h (ecoff_get_symtab_upper_bound): Likewise.
989 (ecoff_get_symtab): Likewise.
990 (ecoff_canonicalize_reloc): Likewise.
991 * libelf.h (bfd_elf32_get_symtab_upper_bound): Likewise.
992 (bfd_elf32_get_symtab): Likewise.
993 (bfd_elf32_get_reloc_upper_bound): Likewise.
994 (bfd_elf32_canonicalize_reloc): Likewise.
995 (bfd_elf64_get_symtab_upper_bound): Likewise.
996 (bfd_elf64_get_symtab): Likewise.
997 (bfd_elf64_get_reloc_upper_bound): Likewise.
998 (bfd_elf64_canonicalize_reloc): Likewise.
999 * libnlm.h (nlmNAME(get_symtab_upper_bound)): Likewise.
1000 (nlmNAME(get_symtab)): Likewise.
1001 (nlmNAME(get_reloc_upper_bound)): Likewise.
1002 (nlmNAME(canonicalize_reloc)): Likewise.
1003 * archive.c (compute_and_write_armap): Use error_return and
1004 no_memory_return labels rather than freeing information in various
1005 places. Change storage, symcount and src_count to long. Check
1006 errors from bfd_get_symtab_upper_bound and
1007 bfd_canonicalize_symtab.
1008 * bout.c (b_out_relax_section): Change reloc_size to long. Check
1009 for errors from bfd_get_reloc_upper_bound and
1010 bfd_canonicalize_reloc.
1011 (b_out_get_relocated_section_contents): Likewise.
1012 * coff-alpha.c (alpha_ecoff_get_relocated_section_contents):
1013 Likewise.
1014 * elf32-mips.c: Likewise.
1015 * elf32-hppa.c (hppa_elf_stub_finish): Likewise.
1016 (hppa_look_for_stubs_in_section): Check for errors from
1017 bfd_get_symtab_upper_bound, bfd_canonicalize_symtab, and
1018 bfd_canonicalize_reloc.
1019 * ecofflink.c (bfd_ecoff_debug_accumulate_other): Check for errors
1020 from bfd_get_symtab_upper_bound and bfd_canonicalize_symtab.
1021 * linker.c (generic_link_read_symbols): Likewise.
1022 (_bfd_generic_final_link): Check for errors from
1023 bfd_get_reloc_upper_bound and bfd_canonicalize_reloc.
1024 * reloc.c (bfd_generic_get_relocated_section_contents): Likewise.
1025 * reloc16.c (bfd_coff_reloc16_relax_section): Likewise.
1026 (bfd_coff_reloc16_get_relocated_section_contents): Likewise.
1027 * libbfd.c (bfd_0l): New function.
1028 * libbfd-in.h (bfd_0l): Declare.
1029 * aix386-core.c: Change get_symtab_upper_bound, get_symtab,
1030 get_reloc_upper_bound, and canonicalize_reloc to use bfd_0l rather
1031 than bfd_0u.
1032 * cisco-core.c, hppabsd-core.c, hpux-core.c: Likewise.
1033 * irix-core.c, osf-core.c, ptrace-core.c, trad-core.c: Likewise.
1034 * bfd-in2.h: Rebuilt.
1035 * libbfd.h: Rebuilt.
1036 * libcoff.h: Rebuilt.
1037
1038 * nlm32-sparc.c (nlm_sparc_read_reloc): Remove unused variables
1039 temp and name.
1040
c2c818bc
JK
1041Wed Mar 30 08:33:04 1994 Jim Kingdon ([email protected])
1042
1043 * hosts/dpx2.h: Define POSIX_UTIME.
1044
bdf1b511
PS
1045Wed Mar 30 00:31:49 1994 Peter Schauer ([email protected])
1046
1047 * i386dynix.c, config/i386-dynix.mt: New files, handling Dynix
1048 variant of a.out.
1049 * configure.in, config.bfd: Use them for Dynix.
1050 * Makefile.in: Add dependencies for i386dynix.o.
1051 * targets.c: Add definition for i386dynix_vec.
1052 * hosts/symmetry.h: Do not define TRAD_CORE_USER_OFFSET for Dynix.
1053 Define HOST_DATA_START_ADDR and TRAD_UNIX_CORE_FILE_FAILING_SIGNAL
1054 for Dynix. Remove inclusion of dynix3.h, Dynix bfd is now handled by
1055 i386dynix.c
1056
a8a916c8
ILT
1057Mon Mar 28 12:53:27 1994 Ian Lance Taylor ([email protected])
1058
9f37f56a
ILT
1059 * Makefile.in (BFD32_BACKENDS): Add coff-sparc.o.
1060
09a28207
ILT
1061 * coffcode.h (coff_set_flags): Handle bfd_arch_powerpc like
1062 bfd_arch_rs6000.
1063
ce8f1f60 1064 * config.bfd (powerpc-*-aix*): New target; use rs6000.mt.
34632537
ILT
1065 * config/rs6000.mt (SELECT_ARCHITECTURES): Add bfd_powerpc_arch.
1066
a8a916c8
ILT
1067 * aoutx.h (translate_from_native_sym_flags): Set SEC_RELOC flag
1068 for generated constructor section.
1069
06e6eb0e
JL
1070Sun Mar 27 16:25:22 1994 Jeffrey A. Law ([email protected])
1071
1072 * som.c (som_begin_writing): New approach at dealing with holes
1073 in executables left by the HP linker. Does not rely on subspace
1074 alignments as subspaces are *NOT* guaranteed to be properly
1075 aligned in an executable (can you believe that!).
1076
25057836
JL
1077Sat Mar 26 10:25:43 1994 Jeffrey A. Law ([email protected])
1078
f977e865
JL
1079 * som.c (som_get_section_contents): New function. Do not try
1080 to actually read data from a section that doesn't have either
1081 SEC_LOAD or SEC_DEBUGGING set (eg $BSS$) just return true.
1082
25057836
JL
1083 * libbfd.c (bfd_read): Set bfd_error as appropriate for a short
1084 read. (bfd_error_system_call or bfd_error_file_truncated).
1085
1086 * som.c: Do not blindly set bfd_error_system_call after a
1087 failing bfd_read, bfd_write, or bfd_seek. In a few places
1088 (like som_object_p) override the error status set by bfd_read.
1089
1090 * aix386-core.c, aout-encap,c archive.c, bout.c: Likewise.
1091 * coff-rs6000.c, coffgen.c ecoff.c, elf.c: Likewise.
1092 * elf32-hppa.c, elfcode.h, hp300hpux.c, i386lynx.c: Likewise.
1093 * nlm32-alpha.c, nlm32-i386.c, nlm32-sparc.c: Likewise.
1094
1095 * som.c: Check return values from several bfd_{seek,read,write}
1096 calls that we just assumed were not failing.
1097
471c3c3f
JK
1098Fri Mar 25 11:44:06 1994 Jim Kingdon ([email protected])
1099
1100 * hosts/sysv4.h (HAVE_PROCFS): Add comments about ptx4.
1101 * config/sysv4.mh: Add comment.
1102 * config/symmetry.mh: Change comment.
1103 * configure.host: Use sysv4, not symmetry, for i[34]86-sequent-sysv4*.
1104
ec099b4b
ILT
1105Fri Mar 25 17:10:45 1994 Ian Lance Taylor ([email protected])
1106
a3a33af3 1107 Changes to support linker relaxing of embedded MIPS PIC code to
471c3c3f 1108 use a five instruction sequence for function calls which are out of
a3a33af3
ILT
1109 range of the bal instruction.
1110 * libecoff.h (struct ecoff_section_tdata): Define.
1111 (ecoff_section_data): Define.
1112 (ecoff_bfd_relax_section): Don't define.
1113 * ecoff.c (ecoff_final_link_debug_accumulate): Don't read or free
1114 the debugging information if it has already been read.
1115 (ecoff_indirect_link_order): Handle _cooked_size being different
1116 from _raw_size. Don't reread the contents or the relocs if they
1117 have already been read in.
1118 * coff-mips.c (mips_howto_table): Change bitsize of PCREL16 from
1119 18 to 16.
1120 (PCREL16_EXPANSION_ADJUSTMENT): Define.
1121 (mips_relocate_refhi): Take adjust argument.
1122 (mips_relocate_section): Handle reloc offsets stored in section
1123 used_by_bfd field. Call mips_relax_pcrel16 to handle details of
1124 expanding an out of range PCREL16. Keep trace of adjustments
1125 required by expansions. Set s and unset h when converting a reloc
1126 from undefined to section. Change handling of PC relative relocs:
1127 if against a section, they are correct in the object file, if
1128 against an external symbol they are pcrel_offset.
1129 (mips_relax_section): New function.
1130 (mips_relax_pcrel16): New function.
1131 (ecoff_bfd_relax_section): Define.
1132 * coff-alpha.c (ecoff_bfd_relax_section): Define.
1133 * ecofflink.c (bfd_ecoff_debug_accumulate): Handle adjustments
1134 built by mips_relax_section when writing out addresses.
1135 * elf32-mips.c (mips_elf_read_ecoff_info): Clear adjust field.
1136
ec099b4b
ILT
1137 * aoutx.h (NAME(aout,find_nearest_line)): The caller expects
1138 functionname_ptr to be set to a symbol name, so prepend
1139 symbol_leading_char.
1140
47e70c54
SC
1141Thu Mar 24 11:33:46 1994 Steve Chamberlain ([email protected])
1142
1143 * coff-h8300.c (h8300_reloc16_extra_cases): Add relaxing info
1144 for 16bit relative branches.
1145 * coff-h8500.c (r_high8, r_low16, r_high16): Don't complain on
1146 overflow.
1147
9d7f682f
JL
1148Thu Mar 24 09:21:13 1994 Jeffrey A. Law ([email protected])
1149
1150 * som.c (som_bfd_prep_for_ar_write): Ignore non-SOM objects.
1151 (som_bfd_ar_write_symbol_stuff, som_write_armap): Likewise.
1152
1153Wed Mar 23 14:29:31 1994 David J. Mackenzie ([email protected])
1154
1155 * netbsd386.c (N_SET_FLAGS): Delete the old definition.
1156
456961d1
ILT
1157Wed Mar 23 14:58:44 1994 Ian Lance Taylor ([email protected])
1158
1159 Clean up the relaxing code for the new linker.
1160 * targets.c (_bfd_relax_section): Take boolean *again argument
1161 rather than asymbol list.
1162 * bfd.c (bfd_relax_section): Change name of fourth argument from
1163 symbols to again.
1164 * reloc.c (bfd_generic_relax_section): Take boolean *again
1165 argument rather than asymbol list. Always return true.
1166 * bout.c: Include genlink.h.
1167 (aligncode, perform_slip): Declare.
1168 (perform_slip): Take BFD argument rather than asymbol list.
1169 Changed all callers. Get the symbols from the BFD. Change the
1170 hash table entry value as well as the symbol value.
1171 (abs32code): Take BFD argument rather than asymbol list. Changed
1172 all callers.
1173 (aligncode): Likewise.
1174 (b_out_relax_section): Take boolean *again argument rather than
1175 asymbol list. Only return false if an error occurred. Set *again
1176 to false. Get symbols from BFD.
1177 * reloc16.c: Include genlink.h.
1178 (bfd_perform_slip): Take BFD argument rather than asymbol list.
1179 Get the symbols from the BFD. Change the hash table entry value
1180 as well as the symbol value.
1181 (bfd_coff_reloc16_relax_section): Take boolean *again argument
1182 rather than asymbol list. Only return false if an error occurred.
1183 Set *again to false. Get symbols from BFD.
1184 * coffcode.h (bfd_coff_backend_data): Change
1185 _bfd_coff_reloc16_estimate to take BFD argument rather than
1186 asymbol list.
1187 (bfd_coff_reloc16_estimate): Corresponding change.
1188 (dummy_reloc16_estimate): Corresponding change.
1189 * libcoff-in.h (bfd_coff_reloc16_relax_section): Change
1190 declaration to take boolean * rather than asymbol list.
1191 (bfd_perform_slip): Change declaration to take BFD rather than
1192 asymbol list.
1193 * coff-h8300.c (h300_reloc16_estimate): Take BFD argument rather
1194 than asymbol list. Changed calls to bfd_perform_slip.
1195 * bfd-in2.h: Rebuilt.
1196 * libbfd.h: Rebuilt.
1197 * libcoff.h: Rebuilt.
1198 * Makefile.in: Rebuilt dependencies.
1199
1200 * genlink.h (_bfd_generic_link_get_symbols): Define.
1201 (_bfd_generic_link_get_symcount): Define.
1202 * linker.c (generic_link_read_symbols): New function.
1203 (generic_link_add_object_symbols): Use it. Use
1204 _bfd_generic_link_get_symbols and _bfd_generic_link_get_symcount
1205 to get the symbols from the BFD.
1206 (generic_link_check_archive_element): Likewise.
1207 (_bfd_generic_final_link): Likewise.
1208 (_bfd_generic_link_output_symbols): Likewise.
1209 (default_indirect_link_order): Likewise.
1210 (generic_link_add_symbol_list): Store pointer to hash table entry
1211 in asymbol udata field.
1212
4335ce64
ILT
1213Tue Mar 22 13:09:44 1994 Ian Lance Taylor ([email protected])
1214
c031ba0b
ILT
1215 * coff-mips.c (mips_howto_table): Add entry for new MIPS_R_PCREL16
1216 reloc, used in embedded PIC code.
1217 (mips_adjust_reloc_in): Change sanity check to permit new reloc.
1218 (mips_bfd_reloc_type_lookup): Turn BFD_RELOC_16_PCREL_S2 into
1219 MIPS_R_PCREL16.
1220
4335ce64
ILT
1221 * elf32-mips.c (mips_elf_final_link): Account for link_order
1222 relocs when allocating space for relocations. Set SEC_RELOC flag
1223 for any section which has relocs. Handle link_order relocs in
1224 link_order loop. Use _bfd_generic_link_add_symbols_collect for
1225 add_symbls entry point.
1226
1227 * linker.c (_bfd_generic_final_link): Set reloc_count to 0 before
1228 counting relocs. Set SEC_RELOC flag for any section which has
1229 relocs.
1230
1231 * linker.c (_bfd_default_link_order): Handle bfd_data_link_order.
1232
1233 * linker.c (_bfd_generic_link_add_symbols): Just call
1234 generic_link_add_symbols.
1235 (_bfd_generic_link_add_symbols_collect): New function, like
1236 _bfd_generic_link_add_symbols but also collect constructors and
1237 destructors by name as collect2 does.
1238 (generic_link_add_symbols): New function, like old
1239 _bfd_generic_link_add_symbols but with collect argument.
1240 (generic_link_add_object_symbols): Take collect argument.
1241 (generic_link_check_archive_element_no_collect): New function.
1242 (generic_link_check_archive_element_collect): New function.
1243 (generic_link_check_archive_element): Take collect argument.
1244 (generic_link_add_symbol_list): Take collect argument.
1245 (_bfd_generic_link_add_one_symbol): Rename constructor argument to
1246 collect.
1247 * libbfd-in.h (_bfd_generic_link_add_symbols_collect): Declare.
1248 * libbfd.h: Rebuilt.
1249
9d92fe0a
JL
1250Tue Mar 22 10:04:00 1994 Jeffrey A. Law ([email protected])
1251
1252 * archive.c (bfd_construct_extended_name_table): Use ar_padchar
1253 for first character in an extended name.
1254 (_bfd_write_archive_contents): If ar_padchar == '/', then use
1255 "//" as the name of the special archive member holding the
1256 extended name table.
1257
f1cca647
ILT
1258Mon Mar 21 12:28:19 1994 Ian Lance Taylor ([email protected])
1259
1260 Support for link_order types which generate relocs in order to
1261 support -Ur in the linker.
1262 * linker.c (generic_link_add_symbol_list): Remove bitsize argument
1263 from call to _bfd_generic_link_add_one_symbol.
1264 (_bfd_generic_link_add_one_symbol): Remove bitsize argument.
1265 Don't pass bitsize to constructor call back. Pass BFD_RELOC_CTOR
1266 instead of bitsize to add_to_set call back.
1267 (_bfd_generic_final_link): Account for link_order relocs when
1268 allocating space for relocations. Handle them in link_order loop.
1269 (_bfd_generic_reloc_link_order): New function.
1270 (_bfd_default_link_order): If a reloc_link_order is seen here,
1271 abort.
1272 (_bfd_count_link_order_relocs): New function.
1273 * libbfd-in.h (_bfd_generic_link_add_one_symbol): Remove bitsize
1274 argument from declaration.
1275 (_bfd_generic_reloc_link_order): Declare.
1276 (_bfd_count_link_order_relocs): Declare.
1277 * libbfd.h: Rebuilt.
1278 * aoutx.h (aout_link_add_symbols): Remove bitsize argument from
1279 call to _bfd_generic_link_add_one_symbol.
1280 (NAME(aout,final_link)): Account for link_order relocs when
1281 allocating space for relocations. Handle them after handling all
1282 input BFDs.
1283 (aout_link_reloc_link_order): New function.
1284 * ecoff.c (ecoff_link_add_externals): Remove bitsize argument from
1285 call to _bfd_generic_link_add_one_symbol.
1286 (ecoff_bfd_final_link): Account for link_order relocs when
1287 allocating space for relocations. Handle them in link_order loop.
1288 (ecoff_link_write_external): Set the storage class of a defined
1289 linker created symbol based on the section it is in. Correct
1290 bfd_link_hash_weak case to use .sc rather than .st.
1291 (ecoff_reloc_link_order): New function.
1292 * coff-alpha.c (alpha_bfd_reloc_type_lookup): Handle
1293 BFD_RELOC_CTOR.
1294 * coff-mips.c (mips_bfd_reloc_type_lookup): Likewise.
1295
1296 * sunos.c (sunos_read_dynamic_info): Remove unused locals dynsym
1297 and buf.
1298
1299 * cisco-core.c (cisco_core_file_p): Only pass one argument to
1300 bfd_zmalloc. Free a pointer, not a union.
1301 (cisco_bfd_is_local_label): Correct cast from asection to asymbol.
1302
142f59f4
JL
1303Sun Mar 20 09:24:36 1994 Jeffrey A. Law ([email protected])
1304
17e64ad3
JL
1305 * bfd/som.c (som_begin_writing): Fix thinko (off by one error).
1306
c2e1207b
JL
1307 * som.c (bfd_section_from_som_symbol): Only to do the value
1308 comparison for function symbols within executables.
1309
c05d2d43
JL
1310 * som.c (bfd_section_from_som_symbol): Renamed from
1311 som_section_from_subspace_index. Pass in a native SOM symbol.
1312 For executables, iterate through the sections to find out
1313 which contains the symbol's address rather than using the
1314 symbol_info field. (symbol_info has a different meaning for
1315 dynamicly linked executables.)
1316
61bcbf40
JL
1317 * trad-core.c (trad_unix_core_file_p): Don't pass abfd to
1318 bfd_zmalloc.
1319
517a6af6
JL
1320 * som.c (som_begin_writing): Fix braino (one call to align
1321 space/subspace data was done unconditionally rather than
1322 just for executables.)
1323
142f59f4
JL
1324 * som.c (som_begin_writing): Align text in all executables to
1325 make HPUX kernel happy. Fixes strip/objcopy for shared
1326 executables.
1327
00806436
JL
1328Sat Mar 19 07:06:59 1994 Jeffrey A. Law ([email protected])
1329
1330 * som.c (som_begin_writing): Account for alignment needs of
1331 subspaces too when writing executables. Never request a negative
1332 bss size. Fixes some problems with demand paged executables,
1333 still having problems with pure executables and shared executables.
1334
f3f29240
JK
1335Fri Mar 18 19:12:47 1994 Jim Kingdon ([email protected])
1336
1337 * trad-core.c (trad_unix_core_file_p): Call bfd_zmalloc not
1338 bfd_zalloc for rawptr, because later on we may call free, not
1339 bfd_release, on it.
1340
1341 * bfd.c (struct _bfd): Add cisco_core_struct to tdata union.
1342 * libbfd.c (bfd_read, bfd_seek): Add comments regarding errors.
1343 * cisco-core.c: New file.
47dc9b52
JK
1344 * Makefile.in: Change accordingly.
1345 * configure.in: Recognize cisco_core_vec.
1346 * config/m68k-aout.mt (SELECT_VECS): Add cisco_core_vec.
1347 * targets.c: Add cisco_core_vec.
f3f29240
JK
1348 * bfd-in2.h: Rebuilt.
1349
3b499495
JL
1350Fri Mar 18 18:13:49 1994 Jeffrey A. Law ([email protected])
1351
15766917
JL
1352 * som.h (som_copyable_section_data_struct): New structure
1353 containing all the private section information which needs
1354 to be copied from input section to output section during
1355 objcopy or strip.
1356 (som_section_data_struct): Remove several fields now in
1357 som_copyable_section_data_struct. Make the space and
1358 subspace dictionaries be pointers (to save space when
1359 only reading objects).
1360
1361 * som.c (bfd_som_set_section_attributes): Now returns a boolean;
1362 some references changed. Allocate a copyable data stucture if
1363 none exists. Store info into the copyable data structure.
1364 (bfd_som_set_subsection_attributes): Likewise.
1365 (som_is_space, som_is_subspace, som_is_container): New functions.
1366 Use these instead of directly accessing private data.
1367 (som_prep_headers): Allocate space and subspace headers here.
1368 Fill in some fields in the space/subspace headers from the
1369 copyable data.
1370 (som_bfd_copy_private_section_data): Only copy the stuff
1371 that we really need to make objcopy and strip work. Allocate
1372 the copy_data structure for the output bfd before copying.
1373
4359a7ef
JL
1374 * som.h (struct som_exec_data): New structure to hold exec
1375 info that must be preserved when running objcopy/strip.
1376 (struct somdata): Add new "exec_data" field and accessor
1377 macro. Add some comments on how the various fields are used.
1378 (som_section_data_struct): Make is_space and is_subspace bitfields.
1379 Delete unused subspace_index. All references now use the
1380 target_index field within the section structure itself.
1381
1382 * som.c (make_unique_section): Delete unused declaration.
1383 (som_bfd_copy_private_bfd_data): New function.
1384 (som_object_setup): Allocate space for and save exec information
1385 that needs to be copied during objcopy/strip.
1386 (som_mkobject): Do not allocate space for a file header here.
1387 It is not used when only reading SOM objects.
1388 (som_prep_headers): Allocate space for and attach a file header
1389 to the output bfd. For executables, use the saved system_id
1390 value rather than trying to guess the right value. Do not abort
1391 wwhen setting file_hdr->entry* for executables.
1392 (som_begin_writing): For executables, set the exec_entry and
1393 exec_flags fields.
1394 (som_copy_private_backend_section_data): Always return a value.
1395
08b3c4f9
JL
1396 * libhppa.h (PA_PAGESIZE): Define.
1397
1398 * som.c (SOM_ALIGN): Define.
1399 (som_begin_writing): If writing an executable, initialize all
1400 fields in the exec header to zero. Update fields in the exec
1401 header as sizes of loadable subspaces are computed. Carefully
1402 preserve alignments when building executables. Actually write the
1403 exec after all the fields are filled in.
1404
3b499495
JL
1405 * Better long-filename handling. Reads SOM ABI compliant extended
1406 names, but doesn't quite write compliant extended names yet.
1407 * som.c (som_slurp_extended_name_table): Delete function. The
1408 generic code will handle things correctly.
1409 (som_slurp_armap): Seek to the beginning of the next member.
1410 (normalize): New function.
1411 (som_bfd_ar_write_symbol_stuff): Take the size of the extended
1412 name table into account when computing the file offsets in the
1413 SOM dictionary. Make sure to align to an even boundary.
1414 (som_write_armap): Initialize the checksum to zero.
1415 (ar_maxchars): Fix. Opps.
1416
ff978570
KR
1417Fri Mar 18 20:35:24 1994 Ken Raeburn ([email protected])
1418
1419 * aoutx.h (reloc_type_lookup): Handle BFD_RELOC_CTOR on a 64-bit
1420 machine. Handle BFD_RELOC_SPARC13 and BFD_RELOC_SPARC_BASE13.
1421
6f4aac6c
KR
1422Thu Mar 17 18:26:46 1994 Ken Raeburn ([email protected])
1423
5a66538b
KR
1424 * bfd-in.h (BFD_VERSION): Use @VERSION@.
1425 * Makefile.in (bfd.h): Replace it with contents of VERSION file.
1426 * bfd-in2.h: Regenerated.
1427
6f4aac6c
KR
1428 * trad-core.c (trad_unix_bfd_is_local_label): Fixed typo where
1429 this was also named trad_unix_bfd_copy_private_bfd_data.
1430
8eb5d4be
JK
1431Thu Mar 17 10:37:07 1994 Jim Kingdon ([email protected])
1432
1433 * aoutx.h, elfcode.h, coff-alpha.c, bout.c, ecoff.c, ecofflink.c,
1434 elf32-hppa.c, elf32-mips.c, linker.c, som.c, sunos.c: If malloc(0)
1435 returns NULL, it is not an error. It's possible that some of
1436 these checks are not necessary (because the size can never be
1437 zero), but putting in the checks is the conservative thing to do
1438 in light of the fact that some of these malloc calls replaced
1439 unchecked alloca calls, in which a zero argument would work fine.
1440
1c6042ee
ILT
1441Thu Mar 17 11:44:45 1994 Ian Lance Taylor ([email protected])
1442
7838792b
ILT
1443 * osf-core.c (osf_core_bfd_copy_private_bfd_data): Remove
1444 duplicate definition.
1445 (osf_core_bfd_is_local_label): Define.
1446
4bbf7a49
ILT
1447 * reloc.c (bfd_generic_get_relocated_section_contents): Don't fail
1448 if malloc (0) fails. bfd_canonicalize_reloc returning 0 is not a
1449 failure indication, it merely means there are no relocs.
1450
1c6042ee
ILT
1451 * elfcode.h (NAME(bfd_elf,write_object_contents)): Don't use space
1452 after NAME, since SunOS /bin/cc can't handle it.
1453
ae6710bc
DM
1454Wed Mar 16 16:43:33 1994 David J. Mackenzie ([email protected])
1455
1456 * netbsd386.c (N_SET_FLAGS): Don't nuke the machine id field.
1457 From [email protected] (Tasuki Hirata).
1458
1459Wed Mar 16 07:55:54 1994 Jim Kingdon ([email protected])
1460
1461 * aoutf1.h (4 places): Use a simple #if on ARCH_SIZE, rather than
1462 all that convoluted stuff with NAME, CAT3, etc. The convoluted
1463 stuff broke for SunOS4 /bin/cc (due to DEFUN elimination, I guess).
1464
35ac8aac
JL
1465Wed Mar 16 00:02:05 1994 Jeffrey A. Law ([email protected])
1466
1467 * som.c (som_prep_for_fixups): Detect section symbols based
1468 on either the lack of private data or the symbol flags. Do not
1469 munge section symbol names anymore -- they no longer confuse GDB.
1470 (som_begin_writing): Leave space for an exec header if writing
1471 an executable.
1472 (som_slurp_symbol_table): Recognize both forms of section symbol
1473 names "L$0\002" and "$<FOO>$". Change the name of "L$0\002"
1474 section symbols to be the name of the section they represent.
1475 Debugging symbols begin with "L$0\001", not just "L$".
1476
5b3577cb
JL
1477Tue Mar 15 22:58:28 1994 Jeffrey A. Law ([email protected])
1478
1479 * bfd-in2.h, libbfd.h, libcoff.h: Rebuilt.
1480
1481 * bfd-in.h (JUMP_TABLE): Add new entries to the jump table
1482 for bfd_copy_private_section_data, bfd_copy_private_bfd_data,
1483 and bfd_is_local_label.
1484
1485 * targets.c: Add new entries to the bfd_target structure.
1486
1487 * bfd.c (bfd_copy_private_bfd_data): New definition.
1488
1489 * section.c (bfd_copy_private_section_data): New definition.
1490
1491 * syms.c (bfd_is_local_label): New definition.
1492
1493 * libbfd-in.h (bfd_generic_is_local_label): Declare.
1494
1495 * libbfd.c (bfd_generic_is_local_label): New function.
1496
1497 * *-core.c: Provide default definitions for new functions in
1498 the target vector which all point to bfd_false.
1499
1500 * aout-target.h, coffcode.h, elf32-target.h elf64-target.h, ieee.c
1501 libaout.h, libecoff.h, nlm-target.h, oasys.c, srec.c, tekhex.c
1502 Default new vectors for copying private backend data to bfd_true.
1503 Default new vector for determining if a symbol is a local label
1504 to bfd_generic_is_local_label.
1505
1506 * som.c (som_bfd_copy_private_section_data): New function.
1507 (som_bfd_is_local_label): New function.
1508 (som_bfd_copy_private_bfd_data): For now default to bfd_true.
1509
1510 * elf32-hppa.c (hppa_elf_is_local_label): New function.
1511
0069bd06
ILT
1512Tue Mar 15 23:55:47 1994 Ian Lance Taylor ([email protected])
1513
1514 * cf-m68klynx.c (CALC_ADDEND): Use _bfd_m68klynx_howto_table.
1515
57a1867e
DM
1516Tue Mar 15 04:41:13 1994 David J. Mackenzie ([email protected])
1517
1518 * Most files:
1519 Replace DEFUN and DEFUN_VOID with K&R-style function definition.
1520 Indent some of them to GNU standards.
1521
1522 * aout32.c, archures.c, core.c, cpu-h8300.c, cpu-i960.c,
1523 cpu-m68k.c, cpu-m88k.c, cpu-mips.c, cpu-vax.c, ctor.c, demo64.c,
1524 elf32-hppa.h, gen-aout.c, host-aout.c, init.c, libhppa.h,
1525 libieee.h, liboasys.h, newsos3.c, som.h, stab-syms.c, sunos.c:
1526 Update copyright years.
1527
ec743cef
JL
1528Mon Mar 14 11:41:23 1994 Jeffrey A. Law ([email protected])
1529
baef2065
JL
1530 * som.c (som_prep_for_fixups): A relocation involving the section
1531 symbol for the *ABS* section is really a relocation involving
1532 no symbol.
1533 (som_slurp_symbol_table): Do not set BSF_GLOBAL or BSF_EXPORT for
1534 undefined symbols. Correctly distinguish between debugger symbols
1535 and section symbols.
1536
b486fb13
JL
1537 * som (setup_sections): Set SEC_DEBUGGING and the section attributes
1538 for spaces and subspaces.
1539
4c9db344
JL
1540 * som.c (som_bfd_count_ar_symbols): Fix typo.
1541
ec743cef
JL
1542 * som.c (som_object_setup): Set EXEC_P, D_PAGED, WP_TEXT, and
1543 HAS_RELOC based on the object's magic number.
1544 (make_unique_section): Delete function. BFD and its users are
1545 prepared to handle multiple sections with the same name.
1546 (setup_sections): Allocate space on the BFD's obstack to hold
1547 section names. Use bfd_make_setion_anyway rather than the
1548 obsolete make_unique_section.
1549 (som_prep_headers): Choose the correct SOM magic number based
1550 on the BFD's flags.
1551 (som_bfd_fill_in_ar_symbols): Return false, not NULL on error.
1552
45ccfd58
ILT
1553Sat Mar 12 09:46:09 1994 Ian Lance Taylor ([email protected])
1554
1555 * elf32-ppc.c: Renamed from elf32-powerpc.c.
1556 start-sanitize-powerpc-netware
1557 * nlm32-ppc.c: Renamed from nlm32-powerpc.c.
1558 end-sanitize-powerpc-netware
1559 * Makefile.in, configure.in: Corresponding changes.
1560
92177c52
ILT
1561Fri Mar 11 22:27:19 1994 Ian Lance Taylor ([email protected])
1562
1563 * elf32-powerpc.c: Extensive changes to update to preliminary ABI.
1564
3e0b5554
PS
1565Fri Mar 11 00:34:59 1994 Peter Schauer ([email protected])
1566
1567 * sunos.c (sunos_read_dynamic_info): Assume that dynamic info
1568 is always located at the start of the data section to allow
1569 recovery of the dynamic info from a stripped executable.
1570 * ecoff.c (ecoff_styp_to_sec_flags): Handle STYP_PDATA, STYP_XDATA
1571 and STYP_COMMENT.
1572
80425e6c
JK
1573Wed Mar 9 17:17:53 1994 Jim Kingdon ([email protected])
1574
1575 * libbfd-in.h: Remove alloca cruft. It was missing some necessary
1576 cruft (like the #pragma alloca for AIX).
1577 In addition to that problem, the C alloca calls xmalloc, which
1578 means checking for being out of memory can't work right. The
1579 following changes remove all uses of alloca from BFD.
1580 * hosts/solaris2.h: Remove alloca cruft.
1581 * som.c: Replace alloca with a fixed size auto array.
1582 * aoutx.h, elfcode.h, nlmcode.h, bout.c, coff-alpha.c, ecoff.c,
d7fb4531
JK
1583 ecofflink.c, elf32-hppa.c, elf32-mips.c, linker.c, reloc.c, som.c,
1584 sunos.c: Replace alloca with malloc and appropriate error checking and
80425e6c
JK
1585 freeing.
1586 * linker.c: Replace alloca with obstack_alloc.
1587 * libbfd.h: Rebuilt.
1588
1404c365
ILT
1589Tue Mar 8 12:10:38 1994 Ian Lance Taylor ([email protected])
1590
1591 * coff-mips.c (mips_relocate_section): Handle MIPS_R_LITERAL like
1592 MIPS_R_GPREL.
1593
25677b5b
PS
1594Sat Mar 5 14:08:54 1994 Peter Schauer ([email protected])
1595
1596 * elf32-hppa.h, elfcode.h: Replace uses of Elf*_Half, Elf*_Word,
1597 Elf*_Off typedefs by their expansion, the typedefs have been
1598 removed from include/elf/internal.h.
802f4fe2
PS
1599 * elfcode.h (bfd_section_from_shdr): Handle SHT_DYNAMIC section like
1600 SHT_PROGBITS section.
25677b5b 1601
7b5f6e48
JL
1602Thu Mar 3 20:03:39 1994 Jeffrey A. Law ([email protected])
1603
1604 * som.h (_PA_RISC_ID): Treat HOST_HPPAOSF just like HOST_HPPABSD.
1605
baf200d4
JK
1606Wed Mar 2 13:28:06 1994 Jim Kingdon ([email protected])
1607
1608 * configure.host: Recognize i[34]86-sequent-*.
1609
1610 * trad-core.c (trad_unix_core_file_p): A non-zero, not zero,
1611 return from bfd_seek indicates an error.
1612 New macro TRAD_CORE_DSIZE_INCLUDES_TSIZE to replace
1613 TRAD_CORE_STACK_OFFSET.
1614 * hosts/symmetry.h: Define TRAD_CORE_DSIZE_INCLUDES_TSIZE and
1615 TRAD_CORE_USER_OFFSET but not HOST_STACK_OFFSET.
1616
44fd6622
JL
1617Wed Mar 2 11:57:03 1994 Jeffrey A. Law ([email protected])
1618
4e64845c
JL
1619 * som.[ch]: Do not include libhppa.h in som.c, instead include
1620 it in som.h.
1621
1622 * elf32-hppa.[ch]: Do not include libhppa.h in elf32-hppa.c, instead
1623 include it in elf32-hppa.h.
1624
98ecc945
JL
1625 * som.c (log2): Return -1 on error rather than aborting.
1626 (setup_sections): Bubble up an error from log2.
1627
44fd6622
JL
1628 * Changes to make HP C compiler happy in both traditional
1629 and ANSI mode.
1630 * som.c (hppa_som_gen_reloc_type): Use correct enum type for
1631 field parameter.
1632 (bfd_som_set_section_attributes): Use unsigned int rather than
1633 unsigned char to avoid GNU-C extensions.
1634 (bfd_som_attach_aux_hdr): Return a boolean to indicate success
1635 or failure rather than aborting on failure.
1636
1637 * som.h (bfd_som_set_section_attributes): Fix prototype to match
1638 som.c changes.
1639 (bfd_som_attach_aux_hdr): Add prototype.
1640 (hppa_som-gen_reloc_type): Likewise.
1641
1642 * elf32-hppa.c: Add a couple casts to make HP compiler happy.
1643 (hppa_look_for_stubs_in_section): Do not return false on failure
1644 until rest of code is ready to handle it. Abort for now.
1645
d1f8b181
JK
1646Tue Mar 1 18:33:59 1994 Jim Kingdon ([email protected])
1647
1648 * bfd-in2.h: Rebuilt.
1649
85cc33c7
KH
1650Tue Mar 1 13:06:53 1994 Kung Hsu ([email protected])
1651
bb37e716
KH
1652 * i386os9k.c: use new functions bfd_set_error and bfd_get_error.
1653 * Makefile.in: delete an extra blank.
85cc33c7
KH
1654 * configure.in : Add i396os9k_vec.
1655
2f88343d
KH
1656Mon Feb 28 15:41:01 1994 Kung Hsu ([email protected])
1657
5143c305
KH
1658 * config.bfd : Add i386-os9k.
1659 * config/i386-os9k.mt : Newly add os9k target makefile.
1660
2f88343d
KH
1661 * i386os9k.c : new file to handle os9k format bfd.
1662 * Makefile.in : Handle new file i386os9k.c
2f88343d
KH
1663 * targets.c : Add bfd_target_os9k_flavour and i386os9k_vec.
1664 * cache.c : Initialize cache_sentinel to 0.
1665
6e58a4e5
JL
1666Sun Feb 27 16:30:55 1994 Jeffrey A. Law ([email protected])
1667
f3b477be
JL
1668 * elf32-hppa.c (mismatches, retval_mismatches): Fix mismatch
1669 action in case where caller specified no argument relocation.
1670 (hppa_elf_build_linker_stub): Try again to get the sym_ptr_ptr
1671 right in the original relocation and the stub's relocation.
1672
6e58a4e5
JL
1673 * elf32-hppa.h (hppa_look_for_stub_in_section): Fix typo. Delete
1674 unused symbols argument.
1675
1676 * elf32-hppa.c (hppa_elf_stub_reloc): Accept asymbol ** rather
1677 than asymbol * for original target symbol. All callers changed.
1678 Set reloc->sym_ptr_ptr appropriately.
1679 (hppa_elf_build_linker_stub): Set reloc->sym_ptr_ptr correctly.
1680 (hppa_elf_look_for_stubs_in_section): No longer need symbols
1681 argument. Use the output symbols when canonicalizing the relocs,
1682 creating them if necessary.
1683
1684 * linker.c (_bfd_generic_link_output_symbols): Do not
1685 rebuild/clobber the output symbols if they already exist.
1686
4c8d6c9f
SS
1687Sun Feb 27 15:22:36 1994 Stan Shebs ([email protected])
1688
fdfe2d14
SS
1689 * targets.c (BFD_SEND, BFD_SEND_FMT): Add debugging versions that
1690 check all the pointer dereferences. Enabled via DEBUG_BFD_SEND.
1691 * bfd-in2.h: Rebuilt.
1692
4c8d6c9f
SS
1693 * srec.c (hex_value): Always set to a size of 256 bytes.
1694 (srec_init): Cosmetic changes.
1695
e08b9ad7
JL
1696Sun Feb 27 11:18:47 1994 Jeffrey A. Law ([email protected])
1697
1698 * elf32-hppa.c: Second half of major cleanup. More comments,
1699 PARAMize and staticize rest of functions. Delete unused
1700 functions. Delete unused/unnecessary arguments to some functions.
1701 Group static vars together. Abort for bad errors until we have
1702 error code propogation working. Work on spacing and indention.
1703 Add FIXMEs for unresolved problems. Use enums rather than
1704 #defines for lots of things. Merge two functions which build
1705 linker stubs into a single function (so they can easily share a
1706 ton of common code).
1707
68241b2b
ILT
1708Sat Feb 26 10:00:45 1994 Ian Lance Taylor ([email protected])
1709
1710 * reloc.c (_bfd_relocate_contents): Adjust handling of overflow to
1711 avoid depending upon right shifts of signed numbers, and to
1712 correct handling of src_mask with lower bits zero.
1713
1714 * aoutx.h, archive.c: Add casts to avoid warnings from SVR4 cc.
1715 * ecoff.c, ecofflink.c, ecoffswap.h, srec.c: Likewise.
1716 * elf32-i386.c: Likewise.
1717 * elfcode.h (bfd_section_from_shdr): Make i unsigned; remove old
1718 #if 0 code.
1719 (elf_write_phdrs): Make i unsigned.
1720 (map_program_segments): Make i and n_left unsigned.
1721 (assign_file_positions_except_relocs): Make i unsigned.
1722 (write_shdrs_and_ehdr): Make count unsigned.
1723 (assign_file_positions_for_relocs): Make i unsigned.
1724 (NAME(bfd,elf_write_object_contents)): Make count unsigned.
1725 (section_from_elf_index): Make index argument unsigned.
1726
96db3187
ILT
1727Fri Feb 25 21:34:58 1994 Ian Lance Taylor ([email protected])
1728
1729 * elfcode.h: Don't include assert.h.
1730 (swap_out_syms): Use BFD_ASSERT rather than assert.
1731
1732 * linker.c (_bfd_generic_link_write_global_symbol): Add missing
1733 break in switch.
1734
1735 * hosts/i386v4.h (qsort, strtol): Remove incorrect and useless
1736 declarations.
1737
d6439785
JL
1738Fri Feb 25 16:35:57 1994 Jeffrey A. Law ([email protected])
1739
f5bfdacd
JL
1740 * libhppa.h (hppa_rebuild_insn): Moved here from elf32-hppa.c.
1741
1742 * elf32-hppa.h (elf_hppa_tc_symbol): Add new arguments.
1743 (elf_hppa_tc_make_sections): Likewise.
1744 (elf_hppa_final_processing): Add extern decl.
1745
1746 * elf32-hppa.c: First half of major cleanup. Add/cleanup lots of
1747 comments. PARAMize some static functions. Delete unused functions.
1748 Delete unused/unnecessary arguments to many functions. Group
1749 static vars together. Collapse common case statements together
1750 in many places. Use default case when possible instead of listing
1751 each case separately. Abort for bad errors until we get error
1752 code propogation working. Work on spacing and indention problems.
1753 Add FIXMEs for some unresolved problems. Delete hopelessly broken
1754 COMPLEX relocation support (it's never used anyway).
1755 (hppa_elf_rebuild_insn): Delete. Moved into libhppa.h.
1756 (elf_hppa_tc_symbol): Accept and use new arguments (symext chains).
1757 (elf_hppa_tc_make_sections): Likewise.
1758
43ebdfcf
JL
1759 * format.c (bfd_check_format_matches): Initialize matching_vector
1760 to keep gcc -Wall quiet.
1761
1762 * elfcode.h (elf_slurp_reloca_table): Fix typo.
1763
d6439785
JL
1764 * som.c (som_get_symtab_upper_bound): Use "sizeof (asymbol *)"
1765 not "sizeof (som_symbol_type *)".
1766
1767 * elfcode.h (elf_get_symtab_upper_bound): Use "sizeof (asymbol *)"
1768 not "sizeof (asymbol"). Opps.
1769
fbb8fe5c
ILT
1770Fri Feb 25 13:19:04 1994 Ted Lemon ([email protected])
1771
1772 * bfd.c (bfd_get_gp_size): Can't return gp value on an archive.
1773 (bfd_set_gp_size): Can't set gp value on an archive.
1774
5e808126
SC
1775Fri Feb 25 12:57:00 1994 Steve Chamberlain ([email protected])
1776
1777 * srec.c (pass_over): Don't skip too many characters when
1778 end of line seen.
1779
626f883f
ILT
1780Fri Feb 25 11:41:57 1994 Ian Lance Taylor ([email protected])
1781
1782 * ecoff.c (ecoff_sizeof_headers): Align result to 16 byte
1783 boundary.
1784
1785Thu Feb 24 07:13:22 1994 Jeffrey A. Law ([email protected])
1786
1787 * som.c (som_bfd_derive_misc_symbol_info): Derive symbol_info
1788 field for absolute symbols in the same manner as undefined
1789 and common symbols.
1790
a69b39f0
PS
1791Thu Feb 24 04:29:19 1994 Peter Schauer ([email protected])
1792
1793 * elfcode.h (elf_core_file_p): Check for core file e_machine match
1794 like in elf_object_p.
1795
2e7b92cf
JL
1796Wed Feb 23 18:28:37 1994 Jeffrey A. Law ([email protected])
1797
1798 * elfcode.h (alloca): Delete declaration.
4f42757e
JL
1799
1800 * som.c (som_prep_headers): Use CPU_PA_RISC1_0 for magic
1801 number rather than HP9000S800_ID. Note som.c is careful
1802 to make sure CPU_PA_RISC1_0 is always defined.
1803
891dc727
SS
1804Mon Feb 21 10:12:02 1994 Stan Shebs ([email protected])
1805
1806 * Makefile.in (targets.o, archures.o): Use ALL_CFLAGS to supply
1807 flags to explicit compile actions.
1808
22a71fef
ILT
1809Mon Feb 21 09:50:06 1994 Ian Lance Taylor ([email protected])
1810
2f0deb19
ILT
1811 * ecofflink.c (ecoff_write_symhdr): Set symhdr->magic here.
1812 * ecoff.c (ecoff_write_object_contents): Make sure .bss section
1813 ends on a page boundary if there is no symbol table.
1814 (ecoff_bfd_final_link): Don't set symhdr->magic here.
1815
aaca79a8
ILT
1816 * hosts/hp300.h: Include <stdlib.h>; don't declare free.
1817
2ab0b7f3
ILT
1818 * som.c (som_bfd_count_ar_symbols): Use a pointer and alloca
1819 rather than an array of variable size.
1820 (som_bfd_fill_in_ar_symbols): Likewise.
1821 (som_bfd_ar_write_symbol_stuff): Likewise.
1822
22a71fef
ILT
1823 * coff-alpha.c (alpha_relocate_section): Rewrite mask and shift
1824 operation to avoid OSF 1.3 cc bug.
1825 * ecoff.c (ecoff_write_object_contents): Make text_size, data_size
1826 and bss_size bfd_size_type instead of unsigned long. Make
1827 text_start and data_start bfd_vma instead of unsigned long.
1828 * ecofflink.c (ecoff_add_string): Remove incorrect cast of return
1829 value.
1830
037ce95a
ILT
1831Sun Feb 20 16:06:54 1994 Ian Lance Taylor ([email protected])
1832
1833 * linker.c (_bfd_generic_link_add_archive_symbols): Consider
1834 symbols in the order they appear in the archive map.
1835
3a1de3cc
PS
1836Sat Feb 19 03:17:32 1994 Peter Schauer ([email protected])
1837
1838 * coff-alpha.c (reloc_nil): Add forward declaration, add missing
1839 error_message argument.
1840 * coff-sparc.c (bfd_coff_generic_reloc): Add forward declaration,
1841 add missing error_message argument.
1842 * mipsbsd.c (mips_fix_hi16_s): Add forward declaration, add missing
1843 error_message argument.
1844
99ec1f66
ILT
1845Fri Feb 18 11:41:58 1994 Ian Lance Taylor ([email protected])
1846
45ccfd58 1847 start-sanitize-powerpc-netware
99ec1f66 1848 Support for PowerPC NetWare.
92177c52 1849 * nlm32-powerpc.c: New file.
99ec1f66
ILT
1850 * config.bfd (powerpc-*-netware*): New target; use ppc-nlm.
1851 * config/ppc-nlm.mt: New file.
1852 * configure.in (nlm32_powerpc_vec): New target vector; use
1853 nlm32-powerpc.o, nlm32.o, nlm.o.
1854 * targets.c (nlm32_powerpc_vec): Declare.
1855 * Makefile.in (BFD32_BACKENDS): Add nlm32-powerpc.o.
1856 (CFILES): Should add nlm32-powerpc.c, but didn't, because the
1857 dependencies can't be sanitized.
1858 end-sanitize-powerpc-netware
1859
1860 Initial support for PowerPC ELF. Done without an ABI, and
1861 probably to be changed when I get an ABI.
1862 * config.bfd (powerpc-*-sysv4*): New target; use ppc-elf.
1863 * config/ppc-elf.mt: New file.
1864 * configure.in (bfd_elf32_powerpc_vec): New target vector; use
1865 elf32-powerpc.o, elf32.o, elf.o.
1866 * elf32-powerpc.c: New file.
1867 * elfcode.h (prep_headers): Add bfd_arch_powerpc case.
1868 (elf_set_arch_mach): Likewise.
1869 * targets.c (bfd_elf32_powerpc_vec): Declare.
1870 * Makefile.in (BFD32_BACKENDS): Add elf32-powerpc.o.
1871 (CFILES): Add elf32-powerpc.c.
1872 Rebuilt dependencies.
1873
42f62ead
ILT
1874Thu Feb 17 15:29:55 1994 Ian Lance Taylor ([email protected])
1875
1876 * coffgen.c (coff_write_linenumbers): Always return a value.
1877
1878 * elfcode.h (elf_slurp_symbol_table): Handle zero symbols
1879 reasonably. Allocate x_symp using alloca.
1880
1881 * elfcode.h (map_program_segments): ELF program header entries
1882 must be sorted by load address. This used to generate the entries
1883 in reverse order.
1884
1885 * section.c (SEC_IN_MEMORY): Define.
1886 (asection): Rename unused field otheruserdata to contents, and
1887 make it char *.
1888 (bfd_make_section_anyway): Initialize contents field to NULL.
1889 (bfd_get_section_contents): If SEC_IN_MEMORY is set, get section
1890 contents from contents field rather than from file.
1891 * bfd-in2.h: Rebuilt.
1892
d1ad85a6
DM
1893Thu Feb 17 08:30:53 1994 David J. Mackenzie ([email protected])
1894
1895 * bfd.c (bfd_get_error, bfd_set_error): New functions.
1896 (bfd_error): Make static.
1897 (bfd_error_type): Renamed from bfd_ec. Prepend "bfd_error_" to
1898 all values.
1899 * bfd-in2.h: Regenerated.
1900 * aix386-core.c, aout-adobe.c, aout-encap.c, aout-target.h,
1901 aoutf1.h, aoutx.h, archive.c, archures.c,
1902 bfd.c, bout.c, cache.c, coff-alpha.c, coff-mips.c,
1903 coff-rs6000.c, coffcode.h, coffgen.c, core.c, ctor.c,
1904 ecoff.c, ecofflink.c, elf.c, elf32-hppa.c, elf32-mips.c,
1905 elfcode.h, format.c, hash.c, hp300hpux.c, hppabsd-core.c,
1906 i386lynx.c, ieee.c, libbfd.c, libelf.h, linker.c,
1907 lynx-core.c, nlm.c, nlm32-alpha.c, nlm32-i386.c,
1908 nlm32-sparc.c, nlmcode.h, oasys.c, opncls.c, osf-core.c,
1909 ptrace-core.c, reloc16.c, rs6000-core.c, section.c, som.c,
1910 srec.c, sunos.c, syms.c, targets.c, tekhex.c,
1911 trad-core.c: Change callers.
1912
7430a991
JL
1913Tue Feb 15 22:27:27 1994 Jeffrey A. Law ([email protected])
1914
1915 * som.c: Remove FIXMEs for things which have been dealt with.
1916
54196ea1
KR
1917Tue Feb 15 19:39:24 1994 Ken Raeburn ([email protected])
1918
1919 * section.c (bfd_get_section_contents): Since this function reads
1920 unrelocated contents, the section's raw size is always the one to
1921 use for bounds checking.
1922
1923 * linker.c (default_indirect_link_order): In assertion, compare
1924 link_order size field against cooked size, not raw size, of input
1925 section.
1926
1927 * bout.c (b_out_get_reloc_upper_bound): For BSS section, just
1928 return 0.
1929 (aligncode): When shrinking, the addend should be set to the
1930 current offset in the section plus the number of bytes of padding
1931 that will actually be retained.
1932 (b_out_relax_section): If a section contains no relocations, don't
1933 bother processing them.
1934 (b_out_get_relocated_section_contents): Set reloc_done. Assert
1935 that bfd_get_section_contents returns true. Check that relocs are
1936 properly ordered.
1937 (b_out_get_relocated_section_contents, case ALIGNDONE): Assert
1938 that reloc->addend falls between the current source offset and the
1939 raw size of the input section.
1940
1941 * config.bfd: Support i960 vxworks versions > 5.0 with coff, not
1942 bout. Default with no version number is still bout. Support
1943 explicit i960-coff target too.
1944
1945 * bout.c: Changed some indentation, deleted trailing whitespace,
1946 fixed some comments, removed some "#if 1" lines.
1947 (output_addr): New macro.
1948 (calljx_callback, callj_callback, get_value, abs32code, aligncode,
1949 b_out_get_relocated_section_contents): Use it for readability.
1950
c6cdb69a
JL
1951Tue Feb 15 09:00:16 1994 Jeffrey A. Law ([email protected])
1952
1953 * som.c (som_bfd_prep_for_ar_write): Iterate through the SOM
1954 symbols, not the BFD symbols.
1955 (som_bfd_ar_write_symbol_stuff): Likewise.
1956
6e033f86
JL
1957Mon Feb 14 22:55:20 1994 Jeffrey A. Law ([email protected])
1958
24a1f6a0
JL
1959 * som.c (som_slurp_symbol_table): Do not die if a BFD doesn't
1960 have any symbols.
1961
6e033f86
JL
1962 * Finish basic read-write support for SOM archive libraries. Bugs
1963 surely remain as this hasn't been tested all that much.
1964 * som.c (SOM_LST_HASH_SIZE, SOM_LST_MODULE_LIMIT): Define.
1965 (struct som_misc_symbol_info): New structure to hold info necessary
1966 to build both normal and library symbol tables.
1967 (som_derive_misc_symbol_info): New function to derive info necessary
1968 to build both normal and library symbol tables.
1969 (som_build_and_write_symbol_table): Use new function to derive misc
1970 symbol information.
1971 (som_slurp_symbol_table): Update backend private data for symbols
1972 appropriately.
1973 (som_bfd_prep_for_ar_write): New function.
1974 (som_bfd_ar_symbol_hash): New function.
1975 (som_bfd_ar_write_symbol_stuff): New function.
1976 (som_write_armap): Flesh out.
1977 (som_vec): Fix ar padding character.
1978
1979 * som.c: Consistently use memset rather than bzero.
1980
8b8ddedb
SG
1981Mon Feb 14 17:02:28 1994 Stu Grossman (grossman at cygnus.com)
1982
1983 * coff-rs6000.c: Add Lynx core file support, use HOST_AIX, where
1984 appropriate.
1985 * rs6000-core.c: Use HOST_AIX instead of COREFILES_PLEASE.
1986 * config/rs6000.mh: Remove defs of ARCHIVES_PLEASE and
1987 COREFILES_PLEASE.
1988 * config/rs6000lynx.mh: Turn on Lynx core file support.
1989 * hosts/rs6000.h: #define HOST_AIX.
5cf354ef 1990 * hosts/rs6000lynx.h: Create this to enable Lynx host support.
8b8ddedb 1991
6863eb4b
JL
1992Sun Feb 13 14:30:00 1994 Jeffrey A. Law ([email protected])
1993
50c5c4ad
JL
1994 * som.h (som_symbol_data): Safely access backend private data
1995 for BFD symbols. All callers changed.
1996
6e033f86 1997 * Read-only SOM archive support.
3c37f9ca
JL
1998 * som.c (som_bfd_count_ar_symbols): New helper function.
1999 (som_bfd_fill_in_ar_symbols): New helper function.
2000 (som_slurp_armap): New function to read a SOM LST.
2001
6863eb4b
JL
2002 * som.h: Include <lst.h> and <ar.h>.
2003
5e829a34
JL
2004Sat Feb 12 22:34:14 1994 Jeffrey A. Law ([email protected])
2005
2006 * elfcode.h (elf_map_symbols): Fix typo.
2007 (write_object_contents): Check return values from prep_headers and
2008 elf_compute_section_file_positions.
2009 (set_section_contents): Likewise.
2010
a15691a5
DM
2011Fri Feb 11 16:56:50 1994 David J. Mackenzie ([email protected])
2012
2013 * archive.c (normalize) [VMS]: Call malloc, not bfd_xmalloc.
2014 (bfd_construct_extended_name_table): Check result of normalize.
2015
9783e04a
DM
2016Tue Feb 8 08:57:31 1994 David J. Mackenzie ([email protected])
2017
2018 Make all callers of malloc or realloc (including via obstacks)
2019 check the result for NULL. Most set bfd_error to no_memory and
2020 return in that case; a few are harder to fix, and are marked
2021 with "FIXME <return type>".
2022
2023 * elf32-hppa.c (hppa_elf_build_arg_reloc_stub
2024 hppa_elf_build_long_branch_stub): Check bfd_make_empty_symbol return.
2025 * linker.c (_bfd_generic_link_output_symbols
2026 _bfd_generic_link_write_global_symbol): Ditto
2027 * section.c (bfd_make_section_anyway): Ditto.
2028
2029 * tekhex.c (find_chunk tekhex_mkobject): Check bfd_alloc.
2030 (first_phase): Ditto. FIXME void
2031 (tekhex_make_empty_symbol): Check bfd_zalloc.
2032
2033 * sunos.c (sunos_read_dynamic_info): Check bfd_zalloc.
2034 (MY(read_dynamic_symbols) MY(read_dynamic_relocs)): Check bfd_alloc.
2035
2036 * stringhash.c (_bfd_stringtab_hash_newfunc): Check bfd_hash_allocate.
2037
2038 * srec.c: Indent.
2039 (fillup_symbols): Check bfd_alloc. FIXME void
2040 (srec_mkobject srec_get_section_contents
2041 srec_set_section_contents): Check bfd_alloc.
2042 (srec_make_empty_symbol): Check bfd_zalloc.
2043
2044 * som.c (hppa_som_gen_reloc_type): Check bfd_alloc_by_size_t.
2045 (make_unique_section): Check bfd_alloc.
2046 (som_new_section_hook): Check bfd_zalloc.
2047 (bfd_som_attach_aux_hdr): Ditto. FIXME void
2048
2049 * rs6000-core.c (rs6000coff_core_p): Check bfd_zalloc.
2050
2051 * osf-core.c (osf_core_make_empty_symbol): Check bfd_zalloc.
2052 (osf_core_core_file_p): Check bfd_alloc.
2053
2054 * oasys.c (oasys_slurp_symbol_table oasys_archive_p
2055 oasys_mkobject oasys_object_p oasys_new_section_hook
2056 oasys_set_section_contents): Check bfd_alloc.
2057 (oasys_slurp_section_data): Check bfd_zalloc and bfd_alloc.
2058 (oasys_make_empty_symbol): Check bfd_zalloc.
2059
2060 * nlmcode.h (nlm_make_empty_symbol): Check bfd_zalloc.
2061 (nlm_slurp_symbol_table): Check bfd_zalloc and bfd_alloc.
2062
2063 * nlm32-sparc.c (nlm_sparc_read_import): Check bfd_alloc.
2064
2065 * nlm32-i386.c (nlm_i386_read_import): Check bfd_alloc.
2066
2067 * nlm32-alpha.c (nlm_alpha_read_import): Check bfd_alloc.
2068
2069 * linker.c (_bfd_link_hash_newfunc
2070 (generic_link_hash_newfunc
2071 (archive_hash_newfunc
2072 (_bfd_generic_link_add_one_symbol): Check bfd_hash_allocate.
2073 (_bfd_generic_final_link
2074 (_bfd_generic_link_output_symbols
2075 (default_indirect_link_order): Check bfd_alloc.
2076 (bfd_new_link_order): Check bfd_alloc_by_size_t.
2077
2078 * irix-core.c (irix_core_make_empty_symbol): Check bfd_zalloc.
2079
2080 * ieee.c: Indent.
2081 (read_id get_symbol get_section_entry ieee_archive_p ieee_object_p
2082 ieee_slurp_section_data ieee_new_section_hook): Check bfd_alloc.
2083 (do_one): Check bfd_alloc. Return a boolean.
2084 (ieee_slurp_section_data): Check it.
2085 (init_for_output): Check bfd_alloc. Return a boolean.
2086 (ieee_set_section_contents): Check it.
2087 (do_with_relocs): Check bfd_alloc. Return a boolean.
2088 (ieee_bfd_debug_info_accumulate): Ditto. FIXME void.
2089 (ieee_mkobject): Check bfd_zalloc.
2090 (ieee_make_empty_symbol): Check bfd_zmalloc.
2091
2092 * hpux-core.c (hpux_core_make_empty_symbol): Check
2093 bfd_zalloc.
2094
2095 * hppabsd-core.c (hppabsd_core_make_empty_symbol): Check
2096 bfd_zalloc.
2097 (hppabsd_core_core_file_p): Check bfd_zalloc.
2098
2099 * hp300hpux.c (MY(slurp_symbol_table)): Check bfd_alloc.
2100
2101 * elfcode.h (elf_new_section_hook): Check bfd_alloc.
2102 (bfd_section_from_phdr): Ditto.
2103 (write_relocs): Ditto. FIXME void
2104 (elf_map_symbols assign_section_numbers map_program_segments):
2105 Ditto. Return a boolean.
2106 (swap_out_syms): Ditto. Check elf_map_symbols.
2107 (elf_slurp_symbol_table): Check bfd_zalloc.
2108 (elf_slurp_reloca_table): Check bfd_alloc.
2109 (elf_slurp_reloc_table): Ditto.
2110 (elf_compute_section_file_positions): Check assign_section_numbers.
2111 (assign_file_positions_except_relocs): Return a boolean.
2112 Check map_program_segments.
2113 (elf_compute_section_file_positions): Check it.
2114
2115 * elf32-mips.c (mips_elf_final_link): Check bfd_alloc.
2116
2117 * elf32-hppa.c (hppa_elf_stub_branch_reloc): Check bfd_zmalloc and
2118 realloc.
2119 (hppa_elf_stub_reloc): Ditto.
2120 (hppa_elf_build_arg_reloc_stub): Check bfd_zalloc.
2121 (hppa_elf_build_long_branch_stub): Ditto.
2122 (elf32_hppa_backend_symbol_table_processing): Ditto.
2123
2124 * ecoff.c (ecoff_set_symbol_info): Check bfd_alloc. Return a boolean.
2125 (ecoff_slurp_symbol_table): Check it.
2126 (ecoff_slurp_armap): Check bfd_alloc.
2127 (ecoff_write_armap): Check bfd_zalloc.
2128 (ecoff_link_hash_newfunc): Check bfd_hash_allocate and
2129 _bfd_link_hash_newfunc.
2130 (ecoff_link_add_externals): Check bfd_alloc.
2131
2132 * ctor.c (bfd_constructor_entry): Check bfd_alloc.
2133
2134 * coffgen.c (coff_real_object_p): Check bfd_alloc.
2135 (coff_renumber_symbols): Check bfd_alloc_by_size_t. Return a boolean.
2136 (coff_write_symbol): Check bfd_alloc. FIXME int
2137 (coff_write_linenumbers): Check bfd_alloc. Return a boolean.
2138 (coff_section_symbol): Check bfd_alloc_by_size_t.
2139 (coff_get_normalized_symtab): Check bfd_alloc.
2140 (coff_bfd_make_debug_symbol): Check bfd_zalloc.
2141 * libcoff-in.h: Change decls of coff_renumber_symbols,
2142 coff_write_linenumbers.
2143 * libcoff.h: Rebuilt.
2144 * coffcode.h (coff_write_object_contents): Check
2145 coff_renumber_symbols, coff_write_linenumbers.
2146
2147 * coffcode.h: Indent.
2148 (coff_add_missing_symbols): Check bfd_alloc_by_size_t. Return a
2149 boolean.
2150 (coff_write_object_contents): Check it.
2151
2152 * coff-alpha.c (alpha_relocate_section): Check bfd_alloc.
2153 * coff-mips.c (mips_relocate_section): Ditto.
2154
2155 * archive.c (bfd_slurp_bsd_armap_f2): Check bfd_alloc value.
2156 (do_slurp_bsd_armap): Ditto.
2157 (compute_and_write_armap): Check bfd_realloc value.
2158
2159 * aoutx.h (translate_from_native_sym_flags): Check bfd_alloc
2160 return value. Return boolean value.
2161 (NAME(aout,make_empty_symbol)): Check bfd_zalloc return value.
2162 (NAME(aout,slurp_symbol_table)): Check bf_alloc and bfd_zalloc
2163 return value.
2164 (add_to_stringtab): Ditto. FIXME void
2165 (aout_link_hash_newfunc): Check bfd_hash_allocate return value.
2166 (aout_link_add_symbols): Check bfd_alloc value.
2167 (translate_symbol_table): Check translate_from_native_sym_flags.
2168 * hp300hpux.c (MY(slurp_symbol_table)): Ditto.
2169 * aoutx.h (aout_link_hash_newfunc): Check _bfd_link_hash_newfunc.
2170
2171 * opncls.c (bfd_zalloc bfd_realloc): Check result of bfd_alloc.
2172
2173 * opncls.c (obstack_chunk_alloc): Define as malloc, not
2174 bfd_xmalloc_by_size_t.
2175 (_bfd_new_bfd): Check obstack_begin for 0 return.
2176
2177 * ieee.c (obstack_chunk_alloc): Define as malloc, not
2178 bfd_xmalloc_by_size_t.
2179 (ieee_archive_p): Check obstack_begin for 0 return and
2180 obstack_finish for NULL return.
2181
2182 * hash.c (obstack_chunk_alloc): Define as malloc, not
2183 bfd_xmalloc_by_size_t.
2184 (bfd_hash_table_init_n): Check obstack_begin for 0 return and
2185 obstack_finish for NULL return.
2186 (bfd_hash_lookup): Check obstack_alloc for NULL return.
2187
2188 * ecofflink.c (obstack_chunk_alloc): Define as malloc, not
2189 bfd_xmalloc_by_size_t.
2190 bfd_ecoff_debug_accumulate
2191 bfd_ecoff_debug_accumulate_other): Check obstack_alloc.
2192 (add_file_shuffle add_memory_shuffle): Check obstack_alloc for
2193 NULL return. Return boolean, not void.
2194 (bfd_ecoff_debug_init): Check obstack_begin for 0 return.
2195 (bfd_ecoff_debug_accumulate): Check add_file_shuffle
2196 and add_memory_shuffle return.
2197 (string_hash_newfunc): Check bfd_hash_allocate and bfd_hash_newfunc.
2198 (bfd_ecoff_debug_accumulate): Check bfd_alloc.
2199 (ecoff_add_string): Check add_memory_shuffle return.
2200
2201 * libbfd-in.h (xmalloc, bfd_xmalloc, bfd_xmalloc_by_size_t):
2202 Remove decls.
2203 * libbfd.h: Rebuilt.
2204
30e441ca
SG
2205Fri Feb 11 15:35:32 1994 Stu Grossman (grossman at cygnus.com)
2206
2207 * configure.host: Add Lynx/rs6000 support.
2208 * config/i386-nlm.mt: Enable a.out file support.
2209 * config/rs6000lynx.mh: Lynx/rs6000 host support.
2210
5ee3886b
ILT
2211Fri Feb 11 17:25:58 1994 Ian Lance Taylor ([email protected])
2212
2213 * archive.c (compute_and_write_armap): Rewrite somewhat to improve
2214 memory usage.
2215
9a793780
SS
2216Fri Feb 11 13:10:42 1994 Stan Shebs ([email protected])
2217
2218 * archive.c: Change all references to '\n' in archive magic
2219 to '\012', for greater portability.
2220 * ecoff.c (ecoff_write_armap): Ditto.
2221
2222Thu Feb 10 12:58:48 1994 Ian Lance Taylor ([email protected])
2223
2224 * aoutx.h (aout_link_write_other_symbol): Check strip settings to
2225 see whether symbol should be output.
2226 * genlink.h (struct generic_write_global_symbol_info): Added info
2227 field.
2228 * linker.c (_bfd_generic_final_link): Initialize wginfo.info.
2229 (_bfd_generic_link_write_global_symbol): Check strip settings to
2230 see whether symbol should be output.
2231 * elf32-mips.c (mips_elf_final_link): Initialize wginfo.info.
2232
a62dd44f
JL
2233Wed Feb 9 21:34:58 1994 Jeffrey A. Law ([email protected])
2234
9a793780
SS
2235 * som.c (som_reloc_queue_find): Do not examine a NULL queue entry.
2236
a62dd44f
JL
2237 * som.c: Cast return values from BFD memory allocation routines to
2238 avoid warnings from the HP compiler.
2239
945f125b
ILT
2240Wed Feb 9 12:55:02 1994 Ian Lance Taylor ([email protected])
2241
0d634116
ILT
2242 * coff-alpha.c (alpha_relocate_section): Accept a LITERAL
2243 reloc on an "ldl" instruction too.
2244
945f125b
ILT
2245 * archive.c (bfd_ar_hdr_from_filesystem): Cast status elements
2246 when passing them to sprintf. Use %ld instead of %d.
2247
2248 * coff-rs6000.c (rs6000coff_mkarchive): Return false.
2249 (rs6000_coff_snarf_ar_hdr): Don't declare errno; it's not used.
2250 Also removed unused variable namelen.
2251 (rs6000coff_write_armap): Declare orl_count and stridx parameters.
2252
2253Tue Feb 8 18:00:34 1994 Ian Lance Taylor ([email protected])
2254
2255 * libbfd-in.h (xmalloc): Don't declare parameter type, to avoid
2256 conflicts.
2257 * libbfd.h: Rebuilt.
2258
fa965415
KR
2259Tue Feb 8 15:55:50 1994 Ken Raeburn ([email protected])
2260
2261 * coff-alpha.c (reloc_nil): New function.
2262 (alpha_howto_table): Use it as special_function to prevent certain
2263 relocs from being adjusted by bfd_perform_relocation. IGNORE
2264 reloc should be partial_inplace.
2265 (alpha_ecoff_get_relocated_section_contents): Accept a LITERAL
2266 reloc on an "ldl" instruction too.
2267
7c202d37
PS
2268Tue Feb 8 00:32:28 1994 Peter Schauer ([email protected])
2269
2270 * elf32-hppa.c (CURRENT_STUB_OFFSET, hppa_elf_build_arg_reloc_stub,
2271 hppa_elf_build_long_branch_stub): Cast to char * instead of int
2272 before performing pointer arithmetic.
2273
9ed21f0e
JL
2274Mon Feb 7 20:56:27 1994 Jeffrey A. Law ([email protected])
2275
2276 * config.bfd (hppa*-*-osf*): Use bfd_name hppaosf for this
2277 configuration.
2278 (hppa*-*-*elf*): This configuration used hppa-elf now.
2279
2280 * som.c: This file is also used for HOST_HPPAOSF.
2281
2282 * targets.c (bfd_target_vector): Enable som_vec for HOST_HPPAOSF.
2283
2284 * hosts/hppaosf.h: New host configuration file.
2285
2286 * config/hppabsd.mt (SELECT_VECS): Add bfd_elf32_hppa_vec as
2287 BSD handles both SOM and ELF object files.
2288
2289 * config/hppaosf.mh (HDEFINES): Delete. No longer needed.
2290 (RANLIB): Doesn't do anything, define it to be "echo".
2291
2292 * config/hppaosf.mt: New target makefile fragment for a PA running
2293 OSF1.
2294
bf969135
ILT
2295Mon Feb 7 15:02:06 1994 Ian Lance Taylor ([email protected])
2296
66f1cff5
ILT
2297 * archures.c (enum bfd_architecture): Added bfd_arch_powerpc.
2298 (archures_init_table): If SELECT_ARCHITECTURES is not defined,
2299 added bfd_powerpc_arch.
2300 * bfd-in2.h: Rebuilt.
2301 * cpu-powerpc.c: New file.
2302 * Makefile.in (ALL_MACHINES, CFILES): Added cpu-powerpc.c.
2303 Rebuilt dependencies.
2304
bf969135
ILT
2305 * elfcode.h (bfd_section_from_shdr): Get vma and alignment_power
2306 of an SHT_STRTAB section from sh_addr and sh_addralign, rather
2307 than just setting them to zero.
2308
b9d5cdf0
DM
2309Sun Feb 6 20:04:10 1994 David J. Mackenzie ([email protected])
2310
2311 * elfcode.h (prep_headers, swap_out_syms): Check for NULL return
2312 from bfd_new_strtab.
2313 (elf_compute_section_file_positions): Check for false return from
2314 swap_out_syms.
2315
2316 * linker.c (default_indirect_link_order): Check for NULL return
2317 from bfd_get_relocated_section_contents.
2318
2319 * syms.c: Make example application in doc call xmalloc, not
2320 bfd_xmalloc.
2321
2322 * aoutx.h (NAME(aout,slurp_symbol_table),
2323 aout_link_get_symbols, NAME(aout,link_hash_table_create)):
2324 * bout.c (b_out_slurp_reloc_table, b_out_squirt_out_relocs):
2325 * ecoff.c (ecoff_bfd_link_hash_table_create):
2326 * ecofflink.c (bfd_ecoff_debug_init):
2327 * format.c (bfd_check_format_matches):
2328 * linker.c (_bfd_generic_link_hash_table_create):
2329 (_bfd_generic_final_link):
2330 * reloc16.c (bfd_coff_reloc16_relax_section):
2331 (bfd_coff_reloc16_get_relocated_section_contents):
2332 * elf32-hppa.c (hppa_elf_build_arg_reloc_stub):
2333 * elf32-mips.c (mips_elf_final_link):
2334 * elfcode.h (bfd_new_strtab):
2335 (bfd_add_2_to_strtab):
2336 (elf_slurp_symbol_table):
2337 (elf_corefile_note):
2338 * libbfd.c (bfd_zmalloc):
2339 Use malloc and check the result, instead of bfd_xmalloc.
2340
6b054519
JK
2341Sat Feb 5 12:39:28 1994 Jim Kingdon ([email protected])
2342
2343 * config.bfd: Put m68*-*-sysv* line after m68*-*-sysv4*.
2344
bf430317
PS
2345Sat Feb 5 05:32:44 1994 Peter Schauer ([email protected])
2346
2347 * srec.c (srec_write_record): Put CONST keyword for "src" before
2348 "unsigned", some compilers don't like it after "unsigned".
2349 * libcoff.h, libcoff-in.h (bfd_perform_slip): Rename "value" to
2350 "val" in prototype declaration because some compilers don't like
2351 arguments whose names are the same as types.
2352
9b39ed6b
ILT
2353Sat Feb 5 01:14:38 1994 Ian Lance Taylor ([email protected])
2354
2355 * aoutx.h (aout_link_check_ar_symbols): Correct test for whether
2356 object file defines symbol. Also, if skipping a symbol, skip the
2357 second symbol of a N_WARNING or N_INDR symbol as well.
2358
d352be4f
ILT
2359Fri Feb 4 23:55:44 1994 Ian Lance Taylor ([email protected])
2360
2361 Add basic support for writing RS/6000 XCOFF files.
2362 * coff-rs6000.c (dummy_reloc): Removed.
2363 (rs6000coff_howto_table): Defined XCOFF relocs.
2364 (RTYPE2HOWTO): Defined to use rs6000coff_rtype2howto.
2365 (rs6000coff_rtype2howto): New function.
2366 (coff_bfd_reloc_type_lookup): Defined to use
2367 rs6000coff_reloc_type_lookup.
2368 (rs6000coff_reloc_type_lookup): New function.
2369 (SELECT_RELOC): Defined to set r_type and r_size fields.
2370 (COFF_LONG_FILENAMES): Defined.
2371 * coffcode.h (combined_entry_type): Changed fix_tag and fix_end
2372 fields to bitfields. Added fields fix_value and fix_scnlen.
2373 (sec_to_styp_flags): If STYP_DEBUG is defined, use it rather than
2374 STYP_INFO for the type of a section named .debug.
2375 (coff_add_missing_symbols): Don't define if RS6000COFF_C.
2376 (coff_write_object_contents): If RS6000COFF_C, don't call
2377 coff_add_missing_symbols.
2378 (coff_slurp_symbol_table): If RS6000COFF_C, then if the last aux
2379 entry has type STY_LD change the x_scnlen into a pointer to a
2380 symbol and set fix_scnlen. Also, for a C_BSTAT symbol, change the
2381 value into a pointer to a symbol and set fix_value.
2382 * libcoff.h: Rebuilt.
2383 * coffgen.c (coff_mangle_symbols): Reindent. If fix_value is set,
2384 get the symbol offset. Likewise for fix_scnlen.
2385 (string_size): Change type to bfd_size_type.
2386 (debug_string_size, debug_string_section): New static variables.
2387 (coff_fix_symbol_name): If bfd_coff_symname_in_debug returns true,
2388 write the symbol name into the .debug section; assume that the
2389 section has already been created with the right size.
2390 (coff_write_symbols): Initialize debug_string_size to 0. If
2391 bfd_coff_symname_in_debug returns true, don't put symbol name in
2392 usual string table. After writing out all symbols, if
2393 debug_string_size is not 0, check that it matches the size of the
2394 .debug section.
2395 (coff_get_normalized_symtab): Clear new fix_value and fix_scnlen
2396 fields. If the string offset is 0, always use an empty string as
2397 the name.
2398 (coff_make_empty_symbol): Zero out the symbol structure.
2399 * reloc.c (bfd_perform_relocation): Work around one gross hack
2400 with another: actually look at the target name to avoid the broken
2401 COFF check.
2402 (bfd_reloc_code_real_type): Add BFD_RELOC_PPC_B26,
2403 BFD_RELOC_PPC_BA26 and BFD_RELOC_PPC_TOC16.
2404 * bfd-in2.h: Rebuilt.
2405
0ee34272
DM
2406Fri Feb 4 17:28:32 1994 David J. Mackenzie ([email protected])
2407
2408 * libbfd.c (bfd_zmalloc): Call bfd_xmalloc instead of malloc.
2409 (bfd_xmalloc, bfd_xmalloc_by_size_t): Functions deleted.
2410 * libbfd-in.h: Define them as macros calling xmalloc and declare
2411 xmalloc.
2412 * libbfd.h: Rebuilt.
0ee34272 2413
fa2302b8
ILT
2414Thu Feb 3 16:49:35 1994 Ian Lance Taylor ([email protected])
2415
cbc174e7
ILT
2416 * ecofflink.c (bfd_ecoff_debug_externals): If a small undefined
2417 symbol has a value in the ECOFF symbol but not in the BFD symbol,
2418 keep the value in the ECOFF symbol. This helps gas.
2419
5072b8e5
ILT
2420 * linker.c (_bfd_generic_link_output_symbols,
2421 _bfd_generic_link_write_global_symbol): Don't require that all
2422 references to a common symbol be themselves common symbols.
2423
fa2302b8
ILT
2424 * aoutx.h (aout_reloc_index_to_section): Handle N_UNDF.
2425
96ad107b
JK
2426Wed Feb 2 20:37:19 1994 Jim Kingdon ([email protected])
2427
2428 * libbfd.c, bfd-in.h, hosts/alphaosf.h, hosts/sparc-ll.h, aoutf1.h,
2429 sparclynx.c, Makefile.in: Change HOST_64_BIT to BFD_HOST_64_BIT.
0324156c 2430 * bfd-in2.h: Rebuilt.
96ad107b 2431
192d8ee8
ILT
2432Wed Feb 2 12:30:13 1994 Ian Lance Taylor ([email protected])
2433
38e1f0ce
ILT
2434 * coffswap.h (coff_swap_reloc_out): If RS6000COFF_C, handle type
2435 and size correctly.
2436 (coff_swap_aux_in): If RS6000COFF_C, change x_csect.x_scnlen to
2437 x_csect.x_scnlen.l to match change in coff/internal.h.
2438 (coff_swap_aux_out): Likewise.
2439
ebf3b4cd
ILT
2440 * coff-mips.c (mips_ecoff_backend_data), coff-alpha.c
2441 (alpha_ecoff_backend_data): Change casts of aux_in and aux_out
2442 fields to match yesterday's changes.
2443
192d8ee8
ILT
2444 * coffcode.h (coff_write_relocs): If SELECT_RELOC is defined, pass
2445 in the internal_reloc itself, not the type.
2446 * coff-apollo.c, coff-h8300.c, coff-h8500.c, coff-i386.c,
2447 coff-m68k.c, coff-sh.c, coff-we32k.c, coff-z8k.c: Changed
2448 definition of SELECT_RELOC accordingly.
2449
330595d0
ILT
2450Tue Feb 1 12:05:44 1994 Ian Lance Taylor ([email protected])
2451
2452 * coffcode.h (bfd_coff_backend_data): Added new arguments to
2453 _bfd_coff_swap_aux_in and _bfd_coff_swap_aux_out: aux index number
2454 and number of aux entries.
2455 (bfd_coff_swap_aux_in, bfd_coff_swap_aux_out): Changed
2456 accordingly.
2457 * libcoff.h: Rebuilt.
2458 * coffswap.h (coff_swap_aux_in, coff_swap_aux_out): Accept new
2459 arguments. If RS6000COFF_C, only treat C_EXT and C_HIDEXT
2460 specially if this is the last aux entry.
2461 * coffgen.c (coff_write_symbol, coff_get_normalized_symtab): Pass
2462 new arguments to swap_aux functions.
2463
4e810849
KR
2464Sun Jan 30 15:14:36 1994 Ken Raeburn ([email protected])
2465
2466 * gen-aout.c (main): Set DEFAULT_ARCH based on preprocessor macros
2467 (only testing for m68k and vax at the moment); do verify that the
2468 preprocessor didn't trash the arch name inside the string version.
2469 Don't print out "pagesize =" line that prevents output from
2470 compiling. Derive BYTES_IN_WORD and ARCH values from sizeof
2471 results.
2472 * Makefile.in (aout-params.h): Pass gen-aout a dummy target name.
26b572e4
KR
2473 (check, installcheck): Identify directory in "no testsuites"
2474 message.
4e810849 2475
2edc8357
ILT
2476Sun Jan 30 13:25:28 1994 Ian Lance Taylor ([email protected])
2477
2478 * aoutx.h (aout_link_write_symbols): Write out correct value for
2479 object file symbol.
2480
098630a0
KR
2481Fri Jan 28 18:34:05 1994 Ken Raeburn ([email protected])
2482
2483 * hosts/vaxbsd.h (HOST_STACK_END_ADDR): Vax BSD doesn't define
2484 KERNBASE, so hard-code 0x80000000 instead.
2485
c3156966
ILT
2486Thu Jan 27 13:54:08 1994 Ian Lance Taylor ([email protected])
2487
2488 * linker.c (generic_link_add_symbol_list): If symbol is common,
2489 set the BSF_OLD_COMMON flag.
2490
d6d4e4c3
DM
2491Wed Jan 26 13:47:15 1994 David J. Mackenzie ([email protected])
2492
2493 * format.c (bfd_check_format_matches): Put the new entry in the
2494 correct element of matching_vector.
2495
09f70549
JK
2496Tue Jan 25 11:43:28 1994 Jim Kingdon ([email protected])
2497
2498 * som.c, som.h (bfd_som_set_section_attributes,
2499 bfd_som_set_subsection_attributes): Change parameters from char
2500 to int. Following a prototype with an old-style function definition
2501 in the presence of widened parameters is a GCC-ism not supported
2502 by the HP compiler in ANSI mode.
2503
a927c32d
ILT
2504Tue Jan 25 11:46:46 1994 Ian Lance Taylor ([email protected])
2505
8638431e
ILT
2506 * reloc.c (bfd_get_reloc_size): Size of type -2 is 4 bytes, not 2.
2507
3b490cdd
ILT
2508 * hp300hpux.c (MY(write_object_contents)): Write out the symbols
2509 before writing out the relocs, so that the right symbol indices
2510 are used.
2511
71d58b59
ILT
2512 * archive.c (do_slurp_bsd_armap, bfd_slurp_bsd_armap_f2): Do not
2513 try to overlay the internal carsyms on the external symdefs. That
2514 can not work if the size of a host pointer is larger than 4 bytes.
2515
2516 * format.c (bfd_check_format_matches): Cast result of
2517 bfd_xmalloc_by_size_t.
2518 * opncls.c (_bfd_new_bfd): Avoid ANSI C prototype.
2519
a927c32d
ILT
2520 * archive.c: Reindented to GNU standards.
2521
aabda2da
DM
2522Mon Jan 24 14:41:23 1994 David J. Mackenzie ([email protected])
2523
f4bd7a8f
DM
2524 * opncls.c (_bfd_new_bfd, _bfd_new_bfd_contained_in): Add
2525 "_bfd_" to function names.
2526 * archive.c (_bfd_create_empty_archive_element_shell),
2527 libbfd-in.h: Change callers.
2528
2529 * libbfd.c (bfd_zmalloc): Renamed from zalloc.
2530 * libbfd.c (bfd_add_to_string_table),
2531 trad-core.c (trad_unix_core_file_p),
2532 targets.c (bfd_target_list),
2533 ptrace-core.c (ptrace_unix_core_file_p),
2534 opncls.c (new_bfd), libbfd-in.h,
2535 ieee.c (ieee_make_empty_symbol),
2536 elf32-hppa.c (hppa_elf_stub_branch_reloc),
2537 (hppa_elf_stub_reloc): Change callers.
2538 * libbfd.h: Regenerated.
2539
2540 * archive.c (_bfd_look_for_bfd_in_cache): Add "_bfd_" to name.
2541 (_bfd_get_elt_at_filepos),
2542 coff-rs6000.c (rs6000coff_get_elt_at_filepos), libbfd-in.h:
2543 Change callers.
2544
2545 * format.c (bfd_check_format_matches), libbfd-in.h, targets.c,
2546 elfcode.h (elf_object_p): Rename target_vector to bfd_target_vector
2547 and default_vector to bfd_default_vector.
2548 * libbfd.h: Regenerated.
2549
aabda2da
DM
2550 * format.c (bfd_check_format_matches): New function.
2551 (bfd_check_format): Call it.
2552 (bfd_matching_formats): Function removed.
2553 * targets.c: Replace the vector added on Jan 21 with a count of
2554 entries in default_vector.
2555 * bfd-in2.h: Regenerated.
2556
ca1c6bec
ILT
2557Mon Jan 24 12:38:54 1994 Ian Lance Taylor ([email protected])
2558
3f048f7f
ILT
2559 * coff-alpha.c (alpha_ecoff_object_p): New function. Set size of
2560 .pdata section based on lnnoptr field, not section header.
2561 (alpha_relocate_section): Don't bother to check if r_symndx >= 0,
2562 since it is unsigned.
2563 (ecoffalpha_little_vec): Use alpha_ecoff_object_p rather than
2564 coff_object_p.
2565 * ecoff.c (ecoff_new_section_hook): Set alignment_power field of
2566 .pdata section to 3.
2567 (ecoff_compute_section_file_positions): Save the size of the
2568 .pdata section in the line_filepos field, and actually align the
2569 .pdata section to an alignment power of 4.
2570 (ecoff_compute_reloc_file_positions): Set output_has_begun after
2571 calling ecoff_compute_section_file_positions.
2572 (ecoff_write_object_contents): Set s_lnnoptr for the .pdata
2573 section from the line_filepos field. Set vstamp for the optional
2574 header from the vstamp of the symbolic header.
2575 (ecoff_bfd_final_link): Set vstamp of the symbolic header to the
2576 vstamp used by the first object file in the link.
2577
2578 * ecofflink.c (ecoff_align_debug): Align RFDs to debug_align.
2579
a20bdb43
ILT
2580 * linker.c (generic_link_check_achive_element): Set SEC_ALLOC flag
2581 for a created common section.
2582 (_bfd_generic_link_add_one_symbol): Likewise.
2583
2584 * elfcode.h (swap_out_syms): Use elf_section_from_bfd_section to
2585 get the index of a common section, rather than always using
2586 SHN_COMMON (MIPS has multiple common sections).
2587
7a60ed8c
ILT
2588 * elf32-hppa.c (hppa_elf_gen_reloc_type): Typo (== for =).
2589
4991ebb9
ILT
2590 * bfd/aoutx.h (aout_link_input_section_std,
2591 aout_link_input_section_ext): Pass additional arguments to
2592 reloc_overflow callback.
2593 * coff-alpha.c (alpha_ecoff_get_relocated_section_contents,
2594 alpha_relocat_section): Likewise.
2595 * coff-h8300.c (h8300_reloc16_extra_cases): Likewise.
2596 * coff-h8500.c (extra_case): Likewise.
2597 * coff-mips.c (mips_relocate_section): Likewise.
2598 * coff-z8k.c (extra_case): Likewise.
2599 * elf32-hppa.c (hppa_elf_stub_finish): Likewise.
2600 * reloc.c (bfd_generic_get_relocated_section_contents): Likewise.
2601
1cedfe03
ILT
2602 * bout.c (calljx_callback, callj_callback): Use get_value to get
2603 the symbol value and check for undefined symbols.
2604 (get_value): If the symbol is undefined, look it up in the linker
2605 hash table.
2606 (b_out_get_relocated_section_contents): For PCREL24 and PCREL13
2607 use get_value to get the symbol value and check for undefined
2608 symbols.
2609 * reloc16.c (bfd_coff_reloc16_get_value): If the symbol is
2610 undefined, look it up in the linker hash table.
2611
ca1c6bec
ILT
2612 * aoutx.h (translate_symbol_table): The string index 0 has a
2613 special meaning for normal symbols, but not for dynamic symbols.
2614
3f2255e7
SG
2615Sat Jan 22 12:26:01 1994 Stu Grossman (grossman at cygnus.com)
2616
2617 * sparclynx.c: Setup appropriate macros to enable core file
2618 support.
2619
0f8f509c
DM
2620Fri Jan 21 16:25:35 1994 David J. Mackenzie ([email protected])
2621
3b31740c
DM
2622 * targets.c: Add a vector of matching format names.
2623 * format.c (bfd_matching_formats): New function to return it.
2624 (bfd_check_format): Set it.
2625 * bfd-in2.h: Regenerated.
2626
0f8f509c
DM
2627 * bfd-in.h: Remove decls of bfd_ec type and error printing functions.
2628 Remove decl of type symclass; wasn't used.
2629 * bfd.c: Document error handling, including code fragments
2630 containing the error decls that were in bfd-in.h.
2631 Remove DEFUNs.
2632 * bfd-in2.h: Regenerated.
2633
27814aa6 2634Fri Jan 21 14:11:16 1994 Sean Fagan ([email protected])
4733517b
JK
2635
2636 * nlmcode.h, liblnm.h, nlm32-alpha.c nlm32-i386.c nlm32-sparc.c:
2637 The sparc (and possibly other?) NLM format requires a different
2638 way to write exports, so add a write_export field to the backend
2639 data (and set it to NULL for everything but the sparc).
e7cc9a2e 2640
3f40d101
DM
2641Fri Jan 21 14:11:16 1994 Jim Kingdon ([email protected])
2642
e7cc9a2e
JK
2643 * sunos.c (MY(read_dynamic_relocs)): Compare info->dynrel with NULL,
2644 not (struct external_nlist *) NULL. info->dynrel is a PTR, not
2645 a struct external_nlist *.
2646
6de49562
DM
2647Fri Jan 21 09:29:01 1994 David J. Mackenzie ([email protected])
2648
74788cf0 2649 * bfd.c: Remove error strings for errors removed below.
6de49562
DM
2650 * aoutx.h (translate_to_native_sym_flags), bfd-in.h (bfd_ec),
2651 oasys.c (oasys_write_sections): Rename
2652 bfd_error_nonrepresentable_section to nonrepresentable_section.
2653 None of the other bfd error names start with "bfd_error".
2654 Remove errors symbol_not_found and no_relocation_info, which seem
2655 to be unused.
2656 * bfd-in2.h: Regenerated.
2657
0ee75d02
ILT
2658Fri Jan 21 01:11:55 1994 Ian Lance Taylor ([email protected])
2659
fcc41f68
ILT
2660 * bfd.c (bfd_get_gp_size): Added support for ELF.
2661
0ee75d02
ILT
2662 * syms.c (BSF_DYNAMIC): New symbol flag.
2663 (bfd_print_symbol_vandf): Print it.
2664 * bfd-in2.h: Rebuilt.
2665 * libaout.h (struct aout_backend_data): New read_dynamic_symbols
2666 and read_dynamic_relocs fields.
2667 (struct aoutdata): New dynamic_info field.
2668 (obj_aout_dynamic_info): New accessor macro.
2669 * sunos.c (struct sunos_dynamic_info): New structure.
2670 (sunos_read_dynamic_info, MY(read_dynamic_symbols),
2671 MY(read_dynamic_relocs)): New functions to read dynamic symbols
2672 and relocs.
2673 * aoutx.h (NAME(aout,some_aout_object_p)): If the object is
2674 dynamically linked, set SEC_RELOC for both the .text and .data
2675 sections.
2676 (translate_from_native_sym_flags): Don't set BSF_LOCAL for an
2677 undefined symbol.
2678 (translate_symbol_table): New function, split out of
2679 slurp_symbol_table; set the BSF_DYNAMIC flag appropriately.
2680 (NAME(aout,slurp_symbol_table)): Read dynamic symbols, if any.
2681 (NAME(aout,slurp_reloc_table)): Read dynamic relocs, if any.
2682 (NAME(aout,get_reloc_upper_bound)): Include dynamic reloc count in
2683 return value.
2684 * aoutf1.h (NAME(aout,sunos4_write_object_contents)): Don't write
2685 out dynamic symbols or relocs against reloc symbols, since they
2686 are already in the .text section and we wouldn't know where to
2687 write them anyhow.
2688 (sunos4_aout_backend): Initialize read_dynamic_symbols and
2689 read_dynamic_relocs fields.
2690 * aout-target.h (MY(backend_data)): Initialize
2691 read_dynamic_symbols and read_dynamic_relocs fields.
2692
dc3da58f
KR
2693Thu Jan 20 20:57:27 1994 Ken Raeburn ([email protected])
2694
2695 * hosts/alphaosf.h (uint64e_type, uint64_type, int64_type): Delete
2696 typedefs, since HOST_64_BIT will take care of defining them in
2697 bfd.h.
2698
7e7fb4a8
KR
2699Wed Jan 19 17:28:59 1994 Ken Raeburn ([email protected])
2700
2701 * config/alphaosf.mh (HDEFINES): Don't define HOST_64_BIT here;
2702 that's dealt with elsewhere.
2703 * hosts/alphaosf.h (sprintf_vma, fprintf_vma): New macros.
2704 (uint64_typeHIGH, uint64_typeLOW): Comment with HOST_64_BIT so
2705 they get copied to bfd.h.
2706
2707 * reloc.c (enum bfd_reloc_code_real): Add some Alpha relocation
2708 types. Reorganized some of the existing ones.
2709 * coff-alpha.c (alpha_howto_table): Construct 64-bit negative one
2710 values in case of compilation on a 32-bit machine. Fix pcrel
2711 fields of some reloc types.
2712 (alpha_bfd_reloc_type_lookup): Handle more relocation types.
2713
2714 * bfd-in.h (uint64_typeHIGH, uint64_typeLOW): Supply default
2715 definitions when not defined, regardless of whether uint64_type is
2716 a defined macro or not.
2717 (fprintf_vma, sprintf_vma): Define only if fprintf_vma is not
2718 already defined.
2719
d7e34f67
ILT
2720Wed Jan 19 00:02:54 1994 Ian Lance Taylor ([email protected])
2721
2722 * aoutx.h (translate_to_native_sym_flags): Set the type of a
2723 BSF_WARNING symbol to N_WARNING.
2724
53155af1
ILT
2725Tue Jan 18 16:43:19 1994 Ian Lance Taylor ([email protected])
2726
2727 * aoutx.h (aout_link_add_symbols): Increment sym_hash as well as p
2728 for an indirect or warning symbol.
2729 (aout_link_write_symbols): Update sym_hash with the target of an
3a5b50f4
ILT
2730 indirect or warning symbol. If an indirect symbol is defined,
2731 output the calculated value and don't output the target symbol.
53155af1 2732
0c205af2
DM
2733Tue Jan 18 03:54:59 1994 David J. Mackenzie ([email protected])
2734
2735 * aoutx.h (translate_from_native_sym_flags): Give warning symbols
2736 an (unused) nonzero section value, needed for check below.
2737
964affdc
DM
2738Mon Jan 17 15:12:07 1994 David J. Mackenzie ([email protected])
2739
2740 * aoutx.h (translate_from_native_sym_flags,
2741 aout_link_add_symbols): Treat N_SET[ABDT] | N_EXT like
2742 N_SET[ABDT].
2743
38a5f510
ILT
2744Fri Jan 14 16:45:43 1994 Ian Lance Taylor ([email protected])
2745
2746 * elfcode.h (elf_object_p): If there is a SHT_DYNAMIC section, set
2747 the DYNAMIC flag for the BFD.
2748 (NAME(bfd_elf,write_object_contents)): Don't try to write out a
2749 BFD with the DYNAMIC flag set, since we don't generate the program
2750 header table correctly.
2751
2752Fri Jan 14 01:04:36 1994 Peter Schauer ([email protected])
2753
2754 * elfcode.h (elf_slurp_symbol_table): Free x_symp at the end
2755 of the function to avoid storage leak.
2756
75919b3b
ILT
2757Thu Jan 13 23:07:32 1994 Ian Lance Taylor ([email protected])
2758
2759 * ecoff.c (ecoff_link_write_external): An ifd can be -1.
2760
39961154
JL
2761Thu Jan 13 12:33:27 1994 Jeffrey A. Law ([email protected])
2762
9558d13f
JL
2763 * som.c (som_set_reloc_info): Provide a default symbol for
2764 relocations which don't actually have an associated symbol.
2765
39961154
JL
2766 * som.c (hppa_som_reloc): Add new "error message" argument.
2767
32476597
PS
2768Wed Jan 12 13:36:43 1994 Peter Schauer ([email protected])
2769
2770 Enable gdb to write to core files on more core file readers.
2771 * libbfd.c (bfd_generic_set_section_contents): Remove range check
2772 for section size, it is already done in bfd_set_section_contents
2773 with bfd_get_section_size_now.
2774 * aix386-core.c, hppabsd-core.c, hpux-core.c, irix-core.c,
2775 osf-core.c, ptrace-core.c, trad-core.c (*_set_section_contents):
2776 Use bfd_generic_set_section_contents instead of bfd_false.
2777
92f345b9
ILT
2778Wed Jan 12 15:31:57 1994 Ian Lance Taylor ([email protected])
2779
39961154
JL
2780 * linker.c: Added initial documentation.
2781
92f345b9
ILT
2782 * linker.c (default_indirect_link_order): Don't expect space for
2783 output relocations if there aren't any input relocations.
2784
fed872d3
ILT
2785Tue Jan 11 14:37:12 1994 Ian Lance Taylor ([email protected])
2786
c5481a5e
ILT
2787 * aoutx.h (NAME(aout,final_link)): Set a_entry before computing
2788 file offsets.
2789
fed872d3
ILT
2790 * elfcode.h (swap_out_syms): A common symbol is STT_OBJECT, not
2791 STT_NOTYPE.
2792
b36b8a6e
JK
2793Tue Jan 11 09:10:56 1994 Jim Kingdon ([email protected])
2794
2795 * config.bfd: Use ELF, not COFF for m88*-*-dgux*.
2796 Combine m88k-*-* and m88110-*-* cases into m88*-*-*.
2797
cf286547
ILT
2798Tue Jan 11 00:07:19 1994 Ian Lance Taylor ([email protected])
2799
2800 * ecofflink.c: Extensive changes to compress and merge debugging
2801 information, and to write some of out directly rather than saving
2802 it in memory. Several new functions and structures, and new
2803 arguments to existing functions.
2804 * ecoff.c (ecoff_compute_reloc_file_positions): Compute
2805 sym_filepos as well.
2806 (ecoff_get_extr): Use ifdmap instead of ifdbase.
2807 (ecoff_write_object_contents): Don't compute sym_filepos here.
2808 Only output symbols if outsymbols is not NULL.
2809 (ecoff_bfd_final_link): Adjust for changes in ecoff_debug_info and
2810 bfd_ecoff_debug functions. Write out debugging information here.
2811 (ecoff_final_link_debug_accumulate): Adjust for changes in
2812 bfd_ecoff_debug functions.
2813 (ecoff_link_write_external): Use ifdmap rather than ifdbase.
2814 * elf32-mips.c (mips_elf_read_ecoff_info): Read external symbols
2815 first, to put them in the first memory buffer. Clear fdr field.
2816 (mips_elf_get_extr): Use pointer to unswapped external symbol.
2817 (mips_elf_final_link): Adjust for changes in bfd_ecoff functions.
2818 Preserve .text, .data and .bss even if they are empty. Save
2819 pointer to unswapped external symbol rather than copying it.
2820 Don't free up the external symbols.
2821 * libelf.h (elf_symbol_type): Change mips_extr to PTR.
2822 * bfd-in.h (bfd_ecoff_debug_init, bfd_ecoff_debug_free): Declare.
2823 (bfd_ecoff_debug_accumulate): Update declaration.
2824 (bfd_ecoff_debug_accumulate_other): Rename declaration from
2825 bfd_ecoff_debug_link_other and update.
2826 (bfd_ecoff_write_accumulated_debug): Declare.
2827 * bfd-in2.h: Rebuilt.
2828 * Makefile.in: Rebuilt dependencies.
2829
2c96ba79
JK
2830Mon Jan 10 20:46:53 1994 Jim Kingdon ([email protected])
2831
2832 * Makefile.in (install): Remove "@" which follows a backslash. In
2833 this position it just causes errors, not suppresses echoes.
2834
2304e1e8
JL
2835Mon Jan 10 09:06:21 1994 Jeffrey A. Law ([email protected])
2836
2837 * som.c (hppa_som_gen_reloc_type): Fix handling of LT and RT
2838 field selectors.
2839
fb4cf140
KR
2840Sun Jan 9 04:32:25 1994 Ken Raeburn ([email protected])
2841
2842 * config/i386-netbsd.mt (SELECT_VECS): Include i386bsd_vec.
2843
d44b2ddb
DM
2844Fri Jan 7 10:27:27 1994 David J. Mackenzie ([email protected])
2845
5330499f
DM
2846 * aoutx.h (adjust_z_magic): Don't merge the start of bss with the
2847 end of data if they are not contiguous.
2848
d44b2ddb
DM
2849 * aoutf1.h (sunos4_aout_backend): Comment the fields' meanings.
2850
a5a835ff
ILT
2851Fri Jan 7 15:40:16 1994 Ian Lance Taylor ([email protected])
2852
2853 * ecoff.c (ecoff_mkobject_hook): Don't set SEC_SHARED_LIBRARY flag
2854 for .reginfo section here.
2855 (ecoff_new_section_hook): Set it here instead.
2856
442da995
SS
2857Fri Jan 7 10:29:27 1994 Stan Shebs ([email protected])
2858
2859 * bfd-in.h: (bfd_boolean): Add workaround for systems that also
2860 define true and false as enums.
2861 (ALMOST_STDC): Add as alternative to __STDC__.
2862 * bfd-in2.h: Rebuilt.
2863 * syms.c (bfd_print_symbol_vandf): Convert a PTR to FILE*.
2864
6f56c941
DM
2865Thu Jan 6 14:24:44 1994 David J. Mackenzie ([email protected])
2866
2867 * aoutx.h (translate_to_native_sym_flags): Catch the case where
2868 there is no output section.
2869
2f84ec0d
ILT
2870Thu Jan 6 14:37:42 1994 Ian Lance Taylor ([email protected])
2871
90d58284
ILT
2872 * nlmcode.h (nlm_object_p): If we can't read the fixed header,
2873 count it as a wrong format error, not a system call error, since
2874 the object file might simply be too small.
2875
2876 * targets.c (target_vector): Added nlm32_alpha_vec inside #ifdef
2877 BFD64.
2878 * Makefile.in (BFD32_BACKENDS): Remove nlm32-alpha.o.
2879 (BFD64_BACKENDS): Add nlm32-alpha.o. It depends on 64 bit
2880 support, even though it is for an Alpha in 32 bit mode.
2881 * configure.in (nlm32_alpha_vec): Set target64 to true.
2882
2883 * nlm32-gen.c, nlm64-gen.c: Removed. All nlm targets are
2884 different, so there is no point to providing a generic one.
2885 * libnlm.h: Don't bother to check for nlm_backend(bfd) being NULL
2886 in the backend accessor macros; that should no longer be possible.
2887 * targets.c (target_vector): Removed nlm32_big_generic_vec,
2888 nlm64_big_generic_vec, nlm64_little_generic_vec.
2889 * configure.in (nlm32_big_generic_vec, nlm32_little_generic_vec,
2890 nlm64_big_generic_vec, nlm64_little_generic_vec): Removed.
2891 * Makefile.in: Rebuilt dependencies, and
2892 (BFD32_BACKENDS): Removed nlm32-gen.o.
2893 (BFD64_BACKENDS): Removed nlm64-gen.o.
2894 (CFILES): Removed nlm32-gen.c and nlm64-gen.c.
2895
559d5074
ILT
2896 * hp300hpux.c (ARCH_SIZE): Define before including aoutx.h.
2897
2f84ec0d
ILT
2898 * linker.c (_bfd_generic_link_add_one_symbol): Add constructor and
2899 bitsize arguments. Changed all callers (aoutx.h).
2900 * libbfd-in.h (_bfd_generic_link_add_one_symbol): Add constructor
2901 and bitsize arguments to declaration.
2902 * libbfd.h: Rebuilt.
2903
2904 * ecoff.c: First cut at new style of linker backend for
2905 ECOFF--added a bunch of functions. Also:
2906 (ecoff_sec_to_styp_flags): Set flags for .pdata and .xdata.
2907 (ecoff_slurp_symbolic_header): New function.
2908 (ecoff_slurp_symbolic_info): Call ecoff_slurp_symbolic_header.
2909 (ecoff_compute_reloc_file_positions): New function.
2910 (ecoff_set_section_contents): Get out quickly if count is zero.
2911 Check errors better.
2912 (ecoff_write_object_contents): Put .xdata section in data segment.
2913 Call ecoff_compute_reloc_file_positions. Don't output relocs or
2914 external symbols if outsymbols is NULL.
2915 (ecoff_bfd_final_link): Completely rewritten.
2916 * libecoff.h: Include bfdlink.h.
2917 (struct ecoff_backend_data): Add relocate_section field.
2918 (ecoff_data_type): Add sym_hashes and symndx_to_section fields.
2919 (struct ecoff_link_hash_entry): Define.
2920 (struct ecoff_link_hash_table): Define.
2921 (ecoff_bfd_link_add_symbols): Declare as function, not macro.
2922 (ecoff_bfd_link_hash_table_create): Likewise.
2923 * ecofflink.c (bfd_ecoff_debug_one_external): New function.
2924 (bfd_ecoff_debug_externals): Call bfd_ecoff_debug_one_external.
2925 * bfd-in.h (bfd_ecoff_debug_one_external): Declare.
2926 * bfd-in2.h: Rebuilt.
2927 * coff-alpha.c (alpha_howto_table): Mark BRADDR as
2928 partial_inplace, and set the src_mask to 0x1fffff.
2929 (alpha_ecoff_get_relocated_section_contents): Remove unused
2930 variable gp_warned.
2931 (alpha_convert_external_reloc): New static function.
2932 (alpha_relocate_section): New static function.
2933 (alpha_ecoff_backend_data): Initialize relocate_section field.
2934 * coff-mips.c (mips_relocate_refhi): New static function.
2935 (mips_relocate_section): New static function.
2936 (mips_ecoff_backend_data): Initialize relocate_section field.
2937
2938 * reloc.c (_bfd_relocate_contents): Corrected signed overflow
2939 checking when there is an addend.
2940
2941 * aoutx.h (NAME(aout,final_link)): Don't abort when trying to link
2942 a non a.out file, just pass it to _bfd_default_link_order.
2943 (aout_link_input_section_std): When doing a final PC relative link
2944 against a section symbol, subtract the VMA of the input section.
2945 (aout_link_input_section_ext): Likewise.
2946
2947 * linker.c (default_indirect_link_order): Renamed from
2948 _bfd_generic_indirect_link_order and made static.
2949 (_bfd_generic_final_link): Don't switch on link_order type, just
2950 call _bfd_default_link_order.
2951 (_bfd_default_link_order): Handle bfd_indirect_link_order type.
2952 * genlink.h: Removed declaration of
2953 _bfd_generic_indirect_link_order.
2954 * elf32-mips.c (mips_elf_final_link): Don't switch on link_order
2955 type, just call _bfd_default_link_order.
2956
2957Tue Jan 4 21:23:37 1994 Ian Lance Taylor ([email protected])
2958
2959 * linker.c (generic_link_check_archive_element): Base the name of
2960 the created common section on the name of the section the symbol
2961 came from.
2962 (_bfd_generic_link_add_one_symbol): (case BIG): A common symbol
2963 must have a section, so don't bother to create one.
2964
83acd9a2
DM
2965Mon Jan 3 15:32:16 1994 David J. Mackenzie ([email protected])
2966
2967 * aout-target.h (MY(vec)): Add DYNAMIC to mask of object flags.
2968 * aoutf1.h (NAME(aout,sunos4_write_object_contents)):
2969 If the DYNAMIC flag is set, set it in the exec header.
2970 * aoutx.h (NAME(aout,some_aout_object_p)): If the object is
2971 dynamically linked, set the DYNAMIC flag in the BFD.
2972 * libaout.h (N_SET_DYNAMIC): New macro.
2973 (N_DYNAMIC): Add missing 0 in mask.
2974
031534b0
ILT
2975Mon Jan 3 11:41:45 1994 Ian Lance Taylor ([email protected])
2976
2f84ec0d
ILT
2977 * ecoff.c (ecoff_get_extr): Don't output section symbols as
2978 external symbols.
2979
85d73944
ILT
2980 * bfd-in.h, hash.c: Change bfd_hash_allocate argument from size_t
2981 to unsigned int, because size_t may not be defined in bfd.h.
2982 * bfd-in2.h: Rebuilt.
2983
8120aa8f
ILT
2984 * bfd-in.h (bfd_get{b,l}[_signed_]{16,32,64}): Declare argument to
2985 be a const pointer.
2986 * bfd-in2.h: Rebuilt.
2987 * libbfd.c (bfd_get{b,l}[_signed_]{16,32,64}): Declare argument to
2988 be a const pointer.
2989 * targets.c (bfd_target): Change swap function pointers
2990 accordingly.
2991 * archive.c (do_slurp_coff_armap): Change swap accordingly.
2992 * aix386-core.c: Change NO_GET and NO_GETS accordingly.
2993 * hppabsd-core.c, hpux-core.c, irix-core.c, osf-core.c,
2994 ptrace-core.c, trad-core.c: Change NO_GET and NO_SIGNED_GET
2995 accordingly.
2996
b59f0276
ILT
2997 * libbfd-in.h (struct artdata): Added tdata field.
2998 (_bfd_add_bfd_to_archive_cache): Declare.
2af2b7c4 2999 (_bfd_get_elt_at_filepos): Declare.
b59f0276
ILT
3000 (_bfd_snarf_ar_hdr): Renamed from snarf_ar_hdr.
3001 * libbfd.h: Rebuilt.
3002 * archive.c: Cleaned up some more.
3003 (_bfd_generic_mkarchive, bfd_generic_archive_p): Initialize
3004 pointer elements of artdata.
3005 (_bfd_add_bfd_to_archive_cache): Renamed from add_bfd_to_cache.
3006 (_bfd_snarf_ar_hdr): Renamed from snarf_ar_hdr.
2af2b7c4
ILT
3007 (_bfd_get_elt_at_filepos): Renamed from get_elt_at_filepos.
3008 (get_extended_arelt_filename, bfd_construct_extended_name_table,
3009 bfd_ar_hdr_from_filesystem, compute_and_write_armap): Made static.
b59f0276
ILT
3010 * ecoff.c: Some comment changes.
3011 (ecoff_slurp_armap): Handle rename of snarf_ar_hdr. Set
3012 ardata->tdata to raw_armap.
3013 (ecoff_archive_p): Initialize pointer elements of artdata.
3014 * coff-rs6000.c (rs6000coff_get_elt_at_filepos): Handle rename of
3015 add_bfd_to_cache.
3016
031534b0
ILT
3017 * hash.c: Added some documentation.
3018
3f99570e
JK
3019Mon Jan 3 11:09:28 1994 Jim Kingdon ([email protected])
3020
3021 * aout-target.h, netbsd386.c: Replace NO_SWAP_MAGIC with SWAP_MAGIC,
3022 and do the swapping here rather than calling ntohl from the N_*
3023 macros. This cleans up assumptions about the size of a host long,
3024 the existence to ntohl, etc.
3025
e38bcbdb
RS
3026Sat Jan 1 13:50:05 1994 Rob Savoye ([email protected])
3027
3028 * config.bfd: Add support for VSTa micro-kernel. It currently uses
3029 i386-aout.
3030
f4d7c848
DM
3031Sat Jan 1 10:18:54 1994 David J. Mackenzie ([email protected])
3032
00fe3f53 3033 * hosts/i386mach3.h (HOST_SEGMENT_SIZE): Fix value.
f4d7c848
DM
3034 * i386mach3.c (SEGMENT_SIZE): Fix value.
3035
728472f1
ILT
3036Fri Dec 31 16:23:43 1993 Ian Lance Taylor ([email protected])
3037
3038 Minor cleanups suggested by CodeCenter.
3039 * aoutx.h, coffgen.c, ecoff.c, ecofflink.c, elf.c, libbfd.c,
3040 linker.c, reloc.c, section.c, srec.c: Added /*ARGSUSED*/ as
3041 appropriate.
3042 * aoutx.h (struct external_exec): Removed unnecessary declaration.
3043 (NAME(aout,some_aout_object_p)): Set some tdata pointers to NULL.
3044 (adjust_z_magic): Removed useless variable data_vma.
3045 (stringtab_init): Initialize hash_zero.
3046 (add_to_stringtab): Removed unused fourth argument.
3047 (NAME(aout,swap_std_reloc_out)): Removed useless variable
3048 r_addend.
3049 (aout_link_input_section): Added some casts.
3050 * archive.c (get_extended_arelt_filename, do_slurp_coff_armap,
3051 bfd_ar_hdr_from_filesystem, bsd_write_armap, coff_write_armap):
3052 Minor code rewriting to make it more C like.
3053 (do_slurp_bsd_armap): Added some casts.
3054 * ecoff.c (ecoff_write_object_contents): Removed useless variable
3055 scn_base.
3056 (ecoff_write_armap): Added some casts. Use "" rather than "\0".
3057 * ecofflink.c (bfd_ecoff_write_debug): Added a cast.
3058 * libaout.h (struct internal_exec): Removed unnecessary
3059 declaration.
3060 * linker.c (_bfd_generic_indirect_link_order): Added a cast.
3061 * opncls.c (new_bfd): Removed a cast.
3062 * reloc.c (bfd_generic_get_relocated_section_contents): Added
3063 some casts.
3064 * srec.c (internal_srec_write_object_contents): Removed useless
3065 variable bytes_written.
3066
696df58f
DM
3067Fri Dec 31 11:46:13 1993 David J. Mackenzie ([email protected])
3068
3069 * i386mach3.c (N_TXTADDR): Don't define after all.
3070 (TEXT_START_ADDR): Don't include exec header size in value.
3071
e450eb45
DM
3072Thu Dec 30 15:47:54 1993 David J. Mackenzie ([email protected])
3073
3074 * i386mach3.c (N_TXTADDR): Define.
3075
4c3721d5
ILT
3076Thu Dec 30 13:37:24 1993 Ian Lance Taylor ([email protected])
3077
3078 Extensive changes to move the bulk of the linker into BFD so that
3079 more efficient backend code can be written for specific object
3080 files. Only existing efficient backend is a.out.
3081 * seclet.c, seclet.h: Removed.
3082 * hash.c, linker.c, genlink.h: New files.
3083 * bfd-in.h: Removed bfd_error_vector. Declared hash table
3084 structures and functions.
3085 (JUMP_TABLE): Removed bfd_seclet_link, added
3086 bfd_link_hash_table_create, bfd_link_add_symbols and
3087 bfd_final_link.
3088 * All backends: Changed accordingly.
3089 * bfd-in2.h: Rebuilt.
3090 * bfd.c (struct _bfd): Added link_next and archive_pass fields.
3091 Removed ld_symbols field.
3092 (bfd_nonrepresentable_section, bfd_undefined_symbol,
3093 bfd_reloc_value_truncated, bfd_reloc_is_dangerous,
3094 bfd_error_vector): Removed.
3095 (bfd_default_error_trap, bfd_error_trap,
3096 bfd_error_nonrepresentabltrap): Removed.
3097 (bfd_get_relocated_section_contents): Pass link_info. Pass
3098 link_order instead of seclet. Pass symbols.
3099 (bfd_relax_section): Pass link_info.
3100 (bfd_seclet_link): Removed.
3101 (bfd_link_hash_table_create, bfd_link_add_symbols,
3102 bfd_final_link): New macros.
3103 * libbfd-in.h: If __GNUC__ is defined and alloca is not, define
3104 alloca as __builtin_alloca. Declare internal linking functions.
3105 * libbfd.h: Rebuilt.
3106 * libbfd.c (bfd_seek): Comment out fseek assertion. It's worked
3107 for months.
3108 * reloc.c (reloc_howto_type): Added error_message argument to
3109 special_function field. Changed all callers and all definitions.
3110 (bfd_get_reloc_size): Make argument a const pointer.
3111 (bfd_perform_relocation): Add error_message argument to hold
3112 string set if return value if bfd_reloc_dangerous. Changed all
3113 callers.
3114 (_bfd_final_link_relocate, _bfd_relocate_contents): New functions.
3115 * section.c (asection): Renamed seclets_head and seclets_tail to
3116 link_order_head and link_order_tail.
3117 * targets.c (bfd_target): Replaced seclet argument with link_info
3118 and link_order and symbols arguments in
3119 bfd_get_relocated_section_contents. Added symbols argument to
3120 bfd_relax_section. Removed bfd_seclet_link. Added
3121 bfd_link_hash_table_create, bfd_link_add_symbols and
3122 bfd_final_link.
3123 * libaout.h (struct aoutdata): Added external_syms,
3124 external_sym_count, external_strings, sym_hashes fields.
3125 (obj_aout_external_syms, obj_aout_external_sym_count,
3126 obj_aout_external_strings, obj_aout_sym_hashes): New accessor
3127 macros.
3128 (WRITE_HEADERS): Only output symbols if outsymbols is not NULL.
3129 * aoutx.h: Wrote new back end linker routines.
3130 (translate_to_native_sym_flags): Return boolean value. Don't use
3131 bfd_error_vector.
3132 (NAME(aout,write_syms)): Return boolean value. Check return value
3133 of translate_to_native_sym_flags and bfd_write.
3134 * aout-target.h (final_link_callback): New function.
3135 (MY_bfd_final_link): New function.
3136 * aout-adobe.c (aout_adobe_write_object_contents): Check return
3137 value of aout_32_write_syms.
3138 * hp300hpux.c (MY(write_object_contents)): Likewise.
3139 * i386lynx.c (WRITE_HEADERS): Likewise.
3140 * libaout.h (WRITE_HEADERS): Likewise.
3141 * bout.c: Changed functions to use link_info->callbacks rather
3142 than bfd_error_vector, and link_orders rather than seclets.
3143 * coff-alpha.c: Likewise.
3144 * coff-h8300.c: Likewise.
3145 * coff-h8500.c: Likewise.
3146 * coff-sh.c: Likewise.
3147 * coff-z8k.c: Likewise.
3148 * elf32-hppa.c: Likewise.
3149 * reloc16.c: Likewise.
3150 * coff-alpha.c (alpha_ecoff_get_relocated_section_contents): Look
3151 up _gp in the hash table rather than in outsymbols.
3152 * coff-a29k.c (a29k_reloc): Pass errors back in new error_message
3153 argument rather than printing them.
3154 * coffcode.h (bfd_coff_reloc16_extra_cases): Take link_info and
3155 link_order arguments rather than seclet. Changed all uses and
3156 definitions.
3157 (bfd_coff_reloc16_estimate): Pass link_info arguments. Changed
3158 all uses and definitions.
3159 * libcoff.h: Rebuilt.
3160 * ecoff.c (ecoff_get_extr): If symbol is defined by linker, but
3161 not by ECOFF, make it scAbs.
3162 (ecoff_bfd_final_link): Renamed from ecoff_bfd_seclet_link and
3163 rewritten.
3164 * elf32-mips.c (mips_elf_final_link): Renamed from
3165 mips_elf_seclet_link and rewritten.
3166 * elf32-hppa.c (elf32_hppa_stub_description): Added link_info
3167 field.
3168 (new_stub, add_stub_by_name, hppa_elf_build_arg_reloc_stub,
3169 hppa_elf_build_long_branch_stub, hppa_look_for_stubs_in_section):
3170 Added link_info arguments. Changed all callers.
3171 * elfcode.h (elf_slurp_symbol_table): Don't quit if outsymbols is
3172 not NULL.
3173 * oasys.c (oasys_write_sections): Return boolean value rather than
3174 using bfd_error_vector.
3175 (oasys_write_object_contents): Check return value of
3176 oasys_write_sections.
3177 * hosts/std-host.h: Don't declare qsort or strtol.
3178 * Makefile.in: Rebuild dependencies.
3179 (BFD_LIBS): Removed seclet.o. Added hash.o and linker.o.
3180 (CFILES): Removed seclet.c. Added hash.c and linker.c.
3181 (HFILES): Removed seclet.h. Added genlink.h.
3182
1adbf662
PS
3183Thu Dec 30 07:41:36 1993 Peter Schauer ([email protected])
3184
3185 * section.c (bfd_get_section_contents): Return zero filled buffer
3186 if section has no contents.
3187
d1b44e83
ILT
3188Tue Dec 28 12:43:54 1993 Ian Lance Taylor ([email protected])
3189
3190 * elf.c (bfd_elf_generic_reloc): If this is not an inplace reloc,
3191 then skip bfd_perform_relocation even if the addend is non-zero.
3192
a2805287
KR
3193Tue Dec 21 09:22:19 1993 Ken Raeburn ([email protected])
3194
3195 * coffcode.h (coff_write_relocs) [SWAP_OUT_RELOC_OFFSET]: Copy
3196 addend to r_offset field.
3197
3198 * Makefile.in (CFILES): Added coff-sparc.c. Rebuild dependencies.
3199
3200 * coff-sparc.c (SWAP_IN_RELOC_OFFSET, SWAP_OUT_RELOC_OFFSET,
3201 CALC_ADDEND): Define.
3202
3203 * aix386-core.c (aix386_core_file_p): Use cd_regs[0] for computing
3204 the offsetof because AIX /bin/cc does not like to take the address
3205 of an array. (From Minh Tran-Le.)
3206
277b2d2b
JL
3207Thu Dec 16 13:06:32 1993 Jeffrey A. Law ([email protected])
3208
a2805287
KR
3209 * Thu Dec 16 15:41:06 1993 Peter Hoogenboom ([email protected])
3210
3211 * elf32-hppa.c (hppa_elf_build_arg_reloc_stub): Make sure to copy
3212 the return pointer into %r2 if no jump-in-call-delay-slot
3213 optimization was done.
3214
277b2d2b
JL
3215 * hosts/hp300bsd.h: Correctly identify 4.3BSD vs 4.4BSD.
3216
f8af9b40
DM
3217Wed Dec 15 08:04:16 1993 David J. Mackenzie ([email protected])
3218
3219 * hosts/std-host.h: (time): Don't declare; conflicts on Mach3.
3220
3221 * hosts/i386mach3.h (HOST_PAGE_SIZE): Set to 1 to avoid padding.
3222 (HOST_SEGMENT_SIZE): Set to 0 for same reason.
3223
3224 * i386mach3.c (PAGE_SIZE, SEGMENT_SIZE): Same changes as above.
3225 (TEXT_START_ADDR): Correct.
3226 (MY_backend_data): Define.
3227
3228 * aoutx.h (adjust_o_magic, adjust_z_magic, adjust_n_magic):
3229 New functions; code moved from aout_<size>_adjust_sizes_and_vmas.
3230
c97ae6e4
JL
3231Tue Dec 14 21:48:33 1993 Jeffrey A. Law ([email protected])
3232
3233 * som.c (som_begin_writing): Fix thinkos in auxiliary header
3234 support.
3235 (bfd_som_attach_aux_hdr): Likewise.
3236
a36b6f1d
JL
3237Mon Dec 13 23:34:48 1993 Jeffrey A. Law ([email protected])
3238
3239 * elf32-hppa.c (hppa_elf_gen_reloc_type): Handle 'T' field
3240 selectors for PIC code.
3241
3242 * som.c (hppa_som_gen_reloc_type): Handle 'T' field selectors.
3243 (som_write_fixups): Handle R_DLT_REL, R_FSEL, R_RSEL, R_LSEL
3244 relocations needed by PIC.
3245
9e6f2498
SG
3246Tue Dec 7 15:47:51 1993 Stu Grossman (grossman at cygnus.com)
3247
3248 * nlmcode.h: Fixes to avoid compiler warnings...
3249
900e6d96
ILT
3250Tue Dec 7 15:10:54 1993 Ian Lance Taylor ([email protected])
3251
3252 * libnlm.h (nlm_backend_data): Removed macro definition.
3253 (nlm_alpha_backend_data): Adjusted accordingly.
3254
017a52d7
JL
3255Sun Dec 5 19:32:08 1993 Jeffrey A. Law ([email protected])
3256
f6c2300b
JL
3257 * som.c (som_begin_writing): Flesh out code for handling simple
3258 auxiliary headers.
3259 (bfd_som_attach_aux_hdr): New function.
3260
3261 * som.h (struct somdata): Add fields for attaching version and
3262 copyright headers. Add accessor macros.
3263
744069b8
JL
3264 * som.c (R_DLT_REL, R_AUX_UNWIND, R_SEC_STMT): Add protected
3265 definitions for old versions of HPUX which fail to define them.
3266 (som_hppa_howto_talbe): Add R_DLT_REL, R_AUX_UNWIND, and R_SEC_STMT
3267 now that they're safe. Delete bogus R_STATEMENT relocations.
3268
017a52d7
JL
3269 * som.c (som_hppa_howto_table): Add missing R_END_TRY. Delete
3270 extra R_DATA_OVERRIDE.
3271 (hppa_som_gen_reloc_type): Generate a relocation for the rounding
3272 mode selector if needed.
3273 (som_write_fixups): Handle requests for a change in the default
3274 rounding mode. Rounding modes do not consume input bytes, but
3275 are just markers much like R_ENTRY and R_EXIT.
3276
48eb5281
JL
3277Sat Dec 4 19:40:32 1993 Jeffrey A. Law ([email protected])
3278
3279 Fri Dec 3 09:55:17 1993 Pete Hoogenboom ([email protected])
3280
017a52d7
JL
3281 * elf32-hppa.c: (hppa_elf_reloc): Do not do code reordering when
3282 the branch instruction as originally been nullified.
3283 hppa_elf_reloc): Avoid useless call to bfd_put_32 () in the
3284 case of no code reordering due to an LDO instruction in the
3285 delay slot of the branch. Make sure to relocate the correct
3286 instruction. Do not perform instruction reordering for millicode
3287 calls.
3288 (hppa_elf_build_arg_reloc_stub): Change the relocation type
3289 to R_HPPA_STUB_CALL_17 when special processing might be needed.
3290 (hppa_elf_build_long_branch_stub): Prevent code reordering on
3291 a call from a linker stub to another linker stub and for millicode
3292 calls. Do not trash the return register for calls from one linker
3293 stub to a second linker stub.
3294
4861ac76
JL
3295 * elf32-hppa.c: (elf_hppa_howto_table): PLABEL and DLT
3296 relocations are not pc-relative.
3297
48eb5281
JL
3298 * hppa_stubs.h: (BLE_N_XXX_0_31): New instruction used in
3299 linker stub code.
3300 (COPY_2_31): Likewise.
3301
ecb2d887
ILT
3302Fri Dec 3 18:40:58 1993 Ian Lance Taylor ([email protected])
3303
3304 * config/solaris2.mh (HDEFINES): Remove -Dconst=
3305 * hosts/solaris.h: If not __GNUC__, define const as empty.
3306
800748cd
ILT
3307Thu Dec 2 15:43:32 1993 Ian Lance Taylor ([email protected])
3308
4919d3ab
ILT
3309 * ecoff.c: Added various casts for 32/64 bit cross targeting.
3310 (ecoff_mkobject_hook): Set SEC_SHARED_LIBRARY for the .reginfo
3311 section so that the linker ignores it.
3312 * ecofflink.c: Added various casts for 32/64 bit cross targeting.
3313 (ecoff_add_bytes): Changed need argument to size_t.
3314 (bfd_ecoff_debug_link_other): Check return value of
3315 ecoff_add_string.
3316
3317 * libbfd-in.h (new_bfd): Use void rather than an empty parameter
3318 list.
3319 * libbfd.h: Rebuilt.
3320
800748cd
ILT
3321 * libnlm.h (struct nlm_obj_tdata): New field backend_data.
3322 (nlm_backend_data, nlm_alpha_backend_data): New accessor macros.
3323 (struct nlm_backend_data): New field no_uninitialized_data.
3324 (nlm_no_uninitialized_data): New accessor macro.
3325 * nlmcode.h (nlm_compute_section_file_positions): Handle
3326 no_uninitialized_data.
3327 (nlm_external_reloc_compare): Sort relocs by address for a
3328 particular symbol, to make the sort more stable.
3329 (nlm_write_object_contents): Cast the arguments to qsort. Get the
3330 value of a debugging symbol the same way we get the value of a
3331 normal symbol.
3332 * nlm32-alpha.c: Various changes. Write out GP and .lita relocs.
3333 Set no_uninitialized_data to true.
3334 * nlm32-i386.c (nlm32_i386_backend), nlm32-sparc.c
3335 (nlm32_sparc_backend): Set no_uninitialized_data field false.
3336 * nlmswap.h (nlm_swap_fixed_header_out): Zero out destination
3337 before filling it in.
3338
a7f6a456
JL
3339Wed Dec 1 21:47:58 1993 Jeffrey A. Law ([email protected])
3340
3341 * som.c (som_section_type, som_decode_symcalss): New functions.
3342 (som_get_symbol_info): Use them.
3343 (som_slurp_symbol_table): Set the section of common and undefined
3344 symbols correctly.
3345
848ace96
KR
3346Wed Dec 1 14:15:10 1993 Ken Raeburn ([email protected])
3347
3348 * elfcode.h (write_relocs): Initialize local var LAST_SYM_IDX, to
3349 make gcc happy.
3350
3351 * mipsbsd.c: Changes from Ralph Campbell:
3352 (mips_howto_table_ext): MIPS_RELOC_LO16 should use
3353 complain_overflow_dont.
3354 (aout_mips_*_vec): Make name use "a.out" instead of "aout", to
3355 make gdb happy.
3356
3357 * bfd.c (bfd_errmsgs): Reword invalid-target message.
3358
3359 * config.bfd: For sparc*-*-coff, use sparc-coff.
3360 * configure.in: Handle sparccoff_vec.
3361 * targets.c (sparccoff_vec): Declare.
3362
3363 * reloc.c (bfd_get_reloc_size): New function.
3364 (struct reloc_howto_type): Update documentation of size field.
3365
2f555d79
ILT
3366Wed Dec 1 14:39:05 1993 Ian Lance Taylor ([email protected])
3367
68eaffda
ILT
3368 * nlm32-alpha.c: New file; preliminary Alpha NetWare support.
3369 * config.bfd (alpha-*-netware*): New target; use alpha-nlm.
3370 * config/alpha-nlm.mt: New file.
3371 * configure.in (nlm32_alpha_vec): New vector; use nlm32-alpha.o,
3372 nlm32.o, and nlm.o.
3373 * Makefile.in (BFD32_BACKENDS): Added nlm32-alpha.o.
3374 (CFILES): Added nlm32-alpha.c.
3375 Rebuilt dependencies.
3376 * targets.c (nlm32_alpha_vec): Declare.
3377
3378 * libnlm.h (struct nlm_backend_data): New fields
3379 optional_prefix_size, nlm_backend_object_p, nlm_write_prefix,
3380 nlm_set_public_section, nlm_get_public_offset. Removed unused
3381 nlm_write_reloc field. Changed nlm_write_import to remove
3382 unnecessary symbol argument. Renamed nlm_write_externals to
3383 nlm_write_external, and changed cound argument from bfd_vma to
3384 bfd_size_type.
3385 (nlm_optional_prefix_size, nlm_backend_object_p_func,
3386 nlm_write_prefix_func, nlm_set_public_section_func,
3387 nlm_get_public_offset_func): New accessor macros.
3388 (nlm_write_reloc_func): Removed.
3389 (nlm_write_external_func): Adjusted for field renaming.
3390 * nlm32-i386.c (nlm_i386_write_import): Renamed from
3391 nlm_i386_write_reloc. Removed old nlm_i386_write_import which
3392 just called old nlm_i386_write_reloc.
3393 (nlm_i386_write_external): Renamed from nlm_i386_write_externals.
3394 Declared. Changed second argument from bfd_vma to bfd_size_type.
3395 (nlm32_i386_backend): Adjusted for changes to fields and names.
3396 * nlm32-sparc.c (nlm_sparc_mangle_relocs): Removed unused,
3397 ifdeffed out code.
3398 (nlm_sparc_write_import): Removed second argument.
3399 (nlm_sparc_write_external): Renamed from
3400 nlm_sparc_write_externals. Changed second argument from bfd_vma
3401 to bfd_size_type.
3402 (nlm32_sparc_backend): Adjusted for changes to fields and names.
3403 * nlmcode.h: Removed some unused code.
3404 (nlm_object_p): Don't destroy tdata pointer. Call
3405 backend_object_p function if it exists.
3406 (nlm_slurp_symbol_table): Removed unused variable rcount. Call
3407 set_public_section_func if it exists instead of checking
3408 NLM_HIBIT.
3409 (nlm_compute_section_file_positions): Account for
3410 optional_prefix_size.
3411 (nlm_write_object_contents): Account for optional_prefix_size.
3412 Removed useless variable write_reloc_func. Changed declaration
3413 and call of write_import_func. Call write_prefix_func if it
3414 exists. Removed unused variables len and temp. Call
3415 get_public_offset_func if it exists rather than setting NLM_HIBIT.
3416 * nlmswap.h: Declare functions.
3417
2f555d79
ILT
3418 * bfd-in.h (uint64_typeLOW, uint64_typeHIGH): Fully parenthesize
3419 for clarity.
3420 (fprintf_vma, sprintf_vma): Use %lx, not %x.
3421 * bfd-in2.h: Rebuilt.
3422 * hosts/alphaosf.h (uint64_typeLOW, uint64_typeHIGH): Cast results
3423 to unsigned long.
3424
3425 * config.bfd: Don't set target64 here, as the setting is ignored.
3426 * configure.in (ecoffalpha_little_vec): Set target64.
3427
3428 * config/alphaosf.mt (TDEFINES): Removed; setting host parameters
3429 in TDEFINES is wrong.
3430
3431 * coff-alpha.c (alpha_ecoff_get_relocated_section_contents):
3432 Remove unused variable output_section.
3433
7cd39d69
ILT
3434Tue Nov 30 16:45:23 1993 Ian Lance Taylor ([email protected])
3435
3436 * irix-core.c: New file for Irix 4 and Irix 5 core support.
3437 Functions taken out of coff-mips.c. Handle vmap type VMAPFILE.
3438 * coff-mips.c: Irix 4 core file support moved to irix-core.c.
3439 * targets.c: If IRIX_CORE defined, include irix_core_vec in
3440 target_vector.
3441 * config/irix4.mh (HDEFINES): Add -DIRIX_CORE.
3442 (HDEPFILES): Define to be irix-core.o.
3443 * config/irix5.mh (HDEFINES): Define to be -DIRIX_CORE.
3444 (HDEPFILES): Define to be irix-core.o.
3445 * Makefile.in (OPTIONAL_BACKENDS): Added irix-core.o. Removed
3446 sco-core.o, which no longer exists.
3447 (CFILES): Added all *-core.c files.
3448 Rebuilt dependencies.
3449
8d12f138
ILT
3450Wed Nov 24 02:02:41 1993 Ian Lance Taylor ([email protected])
3451
6c35a16d
ILT
3452 * elfcode.h (map_program_segments): Restore check of file_size !=
3453 mem_size, but only if SHT_PROGBITS.
3454
8d12f138
ILT
3455 * ecofflink.c: New file to hold ECOFF debug information linking
3456 routines.
3457 * ecoff.c (ecoff_clear_output_flags, ecoff_rel, ecoff_dump_seclet,
3458 ecoff_add_string, ecoff_get_debug): Removed. Functionality now in
3459 ecofflink.c.
3460 (ecoff_get_extr, ecoff_set_index): New functions.
3461 (ecoff_slurp_symbolic_info): Don't save raw_size.
3462 (ecoff_bfd_seclet_link): Rewrote to use ecofflink.c functions.
3463 (ecoff_compute_section_file_positions): Don't set EXEC_P just
3464 because there is a start address.
3465 (ecoff_write_object_contents): Handle external symbols here. Use
3466 ecofflink.c functions to write out debugging information.
3467 * elf32-mips.c (mips_elf_read_ecoff_info, mips_elf_get_extr,
3468 mips_elf_set_index): New functions.
3469 (mips_elf_seclet_link): Discard empty sections, the .options
3470 section and .gptab sections. Handle linking .mdebug section.
3471 * libecoff.h (ecoff_data_type): Removed raw_size and ifdbase.
3472 * libelf.h (elf_symbol_type): Added mips_extr to tc_data union.
3473 * bfd-in.h: Added prototypes for routines in ecofflink.c (some are
3474 called by gas, so they are public).
3475 * bfd-in2.h: Rebuilt.
3476 * Makefile.in (BFD_LIBS): Added ecofflink.o.
3477 (CFILES): Added ecofflink.c.
3478 (ecofflink.o): New target. Rebuilt dependencies.
3479
abb324b2
JL
3480Mon Nov 22 22:26:42 1993 Jeffrey A. Law ([email protected])
3481
3482 * som.c (hppa_object_p): Also recognize SHARED_MAGIC_CNX as
3483 a valid magic number if it's been defined.
3484
8f45f604
ILT
3485Mon Nov 22 14:17:36 1993 Ian Lance Taylor ([email protected])
3486
3487 * ecoff.c (ecoff_mkobject): Don't create .scommon section; linker
3488 no longer requires it.
3489 (ecoff_bfd_seclet_link, ecoff_sizeof_headers,
3490 ecoff_write_object_contents): Don't treat .scommon section
3491 specially.
3492
c236d8b3
FF
3493Mon Nov 22 10:54:27 1993 Fred Fish ([email protected])
3494
3495 Merged changes from [email protected] (Kevin A. Buettner):
3496 * bfd/config/delta88.mh (HDEFINES): Define this to be -DPTRACE_CORE.
3497 * bfd/config/delta88.mh (HDEPFILES): Defined to be ptrace-core.o.
3498 * bfd/ptrace-core.c: New file for dealing with core files with
3499 start with the ptrace_user structure found on BCS compliant systems.
3500 * bfd/targets.c (ptrace_core_vec): New vector.
3501
36456a67
JL
3502Mon Nov 22 02:33:12 1993 Jeffrey A. Law ([email protected])
3503
3504 * Minimal support for reading SOM fixup streams. Allows
3505 objdump -r to do something reasonable.
3506 * som.c (som_get_reloc_upper_bound): Implement.
3507 (som_canonicalize_reloc): Implement.
3508 (som_set_reloc_info, som_slurp_reloc_table): New functions.
3509
8d12f138
ILT
3510Sun Nov 21 13:46:55 1993 Ken Raeburn ([email protected])
3511
3512 * hosts/lynx.h (FPRINTF_ALREADY_DECLARED): Define.
3513 * hosts/sparclynx.h: Include lynx.h instead of duplicating it.
3514
a1bff336
ILT
3515Fri Nov 19 14:34:04 1993 Ian Lance Taylor ([email protected])
3516
533af031
ILT
3517 * coff-a29k.c (a29k_reloc): For R_IREL, don't left shift
3518 signed_value before sign extending it. Don't subtract out
3519 reloc_entry->address. This makes it compatible with what gas is
3520 generating.
3521
a1bff336
ILT
3522 * elfcode.h (elf_fake_sections): Accept .sbss as the name for a
3523 SHT_NOBITS sections.
3524 (map_program_segments): Don't leave the loop after the first
3525 SHT_NOBITS section.
3526 (assign_file_positions_except_relocs): Only force sh_offset and
3527 sh_addr to match modulo maxpagesize for a section which is not
3528 SHT_NOBITS. Changed the method used to force page alignment after
3529 a SHT_NOBITS section to only do it for the last such consecutive
3530 section, and to really force page alignment.
3531
96be1f52
KR
3532Fri Nov 19 04:02:01 1993 Ken Raeburn ([email protected])
3533
4c01d9b5
KR
3534 * coffcode.h (coff_slurp_symbol_table): Print more verbose message
3535 in the case of an unknown (or unhandled) storage class.
3536
96be1f52
KR
3537 * config/i386-lynx.mt (TDEFINES): FPRINTF_ALREADY_DECLARED should
3538 not be defined here, since it is a host attribute, not a target
3539 one.
3540 * config/m68k-lynx.mt, config/sparc-lynx.mt: Ditto.
3541
3542 * coffcode.h (coff_bfd_reloc_type_lookup): Don't define if already
3543 defined.
3544
3545 * coff-sparc.c: Define some relocations, based on ELF relocations.
3546 (enum reloc_type, bfd_coff_generic_reloc, coff_sparc_howto_table,
3547 struct coff_reloc_map, sparc_reloc_map,
3548 coff_sparc_reloc_type_lookup): Borrowed from elf32-sparc.c and
3549 elf.c, renamed.
3550 (coff_bfd_reloc_type_lookup): Define to be coff_sparc_reloc_....
3551 (rtype2howto): Index into coff_sparc_howto_table using
3552 dst->r_type.
3553
f8944f84
ILT
3554Thu Nov 18 11:45:39 1993 Ian Lance Taylor ([email protected])
3555
3556 * config.bfd (mips*-*-irix5*): New target; use mipsbelf.
3557 * configure.host (mips-sgi-irix5*) New host; use irix5 (no
3558 hosts/irix5.h created; just use std-host.h).
3559 * config/irix5.mh: New file; like irix4.mh, but don't use -G or
3560 -lmalloc.
3561 * Makefile.in: Rebuilt dependencies.
3562
3563 * ecoffswap.h: Changed type of internal pointers for swap out
3564 functions to const *.
3565
3566 * elf32-mips.c (mips_elf_got16_reloc): New function. Handle GOT16
3567 correctly for assembler, but linker support not implemented.
3568 (elf_mips_howto_table): Use mips_elf_got16_reloc for GOT16.
3569 (mips_elf_sym_is_global): New function; at least on Irix 5, all
3570 non section symbols are considered global.
3571 (elf_backend_sym_is_global): Define.
3572 (mips_elf_final_write_processing): New function. Set the MIPS
3573 architecture level correctly.
3574 (elf_backend_final_write_processing): Define.
3575 (mips_elf_section_from_shdr): Handle SHT_MIPS_OPTIONS.
3576 (mips_elf_fake_sections): Set entsize of .mdebug or .reginfo
3577 section to 1. Handle .options section.
3578 (mips_elf_acom_section, mips_elf_acom_symbol,
3579 mips_elf_acom_symbol_ptr): New static variables, used to build a
3580 generic .acommon section to hold SHN_MIPS_ACOMMON symbols.
3581 (mips_elf_symbol_processing): Handle SHN_MIPS_ACOMMON symbols by
3582 putting them all in a global .acommon section.
3583
3584 * elfcode.h (bfd_section_from_shdr): Don't dump core if target
3585 section has no ELF section data.
3586 (elf_make_sections): Set addralign of reloc section to 4.
3587 (elf_fake_sections): Likewise.
3588 (map_program_segments): Don't consider section 0.
3589 (assign_file_positions_except_relocs): Don't consider section 0.
3590 In the main loop, skip the symtab and strtab sections, since their
3591 positions are set elsewhere.
3592 (swap_out_syms): Set addralign of symtab section to 4. Set
3593 addralign of strtab sections to 1.
3594 (assign_file_positions_for_relocs): Don't consider section 0.
3595 (write_object_contents): Don't write out section 0.
3596
3597 * libelf.h (struct elf_backend_data): Added fields
3598 elf_backend_sym_is_global and elf_backend_final_write_processing.
3599 * elf32-target.h (elf32_bed): Added corresponding initializers.
3600 * elf64-target.h (elf64_bed): Likewise.
3601 * elfcode.h (sym_is_global): Take abfd argument. Call
3602 elf_backend_sym_is_global if it is not NULL.
3603 (elf_map_symbols): Pass abfd to sym_is_global.
3604 (write_object_contents): Call elf_backend_final_write_processing
3605 if it is defined.
3606
c9668c58
ILT
3607Wed Nov 17 18:43:28 1993 Ian Lance Taylor ([email protected])
3608
3609 * libecoff.h: Include coff/ecoff.h.
3610 (struct ecoff_backend_data): Move external debugging information
3611 fields into a single field pointing to an ecoff_debug_swap
3612 structure.
3613 (ecoff_data_type): Move debugging information fields into a single
3614 field pointing to an ecoff_debug_info structure.
3615 * coff-alpha.c, coff-mips.c, ecoff.c: Corresponding changes.
3616
2f555d79
ILT
3617Wed Nov 17 17:38:58 1993 Sean Eric Fagan ([email protected])
3618
3619 * nlmswap.h: New file to swap fixed header. Included by NLM
3620 backends.
3621 * libnlm.h (struct reloc_and_sec): Define.
3622 (struct nlm_backend_data): Add fields fixed_header_size,
3623 nlm_read_import, nlm_write_import, nlm_swap_fhdr_in,
3624 nlm_swap_fhdr_out.
3625 (nlm_fixed_header_size, nlm_read_import_func,
3626 nlm_write_import_func, nlm_swap_fixed_header_in_func,
3627 nlm_swap_fixed_header_out_func, nlm_write_external_func): New
3628 accessor macros.
3629 * nlmcode.h: Use new functions.
3630 * nlm32-i386.c: Provide new functions.
3631 * nlm32-sparc.c: New file; SPARC NLM backend.
3632
55ff7aef
SS
3633Wed Nov 17 13:56:10 1993 Stan Shebs ([email protected])
3634
3635 * i386lynx.c (swap_std_reloc_in, swap_ext_reloc_in): Ignore
3636 garbage bits appearing in the upper end of symbolnums.
3637
3638 * config/sparc-lynx.mt (TDEFINES): Add -DFPRINTF_ALREADY_DECLARED.
3639
343c1a96
SG
3640Tue Nov 16 17:03:41 1993 Stu Grossman (grossman at cygnus.com)
3641
3642 * lynx-core.c (lynx_core_file_p): Change bfd_zalloc to bfd_alloc.
3643 * m68klynx.c: Define core file macros.
3644 * hosts/i386lynx.h, hosts/m68klynx.h, hosts/lynx.h: Move all
3645 non-architecture specific stuff into lynx.h.
3646
794057a7
JK
3647Tue Nov 16 15:45:54 1993 Jim Kingdon ([email protected])
3648
3649 * i386linux.c: Define new macro ZMAGIC_DISK_BLOCK_SIZE to 1024, and
3650 change PAGE_SIZE to 4096.
3651
3652Mon Nov 15 11:48:08 1993 Ken Raeburn ([email protected])
3653
3654 * Makefile.in (diststuff): New target.
3655
3656 * VERSION: Updated.
3657
09796011
JL
3658Sun Nov 14 23:33:01 1993 Jeffrey A. Law ([email protected])
3659
3be54498
JL
3660 * som.c (som_object_setup): Do not create dummy ".text", ".data",
3661 and ".bss" sections.
3662 (setup_sections): Do not set SEC_HAS_CONTENTS if a section's size
3663 is zero. Recognize BSS type sections and turn off SEC_LOAD and
3664 SEC_DATA (so binutils/size works). Set the correct value for
3665 a section's _raw_size.
3666 (som_slurp_symbol_table): Program entry points, and millicode are
3667 also functions. Mark them as such. Also mark L$* symbols as
3668 debugging symbols.
3669
09796011
JL
3670 * bfd-in2.h: Rebuilt.
3671
aff97790
JL
3672Sat Nov 13 15:27:15 1993 Jeffrey A. Law ([email protected])
3673
91c0bcbb
JL
3674 * som.c (som_bfd_reloc_type_lookup): Add missing prototype. Returns
3675 a pointer to constant data. Delete bogus #define which made the
3676 function useless.
3677
aff97790 3678 * som.c (som_prep_for_fixups): New function.
9d0dea6f 3679 (som_write_fixups): New function.
0b35f7ec 3680 (som_write_space_strings): New function.
6eb64408
JL
3681 (som_write_symbol_strings): New function.
3682 (som_begin_writing): New function.
aff97790 3683
40249bfb
JL
3684Fri Nov 12 15:29:36 1993 Jeffrey A. Law ([email protected])
3685
980bac64
JL
3686 * som.c (som_write_object_contents): Do not abort. Flesh out.
3687 (som_set_section_contents): Do not abort. Flesh out.
3688
efc0df7c
JL
3689 * som.c (som_write_headers): New function.
3690 (som_prep_headers): New function.
713de7ec 3691 (som_build_and_write_symbol_table): New function.
7057b78f 3692
2212ff92
JL
3693 * som.c (som_sizeof_headers): Add missing prototype.
3694 (som_set_arch_mach): Do not abort.
3695
5532fc5a
JL
3696 * som.c (som_count_spaces): New function.
3697 (som_count_subspaces): New function.
3698 (compare_syms): New function.
3699 (som_compute_checksum): New function.
3700
32619c58
JL
3701 * som.c (hppa_som_gen_reloc_type): New function.
3702 (som_bfd_reloc_type_lookup): New function.
3703
54bbfd37
JL
3704 * som.c (try_prev_fixup): New function.
3705 (som_reloc_skip): New function.
3706 (som_reloc_addend): New function.
efc0df7c 3707 (som_reloc_call): New function.
54bbfd37 3708
d125665c
JL
3709 * som.c (som_initialize_reloc_queue): New function.
3710 (som_reloc_queue_insert): Likewise.
3711 (som_reloc_queue_fix): Likewise.
3712 (som_reloc_queue_find): Likewise.
3713
fcb0c846
JL
3714 * som.c (som_hppa_howto_table): SOM howto relocation table.
3715 (hppa_som_reloc): New function.
3716
4fdb66cd
JL
3717 * som.c (struct reloc_queue): New structure to keep track of
3718 the last four multibyte relocations emitted.
3719 (enum pa_symbol_type): Type to fully describe the symbol types
3720 associated with .import/.export assembler directives.
3721
70f1d738
JL
3722 * som.c: Include libhppa.h
3723
40249bfb
JL
3724 * som.c (bfd_som_set_section_attributes): New function.
3725 (bfd_som_set_subsection_attributes): Likewise.
3726 (bfd_som_set_symboL_type): Likewise.
3727 (bfd_som_attach_unwind_info): Likewise.
3728 * som.h: Declare new exported functions.
3729
3730 * som.h (struct som_symbol): Add new fields to hold additional
3731 information needed to build/write symbol tables and fixup streams.
3732 (struct som_section_data_struct): Add new fields to hold additional
3733 information needed to build/write space and subspace headers.
3734 (som_symbol_data): New accessor macro for SOM symbol information.
3735 (R_HPPA_*): Basic relocation types to be used by the assembler.
3736
115f7430
JK
3737Fri Nov 12 11:00:28 1993 Jim Kingdon ([email protected])
3738
3739 * trad-core.c (trad_unix_core_file_p): If new hook
3740 TRAD_CORE_ALLOW_ANY_EXTRA_SIZE defined, then skip the check for the
3741 corefile being too big.
3742 * hosts/i386sco.h: Define it.
3743
3e80841e
JL
3744Thu Nov 11 15:16:28 1993 Jeffrey A. Law ([email protected])
3745
8a71bf96
JL
3746 * bfd.c (struct _bfd): Add hppabsd_core_data.
3747 * targets.c (target_vector): Add hppabsd_core_vec.
3748 * hpux-core.c (hpux_core_core_file_p): Fail if an unknown core
3749 section is encountered during core section scanning.
3750 * hppabsd-core.c: New file.
3751 * config/hppabsd.mh: Enable HPPA BSD core files.
3752
3e80841e
JL
3753 * elf32-hppa.c (hppa_elf_reloc): Remove DEFUN crud. Remove code
3754 which is either commented out or ifdef'd out. Add, update and
3755 clean comments. Fix various indention and spacing problems. Handle
3756 problems related to using "ble" to jump to a stub rather than "bl"
3757 (%r31 is trashed by "ble", but not by "bl").
3758 (NEW_INSTRUCTION): Put inside curly braces.
3759 (CURRENT_STUB_OFFSET): Fix indention problems.
3760 (hppa_elf_build_arg_reloc_stub): Fix indention and spacing problems.
3761 Add, update and clean comments. Handle "ble" %r31 lossage problems.
3762 (hppa_elf_build_long_branch_stub): Likewise.
3763 (hppa_look_for_stubs_in_section): Likewise.
3764 (hppa_elf_stub_check): Remove obsolete function.
3765
3766 * hppa_stubs.h: Add new instructions to deal with %r31 lossage
3767 problems. Delete unused instructions.
3768
0f5bc783
SS
3769Tue Nov 9 11:40:27 1993 Stan Shebs ([email protected])
3770
3771 * m68klynx.c (TARGET_IS_BIG_ENDIAN_P): Define.
3772
95469b02
ILT
3773Tue Nov 9 11:26:05 1993 Ian Lance Taylor ([email protected])
3774
346f0414
ILT
3775 * elfcode.h (elf_object_p): Rather than looking through an array
3776 of architectures, get the ELF EM_xxx code from the backend
3777 information. Let the generic ELF target match any EM_xxx code not
3778 matched by another ELF target. Call elf_backend_object_p to let
3779 the backend do more checks and set global information.
3780 * libelf.h (struct elf_backend_data): Added elf_machine_code and
3781 elf_backend_object_p fields.
3782 (struct bfd_elf_arch_map): Removed.
3783 (bfd_elf_arch_map, bfd_elf_arch_map_size): Don't declare.
3784 * elf32-target.h, elf64-target.h: Initialize elf_machine_code
3785 field with ELF_MACHINE_CODE. Initialize elf_backend_object_p
3786 field with elf_backend_object_p (if it is defined).
3787 * elf32-gen.c, elf32-hppa.c, elf32-i386.c, elf32-i860.c,
3788 elf32-m68k.c, elf32-m88k.c, elf32-mips.c, elf32-sparc.c,
3789 elf64-gen.c (ELF_MACHINE_CODE): Defined.
3790 * elf32-mips.c: Include ecoffswap.h to get ECOFF swapping
3791 routines.
3792 (mips_elf_object_p): Set the right machine number.
3793 (mips_elf_ecoff_debug_swap): Defined.
3794 (elf_backend_object_p): Defined to be mips_elf_object_p.
3795 (elf_backend_ecoff_debug_swap): Defined to be
3796 mips_elf_ecoff_debug_swap.
3797 * elf.c (bfd_elf_arch_map, bfd_elf_arch_map_size): Removed.
3798
3799 * libbfd-in.h (target_vector, default_vector): Declare.
3800 * libbfd.h: Rebuilt.
3801 * format.c (target_vector, default_vector): Don't declare.
3802
3803 * elf32-mips.c (elf_mips_howto_table): Don't complain on overflow
3804 for R_MIPS_26. Correct overflow detection requires matching the
3805 upper four bits of the destination against the PC. From Ted Lemon
3806 <[email protected]>.
3807
3808 * bout.c (b_out_reloc_type_lookup): Return type should point to
3809 const data.
3810 * coff-i960.c (coff_i960_reloc_type_lookup): Likewise.
3811 * elf32-hppa.c (elf_hppa_reloc_type_lookup): Likewise.
3812 * mipsbsd.c (MY(reloc_howto_type_lookup)): Likewise.
3813 * coff-i386.c (coff_i386_reloc): Made howto const.
3814 * oasys.c (oasys_write_data): Made how const.
3815
95469b02
ILT
3816 * libelf.h: Added some comments.
3817 (struct elf_backend_data): Added elf_backend_ecoff_debug_swap
3818 field. Removed unused write_relocs field.
3819 * elf32-target.h: Adjusted elf_backend_data initialization
3820 accordingly.
3821 * elf64-target.h: Corrected elf_backend_data initialization to
3822 fill in all fields and to set elf_64_p to 1.
3823
e2756048
ILT
3824Mon Nov 8 18:13:14 1993 Ian Lance Taylor ([email protected])
3825
7b8106b4
ILT
3826 * elfcode.h (bfd_section_from_shdr): Remove duplicate assignment
3827 to filepos in SHT_STRTAB case.
3828 (assign_file_position_for_section): Set BFD section filepos as
3829 well as ELF section sh_offset.
3830
e2756048
ILT
3831 * reloc.c: Use const instead of CONST.
3832 (bfd_perform_relocation): Make variable howto a const pointer.
3833 * bfd-in2.h, libbfd.h: Rebuilt.
3834
3835Mon Nov 8 12:19:15 1993 Jim Kingdon ([email protected])
3836
3837 * Makefile.in (realclean): Don't remove generated headers. Reverts
3838 change of 2 Jul 1993.
3839
007455de
DHW
3840Mon Nov 8 06:08:31 1993 D. V. Henkel-Wallace ([email protected])
3841
3842 * configure.bfd: make unixware equivalent to sysv4.
3843
3844 * config/i386-nlm.mt: bring in elf config; make it the default.
3845
1d3e8847
JL
3846Sun Nov 7 20:21:38 1993 Jeffrey A. Law ([email protected])
3847
3848 * libbfd.c (bfd_put_8): Add parens around reference to "val"
3849 argument.
3850
2ccb88c0
DM
3851Fri Nov 5 21:45:09 1993 David J. Mackenzie ([email protected])
3852
3853 * hosts/i386mach3.h (HOST_SEGMENT_SIZE),
3854 i386mach3.c (SEGMENT_SIZE, TEXT_START_ADDR): Correct values (?).
3855
0f396d2a
ILT
3856Fri Nov 5 15:17:57 1993 Ian Lance Taylor ([email protected])
3857
3858 * coffcode.h (coff_write_object_contents): Zero out internal_a.
3859
c188b0be
DM
3860Fri Nov 5 10:41:07 1993 David J. Mackenzie ([email protected])
3861
3862 * aoutx.h, archive.c, archures.c, bfd.c, cache.c, coffcode.h,
3863 core.c, ctor.c, format.c, init.c, libbfd.c, opncls.c, reloc.c,
3864 section.c, syms.c, targets.c:
3865 Doc cleanup (spelling, punctuation, grammar, formatting).
3866 * bfd-in2.h, libbfd.h: Rebuild.
c188b0be 3867
baf205c4
JG
3868Thu Nov 4 14:46:14 1993 John Gilmore ([email protected])
3869
3870 * bfd-in.h (bfd_get_cacheable, bfd_set_cacheable): New accessors.
3871 * bfd.c, opncls.c: Improve comments on file descriptor cacheing.
3872
fa8e8648
JL
3873Thu Nov 4 08:54:30 1993 Jeffrey A. Law ([email protected])
3874
3875 * From Pete Hoogenboom ([email protected])
3876 * elf32-hppa.c (hppa_elf_get_section_contents): Fix logic error
3877 in last change. Always rebuild symbol extension section the first
3878 time though if output sections exist (fixes ld -r problems).
3879
d5d53b0a
JW
3880Thu Nov 04 08:08:46 1993 Jeffrey Wheat ([email protected])
3881
3882 * Makefile.in: Add .PHONY for check and installcheck rules.
3883
3884Tue Nov 2 14:42:27 1993 Bill Cox ([email protected])
3885
3886 * libbfd-in.h (artdata): Use long, not time_t for portability, at
3887 least to HPUX. File below is a derived file.
3888
31eb3ead
BC
3889Tue Nov 2 14:42:27 1993 Bill Cox ([email protected])
3890
3891 * libbfd.h (artdata): Use long, not time_t for portability, at
3892 least to HPUX.
3893
242f60e2
JK
3894Tue Nov 2 09:32:25 1993 Jim Kingdon ([email protected])
3895
3896 * config.bfd: Use bigmips for mips*-*-bsd*.
3897
55d5b62d
ILT
3898Mon Nov 1 14:30:09 1993 Ian Lance Taylor ([email protected])
3899
f2e945df
ILT
3900 * elfcode.h (elf_slurp_reloca_table, elf_slurp_reloc_table):
3901 Handle symbol number of zero.
3902
7386c3b7
ILT
3903 * reloc.c (enum bfd_reloc_code_real): Added
3904 BFD_RELOC_MIPS_LITERAL, BFD_RELOC_MIPS_GOT16,
3905 BFD_RELOC_MIPS_CALL16, BFD_RELOC_MIPS_GPREL32.
3906 * bfd-in2.h: Rebuilt.
3907 * coff-mips.c (mips_bfd_reloc_type_lookup): Handle
3908 BFD_RELOC_MIPS_LITERAL.
3909 * elf32-mips.c (mips_reloc_map): Handle new relocs.
3910 (mips_elf_hi16_reloc, mips_elf_lo16_reloc): Rearrange _gp_disp
3911 checks slightly.
3912
55d5b62d
ILT
3913 * aout-target.h (MY_bfd_debug_info_start, MY_bfd_debug_info_end,
3914 MY_bfd_debug_info_accumulat [sic]): Remove unused definitions.
3915 (MY_bfd_get_relocated_section_contents, MY_bfd_relax_section,
3916 MY_bfd_seclet_link): Define.
3917 (MY_bfd_reloc_type_lookup): Rename from
3918 MY_reloc_howto_type_lookup.
3919 (MY_bfd_make_debug_symbol): Rename from MY_make_debug_symbol.
3920 (MY(vec)): Use JUMP_TABLE rather than listing functions.
3921 * hp300hpux.c (MY_get_symtab, MY_get_symtab_upper_bound,
3922 MY_canonicalize_reloc, MY_write_object_contents): Don't define in
3923 terms of MY, because that causes a recusive invocation of CAT when
3924 expanded within JUMP_TABLE, and ANSI compilers don't expand
3925 recursive macros.
3926 * mipsbsd.c (MY_bfd_reloc_type_lookup): Rename from
3927 MY_reloc_howto_type_lookup, and don't define in terms of MY.
3928 (MY_canonicalize_reloc): Don't define in terms of MY.
3929 (aout_mips_little_vec, aout_mips_big_vec): Use JUMP_TABLE rather
3930 than listing functions.
3931
6198b7a1
JK
3932Mon Nov 1 09:12:25 1993 Jim Kingdon ([email protected])
3933
3934 * config.bfd: Use m68k-elf for m68*-*-sysv4*.
3935
ceeca31c 3936See file ChangeLog.1
e6d739eb 3937
41126f15
JK
3938\f
3939Local Variables:
3940mode: indented-text
3941left-margin: 8
6ec3bb6a
ILT
3942fill-column: 74
3943version-control: never
3944End:
This page took 0.667854 seconds and 4 git commands to generate.