/* This file contains the definitions for timing variables used to -*- C -*-
   measure run-time performance of the compiler.

   Copyright (C) 2002, 2007, 2009-2015, 2018-2022, 2025-2026 Free
   Software Foundation, Inc.

   Contributed by Akim Demaille <akim@freefriends.org>.

   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.

   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.

   You should have received a copy of the GNU General Public License
   along with this program.  If not, see <https://www.gnu.org/licenses/>.  */

/* This file contains timing variable definitions, used by timevar.h
   and timevar.c.

   Syntax:

     DEFTIMEVAR (id, name)

   where ID is the enum value used to identify the timing
   variable, and NAME is a character string describing its purpose.  */

/* The total execution time.  */
DEFTIMEVAR (tv_total                 , "total time")

/* Time spent in the reader.  */
DEFTIMEVAR (tv_reader                , "reader")
DEFTIMEVAR (tv_scanning              , "scanner")
DEFTIMEVAR (tv_parsing               , "parser")

/* Time spent handling the grammar.  */
DEFTIMEVAR (tv_reduce                , "reducing the grammar")
DEFTIMEVAR (tv_sets                  , "computing the sets")
DEFTIMEVAR (tv_lr0                   , "LR(0)")
DEFTIMEVAR (tv_lalr                  , "LALR(1)")
DEFTIMEVAR (tv_ielr_phase1           , "IELR(1) Phase 1")
DEFTIMEVAR (tv_ielr_phase2           , "IELR(1) Phase 2")
DEFTIMEVAR (tv_ielr_phase3           , "IELR(1) Phase 3")
DEFTIMEVAR (tv_ielr_phase4           , "IELR(1) Phase 4")
DEFTIMEVAR (tv_conflicts             , "conflicts")

/* Time spent outputting results.  */
DEFTIMEVAR (tv_report                , "outputting report")
DEFTIMEVAR (tv_graph                 , "outputting graph")
DEFTIMEVAR (tv_html                  , "outputting html")
DEFTIMEVAR (tv_xml                   , "outputting xml")
DEFTIMEVAR (tv_actions               , "parser action tables")
DEFTIMEVAR (tv_parser                , "outputting parser")
DEFTIMEVAR (tv_m4                    , "running m4")

/* Time spent by freeing the memory :).  */
DEFTIMEVAR (tv_free                  , "freeing")
