Compile octeon kernels with -march=mips64r2
authorvisa <visa@openbsd.org>
Mon, 18 Jul 2022 12:48:35 +0000 (12:48 +0000)
committervisa <visa@openbsd.org>
Mon, 18 Jul 2022 12:48:35 +0000 (12:48 +0000)
Even though -march=octeon seems to work, avoid it for now. It is
not entirely certain that the compiler will not use cnMIPS special
registers accidentally in normal kernel code.

Discussed with and OK miod@

sys/arch/octeon/conf/Makefile.octeon

index 18833f6..2af1422 100644 (file)
@@ -1,4 +1,4 @@
-#      $OpenBSD: Makefile.octeon,v 1.60 2021/12/17 14:59:22 patrick Exp $
+#      $OpenBSD: Makefile.octeon,v 1.61 2022/07/18 12:48:35 visa Exp $
 
 # For instructions on building kernels consult the config(8) and options(4)
 # manual pages.
@@ -34,7 +34,7 @@ CWARNFLAGS=   -Werror -Wall -Wimplicit-function-declaration \
                -Wno-pointer-sign \
                -Wframe-larger-than=2047
 
-CMACHFLAGS=    -mno-abicalls ${ABI} -msoft-float -G 0
+CMACHFLAGS=    -march=mips64r2 -mno-abicalls ${ABI} -msoft-float -G 0
 CMACHFLAGS+=   -ffreestanding ${NOPIE_FLAGS}
 SORTR=         sort -R
 .if ${IDENT:M-DNO_PROPOLICE}