GCC Middle and Back End API Reference
block_info Struct Reference
Collaboration diagram for block_info:

Data Fields

arc_tsucc
arc_tpred
gcov_type num_succ
gcov_type num_pred
gcov_type count
unsigned flags: 12
unsigned count_valid: 1
unsigned valid_chain: 1
unsigned invalid_chain: 1
unsigned exceptional: 1
unsigned is_call_site: 1
unsigned is_call_return: 1
unsigned is_nonlocal_return: 1
union {
   struct {
      unsigned *   encoding
      unsigned   num
   }   line
   struct {
      arc_t *   arc
      unsigned   ident
   }   cycle
u
struct block_infochain

Detailed Description

Describes a basic block. Contains lists of arcs to successor and predecessor blocks.


Field Documentation

arc_t* block_info::arc

Single line graph cycle workspace. Used for all-blocks mode.

struct block_info* block_info::chain

Temporary chain for solving graph, and for chaining blocks on one line.

Referenced by make_gcov_file_name(), and mangle_name().

gcov_type block_info::count

Block execution count.

Referenced by get_gcov_intermediate_filename().

unsigned block_info::count_valid
struct { ... } block_info::cycle

Referenced by mangle_name().

unsigned* block_info::encoding

Array of line numbers and source files. source files are introduced by a linenumber of zero, the next 'line number' is the number of the source file. Always starts with a source file.

unsigned block_info::exceptional
unsigned block_info::flags
unsigned block_info::ident
unsigned block_info::invalid_chain
unsigned block_info::is_call_return
unsigned block_info::is_call_site

Block is a call instrumenting site.

Referenced by read_graph_file().

unsigned block_info::is_nonlocal_return

Block is a landing pad for longjmp or throw.

Referenced by read_graph_file().

struct { ... } block_info::line
unsigned block_info::num
gcov_type block_info::num_pred

Referenced by read_graph_file().

gcov_type block_info::num_succ

Number of unprocessed exit and entry arcs.

Referenced by read_graph_file().

arc_t* block_info::pred

Referenced by mangle_name(), and read_graph_file().

arc_t* block_info::succ

Chain of exit and entry arcs.

Referenced by read_graph_file().

union { ... } block_info::u
unsigned block_info::valid_chain

The documentation for this struct was generated from the following file: