diff options
Diffstat (limited to 'src/emu/emucore.h')
-rw-r--r-- | src/emu/emucore.h | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/src/emu/emucore.h b/src/emu/emucore.h index b6d1e7b3154..1782ac8726d 100644 --- a/src/emu/emucore.h +++ b/src/emu/emucore.h @@ -255,7 +255,6 @@ template <typename T, typename U, typename... V> constexpr T bitswap(T val, U b, return (BIT(val, b) << sizeof...(c)) | bitswap(val, c...); } -// explicit version that checks number of bit position arguments template <unsigned B, typename T, typename... U> T bitswap(T val, U... b) { static_assert(sizeof...(b) == B, "wrong number of bits"); @@ -263,6 +262,16 @@ template <unsigned B, typename T, typename... U> T bitswap(T val, U... b) return bitswap(val, b...); } +// explicit versions that check number of bit position arguments +template <typename T, typename... U> constexpr T BITSWAP8(T val, U... b) { return bitswap<8U>(val, b...); } +template <typename T, typename... U> constexpr T BITSWAP16(T val, U... b) { return bitswap<16U>(val, b...); } +template <typename T, typename... U> constexpr T BITSWAP24(T val, U... b) { return bitswap<24U>(val, b...); } +template <typename T, typename... U> constexpr T BITSWAP32(T val, U... b) { return bitswap<32U>(val, b...); } +template <typename T, typename... U> constexpr T BITSWAP40(T val, U... b) { return bitswap<40U>(val, b...); } +template <typename T, typename... U> constexpr T BITSWAP48(T val, U... b) { return bitswap<48U>(val, b...); } +template <typename T, typename... U> constexpr T BITSWAP56(T val, U... b) { return bitswap<56U>(val, b...); } +template <typename T, typename... U> constexpr T BITSWAP64(T val, U... b) { return bitswap<64U>(val, b...); } + //************************************************************************** |