From 779d36f71d8c3200b1259a34322fa222e3b651ef Mon Sep 17 00:00:00 2001
From: miod <>
Date: Sun, 7 Dec 2014 15:45:44 +0000
Subject: Revert to the use of C code for the basic BN routines (bn_add_words,
 bn_div_words, bn_mul_add_words, bn_mul_words, bn_sqr_words, bn_sub_words) on
 sgi, because the generated assembly code isn't R4000-safe.

---
 src/lib/libcrypto/arch/mips64/Makefile.inc        | 9 +++++++--
 src/lib/libcrypto/crypto/arch/mips64/Makefile.inc | 9 +++++++--
 2 files changed, 14 insertions(+), 4 deletions(-)

(limited to 'src/lib')

diff --git a/src/lib/libcrypto/arch/mips64/Makefile.inc b/src/lib/libcrypto/arch/mips64/Makefile.inc
index 3b8f01e41c..b6fc8971e7 100644
--- a/src/lib/libcrypto/arch/mips64/Makefile.inc
+++ b/src/lib/libcrypto/arch/mips64/Makefile.inc
@@ -1,4 +1,4 @@
-# $OpenBSD: Makefile.inc,v 1.3 2014/11/17 20:31:22 miod Exp $
+# $OpenBSD: Makefile.inc,v 1.4 2014/12/07 15:45:44 miod Exp $
 
 # mips64-specific libcrypto build rules
 
@@ -9,9 +9,14 @@ SSLASM+= aes aes-mips aes-mips
 # bf
 SRCS+= bf_enc.c
 # bn
+.if ${MACHINE} == "sgi"	# because of R4000 support
+SRCS+= bn_asm.c
+.else
 SSLASM+= bn mips bn-mips
+CFLAGS+= -DBN_DIV3W
+.endif
 SSLASM+= bn mips-mont mips-mont
-CFLAGS+= -DOPENSSL_BN_ASM_MONT -DBN_DIV3W
+CFLAGS+= -DOPENSSL_BN_ASM_MONT
 # camellia
 SRCS+= camellia.c cmll_cbc.c cmll_misc.c
 # des
diff --git a/src/lib/libcrypto/crypto/arch/mips64/Makefile.inc b/src/lib/libcrypto/crypto/arch/mips64/Makefile.inc
index 3b8f01e41c..b6fc8971e7 100644
--- a/src/lib/libcrypto/crypto/arch/mips64/Makefile.inc
+++ b/src/lib/libcrypto/crypto/arch/mips64/Makefile.inc
@@ -1,4 +1,4 @@
-# $OpenBSD: Makefile.inc,v 1.3 2014/11/17 20:31:22 miod Exp $
+# $OpenBSD: Makefile.inc,v 1.4 2014/12/07 15:45:44 miod Exp $
 
 # mips64-specific libcrypto build rules
 
@@ -9,9 +9,14 @@ SSLASM+= aes aes-mips aes-mips
 # bf
 SRCS+= bf_enc.c
 # bn
+.if ${MACHINE} == "sgi"	# because of R4000 support
+SRCS+= bn_asm.c
+.else
 SSLASM+= bn mips bn-mips
+CFLAGS+= -DBN_DIV3W
+.endif
 SSLASM+= bn mips-mont mips-mont
-CFLAGS+= -DOPENSSL_BN_ASM_MONT -DBN_DIV3W
+CFLAGS+= -DOPENSSL_BN_ASM_MONT
 # camellia
 SRCS+= camellia.c cmll_cbc.c cmll_misc.c
 # des
-- 
cgit v1.2.3-55-g6feb