22#ifndef GIMPLE_PREDICATE_ANALYSIS_H_INCLUDED
23#define GIMPLE_PREDICATE_ANALYSIS_H_INCLUDED
85 void dump (FILE *)
const;
86 void dump (FILE *,
gimple *,
const char *)
const;
171#define MASK_SET_BIT(mask, pos) mask |= (1 << pos)
172#define MASK_TEST_BIT(mask, pos) (mask & (1 << pos))
173#define MASK_EMPTY(mask) (mask == 0)
Definition genmatch.cc:1485
bool is_false() const
Definition gimple-predicate-analysis.h:68
pred_chain_union m_preds
Definition gimple-predicate-analysis.h:112
bool superset_of(const predicate &) const
Definition gimple-predicate-analysis.cc:814
const pred_chain_union chain() const
Definition gimple-predicate-analysis.h:78
bool simplify_3()
Definition gimple-predicate-analysis.cc:1361
bool simplify_4()
Definition gimple-predicate-analysis.cc:1409
predicate(const predicate &rhs)
Definition gimple-predicate-analysis.h:51
void debug() const
Definition gimple-predicate-analysis.cc:1955
void push_pred(const pred_info &)
Definition gimple-predicate-analysis.cc:1922
bool is_empty() const
Definition gimple-predicate-analysis.h:58
bool m_cval
Definition gimple-predicate-analysis.h:113
void simplify(gimple *=NULL, bool=false)
Definition gimple-predicate-analysis.cc:1479
void dump(FILE *) const
Definition gimple-predicate-analysis.cc:1932
predicate(bool empty_val)
Definition gimple-predicate-analysis.h:48
bool simplify_2()
Definition gimple-predicate-analysis.cc:1302
~predicate()
Definition gimple-predicate-analysis.cc:2052
void normalize(gimple *=NULL, bool=false)
Definition gimple-predicate-analysis.cc:1723
bool is_true() const
Definition gimple-predicate-analysis.h:63
predicate & operator=(const predicate &)
Definition gimple-predicate-analysis.cc:2063
void init_from_control_deps(const vec< edge > *, unsigned, bool)
Definition gimple-predicate-analysis.cc:1759
bool empty_val() const
Definition gimple-predicate-analysis.h:73
Definition gimple-predicate-analysis.h:118
bool init_use_preds(predicate &, basic_block, basic_block)
Definition gimple-predicate-analysis.cc:1981
bool init_from_phi_def(gphi *)
Definition gimple-predicate-analysis.cc:2090
void collect_phi_def_edges(gphi *, basic_block, vec< edge > *, hash_set< gimple * > *)
Definition gimple-predicate-analysis.cc:479
predicate m_phi_def_preds
Definition gimple-predicate-analysis.h:165
bool is_use_guarded(gimple *, basic_block, gphi *, unsigned)
Definition gimple-predicate-analysis.cc:2245
bool overlap(gphi *, unsigned, hash_set< gphi * > *, const predicate &)
Definition gimple-predicate-analysis.cc:619
uninit_analysis & operator=(const uninit_analysis &)=delete
uninit_analysis(func_t &eval)
Definition gimple-predicate-analysis.h:138
func_t & m_eval
Definition gimple-predicate-analysis.h:167
uninit_analysis(const uninit_analysis &rhs)=delete
bool prune_phi_opnds(gphi *, unsigned, gphi *, tree, tree_code, hash_set< gphi * > *, bitmap *)
Definition gimple-predicate-analysis.cc:385
class bitmap_head * bitmap
Definition coretypes.h:51
union tree_node * tree
Definition coretypes.h:97
#define CHAR_BIT
Definition genautomata.cc:120
tree_code
Definition genmatch.cc:992
vec< pred_info, va_heap, vl_ptr > pred_chain
Definition gimple-predicate-analysis.h:37
vec< pred_chain, va_heap, vl_ptr > pred_chain_union
Definition gimple-predicate-analysis.h:41
Definition basic-block.h:117
Definition gimple-predicate-analysis.h:28
bool invert
Definition gimple-predicate-analysis.h:32
tree pred_lhs
Definition gimple-predicate-analysis.h:29
enum tree_code cond_code
Definition gimple-predicate-analysis.h:31
tree pred_rhs
Definition gimple-predicate-analysis.h:30
Definition gimple-predicate-analysis.h:123
unsigned phi_arg_set_t
Definition gimple-predicate-analysis.h:124
virtual phi_arg_set_t phi_arg_set(gphi *)
Definition gimple-predicate-analysis.cc:536
static constexpr unsigned max_phi_args
Definition gimple-predicate-analysis.h:133
#define NULL
Definition system.h:50
#define false
Definition system.h:888
constexpr vnull vNULL
Definition vec.h:569