1
0
mirror of https://github.com/mariadb-corporation/mariadb-columnstore-engine.git synced 2025-07-30 19:23:07 +03:00

MCOL-4394 __float128 related code had been moved into a separate file

Trim to double and to long double conversions for Decimal
This commit is contained in:
Roman Nozdrin
2020-11-16 11:15:57 +00:00
parent 23af547fb8
commit 178be69bc4
12 changed files with 168 additions and 89 deletions

View File

@ -241,8 +241,8 @@ double Func_mod::getDoubleVal(Row& row,
datatypes::getScaleDivisor(scaleDivisor, d.scale);
int128_t value = d.s128Value / scaleDivisor;
int128_t lefto = d.s128Value % scaleDivisor;
__float128 tmp = (__float128) (value % div) + (__float128) lefto / scaleDivisor;
mod = datatypes::getDoubleFromFloat128(tmp);
datatypes::TFloat128 tmp((__float128) (value % div) + (__float128) lefto / scaleDivisor);
mod = static_cast<double>(tmp);
}
}
else
@ -364,8 +364,8 @@ long double Func_mod::getLongDoubleVal(Row& row,
datatypes::getScaleDivisor(scaleDivisor, d.scale);
int128_t value = d.s128Value / scaleDivisor;
int128_t lefto = d.s128Value % scaleDivisor;
__float128 tmp = (__float128) (value % div) + (__float128) lefto / scaleDivisor;
mod = datatypes::getLongDoubleFromFloat128(tmp);
datatypes::TFloat128 tmp((__float128) (value % div) + (__float128) lefto / scaleDivisor);
mod = static_cast<long double>(tmp);
}
}
else