Commit 19c039ee authored by Reimar Döffinger's avatar Reimar Döffinger

Make mix function more readable.

Compiler output unchanged with gcc 4.4.

Originally committed as revision 24006 to svn://
parent 961b0c41
......@@ -78,10 +78,11 @@ static inline int mix_core(uint32_t multbl[][256], int a, int b, int c, int d){
static inline void mix(av_aes_block state[2], uint32_t multbl[][256], int s1, int s3){
state[0].u32[0] = mix_core(multbl, state[1].u8x4[0][0], state[1].u8x4[s1 ][1], state[1].u8x4[2][2], state[1].u8x4[s3 ][3]);
state[0].u32[1] = mix_core(multbl, state[1].u8x4[1][0], state[1].u8x4[s3-1][1], state[1].u8x4[3][2], state[1].u8x4[s1-1][3]);
state[0].u32[2] = mix_core(multbl, state[1].u8x4[2][0], state[1].u8x4[s3 ][1], state[1].u8x4[0][2], state[1].u8x4[s1 ][3]);
state[0].u32[3] = mix_core(multbl, state[1].u8x4[3][0], state[1].u8x4[s1-1][1], state[1].u8x4[1][2], state[1].u8x4[s3-1][3]);
uint8_t (*src)[4] = state[1].u8x4;
state[0].u32[0] = mix_core(multbl, src[0][0], src[s1 ][1], src[2][2], src[s3 ][3]);
state[0].u32[1] = mix_core(multbl, src[1][0], src[s3-1][1], src[3][2], src[s1-1][3]);
state[0].u32[2] = mix_core(multbl, src[2][0], src[s3 ][1], src[0][2], src[s1 ][3]);
state[0].u32[3] = mix_core(multbl, src[3][0], src[s1-1][1], src[1][2], src[s3-1][3]);
static inline void crypt(AVAES *a, int s, const uint8_t *sbox, uint32_t multbl[][256]){
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment