S390: Use fPIC to avoid R_390_GOT12 relocation in gcrt1.o.

if glibc is build with -march=z900 | -march=z990,
the startup file gcrt1.o (used if you link with gcc -pg)
contains R_390_GOT12 | R_390_GOT20 relocations.
Thus, an entry in the GOT can be addressed relative to the GOT pointer
with a 12 | 20 bit displacement value.
The startup files should not contain R_390_GOT12,
R_390_GOT20 relocations, but R_390_GOTENT ones.

This patch removes the overrides of pic-ccflag and
the default pic-ccflag = -fPIC in Makeconfig
is used instead to get the R_390_GOTENT relocations in gcrt1.o.

ChangeLog:

	* sysdeps/s390/s390-32/Makefile (pic-ccflag): Remove.
	* sysdeps/s390/s390-64/Makefile: Likewise.
This commit is contained in:
Stefan Liebler 2016-05-11 15:51:25 +02:00
parent 2a1f15b1a9
commit c64a10e544
3 changed files with 5 additions and 4 deletions

View File

@ -1,3 +1,8 @@
2016-05-11 Stefan Liebler <stli@linux.vnet.ibm.com>
* sysdeps/s390/s390-32/Makefile (pic-ccflag): Remove.
* sysdeps/s390/s390-64/Makefile: Likewise.
2016-05-11 H.J. Lu <hongjiu.lu@intel.com>
* sysdeps/i386/i686/multiarch/Makefile (gen-as-const-headers):

View File

@ -1,5 +1,3 @@
pic-ccflag = -fpic
ifeq ($(subdir),gmon)
sysdep_routines += s390-mcount
endif

View File

@ -1,5 +1,3 @@
pic-ccflag = -fpic
ifeq ($(subdir),gmon)
sysdep_routines += s390x-mcount
endif