48 #include <type_traits> 50 #include <boost/multiprecision/cpp_int.hpp> 51 #include <boost/multiprecision/cpp_int/literals.hpp> 56 using backend = boost::multiprecision::backends::cpp_int_backend<4096, 4096, boost::multiprecision::signed_magnitude,
57 boost::multiprecision::unchecked,
void>;
58 using number = boost::multiprecision::number<backend>;
67 #pragma GCC diagnostic push 68 #pragma GCC diagnostic ignored "-Wzero-as-null-pointer-constant" 81 #pragma GCC diagnostic pop 89 explicit operator bool()
const;
142 explicit operator T()
const 160 template <
char...
STR>
163 typedef typename boost::multiprecision::literals::detail::make_packed_value_from_str<
STR...>
::type pt;
APInt & extOrTrunc(bw_t bw, bool sign)
static APInt getSignedMinValue(bw_t bw)
This algorithm is to find coloring of a graph Algorithm: Let G = (V,E) be a graph with vertices v_1...
APInt & operator|=(const APInt &rhs)
bool bit_tst(bw_t i) const
friend bool operator>=(const APInt &lhs, const APInt &rhs)
APInt & operator*=(const APInt &rhs)
static APInt getSignedMaxValue(bw_t bw)
boost::multiprecision::backends::cpp_int_backend< 4096, 4096, boost::multiprecision::signed_magnitude, boost::multiprecision::unchecked, void > backend
bw_t leadingOnes(bw_t bw) const
friend APInt operator*(const APInt &lhs, const APInt &rhs)
APInt & operator<<=(const APInt &rhs)
friend APInt operator/(const APInt &lhs, const APInt &rhs)
bw_t trailingZeros(bw_t bw) const
APInt & operator-=(const APInt &rhs)
#define STR(s)
Macro which performs a lexical_cast to a string.
bw_t minBitwidth(bool sign) const
APInt & operator &=(const APInt &rhs)
friend APInt operator>>(const APInt &lhs, const APInt &rhs)
APInt & operator+=(const APInt &rhs)
APInt(const std::string &str)
friend bool operator==(const APInt &lhs, const APInt &rhs)
friend bool operator!=(const APInt &lhs, const APInt &rhs)
friend bool operator<=(const APInt &lhs, const APInt &rhs)
static APInt getMaxValue(bw_t bw)
APInt & operator%=(const APInt &rhs)
boost::multiprecision::number< backend > number
friend bool operator<(const APInt &lhs, const APInt &rhs)
friend APInt operator &(const APInt &lhs, const APInt &rhs)
bw_t leadingZeros(bw_t bw) const
APInt & operator/=(const APInt &rhs)
bw_t trailingOnes(bw_t bw) const
friend APInt operator<<(const APInt &lhs, const APInt &rhs)
static APInt getMinValue(bw_t bw)
APInt & operator^=(const APInt &rhs)
friend APInt operator|(const APInt &lhs, const APInt &rhs)
APInt & operator>>=(const APInt &rhs)
friend APInt operator^(const APInt &lhs, const APInt &rhs)
friend APInt operator+(const APInt &lhs, const APInt &rhs)
friend APInt operator%(const APInt &lhs, const APInt &rhs)
friend bool operator>(const APInt &lhs, const APInt &rhs)