3 #include <mmintrin.h>
\r
6 #pragma intrinsic(_umul128)
\r
9 bool addOvf(uint_fast64_t &a,const uint_fast64_t &b) {
\r
10 bool ret = (a > ~b);
\r
14 bool addOvf(const uint_fast64_t &a,const uint_fast64_t &b,uint_fast64_t &sum) {
\r
15 bool ret = (a > ~b);
\r
19 bool subUnf(uint_fast64_t &a,const uint_fast64_t &b) {
\r
24 bool subUnf(const uint_fast64_t &a,const uint_fast64_t &b,uint_fast64_t &dif) {
\r
29 uint_fast64_t mul128(const uint_fast64_t &Multiplicand, const uint_fast64_t &Multiplier,uint_fast64_t &HighProduct) {
\r
30 return _umul128(Multiplier, Multiplicand, &HighProduct);
\r