template<unsigned int bit, unsigned int width, typename T > |
CONSTEXPR std::enable_if< std::is_unsigned< T >::value, T >::type | bit_sub (T v) |
| extract bit ranges from plain data types More...
|
|
template<unsigned offset, typename R , typename T > |
R | _bit_comb (T v) |
|
template<unsigned offset, typename R , typename T , typename... Args> |
R | _bit_comb (T first, Args... args) |
|
template<typename R , typename T , typename... Args> |
R | bit_comb (T first, Args... args) |
|
template<typename T , unsigned B> |
CONSTEXPR T | signextend (const typename std::make_unsigned< T >::type x) |
| sign-extend a given value More...
|
|
template<unsigned int bit, unsigned int width, typename T > |
constexpr std::make_signed< T >::type | signed_bit_sub (T v) |
| a function that converts from B bits to T in one operation More...
|
|
constexpr uint64_t | operator""_kB (unsigned long long val) |
| UDL for kilobyte.
|
|
constexpr uint64_t | operator""_MB (unsigned long long val) |
| UDL for megabyte.
|
|
constexpr uint64_t | operator""_GB (unsigned long long val) |
| UDL for gigabyte.
|
|
constexpr uint64_t | operator""_KiB (unsigned long long val) |
|
constexpr uint64_t | operator""_MiB (unsigned long long val) |
| UDL for megabyte.
|
|
constexpr uint64_t | operator""_GiB (unsigned long long val) |
| UDL for gigabyte.
|
|
constexpr uint64_t | operator""_TiB (unsigned long long val) |
| UDL for gigabyte.
|
|
This module contains generic C++ functions being independent of SystemC
◆ bit_comb()
template<typename R , typename T , typename... Args>
R bit_comb |
( |
T |
first, |
|
|
Args... |
args |
|
) |
| |
combines the integer arguments into a large integer in an platform independent way, the first argument is the least significant byte
- Template Parameters
-
R | the return type of the function |
T | the type of the first parameter of the function |
Args | the remainign parameter pack |
- Parameters
-
v | first first argument of type T |
args | the remaining parameters |
- Returns
- the resulting integer value
Definition at line 82 of file ities.h.
◆ bit_sub()
template<unsigned int bit, unsigned int width, typename T >
CONSTEXPR std::enable_if<std::is_unsigned<T>::value, T>::type bit_sub |
( |
T |
v | ) |
|
extract bit ranges from plain data types
- Template Parameters
-
bit | start bit |
width | size of the bit field to extract |
T | data type carrying the bits |
- Parameters
-
v | value from which the bytes are to be extracted |
- Returns
- the extracted bit. It is of the same data type as the passed value
Definition at line 54 of file ities.h.
◆ signed_bit_sub()
template<unsigned int bit, unsigned int width, typename T >
constexpr std::make_signed<T>::type signed_bit_sub |
( |
T |
v | ) |
|
|
inlineconstexpr |
a function that converts from B bits to T in one operation
- Template Parameters
-
- Parameters
-
- Returns
Definition at line 111 of file ities.h.
◆ signextend()
template<typename T , unsigned B>
CONSTEXPR T signextend |
( |
const typename std::make_unsigned< T >::type |
x | ) |
|
sign-extend a given value
- Template Parameters
-
T | the datatype |
B | the numer of signed bits |
- Parameters
-
- Returns
- the sign-extended value of type T
Definition at line 92 of file ities.h.