300adb3110
(elf_write_phdrs): Use precomputed e_phoff rather than making assumptions. (elf_build_phdrs): Disabled, for now. (assign_file_position_for_section): Don't change file offset for SHT_NOBITS. (assign_file_positions_for_symtab_and_strtabs): New function. (struct seg_info): New type. (map_program_segments): New function. (assign_file_positions_except_relocs): For executables, leave section headers &c for last, and properly align all sections with flag SHF_ALLOC set. (prep_headers): No longer abort when EXEC_P is set. (write_shdrs_and_ehdr): Deleted all code relating to program segments. (various): Deleted some unused code, and debugging "malloc(0)" calls. (write_relocs): Cache value of last symbol looked up, to save time if the symbol is referred to repeatedly. (elf_fake_sections): Check only SEC_RELOC flag, not number of relocs. (assign_section_numbers): Likewise.
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.