* dwarf2.c (read_attribute): Support DW_FORM_ref8.
[deliverable/binutils-gdb.git] / bfd / ChangeLog
CommitLineData
a3c7651d
MM
11999-07-12 Mark Mitchell <mark@codesourcery.com>
2
3 * dwarf2.c (read_attribute): Support DW_FORM_ref8.
4 * elf32-mips.c (mips_elf_link_hash_entry): Change mips_32_relocs
5 to possibly_dynamic_relocs. Adjust usage throughout code.
6 (elf_mips_howto_table): Handle R_MIPS_64 correctly.
7 (elf_mips_ctor64_howto): Likewise.
8 (mips_elf_calculate_relocation): Handle R_MIPS_64 like R_MIPS_32.
9 Adjust indentation.
10 (mips_elf_relocate_section): Handle R_MIPS_64 in 32-bit mode.
11 (_bfd_mips_elf_check_relocs): Handle R_MIPS_64 like R_MIPS_32.
12 Use MIPS_ELF_GOT_SIZE to calculate the size of GOT entries.
13 * elf64-mips.c (elf_backend_may_use_rel_p): Define.
14
5f771d47
ILT
151999-07-12 Ian Lance Taylor <ian@zembu.com>
16
67e5d3d6
ILT
17 * Makefile.am: Rebuild dependencies.
18 * Makefile.in: Rebuild.
19
20 * bfd-in.h: Remove tests of COFF_IMAGE_WITH_PE.
21 * bfd-in2.h: Rebuild.
22
5f771d47
ILT
23 * Many files: Changes to avoid gcc warnings: Add ATTRIBUTE_UNUSED
24 as appropriate. Use EMPTY_HOWTO as appropriate. Fill in
25 structure initializations. Add casts.
26 * reloc.c (EMPTY_HOWTO): Define.
27 * bfd-in2.h: Rebuild.
28 * coff-h8300.c (h8300_reloc16_extra_cases): Remove useless
29 comparisons against 0.
30 * elf32-sparc.c (elf32_sparc_merge_private_bfd_data): Change
31 previous_ibfd_e_flags to unsigned long.
32 * vms.h (struct vms_private_data_struct): Change section_count to
33 unsigned.
34 * vms-gsd.c (_bfd_vms_slurp_gsd): Change psect_idx to unsigned.
35 (_bfd_vms_write_gsd): Change symnum to unsigned.
36 * vms-hdr.c (_bfd_vms_write_hdr): Change symnum to unsigned.
37 * vms-tir.c (etir_sta): Change psect to unsigned.
38 (alloc_section): Change idx to unsigned.
39 (tir_sta, tir_ctl): Change psect to unsigned.
40 (_bfd_vms_write_tir): Change len and before to bfd_size_type.
41 * vms.c (priv_section_count): Change to unsigned.
42
121089cb
AS
431999-07-12 Andreas Schwab <schwab@suse.de>
44
45 * elf32-m68k.c: Add some ATTRIBUTE_UNUSED.
46 * m68klinux.c: Likewise.
47
e049a0de
ILT
481999-07-12 Ian Lance Taylor <ian@zembu.com>
49
50 * Many files: Changes to avoid gcc warnings: Remove unused local
51 variables. Add default case to enum switches.
52 * coff-arm.c (bfd_arm_allocate_interworking_sections): Only
53 compile if not COFF_IMAGE_WITH_PE.
54 (record_arm_to_thumb_glue, record_thumb_to_arm_glue): Likewise.
55 (bfd_arm_get_bfd_for_interworking): Likewise.
56 (bfd_arm_process_before_allocation): Likewise.
57 * epoc-pei-arm.c: Don't rename bfd_arm functions.
58 * pei-arm.c: Likewise.
59 * elf32-mips.c (mips_elf_link_hash_table_create): Don't declare.
60 (MIPS_ELF_ADD_DYNAMIC_ENTRY): Correct last change.
61 (mips_elf_got16_entry): Put parens around & in body of ==.
62 (mips_elf_calculate_relocation): Correct test for empty string.
63 * vms-gsd.c: Use _bfd_error_handler rather than fprintf to
64 stderr.
65 * vms-misc.c (_bfd_vms_length_hash_symbol): Correct sprintf
66 format.
67
3a99b017
ILT
681999-07-11 Ian Lance Taylor <ian@zembu.com>
69
7442e600
ILT
70 * Many files: Changes to avoid gcc warnings: Add ATTRIBUTE_UNUSED
71 as appropriate. Fill in structure initializations. Add variable
72 initializations. Add casts.
73 * dwarf1.c (parse_line_table): Change eachLine to unsigned long.
74 (dwarf1_unit_find_nearest_line): Change i to unsigned long.
75
3a99b017
ILT
76 * elf.c (bfd_elf_hash): Change parameter from unsigned char * to
77 char *.
78 * elf-bfd.h (bfd_elf_hash): Update declaration.
79 * elflink.h (NAME(bfd_elf,size_dynamic_sections)): Remove casts
80 when calling bfd_elf_hash.
81
65388f2d
MM
821999-07-11 Mark Mitchell <mark@codesourcery.com>
83
9ebbd33e
MM
84 * libbfd.c (bfd_put_8): Make it of type `void'.
85 * bfd-in2.h: Regenerated.
86 * elf32-mips.c (MIPS_ELF_ADD_DYNAMIC_ENTRY): Conditionalize
87 for 32-bit hosts.
88 (_bfd_mips_elf_final_link): Likewise.
89
65388f2d
MM
90 * elflink.h (elf_link_read_relocs_from_section): Be type-correct.
91
5b4e2818
JL
92Thu Jul 8 12:32:23 1999 John David Anglin <dave@hiauly1.hia.nrc.ca>
93
94 * config.bfd (hppa*-*-linux-gnu*): New target
95
c7ac6ff8
MM
961999-07-07 Mark Mitchell <mark@codesourcery.com>
97
103186c6
MM
98 * elf-bfd.h (_bfd_mips_elf_section_from_shdr): Constify.
99 (_bfd_mips_elf_create_dynamic_sections): New function.
100 (_bfd_mips_elf_add_symbol_hook): Likewise.
101 (_bfd_mips_elf_adjust_dynamic_symbol): Likewise.
102 (_bfd_mips_elf_finish_dynamic_symbol): Likewise.
103 (_bfd_mips_elf_finish_dynamic_sections): Likewise.
104 (_bfd_mips_elf_gc_mark_hook): Likewise.
105 (_bfd_mips_elf_gc_sweep_hook): Likewise.
106 (_bfd_mips_elf_always_size_sections): Likewise.
107 (_bfd_mips_elf_size_dynamic_sections): Likewise.
108 (_bfd_mips_elf_check_relocs): Likewise.
109 (_bfd_mips_elf_link_hash_table_create): Likewise.
110 (_bfd_mips_elf_print_private_data): Likewise.
111 (_bfd_mips_elf_link_output_symbol_hook): Likewise.
112 (_bfd_mips_elf_final_link): Likewise.
113 (_bfd_mips_elf_additional_program_headers): Likewise.
114 (_bfd_mips_elf_modify_segment_map): Likewise.
115 (_bfd_mips_elf_relocate_section): Likewise.
116 * elf32-mips.c (mips_elf32_object_p): Move contents into
117 _bfd_mips_elf_object_p.
118 (mips_elf_additional_program_headers): Rename to
119 _bfd_mips_elf_additional_program_headers.
120 (mips_elf_modify_segment_map): Rename to
121 _bfd_mips_elf_modify_segment_map.
122 (elf_mips_abi_name): Change prototype.
123 (mips_elf32_section_from_shdr): Merge into
124 _bfd_mips_elf_section_from_shdr.
125 (mips_elf32_section_processing): Merge into
126 _bfd_mips_elf_section_processing.
127 (mips_elf_final_link): Rename to _bfd_mips_elf_final_link. Invoke
128 the right back-end ELF linker.
129 (mips_elf_relocate_section): Rename to
130 _bfd_mips_elf_relocate_section. Clean up. Adjust for 64-bit code.
131 (mips_elf_link_output_symbol_hook): Rename to
132 _bfd_mips_elf_link_output_symbol_hook.
133 (mips_elf_create_dynamic_section): Rename to
134 _bfd_mips_elf_create_dynamic_section.
135 (mips_elf_check_relocs): Rename to _bfd_mips_elf_check_relocs.
136 Adjust for 64-bit code. Use mips_elf_got_section.
137 (mips_elf_adjust_dynamic_symbol): Rename to
138 _bfd_mips_elf_adjust_dynamic_symbol. Use
139 mips_elf_allocate_dynamic_relocations.
140 (mips_elf_finish_dynamic_symbol): Rename to
141 _bfd_mips_elf_finish_dynamic_symbol. Use mips_elf_got_section.
142 Adjust for 64-bit code.
143 (mips_elf_finish_dynamic_sections): Rename to
144 _bfd_mips_elf_finish_dynamic_sections. Adjust for 64-bit code.
145 (mips_elf_always_size_sections): Rename to
146 _bfd_mips_elf_always_size_sections.
147 (mips_elf_add_symbol_hook): Rename to
148 _bfd_mips_elf_add_symbol_hook.
149 (mips_elf_next_lo16_addend): Constify.
150 (mips_elf_calculate_relocation): Likewise.
151 (mips_elf_obtain_contents): Likewise.
152 (mips_elf_perform_relocation): Likewise.
153 (mips_elf_create_dynamic_relocation): Likewise.
154 (mips_elf_allocate_dynamic_relocations): New function.
155 (MIPS_ELF_REL_DYN_SECTION_NAME): New macro.
156 (MIPS_ELF_REL_SIZE): Likewise.
157 (MIPS_ELF_DYN_SIZE): Likewise.
158 (MIPS_ELF_GOT_SIZE): Likewise.
159 (MIPS_ELF_SYM_SIZE): Likewise.
160 (MIPS_ELF_LOG_FILE_ALIGN): Likewise.
161 (MIPS_ELF_GET_WORD): Likewise.
162 (MIPS_ELF_PUT_WORD): Likewise.
163 (MIPS_ELF_ADD_DYNAMIC_ENTRY): Likewise.
164 (STUB_LW): Conditionalize for 64-bit value.
165 (elf_mips_howto_table): Add R_MIPS_HIGHER and R_MIPS_HIGHEST
166 entries.
167 (_bfd_mips_elf_merge_private_bfd_data): Merge e_ident[EI_CLASS].
168 Check it for inconsistency.
169 (_bfd_mips_elf_print_private_bfd_data): Print ABI=64 for 64-bit
170 ABI.
171 (_bfd_mips_elf_fake_sections): Remove duplicate handling of
172 .msym.
173 (mips_elf_global_got_index): Use MIPS_ELF_GOT_SIZE.
174 (mips_elf_got_offset_from_index): Use misp_elf_got_section.
175 (mips_elf_create_local_got_entry): Use MIPS_ELF_GOT_SIZE.
176 (mips_elf_local_got_index): Likewise.
177 (mips_elf_got_page): Likewise.
178 (mips_elf_got_info): Likewise.
179 (mips_elf_create_dynamic_relocation): Handle 32-bit/64-bit split.
180 (ELF_DYNAMIC_INTERPRETER): Handle 64-bit code.
181 (mips_elf_create_dynamic_sections): Use MIPS_ELF_LOG_FILE_ALIGN,
182 instead of constant `2'.
183 (mips_elf_create_got_section): Tidy. Use MIPS_ELF_GOT_SIZE.
184 (mips_elf_create_msym_section): Use MIPS_ELF_LOG_FILE_ALIGN.
185 (mips_elf_size_dynamic_sections): Use
186 MIPS_ELF_REL_DYN_SECTION_NAME, MIPS_ELF_GOT_SIZE,
187 MIPS_ELF_ADD_DYNAMIC_ENTRY. Remove #if 0'd code.
188 Adjust all releveant entries in elf backend table.
189 * elf64-mips.c (mips_elf64_section_from_shdr): Remove.
190 (mips_elf64_section_processing): Likewise.
191 Adjust elf backend entries to use _bfd_mips_elf variants now
192 publicly available.
193
c7ac6ff8
MM
194 * elflink.h (elf_link_create_dynamic_sections): Handle non-standard
195 hash-entry sizes.
196 (size_dynamic_sections): Likewise.
197 (elf_link_output_extsym): Likewise.
198 * elf.c: (elf_fake_sections): Likewise.
199 * libbfd.c (bfd_get): New macro.
200 (bfd_put): Likewise.
201 * bfd-in2.h: Regenerated.
202
2031999-07-07 Mark Mitchell <mark@codesourcery.com>
204
205 * elf-bfd.h (elf_size_info): Add hash_entry_size,
206 int_rels_per_ext_rel, swap_dyn_out, swap_reloc_in, swap_reloc_out,
207 wap_reloca_in, and swap_reloca_out.
208 * elflink.h (elf_link_read_relocs_from_section): Adjust to handle
209 multiple internal relocations per external relocation.
210 (link_read_relocs): Likewise.
211 (elf_bfd_final_link): Likewise.
212 (elf_link_input_bfd): Likewise.
213 (elf_gc_mark): Likewise.
214 (elf_gc_smash_unused_vtentry_relocs): Likewise.
215 * elfcode.h (elf_swap_dyn_out): Adjust type to match
216 elf_swap_dyn_in.
217 (size_info): Add entries for new fields.
218 * elf64-mips.c (mips_elf64_swap_reloc_out): Enable.
219 (mips_elf64_be_swap_reloc_in): New function.
220 (mips_elf64_be_swap_reloc_out): Likewise.
221 (mips_elf64_be_swap_reloca_in): Likewise.
222 (mips_elf64_be_swap_reloca_out): Likewise.
223 (mips_elf64_size_info): Add entries for new fields.
224
0525d26e
ILT
2251999-07-07 Ian Lance Taylor <ian@zembu.com>
226
227 * elflink.h (elf_bfd_final_link): Assert that section reloc_count
228 field equals the new rel_count field.
229 (elf_link_input_bfd): When doing a relocateable link, use the new
230 rel_count field rather than the reloc_count field.
231 (elf_reloc_link_order): Likewise.
232 (elf_finish_pointer_linker_section): Likewise.
233
234 Based on patch from H.J. Lu <hjl@gnu.org>:
235 * elflink.h (elf_merge_symbol): Permit a non-weak definition in a
236 shared library to override a weak definition in a regular object.
237
9db37001
JL
238Tue Jul 6 10:23:39 1999 Jeffrey A Law (law@cygnus.com)
239
37afc161
JL
240 * libhppa.h: Revert July 2, 1999 patch.
241
9db37001
JL
242 * elf-hppa.h (_bfd_elf_hppa_gen_reloc_type): T mode selectors
243 need to generate DLTIND relocations, not DLTREL relocations.
244
752149a0
NC
2451999-07-05 Nick Clifton <nickc@cygnus.com>
246
478d07d6
NC
247 * coffcode.h (coff_set_arch_mach_hook): Recognise arm 5
248 architectures.
249 (coff_set_flags): Recognise arm 5 architectures.
250
251 * cpu-arm.c: Add support for strongarm and arm9 cpus.
252 Add support for armv5 architecture.
253
254 * archures.c: Add bfd_mach_arm_5 and bfd_mach_arm_5T.
255
752149a0
NC
256 * reloc.c: Add new, assembler only, ARM reloc:
257 BFD_RELOC_ARM_ADRL_IMMEDIATE.
258
259 * bfd-in2.h: Regenerate.
260
5e38c3b8
MM
2611999-07-02 Mark Mitchell <mark@codesourcery.com>
262
263 * dwarf2.c (parse_comp_unit): Add ABBREV_LENGTH parameter.
264 (_bfd_dwarf2_find_nearest_line): Add ADDR_SIZE parameter.
265 * elf.c (_bfd_elf_find_nearest_line): Pass it.
266 * elf32-arm.h (elf32_arm_find_nearest_line): Likewise.
267 * elf32-mips.c (ABI_64_P): New macro.
268 (IRIX_COMPAT): We are IRIX6-compatible if ABI_64_P.
269 (_bfd_mips_elf_find_nearest_line): Adjust call to
270 _bfd_dwarf2_find_nearest_line.
271 * libbfd-in.h (_bfd_dwarf2_find_nearest_line): Update prototype.
272 * libbfd.h: Regenerated.
273
4766cbee
ILT
2741999-07-02 Ian Lance Taylor <ian@zembu.com>
275
276 * config.bfd: Add * at the end of i[3456]86-*-unixware.
277
2a6d0fe7
JL
278Fri Jul 2 12:21:10 1999 Jeffrey A Law (law@cygnus.com)
279
280 * libhppa.h (HPPA_R_ARG_RELOC): Delete.
281 (HPPA_R_CONSTANT, HPPA_R_ADDEND): Likewise.
282
23bc299b
MM
2831999-07-01 Mark Mitchell <mark@codesourcery.com>
284
285 * elf-bfd.h (bfd_elf_section_data): Add rel_count and rel_count2
286 fields.
287 (_bfd_elf_init_reloc_shdr): New function.
288 * elf.c (_bfd_elf_new_section_hook): Use bfd_zalloc, rather than
289 bfd_alloc followed by memset.
290 (_bfd_elf_init_reloc_shdr): New function, split out from ...
291 (elf_fake_sections): Here.
292 (assign_section_numbers): Assign section numbers for the second
293 relocation section, if required.
294 * elflink.h (elf_link_output_relocs): New function.
295 (elf_link_size_reloc_section): Likewise.
296 (elf_bfd_final_link): Use elf_link_size_reloc_section.
297 (elf_link_input_bfd): Use elf_link_output_relocs.
298
299 * elf32-mips.c (_bfd_mips_elf_fake_sections): Use
300 _bfd_elf_init_reloc_shdr to initialize rel_hdr2.
301
17bb48e0
JL
302Thu Jul 1 13:58:48 1999 Jeffrey A Law (law@cygnus.com)
303
304 * elf-hppa.h (_bfd_elf_hppa_gen_reloc_type): Handle R_PCREL_CALL
305 with 22bit format.
306
7403cb63
MM
3071999-06-28 Mark Mitchell <mark@codesourcery.com>
308
309 * elf32-mips.c (mips_elf_got_info): Move declaration before
310 prototypes. Change global_gotsym to be a pointer to a hash entry,
311 rather than a number index.
312 (mips_elf_link_hash_entry): Move declaration before prototypes.
313 (mips_elf_irix6_finish_dynamic_symbol): New function.
314 (mips_elf_sign_extend): Likewise.
315 (mips_elf_high): Likewise.
316 (mips_elf_higher): Likewise.
317 (mips_elf_highest): Likewise.
318 (mips_elf_global_got_index): Likewise.
319 (mips_elf_local_got_index): Likewise.
320 (mips_elf_got_offset_from_index): Likeiwse.
321 (mips_elf_record_global_got_symbol): Likewise.
322 (mips_elf_got_page): Likewise.
323 (mips_elf_next_lo16_addend): Likewise.
324 (mips_elf_calculate_relocation): Likewise.
325 (mips_elf_obtain_contents): Likewise.
326 (mips_elf_perform_relocation): Likewise.
327 (mips_elf_assign_gp): Likewise.
328 (mips_elf_sort_hash_table_f): Likewise.
329 (mips_elf_sort_hash_table): Likewise.
330 (mips_elf_got_section): Likewise.
331 (mips_elf_got_info): Likewise.
332 (mips_elf_create_local_got_entry): Likewise.
333 (mips_elf_got16_entry): Likewise.
334 (mips_elf_create_dynamic_relocation): Likewise.
335 (elf_mips_howto_table): Add description of R_MIPS_SCN_DISP.
336 (mips_elf_final_gp): Use mips_elf_assign_gp.
337 (_bfd_mips_elf_symbol_processing): Don't move SHN_COMMON symbols
338 into SHN_SCOMMON automatically on IRIX6.
339 (mips_elf_add_symbol_hook): Likewise.
340 (mips_elf_relocate_section): Rewrite, using
341 mips_elf_calculate_relocation and mips_elf_perform_relocation.
342 (mips_elf_create_dynamic_section): Use MIPS_ELF_STUB_SECTION_NAME.
343 Don't deal with .rld_map on IRIX6.
344 (mips_elf_create_got_section): Adjust use of global_gotsym. Set
345 section flags appropriately for .got.
346 (mips_elf_check_relocs): Handle IRIX6 relocations making use of
347 the got. Call mips_elf_record_global_got_symbol and allocate
348 local got space appropriately.
349 (mips_elf_size_dynamic_sections): Use bfd_byte *, not unsigned
350 char *. Rework calculation of GOT size. Sort dynamic symbol
351 table entries so entries that do not require GOT entries appear at
352 the beginning. Don't use DT_MIPS_HIPAGENO on IRIX6. Remove dead
353 code dealing with DT_INIT and DT_FINI. Remove fiddling with
354 global_gotsym.
355 (mips_elf_finish_dynamic_symbol): Adjust creation of global GOT
356 entries.
357 (mips_elf_finish_dynamic_symbol): Use
358 mips_elf_irix6_finish_dynamic_symbol.
359 (mips_elf_finish_dynamic_sections): Correct off-by-one error
360 setting DT_MIPS_UNREFEXTNO. Adjust setting of DT_MIPS_GOTSYM for
361 change to global_gotsym. Set DT_MIPS_OPTIONS on IRIX6.
362
0dda5f7a
ILT
3631999-06-30 Ian Lance Taylor <ian@zembu.com>
364
365 * elf32-mips.c (mips_elf_final_link): Don't set CPIC when doing a
366 relocateable link. From Ralf Baechle <ralf@uni-koblenz.de>.
367
04f7c78d
NC
3681999-06-04 Philip Blundell <philb@gnu.org>
369
370 * elf32-arm.h (elf_backend_got_header_size): Define.
371 (elf_backend_plt_header_size): Likewise.
372
a72747a3
NC
3731999-06-28 Jim Pick <jim@jimpick.com>
374
375 * elf32-arm.h (elf32_arm_relocate_section): Mind no_undefined
376
caf3d37c
JL
377Tue Jun 29 02:25:03 1999 Jeffrey A Law (law@cygnus.com)
378
379 * elf-hppa.c (elf_hppa_howto_table): Use bfd_elf_generic_reloc as
380 relocation function.
381 * elf32-hppa.c (hppa_elf_reloc): Kill unused/unwanted function.
382
9886bd43
MM
3831999-06-27 Mark Mitchell <mark@codesourcery.com>
384
303f629d
MM
385 * elf32-mips.c (MIPS_ELF_SRDATA_SECTION_NAME): New macro.
386 (MIPS_ELF_OPTIONS_SECTION_NAME): Likewise.
387 (MIPS_ELF_STUB_SECTION_NAME): Likewise.
388 (_bfd_mips_elf_section_from_shdr): Use them.
389 (_bfd_mips_elf_fake_sections): Likewise. Add .srdata to the list
390 of GP-relative sections.
391 (_bfd_mips_elf_set_section_contents): Use them.
392 (_bfd_mips_elf_section_processing): Share code between .sdata and
393 .lit4/.lit8 sections. Set appropriate flags for .srdata.
394 (mips_elf_additional_program_headers): Add handling for
395 PT_MIPS_OPTIONS segment on IRIX6.
396 (mips_elf_modify_segment_map): Likeiwse.
397 (mips_elf_final_link): Set EF_MIPS_CPIC when required by the ABI.
398 Include the options sections on IRIX6. Don't look for GP-relative
399 sections by name; use SHF_MIPS_GPREL instead.
400 (ELF_DYNAMIC_INTERPRETER): Adjust to use /usr/lib32/libc.so.1 for
401 the N32 ABI.
402 (mips_elf_create_dynamic_sections): Don't muck about with section
403 alignments and such on IRIX6.
404 (mips_elf_adjust_dynamic_symbol): Use MIPS_ELF_STUB_SECTION_NAME.
405 (mips_elf_size_dynamic_sections): Likewise. Adjust to handle the
406 fact that ELF_DYNAMIC_INTERPRETER is no longer a constant. Use
407 bfd_zalloc rather than bfd_alloc and memset.
408 (mips_elf_finish_dynamic_symbol): Use MIPS_ELF_STUB_SECTION_NAME.
409 Don't assert the existence of .rld_map on IRIX6.
410 (mips_elf_finish_dynamic_sections): Use MIPS_ELF_STUB_SECTION_NAME.
411
9886bd43
MM
412 * elf32-mips.c (mips_elf_adjust_dynindx): Remove.
413 (mips_elf_size_dynamic_sections): Use _bfd_elf_link_adjust_dynindx
414 instead.
415
a94a7c1c
MM
4161999-06-26 Mark Mitchell <mark@codesourcery.com>
417
c6142e5d
MM
418 * elf32-mips.c (mips_elf_swap_msym_in): New function.
419 (mips_elf_swap_msym_out): New function.
420 (mips_elf_create_msym_section): Likewise.
421 (MIPS_ELF_MSYM_SECTION_NAME): New macro.
422 (_bfd_mips_elf_final_write_processing): Set sh_link for .msym.
423 (_bfd_mips_elf_section_from_shdr): Reject an SHT_MIPS_MSYM
424 section not named .msym.
425 (_bfd_mips_elf_fake_sections): Use MIPS_ELF_MSYM_SECTION_NAME, not
426 .msym directly. Set appropriate attributes for the .msym
427 section.
428 (mips_elf_link_hash_entry): Add min_dyn_reloc_index field.
429 (mips_elf_link_hash_newfunc): Clear it.
430 (mips_elf_create_dynamic_sections): Create the .msym section
431 on IRIX6.
432 (mips_elf_size_dynamic_sections): Allocate space for the
433 .msym section. Add a DT_MIPS_MSYM entry.
434 (mips_elf_finish_dynamic_symbol): Write out a .msym entry for
435 the symbol.
436 (mips_elf_finish_dynamic_sections): Assign a value for
437 DT_MIPS_MSYM. Add .msym entries for the section symbols as well.
438
a94a7c1c
MM
439 * elf32-mips.c (irix_compat_t): New enumeration.
440 (ABI_N32_P): New macro.
441 (IRIX_COMPAT): Likewise.
442 (SGI_COMPAT): Implement in terms of IRIX_COMPAT.
443 (mips_elf_relocate_section): Fix typo.
444
254f5c45
ILT
4451999-06-26 Mumit Khan <khan@xraylith.wisc.edu>
446
447 * peicode.h (coff_swap_scnhdr_out): Mark non readonly BFD sections
448 as writable PE sections.
449
f623be2b
RH
4501999-06-26 David Mosberger <davidm@hpl.hp.com>
451
452 * dwarf2.c (struct arange): New type.
453 (struct comp_unit): Replace LOW and HIGH by member ARANGE.
454 (arange_add): New function.
455 (decode_line_info): Keep track of address ranges that a compilation
456 unit covers.
457 (comp_unit_contains_address): Return true if address is contained
458 in _any_ of the address ranges associated with a compilation unit.
459 (_bfd_dwarf2_find_nearest_line): Call comp_unit_find_nearest_line
460 on the first comp_unit that contains the address.
461
69dd2e2d
RH
4621999-06-26 David Mosberger <davidm@hpl.hp.com>
463
464 * dwarf2.c (struct dwarf2_debug): Add member dwarf_line_buffer.
465 (decode_line_info): Add variable STASH and initialize it to point
466 to the per-bfd dwarf2_debug info. Remove static variable
467 dwarf_line_buffer and use stash->dwarf_line_buffer in its place.
468
0429ebd0
ILT
4691999-06-26 Ian Lance Taylor <ian@zembu.com>
470
1d7b28df
ILT
471 * elflink.h (elf_link_output_extsym): It's OK for a -Bsymbolic
472 shared library to have an undefined symbol.
473
0429ebd0
ILT
474 From Franz Sirl <Franz.Sirl-kernel@lauterbach.com>:
475 * elf32-ppc.c (ppc_elf_relocate_section): Fix last patch.
476
4517897e
JL
477Thu Jun 24 20:59:11 1999 Jeffrey A Law (law@cygnus.com)
478
479 * elf-hppa.c (elf_hppa_final_write_processing): New function.
480 * elf32-hppa.c: Remove everything related to symbol extension
481 sections & records. Use the common elf_hppa_final_write_processing.
482
f0c2e336
MM
4831999-06-22 Mark Mitchell <mark@codesourcery.com>
484
485 * elflink.h (size_dynamic_sections): Use user-specified init/fini
486 functions instead of _init/_fini if requested.
487
03ae5f59
ILT
4881999-06-23 Ian Lance Taylor <ian@zembu.com>
489
490 * elf.c (bfd_section_from_shdr): Avoid crashing on a bogus sh_link
491 field.
492
464e1740
ILT
4931999-06-22 Ian Lance Taylor <ian@zembu.com>
494
495 From Franz Sirl <Franz.Sirl-kernel@lauterbach.com>:
496 * elf32-ppc.c (ppc_elf_size_dynamic_sections): Set unused dynindx
497 field to 0, not -1.
498 (ppc_elf_finish_dynamic_sections): Check for positive section
499 dynindx field, rather than comparing against -1.
500 (ppc_elf_relocate_section): Only return false if undefined_symbol
501 or reloc_overflow fail, not always upon encountering an error.
502
2f5116e2
MM
5031999-06-22 Mark Mitchell <mark@codesourcery.com>
504
505 * elflink.h (link_read_relocs): Explicitly cast external_relocs to
506 bfd_byte * before performing pointer arithmetic.
507
9e103c9c
JL
508Tue Jun 22 13:06:25 1999 Jeffrey A Law (law@cygnus.com)
509
510 * elf-hppa.h: New file. Common stuff for elf32 and elf64 PA
511 support.
512 * elf32-hppa.c: Include elf-hppa.h.
513 (ARCH_SIZE): Define.
514 (elf_hppa_reloc_type_lookup): Delete. Found in the common code
515 now.
516 (elf32_hppa_info_to_howto): Similarly.
517 (elf_hppa_howto_table): Similarly.
518 (elf_hppa_reloc_type_lookup): Similarly.
519 (hppa_elf_gen_reloc_type): Similarly.
520 * elf32-hppa.h (ELF_HOWTO_TALBE, N_PARISC_RELOCS): Delete.
521
232fb1a3
NC
5221999-06-22 Nick Clifton <nickc@cygnus.com>
523
524 * elf32-v850.c (v850_elf_final_link_relocate): Catch overflow
525 handling R_V850_22_PCREL relocation.
526
271025eb
ILT
5271999-06-21 Ian Lance Taylor <ian@zembu.com>
528
529 * coff-arm.c (arm_emit_base_file_entry): Explicitly declare return
530 type.
531
0bde07d4
RH
532Sun Jun 20 14:13:57 1999 Richard Henderson <rth@cygnus.com>
533
534 * section.c (_bfd_strip_section_from_output): Ignore sections
535 DISCARDed by the link script.
536
f800e11d
ILT
5371999-06-19 Ian Lance Taylor <ian@zembu.com>
538
539 * elflink.h (elf_link_remove_section_and_adjust_dynindices):
540 Remove unused local variable spp.
541
542 * xcofflink.c (bfd_xcoff_size_dynamic_sections): Don't crash if
543 the entry symbol is not set.
544
72b60c23
RH
545Fri Jun 18 04:24:57 1999 Richard Henderson <rth@cygnus.com>
546
547 * elf64-alpha.c (elf64_alpha_relocate_section): Don't adjust
548 GPDISP or LITUSE in a relocatable link.
549
aec89efb
JR
550Thu Jun 17 21:24:43 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
551
552 * dwarf1.c (alloc_dwarf1_unit): Allocate using bfd_zalloc.
553 * (alloc_dwarf1_func): Likewise.
554
5ba624b0
JL
555Wed Jun 16 03:09:57 1999 Jeffrey A Law (law@cygnus.com)
556
557 * libhppa.h: Fix various formatting errors.
558 (assemble_3); Rewrite using CATENATE.
559 (assemble_17): Fix various bugs.
560
59d23ada
NC
5611999-06-16 Nick Clifton <nickc@cygnus.com>
562
563 * elf32-mcore.c (R_MCORE_RAW): Fix definition.
564
0c3ff40b
RH
5651999-06-15 Richard Henderson <rth@cygnus.com>
566
567 * section.c (SEC_SHORT): Define.
568 * bfd-in2.h: Rebuild.
569
42751cf3
MM
5701999-06-13 Mark Mitchell <mark@codesourcery.com>
571
78de0b43
MM
572 * elflink.h (elf_link_remove_section_and_adjust_dynindices):
573 Remove abfd parameter. Use _bfd_strip_section_from_output.
574 (bfd_elf_size_dynamic_sections): Adjust callers accordingly.
575
42751cf3
MM
576 * elf-bfd.h (_bfd_elf_link_adjust_dynindx): New function.
577 * elflink.c (_bfd_elf_link_adjust_dynindx): Define it.
578 * elflink.h (elf_link_remove_section_and_adjust_dynindices): New
579 function.
580 (bfd_elf_size_dynamic_sections): Use it.
581
3e269912
ILT
5821999-06-13 Alan Modra <alan@spri.levels.unisa.edu.au>
583
584 * elf32-i386.c (elf_howto_table): Change R_386_PC8 from
585 complain_overflow_bitfield to complain_overflow_signed.
586
6b5bd373
MM
5871999-06-13 Mark Mitchell <mark@codesourcery.com>
588
589 * elflink.h (elf_link_read_relocs_from_section): New function,
590 split out from ...
591 (elf_link_read_relocs): Here. Use it for both relocation
592 sections.
593
57e21bef
MM
5941999-06-12 Mark Mitchell <mark@codesourcery.com>
595
596 * elfcode.h (elf_slurp_reloc_table_from_section): Don't assume
597 asect->reloc_count is valid.
598
cc3bfcee
ILT
5991999-06-12 Ian Lance Taylor <ian@zembu.com>
600
601 * elf32-mips.c (mips_elf32_section_processing): Permit a
602 SHT_MIPS_REGINFO section to have a size of 0.
603
7a50d4ac
ILT
6041999-06-12 David O'Brien <obrien@freebsd.org>
605
606 * config.bfd (alpha*-*-freebsd*): New target.
607 (i[3456]86-*-freebsd*): Now defaults to ELF.
608
f5f9cc4f
ILT
6091999-06-11 Ian Lance Taylor <ian@zembu.com>
610
44257b8b
ILT
611 * reloc.c (_bfd_relocate_contents): Permit bitfield relocations to
612 wrap if the relocation covers the high bit of an address.
613
f5f9cc4f
ILT
614 * dwarf2.c (decode_line_info): Remove unused variable first_time.
615
60dac299
RH
6161999-06-10 Jakub Jelinek <jj@ultra.linux.cz>
617
618 * elf64_sparc.c (sparc64_elf_relocate_section): Use R_SPARC_max_std
619 instead of R_SPARC_max.
620 (sparc64_elf_info_to_howto): Likewise.
621 * elf32_sparc.c (elf32_sparc_relocate_section): Likewise.
622 (elf32_sparc_info_to_howto): Likewise; handle vtable relocations.
623
9d7428a9
RH
6241999-06-07 Richard Henderson <rth@cygnus.com>
625
626 * section.c (_bfd_strip_section_from_output): Remove output
627 sections with no initial link_order.
628
3c82f80f
NC
6291999-06-07 Nick Clifton <nickc@cygnus.com>
630
631 * elf32-m88k.c (ELF_MAXPAGESIZE): Define.
632
eb519dff
AS
633Mon Jun 7 11:49:43 1999 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
634
635 * Makefile.am (SOURCE_HFILES): Add missing headers.
636 * Makefile.in: Regenerated.
637
7f7e7b68
MM
6381999-06-06 Mark Mitchell <mark@codesourcery.com>
639
640 * elf32-mips.c (_bfd_mips_elf_print_private_data): Recognize
641 the N32 ABI.
642
dc1bc0c9
RH
6431999-06-04 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
644
645 * elf32-ppc.c (ppc_elf_relocate_section): Don't barf on out of
646 range undefweak symbols.
647 * hash.c: Add missing comma after @xref{}
648 * linker.c: Likewise.
649
79e5982f
NC
6501999-06-04 Nick Clifton <nickc@cygnus.com>
651
652 * elfxx-target.h (ELF_MAXPAGESIZE): Produce an error message
653 if not defined.
654 * elf32-gen.c (ELF_MAXPAGESIZE): Define.
655 * elf32-i860.c (ELF_MAXPAGESIZE): Define.
656 * elf32-i960.c (ELF_MAXPAGESIZE): Define.
657 * elf64-gen.c (ELF_MAXPAGESIZE): Define.
658
4a54b465
ILT
6591999-06-04 Ian Lance Taylor <ian@zembu.com>
660
661 * Makefile.am: Rebuild dependencies.
662 (BFD32_BACKENDS): Add dwarf1.lo.
663 (BFD32_BACKENDS_CFILES): Add dwarf1.c.
664 * Makefile.in: Rebuild.
665
7714a18c
NC
6661999-06-04 Nick Clifton <nickc@cygnus.com>
667
668 * Makefile.am: Add epoc-arm-pe target.
669 * Makefile.in: Regenerate.
670 * pe-arm.c: Only redefine interworking function names if they have
671 not already been redefined.
672 * pei-arm.c: Only redefine interworking function names if they have
673 not already been redefined.
674 * epoc-pe-arm.c: Redefine interworking function names to avoid a
675 name space clash.
676 * epoc-pei-arm.c: Redefine interworking function names to avoid a
677 name space clash.
678
dece4658
NC
6791999-06-03 Nick Clifton <nickc@cygnus.com>
680
681 * elfxx-target.h (ELF_MAXPAGESIZE): Default to 0x1000 not 1.
682
a9d024b8
AS
683Fri Jun 4 10:05:11 1999 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
684
685 * elf.c (elf_fake_sections): Undo change of 1999-05-10.
686
06e1ba78
JR
687Fri Jun 4 03:10:49 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
688
689 * elf32-sh.c (sh_elf_relax_delete_bytes): Fix setting of
690 start / stop for recalculating of r_addend of R_SH_SWITCH*.
691
084aa3aa
JR
692Fri Jun 4 02:53:13 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
693
694 * elf32-sh.c (sh_elf_relax_delete_bytes): Handle R_SH_SWITCH32
695 in other text sections.
696
875f7f69
JR
697Fri Jun 4 02:29:34 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
698
699 * libbfd.c (_bfd_generic_verify_endian_match): New function.
700 * libbfd-in.h (_bfd_generic_verify_endian_match): Declare.
701 * libbfd.h: Regenerate.
702 * coff-sh.c (sh_merge_private_data): Delete.
703 (coff_bfd_merge_private_bfd_data): Change to
704 _bfd_generic_verify_endian_match.
705 (elf32-sh.c): bfd_elf32_bfd_merge_private_bfd_data: Define.
706
6a9d5c9a
UD
7071999-06-03 Ulrich Drepper <drepper@cygnus.com>
708
709 * elf32-arm.h: Fix typo: change ELF_MAXPAGE_SIZE to ELF_MAXPAGESIZE.
710
a3e38ad3
ILT
7111999-06-03 Ian Lance Taylor <ian@zembu.com>
712
713 * bfd-in.h (bfd_elf32_arm_allocate_interworking_sections): Correct
714 prototype.
715 (bfd_elf32_arm_process_before_allocation): Likewise.
716 * bfd-in2.h: Rebuild.
717
159002ff
RH
7181999-06-03 David Mosberger <davidm@hpl.hp.com>
719
720 * dwarf2.c (struct line_info): Add member END_SEQUENCE to keep
721 track of end_sequence markers.
722 (add_line_info): Add END_SEQUENCE arg.
723 (decode_line_info): Don't try to infer lo_pc and hi_pc from the
724 debug-line info---it doesn't work right if a compilation unit
725 consists of multiple discontiguous code-sequences. It would be
726 worthwhile to optimize for the common case where a compilation
727 unit results in a contiguous set of code sequences, but this is
728 quite tricky to get right for arbitrary DWARF2 files.
729 (lookup_address_in_line_info_table): Don't use the last line entry
730 for a compilation unit for anything with an address higher than
731 this line entry. Also, check for end_sequence markers to
732 correctly handle discontinuities.
733 (_bfd_dwarf2_find_nearest_line): When checking previously loaded
734 compilation units, check all compilation units with each->high==0
735 just like when reading compilation units.
736
737 * dwarf2.c (decode_line_info): Initialize table->files and
738 table->last_line to NULL to avoid segfaults due to random
739 values in these members.
740 (concat_filename): Check for out-of-range file number before
741 indexing filename table. Segfaults suck.
742
743 * dwarf2.c (decode_line_info): Don't truncate address to least
744 significant 32 bits (breaks 64 bit targets).
745 (lookup_address_in_function_table): Ditto.
746 (comp_unit_contains_address): Ditto.
747
42fdc509
MM
7481999-06-02 Mark Mitchell <Mark Mitchell <mark@codesourcery.com>>
749
750 * elf32-mips.c (elf_mips_howto_table): Add R_MIPS_JALR.
751 * elf64-mips.c (mips_elf64_howto_table_rel): Likewise.
752 (mips_elf64_howto_table_rela): Likewise.
753
754 * elfcode.h (elf_slurp_reloc_table_from_section): New function,
755 split out from ...
756 (elf_slurp_reloc_table): Here. Use it to handle the case where a
757 single section has two associated relocation sections.
6a9d5c9a 758
9d8cefa9
RH
7591999-06-02 Mark Salter <msalter@cygnus.com>
760
761 * coffcode.h (coff_set_alignment_hook): Set lma from s_vaddr if
762 COFF_WITH_PE defined.
763
c9fca91d
NC
7641999-06-02 Nick Clifton <nickc@cygnus.com>
765
766 * pe-arm.c: Rename global arm interworking functions to avoid name
767 collision when all targets BFD is built.
768 * pei-arm.c: Ditto.
769
bf572ba0
MM
7701999-05-31 Mark Mitchell <mark@codesourcery.com>
771
772 * elf-bfd.h (elf_backend_data): Remove use_rela_p. Add
773 may_use_rel_p, may_use_rela_p, default_use_rela_p.
774 (bfd_elf_section_data): Add use_rela_p.
775 * elf.c (bfd_section_from_shdr): Set use_rela_p appropriately.
776 (_bfd_elf_new_section_hook): Likewise.
777 (elf_fake_sections): Use may_use_rela_p, etc., instead of
778 use_rela_p.
779 (_bfd_elf_copy_private_section_data): Copy use_rela_p.
780 * elfcode.h (write_relocs): Determine whether or not use rela
781 relocs based on the relocation section header.
782 * elflink.c (_bfd_elf_create_dynamic_sections): Use default_use_rela_p
783 instead of use_rela_p.
784 * elfxx-target.h (elf_backend_may_use_relp): New macro.
785 (elf_backend_may_use_rela_p): Likewise.
786 (elf_backend_default_use_rela_p): Likewise.
787 (elfNN_bed): Use them.
6a9d5c9a 788
3fe702fd
RH
789Wed Jun 2 12:38:49 1999 Miodrag Vallat <miodrag@multimania.com>
790
791 * hosts/alphalinux.h (TRAD_CORE_EXTRA_SIZE_ALLOWED): Expand to 4096.
792
3f830999
MM
793Tue Jun 1 17:57:58 1999 Mark P. Mitchell <mitchell@n02.acl.lanl.gov>
794
795 * reloc.c (BFD_RELOC_MIPS_SUB): New relocation.
796 (BFD_RELOC_MIPS_GOT_PAGE): Likewise.
797 (BFD_RELOC_MIPS_GOT_OFST): Likewise.
798 (BFD_RELOC_MIPS_GOT_DISP): Likewise.
799 * bfd-in2.h: Regenerated.
800 * libbfd.h: Likewise.
801 * elf32-mips.c (mips_info_to_howto_rela): New function.
802 (USE_REL): Adjust for new conventions.
803 (MINUS_ONE): New macro.
804 (elf_mips_howto_table): Add R_MIPS_SUB.
6a9d5c9a 805 (mips_r): Add entries for MIPS_SUB, MIPS_GOT_PAGE, MIPS_GOT_OFST,
3f830999
MM
806 and MIPS_GOT_DISP.
807 (mips_elf_final_write_processing): Set sh_link, not sh_info, for a
808 .MIPS.content section.
809 (_bfd_mips_elf_fake_sections): Treat all sections that begin
810 with .MIPS.content as .MIPS.content sections. Set
811 SHF_MNIPS_NOSTRIP for such section.
812 (elf_info_to_howto): Define to mips_info_to_howto_rela.
813 * elf64-mips.c (mips_r): Add entries for MIPS_SUB, MIPS_GOT_PAGE,
814 MIPS_GOT_OFST, and MIPS_GOT_DISP.
815
70f06c4a
AS
816Wed Jun 2 11:51:12 1999 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
817
015985c9
AS
818 * vms-misc.c (_bfd_vms_hash_newfunc): Fix use of uninitialized
819 variable.
820
70f06c4a 821 * elf32-m68k.c (elf_m68k_adjust_dynamic_symbol): Avoid ambigous
6a9d5c9a 822 `else'.
70f06c4a 823
2ef994e0
NC
8241999-05-30 Philip Blundell <philb@gnu.org>
825
826 * elf32-arm.h (elf32_arm_relocate_section): Reinstate change of
827 1993-03-25 (!!). Take into account the bitmasks for the reloc so
828 the addend does not overflow into the rest of the word.
829
ba96a88f
NC
8301999-05-29 Nick Clifton <nickc@cygnus.com>
831
832 * bfd-in.h: Amend prototype for
833 bfd_elf32_arm_process_before_allocation .
834 * bfd-in.h: Regenerate.
6a9d5c9a 835
ba96a88f
NC
836 * elfarm-oabi.c (NUM_ELEM): New macro: Compute the number of
837 elements in a fixed sized array.
838 (ARM_ELF_ABI_VERSION): Define.
839 (ARM_ELF_OS_ABI_VERSION): Define.
840 (R_ARM_THM_ABS5): Fix rightshift and size.
841 (R_ARM_THM_PC22): Fix size.
842 (R_ARM_PLT32): Define Howto.
843 (find_howto): New function: Locate a howto based on a reloc
844 number.
845 (elf32_arm_info_to_howto): Use find_howto if necessary.
846 (elf32_arm_reloc_map): Change type of field bfd_reloc_val to
847 bfd_reloc_code_real_type.
848 (elf32_arm_reloc_map[]): Add entries for BFD_RELOC_VTABLE_INHERIT
849 and BFD_RELOC_VTABLE_ENTRY.
850 (elf32_arm_reloc_type_lookup): Use find_howto if necessary.
851
852 * elfarm-nabi.c (NUM_ELEM): New macro: Compute the number of
853 elements in a fixed sized array.
854 (ARM_ELF_ABI_VERSION): Define.
855 (ARM_ELF_OS_ABI_VERSION): Define.
856 (R_ARM_THM_ABS5): Fix rightshift and size.
857 (R_ARM_THM_PC22): Fix size.
858 (elf32_arm_info_to_howto_rel): Rename to elf32_arm_info_to_howto.
859 (elf32_arm_reloc_map): Change type of field bfd_reloc_val to
860 bfd_reloc_code_real_type.
861
862 * elf32-arm.h (struct elf32_arm_link_hash_table): Add new field:
863 no_pipeline_knowledge.
864 (elf32_arm_link_hash_create): Initialise new field to zero.
865 (bfd_elf32_arm_process_before_allocation): Add new paraemter:
866 no_pipeline_knowledge. Use this parameter to initialise the field
867 in the globals data structure.
868 (elf32_arm_final_link_relocate): Only add in pipeline offset if
869 no_pipeline_knowledge is false and the binary is from an old
870 toolchain.
871 (elf32_arm_merge_private_data): Generate an error if an attempt is
872 made to linl together big endian and little endian code.
873 (elf32_arm_post_process_headers): New function: Initialise the
874 EI_OSABI and EI_ABIVERSION fields of the newly created ELF program
6a9d5c9a 875 header.
ba96a88f
NC
876 (elf_backend_post_process_headers): Define.
877
e6c51ed4
NC
8781999-05-28 Nick Clifton <nickc@cygnus.com>
879
880 * elf-bfd.h (struct elf_backend_data): Add new field:
881 elf_backend_post_process_headers.
882
883 * elfxx-target.h (elf_backend_post_process_headers): Define to
884 NULL if not already defined.
6a9d5c9a 885 (elfNN_bed): Initialise elf_backend_post_process_headers field.
e6c51ed4
NC
886
887 * elf.c (prep_headers): Set the EI_OSABI and EI_ABIVERSION fields
888 to zero.
889 (_bfd_elf_compute_section_file_positions): Call
6a9d5c9a 890 elf_backend_post_process_headers if defined.
e6c51ed4 891
633fd09f
ILT
8921999-05-28 Ian Lance Taylor <ian@zembu.com>
893
894 * configure.in: Check whether getuid and getgid exist.
895 * archive.c: Define getuid and getgid as macros if HAVE_GETUID or
896 HAVE_GETGID are not defined, respectively.
897 (bfd_write_armap): Don't special case on _WIN32 for getuid and
898 getgid.
899 * configure.host: Set ac_cv_func_get{ug}id for *-*-windows*.
900 * configure, config.in: Rebuild.
901
b2ef150d
ILT
9021999-05-28 Martin Dorey <mdorey@madge.com>
903
904 * elf32-i960.c: New file.
905 * elf.c (prep_headers): Handle bfd_arch_i960.
906 * targets.c (bfd_target_vector): Add &bfd_elf32_i960_vec.
907 * config.bfd (i960-*-elf*): New target.
908 * configure.in (bfd_elf32_i960_vec): New target vector.
909 * Makefile.am (BFD32_BACKENDS): Add elf32-i960.lo.
910 (BFD32_BACKENDS_CFILES): Add elf32-i960.c.
911 * Makefile.in, aclocal.m4, configure: Rebuild.
912
5f97aa0c
NC
9131999-05-27 Nick Clifton <nickc@cygnus.com>
914
915 * elfarm-oabi.c (elf32_arm_howto_table): Add entry for
6a9d5c9a 916 R_ARM_PLT32.
5f97aa0c
NC
917 (find_howto): New function: Find entries in the
918 elf32_arm_howto_table.
919 (elf32_arm_info_to_howto): Use find_howto if the entry cannot be
920 computed simply.
921 (elf32_arm_reloc_type_lookup): Add lookup for
6a9d5c9a 922 BFD_RELOC_ARM_PLT32.
5f97aa0c 923
780a67af
NC
9241999-05-25 Philip Blundell <pb@nexus.co.uk>
925
926 * bfd/elf32-arm.h (elf32_arm_link_hash_newfunc): New function.
927 (elf32_arm_link_hash_table_create): Use above function as the
928 constructor for hash table entries.
929 (elf32_arm_relocate_section): Avoid crash when there is no output
6a9d5c9a 930 section.
780a67af
NC
931 (elf32_arm_final_link_relocate): New parameter h.
932 (elf32_arm_relocate_section): Pass symbol hash entry to above
933 routine.
934 (elf32_arm_gc_sweep_hook, elf32_arm_check relocs): Correct
935 comments.
6a9d5c9a 936
fa0e42e4 9371999-05-25 Catherine Moore <clm@cygnus.com>
6a9d5c9a 938
fa0e42e4
CM
939 * coff-arm.c (coff_arm_relocate_section): Don't emit
940 base file entries for pc-relative values.
6a9d5c9a 941
93dfcdf0
DD
9421999-05-25 DJ Delorie <dj@cygnus.com>
943
944 * peicode.h (coff_swap_sym_in): When we create the actual section
945 to reflect the not-there section C_SECTION symbols refer to,
946 change the symbol class to C_STAT as the section is now really
947 there.
948
db65e864
NC
9491999-05-24 Philip Blundell <pb@nexus.co.uk>
950
951 * elf32-arm.h (elf32_arm_relocate_section): Undo change of
952 1999-03-25.
953
948221a8 954Mon May 17 13:35:35 1999 Stan Cox <scox@cygnus.com>
f6886bc4 955
948221a8
NC
956 * coff-arm.c (_bfd_coff_arm_set_private_flags): Changed
957 F_PIC_INT to F_PIC.
958 * coffcode.h (coff_set_arch_mach_hook): Added F_ARM_2a, and
959 F_ARM_3M labels. Changed F_PIC_INT to F_PIC.
6a9d5c9a 960
1349dd65
NC
9611999-05-16 Nick Clifton <nickc@cygnus.com>
962
963 * coff-mcore.c (in_reloc_p): Reinstate.
964
36797d47
NC
9651999-05-15 Nick Clifton <nickc@cygnus.com>
966
967 * reloc.c (BFD_RELOC_MCORE_RVA): Define.
968 * bfd-in2.h: Regenerate.
969 * coff-mcore.c (in_reloc_p): Remove defintion.
970 (mcore_coff_howto): Add IMAGE_REL_MCORE_RVA.
971 (mcore_coff_reloc_type_lookup): Map BFD_RELOC_RVA to
972 IMAGE_REL_MCORE_RVA.
973 (coff_mcore_rtype_to_howto): Add special processing for
974 IMAGE_REL_MCORE_RVA.
975 (coff_mcore_relocate_section): Add support for
6a9d5c9a 976 IMAGE_REL_MCORE_RVA.
36797d47
NC
977 * elf32-mcore (mcore_elf_howto_): Add R_MCORE_RELATIVE.
978 (mcore_elf_reloc_type_lookup): Map BFD_RELOC_RVA to
979 R_MCORE_RELATIVE.
6a9d5c9a
UD
980 (mcore_elf_relocate_section): Delete redundant case labels.
981
97eaf9de
AS
982Fri May 14 10:59:55 1999 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
983
984 * elf32-arm.h (elf32_arm_relocate_section): Fix operator
985 precedence between bit-and and comparison.
986
2e9a84c8
RH
987Thu May 13 09:45:23 1999 Joel Sherrill (joel@OARcorp.com)
988
989 * config.bfd (i[3456]86*-*-rtems*, m68k*-*-rtems*): Added to
990 list of target formats (targ_selvecs).
991 (i[3456]86*-*-rtemself*, mips*el-*-rtems*): New targets.
992 (powerpcle*-*rtems*, sh-*-rtemself*): New targets.
993
ec0ef80e
DD
9941999-05-10 DJ Delorie <dj@cygnus.com>
995
996 * ecoff.c (_bfd_ecoff_write_armap): give the symtab element a
997 reasonable mode until "ar x" is smart enough to skip it (fixes
998 gcc/libgcc.a builds on mips-ecoff targets
999
1000 * coffcode.h (styp_to_sec_flags): Explain how COMDATs are supposed
1001 to work. Hack to support MS import libraries, which use different
1002 COMDAT types than GNU.
1003 (coff_slurp_symbol_table): C_SECTION symbols are local; they refer
1004 to implied zero-length sections (see peicode below)
1005 * coffgen.c (coff_get_normalized_symtab): Properly read long MS
1006 filename symbols, which use one *or more* auxents.
1007 * coffswap.h (coff_swap_aux_in): ditto
1008 * peicode.h (coff_swap_sym_in): Build the implied zero-length
1009 sections
6a9d5c9a 1010
5c746d90
JL
1011Tue May 11 15:51:58 1999 Jeffrey A Law (law@cygnus.com)
1012
1013 * elf32-v850.c (v850_elf_howto_table): Make partial_inplace false
1014 for all relocations.
1015
ba1b9317
CM
10161999-05-10 Catherine Moore <clm@cygnus.com>
1017
1018 * bfd-in.h (bfd_arm_allocate_interworking_sections): Static
1019 if COFF_IMAGE_WITH_PE.
1020 (bfd_arm_process_before_allocation): Likewise.
1021 (bfd_arm_get_bfd_for_interworking): Likewise.
1022 * coff-arm.c: Likewise.
1023 * bfd-in2.h: Regenerate.
1024 * configure.in (armpe_little_vec): Remove coff-arm.lo.
1025 (armpe_big_vec): Likewise.
1026 * configure: Rebuild.
1027
c1f6bc03
NC
10281999-05-10 Nick Clifton <nickc@cygnus.com>
1029
1030 * elf.c (elf_fake_sections): Check for .rel. as start of rel
1031 section, not just .rel. Same for .rela.
1032
b23f908b
NC
10331999-05-07 Nick Clifton <nickc@cygnus.com>
1034
1035 * coff-mcore.c (coff_mcore_relocate_section): Replace assert about
1036 endianism with an error message.
1037
7fafc0fd
RH
1038Thu May 6 17:09:09 1999 Fred Fish <fnf@be.com>
1039
1040 * dwarf2.c (read_abbrevs): Change cast of dwarf_abbrev_buffer
1041 assignment from "unsigned char *" to "char *".
1042 (decode_line_info): Likewise for dwarf_line_buffer assignment.
1043
b44267fd
CM
10441999-05-05 Catherine Moore <clm@cygnus.com>
1045
1046 * coff-arm.c (coff_arm_relocate_section): Add one to
1047 address of ARM_RVA32 thumb functions.
6a9d5c9a 1048
b44267fd 10491999-05-05 Catherine Moore <clm@cygnus.com>
6a9d5c9a 1050
9e1281c7
CM
1051 * elf32-m68k.c (elf32_m68k_set_private_flags): New.
1052 (elf32_m68k_copy_private_bfd_data): New.
1053 (elf32_m68k_merge_private_bfd_data): New.
1054 (elf32_m68k_print_private_bfd_data): New.
1055 (CPU32_FLAG): Define.
1056 (PLT_CPU32_ENTRY_SIZE): Define.
1057 (elf_cpu32_plt0_entry): Declare.
1058 (elf_cpu32_plt_entry): Declare.
1059 (elf_m68k_adjust_dynamic_symbol): Generate cpu32 plt entries.
1060 (elf_m68k_finish_dynamic_symbol): Likewise.
1061 (elf_m68k_finish_dynamic_sections): Likewise.
1062 (elf_backend_plt_header_size): Remove definition.
1063 (bfd_elf32_bfd_copy_private_bfd_data): Define.
1064 (bfd_elf32_bfd_merge_private_bfd_data): Define.
1065 (bfd_elf32_bfd_set_private_flags): Define.
1066 (bfd_elf32_bfd_print_private_bfd_data): Define.
6a9d5c9a 1067
ac79f2f3
JL
1068Mon May 3 09:24:49 1999 Jeffrey A Law (law@cygnus.com)
1069
1070 * som.c (som_fixup_formats): Fix comments for R_SHORT_PCREL_MODE
1071 and R_LONG_PCREL_MODE.
1072
252b5132
RH
10731999-04-29 Nick Clifton <nickc@cygnus.com>
1074
1075 * coff-mcore.c (coff_mcore_relocate_section): Fix typos.
1076
1077Fri Apr 28 16:36:19 1999 Stan Cox <scox@cygnus.com>
1078
1079 * elf32-sh.c (sh_elf_relocate_section): Include relocation addend
1080 in relocation calculation.
1081
10821999-04-26 Tom Tromey <tromey@cygnus.com>
1083
1084 * aclocal.m4, configure: Updated for new version of libtool.
1085
10861999-04-21 Nick Clifton <nickc@cygnus.com>
1087
1088 * coff-mcore.c: Add support for mcore relocs.
1089
10901999-04-20 Gavin Romig-Koch <gavin@cygnus.com>
1091
1092 * elf32-mips.c (_bfd_mips_elf_print_private_bfd_data): Scrap the
1093 incorrect use EF_MIPS_xxBITPTRS.
1094
10951999-04-18 Ian Lance Taylor <ian@zembu.com>
1096
1097 * elf64-alpha.c (elf64_alpha_relax_section): Remove unused local
1098 variable insn.
1099
1100 * bfd-in2.h: Rebuild.
1101 * libbfd.h: Rebuild.
1102
1103Sat Apr 17 20:55:15 1999 Catherine Moore <clm@cygnus.com>
6a9d5c9a 1104
252b5132
RH
1105 * coff-arm.c (coff_arm_rtype_to_howto): Remove ARM26D transform.
1106 (coff_arm_relocate_section): Add ARM26D transform. Only
1107 change to ARM26D for relocateable links.
1108
11091999-04-16 Gavin Romig-Koch <gavin@cygnus.com>
1110
1111 * elf32-mips.c (_bfd_mips_elf_print_private_bfd_data): New.
1112 (bfd_elf32_bfd_print_private_bfd_data): New.
1113
11141999-04-15 Doug Evans <devans@casey.cygnus.com>
1115
1116 * elf32-arm.h (elf32_arm_final_link_relocate): For R_ARM_THM_ABS5,
1117 refetch addend if USE_REL, add many comments regarding current state.
1118 For R_ARM_THM_PC22, refetch addend if USE_REL, simplify.
1119 * elfarm-nabi.c (elf32_arm_howto_table): For R_ARM_THM_ABS5, fix
1120 size and rightshift. For R_ARM_THM_PC22, fix bitsize.
1121 * elfarm-oabi.c (elf32_arm_howto_table): Ditto.
1122
1123Wed Apr 14 14:33:08 1999 Richard Henderson <rth@cygnus.com>
1124
1125 * elf32-mips.c (_bfd_mips_elf_read_ecoff_info): Zero `debug'.
1126 * elf64-alpha.c (elf64_alpha_read_ecoff_info): Likewise.
1127
11281999-04-13 David Mosberger <davidm@hpl.hp.com>
1129
1130 * dwarf2.c (decode_line_info): Don't truncate address to least
1131 significant 32 bits (breaks 64 bit targets).
1132 (lookup_address_in_function_table): Ditto.
1133 (comp_unit_contains_address): Ditto.
1134
1135Tue Apr 13 21:27:19 1999 Catherine Moore <clm@cygnus.com>
1136
1137 * coff-arm.c (arm_emit_base_file_entry): New routine.
1138 (A2T3_OFFSET): Define.
1139 (T2A3_OFFSET): Define.
1140 (coff_arm_relocate_section): Emit base file entries for interworking
1141 stubs.
1142
11431999-04-13 Philip Blundell <philb@gnu.org>
1144
1145 * elfarm-nabi.c (elf32_arm_howto_table): Add dummy entries for
1146 relocs 17 through 19.
1147
1148Sun Apr 11 01:25:17 1999 Richard Henderson <rth@cygnus.com>
1149
1150 * elfcode.h: Remove fnmatch.h.
1151 * elflink.h (elf_link_assign_sym_version): Call back to ld
1152 instead of calling fnmatch.
1153
1154 * config.bfd (i?86-*-beoself): Include pe vecs.
1155
1156Sun Apr 11 01:14:06 1999 Richard Henderson <rth@cygnus.com>
1157
1158 * elf32-i386.c (elf_i386_finish_dynamic_sections): Allow .plt
1159 to go missing.
1160
11611999-04-10 Richard Henderson <rth@cygnus.com>
1162
1163 * elf32-i386.c (elf_i386_relocate_section): Mind no_undefined
1164 when trying to resolve dynamic symbol references.
1165 * elf32-m68k.c (elf_m68k_relocate_section): Likewise.
1166 * elf32-mips.c (mips_elf_relocate_section): Likewise.
1167 * elf32-ppc.c (ppc_elf_relocate_section): Likewise.
1168 * elf32-sparc.c (elf32_sparc_relocate_section): Likewise.
1169 * elf64-alpha.c (elf64_alpha_relocate_section): Likewise.
1170 * elf64-sparc.c (sparc64_elf_relocate_section): Likewise.
1171 * elflink.h (elf_link_output_extsym): Likewise.
1172
1173Sat Apr 10 15:12:09 1999 Richard Henderson <rth@cygnus.com>
1174
1175 * section.c (_bfd_strip_section_from_output): New function moved from
1176 * elf64-alpha.c (elf64_alpha_strip_section_from_output): ... here.
1177 * elf32-i386.c (elf_i386_size_dynamic_sections): Use it.
1178 * elf32-m68k.c (elf_m68k_size_dynamic_sections): Likewise.
1179 * elf32-mips.c (mips_elf_size_dynamic_sections): Likewise.
1180 * elf32-ppc.c (ppc_elf_size_dynamic_sections): Likewise.
1181 * elf32-sparc.c (elf32_sparc_size_dynamic_sections): Likewise.
1182 * elf64-sparc.c (sparc64_elf_size_dynamic_sections): Likewise.
1183 * bfd-in2.h: Update.
1184
11851999-04-09 Ian Lance Taylor <ian@zembu.com>
1186
1187 * elf64-sparc.c: Fix incorrect calls to bfd_check_overflow.
1188
11891999-04-08 Nick Clifton <nickc@cygnus.com>
1190
1191 * coff-mcore.c: New File: Support for mcore-pe targets.
1192 * cpu-mcore.c: New File: Support for mcore targets.
1193 * elf32-mcore.c: New File: Support for mcore-elf target.
1194 * pe-mcore.c: New File: Definitions for mcore-pe target.
1195 * pei-mcore.c: New File: Definitions for mcore-pei target.
1196 * Makefile.am: Add support for MCore targets.
1197 * Makefile.in: Regenerate.
1198 * config.bfd: Add support for MCore targets.
1199 * configure.in: Add support for MCore targets.
1200 * configure: Regenerate.
1201 * archures.c: Add support for MCore architecture.
6a9d5c9a 1202 * bfd-in2.h: Regenerate.
252b5132
RH
1203 * coffcode.h: Add support for mcore-pe targets.
1204 * elf.c: Add support for mcore-elf target.
1205 * reloc.c: Add support for MCore relocs.
1206 * targets.c: Add support for MCore targets.
1207
12081999-04-07 Nick Clifton <nickc@cygnus.com>
1209
1210 * elfarm-nabi.c (elf32_arm_howto_table): Add entries for
1211 R_ARM_XPC25 and R_ARM_THM_XPC22.
1212 (elf32_arm_reloc_map): Remove redundant entries.
1213
12141999-04-06 Ian Lance Taylor <ian@zembu.com>
1215
1216 * sysdep.h (LC_MESSAGES): Never define.
1217
12181999-04-06 Chris Torek <torek@bsdi.com>
1219
1220 * reloc.c (bfd_check_overflow): Add addrsize parameter. Change
1221 all callers. Rewrite completely.
1222 (_bfd_relocate_contents): Rewrite overflow checking.
1223 * bfd-in2.h: Rebuild.
1224
12251999-04-05 Ian Lance Taylor <ian@zembu.com>
1226
1227 From Gabriel Paubert <paubert@iram.es>:
1228 * elf32-ppc.c (ppc_elf_howto_raw): Set R_PPC_GOT16_LO,
1229 R_PPC_PLT16_LO and R_PPC_SECTOFF_LO to be complain_overflow_dont.
1230 Set R_PPC_PLT16_HA, R_PPC_SECTOFF_HA and R_PPC_EMB_NADDR16_HA to
1231 have a rightshift of 16 and use ppc_elf_addr16_ha_reloc.
1232 * ppcboot.c (ppcboot_vec): Use little endian routines for
1233 headers.
1234
1235 * elf.c (elfcore_strndup): Only define if it will be used.
1236 * elf32-ppc.c (ppc_elf_relax_section): Remove unused locals irel
1237 and irelend.
1238 (ppc_elf_check_relocs): Remove unused local i.
1239 (ppc_elf_gc_mark_hook): Add default case to switch.
1240
1241 From Bernd Nitzler <nitzler@kagcpd01.ag01.kodak.COM>:
1242 * srec.c (srec_scan): Accept \r in symbol definitions.
1243 (srec_object_p): Set HAS_SYMS if we saw any symbols.
1244 (symbolsrec_object_p): Likewise.
1245
12461999-04-04 Don Bowman <don@pixsci.com>
1247
1248 * config.bfd: Add mips*el-*-vxworks* and mips*-*-vxworks*.
1249
12501999-04-04 Ian Lance Taylor <ian@zembu.com>
1251
1252 * dwarf1.c (parse_line_table): Remove unused locals last_pc and
1253 last_line.
1254 * elf-bfd.h (_bfd_elfcore_section_from_phdr): Declare.
1255 * elf32-i386.c (elf_i386_gc_mark_hook): Add default case to
1256 switch.
1257 * elflink.h (NAME(bfd_elf,size_dynamic_sections)): Remove unused
1258 local i.
1259 * syms.c (_bfd_stab_section_find_nearest_line): Remove unused
1260 local val.
1261
12621999-03-31 Nick Clifton <nickc@cygnus.com>
1263
1264 * config.bfd: Add support for arm-epoc-pe target.
1265 * configure.in: Add support for arm-epoc-pe target.
1266 * configure: Regenerate.
1267 * targets.c: Add support for arm-epoc-pe target.
1268 * coff-arm.c: Allow header files to override definition of
1269 TARGET_UNDERSCORE and USER_LABEL_PREFIX.
1270 * pe-arm.h: Allow previous header files to override definition of
1271 TARGET_LITTLE_SYM and TARGET_BIG_SYM.
6a9d5c9a 1272 * pei-arm.h: Allow previous header files to override definition of
252b5132
RH
1273 TARGET_LITTLE_SYM and TARGET_BIG_SYM.
1274 * epoc-pe-arm.c: New file. Support arm-epoc-pe target.
1275 * epoc-pei-arm.c: New file. Support arm-epoc-pei target.
6a9d5c9a 1276
252b5132
RH
12771999-03-30 Nick Clifton <nickc@cygnus.com>
1278
1279 * elf.c (elf_map_symbols): Handle the case where section
1280 symbols are generated for content-less sections which are
1281 not mapped to the output file.
1282
1283 * linker.c: Replace direct references to fields in BFD structure
1284 with accessor macros.
1285
1286 * elflink.h: Replace direct references to fields in BFD structure
1287 with accessor macros.
1288
12891999-03-25 Philip Blundell <pb@nexus.co.uk>
1290
1291 * config.bfd: Eliminate redundancy in checks for Linux/ARM.
6a9d5c9a
UD
1292
1293 * elf32-arm.h (elf32_arm_relocate_section): Take the rightshift into
252b5132
RH
1294 account when adjusting section symbols during a partial link.
1295
12961999-03-24 Nick Clifton <nickc@cygnus.com>
1297
1298 * coff-sparc.c (struct coff_reloc_map): Change type of field
1299 'bfd_reloc_val' to bfd_reloc_code_real_type.
1300 * elf-m10200.c (struct mn10200_reloc_map): Ditto.
1301 * elf-m10300.c (struct mn10300_reloc_map): Ditto.
1302 * elf32-arc.c (struct arc_reloc_map): Ditto.
1303 * elf32-d10v.c (struct d10v_reloc_map): Ditto.
1304 * elf32-d30v.c (struct d30v_reloc_map): Ditto.
1305 * elf32-fr30.c (struct fr30_reloc_map): Ditto.
1306 * elf32-m32r.c (struct m32r_reloc_map): Ditto.
1307 * elf32-sh.c (struct elf_reloc_map): Ditto.
1308 * elf32-sparc.c (struct elf_reloc_map): Ditto.
1309 * elf32-v850.c (struct v850_reloc_map): Ditto.
1310 * elf64-sparc.c (struct elf_reloc_map): Ditto.
1311 * elfarm-nabi.c (struct elf32_arm_reloc_map): Ditto.
1312 * elfarm-oabi.c (struct elf32_arm_reloc_map): Ditto.
1313
13141999-03-17 Martin Hunt <hunt@cygnus.com>
1315
1316 * syms.c (_bfd_stab_section_find_nearest_line): Changed this
1317 function so source-level assembly works. If multiple N_SOs
1318 are seen without and N_FUNs, create an indextable entry with
1319 a NULL function name.
1320
13211999-03-16 Gavin Romig-Koch <gavin@cygnus.com>
1322
1323 * elf32-mips.c (_bfd_mips_elf_merge_private_bfd_data) Allow merging
1324 of certian similar cpus.
1325
13261999-03-16 Gavin Romig-Koch <gavin@cygnus.com>
1327
1328 * elf32-mips.c (_bfd_mips_elf_final_write_processing):
1329 Add the 5000. Change the architecture for the 5400 to mips4.
1330 (elf_mips_mach): Add r5000.
1331
13321999-03-11 Doug Evans <devans@casey.cygnus.com>
1333
1334 * cpu-i960.c (scan_i960_mach): Recognize i960:ka_sa and i960:kb_sb.
1335
13361999-03-11 Nick Clifton <nickc@cygnus.com>
1337
1338 * binary.c (binary_set_section_contents): Generate warning about
1339 huge file offsets for any section that will occupy file space, not
1340 just those that are loadable.
1341
13421999-02-24 Jim Blandy <jimb@zwingli.cygnus.com>
1343
1344 * libbfd.h: Regenerate after Nick Clifton's Feb 17 changes.
1345
13461999-02-22 Jim Lemke <jlemke@cygnus.com>
1347
1348 * elf32-ppc.c: Add ppc_elf_relax_section() for the ld option mpc860c0.
1349
1350Mon Feb 22 18:26:51 1999 Ian Lance Taylor <ian@cygnus.com>
1351
1352 * elf-bfd.h (ELF_LINK_HASH_REF_REGULAR_NONWEAK): Define.
1353 * elflink.h: Revert all changes since Feb 16. Instead:
1354 (elf_link_add_object_symbols): Set REF_REGULAR_NONWEAK flag if
1355 appropriate. Copy it to version symbols.
1356 (elf_fix_symbol_flags): Set REF_REGULAR_NONWEAK for non ELF
1357 symbols if appropriate.
1358 (elf_adjust_dynamic_symbol): Set REF_REGULAR_NONWEAK for weakdef
1359 symbol if appropriate.
1360 (elf_link_output_extsym): If symbol is marked as undefined, and
1361 has no nonweak references, mark it as weak undefined.
1362
1363Fri Feb 19 16:01:12 1999 Ian Lance Taylor <ian@cygnus.com>
1364
1365 * elflink.h (elf_merge_symbol): When overriding a dynamic
1366 definition with a weak undefined symbol, set NEEDS_PLT if it is a
1367 function.
1368 (elf_link_add_object_symbols): Don't copy the other field if we
1369 are overridding.
1370
1371Thu Feb 18 18:07:43 1999 Ian Lance Taylor <ian@cygnus.com>
1372
1373 * elflink.h (elf_merge_symbol): Do not merge any symbol from a
1374 shared object with a weak undefined symbol.
1375
13761999-02-18 Nick Clifton <nickc@cygnus.com>
1377
1378 * elfarm-nabi.c: Set partial_inplace back to false.
1379
13801999-02-17 Nick Clifton <nickc@cygnus.com>
1381
1382 * coff-arm.c (TARGET_UNDERSCORE): Re-enable.
1383 (USER_LABEL_PREFIX): Set to "_".
1384
1385 The following patches are from: Scott Bambrough
1386 <scottb@corelcomputer.com>
6a9d5c9a 1387
252b5132
RH
1388 * libaout.h (M_ARM6_NETBSD): Set to 143.
1389
1390 * reloc.c: Add ARM PIC relocs: BFD_RELOC_ARM_GOT12,
1391 BFD_RELOC_ARM_GOT32, BFD_RELOC_ARM_JUMP_SLOT, BFD_RELOC_ARM_COPY,
1392 BFD_RELOC_ARM_GLOB_DAT, BFD_RELOC_ARM_PLT32,
1393 BFD_RELOC_ARM_RELATIVE, BFD_RELOC_ARM_GOTOFF, BFD_RELOC_ARM_GOTPC.
1394 * bfd-in2.h: Regenerate.
1395
1396 * elfarm-nabi.c (elf32_arm_howto_table): Set partial_inplace to
1397 'true' as REL relocs are now being used. Add new PIC relocs:
1398 R_ARM_COPY, R_ARM_GLOB_DAT, R_ARM_JUMP_SLOT, R_ARM_RELATIVE,
1399 R_ARM_GOTOFF, R_ARM_GOTPC, R_ARM_GOT32, R_ARM_PLT32.
1400
1401 * elf32-arm.h (elf32_arm_merge_private_bfd_data): Check byte order
1402 of targets.
1403 (elf32_arm_final_link_relocate): Change parameters so that entire
1404 reloc is passed. Add support for PIC relocs.
1405 (elf32_arm_relocate_section): Pass entire reloc to
6a9d5c9a 1406 elf32_arm_final_link_relocate.
252b5132
RH
1407 (elf32_arm_check_relocs): Handle new PIC relocs.
1408 (elf32_arm_adjust_dynamic_symbol): New function.
1409 (elf32_arm_size_dynamic_sections): New function.
1410 (elf32_arm_discard_copies): New function.
1411 (elf32_arm_finish_dynamic_symbol): New function.
1412 (elf32_arm_finish_dynamic_sections): New function.
1413 (ELF_MAXPAGE_SIZE): Define.
1414 (bfd_elf32_bfd_reloc_type_lookup): Define.
1415 (elf_backend_relocate_section): Define.
1416 (elf_backend_adjust_dynamic_symbol): Define.
1417 (elf_backend_create_dynamic_sections): Define.
1418 (elf_backend_finish_dynamic_symbol): Define.
1419 (elf_backend_finish_dynamic_sections): Define.
1420 (elf_backend_size_dynamic_sections): Define.
1421 (elf_backend_plt_readonly): Define.
1422 (elf_backend_want_got_plt): Define.
1423 (elf_backend_want_plt_sym): Define.
6a9d5c9a 1424
252b5132
RH
1425Wed Feb 17 12:02:26 1999 Stan Cox <scox@cygnus.com>
1426
1427 * elf32-mips.c (_bfd_mips_elf_section_from_shdr): Make reginfo
1428 sections SEC_LINK_ONCE and SEC_LINK_DUPLICATES_SAME_SIZE.
1429 (_bfd_mips_elf_fake_sections): Likewise.
1430
1431Wed Feb 17 12:07:23 1999 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
6a9d5c9a 1432
252b5132
RH
1433 * elfarm-oabi.c (bfd_elf32_arm_allocate_interworking_sections,
1434 bfd_elf32_arm_get_bfd_for_interworking,
1435 bfd_elf32_arm_process_before_allocation): Define to avoid clash
1436 with elfarm-nabi.c.
6a9d5c9a 1437
252b5132
RH
1438 * elf32-arm.h: Don't declare elf32_arm_info_to_howto.
1439 (elf32_thumb_to_arm_stub, elf32_arm_to_thumb_stub,
1440 elf32_arm_find_nearest_line): Make them static.
1441
1442Tue Feb 16 22:44:37 1999 Ian Lance Taylor <ian@cygnus.com>
1443
1444 * elflink.h (elf_merge_symbol): Add pflags parameter. Change all
1445 callers. Do not merge a definition from a shared object with a
1446 weak undefined symbol.
1447 (elf_link_add_object_symbols): Do not change the symbol type or
1448 size if the old symbol overrides the new one.
1449
14501999-02-08 Nick Clifton <nickc@cygnus.com>
1451
1452 * config.bfd: Add support for strongarm target.
1453
1454Mon Feb 8 11:18:14 1999 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
1455
1456 * elf32-m68k.c (reloc_map): Use the correct types for the struct
1457 fields instead of unsigned char.
1458
1459Fri Feb 5 00:22:36 1999 Ian Lance Taylor <ian@cygnus.com>
1460
1461 * Makefile.am: Rebuild dependencies.
1462 * Makefile.in: Rebuild.
1463
1464Thu Feb 4 22:30:13 1999 Ian Lance Taylor <ian@cygnus.com>
1465
1466 * configure.in: Change AC_PREREQ to 2.13. Remove AM_CYGWIN32.
1467 Change AM_EXEEXT to AC_EXEEXT and AM_PROG_INSTALL to
1468 AC_PROG_INSTALL. Add comments to uses of AC_DEFINE.
1469 * acinclude.m4: Add comments to uses of AC_DEFINE.
1470 * acconfig.h: Remove.
1471 * configure: Rebuild with current autoconf/automake.
1472 * aclocal.m4: Likewise.
1473 * config.in: Likewise.
1474 * Makefile.in: Likewise.
1475
14761999-02-04 DJ Delorie <dj@cygnus.com>
1477
1478 * libbfd.c (real_read): don't call fread for zero bytes. This
1479 covers up a bug (or misuse of bfd) that's exposed by Solaris.
1480
1481Thu Feb 4 12:38:10 1999 Stan Cox <scox@cygnus.com>
1482
1483 * elf32-mips.c (mips_elf_relocate_section): Insure that the target
1484 of a jump is in the current 256 MB region.
1485
1486Thu Feb 4 12:15:38 1999 Ian Lance Taylor <ian@cygnus.com>
1487
1488 * format.c (bfd_check_format_matches): Change last patch to only
1489 take effect for the binary target.
1490
1491Wed Feb 3 19:40:12 1999 Ian Lance Taylor <ian@cygnus.com>
1492
1493 * elf32-i386.c (elf_i386_reloc_type_lookup): Add BFD_RELOC_CTOR.
1494
1495Wed Feb 3 15:02:44 1999 Catherine Moore <clm@cygnus.com>
1496
1497 * elf32-fr30.c (fr30_elf_check_relocs): New routine.
1498
1499Tue Feb 2 21:38:28 1999 Ian Lance Taylor <ian@cygnus.com>
1500
1501 * format.c (bfd_check_format_matches): If the target was
1502 previously specified, don't check other targets when checking for
1503 an archive file.
1504
1505Tue Feb 2 18:16:43 1999 Catherine Moore <clm@cygnus.com>
1506
1507 * elf32-arm.h (elf32_arm_reloc_map): Removed.
1508 (elf32_arm_reloc_type_lookup): Removed
1509 * elfarm-nabi.c (elf32_arm_reloc_map): New.
1510 (elf32_arm_reloc_type_lookup): New.
1511 * elfarm-oabi.c (elf32_arm_reloc_map): New.
1512 (elf32_arm_reloc_type_lookup): New.
1513
1514Mon Feb 1 19:49:21 1999 Catherine Moore <clm@cygnus.com>
1515
1516 * elfarm-nabi.c: Renamed from elf32-arm-newabi.c.
1517 * elfarm-oabi.c: Renamed from elf32-arm-oldabi.c
1518 * Makefile.am: Use new files.
1519 * Makefile.in: Regenerate.
1520 * configure.in: Use new files.
6a9d5c9a 1521 * configure: Regenerate.
252b5132
RH
1522
15231999-02-01 Nick Clifton <nickc@cygnus.com>
1524
1525 * elf32-fr30.c (fr30_elf_gc_mark_hook): New function.
1526 (fr30_elf_gc_sweep_hook): New function.
1527 (elf_backend_can_gc_sections): Define.
1528
1529Mon Feb 1 12:21:47 1999 Catherine Moore <clm@cygnus.com>
1530
1531 * targets.c (bfd_target_vector): Add bfd_elf32_littlearm_oabi_vec
1532 and bfd_elf32_bigarm_oabi_vec.
1533
1534Mon Feb 1 11:46:31 1999 Catherine Moore <clm@cygnus.com>
1535
1536 * Makefile.am (elf32-arm-oldabi.lo): New.
1537 (elf32-arm-newabi.lo): New.
1538 * Makefile.in: Regenerate.
1539 * config.bfd (thumb-*-elf): Remove definition of targ_underscore.
1540 (arm-*-elf): Likewise.
1541 (arm-*-oabi): New.
1542 (thumb-*-oabi): New.
1543 * configure: Regenerate.
1544 * configure.in (bfd_elf32_littlearm_oabi_vec): New.
1545 (bfd_elf32_bigarm_oabi_vec): New.
1546 * elf32-arm-newabi.c: New.
1547 * elf32-arm-oldabi.c: New.
1548 * elf32-arm.c: Removed.
1549 * elf32-arm.h: New.
1550
1551Mon Feb 1 11:52:12 1999 Frank Ch. Eigler <fche@cygnus.com>
1552
1553 * binary.c (binary_set_section_contents): Omit warnings for
1554 unloadable sections.
1555
15561999-01-31 Michael Meissner <meissner@cygnus.com>
1557
1558 * config.bfd (powerpc{,le}-*-vxworks*): Add aliases to
1559 powerpc{,le}-*-eabi.
1560
15611999-01-29 Nick Clifton <nickc@cygnus.com>
1562
1563 * dwarf2.c (read_unsigned_leb128): Remove unused variables.
1564 * dwarf2.c (read_signed_leb128): Remove unused variables.
1565
1566Fri Jan 29 00:47:21 1999 H.J. Lu <hjl@gnu.org>
1567
1568 * elf.c (assign_file_positions_for_segments): Only adjust
1569 p_align when needed.
1570
1571Thu Jan 28 20:05:22 1999 Ian Lance Taylor <ian@cygnus.com>
1572
1573 * binary.c (binary_set_section_contents): Don't return early for a
1574 non-loadable section, in case the first section is non-loadable.
1575 Don't set the low lma for a SEC_NEVER_LOAD section. From Maciej
1576 W. Rozycki <macro@ds2.pg.gda.pl>.
1577
15781999-01-28 Nick Clifton <nickc@cygnus.com>
1579
1580 * elf32-fr30.c (fr30_reloc_map): Add R_FR30_GNU_VTINHERIT and
1581 R_FR30_GNU_VTENTRY relocs.
1582
1583Thu Jan 28 11:08:16 1999 Catherine Moore <clm@cygnus.com>
1584
1585 * elflink.h (elf_link_output_sym): Zero syms which are
1586 part of sections which have been excluded.
1587
1588Wed Jan 27 13:35:35 1999 Stan Cox <scox@cygnus.com>
1589
1590 * coff-arm.c (_bfd_coff_arm_set_private_flags): Changed F_PIC
1591 to F_PIC_INT.
1592 * coffcode.h (coff_set_arch_mach_hook): Removed F_ARM_2a and
1593 F_ARM_3M labels. Changed F_PIC to F_PIC_INT.
6a9d5c9a 1594
252b5132
RH
15951999-01-27 Nick Clifton <nickc@cygnus.com>
1596
1597 * elf32-fr30.c (fr30_elf_howto_table): Fix name of R_FR30_48
6a9d5c9a 1598 relocation.
252b5132 1599 (fr30_final_link_relocate): Use computed value as result of
6a9d5c9a 1600 relocation.
252b5132
RH
1601
16021999-01-26 Frank Ch. Eigler <fche@cygnus.com>
1603
1604 * binary.c (binary_set_section_contents): Emit warning for
1605 huge file offsets due to widely-dispersed section LMAs.
1606
1607Mon Jan 18 03:35:35 1999 Ian Lance Taylor <ian@cygnus.com>
1608
1609 * elf.c (assign_file_positions_for_segments): If not D_PAGED,
1610 align first section to largest section alignment, not first
1611 section alignment.
1612
16131999-01-04 Jason Molenda (jsm@bugshack.cygnus.com)
1614
1615 * configure.in: Require autoconf 2.12.1 or higher.
1616
1617Tue Dec 22 15:21:41 1998 Catherine Moore <clm@cygnus.com>
1618
1619 * archures.c (bfd_mach_i386_i386_intel_syntax): Define.
1620 * bfd-in2.h: Likewise.
1621 * cpu-i386.c (bfd_i386_arch_intel_syntax): New.
1622
16231998-12-16 Gavin Romig-Koch <gavin@cygnus.com>
1624
1625 * archures.c,bfd-in2.h (bfd_mach_mips4111): New.
1626 * cpu-mips.c: Add support for and independent 4111.
1627 * elf32-mips.c (elf_mips_mach): E_MIPS_MACH_4111 -> bfd_mach_mips4111.
6a9d5c9a 1628 (_bfd_mips_elf_final_write_processing):
252b5132
RH
1629 bfd_mach_mips4111 -> E_MIPS_ARCH_3 | E_MIPS_MACH_4111.
1630
16311998-12-15 Gavin Romig-Koch <gavin@cygnus.com>
1632
1633 * elf32-mips.c (elf_mips_abi_name): New.
1634 (_bfd_mips_elf_merge_private_bfd_data): Compare EF_MIPS_ABI flags.
1635
16361998-12-12 Gavin Romig-Koch <gavin@cygnus.com>
1637
6a9d5c9a 1638 * elf32-mips.c (_bfd_mips_elf_final_write_processing):
252b5132
RH
1639 Handle bfd_mach_mips4300.
1640
16411998-12-11 Ulrich Drepper <drepper@cygnus.com>
1642
1643 * elf32-i386.c: Remove leaked development code from patch
1644 1998-12-10 by Richard Henderson.
1645
16461998-12-10 Richard Henderson <rth@cygnus.com>
1647
1648 * elf32-i386.c (elf_i386_relocate_section): Don't fail relocations
1649 in debug sections for symbol defined externally.
1650
1651Thu Dec 10 10:58:38 1998 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
1652
1653 * targets.c (bfd_target_vector): Remove duplicate entry for
1654 tekhex_vec.
1655
16561998-12-09 Nick Clifton <nickc@cygnus.com>
1657
1658 * elf32-fr30.c (fr30_elf_howto_table): Set src_mask fields to 0
1659 since we are using RELAs.
1660
1661Tue Dec 8 22:15:48 1998 Ian Lance Taylor <ian@cygnus.com>
1662
1663 SCO Open Server Release 5 core file support, from Jouke Numan
1664 <jnuman@hiscom.nl>:
1665 * sco5-core.c: New file.
1666 * configure.in (i[3456]86-*-sco3.2v5*): Use sco5-core.lo.
1667 (sco5-core.lo): Define SCO5_CORE in COREFLAG.
1668 * Makefile.am: Rebuild dependencies.
1669 (OPTIONAL_BACKENDS): Add sco5-core.lo.
1670 (OPTIONAL_BACKENDS_CFILES): Add sco5-core.c.
1671 * bfd.c (struct _bfd): Add sco5_core_data field to tdata.
1672 * targets.c (sco5_core_vec): Add to target list if SCO5_CORE.
1673 * bfd-in2.h, configure, Makefile.in: Rebuild.
1674
1675Tue Dec 8 19:38:42 1998 Mark Klein <mklein@dis.com>
1676
1677 * config.bfd (hppa*-*-mpeix*): New target.
1678 * configure.in: Add AC_HEADER_DIRENT.
1679 (hppa*-*-mpeix*): New target.
1680 * configure.host (hppa*-*-mpeix*): New host.
1681 * hpux-core.c: Check HOST_HPPAMPEIX. Use HAVE_DIRENT_H and
1682 friends rather than just including <sys/dir.h>.
1683 * som.h (struct som_symbol): Add hppa_priv_level and apto
1684 tc_data. Change all users.
1685 (struct somdata): Add comp_unit field.
1686 (obj_som_compilation_unit): Define.
1687 (bfd_som_attach_compilation_unix): Declare.
1688 * som.c: Check HOST_HPPAMPEIX.
1689 (struct som_misc_symbol_info): Add new field priv_level.
1690 (som_object_setup): Add current_offset parameter. Change all
1691 callers.
1692 (setup_sections): Likewise.
1693 (som_object_p): For EXECLIBMAGIC, read the lst header.
1694 (som_write_symbol_strings): Add compilation_unit parameter.
1695 Change all callers.
1696 (som_finish_writing): Write out compilation_unit.
1697 (som_bfd_derive_misc_symbol_info): Set priv_level.
1698 (som_build_and_write_symbol_table): Set xleast field to 3.
1699 (som_slurp_symbol_table): Set symbol priv_level.
1700 (bfd_som_attach_compilation_unit): New function.
1701 (som_bfd_ar_write_symbol_stuff): Set xleast field to 3. Set
1702 priv_level into symbol_value.
1703 * configure, config.in: Rebuild.
1704
1705Tue Dec 8 16:21:35 1998 Ian Lance Taylor <ian@cygnus.com>
1706
1707 * hpux-core.c (hpux_core_core_file_p): Change call to nonexistent
1708 warning function to call _bfd_error_handler instead.
1709
1710 * libbfd.c (COERCE32): Cast through unsigned long and long to
1711 avoid bug in old version of gcc.
1712
1713 * elf64-alpha.c (elf64_alpha_additional_program_headers): Remove.
1714 (elf_backend_additional_program_headers): Don't define.
1715
17161998-12-08 Nick Clifton <nickc@cygnus.com>
1717
1718 * elf32-fr30.c (fr30_final_link_relocate): Fix PC relative
1719 relocations to include offset of 2 included in the insns, and the
1720 offset of the relocs within the section.
1721
1722Wed Dec 2 15:03:59 1998 David Taylor <taylor@texas.cygnus.com>
1723
1724 The following changes were made by David Taylor
1725 <taylor@texas.cygnus.com>, Edith Epstein
1726 <eepstein@sophia.cygnus.com>, Jim Blandy
1727 <jimb@zwingli.cygnus.com>, and Elena Zannoni
1728 <ezannoni@kwikemart.cygnus.com> as part of the project to merge in
1729 changes originally made by HP; HP did not create ChangeLog
1730 entries.
1731
1732 * aclocal.m4, configure, Makefile.in: Rebuilt using latest
1733 automake macro library.
1734
1735 * hpux-core.c (hpux_core_core_file_p): this function now
1736 understands HPUX 10.30 thread info. Yes, the thread stacks can be
1737 found in the corefile! Also, in hpux_core_core_file_p, if we
1738 encounter a section with an unknown type, don't punt. Instead,
1739 just skip it. Also, count the number of sections of known type
1740 that we encounter. If we encounter at least one good one, then
1741 we'll declare that the file is a core file. If we encounter any
1742 unknown ones but some known ones, then we'll issue a warning (but
1743 still declare it to be a core file). Also, correctly decide when a
1744 file is not a core.
1745 (PROC_INFO_HAS_THREAD_ID): define if CORE_ANON_SHMEM defined.
1746 (CORE_ANON_SHMEM): define if not defined.
1747 (hpux_core_struct): add members lwpid and user_tid.
1748 (core_kernel_thread_id, core_user_thread_id): new macros.
1749 (make_bfd_asection): use bfd_alloc to allocate room for a copy of
1750 the name before storing it in the bfd.
1751 (hpux_core_core_file_p): handle threads.
1752
1753 * libhppa.h (GET_FIELD): protect against redefinition.
1754 (HPPA_WIDE): define.
1755 (GET_FIELD): define.
1756 (GET_BIT): define.
1757 (MASK): define.
1758 (CATENATE): define.
1759 (ELEVEN): define.
1760 (sign_extend): redefine.
1761 (assemble_6): define.
1762 (assemble_12): rewrite.
1763 (assemble_16): define.
1764 (assemble_16a): define.
1765 (assemble_17): rewrite.
1766 (assemble_22): define.
1767
17681998-12-07 Nick Clifton <nickc@cygnus.com>
1769
1770 * elf32-fr30.c (fr30_final_link_relocate): Using signed
1771 relocations for signed values.
1772
1773Sun Dec 6 16:30:33 1998 Ian Lance Taylor <ian@cygnus.com>
1774
1775 * mipsbsd.c (MY(set_arch_mach)): Make static.
1776 * aoutx.h (NAME(aout,machine_type)): For bfd_arch_mips, use
1777 bfd_mach_mips* macros rather than simple numbers.
1778
1779 COFF weak symbol support, based on patches from Mark Elbrecht
1780 <snowball3@usa.net>:
1781 * coffcode.h (coff_slurp_symbol_table): Handle C_WEAKEXT.
1782 * coffgen.c (coff_renumber_symbols): Handle weak symbols.
1783 (coff_write_alien_symbol): Likewise.
1784 * cofflink.c (coff_link_check_ar_symbols): Likewise.
1785 (coff_link_add_symbols): Likewise.
1786 (_bfd_coff_link_input_bfd): Likewise.
1787 (_bfd_coff_write_global_sym): Likewise.
1788
1789 * elf.c (copy_private_bfd_data): Always initialize the
1790 includes_phdrs field.
1791
1792 * elflink.h (elf_fix_symbol_flags): Check for case where a non-ELF
1793 file defines a symbol first mentioned in an ELF file.
1794
1795 * bfd-in.h: Always define BFD_HOST_64_BIT and BFD_HOST_U_64_BIT if
1796 possible, rather than only if BFD64.
1797 * elflink.h (compute_bucket_count): Just check BFD_HOST_U_64_BIT,
1798 not __GNUC__.
1799 * bfd-in2.h: Rebuild.
1800
1801 * srec.c (srec_set_section_contents): Correct test to avoid
1802 switching to 4 byte addresses after seeing a second section which
1803 requires 3 byte addresses. From Joel Schantz
1804 <joel.schantz@argosys.boeing.com>.
1805
1806 * config.bfd (m68*-*-gnu*): New target. From Aymeric Vincent
1807 <aymeric.vincent@emi.u-bordeaux.fr>.
1808
18091998-12-04 Jim Blandy <jimb@zwingli.cygnus.com>
1810
1811 * elf32-ppc.c (ppc_elf_merge_private_bfd_data): Fix logic to
1812 decide whether the output file is -mrelocatable-lib,
1813 -mrelocatable, or neither. (gdb.base/nodebug.exp)
1814
18151998-12-03 Nick Clifton <nickc@cygnus.com>
1816
1817 * elf32-fr30.c: Add support for R_FR30_48 reloc.
1818 * reloc.c: Add BFD_RELOC_FR30_48 relocation.
1819 * bfd-in2.h: Regenerate.
1820 * libbfd.h: Regenerate
1821
1822Wed Dec 2 00:58:37 1998 Ian Lance Taylor <ian@cygnus.com>
1823
1824 * elflink.h (elf_adjust_dynamic_symbol): Warn on an attempt to
1825 link against a dynamic symbol with no type or size.
1826
18271998-12-01 Ulrich Drepper <drepper@cygnus.com>
1828
1829 * elf32-i386.c (i386_check_relocs) [R_386_32]: Don't emit
1830 relocation for section which does not get loaded.
1831 (elf_i386_relocate_section) [R_386_32]: Likewise.
1832
1833Tue Dec 1 11:33:33 1998 Jim Wilson <wilson@cygnus.com>
1834
1835 * coff-h8300.c (h8300_bfd_link_add_symbols): Make reloc_size,
1836 reloc_count and i long instead of unsigned long. Handle error
1837 return from bfd_canonicalize_reloc.
1838
18391998-12-01 Nick Clifton <nickc@cygnus.com>
1840
1841 * elf32-v850.c (v850_elf_relocate_section): Detect the absence of
1842 a hash table.
1843
1844Mon Nov 30 15:28:09 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
1845
1846 * elf32-sh.c (elf/sh.h): Include.
1847 sh_reloc_type: Delete. Changed all references to elf_sh_reloc_type.
1848 (sh_elf_howto_tab): Add HOWTO for R_SH_SWITCH8.
1849 (sh_reloc_map): Map BFD_RELOC_8_PCREL to R_SH_SWITCH8.
1850 (sh_elf_relax_delete_bytes): Handle R_SH_SWITCH8.
1851 * Makefile.in: Add dependency of elf32-sh.lo on $(INCDIR)/elf/sh.h.
1852
1853Fri Nov 27 17:51:38 1998 Geoff Keating <geoffk@ozemail.com.au>
1854
1855 * elflink.h (compute_bucket_count): Don't allow minsize==0, it
1856 causes division by zero later on.
1857
1858Thu Nov 26 11:19:35 1998 Dave Brolley <brolley@cygnus.com>
1859
1860 * elf32-fr30.c (fr30_elf_pc9_reloc,fr30_elf_pc12_reloc): Not
1861 needed.
1862
18631998-11-25 DJ Delorie <dj@cygnus.com>
1864
1865 * coff-i386.c (i3coff_object_p): Remove hack. Use new emulation
1866 hook now.
1867
1868Tue Nov 24 10:25:27 1998 Nick Clifton <nickc@cygnus.com>
1869
1870 * elf32-fr30.c (fr30_elf_relocate_section): Call
1871 fr30_final_link_relocate.
1872 (fr30_final_link_relocate): New function: Handle I20 and I32
1873 relocs.
1874 (fr30_elf_i32_reloc): New function: Handle I32 relocs.
1875 (fr30_elf_pc9_reloc): New function: Handle 9_PCREL relocs.
1876 (fr30_elf_pc12_reloc): New function: Handle 12_PCREL relocs.
1877
1878 * elf32-v850.c (v850_elf_relocate_section): Reset hi16s reloc
1879 chain to empty.
1880
1881 The following changes are based on a patch submitted by Gianluca
1882 Moro <glctr@abc.it>:
1883
1884 (v850_elf_perform_relocation): Only update a hi16s reloc if it has
1885 not already been updated.
1886 (find_remembered_hi16s_reloc): New parameter 'already_found'
1887 returns state of remembered hi16s reloc.
1888 (remember_hi16s_reloc): Set 'found' field to false.
1889 (hi16s_location): Add 'found' field.
1890
18911998-11-23 DJ Delorie <dj@cygnus.com>
1892
1893 * coff-i386.c (bfd_pe_dll_not_recognized_hack): the linker wants
1894 to see .DLL files as unrecognized.
1895 (i3coff_object_p): Sorry, had to hack it to not recognize these
1896 files (pei-i386) on request.
1897
18981998-11-23 DJ Delorie <dj@cygnus.com>
1899
1900 * opncls.c (bfd_make_readable): need more cleanup for symbols and
1901 relents. Call bfd_check_format to reinitialize.
1902
1903Fri Nov 20 14:21:36 1998 Nick Clifton <nickc@cygnus.com>
1904
1905 * elf32-fr30.c (fr30_elf_relocate_section): Remove spurious
1906 warnings.
1907
1908Thu Nov 19 14:42:15 1998 Geoffrey Noer <noer@cygnus.com>
1909
1910 * aclocal.m4: regenerate
1911 * configure: regenerate
1912
1913Tue Nov 17 20:23:35 1998 Richard Henderson <rth@cygnus.com>
1914
1915 * elf-bfd.h (struct elf_link_hash_entry): Add vtable_entries_size.
1916 * elf.c (_bfd_elf_link_hash_newfunc): Clear it.
1917 * elflink.h (elf_gc_propagate_vtable_entries_used): Copy it, and
1918 respect it as an upper bound on what memory to reference.
1919 (elf_gc_smash_unused_vtentry_relocs): Likewise.
1920 (elf_gc_record_vtentry): Handle as-yet undefined vtables. Set and
1921 update vtable_entries_size appropriately.
1922
1923Tue Nov 17 15:28:31 1998 Nick Clifton <nickc@cygnus.com>
1924
1925 * elf32-fr30.c (fr30_reloc_type_lookup): Used integers to hold
1926 reloc number.
1927
1928Mon Nov 16 22:19:21 1998 DJ Delorie <dj@cygnus.com>
1929
1930 * archive.c (bfd_ar_hdr_from_filesystem): support BFD_IN_MEMORY
1931 bfds; they have no "file" so we fake it.
1932 * bfd-in2.h: add bfd_make_writable and bfd_make_readable (regen)
1933 * libbfd.c (bfd_write): Allow writing to BFD_IN_MEMORY bfds by
1934 resizing the memory buffer.
1935 * opncls.c (bfd_make_writable): New function; lets you write a
1936 bfd_create'd bfd to an in-memory buffer.
1937 (bfd_make_readable): New function; lets you read back that buffer
1938 as if it were from bfd_openr. Used to build generated archive
1939 members (winsup's ld's dlltool)
1940
1941Mon Nov 16 19:15:19 1998 Dave Brolley <brolley@cygnus.com>
1942
1943 * po/bfd.pot: Regenerated.
1944
1945Mon Nov 16 10:57:06 1998 Nick Clifton <nickc@cygnus.com>
1946
1947 * elf32-v850.c (hi16s_location): Replaced fixed size array with
1948 linked list.
1949
1950Sun Nov 15 20:28:25 1998 Richard Henderson <rth@cygnus.com>
1951
1952 * elf64-alpha.c (elf64_alpha_relax_section): Search for the proper
1953 element of the gotentry list for local symbols too.
1954 (elf64_alpha_relocate_section): Unify local and global handling.
1955 Assert that gotent->use_count > 0.
1956
1957Sat Nov 14 15:16:01 1998 Ian Lance Taylor <ian@cygnus.com>
1958
1959 * configure.in (vms_alpha_vec): Rename from evax_alpha_vec, and
1960 update for file name changes of July 2, 1998.
1961 (vms_vax_vec): New.
1962 * configure: Rebuild.
1963
1964Thu Nov 12 19:19:54 1998 Dave Brolley <brolley@cygnus.com>
1965
1966 * po/bfd.pot: Regenerated.
1967
1968Tue Nov 10 16:17:06 1998 Geoffrey Noer <noer@cygnus.com>
1969
1970 * acinclude.m4, config.bfd: detect cygwin* instead of cygwin32*.
1971 * aclocal.m4, configure: regenerate
1972
1973Tue Nov 10 15:13:59 1998 Nick Clifton <nickc@cygnus.com>
1974
1975 * elf.c (prep_headers): Add support for bfd_arch_fr30.
1976
1977Tue Nov 10 13:37:36 1998 Felix Lee <flee@cygnus.com>
1978
1979 * acinclude.m4 (BFD_HAVE_SYS_PROCFS_TYPE,
1980 BFD_HAVE_SYS_PROCFS_TYPE_MEMBER): didn't define macro when value
1981 was cached.
1982 * aclocal.m4, configure: regenerated.
1983
1984Tue Nov 10 14:31:01 1998 Catherine Moore <clm@cygnus.com>
1985
1986 * elf32-d10v.c (reloc_type): Add R_D10V_GNU_VTINHERIT and
1987 R_D10V_GNU_VTENTRY relocs.
1988 (elf_d10v_howto_table): Likewise.
1989 (d10v_reloc_map d10v_reloc_map): Likewise.
1990 (elf32_d10v_gc_mark_hook): New.
1991 (elf32_d10v_gc_sweep_hook): New.
1992 (elf32_d10v_check_relocs): New.
1993 (elf32_d10v_relocate_section): New.
1994 (elf_backend_relocate_section): Define.
1995 (elf_backend_can_gc_sections): Define.
1996
1997Sat Nov 7 18:07:51 1998 Peter Schauer <peter.schauer@regent.e-technik.tu-muenchen.de>
1998
1999 * Makefile.am (BFD32_BACKENDS): Move vms files here...
2000 (BFD64_BACKENDS): ...from here.
2001 (BFD32_BACKENDS_CFILES): Move vms files here...
2002 (BFD64_BACKENDS_CFILES): ...from here.
2003 * Makefile.in: Rebuild.
2004
2005Wed Nov 4 15:58:48 1998 Nick Clifton <nickc@cygnus.com>
2006
2007 * Makefile.am: Add FR30 target.
2008 * Makefile.in: Add FR30 target.
2009 * archures.c: Add support for FR30.
2010 * config.bfd: Add support for FR30.
2011 * configure.in: Add support for FR30.
2012 * reloc.c: Add support for FR30 relocations.
2013 * targets.c: Add support for FR30 relocations.
2014 * bfd-in2.h: Regenerate.
2015 * configure: Regenerate.
2016 * libbfd.h: Regenerate.
2017 * cpu-fr30.c: New file.
2018 * elf32-fr30.c: New file.
2019
2020Mon Nov 2 14:59:33 1998 Geoffrey Noer <noer@cygnus.com>
2021
2022 * configure.in: detect cygwin* instead of cygwin32*
2023 * configure: regenerate
2024
2025Sun Nov 1 19:32:28 1998 Jeffrey A Law (law@cygnus.com)
2026
2027 * elf-m10300.c (mn10300_elf_relax_section): Do not use alloca,
2028 use bfd_malloc and free instead and check return value from bfd_malloc.
2029
2030Sun Nov 1 16:20:35 1998 Ian Lance Taylor <ian@cygnus.com>
2031
2032 * libbfd-in.h (_bfd_dwarf1_find_nearest_line): Declare.
2033 * libbfd.h: Rebuild.
2034
2035 * elf32-mips.c (mips_elf_dynsym_sec_names): Comment out.
2036 (SIZEOF_MIPS_DYNSYM_SECNAMES): Likewise.
2037 (MIPS_TEXT_DYNSYM_SECN): Likewise.
2038 (_bfd_mips_elf_fake_sections): Don't set sh_info field of a .hash
2039 section.
2040 (struct mips_elf_link_hash_table): Remove dynsym_sec_strindex
2041 field.
2042 (mips_elf_link_hash_table_create): Don't initialize
2043 dynsym_sec_strindex.
2044 (mips_elf_gc_mark_hook): Add default case to avoid warning.
2045 (mips_elf_size_dynamic_sections): Generate a section symbol for
2046 every output section.
2047 (mips_elf_finish_dynamic_sections): Count all sections for
2048 DT_MIPS_UNREFEXTNO.
2049 (mips_elf_finish_dynamic_sections): Use dynamic symbols for all
2050 output sections.
2051
2052Sun Nov 1 12:46:53 1998 Geoff Keating <geoffk@ozemail.com.au>
2053
2054 * elf32-ppc.c (ppc_elf_adjust_dynamic_symbol): Allocate two slots
2055 for later PLT entries in large PLTs.
2056 (ppc_elf_finish_dynamic_symbol): Allow for the extra slots.
2057
2058Sat Oct 31 20:10:09 1998 Jeffrey A Law (law@cygnus.com)
2059
2060 * elf32-ppc.c (ppc_elf_reload_section): Fix typo.
2061
20621998-10-26 15:58 Ulrich Drepper <drepper@cygnus.com>
2063
2064 * elf-bfd.h (struct elf_link_hash_entry): Add new field elf_hash_value.
2065 * elflink.h (elf_collect_hash_codes): New function. This function is
2066 called for each exported symbol and we compute the ELF hash value for
2067 it.
2068 (compute_bucket_value): New function. It is called from
2069 size_dynamic_sections to determine the hash table size. When we are
2070 optimizing a better, but slower, algorithm is used.
2071 (size_dynamic_sections): Call compute_bucket_value.
2072
2073 * elf.c (bfd_elf_hash): Optimize the hash function a bit.
2074
2075Mon Oct 19 20:03:21 1998 Catherine Moore <clm@cygnus.com>
2076
2077 * elf32-sh.c: Add HOWTO entries for R_SH_GNU_VTINHERIT and
2078 R_SH_GNU_VTENTRY.
2079 (sh_elf_gc_mark_hook): New.
2080 (sh_elf_gc_sweep_hook): New.
2081 (sh_elf_check_relocs): New.
2082 (elf_backend_can_gc_sections): Define.
2083
2084Mon Oct 19 16:57:05 1998 Felix Lee <flee@cygnus.com>
2085
2086 * acinclude.m4: undo previous gettext change
2087 * aclocal.m4: rebuild with right version of aclocal.
2088
2089Mon Oct 19 01:47:21 1998 Felix Lee <flee@cygnus.com>
2090
2091 * acinclude.m4, aclocal.m4: move gettext-related fragments from
2092 aclocal.m4 to acinclude.m4, so they don't get lost.
2093
2094 * elfcore.h: rewrite for better corefile support.
2095 * elf.c (elfcore_*): new functions.
2096 * elf-bfd.h (elf_obj_tdata): new structure members.
2097 * acconfig.h, acinclude.m4, configure.in: add feature-tests for
2098 flavor of procfs.
2099 * aclocal.m4, config.in, configure, Makefile.in: regenerated.
2100
2101Fri Oct 16 14:07:45 1998 Catherine Moore <clm@cygnus.com>
2102
2103 * elf32-m32r.c: Add HOWTO entries for R_M32R_GNU_VTINHERIT
2104 and R_M32R_GNU_VTENTRY.
2105 (elf_backend_can_gc_sections): Define.
2106 (m32r_elf_check_relocs): New.
2107 (m32r_elf_gc_mark_hook): New.
2108 (m32r_elf_gc_sweep_hook): New.
2109 (m32r_elf_relocate_section): Handle VT relocs.
2110
2111Mon Oct 12 14:18:40 1998 Nick Clifton <nickc@cygnus.com>
2112
2113 * coff-arm.c (arm_relocate_section): Remove redundant test.
2114
2115 * bfd-in2.h (struct reloc_howto_struct): Improve comment to make
2116 cleat that the 'bitsize' field is the size of the bitfield AFTER
2117 relocation not before.
2118
2119 * elf32-m32r.c (R_M32R_18_PCREL): Fix size of bitfield.
2120
2121 * coff-mips.c (mips_relocate_hi): Cope with missing refhi or reflo
2122 relocs.
2123
2124Tue Oct 6 09:20:44 1998 Catherine Moore <clm@cygnus.com>
2125
2126 * elf32-sparc.c: Add HOWTO entries for R_SPARC_GNU_VTINHERIT and
2127 R_SPARC_GNU_VTENTRY.
2128 (elf32_sparc_check_relocs): Handle them.
2129 (elf32_sparc_reloc_type_lookup): Likewise.
2130 (elf32_sparc_relocate_section): Likewise.
2131 (elf32_sparc_gc_mark_hook): New.
2132 (elf32_sparc_gc_sweep_hook): New.
2133
2134Mon Oct 5 14:55:30 1998 Jeffrey A Law (law@cygnus.com)
2135
2136 * som.c (som_finish_writing): Perform some sanity checks when
2137 writing an executable or shared library.
2138
2139Mon Oct 5 12:02:31 1998 Gavin Romig-Koch <gavin@cygnus.com>
2140
2141 * dwarf1.c : New file. Adds _bfd_dwarf1_find_nearest_line.
2142 * configure.in (elf): Add dwarf1.lo.
2143 * elf_bfd.h (elf_ob_tdata): Add dwarf1_find_line_info.
2144 * elf.c (_bfd_elf_find_nearest_line): Add call to
2145 _bfd_dwarf1_find_nearest_line.
2146 * elf32-mips.c (_bfd_mips_elf_find_nearest_line):
2147 Add call to _bfd_dwarf1_find_nearest_line.
2148 * configure: Rebuilt.
2149
2150Mon Oct 5 10:06:22 1998 Catherine Moore <clm@cygnus.com>
2151
2152 * elflink.h (elf_gc_sections): Do not allow garbage
2153 collection if dynamic sections have been created.
2154
2155Mon Oct 5 09:07:37 1998 Catherine Moore <clm@cygnus.com>
2156
2157 * elf32-v850.c: Add HOWTO entries for R_V850_GNU_VTINHERIT and
2158 R_V850_GNU_VTENTRY.
2159 (v850_elf_check_relocs): Handle VTINHERIT and VTENTRY relocs.
2160 (v850_elf_perform_relocation): Likewise.
2161 (v850_elf_final_link_relocate): Likewise.
2162 (v850_elf_relocate_section): Likewise.
2163 (v850_elf_gc_sweep_hook): New routine.
2164 (v850_elf_gc_mark_hook): New routine.
2165 (elf_backend_can_gc_sections): Define.
2166
2167Mon Oct 5 09:04:25 1998 Catherine Moore <clm@cygnus.com>
2168
2169 * elf32-m68k.c (elf_m68k_gc_sweep_hook): Don't assume
2170 that dynobj exists.
2171
2172Sun Oct 4 23:29:34 1998 David Edelsohn <edelsohn@mhpcc.edu>
2173
2174 * rs6000-core.c (rs6000coff_core_file_matches_executable_p):
2175 Declare size as bfd_size_type.
2176 (rs6000coff_get_section_contents): Declare count as bfd_size_type.
2177
2178Sun Oct 4 20:38:29 1998 Jeffrey A Law (law@cygnus.com)
2179
2180 * cpu-hppa.c (bfd_hppa20_arch): Define. Link it into the bfd_hppa_arch
2181 structure.
2182 * som.c (CPU_PA_RISC2_0): Define.
2183 (_PA_RISC2_0_ID): Likewise.
2184 (som_finish_writing): Use CPU_PA_RISC2_0 for the system_id as needed.
2185
2186Sun Oct 4 21:19:09 1998 Ian Lance Taylor <ian@cygnus.com>
2187
2188 * elflink.h (elf_link_add_object_symbols): When a versioned symbol
2189 has a base which is already defined, only add the referenced
2190 symbol to the dynamic symbol table if it is defined or referenced
2191 by a regular file.
2192
2193 * elf32-i386.c (elf_i386_info_to_howto_rel): Handle vtable relocs
2194 correctly.
2195
21961998-09-27 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
2197
2198 * elflink.h (elf_link_add_object_symbols): Undo last change.
2199
2200Wed Sep 23 16:09:31 1998 Richard Henderson <rth@cygnus.com>
2201
2202 * elflink.h (elf_link_add_object_symbols): Don't record a dynamic
2203 symbol for the indirect alias to a versioned symbol.
2204
2205Mon Sep 21 12:15:22 1998 Catherine Moore <clm@cygnus.com>
2206
2207 * elf32-i386.c (elf32_i386_vtinherit_howto): New.
2208 (elf32_i386_vtentry_howto): New.
2209 (elf_i386_reloc_type_lookup): Return elf32_i386_vtentry_howto
2210 or elf32_i386_vtinherit_howto on lookup.
2211
2212Sun Sep 20 00:48:07 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
2213
2214 * elf32-m68k.c: Include "elf/m68k.h". Remove definition of enum
2215 reloc_type. Rename R_68K__max to R_68K_max.
2216 (howto_table): Use _bfd_elf_rel_vtable_reloc_fn for a VTENTRY
2217 reloc.
2218
2219Sun Sep 20 00:09:25 1998 Chris Torek <torek@bsdi.com>
2220
2221 * libbfd.c (bfd_getb32): Rewrite expression to get better code.
2222 (bfd_getl32, bfd_getb_signed_32, bfd_getl_signed_32): Likewise.
2223
2224 * libbfd.c (bfd_log2): Cast to bfd_vma before shifting, not
2225 after.
2226
2227Sat Sep 19 22:42:23 1998 Doug Rabson <dfr@nlsystems.com>
2228
2229 * elflink.h (elf_link_add_object_symbols): Ensure that the warning
2230 message has a null byte terminator.
2231
2232Fri Sep 18 14:35:29 1998 Nick Clifton <nickc@cygnus.com>
2233
2234 * elf32-v850.c (v850_elf_perform_relocation): Ignore contents of
2235 word subject to R_V850_32 relocation.
2236
2237Thu Sep 17 17:20:36 1998 Nick Clifton <nickc@cygnus.com>
2238
2239 * dwarf2.c: Add comment describing problem computing line numbers
2240 for undefined symbols at link time.
2241
2242Thu Sep 17 16:03:28 1998 Richard Henderson <rth@cygnus.com>
2243
2244 * elf64-alpha.c (elf64_alpha_adjust_dynamic_symbol): Don't
2245 transform a defweak into a plt entry.
2246 (elf64_alpha_calc_dynrel_sizes): Allow room for secondary
2247 plt entry references to receive a RELATIVE reloc.
2248 (elf64_alpha_finish_dynamic_symbol): Fill them in.
2249 (elf64_alpha_relocate_section): Assert we don't overrun
2250 the allocated relocation space.
2251
2252Wed Sep 16 18:03:13 1998 Nick Clifton <nickc@cygnus.com>
2253
2254 * elf.c (swap_out_syms): Always treat section symbols as
2255 special, even if they are attached to a common section.
2256
2257Wed Sep 16 10:34:13 1998 Nick Clifton <nickc@cygnus.com>
2258
2259 * elf32-v850.c (v850_elf_symbol_processing): Move symbols in
2260 sections with v850 common section attributes into named v850
2261 common sections.
2262 (v850_elf_add_symbol_hook): Move symbols in sections with v850
2263 common section attributes into named v850 common sections.
2264
2265Wed Sep 16 11:26:49 CDT 1998 Catherine Moore <clm@cygnus.com>
2266
2267 * elf32-arm.c (elf32_arm_gc_mark_hook): Remove print
2268 statement.
2269
22701998-09-15 Geoff Keating <geoffk@ozemail.com.au>
2271
2272 * elf32-ppc.c (ppc_elf_relocate_section): Reverse output_offset
2273 part of Vladimir's change of 1998-08-19. Make a R_PPC_SDAREL16
2274 reloc to the wrong section a warning, not an error. .dynsbss
2275 is not an output section, so there is no need to check for it.
2276
2277Tue Sep 15 12:40:05 1998 Catherine Moore <clm@cygnus.com>
2278
2279 * elf-bfd.h: Add argument to elf_backend_get_symbol_type.
2280
2281Tue Sep 15 08:34:40 1998 Catherine Moore <clm@cygnus.com>
2282
2283 * elf.c (swap_out_syms): Pass type to elf_backend_get_symbol_type.
2284 * elf32-arm.c: Add HOWTO entries for R_ARM_GNU_VTINHERIT and
2285 R_ARM_GNU_VTENTRY.
2286 (elf32_arm_gc_mark_hook): New.
2287 (elf32_arm_gc_sweep_hook): New.
2288 (elf32_arm_check_relocs): New.
2289 (elf32_arm_final_link_relocate): Handle VTINHERIT and VTENTRY
2290 relocations.
2291 (elf32_arm_relocate_section): Handle VTINHERIT and VTENTRY
2292 relocations.
2293
22941998-09-10 Geoff Keating <geoffk@ozemail.com.au>
2295
2296 * elf32-ppc.c (ppc_elf_relocate_section): If dynobj is NULL,
2297 assume there is no PLT or GOT.
2298
2299Wed Sep 9 14:24:12 1998 Nick Clifton <nickc@cygnus.com>
2300
2301 * elf32-arm.c (elf32_arm_find_nearest_line): New function: just
2302 like _elf_bfd_find_nearest_line() except that STT_ARM_TFUNC is
2303 also accepted as a function symbol type.
2304
2305Mon Sep 7 13:24:03 1998 Peter Schauer <pes@regent.e-technik.tu-muenchen.de>
2306
2307 * rs6000-core.c (_LONG_LONG): Define for AIX 4.x only.
2308
2309Sat Sep 5 20:40:18 1998 Ian Lance Taylor <ian@cygnus.com>
2310
2311 * libbfd-in.h (_bfd_nolink_bfd_gc_sections): Correct definition to
2312 match definition of _bfd_gc_sections field.
2313 * libbfd.h: Rebuild.
2314
2315Fri Sep 4 13:54:23 1998 David Miller <davem@dm.cobaltmicro.com>
2316
2317 * elf32-sparc.c (elf32_sparc_relocate_section): Properly adjust
2318 the addend of a dynamic relocation referencing a section.
2319 * elf64-sparc.c (sparc64_elf_relocate_section): Likewise.
2320 (sparc64_elf_finish_dynamic_symbol): Fix the PLT relocation offset.
2321
2322Thu Sep 3 17:28:50 1998 Richard Henderson <rth@cygnus.com>
2323
2324 * elflink.h (bfd_elfNN_size_dynamic_sections): Verify that the
2325 bed has a size_dynamic_sections routine before trying to use it.
2326
2327Mon Aug 31 14:49:22 1998 Richard Henderson <rth@cygnus.com>
2328
2329 * elf32-mips.c (elf_mips_gnu_vtentry_howto): Use
2330 _bfd_elf_rel_vtable_reloc_fn.
2331
2332Mon Aug 31 10:23:40 1998 Catherine Moore <clm@cygnus.com>
2333
2334 * Makefile.am: Add elf32-arm.c.
2335 * Makefile.in: Rebuild.
2336 * elf-bfd.h: Add elf_backend_get_symbol_type.
2337 * elf.c (swap_out_syms): If defined, call
2338 elf_backend_get_symbol_type.
2339 * elf32-arm.c: Define elf_backend_get_symbol_type.
2340 (elf32_arm_get_symbol-type): New routine.
2341 (record_thumb_to_arm_glue): Change to use STT_ARM_TFUNC.
2342 (bfd_elf32_arm_process_before_allocation): Change to
2343 check for STT_ARM_TFUNC.
2344 (elf32_arm_final_link_relocate): Likewise.
2345 * elfxx-target.h: Add elf_backend_get_symbol_type.
2346
2347Fri Aug 28 19:44:07 1998 Richard Henderson <rth@cygnus.com>
2348
2349 * archures.c (bfd_mach_alpha_ev[456]): New.
2350 * cpu-alpha.c: Rework to match these types.
2351 * bfd-in2.h: Rebuild.
2352
2353Fri Aug 28 19:38:53 1998 Richard Henderson <rth@cygnus.com>
2354
2355 * elf-bfd.h (_bfd_elf_rel_vtable_reloc_fn): Declare.
2356 * elf.c (_bfd_elf_rel_vtable_reloc_fn): New.
2357
2358 * elf32-i386.c (elf_howto_table): Add vtable relocs.
2359 (elf_i386_reloc_type_lookup): Recognize them.
2360 (elf_i386_check_relocs): Pass them off to generic code.
2361 (elf_i386_relocate_section): Ignore them.
2362 (elf_i386_gc_mark_hook, elf_i386_gc_sweep_hook): New.
2363 (elf_backend_can_gc_sections): True.
2364
2365Thu Aug 20 15:03:45 1998 Nick Clifton <nickc@cygnus.com>
2366
2367 * elf32-arm.c (elf32_thumb_to_arm_stub): Check sym_sec is not NULL
2368 before looking at owner field.
2369 (elf32_arm_to_thumb_stub): Ditto.
2370 (elf32_arm_relocate_section): Compute name before calling
2371 elf32_arm_final_link_relocate().
2372
2373Thu Aug 20 11:30:17 1998 Michael Snyder <msnyder@cleaver.cygnus.com>
2374
2375 * elf.c: comment and formatting cleanups.
2376 * elfcore.h: ditto.
2377
2378Wed Aug 19 15:43:26 1998 Michael Snyder <msnyder@cleaver.cygnus.com>
2379
2380 * elfcode.h (elf_object_p): Reject files of header type ET_CORE
2381 (core files are treated differently than object files).
2382 * elf-bfd.h (_bfd_elf_write_corefile_contents,
2383 bfd_elf_mkcorefile): declare.
2384 * elfxx-target.h (_bfd_elf_write_corefile_contents,
2385 bfd_elf_mkcorefile): add to bfd_target vector.
2386 * elfcore.h (elf_core_file_p): save the program header table,
2387 and set the bfd architecture from the elf file header.
2388 * elf.c (bfd_elf_mkcorefile): new function.
2389 (_bfd_elf_write_corefile_contents): new function.
2390 (assign_file_positions_for_segments): add cases for handling
2391 PT_NOTE segments. (assign_file_positions_except_relocs):
2392 core files should be handled the same as exec files.
2393 (prep_headers): identify core files as type ET_CORE.
2394 (copy_private_bfd_data): identify the sections belonging to
2395 the PT_NOTE segment.
2396
2397 * elf32-sparc.c (elf32_sparc_final_write_processing):
2398 add break statement to default case.
2399
24001998-08-19 Vladimir N. Makarov <vmakarov@cygnus.com>
2401
2402 * elf32-ppc.c (ppc_elf_relocate_section): Check that output
2403 section (not input) will be in sections ".sbss", ".sbss2",
2404 ".sdata", and ".sdata" for R_PPC_SDAREL16, R_PPC_EMB_SDA2REL,
2405 R_PPC_EMB_SDA21, R_PPC_EMB_RELSDA. In all these cases also ignore
2406 output_offset for correct evaluation of addend.
2407
2408Tue Aug 18 11:48:12 1998 Catherine Moore <clm@cygnus.com>
2409
2410 * elf32-arm.c: Add prefix bfd_ to elf32_arm_get_bfd_for_interworking,
2411 elf32_arm_allocate_interworking_sections and
2412 elf32_arm_process_before_allocation.
2413
2414Tue Aug 18 11:46:00 1998 Nick Clifton <nickc@cygnus.com>
2415
2416 * bfd-in.h: Ammend prototype for
2417 elf32_arm_process_before_allocation to remove surplus third
2418 argument.
2419
2420 * bfd-in2.h: Regenerate.
2421
2422Sat Aug 15 20:55:08 1998 Richard Henderson <rth@cygnus.com>
2423
2424 * elf64-alpha.c (elf64_alpha_relax_section): Handle indirect symbols.
2425
2426Fri Aug 14 09:12:28 1998 Stan Cox <scox@cygnus.com>
2427
2428 * aoutx.h (aout_link_input_section_ext): Use the relocation already
2429 calculated for RELOC_SPARC_REV32 case.
2430
2431Thu Aug 13 14:02:02 1998 Catherine Moore <clm@cygnus.com>
2432
2433 * bfd-in.h: Add prototypes for elf32_arm_get_bfd_for_interworking,
2434 elf32_arm_allocate_interworking_sections and
2435 elf32_arm_process_before_allocation.
2436 * bfd-in2.h: Regenerated.
2437 * elf32-arm.c Define elf32_arm_link_hash_table.
2438 (insert_thumb_branch): New routine.
2439 (find_thumb_glue): New routine.
2440 (find_arm_glue): New routine.
2441 (record_arm_to_thumb_glue): New routine.
2442 (record_thumb_to_arm_glue): New routine.
2443 (elf32_arm_link_hash_table_create): New routine.
2444 (elf32_arm_get_bfd_for_interworking): New routine.
2445 (elf32_arm_allocate_interworking_sections) New routine.
2446 (elf32_arm_process_before_allocation) New routine.
2447 (elf32_thumb_to_arm_stub): New routine.
2448 (elf32_arm_to_thumb_stub): New routine.
2449 (elf32_print_private_bfd_data): Fix typo.
2450 (elf32_arm_final_link_relocate): Add argument sym_sec.
2451 Check for branches to thumb symbols in case R_ARM_PC24.
2452 Check for branches to arm symbols in case R_ARM_THM_PC22.
2453 (elf32_arm_relocate_section): Pass symbol section to
2454 elf32_arm_final_link_relocate.
2455
2456Wed Aug 12 19:00:39 1998 Geoff Keating <geoffk@ozemail.com.au>
2457
2458 * elf32-ppc.c (ppc_elf_adjust_dynamic_symbol): Generate PLT
2459 entries unless the symbol is defined in the executable; in
2460 particular, undefined weak symbols get a PLT entry.
2461
2462Wed Aug 12 14:48:33 1998 Ian Lance Taylor <ian@cygnus.com>
2463
2464 * libaout.h: Remove nested comment to avoid warning.
2465
2466Wed Aug 12 08:10:11 1998 Catherine Moore <clm@cygnus.com>
2467
2468 * elf32-arm.c (elf32_arm_final_link_relocate): Rework
2469 R_ARM_PC24 relocation.
2470
2471Tue Aug 11 14:42:26 1998 Catherine Moore <clm@cygnus.com>
2472
2473 * elf32-arm.c (elf32_arm_final_link_relocate): Remove unused
2474 argument is_local. Add argument sym_flags. Check sym_flags
2475 in R_ARM_ABS32 case. Include addend for R_ARM_THM_PC22 case.
2476 (elf32_arm_relocate_section): Don't pass local sym and pass
2477 sym_flags to elf32_arm_final_link_relocate.
2478
2479Mon Aug 10 20:38:39 1998 Richard Henderson <rth@cygnus.com>
2480
2481 * elf64-alpha.c (elf64_alpha_calc_dynrel_sizes): Correct last change
2482 to not count too few relocs for dynamicly linked executables.
2483
2484Mon Aug 10 15:35:34 1998 Richard Henderson <rth@cygnus.com>
2485
2486 * elf64-alpha.c (alpha_elf_dynamic_symbol_p): Never consider
2487 symbols without a dynamic index dynamic. Consider all weak
2488 symbols dynamic.
2489 (elf64_alpha_strip_section_from_output): Don't assume 1-1
2490 correspondance between input and output sections.
2491
2492Mon Aug 10 15:31:39 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
2493
2494 * elflink.h (elf_gc_common_finalize_got_offsets): For backends
2495 that use a .got.plt section start the got offset at zero.
2496
2497Mon Aug 10 17:31:21 1998 Ian Lance Taylor <ian@cygnus.com>
2498
2499 * ieee.c (ieee_write_processor): Correct the processor ID written
2500 out for bfd_arch_m68k, accommodating change of March 25.
2501
2502Sun Aug 9 20:55:44 1998 Catherine Moore <clm@cygnus.com>
2503
2504 * elf32-arm.c (elf32_arm_final_link_relocate): Rework
2505 R_ARM_THM_RPC22 relocations.
2506
2507Sat Aug 8 15:15:30 1998 Richard Henderson <rth@cygnus.com>
2508
2509 * elf64-alpha.c (alpha_elf_dynamic_symbol_p): Undef weak symbols
2510 are always dynamic.
2511 (elf64_alpha_calc_dynrel_sizes): Allow enough room for RELATIVE
2512 .got relocs in -Bsymbolic shared objects.
2513
2514Wed Aug 5 15:48:08 1998 Nick Clifton <nickc@cygnus.com>
2515
2516 * elf32-arm.c: Add private flags to ELF header.
2517 (elf32_arm_print_private_bfd_data): New Function.
2518 (elf32_arm_set_private_flags): New Function.
2519 (elf32_arm_copy_private_flags): New Function.
2520 (elf32_arm_merge_private_bfd_data): New Function.
2521
2522Mon Aug 3 17:10:15 1998 Ian Lance Taylor <ian@cygnus.com>
2523
2524 * elf32-sparc.c (elf32_sparc_check_relocs): Permit WPLT30 against
2525 a local symbol.
2526 (elf32_sparc_relocate_section): Likewise.
2527
2528Sun Aug 2 03:19:23 1998 Richard Henderson <rth@cygnus.com>
2529
2530 * elf32-ppc.c (ppc_elf_check_relocs): Init sgot to NULL. Create the
2531 .got if any relocation referrs to _GLOBAL_OFFSET_TABLE_.
2532 (ppc_elf_relocate_section): Pull sgot and splt search to the start
2533 of the function. Recognize no .plt as static linking.
2534
25351998-08-01 Ulrich Drepper <drepper@cygnus.com>
2536
2537 * elf32-mips.c (_bfd_mips_elf_section_from_shdr): Don't pass
2538 ".liblist" string through gettext.
2539
2540Fri Jul 31 16:38:14 1998 Catherine Moore <clm@cygnus.com>
2541
2542 * Makefile.am: Add support for elf32-arm.lo.
2543 * Makefile.in: Rebuild.
2544 * config.bfd (arm-*-elf): Define targ_defvec and targ_selvecs.
2545 (thumb-*-elf): Define targ_defvec and targ_selvecs.
2546 * configure.in: Handle bfd_elf32_littlearm_vec and bfd_elf32_bigarm_vec.
2547 * configure: Regenerate.
2548 * elf.c: (prep_headers): Support arch_type of EM_ARM.
2549 * targets.c: Support new targets bfd_elf32_bigarm_vec and
2550 bfd_target bfd_elf32_littlearm_vec.
2551 * elf32-arm.c: New file.
2552
2553Tue Jun 28 19:05:28 1998 Stan Cox <scox@cygnus.com>
2554
2555 * libaout.h (M_SPARCLITE_LE): New machine.
2556 * sunos.c (MACHTYPE_OK): Add machine M_SPARCLITE_LE.
2557 * aoutf1.h (sunos_set_arch_mach): Add machine M_SPARCLITE_LE.
2558 (sunos_write_object_contents): Add machine bfd_mach_sparc_sparclite_le
2559 * aoutx.h (howto_table_ext): Add relocation R_SPARC_REV32.
2560 (NAME(aout,machine_type)) Add machine bfd_mach_sparc_sparclite_le
2561 (aout_link_input_section_ext): Add RELOC_SPARC_REV32 support.
2562 * elf32-sparc.c (_bfd_sparc_elf_howto_table, sparc_reloc_map,
2563 elf32_sparc_relocate_section): Rename R_SPARC_32LE to be R_SPARC_REV32
2564 * libbfd.h (bfd_reloc_code_real_names): Rename BFD_RELOC_SPARC_32LE to
2565 be BFD_RELOC_SPARC_REV32.
2566 * reloc.c: Ditto.
2567 * config.bfd (sparc86x-*-aout): New
2568
2569Fri Jul 24 13:54:19 1998 Nick Clifton <nickc@cygnus.com>
2570
2571 * linker.c (_bfd_generic_final_link): Allocate NULL symbol before
2572 actually mapping the output sections.
2573
2574Fri Jul 24 11:24:29 1998 Jeffrey A Law (law@cygnus.com)
2575
2576
2577 * elf-m10300.c (mn10300_elf_howto): Add R_MN10300_24 entry.
2578 (mn10300_elf_reloc_map): Similarly.
2579 (mn10300_elf_final_link_relocate): Handle R_MN10300_24.
2580
2581Fri Jul 24 12:36:04 1998 Ian Lance Taylor <ian@cygnus.com>
2582
2583 * elf32-mips.c (elf_mips_howto_table): Add reloc types used on
2584 Irix 6.
2585 (bfd_elf32_bfd_reloc_type_lookup): Add default case.
2586 * elf64-mips.c: Replace all uses of mips_elf64_reloc_type with
2587 elf_mips_reloc_type defined in elf/mips.h.
2588
25891998-07-24 Ulrich Drepper <drepper@cygnus.com>
2590
2591 * elf64-mips.c: Remove reloc_type definition completely. It's now
2592 in elf/mips.h.
2593
2594Thu Jul 23 13:33:19 1998 Doug Evans <devans@canuck.cygnus.com>
2595
2596 * elf64-mips.c (mips_elf64_reloc_type): #if 0 out more relocations
2597 as they are defined in elf/mips.h now.
2598
2599Thu Jul 23 11:29:43 1998 Jeffrey A Law (law@cygnus.com)
2600
2601
2602 * Re-add lost change:
2603 * elf-m10300.c (elf32_mn10300_link_hash_entry): Add new field
2604 "movm_stack_size".
2605 (mn10300_elf_relax_section): Include stack space for register saves
2606 in the imm8 field of a "call" instruction.
2607 (compute_function_info): Determine how much stack is allocated by
2608 the movm instruction. Fix typo.
2609 (elf32_mn10300_link_hash_newfunc): Initialize movm_stack_size.
2610
2611Thu Jul 23 11:38:05 1998 Ian Lance Taylor <ian@cygnus.com>
2612
2613 * elf32-sparc.c (elf_backend_got_header_size): Define as 4.
2614 * elf64-sparc.c (elf_backend_got_header_size): Define as 8.
2615
26161998-07-22 Ulrich Drepper <drepper@cygnus.com>
2617
2618 * elf32-ppc.c: Change use of pp_reloc_type to elf_ppc_reloc_type.
2619
2620Wed Jul 22 16:27:18 1998 Nick Clifton <nickc@cygnus.com>
2621
2622 * elf32-hppa.h: Let ELF header define the enum containing the
2623 external reloc numbers.
2624 * elf32-i386.h: Likewise.
2625
26261998-07-22 14:57 Ulrich Drepper <drepper@cygnus.com>
2627
2628 * elf-m10300.c: Let ELF header now define the macros to get the enum.
2629 * elf32-mips.c: Likewise.
2630 * elf32-ppc.c: Likewise.
2631
2632Wed Jul 22 13:53:52 1998 Nick Clifton <nickc@cygnus.com>
2633
2634 * bfd-in2.h: Change type of 'class' parameter to 'unsigned int' in
2635 bfd_coff_set_symbol_class(), in order to avoid K&R compatability
2636 prblems.
2637 * bfd-in.h: Regenerate.
2638 * coffgen.c (bfd_coff_set_symbol_class): Change type of 'class'
2639 parameter to 'unsigned int' to avoid K&R compatability problems.
2640
2641Wed Jul 22 16:43:24 1998 Ian Lance Taylor <ian@cygnus.com>
2642
2643 * ieee.c (ieee_find_nearest_line): Change filename_ptr and
2644 functionname_ptr to be const. Change line_ptr to be unsigned.
2645
2646 * coffcode.h (coff_link_output_has_begun): Simplify handling when
2647 macro is not defined. Change second parameter from bfd_link_info
2648 to coff_final_link_info. Add prototype.
2649 (coff_final_link_postscript): Simplify handling when macro is not
2650 defined. Add prototype.
2651
26521998-07-22 13:08 Ulrich Drepper <drepper@cygnus.com>
2653
2654 * elf-mn10300.c: Before include system specific ELF header define
2655 START_RELOC_NUMBERS, RELOC_NUMBER, and END_RELOC_NUMBERS.
2656 * elf32-mips.c: Likewise.
2657 * elf32-ppc.c: Likewise.
2658
2659Wed Jul 22 13:46:51 1998 Ian Lance Taylor <ian@cygnus.com>
2660
2661 * elf64-mips.c (mips_elf64_reloc_type): Copy Ulrich's elf32-mips.c
2662 temporary patch over to elf64-mips.c as well.
2663
26641998-07-21 Ulrich Drepper <drepper@cygnus.com>
2665
2666 * elf32-mips.c (reloc_type): Temporarily disable definition of
2667 standard relocation since they are now defined in elf/mips.h.
2668
2669Tue Jul 21 09:47:00 1998 Catherine Moore <clm@cygnus.com>
2670
2671 * elf-m10200.c (mn10200_elf_final_link_relocate):
2672 Modify range test for case R_MN10200_8.
2673
2674 * elf-m10300.c (mn10300_elf_final_link_relocate):
2675 Modify range test for case R_MN10300_8.
2676
2677Mon Jul 20 18:50:54 1998 Richard Henderson <rth@cygnus.com>
2678
2679 * elf-bfd.h (struct elf_backend_data): Add got_ & plt_header_size.
2680 * elf32-i386.c (elf_backend_got_header_size): Define.
2681 (elf_backend_plt_header_size): Define.
2682 * elf32-m68k.c, elf32-mips.c, elf32-ppc.c: Likewise.
2683 * elf32-sparc.c, elf64-alpha.c, elf64-sparc.c: Likewise.
2684 * elfxx-target.h: Provide a default of zero.
2685 * elflink.c (_bfd_elf_create_got_section): Use got_header_size.
2686 * elflink.h (elf_gc_common_finalize_got_offsets): Likewise.
2687
2688 * elf32-ppc.c (ppc_elf_adjust_dynamic_symbol): Don't remove a PLT
2689 entry from an executable, even if the plt refcount goes to 0.
2690
2691Mon Jul 20 12:47:26 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
2692
2693 * aoutx.h (NAME(aout,find_nearest_line)): Also remember the
2694 directory name at the line number.
2695
2696 * elf.c (_bfd_elf_find_nearest_line): Also consider symbols
2697 with an unspecified type.
2698
2699Wed Jul 15 11:20:01 1998 Ian Lance Taylor <ian@cygnus.com>
2700
2701 * sunos.c: Add undef of valid to avoid problem on SunOS.
2702
2703Tue Jul 14 15:30:59 1998 Richard Henderson <rth@cygnus.com>
2704
2705 * config.bfd (i?86-pc-beos{pe,elf,}*): Recognize.
2706
2707Tue Jul 14 11:22:21 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
2708
2709 * elf32-m68k.c (elf_m68k_check_relocs): Also reference count
2710 R_68K_PCxx and R_68K_xx relocations. Make sure that
2711 ELF_LINK_HASH_NEEDS_PLT is always set for a PLT reloc reference.
2712 (elf_m68k_gc_sweep_hook): Also reference count R_68K_PCxx and
2713 R_68K_xx relocations.
2714 (elf_m68k_adjust_dynamic_symbol): Reset the plt offset of a symbol
2715 that has no plt entry.
2716 (elf_m68k_relocate_section): Ignore the plt offset in a static
2717 link.
2718 * elflink.h (elf_adjust_dynamic_symbol): Reset the plt offset for
2719 an ignored symbol.
2720 (elf_gc_common_finalize_got_offsets): Set the got offsets also in
2721 a static link.
2722
2723 * elf32-m68k.c (R_68K_GNU_VTINHERIT, R_68K_GNU_VTENTRY): New reloc
2724 types.
2725 (howto_table, reloc_map): Add entries for them.
2726 (elf_m68k_check_relocs): Handle them. Implement reference
2727 counting for got and plt entries.
2728 (elf_m68k_gc_mark_hook, elf_m68k_gc_sweep_hook): New functions.
2729 (elf_m68k_adjust_dynamic_symbol): Handle unreferenced plt
2730 symbols.
2731 (rtype_to_howto_rel, elf_info_to_howto_rel): Delete.
2732 (elf_m68k_relocate_section): Handle the new reloc types.
2733 (bfd_elf32_bfd_final_link, elf_backend_gc_mark_hook,
2734 elf_backend_gc_sweep_hook, elf_backend_can_gc_sections): Define.
2735 * elflink.h (elf_link_add_object_symbols): When creating an
2736 indirect reference for symbol versioning also copy the plt
2737 offset.
2738 (elf_fix_symbol_flags): When clearing the ELF_LINK_HASH_NEEDS_PLT
2739 flag also reset the plt offset.
2740 (elf_link_assign_sym_version): Likewise.
2741 (elf_gc_common_finalize_got_offsets): Increment the got offset by
2742 the size of the entry in bytes.
2743 (elf_gc_allocate_got_offsets): Likewise.
2744
2745Tue Jul 14 11:18:14 1998 Ian Lance Taylor <ian@cygnus.com>
2746
2747 * elflink.h (elf_gc_sections): Return true rather than falling off
2748 the bottom.
2749
2750 * coffgen.c (bfd_coff_set_symbol_class): Call bfd_alloc, not
2751 xmalloc.
2752
2753Mon Jul 13 11:06:31 1998 Nick Clifton <nickc@cygnus.com>
2754
2755 * coff-arm.c: Supress definition of TARGET_UNDERSCORE and add a
2756 comment describing when it should be enabled.
2757 Changed definition of USER_LABEL_PREFIX to "", to fall into line
2758 with GCC sources.
2759
2760Mon Jul 13 13:06:54 1998 Ian Lance Taylor <ian@cygnus.com>
2761
2762 * ieee.c (ieee_slurp_external_symbols): Handle call optimization
2763 information ATN records.
2764
2765Fri Jul 10 16:31:06 1998 Ian Lance Taylor <ian@cygnus.com>
2766
2767 * ieee.c (ieee_slurp_external_symbols): Select an appropriate
2768 section for an absolute symbol in a fully linked file. Based on
2769 patch from Christian Holland <CHolland@de.lucent.com>.
2770
2771Wed Jul 8 11:29:56 1998 Manfred Hollstein <manfred@s-direktnet.de>
2772
2773 * coff-m88k.c (m88k_special_reloc): Don't lose the information
2774 that a symbol is undefined.
2775
2776Tue Jul 7 21:47:02 1998 Jeffrey A Law (law@cygnus.com)
2777
2778 * som.c (som_bfd_gc_sections): Define.
2779
2780Mon Jul 6 11:35:50 1998 Nick Clifton <nickc@cygnus.com>
2781
2782 * coff-arm.c (aoutarm_std_reloc_howto): Do not complain about
2783 overflows in ARM_26D patches, since they have already been
2784 implmented. Patch submitted by Dr. R.J. Black <rjb@dcs.gla.ac.uk>
2785
2786Sat Jul 4 12:25:36 1998 Ian Lance Taylor <ian@cygnus.com>
2787
2788 * coffcode.h (coff_write_object_contents): If we have any long
2789 section names, call coff_write_symbols even if there are no
2790 symbols.
2791
2792Fri Jul 3 13:11:35 1998 Ian Lance Taylor <ian@cygnus.com>
2793
2794 * elf.c (copy_private_bfd_data): Only set phdr_included once for a
2795 PT_LOAD segment, rather than only setting it once for the entire
2796 file.
2797
2798 * elf.c (_bfd_elf_make_section_from_shdr): When setting the LMA,
2799 rather than ignoring every phdr with a p_paddr of 0, ignore all
2800 the phdrs if they all have a p_paddr of 0.
2801
2802 * stabs.c (_bfd_write_stab_strings): Check whether the .stabstr
2803 section was discarded from the link.
2804
2805Fri Jul 3 14:39:05 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
2806
2807 * coff-sh.c (sh_insn_uses_freg): Ignore lowest bit of register number.
2808
2809Fri Jul 3 14:35:48 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
2810
2811 * coff-sh.c (sh_insns_conflict): Load of fpscr conflicts with
2812 floating point operations.
2813
2814Thu Jul 2 18:37:25 1998 Ian Lance Taylor <ian@cygnus.com>
2815
2816 * cofflink.c (_bfd_coff_link_input_bfd): Skip undefined global
2817 function symbols.
2818
2819Thu Jul 2 14:59:42 1998 Klaus Kaempf <kkaempf@rmi.de>
2820
2821 Merge of vax/vms (read-only) support
2822 * configure.com: Support Vax target.
2823 * makefile.vms: Support Vax target.
2824 * vms.h: Renamed from evax.h, merged vax/vms (read-only) support.
2825 * vms.c: Renamed from evax-alpha.c, merged vax/vms (read-only)
2826 support.
2827 * vms-hdr.c: Renamed from evax-emh.c, merged vax/vms (read-only)
2828 support.
2829 * vms-gsd.c: Renamed from evax-egsd.c, merged vax/vms (read-only)
2830 support.
2831 * vms-tir.c: Renamed from evax-etir.c, merged vax/vms (read-only)
2832 support.
2833 * vms-misc.c: Renamed from evax-misc.c, merged vax/vms (read-only)
2834 support.
2835 * libbfd.c (real_read): Use unbuffered read on VMS/Vax.
2836 * targets.c (bfd_target_ovax_flavour): New flavour.
2837 (vms_alpha_vec): Renamed from evax_alpha_vec.
2838 (vms_vax_vec): New.
2839 (target_vector): Update accordingly.
2840 * config.bfd (alpha*-*-*vms*): Use vms_alpha_vec, not
2841 evax_alpha_vec.
2842 (vax*-*-*vms*): New target.
2843 * Makefile.am: Update for renamed files. Rebuild dependencies.
2844 * bfd-in2.h: Rebuild.
2845 * configure.in, Makefile.in, aclocal.m4: Rebuild.
2846
2847Thu Jul 2 13:31:55 1998 Ian Lance Taylor <ian@cygnus.com>
2848
2849 Based on patch from Matt Semersky <matts@scd.hp.com>:
2850 * linker.c (_bfd_generic_final_link): Force a trailing NULL
2851 pointer on abfd->outsymbols.
2852 (generic_add_output_symbol): Handle NULL sym parameter.
2853
2854Wed Jul 1 17:05:53 1998 Nick Clifton <nickc@cygnus.com>
2855
2856 * elf.c (copy_private_bfd_data): Add support for changing VMA or
2857 LMA of sections.
2858
2859Wed Jul 1 16:58:50 1998 Ian Lance Taylor <ian@cygnus.com>
2860
2861 * coff-sh.c (sh_relax_delete_bytes): Correct address comparisons
2862 when handling 32 bit immediate relocs.
2863 * elf32-sh.c (sh_elf_relax_delete_bytes): Likewise.
2864
2865Tue Jun 30 09:55:03 1998 Jeffrey A Law (law@cygnus.com)
2866
2867 * section.c (STD_SECTION): Account for recently added gc_mark
2868 field in struct asection.
2869
2870 * elf-m10300.c (bfd_mn10300_elf_merge_private_bfd_data): New function.
2871 (bfd_elf32_bfd_merge_private_bfd_data): Define.
2872
2873Thu Jun 25 18:31:41 1998 Richard Henderson <rth@cygnus.com>
2874
2875 ELF Section-level Garbage Collection:
2876 * bfd.c (bfd_gc_sections): New.
2877 * aout-adobe.c: Hook to default implementation.
2878 * aout-target.h, aout-tic30.c, binary.c, bout.c: Likewise.
2879 * coff-alpha.c, coff-mips.c, coff-rs6000.c, coffcode.h: Likewise.
2880 * evax-alpha.c, i386msdos.c, i386os9k.c, ieee.c: Likewise.
2881 * ihex.c, nlm-target.h, oasys.c, ppcboot.c, srec.c: Likewise.
2882 * tekhex.c, versados.c: Likewise.
2883 * libbfd-in.h (_bfd_nolink_bfd_gc_sections): New.
2884 * targets.c (BFD_JUMP_TABLE_LINK): Add _bfd_gc_sections.
2885
2886 * reloc.c (BFD_RELOC_VTABLE_INHERIT, BFD_RELOC_VTABLE_ENTRY): New.
2887 (bfd_generic_gc_sections): New.
2888 * section.c (SEC_KEEP): New.
2889 (asection): Add gc_mark member.
2890
2891 * elfcode.h (elf_gc*): New name remappings.
2892 * elflink.h (elf_link_input_bfd): Don't set contents on stabs
2893 sections to be excluded.
2894 (elf_gc_mark, elf_gc_sweep, elf_gc_sweep_symbol): New.
2895 (elf_gc_propogate_vtable_entries_used): New.
2896 (elf_gc_smash_unused_vtentry_relocs): New.
2897 (elf_gc_sections, elf_gc_record_vtinherit, elf_gc_record_vtentry): New.
2898 (elf_gc_common_finalize_got_offsets): New.
2899 (elf_gc_allocate_got_offsets, elf_gc_common_final_link): New.
2900 * elfxx-target.h: Add and default gc hooks.
2901
2902 * elf-bfd.h (struct elf_link_hash_entry): Swap got_offset/plt_offset
2903 for unions.
2904 (struct elf_obj_tdata): Likewise for local_got_offsets.
2905 * elf.c, elf-i386.c, elf32-m68k.c, elf32-mips.c: Update all uses.
2906 * elf32-ppc.c, elf32-sparc.c, elf64-alpha.c: Likewise.
2907 * elf64-sparc.c, elflink.h: Likewise.
2908
2909 * elf-bfd.h (struct elf_link_hash_entry): Add vtable members.
2910 (ELF_LINK_HASH_MARK): Define.
2911 (struct elf_backend_data): Add GC hooks.
2912 * elf.c (_bfd_elf_link_hash_newfunc): Zero vtable members.
2913
2914 * elf-m10300.c (mn10300_elf_check_relocs): New.
2915 (mn10300_elf_gc_mark_hook): New.
2916 (R_MN10300_GNU_VTINHERIT, R_MN10300_GNU_VTENTRY): New.
2917 (elf_mn10300_howto, mn10300_reloc_map): Handle them.
2918 (mn10300_elf_final_link_relocate): Likewise.
2919 (mn10300_elf_relocate_section): Likewise.
2920 (elf_backend_can_gc_sections): Define.
2921 * elf32-mips.c (R_MIPS_GNU_VTINHERIT, R_MIPS_GNU_VTENTRY): New.
2922 (elf_mips_gnu_vtinherit_howto, elf_mips_gnu_vtentry_howto): New.
2923 (bfd_elf32_bfd_reloc_type_lookup): Handle them.
2924 (mips_info_to_howto_rel): Likewise.
2925 (mips_elf_relocate_section): Likewise.
2926 (mips_elf_check_relocs): Likewise.
2927 (mips_elf_gc_mark_hook, mips_elf_gc_sweep_hook): New.
2928 (elf_backend_can_gc_sections): Define.
2929 * elf32-ppc.c (R_PPC_GNU_VTINHERIT, R_PPC_GNU_VTENTRY): New.
2930 (ppc_elf_howto_raw): Handle them.
2931 (ppc_elf_reloc_type_lookup): Likewise.
2932 (ppc_elf_relocate_section): Likewise.
2933 (ppc_elf_check_relocs): Reference count .got and .plt entires.
2934 Handle new vtable relocs.
2935 (ppc_elf_adjust_dynamic_symbol): Recognize unused .plt entries.
2936 (ppc_elf_gc_mark_hook, ppc_elf_gc_sweep_hook): New.
2937 (elf_backend_can_gc_sections): Define.
2938
2939Fri Jun 26 10:48:23 1998 Jeffrey A Law (law@cygnus.com)
2940
2941 * archures.c (bfd_mach_mn10300): Define.
2942 * elf-m10300.c: Include elf/mn10300.h
2943 (elf_mn10300_mach): New function.
2944 (_bfd_mn10300_elf_final_write_processing): Likewise.
2945 (_bfd_mn10300_elf_object_p): Likewise.
2946 (elf_backendfinal_write_processing): Define.
2947 (elf_backend_object_p): Likewise.
2948
2949Thu Jun 25 18:31:08 1998 Nick Clifton <nickc@cygnus.com>
2950
2951 * elf32-v850.c (v850_elf_perform_relocation): Fix HI16_S
2952 relocation.
2953
2954Wed Jun 24 17:17:57 1998 Ian Lance Taylor <ian@cygnus.com>
2955
2956 * elflink.h (elf_bfd_final_link): Loop over input_bfds using the
2957 link_next field, not the next field.
2958
2959Sun Jun 21 19:38:39 1998 Ian Lance Taylor <ian@cygnus.com>
2960
2961 * elf.c (map_sections_to_segments): Check the section address
2962 against the phdr size both with and without a modulo of
2963 maxpagesize.
2964
2965Fri Jun 19 17:08:18 1998 Ian Lance Taylor <ian@cygnus.com>
2966
2967 * elf32-mips.c (mips_elf_size_dynamic_sections): Only strip a
2968 linker created empty input section if the output section has the
2969 same name.
2970
2971 * elflink.h (elf_link_output_extsym): Print an error message if
2972 _bfd_elf_section_from_bfd_section fails.
2973
2974 * elf.c (_bfd_elf_section_from_bfd_section): Call bfd_set_error on
2975 failure.
2976
2977Tue Jun 16 11:55:55 1998 Ian Lance Taylor <ian@cygnus.com>
2978
2979 * elf.c (copy_private_bfd_data): Improve handling of Solaris
2980 native linker output. Avoid putting an empty section in more than
2981 one segment.
2982
2983Fri Jun 12 13:30:17 1998 Tom Tromey <tromey@cygnus.com>
2984
2985 * po/Make-in (all-yes): If maintainer mode, depend on .pot file.
2986 ($(PACKAGE).pot): Unconditionally depend on POTFILES.
2987
2988Fri Jun 12 13:34:02 1998 Doug Evans <devans@canuck.cygnus.com>
2989
2990 * elf.c (swap_out_syms): New arg relocatable_p.
2991 Don't add section VMA to symbols for relocatable output.
2992 (_bfd_elf_compute_section_file_positions): Update call to
2993 swap_out_syms.
2994
2995Mon Jun 8 15:20:57 1998 Nick Clifton <nickc@cygnus.com>
2996
2997 * elf32-v850.c (v850_elf_perform_relocation): Make comparisons
2998 against 'addend' be signed rather than unsigned.
2999
3000Sat Jun 6 00:31:21 1998 Nick Clifton <nickc@cygnus.com>
3001
3002 * elf32-m32r.c: Add prototyps for static functions.
3003
3004 * coff-arm.c: Add prototypes for static functions.
3005
3006Fri Jun 5 17:21:51 1998 Nick Clifton <nickc@cygnus.com>
3007
3008 * elf.c (elf_sort_sections): Sort by LMA first then VMA, since the
3009 LMA is used to order sections in a segment.
3010
3011 * elf32-v850.c: Add prototypes for static functions.
3012 Change type of addend parameter to bfd_vma in various functions.
3013
3014Fri Jun 5 18:09:58 1998 Ian Lance Taylor <ian@cygnus.com>
3015
3016 * aoutx.h (howto_table_ext): Change RELOC_BASE13 to use
3017 complain_overflow_signed instead of complain_overflow_bitfield.
3018
3019Fri Jun 5 15:11:11 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
3020
3021 * elf.c (elf_map_symbols): Don't add section VMA to symbol value
3022 when comparing against 0.
3023
3024Wed Jun 3 17:52:49 1998 Ian Lance Taylor <ian@cygnus.com>
3025
3026 * Makefile.am (config.status): New target.
3027 * Makefile.in: Rebuild.
3028
3029Wed Jun 3 12:18:24 1998 Stan Cox <scox@equinox.cygnus.com>
3030
3031 * elf32-sparc.c (elf32_sparc_merge_private_bfd_data): Give an
3032 error if previous object endianness doesn't match current object.
3033
3034Tue Jun 2 17:50:59 1998 Nick Clifton <nickc@cygnus.com>
3035
3036 * elf32-v850.c (v850_elf_print_private_bfd_data): Call
3037 _bfd_elf_print_private)bfd_data ().
3038
3039Tue Jun 2 15:29:35 1998 Ian Lance Taylor <ian@cygnus.com>
3040
3041 * elflink.h (elf_merge_symbol): Don't always set type_change_ok
3042 and size_change_ok.
3043 (elf_link_add_object_symbols): Set type_change_ok and
3044 size_change_ok before calling elf_merge_symbol.
3045
3046 * elf32-mips.c (mips_elf_relocate_section): If we issue an
3047 undefined symbol error, don't also issue an overflow error.
3048
3049Tue Jun 2 13:51:00 1998 Geoff Keating <geoffk@ozemail.com.au>
3050
3051 * elf32-ppc.c (ppc_elf_relocate_section): The target of an
3052 R_PPC_LOCAL24PC relocation should be local; if not, print an error
3053 message instead of crashing.
3054
3055Mon Jun 1 18:23:12 1998 Yuli Barcohen <yuli.barcohen@telrad.co.il>
3056
3057 * archures.c (bfd_mach_cpu32): Define.
3058 (bfd_default_scan): Add case for 68060. Fix 68332 case to use
3059 bfd_mach_cpu32.
3060 * cpu-m68k.c (arch_info_struct): Add m68k:cpu32.
3061 * ieee.c: Include <ctype.h>.
3062 (ieee_object_p): Parse out process ID string to make it more
3063 likely to be acceptable for bfd_scan_arch.
3064 * bfd-in2.h: Rebuild.
3065
3066Mon Jun 1 11:12:02 1998 Nick Clifton <nickc@cygnus.com>
3067
3068 * elf32-m32r.c (m32r_elf_print_private_bfd_data): Also call
3069 _bfd_elf_print_private_bfd_data() so that the program header will
3070 be displayed.
3071
3072Mon Jun 1 12:14:28 1998 Ian Lance Taylor <ian@cygnus.com>
3073
3074 * peicode.h (coff_swap_sym_in): Check for C_SECTION rather than
3075 0x68. Reindent. Add some comments.
3076
3077Fri May 29 09:58:08 1998 Nick Clifton <nickc@cygnus.com>
3078
3079 * elf.c (copy_private_bfd_data): Adjust physical address of
3080 segment in output BFD to contain LMAs of its sections.
3081
3082Tue May 26 19:37:47 1998 Stan Cox <scox@equinox.cygnus.com>
3083
3084 * elf32-sparc.c (_bfd_sparc_elf_howto_table, sparc_reloc_map,
3085 elf32_sparc_relocate_section): Added R_SPARC_32LE for little
3086 endian data 32 bit relocations.
3087 (elf32_sparc_merge_private_bfd_data): Check if linking little
3088 endian objects with big endian objects.
3089 (elf32_sparc_object_p): Set bfd_mach_sparc_sparclite_le.
3090 (elf32_sparc_final_write_processing): Set EF_SPARC_LEDATA in e_flags.
3091 * libbfd.h (bfd_reloc_code_real_names): Added BFD_RELOC_SPARC_32LE.
3092 * reloc.c: Same.
3093 * cpu-sparc.c (arch_info_struct): Added sparc:sparclite_le
3094 * archures.c (bfd_mach_sparc_sparclite_le): New.
3095 * bfd-in2.h (BFD_RELOC_SPARC_32LE, bfd_mach_sparc_sparclite_le): New.
3096
3097Thu May 21 16:59:28 1998 Nick Clifton <nickc@cygnus.com>
3098
3099 * peicode.h (add_data_entry): Fix precedence of operators in if ()
3100 statement.
3101
3102Tue May 19 18:41:19 1998 Ian Lance Taylor <ian@cygnus.com>
3103
3104 * bfd-in.h: Move over patch to bfd-in2.h.
3105
3106 * reloc.c (bfd_check_overflow): Add casts before shifts which may
3107 not fit in 32 bits.
3108 (_bfd_relocate_contents): Likewise.
3109
3110Mon May 18 14:44:15 1998 Nick Clifton <nickc@cygnus.com>
3111
3112 * peicode.h (add_data_entry): If the section has no private data
3113 then do not create a Data Dictionary entry for it.
3114
3115Mon May 18 00:09:28 1998 Richard Henderson <rth@cygnus.com>
3116
3117 * elf64-alpha.c (elf64_alpha_relax_section): Set again on changes.
3118 (elf64_alpha_can_merge_gots, elf64_alpha_merge_gots,
3119 elf64_alpha_size_got_sections): Rewrite, handling multiple got
3120 subsections during relaxation more correctly.
3121
3122Thu May 14 14:22:58 1998 Nick Clifton <nickc@cygnus.com>
3123
3124 * bfd-in2.h: Add new prototype: bfd_coff_set_symbol_class ().
3125 Add extra argument to bfd_arm_process_before_allocation ().
3126 * bfd-in.h: Reflect changes made in bfd-in2.h.
3127 * coffgen.c (bfd_coff_set_symbol_class): New function. Set the
3128 coff class of a BFD symbol.
3129 * coff-arm.c: Add support for interworking between Thumb code and
3130 non-interworking aware ARM code.
3131
3132Sun May 10 22:33:59 1998 Jeffrey A Law (law@cygnus.com)
3133
3134 * po/Make-in (install-info): New target.
3135
3136Thu May 7 17:40:56 1998 Ian Lance Taylor <ian@cygnus.com>
3137
3138 * filemode.c: Remove; not used.
3139
3140 If sysdep.h includes a header file, don't include it again:
3141 * aix386-core.c: Don't include <stdio.h>, <stddef.h>, or
3142 <errno.h>.
3143 * aoutx.h: Don't include <string.h>. Use "sysdep.h" rather than
3144 <sysdep.h>.
3145 * archive.c: Don't include <string.h> or <errno.h>.
3146 * evax-alpha.c; Don't include <stdio.h>.
3147 * evax-egsd.c: Likewise.
3148 * evax-etir.c: Likewise.
3149 * evax-misc.c: Likewise.
3150 * evax-emh.c: Likewise. Also, don't include <sys/types.h>.
3151 * hppabsd-core.c: Don't include <stdio.h>, <sys/types.h>, or
3152 <errno.h>.
3153 * hpux-core.c: Likewise.
3154 * netbsd-core.c: Likewise.
3155 * som.c: Likewise.
3156 * libbfd.c: Don't include <sys/types.h>.
3157 * nlmcode.h: Don't include <string.h>.
3158 * osf-core.c: Don't include <string.h> or <stdio.h>.
3159 * ptrace-core.c: Don't include <stdio.h>, <sys/types.h>,
3160 <errno.h>, or <unistd.h>.
3161 * trad-core.c: Don't include <stdio.h> or <sys/types.h>.
3162
3163Thu May 7 13:12:50 1998 Klaus Kaempf <kkaempf@progis.de>
3164
3165 * configure.com: If the version number can not be found in
3166 configure.in, set it to "unknown" rather than "2.8.1".
3167
3168Wed May 6 09:46:05 1998 Gavin Koch <gavin@cygnus.com>
3169
3170 * elf32-mips.c (elf_mips_mach): New.
3171 (_bfd_mips_elf_object_p): Use elf_mips_mach.
3172 (_bfd_mips_elf_final_write_processing): Use the names
3173 of machines, rather than the numbers. Set both the ARCH
3174 and MACH in e_flags. Handle a few more specific machines.
3175 (_bfd_mips_elf_merge_private_bfd_data): Merge both
3176 EF_MIPS_ARCH and EF_MIPS_MACH.
3177
3178Tue May 5 21:01:53 1998 Richard Henderson <rth@cygnus.com>
3179
3180 * syms.c (bfd_is_local_label): Revert last change.
3181 * srec.c (srec_write_symbols): Discard debugging symbols.
3182
3183Tue May 5 23:36:06 1998 Ian Lance Taylor <ian@cygnus.com>
3184
3185 * som.c: Include <ctype.h>.
3186 * som.h: Don't include sysdep.h.
3187
3188Tue May 5 18:29:24 1998 Tom Tromey <tromey@cygnus.com>
3189
3190 * libbfd.h: Rebuilt.
3191 * libbfd-in.h: Removed gettext includes and defines.
3192 * sysdep.h: Moved gettext-related includes and defines here.
3193
3194Tue May 5 16:47:54 1998 Richard Henderson <rth@cygnus.com>
3195
3196 * srec.c (srec_write_symbols): Use bfd_is_local_label rather than
3197 an ad-hoc test. Kill bogus #if 0 code.
3198 * syms.c (bfd_is_local_label): Consider BSF_DEBUGGING symbols local.
3199
3200Mon May 4 16:10:33 1998 Ian Lance Taylor <ian@cygnus.com>
3201
3202 * sunos.c (sunos_check_dynamic_reloc): Don't use the PLT address
3203 when generating a normal executable for a symbol defined in a
3204 regular file. When copying a reloc into the output file, adjust
3205 the addend for a PC relative reloc against a global symbol.
3206
3207Mon May 4 10:08:18 1998 Tom Tromey <tromey@cygnus.com>
3208
3209 * libbfd.h: Rebuilt.
3210 * libbfd-in.h (_): Define as dgettext.
3211
3212Mon May 4 11:02:23 1998 Ian Lance Taylor <ian@cygnus.com>
3213
3214 * coff-arm.c (coff_arm_relocate_section): Cast to bfd_signed_vma,
3215 not signed.
3216 * peicode.h (pe_saved_coff_bfd_print_private_bfd_data): Use PARAMS
3217 when declaring parameter types.
3218 (pe_saved_coff_bfd_copy_private_bfd_data): Likewise.
3219
3220Wed Apr 29 15:35:03 1998 Ian Lance Taylor <ian@cygnus.com>
3221
3222 * config.bfd: If we include any ELF targets in targ_defvec and/or
3223 targ_selvecs, then add the generic ELF targets to targ_selvecs.
3224 * elf32-gen.c (dummy): New static const variable.
3225 (elf_generic_info_to_howto): New static function.
3226 (elf_generic_info_to_howto_rel): New static function.
3227 (elf_info_to_howto): Define as elf_generic_info_to_howto.
3228 (elf_info_to_howto_rel): Define as elf_generic_info_to_howto_rel.
3229 * elf64-gen.c: Same changes as elf32-gen.c.
3230 * elfcode.h (elf_object_p): For the generic target, ignore a
3231 failure of bfd_default_set_arch_mach. Fix indentation a bit.
3232
3233Tue Apr 28 20:05:52 1998 Ian Lance Taylor <ian@cygnus.com>
3234
3235 * configure.in (WIN32LIBADD): Add -lintl on cygwin32.
3236 * configure: Rebuild.
3237
3238Tue Apr 28 12:16:57 1998 Jason Molenda (crash@bugshack.cygnus.com)
3239
3240 * config.bfd: Update OSR5/Unixware patterns.
3241
3242Mon Apr 27 18:02:24 1998 Richard Henderson <rth@cygnus.com>
3243
3244 * elf.c (assign_file_positions_for_segments): Allow for holes
3245 between sections added by a link script.
3246
3247Mon Apr 27 11:49:55 1998 Ian Lance Taylor <ian@cygnus.com>
3248
3249 * configure.in: Change version number to 2.9.4
3250 * configure: Rebuild.
3251
3252 Based on patch from H.J. Lu <hjl@gnu.org>:
3253 * elf.c (bfd_elf_get_bfd_needed_list): New function.
3254 * bfd-in.h (bfd_elf_get_bfd_needed_list): Declare.
3255 * bfd-in2.h: Rebuild.
3256
3257Sat Apr 25 20:07:53 1998 Richard Henderson <rth@cygnus.com>
3258
3259 * elf64-alpha.c (struct alpha_relax_info): Replace elfsym with other.
3260 Change all users.
3261
3262Sat Apr 25 18:29:07 1998 Richard Henderson <rth@cygnus.com>
3263
3264 * elf64-alpha.c (struct alpha_relax_info): Add tsec & elfsym members.
3265 (elf64_alpha_relax_section): Fill them in.
3266 (elf64_alpha_relax_opt_call): Implement more than a stub.
3267 (elf64_alpha_add_symbol_hook): Don't set SEC_LOAD or default
3268 alignment on .scommon.
3269 (elf64_alpha_merge_gots): Merge use counts as well.
3270
3271Sat Apr 25 14:07:29 1998 Richard Henderson <rth@cygnus.com>
3272
3273 * elf64-alpha.c (elf64_alpha_relax_section): Use the proper section
3274 for calculating a local symbol's address.
3275 (elf64_alpha_calc_got_offsets): Skip entries with 0 use count.
3276 Set the .got's cooked size as well as the raw size.
3277
3278Fri Apr 24 09:16:00 1998 Nick Clifton <nickc@cygnus.com>
3279
3280 * elf32-v850.c (v850_elf_print_private_bfd_data): Add
3281 internationalisation of printed information.
3282
3283 * coff-arm.c (coff_arm_print_private_bfd_data): Add
3284 internationalisation of printed information.
3285
3286Fri Apr 24 12:09:18 1998 Ian Lance Taylor <ian@cygnus.com>
3287
3288 * syms.c (struct indexentry): Change directory_name, file_name,
3289 and function_name fields to char *.
3290 (struct stab_find_info): Change cached_file_name field to char *.
3291
3292Thu Apr 23 08:13:04 1998 Nick Clifton <nickc@cygnus.com>
3293
3294 * peicode.h (dir_names): Add missing N_() macros to dir_names array.
3295
3296Wed Apr 22 13:06:15 1998 Tom Tromey <tromey@cygnus.com>
3297
3298 * po/Make-in (MKINSTALLDIRS): Don't look in $(top_srcdir).
3299
3300Wed Apr 22 17:48:48 1998 Ian Lance Taylor <ian@cygnus.com>
3301
3302 * Makefile.am (install-data-local): Make $(includedir).
3303 * Makefile.in: Rebuild.
3304
3305Wed Apr 22 13:06:15 1998 Tom Tromey <tromey@cygnus.com>
3306
3307 * libbfd-in.h: Use `gettext' and not `dgettext' for now.
3308
3309Wed Apr 22 12:53:40 1998 Ian Lance Taylor <ian@cygnus.com>
3310
3311 * Makefile.am (INCLUDES): Add -I$(srcdir)/../intl -I../intl.
3312 * Makefile.in: Rebuild.
3313
3314 * bfd-in2.h: Rebuild for Nick's changes.
3315
3316Tue Apr 21 23:11:51 1998 Richard Henderson <rth@cygnus.com>
3317
3318 * archive.c (_bfd_generic_read_ar_hdr_mag): Fix lossage in last
3319 change wrt length == max_namelen.
3320
3321Tue Apr 21 21:19:36 1998 Tom Tromey <tromey@scribbles.cygnus.com>
3322
3323 * Many files: Added gettext invocations around user-visible
3324 strings.
3325 * libbfd-in.h: Added gettext includes and defines.
3326 * acconfig.h (ENABLE_NLS, HAVE_CATGETS, HAVE_GETTEXT, HAVE_STPCPY,
3327 HAVE_LC_MESSAGES): Define.
3328 * configure.in: Call CY_GNU_GETTEXT. Create po/Makefile.in and
3329 po/Makefile.
3330 * Makefile.am (SUBDIRS): Added po.
3331 (POTFILES): New macro.
3332 (po/POTFILES.in): New target.
3333 (SOURCE_HFILES): New macro.
3334 (HFILES): Use it.
3335 * po/Make-in, po/POTFILES.in, po/bfd.pot: New files.
3336
3337Tue Apr 21 13:38:18 1998 Peter Schauer (pes@regent.e-technik.tu-muenchen.de)
3338
3339 * elfcore.h (bfd_prstatus): Copy core_prstatus from the first
3340 NT_PRSTATUS note section encountered, it contains the status of
3341 the currently executing thread when the core file was written.
3342
3343Tue Apr 21 10:00:12 1998 Nick Clifton <nickc@cygnus.com>
3344
3345 * libcoff.h: Add extra parameter to
3346 bfd_coff_link_output_has_begun overrideable function.
3347 * cofflink.c: Pass extra parameter to
3348 bfd_coff_link_output_has_begun function.
3349 * bfd-in.h: Add prototypes for exported ARM interworking
3350 functions.
3351 * peicode.h: ARM specific code reorganised to conform to BFD
3352 coding conventions.
3353 * coffcode.h: ARM specific code reorganised to conform to BFD
3354 coding conventions.
3355 * coff-arm.c: Code reorganised to conform to the BFD coding
3356 conventions. Global variables have been moved into an ARM
3357 specific hash table structure and a new function:
3358 bfd_arm_get_bfd_for_interworking() has been created which is
3359 called from the linker scripts.
3360
3361Tue Apr 21 00:11:51 1998 Richard Henderson <rth@cygnus.com>
3362
3363 * archive.c (_bfd_generic_read_ar_hdr_mag): Simplify end-of-name test.
3364
3365 * elf64-alpha.c (elf64_alpha_find_reloc_at_ofs): Renamed from
3366 elf64_alpha_relax_find_reloc_ofs. Changed all callers.
3367 (elf64_alpha_add_symbol_hook): Put small commons in .scommon not .sbss.
3368 (elf64_alpha_size_got_sections): Don't merge .got sections twice.
3369
3370Sat Apr 18 01:21:04 1998 Stan Cox <scox@cygnus.com>
3371
3372 * config.bfd: Added sparc86x support.
3373
3374Fri Apr 17 22:29:04 1998 Ian Lance Taylor <ian@cygnus.com>
3375
3376 * elf32-mips.c (mips_elf_relocate_section): Do not complain about
3377 an out of range pc-relative jump/call to an undefined weak symbol.
3378
3379Thu Apr 16 13:49:00 1998 Richard Henderson <rth@cygnus.com>
3380
3381 * elf64-alpha.c (elf64_alpha_do_reloc_gpdisp): Do all gpdisp
3382 comparisons signed.
3383
3384Thu Apr 16 11:43:33 1998 Ian Lance Taylor <ian@cygnus.com>
3385
3386 * archive.c (bfd_generic_archive_p): If a slurp subroutine returns
3387 an error other than bfd_error_system_call, set the error to
3388 bfd_error_wrong_format.
3389
3390 * targets.c (bfd_target_vector) [SELECT_VECS not defined]: Add
3391 bfd_elf32_powerpcle_vec.
3392
3393 * elf.c (copy_private_bfd_data): If all the p_paddr fields in the
3394 program segments are zero, don't set p_paddr_valid.
3395
3396Wed Apr 15 22:15:16 1998 Richard Henderson <rth@cygnus.com>
3397
3398 * elf64-alpha.c: Initial implementation of relaxation --
3399 (struct alpha_elf_link_hash_entry): Add use_count member.
3400 (elf64_alpha_check_relocs): Initialize and increment it.
3401 (elf64_alpha_can_merge_gots): Check it when considering merging.
3402 (elf64_alpha_merge_gots): Drop entries with zero use.
3403 (elf64_alpha_calc_got_offsets_for_symbol): Likewise.
3404 (elf64_alpha_always_size_sections): Split out got sizing ...
3405 (elf64_alpha_size_got_sections): ... here. New function.
3406 (elf64_alpha_relax_find_reloc_ofs): New function.
3407 (elf64_alpha_relax_with_lituse): Likewise.
3408 (elf64_alpha_relax_without_lituse): Likewise.
3409 (elf64_alpha_relax_opt_call): Likewise.
3410 (elf64_alpha_relax_section): Likewise.
3411 (elf64_alpha_add_symbol_hook): Likewise.
3412 (elf64_alpha_howto_table): Implement GPRELHIGH/LOW & IMMED_GP_16.
3413 (elf64_alpha_relocate_section): Likewise.
3414 (bfd_elf64_bfd_relax_section): Define.
3415 (elf_backend_add_symbol_hook): Likewise.
3416
3417Wed Apr 15 16:08:46 1998 Richard Henderson <rth@cygnus.com>
3418
3419 * elf.c (prep_headers): Use new EM_SPARCV9 symbol.
3420 * elf64-sparc.c (ELF_MACHINE_CODE): Likewise.
3421 (ELF_MACHINE_ALT1): New. Set to EM_OLD_SPARC64.
3422
3423Wed Apr 15 11:34:33 1998 Ian Lance Taylor <ian@cygnus.com>
3424
3425 * configure.in: Add -lkernel32 to WIN32LIBADD on cygwin32.
3426 * configure: Rebuild.
3427
3428Mon Apr 13 16:46:27 1998 Ian Lance Taylor <ian@cygnus.com>
3429
3430 * Makefile.am (libbfd_la_LIBADD): Add @WIN32LIBADD@.
3431 (libbfd_la_LDFLAGS): Add @WIN32LDFLAGS@.
3432 * configure.in: Define and substitute WIN32LDFLAGS and
3433 WIN32LIBADD.
3434 * aclocal.m4: Rebuild with new libtool.
3435 * configure, Makefile.in: Rebuild.
3436
3437Fri Apr 10 13:44:27 1998 Ian Lance Taylor <ian@cygnus.com>
3438
3439 * coffcode.h (coff_write_object_contents): Move a PE COMDAT symbol
3440 before any other symbols in the same section.
3441
3442Wed Apr 8 14:50:23 1998 Michael Meissner <meissner@cygnus.com>
3443
3444 * config.bfd (powerpc*-*-*): Remove PowerPC NT support from ELF
3445 systems.
3446
3447Tue Apr 7 16:25:31 1998 Gavin Romig-Koch <gavin@cygnus.com>
3448
3449 * dwarf2.c (comp_unit): Move it earlier in the source. Add
3450 addr_size.
3451 (read_address): Replace 'bdf*' argument with 'comp_unit*' argument.
3452 Use addr_size for address size, rather than sizeof(bfd_vma).
3453 (read_attribute): Replace bdf* argument with 'comp_unit*' argument.
3454 Fix call to read_address.
3455 (decode_line_info): Replace bdf* argument with 'comp_unit*' argument.
3456 Scrap other unneeded arguments. Fix call to read_address.
3457 (scan_unit_for_functions): Fix call to read_attribute.
3458 (parse_comp_unit): We now handle more values for addr_size.
3459 Set addr_size in unit. Fix call to read_attribute and
3460 decode_line_info.
3461
3462Tue Apr 7 15:44:47 1998 Gavin Romig-Koch <gavin@cygnus.com>
3463
3464 * dwarf2.c (parse_comp_unit): Drop use of unit->name when it is null.
3465
3466Tue Apr 7 12:35:18 1998 Ian Lance Taylor <ian@cygnus.com>
3467
3468 * archures.c (bfd_default_scan): Add m68k cases back to default
3469 switch, reverting patch of March 25, since IEEE support depends
3470 upon them.
3471
3472Mon Apr 6 14:06:40 1998 Ian Lance Taylor <ian@cygnus.com>
3473
3474 * Makefile.am (diststuff): New target.
3475 * Makefile.in: Rebuild.
3476
3477Sun Apr 5 16:21:44 1998 Jeffrey A Law (law@cygnus.com)
3478
3479 * som.c (som_bfd_ar_write_symbol_stuff): Fix computation of
3480 som_offset when we have an extended name table.
3481
3482Sun Apr 5 16:04:39 1998 H.J. Lu <hjl@gnu.org>
3483
3484 * Makefile.am (stamp-lib): Check that .libs/libbfd.a exists before
3485 trying to copy it.
3486 * Makefile.in: Rebuild.
3487
3488Fri Apr 3 11:09:42 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
3489
3490 * elf32-m68k.c (elf_m68k_size_dynamic_sections): Generate section
3491 symbols when creating a shared library.
3492 (elf_m68k_adjust_dynindx): New function, used by above code.
3493 (elf_m68k_finish_dynamic_sections): Initialize the section
3494 symbols.
3495 (elf_m68k_relocate_section): Change abort to BFD_ASSERT.
3496
3497Wed Apr 1 16:04:02 1998 Nick Clifton <nickc@cygnus.com>
3498
3499 * coff-arm.c (in_reloc_p): Use ARM_RVA32 in place of constant
3500 value 11.
3501
3502Wed Apr 1 13:36:58 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
3503
3504 * elf32-m68k.c (elf_m68k_relocate_section, case R_68K_PLT*O): Fix
3505 assertion.
3506
3507Tue Mar 31 00:12:12 1998 Jeffrey A Law (law@cygnus.com)
3508
3509 * elf-m10300.c (mn10300_elf_relax_section): Correctly handle
3510 absolute symbols.
3511
3512Mon Mar 30 12:46:15 1998 Ian Lance Taylor <ian@cygnus.com>
3513
3514 * configure.in: Set version to 2.9.1.
3515 * configure: Rebuild.
3516
3517 * Branched binutils 2.9.
3518
3519Mon Mar 30 12:20:50 1998 Brent Baccala <baccala@freesoft.org>
3520
3521 * syms.c (ENABLE_CACHING): Define.
3522 (struct indexentry): Define.
3523 (struct stab_cache): Remove.
3524 (cmpindexentry): New static function.
3525 (struct stab_find_info): Add new fields: indextable,
3526 indextablesize, cached_indexentry, cached_offset, cached_stab, and
3527 cached_file_name. Remove fields: file_cache, function_cache, and
3528 line_cache.
3529 (_bfd_stab_section_find_nearest_line): Rewrite to build a sorted
3530 index table and search it.
3531
3532Mon Mar 30 10:39:34 1998 Ian Lance Taylor <ian@cygnus.com>
3533
3534 * elf.c (_bfd_elf_copy_private_section_data): Call
3535 copy_private_bfd_data once we've seen the last SEC_ALLOC section.
3536
3537 * cpu-mips.c: Remove trailing comma at end of enumeration list.
3538
3539Sat Mar 28 16:33:02 1998 Ian Lance Taylor <ian@cygnus.com>
3540
3541 * coff-arm.c: Define all globally visible variables and functions
3542 only when COFF_WITH_PE is not defined.
3543 * configure.in (armpe_little_vec, armpe_big_vec): Add
3544 coff-arm.lo.
3545 * configure: Rebuild.
3546
3547Fri Mar 27 16:06:02 1998 Ian Lance Taylor <ian@cygnus.com>
3548
3549 Fix some gcc -Wall warnings:
3550 * aout-arm.c (MY(fix_pcrel_26)): Add casts to avoid warnings.
3551 * archive.c (_bfd_generic_read_ar_hdr_mag): Likewise.
3552 * archures.c (bfd_default_scan): Likewise.
3553 * bfd.c (bfd_scan_vma): Likewise.
3554 * binary.c (mangle_name): Likewise
3555 * coff-arm.c (aoutarm_fix_pcrel_26): Likewise.
3556 * coff-sh.c (sh_relocate_section): Likewise.
3557 * coff-stgo32.c (create_go32_stub): Likewise.
3558 * coffcode.h (coff_slurp_line_table): Likewise.
3559 * ecoff.c (_bfd_ecoff_write_armap): Likewise.
3560 * elf.c (_bfd_elf_make_section_from_shdr): Likewise.
3561 (assign_file_positions_for_segments): Likewise.
3562 * elf32-mips.c (mips_elf_relocate_section): Likewise.
3563 * elf32-ppc.c (ppc_elf_add_symbol_hook): Likewise.
3564 * oasys.c (oasys_write_sections): Likewise.
3565 * ppcboot.c (ppcboot_object_p): Likewise.
3566 (mangle_name): Likewise.
3567 * riscix.c (riscix_fix_pcrel_26): Likewise.
3568 * srec.c (srec_scan): Likewise.
3569 * stabs.c (_bfd_write_section_stabs): Likewise.
3570 * sunos.c (sunos_add_dynamic_symbols): Likewise.
3571 * aout-ns32k.c (_bfd_ns32k_relocate_contents): Add default case to
3572 switch. Declare parameters for function pointers.
3573 * archures.c (bfd_default_scan): Add braces to avoid ambiguous if
3574 warning.
3575 * elf.c (elf_sort_sections): Likewise.
3576 * coff-arm.c (coff_thumb_pcrel_common): Initialize relocation.
3577 Add default cases to switches.
3578 (coff_arm_relocate_section): Remove unused local variables.
3579 Always set rstat.
3580 (coff_arm_bfd_set_private_flags): Change flag variable to type
3581 flagword.
3582 * coff-mips.c (mips_relocate_section): Initialize use_lo.
3583 * coff-ppc.c (ppc_record_toc_entry): Change i to unsigned int.
3584 (dump_toc): Change cat to const, and initialize it.
3585 * coff-sh.c (sh_relax_delete_bytes): Initialize start and voff.
3586 * elf32-sh.c (sh_elf_relax_delete_bytes): Likewise.
3587 (sh_elf_relocate_section): Initialize r_symndx.
3588 * coffcode.h (coff_compute_section_file_positions): Only declare
3589 old_sofar if ALIGN_SECTIONS_IN_FILE.
3590 (coff_write_object_contents): Initialize csym.
3591 * coffgen.c (coff_pointerize_aux): Make type and class unsigned.
3592 * cpu-ns32k.c (_bfd_ns32k_get_displacement): Add default case to
3593 switch.
3594 * dwarf2.c: Include libiberty.h.
3595 (read_2_signed_bytes, read_4_signed_bytes): Comment out.
3596 (decode_line_info): Remove unused local variables.
3597 * elf32-m32r.c (m32r_elf_sda16_reloc): Likewise.
3598 (m32r_elf_relocate_section): Likewise.
3599 * elf32-v850.c (v850_elf_store_addend_in_insn): Likewise.
3600 (v850_elf_reloc): Likewise.
3601 * elf-bfd.h (elf_linker_section_t): Make alignment unsigned.
3602 (struct elf_obj_tdata): Make cverdefs and cverrefs unsigned.
3603 * elf.c (assign_file_positions_for_segments): Always set adjust.
3604 * elf32-d30v.c (bfd_elf_d30v_reloc): Initialize tmp_addr. Fully
3605 parenthesize expression.
3606 * elf32-m32r.c (m32r_elf_relocate_section): Always initialize h.
3607 (m32r_elf_object_p): Return a value.
3608 (m32r_elf_print_private_bfd_data): Change fprintf format string.
3609 * elf32-mips.c (mips_elf_final_link): Initialize last.
3610 (mips_elf_finish_dynamic_sections): Initialize last and dindx.
3611 * elf32-v850.c (v850_elf_object_p): Return a value.
3612 (v850_elf_print_private_bfd_data): Change fprintf format string.
3613 * elfcode.h (elf_slurp_symbol_table): Change symcount and i to
3614 unsigned long.
3615 * elflink.h (elf_link_add_object_symbols): Change vernum to
3616 unsigned int, and initialize it. Change fprintf format string.
3617 (NAME(bfd_elf,size_dynamic_sections)): Cast -1 to bfd_size_type
3618 when setting or comparing to soname_indx.
3619 (elf_create_pointer_linker_section): Change num_symbols to
3620 unsigned int.
3621 * libcoff-in.h (coff_data_type): Change flags to flagword.
3622 * peicode.h (pe_print_idata): Initialize idx. Change j to
3623 bfd_size_type. Initialize hint_member. Remove useless test to
3624 time_stamp.
3625 (pe_print_edata): Change num_functions and num_names in struct
3626 EDT_type to unsigned long. Remove cast. Change fprintf format
3627 string.
3628 * ppcboot.c (ppcboot_object_p): Change i to size_t.
3629 * reloc.c (bfd_get_reloc_size): Change return type to unsigned
3630 int.
3631 * reloc16.c (bfd_coff_reloc16_relax_section): Change shrinks to
3632 int *. Update uses. Change j to long.
3633 * bfd-in2.h, libcoff.h: Rebuild.
3634
3635Fri Mar 27 10:10:46 1998 Catherine Moore <clm@cygnus.com>
3636
3637 * elf32-v850.c Remove definition of USE_REL.
3638 (v850_elf_info_to_howto_rela): New function.
3639 (v850_elf_perform_relocation): Renamed from
3640 v850_elf_store_addend_in_insn. Removed replace argument.
3641 (v850_elf_reloc): store the relocation in the addend field instead
3642 of the insn.
3643 (v850_elf_final_link_relocate): Now calls
3644 v850_elf_perform_relocation.
3645 (v850_elf_relocate_section): Remove code to generate REL
3646 relocations.
3647
3648Thu Mar 26 13:32:17 1998 Ian Lance Taylor <ian@cygnus.com>
3649
3650 * coffcode.h (coff_new_section_hook): Set the type and storage
3651 class in the native symbol information allocated for a new section
3652 symbol.
3653
3654Thu Mar 26 10:13:41 1998 Nick Clifton <nickc@cygnus.com>
3655
3656 * peicode.h: Chain together calls to
3657 coff_bfd_copy_private_bfd_data and
3658 coff_bfd_print_private_bfd_data.
3659
3660 * coff-arm.c: Add prototypes for
3661 coff_arm_bfd_print_private_bfd_data and
3662 coff_arm_bfd_copy_private_bfd_data.
3663
3664Wed Mar 25 15:45:55 1998 Nick Clifton <nickc@cygnus.com>
3665
3666 * coffcode.h (coff_mkobject_hook): Set private falgs even for a PE
3667 build.
3668
3669 * peicode.h: Call arm-coff private data functions after handling
3670 pe private data.
3671
3672 * coff-arm.c: Turn statics into globals so that they can be shared
3673 both pe and pei backends.
3674
3675Wed Mar 25 15:19:38 1998 Ian Lance Taylor <ian@cygnus.com>
3676
3677 * aoutf1.h (sunos_set_arch_mach): Use bfd_mach_m68* rather than
3678 plain numbers.
3679 (sunos_write_object_contents): Likewise.
3680 * aoutx.h (NAME(aout,machine_type)): Likewise.
3681 * coffcode.h (coff_set_arch_mach_hook): Likewise.
3682
3683Wed Mar 25 13:59:24 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
3684
3685 * archures.c (bfd_mach_m68*): Add definitions for various m68k
3686 variants.
3687 (bfd_default_scan): Remove m68k special cases.
3688 * bfd-in2.h: Rebuild.
3689 * mipsbsd.c (MY(write_object_contents)): Use bfd_mach_m68* rather
3690 than plain numbers.
3691 * sparclynx.c (NAME(lynx,set_arch_mach)): Likewise.
3692 * cpu-m68k.c (arch_info_struct): Likewise. Add entry for
3693 m68k:68000.
3694 (bfd_m68k_arch): Set mach field to zero to signal no explicit
3695 selection, change printable_name to just "m68k" and make that the
3696 default instead of m68k:68020.
3697
3698 * aout-tic30.c (NAME): Define this to avoid multiple definitions
3699 from aoutx.h.
3700 (MY_get_section_contents): Define as aout_32_get_section_contents
3701 rather than NAME(aout,get_section_contents).
3702
3703 * elf-m10300.c (elf32_mn10300_link_hash_table_create): Fix cast.
3704
3705 * evax-alpha.c (evax_set_arch_mach): Only accept bfd_arch_alpha
3706 and call bfd_default_set_arch_mach to do the real work.
3707
3708Wed Mar 25 10:41:35 1998 Richard Henderson <rth@cygnus.com>
3709
3710 * bout.c (BALX): Include return register g14 as part of the insn.
3711 (BALX_MASK): New.
3712 (calljx_callback): Use it.
3713
3714Wed Mar 25 11:19:28 1998 Ian Lance Taylor <ian@cygnus.com>
3715
3716 * libbfd-in.h (BFD_ALIGN): Cast this parameter to bfd_vma.
3717 * libbfd.h: Rebuild.
3718
3719 * elf-m10300.c (elf32_mn10300_finish_hash_table_entry): Change
3720 byte_count to unsigned int.
3721 (mn10300_elf_relax_section): Initialize internal_relocs. Remove
3722 unused local variables.
3723
3724 * evax-alpha.c (evax_close_and_cleanup): Remove unused local
3725 variables er and er1.
3726
3727 * cpu-v850.c: Include <ctype.h>.
3728 (scan): Case isdigit argument to unsigned char.
3729
3730 From Yan Meroth <YAN.MEROTH@st.com>:
3731 * ihex.c (ihex_scan): Add extbase variable so that getting an
3732 extended linear address record does not ignore any previous
3733 extended address.
3734 (ihex_write_object_contents): When writing out an extended linear
3735 address record, zero out any previous extended address.
3736
3737Tue Mar 24 16:09:43 1998 Manfred Hollstein <manfred@s-direktnet.de>
3738
3739 * ieee.c (do_one): Check section before dereferencing it.
3740 (ieee_canonicalize_reloc): Likewise with src->relent.sym_ptr_ptr.
3741 (ieee_generic_stat_arch_elt): Likewise with abfd->my_archive.
3742
3743Mon Mar 23 18:51:47 1998 Joel Sherrill <joel@OARcorp.com>
3744
3745 * config.bfd: (sh*-*-rtems*): Switched from ELF to COFF.
3746
3747Mon Mar 23 14:23:36 1998 Nick Clifton <nickc@cygnus.com>
3748
3749 * coff-arm.c: Add interworking functions to pe backends.
3750
3751Fri Mar 20 18:47:20 1998 Ian Lance Taylor <ian@cygnus.com>
3752
3753 * configure.in: Use AM_DISABLE_SHARED.
3754 * aclocal.m4, configure: Rebuild with libtool 1.2.
3755
3756Fri Mar 20 11:25:41 1998 Nick Clifton <nickc@cygnus.com>
3757
3758 * coff-arm.c (coff_arm_relocate_section): Better error messages
3759 when interowrking conflucts occur. Courtesy of Jonathan Walton
3760 and Tony Thompson.
3761 (aoutarm_std_reloc_howto): Fixed bitsize fields of rightshifted
3762 relocations. Patch courtesy of Jonathan Walton and Tony
3763 Thompson.
3764
3765Fri Mar 20 02:26:43 1998 Richard Henderson <rth@cygnus.com>
3766
3767 * elf32-sparc.c (elf32_sparc_adjust_dynamic_symbol): Revert
3768 part of Feb 22 change controling when to override the existing
3769 symbol with the .plt entry.
3770
3771Wed Mar 18 09:26:25 1998 Nick Clifton <nickc@cygnus.com>
3772
3773 * config.bfd (targ_cpu): Add thumb-pe target.
3774
3775 * coffcode.h (OTHER_GLOBAL_CLASS): Support thumb external
3776 functions in PE build.
3777
3778Sun Mar 8 23:37:26 1998 Stan Cox <scox@equinox.cygnus.com>
3779
3780 * config.bfd (sparclite-*-elf*): Added.
3781
3782Mon Feb 23 19:31:19 1998 Ian Lance Taylor <ian@cygnus.com>
3783
3784 * configure.in: Add elf.lo to elf shell variable.
3785 * Makefile.am (BFD_LIBS): Remove elf.lo.
3786 (BFD_LIBS_CFILES): Remove elf.c.
3787 (BFD32_BACKENDS): Add elf.lo.
3788 (BFD32_BACKENDS_CFILES): Add elf.c.
3789 * configure, Makefile.in: Rebuild.
3790
37911998-02-23 15:53 Richard Henderson <rth@cygnus.com>
3792
3793 * elf32-i386.c (elf_i386_relocate_section): A pc-relative
3794 relocation against a now-local symbol should not have a dynamic
3795 relocation.
3796
3797Mon Feb 23 16:17:08 1998 Ian Lance Taylor <ian@cygnus.com>
3798
3799 * peicode.h (coff_swap_filehdr_in): Don't set BFD flag HAS_SYMS in
3800 COFF filehdr flags.
3801 (pe_print_private_bfd_data): Print PE flags. From Mikey
3802 <jeffdb@netzone.com>.
3803
3804Sun Feb 22 20:39:00 1998 Richard Henderson <rth@cygnus.com>
3805
3806 * elf32-sparc.c (elf32_sparc_adjust_dynamic_symbol): Don't create
3807 a plt entry when we can determine that we authoritatively define
3808 the symbol.
3809
3810Sun Feb 22 20:33:05 1998 Richard Henderson <rth@cygnus.com>
3811
3812 * configure.in (COREFILE selection): Remove sparc-*-linux*. They
3813 don't actually use trad-core, but a SunOS-style core file handled
3814 by gdb directly.
3815 * hosts/sparclinux.h: Remove.
3816
3817Wed Feb 18 15:31:06 1998 Ian Lance Taylor <ian@cygnus.com>
3818
3819 * peicode.h (pe_print_idata): If there is no .idata section, look
3820 for the import tables in some other section. Make the initial
3821 label line up better with the data. Print the import address
3822 table even if there is no import name table. If the import
3823 address table holds actual addresses, print them.
3824
3825Tue Feb 17 12:58:34 1998 Ian Lance Taylor <ian@cygnus.com>
3826
3827 * libbfd.c (bfd_seek): If fseek fails, save errno around call to
3828 bfd_tell. If errno is EINVAL, set bfd_error_file_truncated, not
3829 bfd_error_system_call.
3830
3831Fri Feb 13 13:11:33 1998 Ian Lance Taylor <ian@cygnus.com>
3832
3833 * Makefile.am (AUTOMAKE_OPTIONS): Define.
3834 * configure, Makefile.in, aclocal.m4: Rebuild with automake 1.2e.
3835
3836 From H.J. Lu <hjl@gnu.org>:
3837 * Makefile.am (libbfd_la_LDFLAGS): Define.
3838 * Makefile.in: Rebuild.
3839
3840Thu Feb 12 17:31:11 1998 Ian Lance Taylor <ian@cygnus.com>
3841
3842 NetBSD patches from Gordon W. Ross <gwr@mc.com>:
3843 * netbsd.h (MACHTYPE_OK): Define.
3844 (MY(write_object_contents)): Use DEFAULT_ARCH and DEFAULT_MID when
3845 calling N_SET_MACHTYPE, rather than having a switch.
3846 * libaout.h (enum machine_type): Add M_PMAX_NETBSD, M_VAX_NETBSD,
3847 and M_ALPHA_NETBSD.
3848 * i386netbsd.c (MACHTYPE_OK): Don't define.
3849 (DEFAULT_MID): Define.
3850 * m68k4knetbsd.c (SEGMENT_SIZE): Don't define.
3851 (MACHTYPE_OK): Don't define.
3852 (DEFAULT_MID): Define.
3853 * m68knetbsd.c: (MACHTYPE_OK): Don't define.
3854 (DEFAULT_MID): Define.
3855 * ns32knetbsd.c (MACHTYPE_OK): Don't define.
3856 (DEFAULT_MID): Define.
3857 * sparcnetbsd.c (MACHTYPE_OK): Don't define.
3858 (DEFAULT_MID): Define.
3859
3860 NetBSD patches from Gordon W. Ross <gwr@mc.com>:
3861 * vaxnetbsd.c: New file.
3862 * netbsd-core.c: Clean up. Remove unused macros. Use netbsd
3863 rather than netbsd_core.
3864 * targets.c (vaxnetbsd_vec): Declare.
3865 (bfd_target_vector): Add vaxnetbsd_vec. If NETBSD_CORE is
3866 defined, add netbsd_core_vec.
3867 * configure.in: Set COREFILE for alpha*-*-netbsd* and
3868 powerpc-*-netbsd* to netbsd-core.lo. If COREFILE is
3869 netbsd-core.lo, set COREFLAG to -DNETBSD_CORE.
3870 * config.bfd (alpha*-*-netbsd*): New target.
3871 * Makefile.am: Rebuild dependencies.
3872 (BFD32_BACKENDS): Add vaxnetbsd.lo.
3873 (BFD32_BACKENDS_CFILES): Add vaxnetbsd.c.
3874 * configure, Makefile.in: Rebuild.
3875
3876 * configure.host: Remove the old shared library build stuff. We
3877 now use libtool instead.
3878
3879Wed Feb 11 17:13:09 1998 Richard Henderson <rth@cygnus.com>
3880
3881 * tekhex.c (tekhex_write_object_contents): Call tekhex_init.
3882
3883Tue Feb 10 19:23:28 1998 H.J. Lu <hjl@gnu.org>
3884
3885 * configure.in: Take stab-syms.lo out of sparclinux_vec list.
3886 * configure: Rebuild.
3887
3888Tue Feb 10 15:16:38 1998 Nick Clifton <nickc@cygnus.com>
3889 * elf32-v850.c (remember_hi16s_reloc): New function.
3890 (find_remembered_hi16s_reloc): New function.
3891 (v850_elf_store_addend_in_insn): Use the above new functions to
3892 match up HI6S relocs with LO16 relocs.
3893
3894Tue Feb 10 15:01:39 1998 Ian Lance Taylor <ian@cygnus.com>
3895
3896 * configure.in: Change -linux* to -linux-gnu*.
3897 * config.bfd, configure.host: Likewise.
3898 * configure: Rebuild.
3899
3900Mon Feb 9 19:40:59 1998 Nick Clifton <nickc@cygnus.com>
3901
3902 * elf32-v850.c (v850_elf_store_addend_in_insn): Fix another
3903 LO16/HI16S bug and improve comments about what is going on.
3904
3905Sat Feb 7 15:27:03 1998 Ian Lance Taylor <ian@cygnus.com>
3906
3907 * configure, aclocal.m4: Rebuild with new libtool.
3908
3909Fri Feb 6 14:48:20 1998 Nick Clifton <nickc@cygnus.com>
3910
3911 * elf32-v850.c (v850_elf_merge_private_bfd_data): Do not complain
3912 when merging v850 code into v850e/v850ea code. Do not initialise
3913 output flags if the input is the default architecture.
6a9d5c9a 3914
252b5132
RH
3915Fri Feb 6 11:50:22 1998 Jeffrey A Law (law@cygnus.com)
3916
3917 * elf32-mips.c (bfd_elf32_bfd_reloc_type_lookup): For BFD_RELOC_CTOR
3918 get the size from bfd_arch_bits_per_address instead of directly
3919 from the isa.
3920
3921Thu Feb 5 14:21:34 1998 Michael Meissner <meissner@cygnus.com>
3922
3923 * libbfd-in.h (BFD_ALIGN): If rounding up would cause the address
3924 to wrap, just return all 1's bits instead.
3925 * libbfd.h: Regenerate.
3926
3927Thu Feb 5 11:51:05 1998 Ian Lance Taylor <ian@cygnus.com>
3928
3929 * coff-i386.c (coff_pe_i386_relocate_section): New static function
3930 if COFF_WITH_PE.
3931 (coff_relocate_section): If COFF_WITH_PE, define as
3932 coff_pe_i386_relocate_section.
3933 * coffcode.h (coff_write_object_contents): If COFF_IMAGE_WITH_PE,
3934 skip empty sections, to match coff_write_object_contents.
3935
3936 * elf64-mips.c (mips_elf64_swap_reloca_out): Swap out r_addend,
3937 rather than swapping out r_offset twice. From Luke Deller
3938 <luked@cse.unsw.edu.au>.
3939
3940Wed Feb 4 19:11:28 1998 Ian Lance Taylor <ian@cygnus.com>
3941
3942 * configure.in: Set libtool_enable_shared rather than
3943 libtool_shared. Remove diversion hack.
3944 * configure, Makefile.in, doc/Makefile.in, aclocal.m4: Rebuild
3945 with new libtool.
3946
3947Wed Feb 4 16:10:21 1998 Brent Baccala <baccala@freesoft.org>
3948
3949 * syms.c (struct stab_cache): Define.
3950 (struct stab_find_info): Remove cached_offset, cached_stab,
3951 cached_str, and cached_stroff fields. Add file_cache,
3952 function_cache, and line_cache fields.
3953 (_bfd_stab_section_find_nearest_line): Use extensive caching to
3954 speed up searches.
3955
3956Wed Feb 4 13:34:22 1998 Ian Lance Taylor <ian@cygnus.com>
3957
3958 * peicode.h (pe_print_idata): Check for import of ordinal rather
3959 than name.
3960 (pe_print_edata): If there is no .edata section, look for the
3961 export data in some other section.
3962
3963Mon Feb 2 20:05:42 1998 Jason Molenda (crash@bugshack.cygnus.com)
3964
3965 * configure.in: Change version to 2.8.4.
3966 * configure: Regenerated.
3967
3968Mon Feb 2 17:39:39 1998 Steve Haworth <steve@pm.cse.rmit.EDU.AU>
3969
3970 Add tms320c30 support:
3971 * cpu-tic30.c: New file.
3972 * aout-tic30.c: New file.
3973 * coff-tic30.c: New file.
3974 * archures.c (bfd_arch_tic30): Define.
3975 (bfd_tic30_arch): Declare.
3976 (bfd_archures_list): Add bfd_tic30_arch.
3977 * targets.c (bfd_target_vector): Add tic30_aout_vec and
3978 tic30_coff_vec.
3979 * reloc.c (BFD_RELOC_TIC30_LDP): Define.
3980 * coffcode.h (coff_set_arch_mach_hook): Add tic30 case.
3981 (coff_set_flags): Likewise.
3982 * config.bfd (tic30-*-*aout*, tic30-*-*coff*): New targets.
3983 * configure.in (tic30_aout_vec, tic30_coff_vec): New vectors.
3984 * Makefile.am: Rebuild dependencies.
3985 (ALL_MACHINES): Add cpu-tic30.lo.
3986 (ALL_MACHINES_CFILES): Add cpu-tic30.c.
3987 (BFD32_BACKENDS): Add aout-tic30.lo and coff-tic30.lo.
3988 (BFD32_BACKENDS_CFILES): Add aout-tic30.c and coff-tic30.c.
3989 * configure, Makefile.in, bfd-in2.h, libbfd.h: Rebuild.
3990
3991Mon Feb 2 12:25:12 1998 Nick Clifton <nickc@cygnus.com>
3992
3993 * elf32-v850.c (v850_elf_store_addend_in_insn): Allow HI16_S reloc
3994 to lag behind LO16 reloc by a couple of instructions.
3995
3996Mon Feb 2 14:09:46 1998 Ian Lance Taylor <ian@cygnus.com>
3997
3998 * Makefile.am ($(srcdir)/bfd-in2.h): Add dummy command to force
3999 make to reexamine the file timestamp.
4000 ($(srcdir)/libbfd.h, $(srcddir)/libcoff.h): Likewise.
4001
4002 * elf64-alpha.c (ELF_MAXPAGESIZE): Change to 0x10000 from
4003 0x100000.
4004
4005Fri Jan 30 19:07:07 1998 Geoff Keating <geoffk@ozemail.com.au>
4006
4007 * elf32-ppc.c (ppc_elf_create_dynamic_sections): New procedure
4008 to create .dynsbss and .rela.sbss sections.
4009 (ppc_elf_adjust_dynamic_symbol): Put space for small data to be
4010 copied from dynamic objects into .sbss.
4011 (ppc_elf_size_dynamic_sections): Strip .rela.sbss if we don't
4012 use it. Correct typo of .rela.sdata2.
4013 (ppc_elf_finish_dynamic_symbol): Generate reloc to where we
4014 put the data, which may now be in .sbss.
4015 (ppc_elf_relocate_section): A SDAREL16 reloc can be in dynsbss.
4016 (elf_backend_create_dynamic_sections): Define as
4017 ppc_elf_create_dynamic_sections.
4018
4019 * elf32-ppc.c (ppc_elf_check_relocs): Don't emit R_PPC_REL* relocs
4020 against _GLOBAL_OFFSET_TABLE_.
4021 (ppc_elf_relocate_section): Don't emit R_PPC_REL32 relocs in
4022 shared libraries which refer to local symbols. Make sure that the
4023 test for allocating space for a reloc in a shared object is the
4024 same as the test for emitting a reloc.
4025
4026Thu Jan 29 15:55:35 1998 J.J. van der Heijden <J.J.vanderHeijden@student.utwente.nl>
4027
4028 * config.bfd (i[3456]-*-mingw32*): New target.
4029 * acinclude.m4 (BFD_BINARY_OPEN): Check for mingw32.
4030 * aclocal.m4, configure: Rebuild.
4031
4032Wed Jan 28 13:41:26 1998 Ian Lance Taylor <ian@cygnus.com>
4033
4034 * elf.c (_bfd_elf_close_and_cleanup): Only check the strtab if we
4035 have a bfd_object.
4036
4037Tue Jan 27 21:43:55 1998 Richard Henderson <rth@cygnus.com>
4038
4039 Sparc v9 ABI compliant PLT:
4040 * elf64-sparc.c (PLT_HEADER_SIZE): V9 ABI uses 4 entries.
4041 (plt_templates, sparc64_elf_build_plt_entry): Delete.
4042 (LARGE_PLT_THRESHOLD): New define.
4043 (GOT_RESERVED_ENTRIES): V9 ABI only uses 1.
4044 (sparc64_elf_build_plt): New function.
4045 (sparc64_elf_plt_entry_offset): Likewise.
4046 (sparc64_elf_plt_ptr_offset): Likewise.
4047 (sparc64_elf_adjust_dynamic_symbol): Change h->plt_offset to
4048 contain the index for convenience. Skip the initial entries
4049 in .rela.plt.
4050 (sparc64_elf_size_dynamic_sections): Zero the allocated contents
4051 memory for the benefit of .rela.plt.
4052 (sparc64_elf_relocate_section): Call sparc64_elf_plt_entry_offset.
4053 (sparc64_elf_finish_dynamic_symbol): Kill template stuff. Use
4054 sparc64_elf_plt_entry_offset & sparc64_elf_plt_ptr_offset for reloc.
4055 (sparc64_elf_finish_dynamic_sections): DT_PLTGOT points to .plt.
4056 Call sparc64_elf_build_plt.
4057 (elf_backend_want_got_plt): No.
4058 (elf_backend_plt_readonly): No.
4059 (elf_backend_plt_alignment): 8.
4060
4061 * elf.c (_bfd_elf_close_and_cleanup): New function; free the shstrtab.
4062 * elf-bfd.h (_bfd_elf_close_and_cleanup): Declare it.
4063 * elfxx-target.h (bfd_elfNN_close_and_cleanup): Arrange for it
4064 to be called.
4065
4066Tue Jan 27 21:45:15 1998 Jeffrey A Law (law@cygnus.com)
4067
4068 * archures.c (bfd_mach_mips*): Add definitions for various MIPS
4069 processors.
4070 * cpu-mips.c (arch_info_struct): Add mips variants.
4071 * bfd-in2.h: Rebuilt.
4072
4073Tue Jan 27 15:06:04 1998 Nick Clifton <nickc@cygnus.com>
4074
4075 * coff-arm.c (coff_arm_relocate_section): Preserve the contents of
4076 t2a3_b_insn.
4077
4078Tue Jan 27 12:47:27 1998 Robert Lipe <robertl@dgii.com>
4079
4080 * config.bfd (i[3456]86-sco3.2v5*): ELF now the default.
4081 (i[3456]86sco3.2v5*coff): New target.
4082
4083Mon Jan 26 15:41:30 1998 Ian Lance Taylor <ian@cygnus.com>
4084
4085 * bfd-in2.h: Rebuild with changes to chew--tab expansion.
4086
4087Thu Jan 22 21:26:48 1998 Richard Henderson <rth@cygnus.com>
4088
4089 * bfd.c (bfd_get_error_handler): Add orthogonal function.
4090 * bfd-in2.h: Regenerate.
4091
4092Thu Jan 22 21:13:39 1998 Richard Henderson <rth@cygnus.com>
4093
4094 * tekhex.c (tekhex_write_object_contents): Check for no symbols.
4095
4096Wed Jan 21 21:19:03 1998 Ian Lance Taylor <ian@cygnus.com>
4097
4098 * coff-i386.c (coff_i386_rtype_to_howto): If COFF_WITH_PE, don't
4099 adjust addend for an output common symbol (from Jimmy Blair
4100 <jimmyb@wrs.com>). If COFF_WITH_PE, adjust addend for PC relative
4101 defined symbol to counteract adjustment made in generic relocation
4102 code.
4103
4104 * dwarf2.c: Include sysdep.h, not stdio.h and stdlib.h.
4105
4106Wed Jan 21 21:16:06 1998 Manfred Hollstein <manfred@s-direktnet.de>
4107
4108 * coff-m88k.c (GET_SCNDHR_NRELOC): Fix typo in macro name.
4109 (GET_SCNDHR_NLNNO): Likewise.
4110
4111Mon Jan 19 12:49:52 1998 Ian Lance Taylor <ian@cygnus.com>
4112
4113 * cpu-sh.c (arch_info_struct): Correct next field of sh3e.
4114
4115Wed Jan 14 17:23:27 1998 Nick Clifton <nickc@cygnus.com>
4116
4117 * elf32-m32r.c: Add macros to handle NOP insertion.
4118
4119Wed Jan 14 16:15:22 1998 Richard Henderson <rth@cygnus.com>
4120
4121 * xcofflink.c (xcoff_mark_symbol): Don't mark the absolute section.
4122 (xcoff_mark): Likewise.
4123 (xcoff_build_ldsyms): Mark absolute symbols.
4124
4125Wed Jan 14 16:03:11 1998 Richard Henderson <rth@cygnus.com>
4126
4127 * bout.c (b_out_write_object_contents): Sort symbols before output
4128 to keep {CALL,BAL}NAME symbols adjacent.
4129 (b_out_symbol_cmp): New function.
4130
4131For older changes see ChangeLog-9697
4132\f
4133Local Variables:
4134mode: change-log
4135left-margin: 8
4136fill-column: 74
4137version-control: never
4138End:
This page took 0.187899 seconds and 4 git commands to generate.