GCC Middle and Back End API Reference
fur_relation Class Reference
Inheritance diagram for fur_relation:
Collaboration diagram for fur_relation:

Public Member Functions

 fur_relation (gimple *s, range_query *q=NULL)
 
virtual void register_relation (gimple *stmt, relation_kind k, tree op1, tree op2)
 
virtual void register_relation (edge e, relation_kind k, tree op1, tree op2)
 
relation_trio trio () const
 
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_queryquery ()
 
class gori_computegori ()
 
void register_outgoing_edges (gcond *, irange &lhs_range, edge e0, edge e1)
 

Protected Attributes

range_querym_query
 
gori_computem_gori
 

Private Attributes

relation_kind def_op1
 
relation_kind def_op2
 
relation_kind op1_op2
 
gimplem_stmt
 

Constructor & Destructor Documentation

◆ fur_relation()

fur_relation::fur_relation ( gimple * s,
range_query * q = NULL )

References def_op1, def_op2, op1_op2, and VREL_VARYING.

Member Function Documentation

◆ get_operand()

bool fur_stmt::get_operand ( vrange & r,
tree expr )
overridevirtualinherited

◆ get_phi_operand()

bool fur_stmt::get_phi_operand ( vrange & r,
tree expr,
edge e )
overridevirtualinherited

Reimplemented from fur_source.

References ggc_alloc(), fur_source::m_query, and r.

◆ gori()

◆ query()

◆ query_relation()

relation_kind fur_stmt::query_relation ( tree op1,
tree op2 )
overridevirtualinherited

Reimplemented from fur_source.

Reimplemented in jt_fur_source.

References fur_source::m_query, fur_stmt::m_stmt, and range_query::query_relation().

◆ register_outgoing_edges()

◆ register_relation() [1/2]

void fur_relation::register_relation ( edge e,
relation_kind k,
tree op1,
tree op2 )
virtual

Reimplemented from fur_source.

◆ register_relation() [2/2]

◆ trio()

relation_trio fur_relation::trio ( ) const

References def_op1, def_op2, and op1_op2.

Referenced by fold_relations().

Field Documentation

◆ def_op1

relation_kind fur_relation::def_op1
private

◆ def_op2

relation_kind fur_relation::def_op2
private

◆ m_gori

gori_compute* fur_source::m_gori
protectedinherited

◆ m_query

◆ m_stmt

gimple* fur_stmt::m_stmt
privateinherited

◆ op1_op2

relation_kind fur_relation::op1_op2
private

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