Lines Matching +full:v1 +full:- +full:v6

1 /* SPDX-License-Identifier: GPL-2.0-or-later */
5 * https://tools.ietf.org/id/draft-ribose-cfrg-sm4-10.html
14 .arch armv8-a+crypto
40 ld1 {v24.16b-v27.16b}, [x0], #64; \
41 ld1 {v28.16b-v31.16b}, [x0];
209 * x0: 128-bit key
217 ld1 {v1.16b}, [x3];
219 ld1 {v24.16b-v27.16b}, [x4], #64;
220 ld1 {v28.16b-v31.16b}, [x4];
223 eor v0.16b, v0.16b, v1.16b;
226 sm4ekey v1.4s, v0.4s, v25.4s;
227 sm4ekey v2.4s, v1.4s, v26.4s;
231 sm4ekey v6.4s, v5.4s, v30.4s;
232 sm4ekey v7.4s, v6.4s, v31.4s;
234 st1 {v0.16b-v3.16b}, [x1], #64;
235 st1 {v4.16b-v7.16b}, [x1];
237 rev64 v6.4s, v6.4s;
242 rev64 v1.4s, v1.4s;
245 ext v6.16b, v6.16b, v6.16b, #8;
250 ext v1.16b, v1.16b, v1.16b, #8;
253 st1 {v6.16b}, [x2], #16;
258 st1 {v1.16b}, [x2], #16;
294 ld1 {v0.16b-v3.16b}, [x2], #64;
295 ld1 {v4.16b-v7.16b}, [x2], #64;
297 SM4_CRYPT_BLK8(v0, v1, v2, v3, v4, v5, v6, v7);
299 st1 {v0.16b-v3.16b}, [x1], #64;
300 st1 {v4.16b-v7.16b}, [x1], #64;
312 ld1 {v0.16b-v3.16b}, [x2], #64;
313 SM4_CRYPT_BLK4(v0, v1, v2, v3);
314 st1 {v0.16b-v3.16b}, [x1], #64;
379 ld1 {v0.16b-v3.16b}, [x2], #64;
380 ld1 {v4.16b-v7.16b}, [x2];
382 SM4_CRYPT_BLK8(v0, v1, v2, v3, v4, v5, v6, v7);
386 ld1 {RTMP0.16b-RTMP3.16b}, [x2], #64;
387 eor v1.16b, v1.16b, RTMP0.16b;
390 st1 {v0.16b-v3.16b}, [x1], #64;
393 ld1 {RTMP0.16b-RTMP3.16b}, [x2], #64;
395 eor v6.16b, v6.16b, RTMP1.16b;
399 st1 {v4.16b-v7.16b}, [x1], #64;
411 ld1 {v0.16b-v3.16b}, [x2];
413 SM4_CRYPT_BLK4(v0, v1, v2, v3);
416 ld1 {RTMP0.16b-RTMP3.16b}, [x2], #64;
417 eor v1.16b, v1.16b, RTMP0.16b;
422 st1 {v0.16b-v3.16b}, [x1], #64;
493 ld1 {v1.16b, v2.16b, v3.16b}, [x2], #48;
494 ld1 {v4.16b-v7.16b}, [x2];
496 SM4_CRYPT_BLK8(v0, v1, v2, v3, v4, v5, v6, v7);
499 ld1 {RTMP0.16b-RTMP3.16b}, [x2], #64;
501 eor v1.16b, v1.16b, RTMP1.16b;
504 st1 {v0.16b-v3.16b}, [x1], #64;
506 ld1 {RTMP0.16b-RTMP3.16b}, [x2], #64;
509 eor v6.16b, v6.16b, RTMP2.16b;
511 st1 {v4.16b-v7.16b}, [x1], #64;
525 ld1 {v1.16b, v2.16b, v3.16b}, [x2];
527 SM4_CRYPT_BLK4(v0, v1, v2, v3);
529 ld1 {RTMP0.16b-RTMP3.16b}, [x2], #64;
531 eor v1.16b, v1.16b, RTMP1.16b;
534 st1 {v0.16b-v3.16b}, [x1], #64;
588 inc_le128(v1); /* +1 */
593 inc_le128(v6); /* +6 */
596 SM4_CRYPT_BLK8(v0, v1, v2, v3, v4, v5, v6, v7);
598 ld1 {RTMP0.16b-RTMP3.16b}, [x2], #64;
600 eor v1.16b, v1.16b, RTMP1.16b;
603 st1 {v0.16b-v3.16b}, [x1], #64;
605 ld1 {RTMP0.16b-RTMP3.16b}, [x2], #64;
608 eor v6.16b, v6.16b, RTMP2.16b;
610 st1 {v4.16b-v7.16b}, [x1], #64;
624 inc_le128(v1); /* +1 */
628 SM4_CRYPT_BLK4(v0, v1, v2, v3);
630 ld1 {RTMP0.16b-RTMP3.16b}, [x2], #64;
632 eor v1.16b, v1.16b, RTMP1.16b;
635 st1 {v0.16b-v3.16b}, [x1], #64;