Special names tha ld needs to recognize for hppa64-hp-hpux11.X

law@redhat.com law@redhat.com
Tue Mar 5 09:57:00 GMT 2002


In message <200202262255.g1QMtqDj004537@hiauly1.hia.nrc.ca>, "John David Anglin
" writes:
 > Here is a revised version of the patch to fix the '-static' linking
 > problems found under hppa64-hp-hpux11.X.  The issues fixed are:
 > 
 >   1) Dynamic loader symbols need to be ignored.
 >   2) Various problems with respect to .opd creation and the DLT entries
 >      for local symbols are fixed.  The most serious issues were that sometim
 > es
 >      we didn't create the DLT entry, and the addend was being used incorrect
 > ly.
 >   3) In reviewing the code, I noted that the selector usage for various
 >      relocations was not consistent with that specified in the HP
 >      "Processor-Specific ELF for PA-RISC, Version 1.43" document.
 >      This involved changing various relocations to L/R selectors
 >      from LR/RR selectors.  I have updated the assembler LR/RR table to
 >      reflect this change.  I believe that with this patch selector
 >      usage now pretty much conforms to that specified in the above document.
 > 
 > I have done bootstraps and checks of gcc using these tools for
 > hppa64-hp-hpux11.00 and hppa64-hp-hpux11.11.  I have also been doing
 > hppa-linux builds using tools with this patch for the past couple
 > of weeks.  Oh, I can now link programs with '-static'.
 > 
 > Please install if OK.
 > 
 > Dave
 > -- 
 > J. David Anglin                                  dave.anglin@nrc.ca
 > National Research Council of Canada              (613) 990-0752 (FAX: 952-66
 > 05)
 > 
 > 2002-02-26  John David Anglin  <dave@hiauly1.hia.nrc.ca>
 > 
 > 	* bfd/elf-hppa.h (elf_hppa_is_dynamic_loader_symbol): New function.
 > 	(elf_hppa_relocate_section): Ignore undefined dynamic loader symbols.
 > 	(elf_hppa_final_link_relocate): Correct relocations for indirect
 > 	references to local data through the DLT.  Fix .opd creation for
 > 	local symbols using R_PARISC_LTOFF_FPTR32 and R_PARISC_FPTR64
 > 	relocations.  Use e_lsel selector for R_PARISC_DLTIND21L,
 > 	R_PARISC_LTOFF_FPTR21L and R_PARISC_LTOFF_TP21L as per
 > 	"Processor-Specific ELF for PA_RISC, Version 1.43" document.
 > 	Similarly, use e_rsel for DLT and LTOFF 'R' relocations.
 > 	* bfd/elf32-hppa.c (final_link_relocate): Revise relocation selectors
 > 	as per "Processor-Specific ELF for PA_RISC, Version 1.43" document.
 > 	* gas/config/tc-hppa.c (md_apply_fix3): Add cast.
 > 	(hppa_fix_adjustable): Adjust list of selectors using e_lrsel and
 > 	e_rrsel.
Thanks.  I went ahead and installed your patch.

jeff




More information about the Binutils mailing list