openMSX
|
#include <DivModByConst.hh>
Public Types | |
using | K = Div128< 1<< L, 0, 0, 0xffffffffffffffffull - J > |
using | M_LOW = Div128< 1<< L, 0, 0, DIVISOR > |
using | M_HIGH = Div128<(1<< L)+K::quotientHigh, K::quotientLow, 0, DIVISOR > |
using | R = DBCReduce2< M_LOW ::quotientHigh, M_LOW ::quotientLow, M_HIGH::quotientHigh, M_HIGH::quotientLow, L > |
Public Member Functions | |
constexpr uint32_t | operator() (uint64_t dividend) const |
Static Public Attributes | |
static constexpr uint32_t | L = Math::log2p1(DIVISOR) |
static constexpr uint64_t | J = 0xffffffffffffffffull % DIVISOR |
Definition at line 190 of file DivModByConst.hh.
using DivModByConstPrivate::DBCHelper2< DIVISOR, N >::K = Div128<1 << L, 0, 0, 0xffffffffffffffffull - J> |
Definition at line 194 of file DivModByConst.hh.
using DivModByConstPrivate::DBCHelper2< DIVISOR, N >::M_HIGH = Div128<(1 << L) + K::quotientHigh, K::quotientLow, 0, DIVISOR> |
Definition at line 197 of file DivModByConst.hh.
using DivModByConstPrivate::DBCHelper2< DIVISOR, N >::M_LOW = Div128< 1 << L, 0, 0, DIVISOR> |
Definition at line 196 of file DivModByConst.hh.
using DivModByConstPrivate::DBCHelper2< DIVISOR, N >::R = DBCReduce2<M_LOW ::quotientHigh, M_LOW ::quotientLow, M_HIGH::quotientHigh, M_HIGH::quotientLow, L> |
Definition at line 199 of file DivModByConst.hh.
|
inline |
Definition at line 201 of file DivModByConst.hh.
|
static |
Definition at line 193 of file DivModByConst.hh.
|
static |
Definition at line 192 of file DivModByConst.hh.