powerpc: enable initial-exec TLS
Summary: Use initial-exec, like other architectures. While here, switch MACHINE_ARCH in lib/libc/Makefile to LIBC_ARCH and consistently use powerpc. Subscribers: imp, #contributor_reviews_base Differential Revision: https://reviews.freebsd.org/D34315 Reviewed by: luporl MFC after: 2 weeks
This commit is contained in:
parent
9835900cb9
commit
884ba43116
@ -63,9 +63,11 @@
|
|||||||
#ifdef __powerpc64__
|
#ifdef __powerpc64__
|
||||||
# define LG_VADDR 64
|
# define LG_VADDR 64
|
||||||
# define LG_SIZEOF_PTR 3
|
# define LG_SIZEOF_PTR 3
|
||||||
|
# define JEMALLOC_TLS_MODEL __attribute__((tls_model("initial-exec")))
|
||||||
#elif defined(__powerpc__)
|
#elif defined(__powerpc__)
|
||||||
# define LG_VADDR 32
|
# define LG_VADDR 32
|
||||||
# define LG_SIZEOF_PTR 2
|
# define LG_SIZEOF_PTR 2
|
||||||
|
# define JEMALLOC_TLS_MODEL __attribute__((tls_model("initial-exec")))
|
||||||
#endif
|
#endif
|
||||||
#ifdef __riscv
|
#ifdef __riscv
|
||||||
# define LG_VADDR 48
|
# define LG_VADDR 48
|
||||||
|
@ -32,7 +32,7 @@ CFLAGS+=-DNO__SCCSID -DNO__RCSID
|
|||||||
LIB=c
|
LIB=c
|
||||||
SHLIB_MAJOR= 7
|
SHLIB_MAJOR= 7
|
||||||
.if ${MK_SSP} != "no" && \
|
.if ${MK_SSP} != "no" && \
|
||||||
(${LIBC_ARCH} == "i386" || ${MACHINE_ARCH:Mpower*} != "")
|
(${LIBC_ARCH} == "i386" || ${LIBC_ARCH:Mpowerpc*} != "")
|
||||||
SHLIB_LDSCRIPT=libc.ldscript
|
SHLIB_LDSCRIPT=libc.ldscript
|
||||||
.else
|
.else
|
||||||
SHLIB_LDSCRIPT=libc_nossp.ldscript
|
SHLIB_LDSCRIPT=libc_nossp.ldscript
|
||||||
@ -57,7 +57,8 @@ CFLAGS+=${CANCELPOINTS_CFLAGS}
|
|||||||
# Use a more efficient TLS model for libc since we can reasonably assume that
|
# Use a more efficient TLS model for libc since we can reasonably assume that
|
||||||
# it will be loaded during program startup.
|
# it will be loaded during program startup.
|
||||||
.if ${LIBC_ARCH} == "aarch64" || ${LIBC_ARCH} == "amd64" || \
|
.if ${LIBC_ARCH} == "aarch64" || ${LIBC_ARCH} == "amd64" || \
|
||||||
${LIBC_ARCH} == "i386" || ${LIBC_ARCH} == "riscv"
|
${LIBC_ARCH} == "i386" || ${LIBC_ARCH} == "riscv" || \
|
||||||
|
${LIBC_ARCH:Mpowerpc*} != ""
|
||||||
CFLAGS+= -ftls-model=initial-exec
|
CFLAGS+= -ftls-model=initial-exec
|
||||||
.endif
|
.endif
|
||||||
|
|
||||||
@ -68,7 +69,7 @@ LDFLAGS+= -nodefaultlibs
|
|||||||
LIBADD+= compiler_rt
|
LIBADD+= compiler_rt
|
||||||
|
|
||||||
.if ${MK_SSP} != "no" && \
|
.if ${MK_SSP} != "no" && \
|
||||||
(${LIBC_ARCH} == "i386" || ${MACHINE_ARCH:Mpower*} != "")
|
(${LIBC_ARCH} == "i386" || ${LIBC_ARCH:Mpowerpc*} != "")
|
||||||
LIBADD+= ssp_nonshared
|
LIBADD+= ssp_nonshared
|
||||||
.endif
|
.endif
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user