mirror of
https://github.com/postgres/postgres.git
synced 2025-06-27 23:21:58 +03:00
Remove unnecessary uses of Abs()
Use C standard abs() or fabs() instead. Reviewed-by: Zhang Mingli <zmlpostgres@gmail.com> Reviewed-by: Tom Lane <tgl@sss.pgh.pa.us> Discussion: https://www.postgresql.org/message-id/flat/4beb42b5-216b-bce8-d452-d924d5794c63%40enterprisedb.com
This commit is contained in:
@ -8870,7 +8870,7 @@ div_var_fast(const NumericVar *var1, const NumericVar *var2,
|
||||
if (qdigit != 0)
|
||||
{
|
||||
/* Do we need to normalize now? */
|
||||
maxdiv += Abs(qdigit);
|
||||
maxdiv += abs(qdigit);
|
||||
if (maxdiv > (INT_MAX - INT_MAX / NBASE - 1) / (NBASE - 1))
|
||||
{
|
||||
/*
|
||||
@ -8923,7 +8923,7 @@ div_var_fast(const NumericVar *var1, const NumericVar *var2,
|
||||
fquotient = fdividend * fdivisorinverse;
|
||||
qdigit = (fquotient >= 0.0) ? ((int) fquotient) :
|
||||
(((int) fquotient) - 1); /* truncate towards -infinity */
|
||||
maxdiv += Abs(qdigit);
|
||||
maxdiv += abs(qdigit);
|
||||
}
|
||||
|
||||
/*
|
||||
@ -9107,7 +9107,7 @@ div_var_int(const NumericVar *var, int ival, int ival_weight,
|
||||
* become as large as divisor * NBASE - 1, and so it requires a 64-bit
|
||||
* integer if this exceeds UINT_MAX.
|
||||
*/
|
||||
divisor = Abs(ival);
|
||||
divisor = abs(ival);
|
||||
|
||||
if (divisor <= UINT_MAX / NBASE)
|
||||
{
|
||||
@ -9948,7 +9948,7 @@ exp_var(const NumericVar *arg, NumericVar *result, int rscale)
|
||||
|
||||
/* Guard against overflow/underflow */
|
||||
/* If you change this limit, see also power_var()'s limit */
|
||||
if (Abs(val) >= NUMERIC_MAX_RESULT_SCALE * 3)
|
||||
if (fabs(val) >= NUMERIC_MAX_RESULT_SCALE * 3)
|
||||
{
|
||||
if (val > 0)
|
||||
ereport(ERROR,
|
||||
@ -9966,15 +9966,15 @@ exp_var(const NumericVar *arg, NumericVar *result, int rscale)
|
||||
* Reduce x to the range -0.01 <= x <= 0.01 (approximately) by dividing by
|
||||
* 2^ndiv2, to improve the convergence rate of the Taylor series.
|
||||
*
|
||||
* Note that the overflow check above ensures that Abs(x) < 6000, which
|
||||
* Note that the overflow check above ensures that fabs(x) < 6000, which
|
||||
* means that ndiv2 <= 20 here.
|
||||
*/
|
||||
if (Abs(val) > 0.01)
|
||||
if (fabs(val) > 0.01)
|
||||
{
|
||||
ndiv2 = 1;
|
||||
val /= 2;
|
||||
|
||||
while (Abs(val) > 0.01)
|
||||
while (fabs(val) > 0.01)
|
||||
{
|
||||
ndiv2++;
|
||||
val /= 2;
|
||||
@ -10116,7 +10116,7 @@ estimate_ln_dweight(const NumericVar *var)
|
||||
*----------
|
||||
*/
|
||||
ln_var = log((double) digits) + dweight * 2.302585092994046;
|
||||
ln_dweight = (int) log10(Abs(ln_var));
|
||||
ln_dweight = (int) log10(fabs(ln_var));
|
||||
}
|
||||
else
|
||||
{
|
||||
@ -10427,7 +10427,7 @@ power_var(const NumericVar *base, const NumericVar *exp, NumericVar *result)
|
||||
val = numericvar_to_double_no_overflow(&ln_num);
|
||||
|
||||
/* initial overflow/underflow test with fuzz factor */
|
||||
if (Abs(val) > NUMERIC_MAX_RESULT_SCALE * 3.01)
|
||||
if (fabs(val) > NUMERIC_MAX_RESULT_SCALE * 3.01)
|
||||
{
|
||||
if (val > 0)
|
||||
ereport(ERROR,
|
||||
@ -10583,7 +10583,7 @@ power_var_int(const NumericVar *base, int exp, NumericVar *result, int rscale)
|
||||
* Now we can proceed with the multiplications.
|
||||
*/
|
||||
neg = (exp < 0);
|
||||
mask = Abs(exp);
|
||||
mask = abs(exp);
|
||||
|
||||
init_var(&base_prod);
|
||||
set_var_from_var(base, &base_prod);
|
||||
|
Reference in New Issue
Block a user