summaryrefslogtreecommitdiff
path: root/lib/csu
diff options
context:
space:
mode:
authorVisa Hankala <visa@cvs.openbsd.org>2019-04-19 08:59:41 +0000
committerVisa Hankala <visa@cvs.openbsd.org>2019-04-19 08:59:41 +0000
commit006c40ffca12a26e3a47be1c111f0bbff412877e (patch)
tree824fc1504988409544f7e6c383fbd75146fa7c22 /lib/csu
parent4cf1addc3bda32ccaa2e897d93c18810768815fd (diff)
Prevent clang from using builtins and jump tables in _dl_boot_bind()
on mips64. They need relocation and consequently cannot be used in that function. OK kettenis@
Diffstat (limited to 'lib/csu')
-rw-r--r--lib/csu/Makefile7
1 files changed, 6 insertions, 1 deletions
diff --git a/lib/csu/Makefile b/lib/csu/Makefile
index a1c31e98b69..041aff66101 100644
--- a/lib/csu/Makefile
+++ b/lib/csu/Makefile
@@ -1,4 +1,4 @@
-# $OpenBSD: Makefile,v 1.29 2019/02/24 12:57:14 kn Exp $
+# $OpenBSD: Makefile,v 1.30 2019/04/19 08:59:40 visa Exp $
OBJS= crt0.o gcrt0.o
OBJS+= crtbegin.o crtend.o
@@ -40,6 +40,11 @@ RCFLAGS=-DRCRT0
RCFLAGS+=-fno-stack-protector
.endif
+# Prevent use of builtins and jump tables in _dl_boot_bind().
+.if ${MACHINE_CPU} == "mips64"
+RCFLAGS+=-fno-builtin -fno-jump-tables
+.endif
+
DEPS = ${OBJS:.o=.d}
DFLAGS += -MF ${.TARGET:R}.d