crypto: use unaligned helpers

This is not useful for WireGuard, but for the general use case we
probably want it this way, and the speed difference is mostly lost in
the noise.

Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
This commit is contained in:
Jason A. Donenfeld 2018-08-23 18:08:03 -07:00
parent b2ec7892c8
commit 66054f3638
1 changed files with 3 additions and 0 deletions

View File

@ -29,6 +29,9 @@ typedef int64_t s64;
#define le32_to_cpup(a) (*(a)) #define le32_to_cpup(a) (*(a))
#define cpu_to_le64(a) (a) #define cpu_to_le64(a) (a)
#endif #endif
#define get_unaligned_le32(a) le32_to_cpup((u32 *)(a))
#define get_unaligned_le64(a) le64_to_cpup((u64 *)(a))
#define put_unaligned_le64(s, d) *(u64 *)(d) = cpu_to_le64(s)
#ifndef __always_inline #ifndef __always_inline
#define __always_inline __inline __attribute__((__always_inline__)) #define __always_inline __inline __attribute__((__always_inline__))
#endif #endif