Hi,
On 29.08.2012 17:18, Andy Polyakov wrote:
Hi,
There are alternatives for
x86[_64] platforms [besides AES-NI], namely SSSE3 vpaes-x86[_64] and
bsaes-x86_64 modules. These are accessible through EVP and provide
adequate performance (in comparison to aes_core.c that is, not AES-NI).
Thanks for pointing me at vpaes code. I've tested it and got two
contrary results: on Core2, all the timing are worse (619-510-840-591)
than mine (279-400-732-385). On Core i5 Lynnfield, the results are best
I've ever seen (354-242-442-291). I guess the difference is because of
use of pshufb instruction. Anyway, vpaes is very interesting code.
It's not the fact that tables reside in code segment that requires extra
register, but the fact that the code itself is *position independent*. I
mean you can 'mov ebp,_Td2[ebp*]' even if _Td2 is in code segment
Andy, unfortunately I don't quite understand. Can you please show me the
small example on perlasm of accessing constant table if there no free
register?
--
SY / C4acT/\uBo Pavel Semjanov
_ _ _ http://www.semjanov.com
| | |-| |_|_| |-|
______________________________________________________________________
OpenSSL Project http://www.openssl.org
Development Mailing List [email protected]
Automated List Manager [email protected]