This is the mail archive of the libc-alpha@sourceware.org mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Is DT_TEXTREL supposed to be supported on s390 31-bit or not?


On Thu, Dec 17, 2009 at 11:18:03AM +0100, Martin Schwidefsky wrote:
> Ok, I've reproduced the problem. The load of a non-pic library compiled
> with -march=z9-109 gives the following error:
> 
> error while loading shared libraries: <lib>: unexpected reloc type 0x13
> 
> Reloc type 0x13 is indeed R_390_PC32DBL. The 32-bit variant
> of dl-machine.h does not handle this relocation which is used to access
> global variables for -m31 -march=z9-109. The following patches fixes
> the problem for me:
> 
> 2009-12-17  Martin Schwidefsky  <schwidefsky@de.ibm.com>
> 
> 	* sysdeps/s390/s390-32/dl-machine.h (elf_machine_rela): Handle
> 	R_390_PC32DBL. Remove unneeded R_390_PLT16DBL.
> 	* sysdeps/s390/s390-32/dl-machine.h (elf_machine_rela): Remove

                       ^^^^^^^ s390-64 here.

> 	unneeded R_390_PLT16DBL and R_390_PLT32DBL.

Looks good to me.  From a quick glance at bfd/elf*s390*.c, the R_390_PLT*DBL relocations indeed
can't be present in allocated DSO sections, and R_390_PC32DBL is the only
one unhandled on s390-32.  

	Jakub


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]