(nlm_mangle_relocs_func): New macro.
* nlm32-i386.c (nlm_i386_write_reloc): Rewrote correctly.
(nlm_i386_mangle_relocs): New function.
* nlmcode.h (nlm_compute_section_file_positions): Move all common
symbols into the .bss section.
(nlm_set_section_contents): Call the mangle_relocs function.
(nlm_write_object_contents): Treat a reloc against any defined
symbol as an internal reloc. Fix bug in external reloc counting.
Get the offset and debugging type right for .bss symbols. Only
output debugging symbols for defined symbols.
HPPA/ELF README file:
HP PA-RISC support was contributed by the Center for Software Science
at the University of Utah.
This is the status of the hppa/elf code in bfd 2.0 as of January 29, 1993:
1. It generates correct ELF files for all of the input I've given it
so far. I've used this version of libbfd.a to build an hppa/elf
version of gas 1.36 (emits SOM). I've run files as large as 200K
lines of assembly through it.
2. ELF executables that are created *always* have 3 program header
table entries. This is due to the exec() support we have in the
kernel for ELF executables. It expects *exactly* 3 program header
table entries -- one for text, one for data, and one for bss.
Currently, there's no support for any other types of program header
table entries.