value-prof: Fix abs uses in value-prof.c [PR93962]
Jeff has recently fixed dump_histogram_value to use std::abs instead of abs, because on FreeBSD apparently the ::abs isn't overloaded and only has int abs (int); Seems on Solaris /usr/include/iso/stdlib_iso.h abs has: int abs (int); long abs (long); overloads but already not long long abs (long long); and there is another abs use in get_nth_most_common_value, also on int64_t. The long long std::abs (long long); overload is there only in C++11 and we in GCC10 still support C++98. Martin has said that a counter should never be INT64_MIN, so IMHO it is better to use abs_hwi which will assert that. 2020-03-11 Jakub Jelinek <jakub@redhat.com> PR bootstrap/93962 * value-prof.c (dump_histogram_value): Use abs_hwi instead of std::abs. (get_nth_most_common_value): Use abs_hwi instead of abs.
This commit is contained in:
parent
312992f5a0
commit
60342fdbfb
@ -1,5 +1,10 @@
|
||||
2020-03-11 Jakub Jelinek <jakub@redhat.com>
|
||||
|
||||
PR bootstrap/93962
|
||||
* value-prof.c (dump_histogram_value): Use abs_hwi instead of
|
||||
std::abs.
|
||||
(get_nth_most_common_value): Use abs_hwi instead of abs.
|
||||
|
||||
PR middle-end/94111
|
||||
* dfp.c (decimal_to_binary): Only use decimal128ToString if from->cl
|
||||
is rvc_normal, otherwise use real_to_decimal to print the number to
|
||||
|
||||
@ -266,7 +266,7 @@ dump_histogram_value (FILE *dump_file, histogram_value hist)
|
||||
if (hist->hvalue.counters)
|
||||
{
|
||||
fprintf (dump_file, " all: %" PRId64 "%s, values: ",
|
||||
std::abs ((int64_t) hist->hvalue.counters[0]),
|
||||
(int64_t) abs_hwi (hist->hvalue.counters[0]),
|
||||
hist->hvalue.counters[0] < 0
|
||||
? " (values missing)": "");
|
||||
for (unsigned i = 0; i < GCOV_TOPN_VALUES; i++)
|
||||
@ -743,7 +743,7 @@ get_nth_most_common_value (gimple *stmt, const char *counter_type,
|
||||
*count = 0;
|
||||
*value = 0;
|
||||
|
||||
gcov_type read_all = abs (hist->hvalue.counters[0]);
|
||||
gcov_type read_all = abs_hwi (hist->hvalue.counters[0]);
|
||||
|
||||
gcov_type v = hist->hvalue.counters[2 * n + 1];
|
||||
gcov_type c = hist->hvalue.counters[2 * n + 2];
|
||||
|
||||
Loading…
Reference in New Issue
Block a user