diff options
author | Miod Vallat <miod@cvs.openbsd.org> | 2022-03-22 06:46:46 +0000 |
---|---|---|
committer | Miod Vallat <miod@cvs.openbsd.org> | 2022-03-22 06:46:46 +0000 |
commit | 0e027f2f6504f60c8101e19108e0819e4fba2550 (patch) | |
tree | 2d7f79d3b2ecc5e73dd67d8934fbc4a5a65c5fff /sys/arch | |
parent | 4c2f1cf3f404f5df1ae4b829ed2f92b4246a9024 (diff) |
Do not pretend there exist MD code for byte swapping yet provide copies
of the MI fallback code; ok deraadt@ jsg@
Diffstat (limited to 'sys/arch')
-rw-r--r-- | sys/arch/riscv64/include/endian.h | 44 |
1 files changed, 2 insertions, 42 deletions
diff --git a/sys/arch/riscv64/include/endian.h b/sys/arch/riscv64/include/endian.h index be7752990dd..13a31ffbf62 100644 --- a/sys/arch/riscv64/include/endian.h +++ b/sys/arch/riscv64/include/endian.h @@ -1,4 +1,4 @@ -/* $OpenBSD: endian.h,v 1.2 2021/05/12 01:20:52 jsg Exp $ */ +/* $OpenBSD: endian.h,v 1.3 2022/03/22 06:46:45 miod Exp $ */ /* * Copyright (c) 2015 David Gwynne <dlg@openbsd.org> @@ -19,51 +19,11 @@ #ifndef _MACHINE_ENDIAN_H_ #define _MACHINE_ENDIAN_H_ -#ifndef __FROM_SYS__ENDIAN -#include <sys/_types.h> -#endif - -static __inline __uint16_t -__swap16md(__uint16_t _x) -{ - __uint32_t ret; - ret = ((_x >> 8) | ((_x << 8) & 0xff00)); - - return ((__uint16_t)ret); -} - -static __inline __uint32_t -__swap32md(__uint32_t _x) -{ - return ((_x >> 24) | ((_x >> 8) & 0xff00) | ((_x << 8) & 0xff0000) | - ((_x << 24) & 0xff000000)); -} - -static __inline __uint64_t -__swap64md(__uint64_t _x) -{ - __uint64_t ret; - - ret = (_x >> 56); - ret |= ((_x >> 40) & 0xff00); - ret |= ((_x >> 24) & 0xff0000); - ret |= ((_x >> 8) & 0xff000000); - ret |= ((_x << 8) & ((__uint64_t)0xff << 32)); - ret |= ((_x << 24) & ((__uint64_t)0xff << 40)); - ret |= ((_x << 40) & ((__uint64_t)0xff << 48)); - ret |= (_x << 56); - - return (ret); -} - -/* Tell sys/endian.h we have MD variants of the swap macros. */ -#define __HAVE_MD_SWAP - - #define _BYTE_ORDER _LITTLE_ENDIAN #define __STRICT_ALIGNMENT #ifndef __FROM_SYS__ENDIAN #include <sys/endian.h> #endif + #endif /* _MACHINE_ENDIAN_H_ */ |