Lines Matching +full:tx1 +full:- +full:2
1 /* SPDX-License-Identifier: GPL-2.0-or-later */
3 * Twofish Cipher 3-way parallel algorithm (x86_64)
10 .file "twofish-x86_64-asm-3way.S"
22 3-way twofish
93 #define g1g2_3(ab, cd, Tx0, Tx1, Tx2, Tx3, Ty0, Ty1, Ty2, Ty3, x, y) \ argument
95 do16bit_ror(32, mov, xor, Tx0, Tx1, RT0, x ## 0, ab ## 0, x ## 0); \
98 do16bit_ror(32, mov, xor, Tx0, Tx1, RT0, x ## 1, ab ## 1, x ## 1); \
101 do16bit_ror(32, mov, xor, Tx0, Tx1, RT0, x ## 2, ab ## 2, x ## 2); \
102 do16bit_ror(48, mov, xor, Ty1, Ty2, RT0, y ## 2, ab ## 2, y ## 2); \
104 /* G1,2 && G2,2 */ \
113 do16bit_ror(32, xor, xor, Tx2, Tx3, RT0, RT1, ab ## 2, x ## 2); \
114 do16bit_ror(16, xor, xor, Ty3, Ty0, RT0, RT1, ab ## 2, y ## 2); \
115 swap_ab_with_cd(ab ## 2, cd ## 2, RT0);
120 addl k+4*(2*(n))(CTX), x ## d; \
122 addl k+4*(2*(n)+1)(CTX), y ## d; \
133 addl k+4*(2*(n))(CTX), x ## d; \
134 addl k+4*(2*(n)+1)(CTX), y ## d; \
148 enc_round_end(ab ## 2, RX2, RY2, n);
155 dec_round_end(ba ## 2, RX2, RY2, n);
158 encrypt_round3(ab, cd, n*2); \
159 encrypt_round3(ab, cd, (n*2)+1);
162 decrypt_round3(ba, dc, (n*2)+1); \
163 decrypt_round3(ba, dc, (n*2));
182 movq 4*(8+(n))(in), xy ## 2; \
183 xorq w+4*m(CTX), xy ## 2;
192 xorq w+4*m(CTX), xy ## 2; \
193 op ## q xy ## 2, 4*(8+(n))(out);
197 inpack3(RIO, 2, RCD, 2);
200 outunpack3(op, RIO, 2, RAB, 6); \
208 inpack3(RIO, 2, RCD, 6); \
221 outunpack3(mov, RIO, 2, RAB, 2);
242 encrypt_cycle3(RAB, CD, 2);
292 decrypt_cycle3(RAB, CD, 2);