This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Fix overflows in -ftime-report
- From: Jan Hubicka <hubicka at ucw dot cz>
- To: gcc-patches at gcc dot gnu dot org
- Date: Thu, 22 Aug 2013 17:03:18 +0200
- Subject: Fix overflows in -ftime-report
Hi,
this patch fixes overflow happening in -ftime-report when printing memory usage
of bigger WPA compilations.
Honza
* timevar.c (validate_phases): Use size_t for memory.
* timevar.h (struct timevar_time_def): Use size_t for ggc_mem.
Index: timevar.c
===================================================================
--- timevar.c (revision 201919)
+++ timevar.c (working copy)
@@ -430,7 +430,7 @@ validate_phases (FILE *fp)
double phase_user = 0.0;
double phase_sys = 0.0;
double phase_wall = 0.0;
- unsigned phase_ggc_mem = 0;
+ size_t phase_ggc_mem = 0;
static char phase_prefix[] = "phase ";
const double tolerance = 1.000001; /* One part in a million. */
@@ -465,7 +465,7 @@ validate_phases (FILE *fp)
if (phase_wall > total->wall)
fprintf (fp, "wall %24.18e > %24.18e\n", phase_wall, total->wall);
if (phase_ggc_mem > total->ggc_mem)
- fprintf (fp, "ggc_mem %24u > %24u\n", phase_ggc_mem, total->ggc_mem);
+ fprintf (fp, "ggc_mem %24lu > %24lu\n", phase_ggc_mem, total->ggc_mem);
gcc_unreachable ();
}
}
Index: timevar.h
===================================================================
--- timevar.h (revision 201919)
+++ timevar.h (working copy)
@@ -62,7 +62,7 @@ struct timevar_time_def
double wall;
/* Garbage collector memory. */
- unsigned ggc_mem;
+ size_t ggc_mem;
};
/* An enumeration of timing variable identifiers. Constructed from