git: b0fa09a0a7e3 - main - linux(4): Fix amd64 gcc build.
Dmitry Chagin
dchagin at FreeBSD.org
Mon Jul 26 19:28:37 UTC 2021
The branch main has been updated by dchagin:
URL: https://cgit.FreeBSD.org/src/commit/?id=b0fa09a0a7e30f301cc58750dedb3d88ec39992d
commit b0fa09a0a7e30f301cc58750dedb3d88ec39992d
Author: Dmitry Chagin <dchagin at FreeBSD.org>
AuthorDate: 2021-07-26 19:28:21 +0000
Commit: Dmitry Chagin <dchagin at FreeBSD.org>
CommitDate: 2021-07-26 19:28:21 +0000
linux(4): Fix amd64 gcc build.
Do not specify memory model and mregparm for amd64, it's only
available on IA-32 architecture.
Reported by: jhb, jrtc27
MFC after: 2 weeks
---
sys/modules/linux/Makefile | 8 +++++---
sys/modules/linux64/Makefile | 2 +-
2 files changed, 6 insertions(+), 4 deletions(-)
diff --git a/sys/modules/linux/Makefile b/sys/modules/linux/Makefile
index bf4449e0012e..373ec3dcae91 100644
--- a/sys/modules/linux/Makefile
+++ b/sys/modules/linux/Makefile
@@ -60,19 +60,21 @@ linux${SFX}_assym.h: linux${SFX}_genassym.o
sh ${SYSDIR}/kern/genassym.sh linux${SFX}_genassym.o > ${.TARGET}
.if ${MACHINE_CPUARCH} == "amd64"
-VDSOFLAGS=-DCOMPAT_FREEBSD32 -DCOMPAT_LINUX32 -m32 -mcmodel=small
+VDSOFLAGS=-DCOMPAT_FREEBSD32 -DCOMPAT_LINUX32 -m32
+.else
+VDSOFLAGS=-mregparm=0
.endif
linux${SFX}_locore.o: linux${SFX}_assym.h assym.inc
${CC} -c -x assembler-with-cpp -DLOCORE -fPIC -pipe -O2 -Werror \
- -msoft-float -mregparm=0 \
+ -msoft-float \
-fno-common -nostdinc -fasynchronous-unwind-tables \
-fno-omit-frame-pointer -foptimize-sibling-calls ${VDSOFLAGS} \
-fno-stack-protector -I. -I${SYSDIR} -I${SRCTOP}/include \
${.IMPSRC} -o ${.TARGET}
linux${SFX}_vdso_gtod.o: linux_vdso_gtod.inc ${VDSODEPS}
- ${CC} -c -fPIC -pipe -O2 -Werror -msoft-float -mregparm=0 \
+ ${CC} -c -fPIC -pipe -O2 -Werror -msoft-float \
-fno-common -nostdinc -fasynchronous-unwind-tables \
-fno-omit-frame-pointer -foptimize-sibling-calls ${VDSOFLAGS} \
-fno-stack-protector -I. -I${SYSDIR} -I${SRCTOP}/include \
diff --git a/sys/modules/linux64/Makefile b/sys/modules/linux64/Makefile
index b85203a9ce93..17192b4f18aa 100644
--- a/sys/modules/linux64/Makefile
+++ b/sys/modules/linux64/Makefile
@@ -31,7 +31,7 @@ linux_assym.h: linux_genassym.o
sh ${SYSDIR}/kern/genassym.sh linux_genassym.o > ${.TARGET}
.if ${MACHINE_CPUARCH} == "amd64"
-VDSOFLAGS=-mregparm=0 -mcmodel=small -msoft-float
+VDSOFLAGS=-mcmodel=small -msoft-float
VDSODEPS=linux_vdso_gettc_x86.inc
.elif ${MACHINE_CPUARCH} == "aarch64"
# The Linux uses tiny memory model, but our ld does not know about
More information about the dev-commits-src-all
mailing list