1*4882a593Smuzhiyundiff -urN -x .git orig/thirdparty/libressl/avoid-BSWAP-assembly-for-ARM-v6.patch patched/thirdparty/libressl/avoid-BSWAP-assembly-for-ARM-v6.patch 2*4882a593Smuzhiyun--- orig/thirdparty/libressl/avoid-BSWAP-assembly-for-ARM-v6.patch 1970-01-01 09:00:00.000000000 +0900 3*4882a593Smuzhiyun+++ patched/thirdparty/libressl/avoid-BSWAP-assembly-for-ARM-v6.patch 2020-08-07 23:14:46.196764271 +0900 4*4882a593Smuzhiyun@@ -0,0 +1,30 @@ 5*4882a593Smuzhiyun+This patch was imported from the libressl potable. 6*4882a593Smuzhiyun+https://github.com/libressl-portable/portable/commit/a9332ccecfce63bf54924e70c11f420edd3ae312 7*4882a593Smuzhiyun+ 8*4882a593Smuzhiyun+From a9332ccecfce63bf54924e70c11f420edd3ae312 Mon Sep 17 00:00:00 2001 9*4882a593Smuzhiyun+From: Brent Cook <bcook@openbsd.org> 10*4882a593Smuzhiyun+Date: Sun, 17 Jul 2016 18:12:23 -0500 11*4882a593Smuzhiyun+Subject: [PATCH] avoid BSWAP assembly for ARM <= v6 12*4882a593Smuzhiyun+ 13*4882a593Smuzhiyun+diff -urN orig/crypto/modes/modes_lcl.h patched/crypto/modes/modes_lcl.h 14*4882a593Smuzhiyun+--- orig/crypto/modes/modes_lcl.h 2018-11-18 21:27:10.000000000 +0900 15*4882a593Smuzhiyun++++ patched/crypto/modes/modes_lcl.h 2020-08-07 23:11:01.960764745 +0900 16*4882a593Smuzhiyun+@@ -45,14 +45,16 @@ 17*4882a593Smuzhiyun+ asm ("bswapl %0" \ 18*4882a593Smuzhiyun+ : "+r"(ret)); ret; }) 19*4882a593Smuzhiyun+ # elif (defined(__arm__) || defined(__arm)) && !defined(__STRICT_ALIGNMENT) 20*4882a593Smuzhiyun+-# define BSWAP8(x) ({ u32 lo=(u64)(x)>>32,hi=(x); \ 21*4882a593Smuzhiyun++# if (__ARM_ARCH >= 6) 22*4882a593Smuzhiyun++# define BSWAP8(x) ({ u32 lo=(u64)(x)>>32,hi=(x); \ 23*4882a593Smuzhiyun+ asm ("rev %0,%0; rev %1,%1" \ 24*4882a593Smuzhiyun+ : "+r"(hi),"+r"(lo)); \ 25*4882a593Smuzhiyun+ (u64)hi<<32|lo; }) 26*4882a593Smuzhiyun+-# define BSWAP4(x) ({ u32 ret; \ 27*4882a593Smuzhiyun++# define BSWAP4(x) ({ u32 ret; \ 28*4882a593Smuzhiyun+ asm ("rev %0,%1" \ 29*4882a593Smuzhiyun+ : "=r"(ret) : "r"((u32)(x))); \ 30*4882a593Smuzhiyun+ ret; }) 31*4882a593Smuzhiyun++# endif 32*4882a593Smuzhiyun+ # endif 33*4882a593Smuzhiyun+ #endif 34*4882a593Smuzhiyun+ #endif 35