===================================================================
@@ -157,7 +157,7 @@ builtin_define_float_constants (const ch
p log10 b if b is a power of 10
floor((p - 1) log10 b) otherwise
*/
- dig = (fmt->p - 1) * log10_b;
+ dig = (int)((fmt->p - 1) * log10_b);
sprintf (name, "__%s_DIG__", name_prefix);
builtin_define_with_int_value (name, dig);
@@ -173,7 +173,7 @@ builtin_define_float_constants (const ch
Recall that emin is negative, so the integer truncation calculates
the ceiling, not the floor, in this case. */
- min_10_exp = (fmt->emin - 1) * log10_b;
+ min_10_exp = (int)((fmt->emin - 1) * log10_b);
sprintf (name, "__%s_MIN_10_EXP__", name_prefix);
sprintf (buf, "(%d)", min_10_exp);
builtin_define_with_value (name, buf, 0);
@@ -208,7 +208,7 @@ builtin_define_float_constants (const ch
Hand-waving aside, crunching all of the sets of constants above by hand
does not yield a case for which the first term is significant, which
in the end is all that matters. */
- max_10_exp = fmt->emax * log10_b;
+ max_10_exp = (int)(fmt->emax * log10_b);
sprintf (name, "__%s_MAX_10_EXP__", name_prefix);
builtin_define_with_int_value (name, max_10_exp);
@@ -224,14 +224,14 @@ builtin_define_float_constants (const ch
{
double d_decimal_dig
= 1 + (fmt->p < ldfmt->p ? ldfmt->p : fmt->p) * log10_b;
- decimal_dig = d_decimal_dig;
+ decimal_dig = (int)d_decimal_dig;
if (decimal_dig < d_decimal_dig)
decimal_dig++;
}
/* Similar, for this type rather than long double. */
{
double type_d_decimal_dig = 1 + fmt->p * log10_b;
- type_decimal_dig = type_d_decimal_dig;
+ type_decimal_dig = (int)type_d_decimal_dig;
if (type_decimal_dig < type_d_decimal_dig)
type_decimal_dig++;
}
===================================================================
@@ -348,8 +348,8 @@ mcf_sqrt (double x)
gcc_assert (x >= 0);
- convertor.floatPart = x;
- convertor2.floatPart = x;
+ convertor.floatPart = (float)x;
+ convertor2.floatPart = (float)x;
convertor.intPart = MAGIC_CONST1 + (convertor.intPart >> 1);
convertor2.intPart = MAGIC_CONST2 - (convertor2.intPart >> 1);
===================================================================
@@ -792,7 +792,7 @@ combine_predictions_for_insn (rtx insn,
/* If one probability is 0% and one 100%, avoid division by zero. */
combined_probability = REG_BR_PROB_BASE / 2;
else
- combined_probability = (((double) combined_probability) * probability
+ combined_probability = (int)(((double) combined_probability) * probability
* REG_BR_PROB_BASE / d + 0.5);
}
@@ -957,7 +957,7 @@ combine_predictions_for_bb (basic_block
/* If one probability is 0% and one 100%, avoid division by zero. */
combined_probability = REG_BR_PROB_BASE / 2;
else
- combined_probability = (((double) combined_probability)
+ combined_probability = (int)(((double) combined_probability)
* probability
* REG_BR_PROB_BASE / d + 0.5);
}
===================================================================
@@ -1550,14 +1550,14 @@ real_to_decimal_for_mode (char *str, con
}
/* Bound the number of digits printed by the size of the representation. */
- max_digits = SIGNIFICAND_BITS * M_LOG10_2;
+ max_digits = (int)(SIGNIFICAND_BITS * M_LOG10_2);
if (digits == 0 || digits > max_digits)
digits = max_digits;
/* Estimate the decimal exponent, and compute the length of the string it
will print as. Be conservative and add one to account for possible
overflow or rounding error. */
- dec_exp = REAL_EXP (&r) * M_LOG10_2;
+ dec_exp = (int)(REAL_EXP (&r) * M_LOG10_2);
for (max_digits = 1; dec_exp ; max_digits++)
dec_exp /= 10;
@@ -2215,7 +2215,7 @@ decimal_integer_string (char *str, const
sign = r.sign;
r.sign = 0;
- dec_exp = REAL_EXP (&r) * M_LOG10_2;
+ dec_exp = (int)(REAL_EXP (&r) * M_LOG10_2);
digits = dec_exp + 1;
gcc_assert ((digits + 2) < (int)buf_size);
@@ -2818,7 +2818,7 @@ significand_size (enum machine_mode mode
than the number of bits required to hold the largest coefficient
of this mode. */
double log2_10 = 3.3219281;
- return fmt->p * log2_10;
+ return (int)(fmt->p * log2_10);
}
return fmt->p;
}
===================================================================
@@ -287,7 +287,8 @@ ht_dump_statistics (cpp_hash_table *tabl
: (x) / (1024*1024))))
#define LABEL(x) ((x) < 1024*10 ? ' ' : ((x) < 1024*1024*10 ? 'k' : 'M'))
- total_bytes = longest = sum_of_squares = nids = 0;
+ total_bytes = longest = nids = 0;
+ sum_of_squares = 0.0;
p = table->entries;
limit = p + table->nslots;
do