| /freebsd/sys/contrib/openzfs/module/icp/asm-aarch64/blake3/ |
| H A D | b3_aarch64_sse2.S | 1 // SPDX-License-Identifier: CDDL-1.0 10 * or https://opensource.org/licenses/CDDL-1.0. 24 * Based on BLAKE3 v1.3.1, https://github.com/BLAKE3-team/BLAKE3 25 * Copyright (c) 2019-2022 Samuel Neves and Matthew Krupcale 26 * Copyright (c) 2022-2023 Tino Reichardt <milky-zfs@mcmilk.de> 28 * This is converted assembly: SSE2 -> ARMv8-A 29 * Used tools: SIMDe https://github.com/simd-everywhere/simde 32 * see: https://github.com/mcmilk/BLAKE3-tests/blob/master/contrib/simde.sh 69 .cfi_offset w19, -16 70 .cfi_offset w30, -24 [all …]
|
| H A D | b3_aarch64_sse41.S | 1 // SPDX-License-Identifier: CDDL-1.0 10 * or https://opensource.org/licenses/CDDL-1.0. 24 * Based on BLAKE3 v1.3.1, https://github.com/BLAKE3-team/BLAKE3 25 * Copyright (c) 2019-2022 Samuel Neves 26 * Copyright (c) 2022-2023 Tino Reichardt <milky-zfs@mcmilk.de> 28 * This is converted assembly: SSE4.1 -> ARMv8-A 29 * Used tools: SIMDe https://github.com/simd-everywhere/simde 32 * see: https://github.com/mcmilk/BLAKE3-tests/blob/master/contrib/simde.sh 69 .cfi_offset w19, -16 70 .cfi_offset w30, -24 [all …]
|
| /freebsd/crypto/openssl/crypto/sha/asm/ |
| H A D | sha256-riscv64-zvkb-zvknha_or_zvknhb.pl | 2 # This file is dual-licensed, meaning that you can use it under your 38 # The generated code of this file depends on the following RISC-V extensions: 39 # - RV64I 40 # - RISC-V Vector ('V') with VLEN >= 128 41 # - RISC-V Vector Cryptography Bit-manipulation extension ('Zvkb') 42 # - RISC-V Vector SHA-2 Secure Hash extension ('Zvknha' or 'Zvknhb') 63 my ($V0, $V1, $V2, $V3, $V4, $V5, $V6, $V7, 126 # We use index-load with the following index pattern at v26. 130 # little-endian value to cover the 4xi8 index. 139 # Use index-load to get {f,e,b,a},{h,g,d,c} [all …]
|
| H A D | keccak1600p8-ppc.pl | 2 # Copyright 2017-2020 The OpenSSL Project Authors. All Rights Reserved. 16 # Keccak-1600 for PowerISA 2.07. 21 # disjoint Rho and Pi. The module is ABI-bitness- and endian-neutral. 23 # buffer for r=1088, which matches SHA3-256. This is 17% better than 50 ( $xlate="${dir}ppc-xlate.pl" and -f $xlate ) or 51 ( $xlate="${dir}../../perlasm/ppc-xlate.pl" and -f $xlate) or 52 die "can't locate ppc-xlate.pl"; 57 $FRAME=6*$SIZE_T+13*16; # 13*16 is for v20-v31 offload 67 # v1 A[0][1] A[1][1] 73 # v6 A[2][1] A[3][1] [all …]
|
| /freebsd/sys/crypto/openssl/aarch64/ |
| H A D | sm3-armv8.S | 1 /* Do not modify. This file is auto-generated from sm3-armv8.pl. */ 2 // Copyright 2021-2025 The OpenSSL Project Authors. All Rights Reserved. 21 ld1 {v5.4s,v6.4s}, [x0] 23 rev64 v6.4s, v6.4s 25 ext v6.16b, v6.16b, v6.16b, #8 32 ld1 {v0.4s,v1.4s,v2.4s,v3.4s}, [x1], #64 36 mov v19.16b, v6.16b 40 rev32 v1.16b, v1.16b 47 ext v4.16b, v1.16b, v2.16b, #12 49 ext v22.16b, v0.16b, v1.16b, #12 [all …]
|
| H A D | bsaes-armv8.S | 1 /* Do not modify. This file is auto-generated from bsaes-armv8.pl. */ 2 // Copyright 2021-2025 The OpenSSL Project Authors. All Rights Reserved. 15 // This implementation is a translation of bsaes-armv7 for AArch64. 20 // A lot of hand-scheduling has been performed. Consequently, this code 37 // x9 -> key (previously expanded using _bsaes_key_convert) 39 // v0-v7 input data 41 // x9-x11 corrupted 42 // other general-purpose registers preserved 43 // v0-v7 output data 44 // v11-v15 preserved [all …]
|
| H A D | ghashv8-armx.S | 1 /* Do not modify. This file is auto-generated from ghashv8-armx.pl. */ 5 .arch armv8-a+crypto 30 ext v16.16b,v20.16b,v20.16b,#8 //Karatsuba pre-processing 34 pmull v1.1q,v16.1d,v16.1d 36 ext v17.16b,v0.16b,v2.16b,#8 //Karatsuba post-processing 38 eor v1.16b,v1.16b,v17.16b 39 eor v1.16b,v1.16b,v18.16b 42 ins v2.d[0],v1.d[1] 43 ins v1.d[1],v0.d[0] 44 eor v0.16b,v1.16b,v18.16b [all …]
|
| H A D | aesv8-armx.S | 1 /* Do not modify. This file is auto-generated from aesv8-armx.pl. */ 5 .arch armv8-a+crypto 11 .long 0x0c0f0e0d,0x0c0f0e0d,0x0c0f0e0d,0x0c0f0e0d // rotate-n-splat 20 // Armv8.3-A PAuth: even though x30 is pushed to stack it is not popped later. 21 stp x29,x30,[sp,#-16]! 23 mov x3,#-1 28 mov x3,#-2 43 ld1 {v1.4s,v2.4s},[x3],#32 51 tbl v6.16b,{v3.16b},v2.16b 54 aese v6.16b,v0.16b [all …]
|
| H A D | aes-gcm-armv8-unroll8_64.S | 1 /* Do not modify. This file is auto-generated from aes-gcm-armv8-unroll8_64.pl. */ 5 .arch armv8-a+crypto 13 stp d8, d9, [sp, #-80]! 30 sub x5, x5, #1 //byte_len - 1 38 rev32 v1.16b, v30.16b //CTR block 1 54 rev32 v6.16b, v30.16b //CTR block 6 61 aesmc v4.16b, v4.16b //AES block 4 - round 0 62 aese v6.16b, v26.16b 63 aesmc v6.16b, v6.16b //AES block 6 - round 0 65 aesmc v3.16b, v3.16b //AES block 3 - round 0 [all …]
|
| H A D | vpsm4_ex-armv8.S | 1 /* Do not modify. This file is auto-generated from vpsm4_ex-armv8.pl. */ 2 // Copyright 2022-2025 The OpenSSL Project Authors. All Rights Reserved. 18 .arch armv8-a+crypto 47 .size _vpsm4_ex_consts,.-_vpsm4_ex_consts 68 ld1 {v6.2d},[x5] 69 eor v5.16b,v5.16b,v6.16b 92 eor v1.16b, v1.16b, v1.16b 93 aese v0.16b,v1.16b 109 str w8,[x1],#-4 115 .size _vpsm4_ex_set_key,.-_vpsm4_ex_set_key [all …]
|
| H A D | sm4-armv8.S | 1 /* Do not modify. This file is auto-generated from sm4-armv8.pl. */ 2 // Copyright 2022-2025 The OpenSSL Project Authors. All Rights Reserved. 17 .arch armv8-a+crypto 35 .size _sm4_v8_consts,.-_sm4_v8_consts 56 .inst 0xce71c801 //sm4ekey v1.4S,v0.4S,v17.4S 57 .inst 0xce72c822 //sm4ekey v2.4S,v1.4S,v18.4S 60 st1 {v0.4s,v1.4s,v2.4s,v3.4s},[x1],64 62 .inst 0xce76c8a6 //sm4ekey v6.4S,v5.4S,v22.4S 63 .inst 0xce77c8c7 //sm4ekey v7.4S,v6.4S,v23.4S 64 st1 {v4.4s,v5.4s,v6.4s,v7.4s},[x1] [all …]
|
| H A D | vpsm4-armv8.S | 1 /* Do not modify. This file is auto-generated from vpsm4-armv8.pl. */ 2 // Copyright 2020-2025 The OpenSSL Project Authors. All Rights Reserved. 18 .arch armv8-a 58 .size _vpsm4_consts,.-_vpsm4_consts 81 ld1 {v6.2d},[x5] 82 eor v5.16b,v5.16b,v6.16b 99 tbl v1.16b,{v16.16b,v17.16b,v18.16b,v19.16b},v4.16b 101 tbx v1.16b,{v20.16b,v21.16b,v22.16b,v23.16b},v4.16b 103 tbx v1.16b,{v24.16b,v25.16b,v26.16b,v27.16b},v4.16b 105 tbx v1.16b,{v28.16b,v29.16b,v30.16b,v31.16b},v4.16b [all …]
|
| H A D | sha512-armv8.S | 1 /* Do not modify. This file is auto-generated from sha512-armv8.pl. */ 2 // Copyright 2014-2025 The OpenSSL Project Authors. All Rights Reserved. 23 // SHA256-hw SHA256(*) SHA512 24 // Apple A7 1.97 10.5 (+33%) 6.73 (-1%(**)) 25 // Cortex-A53 2.38 15.5 (+115%) 10.0 (+150%(***)) 26 // Cortex-A57 2.31 11.6 (+86%) 7.51 (+260%(***)) 28 // X-Gene 20.0 (+100%) 12.8 (+300%(***)) 35 // (**) The result is a trade-off: it's possible to improve it by 37 // on Cortex-A53 (or by 4 cycles per round). 38 // (***) Super-impressive coefficients over gcc-generated code are [all …]
|
| H A D | armv8-mont.S | 1 /* Do not modify. This file is auto-generated from armv8-mont.pl. */ 34 stp x29,x30,[sp,#-64]! 45 and x22,x22,#-16 // ABI says so 49 sub x21,x5,#16 // j=num-2 68 // x6 being non-zero. So that carry can be calculated 69 // by adding -1 to x6. That's what next instruction does. 78 sub x21,x21,#8 // j-- 91 str x12,[x22],#8 // tp[j-1] 104 sub x20,x5,#8 // i=num-1 117 sub x21,x5,#16 // j=num-2 [all …]
|
| H A D | chacha-armv8.S | 1 /* Do not modify. This file is auto-generated from chacha-armv8.pl. */ 14 .quad 0x3320646e61707865,0x6b20657479622d32 // endian-neutral 40 stp x29,x30,[sp,#-96]! 311 .size ChaCha20_ctr32_dflt,.-ChaCha20_ctr32_dflt 326 stp x29,x30,[sp,#-16]! 331 // pointed to by ctr is meant to be read-only per API contract 346 .size ChaCha20_ctr32,.-ChaCha20_ctr32 356 stp x29,x30,[sp,#-96]! 375 ld1 {v1.4s,v2.4s},[x3] 399 dup v17.4s,v1.s[0] [all …]
|
| H A D | aes-gcm-armv8_64.S | 1 /* Do not modify. This file is auto-generated from aes-gcm-armv8_64.pl. */ 5 .arch armv8-a+crypto 13 stp x19, x20, [sp, #-112]! 41 sub x5, x5, #1 //byte_len - 1 62 fmov v1.d[1], x9 //CTR block 1 82 aese v1.16b, v18.16b 83 aesmc v1.16b, v1.16b //AES block 1 - round 0 87 aesmc v2.16b, v2.16b //AES block 2 - round 0 94 aesmc v0.16b, v0.16b //AES block 0 - round 0 98 aesmc v3.16b, v3.16b //AES block 3 - round 0 [all …]
|
| H A D | sha256-armv8.S | 1 /* Do not modify. This file is auto-generated from sha512-armv8.pl. */ 2 // Copyright 2014-2025 The OpenSSL Project Authors. All Rights Reserved. 23 // SHA256-hw SHA256(*) SHA512 24 // Apple A7 1.97 10.5 (+33%) 6.73 (-1%(**)) 25 // Cortex-A53 2.38 15.5 (+115%) 10.0 (+150%(***)) 26 // Cortex-A57 2.31 11.6 (+86%) 7.51 (+260%(***)) 28 // X-Gene 20.0 (+100%) 12.8 (+300%(***)) 35 // (**) The result is a trade-off: it's possible to improve it by 37 // on Cortex-A53 (or by 4 cycles per round). 38 // (***) Super-impressive coefficients over gcc-generated code are [all …]
|
| H A D | vpaes-armv8.S | 1 /* Do not modify. This file is auto-generated from vpaes-armv8.pl. */ 94 .size _vpaes_consts,.-_vpaes_consts 102 // Fills register %r10 -> .aes_consts (so you can -fPIC) 103 // and %xmm9-%xmm15 as specified below. 115 .size _vpaes_encrypt_preheat,.-_vpaes_encrypt_preheat 120 // AES-encrypt %xmm0. 124 // %xmm9-%xmm15 as in _vpaes_preheat 128 // Clobbers %xmm1-%xmm5, %r9, %r10, %r11, %rax 129 // Preserves %xmm6 - %xmm8 so you get some local vectors 141 and v1.16b, v7.16b, v17.16b // vpand %xmm9, %xmm0, %xmm1 [all …]
|
| /freebsd/crypto/openssl/crypto/aes/asm/ |
| H A D | bsaes-armv8.pl | 2 # Copyright 2020-2025 The OpenSSL Project Authors. All Rights Reserved. 16 ( $xlate="${dir}arm-xlate.pl" and -f $xlate ) or 17 ( $xlate="${dir}../../perlasm/arm-xlate.pl" and -f $xlate ) or 18 die "can't locate arm-xlate.pl"; 35 // Copyright 2021-2025 The OpenSSL Project Authors. All Rights Reserved. 48 // This implementation is a translation of bsaes-armv7 for AArch64. 53 // A lot of hand-scheduling has been performed. Consequently, this code 70 // x9 -> key (previously expanded using _bsaes_key_convert) 72 // v0-v7 input data 74 // x9-x11 corrupted [all …]
|
| H A D | vpaes-ppc.pl | 2 # Copyright 2013-2020 The OpenSSL Project Authors. All Rights Reserved. 11 ## Constant-time SSSE3 AES core implementation. 21 # 128-bit key. 23 # aes-ppc.pl this 32 # it in-line. Secondly it, being transliterated from 33 # vpaes-x86_64.pl, relies on "nested inversion" better suited 60 $FRAME=6*$SIZE_T+13*16; # 13*16 is for v20-v31 offload 63 ( $xlate="${dir}ppc-xlate.pl" and -f $xlate ) or 64 ( $xlate="${dir}../../perlasm/ppc-xlate.pl" and -f $xlate) or 65 die "can't locate ppc-xlate.pl"; [all …]
|
| /freebsd/crypto/openssl/crypto/modes/asm/ |
| H A D | ghash-riscv64-zvkb-zvbc.pl | 2 # This file is dual-licensed, meaning that you can use it under your 37 # - RV64I 38 # - RISC-V Vector ('V') with VLEN >= 128 39 # - RISC-V Vector Cryptography Bit-manipulation extension ('Zvkb') 40 # - RISC-V Vector Carryless Multiplication extension ('Zvbc') 64 # input: H: 128-bit H - secret parameter E(K, 0^128) 69 my ($V0,$V1,$V2,$V3,$V4,$V5,$V6) = ("v0","v1","v2","v3","v4","v5","v6"); 79 li $TMP0, -8 85 @{[vlse64_v $V1, $H, $TMP0]} # vlse64.v v1, (a1), t0 89 @{[vsrl_vx $V3, $V1, $TMP1]} # vsrl.vx v3, v1, t1 [all …]
|
| /freebsd/sys/contrib/openzfs/module/icp/asm-aarch64/sha2/ |
| H A D | sha512-armv8.S | 1 // SPDX-License-Identifier: Apache-2.0 3 * Copyright 2004-2022 The OpenSSL Project Authors. All Rights Reserved. 9 * https://www.apache.org/licenses/LICENSE-2.0 19 * Portions Copyright (c) 2022 Tino Reichardt <milky-zfs@mcmilk.de> 20 * - modified assembly to fit into OpenZFS 81 .size .LK512,.-.LK512 88 stp x29,x30,[sp,#-128]! 1048 .size zfs_sha512_block_armv7,.-zfs_sha512_block_armv7 1057 // Armv8.3-A PAuth: even though x30 is pushed to stack it is not popped later 1058 stp x29,x30,[sp,#-16]! [all …]
|
| H A D | sha256-armv8.S | 1 // SPDX-License-Identifier: Apache-2.0 3 * Copyright 2004-2022 The OpenSSL Project Authors. All Rights Reserved. 9 * https://www.apache.org/licenses/LICENSE-2.0 19 * Portions Copyright (c) 2022 Tino Reichardt <milky-zfs@mcmilk.de> 20 * - modified assembly to fit into OpenZFS 57 .size .LK256,.-.LK256 64 stp x29,x30,[sp,#-128]! 1024 .size zfs_sha256_block_armv7,.-zfs_sha256_block_armv7 1032 stp x29,x30,[sp,#-16]! 1035 ld1 {v0.4s,v1.4s},[x0] [all …]
|
| /freebsd/sbin/ipf/libipf/ |
| H A D | save_v1trap.c | 29 int v6; member 53 if (s1->v6 != s2->v6) in snmpv1_match() 56 if (strcmp(s1->community, s2->community)) in snmpv1_match() 60 if (s1->v6 == 1) { in snmpv1_match() 61 if (memcmp(&s1->sin6, &s2->sin6, sizeof(s1->sin6))) in snmpv1_match() 66 if (memcmp(&s1->sin, &s2->sin, sizeof(s1->sin))) in snmpv1_match() 79 s->ref++; in snmpv1_dup() 89 printf("%s ", snmpv1->community); in snmpv1_print() 91 if (snmpv1->v6 == 1) { in snmpv1_print() 94 printf("%s", inet_ntop(AF_INET6, &snmpv1->sin6.sin6_addr, buf, in snmpv1_print() [all …]
|
| /freebsd/lib/libc/aarch64/string/ |
| H A D | strncmp.S | 1 /*- 2 * SPDX-License-Identifier: BSD-2-Clause 24 mov x13, #-1 // save constants for later 51 cmeq v6.16b, v1.16b, #0 54 shrn v6.8b, v6.8h, #4 77 tbl v4.16b, {v1.16b}, v4.16b 133 cmeq v6.16b, v1.16b, #0 136 shrn v6.8b, v6.8h, #4 162 tbl v4.16b, {v1.16b}, v4.16b 200 cmeq v1.16b, v3.16b, #0 // NUL present? [all …]
|