65 uint64_t Aba, Abe, Abi, Abo, Abu;
66 uint64_t Aga, Age, Agi, Ago, Agu;
67 uint64_t Aka, Ake, Aki, Ako, Aku;
68 uint64_t Ama, Ame, Ami, Amo, Amu;
69 uint64_t Asa, Ase, Asi, Aso, Asu;
70 uint64_t BCa, BCe, BCi, BCo, BCu;
71 uint64_t Da, De, Di, Do, Du;
72 uint64_t Eba, Ebe, Ebi, Ebo, Ebu;
73 uint64_t Ega, Ege, Egi, Ego, Egu;
74 uint64_t Eka, Eke, Eki, Eko, Eku;
75 uint64_t Ema, Eme, Emi, Emo, Emu;
76 uint64_t Esa, Ese, Esi, Eso, Esu;
105 for( round = 0; round <
NROUNDS; round += 2 )
108 BCa = Aba^Aga^Aka^Ama^Asa;
109 BCe = Abe^Age^Ake^Ame^Ase;
110 BCi = Abi^Agi^Aki^Ami^Asi;
111 BCo = Abo^Ago^Ako^Amo^Aso;
112 BCu = Abu^Agu^Aku^Amu^Asu;
115 Da = BCu^
ROL(BCe, 1);
116 De = BCa^
ROL(BCi, 1);
117 Di = BCe^
ROL(BCo, 1);
118 Do = BCi^
ROL(BCu, 1);
119 Du = BCo^
ROL(BCa, 1);
131 Eba = BCa ^((~BCe)& BCi );
132 Eba ^= (uint64_t)KeccakF_RoundConstants[round];
133 Ebe = BCe ^((~BCi)& BCo );
134 Ebi = BCi ^((~BCo)& BCu );
135 Ebo = BCo ^((~BCu)& BCa );
136 Ebu = BCu ^((~BCa)& BCe );
148 Ega = BCa ^((~BCe)& BCi );
149 Ege = BCe ^((~BCi)& BCo );
150 Egi = BCi ^((~BCo)& BCu );
151 Ego = BCo ^((~BCu)& BCa );
152 Egu = BCu ^((~BCa)& BCe );
164 Eka = BCa ^((~BCe)& BCi );
165 Eke = BCe ^((~BCi)& BCo );
166 Eki = BCi ^((~BCo)& BCu );
167 Eko = BCo ^((~BCu)& BCa );
168 Eku = BCu ^((~BCa)& BCe );
180 Ema = BCa ^((~BCe)& BCi );
181 Eme = BCe ^((~BCi)& BCo );
182 Emi = BCi ^((~BCo)& BCu );
183 Emo = BCo ^((~BCu)& BCa );
184 Emu = BCu ^((~BCa)& BCe );
196 Esa = BCa ^((~BCe)& BCi );
197 Ese = BCe ^((~BCi)& BCo );
198 Esi = BCi ^((~BCo)& BCu );
199 Eso = BCo ^((~BCu)& BCa );
200 Esu = BCu ^((~BCa)& BCe );
203 BCa = Eba^Ega^Eka^Ema^Esa;
204 BCe = Ebe^Ege^Eke^Eme^Ese;
205 BCi = Ebi^Egi^Eki^Emi^Esi;
206 BCo = Ebo^Ego^Eko^Emo^Eso;
207 BCu = Ebu^Egu^Eku^Emu^Esu;
210 Da = BCu^
ROL(BCe, 1);
211 De = BCa^
ROL(BCi, 1);
212 Di = BCe^
ROL(BCo, 1);
213 Do = BCi^
ROL(BCu, 1);
214 Du = BCo^
ROL(BCa, 1);
226 Aba = BCa ^((~BCe)& BCi );
227 Aba ^= (uint64_t)KeccakF_RoundConstants[round+1];
228 Abe = BCe ^((~BCi)& BCo );
229 Abi = BCi ^((~BCo)& BCu );
230 Abo = BCo ^((~BCu)& BCa );
231 Abu = BCu ^((~BCa)& BCe );
243 Aga = BCa ^((~BCe)& BCi );
244 Age = BCe ^((~BCi)& BCo );
245 Agi = BCi ^((~BCo)& BCu );
246 Ago = BCo ^((~BCu)& BCa );
247 Agu = BCu ^((~BCa)& BCe );
259 Aka = BCa ^((~BCe)& BCi );
260 Ake = BCe ^((~BCi)& BCo );
261 Aki = BCi ^((~BCo)& BCu );
262 Ako = BCo ^((~BCu)& BCa );
263 Aku = BCu ^((~BCa)& BCe );
275 Ama = BCa ^((~BCe)& BCi );
276 Ame = BCe ^((~BCi)& BCo );
277 Ami = BCi ^((~BCo)& BCu );
278 Amo = BCo ^((~BCu)& BCa );
279 Amu = BCu ^((~BCa)& BCe );
291 Asa = BCa ^((~BCe)& BCi );
292 Ase = BCe ^((~BCi)& BCo );
293 Asi = BCi ^((~BCo)& BCu );
294 Aso = BCo ^((~BCu)& BCa );
295 Asu = BCu ^((~BCa)& BCe );