|
GCC Middle and Back End API Reference
|
#include "config.h"#include "system.h"#include "coretypes.h"#include "tm.h"#include "version.h"#include "intl.h"#include "diagnostic.h"#include <getopt.h>#include "gcov-io.h"#include "gcov-io.cc"#include "gcov-counter.def"
Data Structures | |
| struct | tag_format |
Macros | |
| #define | INCLUDE_VECTOR |
| #define | IN_GCOV (-1) |
| #define | VALUE_PADDING_PREFIX " " |
| #define | VALUE_PREFIX "%2d: " |
| #define | DEF_GCOV_COUNTER(COUNTER, NAME, MERGE_FN) |
Typedefs | |
| typedef struct tag_format | tag_format_t |
Functions | |
| static void | dump_gcov_file (const char *) |
| static void | print_prefix (const char *, unsigned, gcov_position_t) |
| static void | print_usage (void) |
| static void | print_version (void) |
| static void | tag_function (const char *, unsigned, int, unsigned) |
| static void | tag_blocks (const char *, unsigned, int, unsigned) |
| static void | tag_arcs (const char *, unsigned, int, unsigned) |
| static void | tag_conditions (const char *, unsigned, int, unsigned) |
| static void | tag_paths (const char *, unsigned, int, unsigned) |
| static void | tag_lines (const char *, unsigned, int, unsigned) |
| static void | tag_suppress (const char *, unsigned, int, unsigned) |
| static void | tag_counters (const char *, unsigned, int, unsigned) |
| static void | tag_summary (const char *, unsigned, int, unsigned) |
| int | main (int, char **) |
Variables | |
| static int | flag_dump_contents = 0 |
| static int | flag_dump_positions = 0 |
| static int | flag_dump_raw = 0 |
| static int | flag_dump_stable = 0 |
| static const struct option | options [] |
| static const tag_format_t | tag_table [] |
| #define DEF_GCOV_COUNTER | ( | COUNTER, | |
| NAME, | |||
| MERGE_FN ) |
| #define IN_GCOV (-1) |
| #define INCLUDE_VECTOR |
Dump a gcov file, for debugging use. Copyright (C) 2002-2026 Free Software Foundation, Inc. Contributed by Nathan Sidwell <nathan@codesourcery.com> Gcov 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, or (at your option) any later version. Gcov 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 Gcov; see the file COPYING3. If not see <http://www.gnu.org/licenses/>.
| #define VALUE_PADDING_PREFIX " " |
Referenced by tag_arcs(), tag_conditions(), tag_counters(), tag_lines(), and tag_suppress().
| #define VALUE_PREFIX "%2d: " |
Referenced by tag_counters().
| typedef struct tag_format tag_format_t |
|
static |
References dump_gcov_file(), error(), flag_dump_contents, gcov_close(), GCOV_DATA_MAGIC, gcov_is_error(), gcov_magic(), GCOV_NOTE_MAGIC, gcov_open(), gcov_read_string(), gcov_read_unsigned(), gcov_sync(), GCOV_TAG_IS_COUNTER, GCOV_TAG_IS_SUBTAG, GCOV_TAG_MASK, GCOV_UNSIGNED2STRING, tag_format::name, print_prefix(), tag_format::proc, tag_format::tag, and tag_table.
Referenced by dump_gcov_file(), and main().
|
extern |
|
static |
References flag_dump_positions, and print_prefix().
Referenced by dump_gcov_file(), print_prefix(), tag_arcs(), tag_conditions(), tag_counters(), tag_lines(), and tag_suppress().
|
static |
References print_usage().
Referenced by main(), and print_usage().
|
static |
References print_version().
Referenced by main(), and print_version().
|
static |
References flag_dump_contents, GCOV_ARC_FAKE, GCOV_ARC_FALLTHROUGH, GCOV_ARC_ON_TREE, gcov_read_unsigned(), GCOV_TAG_ARCS_NUM, print_prefix(), tag_arcs(), and VALUE_PADDING_PREFIX.
Referenced by tag_arcs().
|
static |
References gcov_read_unsigned(), and tag_blocks().
Referenced by tag_blocks().
|
static |
Print number of conditions (not outcomes, i.e. if (x && y) is 2, not 4).
References flag_dump_contents, gcov_read_unsigned(), GCOV_TAG_CONDS_NUM, print_prefix(), tag_conditions(), and VALUE_PADDING_PREFIX.
Referenced by tag_conditions().
|
static |
Definitions for the gcov counters in the GNU compiler. Copyright (C) 2001-2026 Free Software Foundation, Inc. This file is part of GCC. GCC 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, or (at your option) any later version. GCC 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 GCC; see the file COPYING3. If not see <http://www.gnu.org/licenses/>.
Before including this file, define a macro: DEF_GCOV_COUNTER(COUNTER, NAME, FN_TYPE) This macro will be expanded to all supported gcov counters, their names, or the type of handler functions. FN_TYPE will be expanded to a handler function, like in gcov_merge, it is expanded to __gcov_merge ## FN_TYPE.
Arc transitions.
Histogram of value inside an interval.
Histogram of exact power2 logarithm of a value.
The most common value of expression.
The most common indirect address.
Compute average value passed to the counter.
IOR of the all values passed to counter.
Time profile collecting first run of a function
Conditions. The counter is interpreted as a bit-set.
Paths. The counter is interpreted as a bit-set.
References abort, flag_dump_contents, flag_dump_raw, flag_dump_stable, GCOV_COUNTER_FOR_TAG, gcov_read_counter(), GCOV_TAG_COUNTER_NUM, i, PRId64, print_prefix(), tag_counters(), VALUE_PADDING_PREFIX, and VALUE_PREFIX.
Referenced by tag_counters().
|
static |
References gcov_read_string(), gcov_read_unsigned(), line_start(), and tag_function().
Referenced by tag_function().
|
static |
References flag_dump_contents, gcov_read_string(), gcov_read_unsigned(), NULL, print_prefix(), tag_lines(), and VALUE_PADDING_PREFIX.
Referenced by tag_lines().
|
static |
References gcov_read_unsigned(), and tag_paths().
Referenced by tag_paths().
|
static |
References gcov_read_summary(), PRId64, gcov_summary::runs, gcov_summary::sum_max, and tag_summary().
Referenced by tag_summary().
|
static |
References flag_dump_contents, gcov_read_unsigned(), GCOV_TAG_SUPPRESS_NUM, i, print_prefix(), tag_suppress(), and VALUE_PADDING_PREFIX.
Referenced by tag_suppress().
|
static |
Referenced by dump_gcov_file(), main(), tag_arcs(), tag_conditions(), tag_counters(), tag_lines(), and tag_suppress().
|
static |
Referenced by main(), and print_prefix().
|
static |
Referenced by main(), and tag_counters().
|
static |
Referenced by main(), and tag_counters().
|
static |
|
static |
Referenced by dump_gcov_file().