This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

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


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]