aboutsummaryrefslogtreecommitdiffstats
path: root/src/libs/3rdparty/botan/src/lib/utils/bswap.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/libs/3rdparty/botan/src/lib/utils/bswap.h')
-rw-r--r--src/libs/3rdparty/botan/src/lib/utils/bswap.h99
1 files changed, 0 insertions, 99 deletions
diff --git a/src/libs/3rdparty/botan/src/lib/utils/bswap.h b/src/libs/3rdparty/botan/src/lib/utils/bswap.h
deleted file mode 100644
index 8d5731f1b0..0000000000
--- a/src/libs/3rdparty/botan/src/lib/utils/bswap.h
+++ /dev/null
@@ -1,99 +0,0 @@
-/*
-* Byte Swapping Operations
-* (C) 1999-2011 Jack Lloyd
-* (C) 2007 Yves Jerschow
-*
-* Botan is released under the Simplified BSD License (see license.txt)
-*/
-
-#ifndef BOTAN_BYTE_SWAP_H_
-#define BOTAN_BYTE_SWAP_H_
-
-#include <botan/types.h>
-#include <botan/rotate.h>
-
-#if defined(BOTAN_BUILD_COMPILER_IS_MSVC)
- #include <stdlib.h>
-#endif
-
-namespace Botan {
-
-/**
-* Swap a 16 bit integer
-*/
-inline uint16_t reverse_bytes(uint16_t val)
- {
- return rotl<8>(val);
- }
-
-/**
-* Swap a 32 bit integer
-*/
-inline uint32_t reverse_bytes(uint32_t val)
- {
-#if defined(BOTAN_BUILD_COMPILER_IS_GCC) || defined(BOTAN_BUILD_COMPILER_IS_CLANG)
- return __builtin_bswap32(val);
-
-#elif defined(BOTAN_BUILD_COMPILER_IS_MSVC)
- return _byteswap_ulong(val);
-
-#elif defined(BOTAN_USE_GCC_INLINE_ASM) && defined(BOTAN_TARGET_CPU_IS_X86_FAMILY)
-
- // GCC-style inline assembly for x86 or x86-64
- asm("bswapl %0" : "=r" (val) : "0" (val));
- return val;
-
-#else
-
- // Generic implementation
- return (rotr<8>(val) & 0xFF00FF00) | (rotl<8>(val) & 0x00FF00FF);
-
-#endif
- }
-
-/**
-* Swap a 64 bit integer
-*/
-inline uint64_t reverse_bytes(uint64_t val)
- {
-#if defined(BOTAN_BUILD_COMPILER_IS_GCC) || defined(BOTAN_BUILD_COMPILER_IS_CLANG)
- return __builtin_bswap64(val);
-
-#elif defined(BOTAN_BUILD_COMPILER_IS_MSVC)
- return _byteswap_uint64(val);
-
-#elif defined(BOTAN_USE_GCC_INLINE_ASM) && defined(BOTAN_TARGET_ARCH_IS_X86_64)
- // GCC-style inline assembly for x86-64
- asm("bswapq %0" : "=r" (val) : "0" (val));
- return val;
-
-#else
- /* Generic implementation. Defined in terms of 32-bit bswap so any
- * optimizations in that version can help.
- */
-
- uint32_t hi = static_cast<uint32_t>(val >> 32);
- uint32_t lo = static_cast<uint32_t>(val);
-
- hi = reverse_bytes(hi);
- lo = reverse_bytes(lo);
-
- return (static_cast<uint64_t>(lo) << 32) | hi;
-#endif
- }
-
-/**
-* Swap 4 Ts in an array
-*/
-template<typename T>
-inline void bswap_4(T x[4])
- {
- x[0] = reverse_bytes(x[0]);
- x[1] = reverse_bytes(x[1]);
- x[2] = reverse_bytes(x[2]);
- x[3] = reverse_bytes(x[3]);
- }
-
-}
-
-#endif