From: Vitaly Chikunov Date: Mon, 10 Feb 2020 05:43:38 +0000 (+0300) Subject: elbrus: Treat __e2k__ as __x86_64__ for Streebog X-Git-Tag: v3.0.0~198 X-Git-Url: http://wagner.pp.ru/gitweb/?a=commitdiff_plain;h=053ecb0a582e2dbfba5ddd6dc8dafb5698051ac4;p=openssl-gost%2Fengine.git elbrus: Treat __e2k__ as __x86_64__ for Streebog lcc emulates x86_64 SIMD intrinsics, so SSE2 code will work as is. Even though in benchmarks it is slightly slower than regular implementation --- diff --git a/gosthash2012.c b/gosthash2012.c index 5ec8ec7..60fa436 100644 --- a/gosthash2012.c +++ b/gosthash2012.c @@ -9,7 +9,7 @@ */ #include "gosthash2012.h" -#ifdef __x86_64__ +#if defined(__x86_64__) || defined(__e2k__) # ifdef _MSC_VER # include # else diff --git a/gosthash2012.h b/gosthash2012.h index 8947ee6..99c9e3d 100644 --- a/gosthash2012.h +++ b/gosthash2012.h @@ -12,7 +12,7 @@ #ifdef __SSE2__ # define __GOST3411_HAS_SSE2__ -# if !defined(__x86_64__) +# if !defined(__x86_64__) && !defined(__e2k__) /* * x86-64 bit Linux and Windows ABIs provide malloc function that returns * 16-byte alignment memory buffers required by SSE load/store instructions.