Lines Matching +full:fail +full:- +full:fast
8 * SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
92 /* A compile-time constant with the value 0. If `const_expr` is not a
93 * compile-time constant with a nonzero value, cause a compile-time error. */
95 (0 && sizeof(struct { unsigned int STATIC_ASSERT : 1 - 2 * !(const_expr); }))
97 /* Return the scalar value `value` (possibly promoted). This is a compile-time
98 * constant if `value` is. `condition` must be a compile-time constant.
99 * If `condition` is false, arrange to cause a compile-time error. */
108 /* If we aren't sure the compiler supports our non-standard tricks,
126 * Guaranteed to be a no-op if \p buf is \c NULL and \p len is 0.
154 /** Return an offset into a read-only buffer.
178 * Perform a fast block XOR operation, such that
190 * If the result is used immediately after the xor operation in non-SIMD code (e.g, in
191 * AES-CBC), there may be additional latency to transfer the data from SIMD to scalar
193 * the result is not used immediately (e.g., in AES-CTR), mbedtls_xor() may be faster.
213 /* This if statement helps some compilers (e.g., IAR) optimise out the byte-by-byte tail case in mbedtls_xor()
215 * For other compilers (e.g. recent gcc and clang) it makes no difference if n is a compile-time in mbedtls_xor()
216 * constant, and is a very small perf regression if n is not a compile-time constant. in mbedtls_xor()
224 /* This codepath probably only makes sense on architectures with 64-bit registers */ in mbedtls_xor()
252 * inlined (e.g., observed about 3x perf difference in gcm_mult_largetable with gcc 7 - 12) */
259 * Perform a fast block XOR operation, such that
263 * better in AES-CBC).
274 * If the result is used immediately after the xor operation in non-SIMD code (e.g, in
275 * AES-CBC), there may be additional latency to transfer the data from SIMD to scalar
277 * the result is not used immediately (e.g., in AES-CTR), mbedtls_xor() may be faster.
288 /* This codepath probably only makes sense on architectures with 64-bit registers */ in mbedtls_xor_no_simd()
294 /* This if statement helps some compilers (e.g., IAR) optimise out the byte-by-byte tail case in mbedtls_xor_no_simd()
296 * For other compilers (e.g. recent gcc and clang) it makes no difference if n is a compile-time in mbedtls_xor_no_simd()
297 * constant, and is a very small perf regression if n is not a compile-time constant. */ in mbedtls_xor_no_simd()
321 * Use MSVC predefine macro to avoid name check fail.
324 #define /*no-check-names*/ __func__ __FUNCTION__
328 /* *INDENT-OFF* */
336 /* *INDENT-ON* */
339 * Define the constraint used for read-only pointer operands to aarch64 asm.
359 /* Normal case (64-bit pointers): use "r" as the constraint for pointer operands to asm */
369 /* Can't use the C11-style `defined(static_assert)` on FreeBSD, since it
370 * defines static_assert even with -std=c99, but then complains about it.
398 * which can result in smaller code-size. */
412 /* For gcc -Os, override with -O2 for a given function.
414 * This will not affect behaviour for other optimisation settings, e.g. -O0.
417 #define MBEDTLS_OPTIMIZE_FOR_PERFORMANCE __attribute__((optimize("-O2")))
432 /* IAR does support __attribute__((unused)), but only if the -e flag (extended language support)
435 * Check for version 5.2 or later - this pragma may be supported by earlier versions, but I wasn't
449 /* GCC >= 15 has a warning 'unterminated-string-initialization' which complains if you initialize