GCC Middle and Back End API Reference
|
#include <value-relation.h>
Public Member Functions | |
virtual | ~relation_oracle () |
void | record (gimple *, relation_kind, tree, tree) |
void | record (edge, relation_kind, tree, tree) |
virtual void | record (basic_block, relation_kind, tree, tree) |
relation_kind | query (gimple *s, tree ssa1, tree ssa2) |
relation_kind | query (edge e, tree ssa1, tree ssa2) |
virtual relation_kind | query (basic_block, tree, tree) |
virtual void | dump (FILE *, basic_block) const |
virtual void | dump (FILE *) const |
void | debug () const |
Protected Member Functions | |
virtual const_bitmap | equiv_set (tree, basic_block) |
virtual const class pe_slice * | partial_equiv_set (tree) |
void | valid_equivs (bitmap b, const_bitmap equivs, basic_block bb) |
virtual relation_kind | query (basic_block, const_bitmap, const_bitmap) |
Friends | |
class | equiv_relation_iterator |
class | path_oracle |
|
inlinevirtual |
void relation_oracle::debug | ( | ) | const |
References dump().
|
inlinevirtual |
Reimplemented in dom_oracle, equiv_oracle, and path_oracle.
|
inlinevirtual |
Reimplemented in dom_oracle, equiv_oracle, and path_oracle.
Referenced by debug(), and ranger_cache::dump_bb().
|
inlineprotectedvirtual |
Reimplemented in equiv_oracle, and path_oracle.
References NULL.
Referenced by equiv_relation_iterator::equiv_relation_iterator(), path_oracle::equiv_set(), and valid_equivs().
Reimplemented in equiv_oracle.
References NULL.
Referenced by equiv_relation_iterator::equiv_relation_iterator(), and equiv_relation_iterator::get_name().
|
inlineprotectedvirtual |
Reimplemented in dom_oracle, equiv_oracle, and path_oracle.
References VREL_VARYING.
|
inlinevirtual |
Reimplemented in dom_oracle, equiv_oracle, and path_oracle.
References VREL_VARYING.
relation_kind relation_oracle::query | ( | edge | e, |
tree | ssa1, | ||
tree | ssa2 ) |
References query(), single_pred_p(), TREE_CODE, and VREL_VARYING.
relation_kind relation_oracle::query | ( | gimple * | s, |
tree | ssa1, | ||
tree | ssa2 ) |
References gimple_bb(), query(), TREE_CODE, and VREL_VARYING.
Referenced by path_oracle::query(), query(), query(), fur_stmt::query_relation(), jt_fur_source::query_relation(), and fold_using_range::range_of_phi().
|
inlinevirtual |
Reimplemented in dom_oracle, equiv_oracle, and path_oracle.
void relation_oracle::record | ( | edge | e, |
relation_kind | k, | ||
tree | op1, | ||
tree | op2 ) |
References value_relation::dump(), dump_file, dump_flags, gcc_checking_assert, record(), single_pred_p(), TDF_DETAILS, TREE_CODE, and VREL_VARYING.
void relation_oracle::record | ( | gimple * | stmt, |
relation_kind | k, | ||
tree | op1, | ||
tree | op2 ) |
References value_relation::dump(), dump_file, dump_flags, gcc_checking_assert, gimple_bb(), gimple_phi_result(), is_a(), print_generic_expr(), print_gimple_stmt(), record(), SSA_NAME_DEF_STMT, TDF_DETAILS, TDF_SLIM, TREE_CODE, VREL_EQ, and VREL_VARYING.
Referenced by path_range_query::maybe_register_phi_relation(), record(), record(), fur_depend::register_relation(), fur_depend::register_relation(), jt_fur_source::register_relation(), and jt_fur_source::register_relation().
|
protected |
References b, bitmap_set_bit, equiv_set(), EXECUTE_IF_SET_IN_BITMAP, i, ssa_name, and SSA_NAME_IN_FREE_LIST.
Referenced by equiv_oracle::register_equiv(), equiv_oracle::register_equiv(), and path_oracle::register_equiv().
|
friend |
|
friend |