aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorNeil Booth <neil@daikokuya.co.uk>2003-04-26 15:19:06 +0000
committerNeil Booth <neil@gcc.gnu.org>2003-04-26 15:19:06 +0000
commit09b04f2d9f3a2fd97e9794dc7fc7857de4be971c (patch)
tree6424ff69f6fae47ba0b6239a1c29e1973c0dafc6 /gcc
parent3e35d143117380707aebb2c46f3ec7e200f46b04 (diff)
downloadgcc-09b04f2d9f3a2fd97e9794dc7fc7857de4be971c.zip
gcc-09b04f2d9f3a2fd97e9794dc7fc7857de4be971c.tar.gz
gcc-09b04f2d9f3a2fd97e9794dc7fc7857de4be971c.tar.bz2
flags.h (time_report): Remove.
* flags.h (time_report): Remove. * timevar.c (timevar_enable): New. (TIMEVAR_ENABLE): Remove, use timevar_enable. (timevar_init): Rename from init_timevar. * timevar.h (timevar_init): Rename from init_timevar. * toplev.c (time_report): Make static. (do_compile): Conditionally call init_timevar first. (preprocess_options): Move some code to do_compile. From-SVN: r66110
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog11
-rw-r--r--gcc/flags.h4
-rw-r--r--gcc/timevar.c22
-rw-r--r--gcc/timevar.h2
-rw-r--r--gcc/toplev.c40
5 files changed, 41 insertions, 38 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 74ca384..f96ea70 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,14 @@
+2003-04-26 Neil Booth <neil@daikokuya.co.uk>
+
+ * flags.h (time_report): Remove.
+ * timevar.c (timevar_enable): New.
+ (TIMEVAR_ENABLE): Remove, use timevar_enable.
+ (timevar_init): Rename from init_timevar.
+ * timevar.h (timevar_init): Rename from init_timevar.
+ * toplev.c (time_report): Make static.
+ (do_compile): Conditionally call init_timevar first.
+ (preprocess_options): Move some code to do_compile.
+
2003-04-26 Stephane Carrez <stcarrez@nerim.fr>
* doc/install.texi (Binaries): Mention binaries for HC11/HC12.
diff --git a/gcc/flags.h b/gcc/flags.h
index e02c3de..982cb93 100644
--- a/gcc/flags.h
+++ b/gcc/flags.h
@@ -72,10 +72,6 @@ extern int optimize_size;
extern int quiet_flag;
-/* Print times taken by the various passes. -ftime-report. */
-
-extern int time_report;
-
/* Print memory still in use at end of compilation (which may have little
to do with peak memory consumption). -fmem-report. */
diff --git a/gcc/timevar.c b/gcc/timevar.c
index 2eeeaa2..534001b 100644
--- a/gcc/timevar.c
+++ b/gcc/timevar.c
@@ -113,10 +113,9 @@ static double clocks_to_msec;
#include "flags.h"
#include "timevar.h"
-/* See timevar.h for an explanation of timing variables. */
+static bool timevar_enable;
-/* This macro evaluates to nonzero if timing variables are enabled. */
-#define TIMEVAR_ENABLE (time_report)
+/* See timevar.h for an explanation of timing variables. */
/* A timing variable. */
@@ -187,7 +186,7 @@ get_time (now)
now->sys = 0;
now->wall = 0;
- if (!TIMEVAR_ENABLE)
+ if (!timevar_enable)
return;
{
@@ -225,10 +224,9 @@ timevar_accumulate (timer, start_time, stop_time)
/* Initialize timing variables. */
void
-init_timevar ()
+timevar_init ()
{
- if (!TIMEVAR_ENABLE)
- return;
+ timevar_enable = true;
/* Zero all elapsed times. */
memset ((void *) timevars, 0, sizeof (timevars));
@@ -262,7 +260,7 @@ timevar_push (timevar)
struct timevar_stack_def *context;
struct timevar_time_def now;
- if (!TIMEVAR_ENABLE)
+ if (!timevar_enable)
return;
/* Mark this timing variable as used. */
@@ -314,7 +312,7 @@ timevar_pop (timevar)
struct timevar_time_def now;
struct timevar_stack_def *popped = stack;
- if (!TIMEVAR_ENABLE)
+ if (!timevar_enable)
return;
if (&timevars[timevar] != stack->timevar)
@@ -353,7 +351,7 @@ timevar_start (timevar)
{
struct timevar_def *tv = &timevars[timevar];
- if (!TIMEVAR_ENABLE)
+ if (!timevar_enable)
return;
/* Mark this timing variable as used. */
@@ -378,7 +376,7 @@ timevar_stop (timevar)
struct timevar_def *tv = &timevars[timevar];
struct timevar_time_def now;
- if (!TIMEVAR_ENABLE)
+ if (!timevar_enable)
return;
/* TIMEVAR must have been started via timevar_start. */
@@ -430,7 +428,7 @@ timevar_print (fp)
struct timevar_time_def *total = &timevars[TV_TOTAL].elapsed;
struct timevar_time_def now;
- if (!TIMEVAR_ENABLE)
+ if (!timevar_enable)
return;
/* Update timing information in case we're calling this from GDB. */
diff --git a/gcc/timevar.h b/gcc/timevar.h
index 5d5a018..abcbb95 100644
--- a/gcc/timevar.h
+++ b/gcc/timevar.h
@@ -79,7 +79,7 @@ timevar_id_t;
/* Execute the sequence: timevar_pop (TV), return (E); */
#define POP_TIMEVAR_AND_RETURN(TV, E) return (timevar_pop (TV), (E))
-extern void init_timevar PARAMS ((void));
+extern void timevar_init PARAMS ((void));
extern void timevar_push PARAMS ((timevar_id_t));
extern void timevar_pop PARAMS ((timevar_id_t));
extern void timevar_start PARAMS ((timevar_id_t));
diff --git a/gcc/toplev.c b/gcc/toplev.c
index f0f25db..4d7e351 100644
--- a/gcc/toplev.c
+++ b/gcc/toplev.c
@@ -431,7 +431,7 @@ int quiet_flag = 0;
/* Print times taken by the various passes. -ftime-report. */
-int time_report = 0;
+static int time_report = 0;
/* Print memory still in use at end of compilation (which may have little
to do with peak memory consumption). -fmem-report. */
@@ -5326,9 +5326,6 @@ process_options ()
print_switch_values (stderr, 0, MAX_LINE, "", " ", "\n");
}
- if (! quiet_flag || flag_detailed_statistics)
- time_report = 1;
-
if (flag_syntax_only)
{
write_symbols = NO_DEBUG;
@@ -5562,20 +5559,27 @@ finalize ()
static void
do_compile ()
{
- /* We cannot start timing until after options are processed since that
- says if we run timers or not. */
- init_timevar ();
+ /* Initialize timing first. The C front ends read the main file in
+ the post_options hook, and C++ does file timings. */
+ if (time_report || !quiet_flag || flag_detailed_statistics)
+ timevar_init ();
timevar_start (TV_TOTAL);
- /* Set up the back-end if requested. */
- if (!no_backend)
- backend_init ();
+ process_options ();
+
+ /* Don't do any more if an error has already occurred. */
+ if (!errorcount)
+ {
+ /* Set up the back-end if requested. */
+ if (!no_backend)
+ backend_init ();
- /* Language-dependent initialization. Returns true on success. */
- if (lang_dependent_init (filename))
- compile_file ();
+ /* Language-dependent initialization. Returns true on success. */
+ if (lang_dependent_init (filename))
+ compile_file ();
- finalize ();
+ finalize ();
+ }
/* Stop timing and print the times. */
timevar_stop (TV_TOTAL);
@@ -5603,13 +5607,7 @@ toplev_main (argc, argv)
/* Exit early if we can (e.g. -help). */
if (!exit_after_options)
- {
- process_options ();
-
- /* Don't do any more if an error has already occurred. */
- if (!errorcount)
- do_compile ();
- }
+ do_compile ();
if (errorcount || sorrycount)
return (FATAL_EXIT_CODE);