From: Martin Liska Date: Thu, 22 Jun 2017 11:27:31 +0000 (+0200) Subject: Backport r247375 X-Git-Tag: releases/gcc-5.5.0~198 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=1c1758975fb0717bb1cbdd5203c2e5bddbe83915;p=thirdparty%2Fgcc.git Backport r247375 2017-06-22 Martin Liska Backport from mainline 2017-04-28 Martin Liska PR gcov-profile/53915 * gcov.c (format_gcov): Print 'NAN %' when top > bottom. From-SVN: r249529 --- diff --git a/gcc/ChangeLog b/gcc/ChangeLog index e4f023f03c01..5022643b23d5 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,11 @@ +2017-06-22 Martin Liska + + Backport from mainline + 2017-04-28 Martin Liska + + PR gcov-profile/53915 + * gcov.c (format_gcov): Print 'NAN %' when top > bottom. + 2017-06-22 Martin Liska Backport from mainline diff --git a/gcc/gcov.c b/gcc/gcov.c index fd65efff94e1..79128ff50c05 100644 --- a/gcc/gcov.c +++ b/gcc/gcov.c @@ -1768,6 +1768,13 @@ format_gcov (gcov_type top, gcov_type bottom, int dp) { static char buffer[20]; + /* Handle invalid values that would result in a misleading value. */ + if (bottom != 0 && top > bottom && dp >= 0) + { + sprintf (buffer, "NAN %%"); + return buffer; + } + if (dp >= 0) { float ratio = bottom ? (float)top / bottom : 0;