GCC Middle and Back End API Reference
|
#include <gimple-range-fold.h>
Public Member Functions | |
fur_depend (gimple *s, range_query *q=NULL) | |
virtual void | register_relation (gimple *stmt, relation_kind k, tree op1, tree op2) override |
virtual void | register_relation (edge e, relation_kind k, tree op1, tree op2) override |
virtual bool | get_operand (vrange &r, tree expr) override |
virtual bool | get_phi_operand (vrange &r, tree expr, edge e) override |
virtual relation_kind | query_relation (tree op1, tree op2) override |
range_query * | query () const |
gori_map * | gori_ssa () const |
class gimple_outgoing_range * | gori () |
void | register_outgoing_edges (gcond *, irange &lhs_range, edge e0, edge e1) |
Protected Attributes | |
range_query * | m_query |
bool | m_depend_p |
Private Attributes | |
gimple * | m_stmt |
fur_depend::fur_depend | ( | gimple * | s, |
range_query * | q = NULL ) |
References fur_source::m_depend_p.
Reimplemented from fur_source.
References fur_source::m_query, fur_stmt::m_stmt, r, and range_query::range_of_expr().
Referenced by gori_stmt_info::gori_stmt_info(), op1_range(), and op2_range().
Reimplemented from fur_source.
References fur_edge::get_operand(), fur_source::m_query, and r.
|
inlineinherited |
References range_query::gori(), fur_source::m_depend_p, fur_source::m_query, and NULL.
Referenced by fold_using_range::condexpr_adjust(), fur_source::register_outgoing_edges(), and fold_using_range::relation_fold_and_or().
|
inlineinherited |
|
inlineinherited |
References fur_source::m_query.
Referenced by fold_using_range::range_of_phi(), and fold_using_range::range_of_ssa_name_with_loop_info().
|
overridevirtualinherited |
Reimplemented from fur_source.
Reimplemented in jt_fur_source.
References fur_source::m_query, fur_stmt::m_stmt, relation_oracle::query(), and range_query::relation().
|
inherited |
References FOR_EACH_GORI_EXPORT_NAME, gcond_edge_range(), gimple_bb(), gimple_range_ssa_p(), fur_source::gori(), fur_source::gori_ssa(), irange::intersect(), fur_source::m_query, NULL, range_op_handler::op1_op2_relation(), gimple_range_op_handler::operand1(), gimple_range_op_handler::operand2(), r, fur_source::register_relation(), value_range::set_varying(), SSA_NAME_DEF_STMT, TREE_CODE, TREE_TYPE, vrange::undefined_p(), and VREL_VARYING.
Referenced by path_range_query::compute_outgoing_relations(), and fold_using_range::range_of_range_op().
|
overridevirtual |
Reimplemented from fur_source.
Reimplemented in jt_fur_source.
References fur_source::m_query, relation_oracle::record(), and range_query::relation().
|
overridevirtual |
Reimplemented from fur_source.
Reimplemented in jt_fur_source.
References fur_source::m_query, relation_oracle::record(), and range_query::relation().
|
protectedinherited |
Referenced by fur_depend(), fur_source::fur_source(), fur_source::gori(), and fur_source::gori_ssa().
|
protectedinherited |
Referenced by fur_source::fur_source(), fur_edge::get_operand(), fur_list::get_operand(), fur_source::get_operand(), fur_stmt::get_operand(), fur_edge::get_phi_operand(), fur_source::get_phi_operand(), fur_stmt::get_phi_operand(), fur_source::gori(), fur_source::gori_ssa(), fur_source::query(), fur_stmt::query_relation(), jt_fur_source::query_relation(), fur_source::register_outgoing_edges(), register_relation(), register_relation(), jt_fur_source::register_relation(), and jt_fur_source::register_relation().
|
privateinherited |
Referenced by fur_stmt::fur_stmt(), fur_stmt::get_operand(), and fur_stmt::query_relation().