GCC Middle and Back End API Reference
ddg Struct Reference

#include <ddg.h>

Collaboration diagram for ddg:

Data Fields

basic_block bb
int num_nodes
int num_loads
int num_stores
int num_debug
ddg_node_ptr nodes
ddg_node_ptr closing_branch
int closing_branch_deps
int num_backarcs
ddg_edge_ptrbackarcs

Detailed Description

This structure holds the Data Dependence Graph for a basic block.


Field Documentation

ddg_edge_ptr* ddg::backarcs
basic_block ddg::bb

The basic block for which this DDG is built.

ddg_node_ptr ddg::closing_branch

The branch closing the loop.

int ddg::closing_branch_deps

Build dependence edges for closing_branch, when set. In certain cases, the closing branch can be dealt with separately from the insns of the loop, and then no such deps are needed.

ddg_node_ptr ddg::nodes

This array holds the nodes in the graph; it is indexed by the node cuid, which follows the order of the instructions in the BB.

int ddg::num_backarcs

Array and number of backarcs (edges with distance > 0) in the DDG.

int ddg::num_debug

Number of debug instructions in the BB.

int ddg::num_loads

Number of load/store instructions in the BB - statistics.

int ddg::num_nodes

Number of instructions in the basic block.

int ddg::num_stores

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