| 53 | } |
| 54 | |
| 55 | static void subshift(uint8_t s0[2][16], int s, const uint8_t *box){ |
| 56 | uint8_t (*s1)[16]= s0[0] - s; |
| 57 | uint8_t (*s3)[16]= s0[0] + s; |
| 58 | s0[0][0]=box[s0[1][ 0]]; s0[0][ 4]=box[s0[1][ 4]]; s0[0][ 8]=box[s0[1][ 8]]; s0[0][12]=box[s0[1][12]]; |
| 59 | s1[0][3]=box[s1[1][ 7]]; s1[0][ 7]=box[s1[1][11]]; s1[0][11]=box[s1[1][15]]; s1[0][15]=box[s1[1][ 3]]; |
| 60 | s0[0][2]=box[s0[1][10]]; s0[0][10]=box[s0[1][ 2]]; s0[0][ 6]=box[s0[1][14]]; s0[0][14]=box[s0[1][ 6]]; |
| 61 | s3[0][1]=box[s3[1][13]]; s3[0][13]=box[s3[1][ 9]]; s3[0][ 9]=box[s3[1][ 5]]; s3[0][ 5]=box[s3[1][ 1]]; |
| 62 | } |
| 63 | |
| 64 | static inline int mix_core(uint32_t multbl[4][256], int a, int b, int c, int d){ |
| 65 | #if CONFIG_SMALL |
no outgoing calls
no test coverage detected