There is more code committed. Check-out or wait for *tomorrow* openssl-SNAP-20120919 snapshot. There is SmartMIPS AES code (pass -msmartmips to Configure) and Configure accepts double dash as compiler options. Please double-check and optionally post performance for new AES code.
I've done some speed tests incase anyone is interested. linux-generic32, then with 2 levels of asm optimizations, mips32r2 and finally smartmips. Nice performance boost for smartmips AES. ./openssl-generic32 speed aes-128-cbc aes-256-cbc sha rsa1024 rsa2048 OpenSSL 1.1.0-dev xx XXX xxxx built on: Tue Sep 18 10:23:22 EDT 2012 options:bn(64,32) rc4(ptr,char) des(idx,cisc,16,long) aes(partial) idea(int) blowfish(ptr) compiler: mipsel-linux-gcc -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H --sysroot=/opt/uclibc -D_FILE_OFFSET_BITS=32 -march=4ksd -DTERMIO -O3 -fomit-frame-pointer -Wall The 'numbers' are in 1000s of bytes per second processed. type 16 bytes 64 bytes 256 bytes 1024 bytes 8192 bytes sha1 201.48k 670.38k 1792.85k 3054.31k 3559.85k aes-128 cbc 1188.95k 1256.10k 1274.56k 1273.03k 1170.29k aes-256 cbc 903.22k 947.09k 953.32k 949.16k 889.96k sha256 151.84k 488.38k 987.51k 1329.50k 1428.14k sha512 3938.87 15.79k 21.60k 29.06k 32.34k sign verify sign/s verify/s rsa 1024 bits 0.342000s 0.010615s 2.9 94.2 rsa 2048 bits 1.328750s 0.027632s 0.8 36.2 ./openssl-mips32r2 speed aes-128-cbc aes-256-cbc sha rsa1024 rsa2048 OpenSSL 1.1.0-dev xx XXX xxxx built on: Tue Sep 18 10:25:23 EDT 2012 options:bn(64,32) rc4(ptr,char) des(idx,cisc,16,long) aes(partial) idea(int) blowfish(ptr) compiler: mipsel-linux-gcc -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H --sysroot=/opt/uclibc -D_FILE_OFFSET_BITS=32 -mips32r2 -mabi=32 -DTERMIO -O3 -Wall -DOPENSSL_BN_ASM_MONT -DSHA1_ASM -DSHA256_ASM -DAES_ASM The 'numbers' are in 1000s of bytes per second processed. type 16 bytes 64 bytes 256 bytes 1024 bytes 8192 bytes sha1 302.52k 980.49k 2510.76k 4113.38k 4575.10k aes-128 cbc 1342.30k 1438.87k 1465.41k 1471.02k 1339.02k aes-256 cbc 1005.29k 1057.55k 1072.65k 1073.67k 996.10k sha256 248.80k 693.67k 1449.93k 1986.76k 2136.45k sha512 3952.00 15.81k 21.52k 29.06k 32.23k sign verify sign/s verify/s rsa 1024 bits 0.128228s 0.008619s 7.8 116.0 rsa 2048 bits 1.055000s 0.023870s 0.9 41.9 ./openssl-smartmips speed aes-128-cbc aes-256-cbc sha rsa1024 rsa2048 OpenSSL 1.1.0-dev xx XXX xxxx built on: Tue Sep 18 10:27:09 EDT 2012 options:bn(64,32) rc4(ptr,char) des(idx,cisc,16,long) aes(partial) idea(int) blowfish(ptr) compiler: mipsel-linux-gcc -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H --sysroot=/opt/uclibc -D_FILE_OFFSET_BITS=32 -march=4ksd -msmartmips -mabi=32 -DTERMIO -O3 -Wall -DOPENSSL_BN_ASM_MONT -DSHA1_ASM -DSHA256_ASM -DAES_ASM The 'numbers' are in 1000s of bytes per second processed. type 16 bytes 64 bytes 256 bytes 1024 bytes 8192 bytes sha1 250.35k 1037.93k 2636.80k 4267.35k 4713.80k aes-128 cbc 1686.07k 1835.78k 1881.77k 1880.28k 1701.00k aes-256 cbc 1289.04k 1373.28k 1397.96k 1397.88k 1295.48k sha256 187.98k 624.13k 1368.54k 1951.04k 2135.38k sha512 3954.52 15.76k 21.67k 29.16k 32.34k sign verify sign/s verify/s rsa 1024 bits 0.128846s 0.008381s 7.8 119.3 rsa 2048 bits 1.033000s 0.023841s 1.0 41.9 Here was my build procedure for those that are interested: export PATH=$PATH:/opt/uclibc/usr/bin export CROSS_COMPILE=mipsel-linux- ./Configure linux-generic32 --sysroot=/opt/uclibc -D_FILE_OFFSET_BITS=32 -march=4ksd && \ make && \ mv apps/openssl apps/openssl-generic32 && \ make clean && \ ./Configure linux-mips32 --sysroot=/opt/uclibc -D_FILE_OFFSET_BITS=32 -mips32r2 && \ make && \ mv apps/openssl apps/openssl-mips32r2 && \ make clean && \ ./Configure linux-mips32 --sysroot=/opt/uclibc -D_FILE_OFFSET_BITS=32 -march=4ksd -msmartmips && \ make && \ mv apps/openssl apps/openssl-smartmips -Brad ______________________________________________________________________ OpenSSL Project http://www.openssl.org Development Mailing List openssl-dev@openssl.org Automated List Manager majord...@openssl.org