diff options
author | Andy Polyakov <appro@openssl.org> | 2005-01-24 14:22:05 +0000 |
---|---|---|
committer | Andy Polyakov <appro@openssl.org> | 2005-01-24 14:22:05 +0000 |
commit | 8359421d9047fea25006c2e34868a395d7a402be (patch) | |
tree | c59cd656e6619874917a5b6072ac5c8d2db3532d /crypto/aes/aes.h | |
parent | efde5230f1d7bef47a1ee9e33d5bda05cc61ebce (diff) |
Default to AES u32 being unsinged int and not long. This improves cache
locality on 64-bit platforms (and fixes IA64 assembler-empowered build:-).
The choice is guarded by newly introduced AES_LONG macro, which needs
to be defined only on 16-bit platforms which we don't support (not that
I know of). Meaning that one could as well skip long option altogether.
Diffstat (limited to 'crypto/aes/aes.h')
-rw-r--r-- | crypto/aes/aes.h | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/crypto/aes/aes.h b/crypto/aes/aes.h index 20c4dbc0f7..9ffcc9ff2a 100644 --- a/crypto/aes/aes.h +++ b/crypto/aes/aes.h @@ -72,7 +72,11 @@ extern "C" { /* This should be a hidden type, but EVP requires that the size be known */ struct aes_key_st { +#ifdef AES_LONG unsigned long rd_key[4 *(AES_MAXNR + 1)]; +#else + unsigned int rd_key[4 *(AES_MAXNR + 1)]; +#endif int rounds; }; typedef struct aes_key_st AES_KEY; |