openMSX
Classes | Namespaces | Functions
DivModByConst.hh File Reference
#include "uint128.hh"
#include <bit>
#include <cstdint>
#include <type_traits>
Include dependency graph for DivModByConst.hh:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  DivModByConstPrivate::Reduce0Result
 
struct  DivModByConstPrivate::Reduce1Result
 
struct  DivModByConstPrivate::Reduce2Result
 
struct  DivModByConst< DIVISOR >
 

Namespaces

namespace  DivModByConstPrivate
 Utility class to optimize 64-bit divide/module by a 32-bit constant.
 

Functions

constexpr Reduce0Result DivModByConstPrivate::reduce0 (uint32_t divisor)
 
constexpr Reduce1Result DivModByConstPrivate::reduce1 (uint64_t m, uint32_t s)
 
constexpr Reduce2Result DivModByConstPrivate::reduce2 (uint128 m_low, uint128 m_high, uint32_t l)
 
template<uint32_t DIVISOR>
constexpr auto DivModByConstPrivate::getAlgorithm ()