curve25519: squelch warnings on clang
These are generic helper functions we don't want to move into the actual implementations, so that it's easy to keep parity with the kernel code. Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
This commit is contained in:
parent
e5b08c2849
commit
d68b8b189c
|
@ -39,23 +39,9 @@ typedef int64_t s64;
|
|||
#define le32_to_cpup(a) (*(a))
|
||||
#define cpu_to_le64(a) (a)
|
||||
#endif
|
||||
static inline __le32 get_unaligned_le32(const u8 *a)
|
||||
{
|
||||
__le32 l;
|
||||
__builtin_memcpy(&l, a, sizeof(l));
|
||||
return le32_to_cpup(&l);
|
||||
}
|
||||
static inline __le64 get_unaligned_le64(const u8 *a)
|
||||
{
|
||||
__le64 l;
|
||||
__builtin_memcpy(&l, a, sizeof(l));
|
||||
return le64_to_cpup(&l);
|
||||
}
|
||||
static inline void put_unaligned_le64(u64 s, u8 *d)
|
||||
{
|
||||
__le64 l = cpu_to_le64(s);
|
||||
__builtin_memcpy(d, &l, sizeof(l));
|
||||
}
|
||||
#ifndef __unused
|
||||
#define __unused __attribute__((unused))
|
||||
#endif
|
||||
#ifndef __always_inline
|
||||
#define __always_inline __inline __attribute__((__always_inline__))
|
||||
#endif
|
||||
|
@ -69,6 +55,24 @@ static inline void put_unaligned_le64(u64 s, u8 *d)
|
|||
#define __force
|
||||
#endif
|
||||
|
||||
static __always_inline __unused __le32 get_unaligned_le32(const u8 *a)
|
||||
{
|
||||
__le32 l;
|
||||
__builtin_memcpy(&l, a, sizeof(l));
|
||||
return le32_to_cpup(&l);
|
||||
}
|
||||
static __always_inline __unused __le64 get_unaligned_le64(const u8 *a)
|
||||
{
|
||||
__le64 l;
|
||||
__builtin_memcpy(&l, a, sizeof(l));
|
||||
return le64_to_cpup(&l);
|
||||
}
|
||||
static __always_inline __unused void put_unaligned_le64(u64 s, u8 *d)
|
||||
{
|
||||
__le64 l = cpu_to_le64(s);
|
||||
__builtin_memcpy(d, &l, sizeof(l));
|
||||
}
|
||||
|
||||
static noinline void memzero_explicit(void *s, size_t count)
|
||||
{
|
||||
memset(s, 0, count);
|
||||
|
|
Loading…
Reference in New Issue