![]() |
PandA-2024.02
|
Class used to compute weak dominance. More...
#include <weak_dominance.hpp>

Public Member Functions | |
| weak_dominance (const graph *_input, vertex _start, vertex _end, const ParameterConstRef param, int selector=WD_SELECTOR) | |
| Constructor. More... | |
| ~weak_dominance ()=default | |
| Destructor. More... | |
| void | calculate_weak_dominance_info (graphs_collection *output, CustomUnorderedMap< vertex, vertex > &i2o, CustomUnorderedMap< vertex, vertex > &o2i) |
| Compute weak dominance info. More... | |
Private Member Functions | |
| void | add_edge (vertex source, vertex target, graphs_collection *output) |
| Add a weak dominance edge between two nodes. More... | |
Private Attributes | |
| const graph * | input |
| the input graph (not const since node info are copied in the new graph More... | |
| vertex | start |
| the entry vertex More... | |
| vertex | end |
| the exit vertex More... | |
| const int | selector |
| the selector used in output graph More... | |
| const ParameterConstRef | param |
| The set of input parameters. More... | |
| const int | debug_level |
| the debug level More... | |
Class used to compute weak dominance.
Definition at line 58 of file weak_dominance.hpp.
| weak_dominance::weak_dominance | ( | const graph * | _input, |
| vertex | _start, | ||
| vertex | _end, | ||
| const ParameterConstRef | param, | ||
| int | selector = WD_SELECTOR |
||
| ) |
Constructor.
| _input | is the input graph |
| _start | is the start vertex |
| _end | is the end vertex |
| _param | is the set of input parameters |
| _selector | is the selctor of edges to be added |
Definition at line 115 of file weak_dominance.cpp.
|
default |
Destructor.
|
private |
Add a weak dominance edge between two nodes.
| source | is the source vertex |
| target | is the target vertex |
| output | is the graph |
Definition at line 126 of file weak_dominance.cpp.
References graphs_collection::AddSelector(), graphs_collection::ExistsEdge(), graphs_collection::InternalAddEdge(), and selector.
Referenced by calculate_weak_dominance_info().


| void weak_dominance::calculate_weak_dominance_info | ( | graphs_collection * | output, |
| CustomUnorderedMap< vertex, vertex > & | i2o, | ||
| CustomUnorderedMap< vertex, vertex > & | o2i | ||
| ) |
Compute weak dominance info.
Header include.
| output | is the graph on which weak dominance edges have to be added; |
| i2o | is the map from input vertex to output vertex |
| o2i | is the map from output vertex to input vertex |
Definition at line 57 of file weak_dominance.cpp.
References A, add_edge(), graphs_collection::AddVertex(), B, dominance< GraphObj >::calculate_dominance_info(), counter, edges, end, dominance< GraphObj >::get_dominator_map(), input, level, param, start, lenet_tvm::target, and THROW_ASSERT.

|
private |
the debug level
Definition at line 77 of file weak_dominance.hpp.
|
private |
the exit vertex
Definition at line 68 of file weak_dominance.hpp.
Referenced by calculate_weak_dominance_info().
|
private |
the input graph (not const since node info are copied in the new graph
Definition at line 62 of file weak_dominance.hpp.
Referenced by calculate_weak_dominance_info().
|
private |
The set of input parameters.
Definition at line 74 of file weak_dominance.hpp.
Referenced by calculate_weak_dominance_info().
|
private |
the selector used in output graph
Definition at line 71 of file weak_dominance.hpp.
Referenced by add_edge().
|
private |
the entry vertex
Definition at line 65 of file weak_dominance.hpp.
Referenced by calculate_weak_dominance_info().
1.8.13