]> git.saurik.com Git - bison.git/blobdiff - lib/timevar.c
Merge remote-tracking branch 'origin/maint'
[bison.git] / lib / timevar.c
index 927eac262fed63854d868fe56d819b871fb79b34..c14c37d53fb5732368b094952b8775fb2a700712 100644 (file)
@@ -1,27 +1,27 @@
 /* Timing variables for measuring compiler performance.
-   Copyright (C) 2000, 2002 Free Software Foundation, Inc.
+
+   Copyright (C) 2000, 2002, 2004, 2006, 2009-2012 Free Software
+   Foundation, Inc.
+
    Contributed by Alex Samuel <samuel@codesourcery.com>
 
-This file is part of Bison, the GNU Compiler Compiler.
+   This program is free software: you can redistribute it and/or modify
+   it under the terms of the GNU General Public License as published by
+   the Free Software Foundation, either version 3 of the License, or
+   (at your option) any later version.
 
-Bison is free software; you can redistribute it and/or modify it under
-the terms of the GNU General Public License as published by the Free
-Software Foundation; either version 2, or (at your option) any later
-version.
+   This program is distributed in the hope that it will be useful,
+   but WITHOUT ANY WARRANTY; without even the implied warranty of
+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+   GNU General Public License for more details.
 
-Bison is distributed in the hope that it will be useful, but WITHOUT ANY
-WARRANTY; without even the implied warranty of MERCHANTABILITY or
-FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
-for more details.
+   You should have received a copy of the GNU General Public License
+   along with this program.  If not, see <http://www.gnu.org/licenses/>.  */
 
-You should have received a copy of the GNU General Public License
-along with Bison; see the file COPYING.  If not, write to the Free
-Software Foundation, 59 Temple Place - Suite 330, Boston, MA
-02111-1307, USA.  */
+#include <config.h>
 
 #if IN_GCC
 
-#include "config.h"
 #include "system.h"
 #include "intl.h"
 #include "rtl.h"
@@ -31,7 +31,7 @@ Software Foundation, 59 Temple Place - Suite 330, Boston, MA
 /* This source file is taken from the GCC source code, with slight
    modifications that are under control of the IN_GCC preprocessor
    variable.  The !IN_GCC part of this file is specific to Bison.  */
-   
+
 # include "../src/system.h"
 # if HAVE_SYS_TIME_H
 #  include <sys/time.h>
@@ -63,13 +63,13 @@ struct tms
 #endif
 
 #if defined HAVE_DECL_GETRUSAGE && !HAVE_DECL_GETRUSAGE
-extern int getrusage PARAMS ((int, struct rusage *));
+extern int getrusage (int, struct rusage *);
 #endif
 #if defined HAVE_DECL_TIMES && !HAVE_DECL_TIMES
-extern clock_t times PARAMS ((struct tms *));
+extern clock_t times (struct tms *);
 #endif
 #if defined HAVE_DECL_CLOCK && !HAVE_DECL_CLOCK
-extern clock_t clock PARAMS ((void));
+extern clock_t clock (void);
 #endif
 
 #ifndef RUSAGE_SELF
@@ -187,11 +187,10 @@ static struct timevar_stack_def *unused_stack_instances;
    element.  */
 static struct timevar_time_def start_time;
 
-static void get_time
-  PARAMS ((struct timevar_time_def *));
-static void timevar_accumulate
-  PARAMS ((struct timevar_time_def *, struct timevar_time_def *,
-          struct timevar_time_def *));
+static void get_time (struct timevar_time_def *);
+static void timevar_accumulate (struct timevar_time_def *,
+                                struct timevar_time_def *,
+                                struct timevar_time_def *);
 
 /* Fill the current times into TIME.  The definition of this function
    also defines any or all of the HAVE_USER_TIME, HAVE_SYS_TIME, and
@@ -448,7 +447,7 @@ timevar_print (fp)
      FILE *fp;
 {
   /* Only print stuff if we have some sort of time information.  */
-#if defined (HAVE_USER_TIME) || defined (HAVE_SYS_TIME) || defined (HAVE_WALL_TIME)
+#if defined HAVE_USER_TIME || defined HAVE_SYS_TIME || defined HAVE_WALL_TIME
   unsigned int /* timevar_id_t */ id;
   struct timevar_time_def *total = &timevars[TV_TOTAL].elapsed;
   struct timevar_time_def now;
@@ -480,20 +479,20 @@ timevar_print (fp)
       const float tiny = 5e-3;
 
       /* Don't print the total execution time here; that goes at the
-        end.  */
+         end.  */
       if ((timevar_id_t) id == TV_TOTAL)
-       continue;
+        continue;
 
       /* Don't print timing variables that were never used.  */
       if (!tv->used)
-       continue;
+        continue;
 
       /* Don't print timing variables if we're going to get a row of
          zeroes.  */
       if (tv->elapsed.user < tiny
-         && tv->elapsed.sys < tiny
-         && tv->elapsed.wall < tiny)
-       continue;
+          && tv->elapsed.sys < tiny
+          && tv->elapsed.wall < tiny)
+        continue;
 
       /* The timing variable name.  */
       fprintf (fp, " %-22s:", tv->name);
@@ -501,22 +500,22 @@ timevar_print (fp)
 #ifdef HAVE_USER_TIME
       /* Print user-mode time for this process.  */
       fprintf (fp, "%7.2f (%2.0f%%) usr",
-              tv->elapsed.user,
-              (total->user == 0 ? 0 : tv->elapsed.user / total->user) * 100);
+               tv->elapsed.user,
+               (total->user == 0 ? 0 : tv->elapsed.user / total->user) * 100);
 #endif /* HAVE_USER_TIME */
 
 #ifdef HAVE_SYS_TIME
       /* Print system-mode time for this process.  */
       fprintf (fp, "%7.2f (%2.0f%%) sys",
-              tv->elapsed.sys,
-              (total->sys == 0 ? 0 : tv->elapsed.sys / total->sys) * 100);
+               tv->elapsed.sys,
+               (total->sys == 0 ? 0 : tv->elapsed.sys / total->sys) * 100);
 #endif /* HAVE_SYS_TIME */
 
 #ifdef HAVE_WALL_TIME
       /* Print wall clock time elapsed.  */
       fprintf (fp, "%7.2f (%2.0f%%) wall",
-              tv->elapsed.wall,
-              (total->wall == 0 ? 0 : tv->elapsed.wall / total->wall) * 100);
+               tv->elapsed.wall,
+               (total->wall == 0 ? 0 : tv->elapsed.wall / total->wall) * 100);
 #endif /* HAVE_WALL_TIME */
 
       putc ('\n', fp);
@@ -535,7 +534,7 @@ timevar_print (fp)
 #endif
 
 #endif /* defined (HAVE_USER_TIME) || defined (HAVE_SYS_TIME)
-         || defined (HAVE_WALL_TIME) */
+          || defined (HAVE_WALL_TIME) */
 }
 
 /* Returns time (user + system) used so far by the compiler process,
@@ -559,8 +558,8 @@ print_time (str, total)
 {
   long all_time = get_run_time ();
   fprintf (stderr,
-          _("time in %s: %ld.%06ld (%ld%%)\n"),
-          str, total / 1000000, total % 1000000,
-          all_time == 0 ? 0
-          : (long) (((100.0 * (double) total) / (double) all_time) + .5));
+           _("time in %s: %ld.%06ld (%ld%%)\n"),
+           str, total / 1000000, total % 1000000,
+           all_time == 0 ? 0
+           : (long) (((100.0 * (double) total) / (double) all_time) + .5));
 }