Otawa  0.10
otawa::se Namespace Reference

Classes

class  FilterBuilder
 
class  SEAdd
 Addition. More...
 
class  SEAddr
 Memory reference. More...
 
class  SECmp
 Compare symbolic expression This class define three type of compare expression: condition (if): SECmp(operator, expression) undetermined compare: SECmp(CMP, exp1, exp2) determined compare: SECmp(operator, exp1, exp2) More...
 
class  SEConst
 Constants. More...
 
class  SENeg
 Negation. More...
 
class  SEReg
 Register. More...
 
class  SymbExpr
 Symbolic expression. More...
 

Typedefs

typedef clp::Value V
 
typedef struct otawa::se::path_t path_t
 

Enumerations

enum  op_t {
  NONE, CONST, ADDR, REG,
  NEG, ADD, CMP, CMPU,
  LE, LT, GE, GT,
  EQ, NE, ULE, ULT,
  UGE, UGT, OR
}
 Defined operators. More...
 

Functions

void applyFilter (V &v, se::op_t cmp_op, V f)
 Apply a filter on the value. More...
 
op_t reverse (op_t logop)
 
Identifier< Vector< SECmp * > > REG_FILTERS ("otawa::se::REG_FILTERS")
 
Identifier< Vector< SECmp * > > ADDR_FILTERS ("otawa::se::ADDR_FILTERS")
 
SECmpgetFilterForReg (SECmp *se, V reg, clp::ClpStatePack &pack, Inst *i, int sem, Vector< V > &used_reg, Vector< V > &used_addr)
 
SECmpgetFilterForAddr (SECmp *se, V addr, clp::ClpStatePack &pack, Inst *i, int sem, Vector< V > &used_reg, Vector< V > &used_addr)
 

Variables

Identifier< Vector< SECmp * > > REG_FILTERS
 
Identifier< Vector< SECmp * > > ADDR_FILTERS
 

Typedef Documentation

typedef struct otawa::se::path_t otawa::se::path_t

Enumeration Type Documentation

Defined operators.

Enumerator
NONE 
CONST 
ADDR 

Constant.

REG 

Memory reference.

NEG 

Register.

ADD 

Oposite of.

CMP 

Addition.

CMPU 

Undeterminate compare.

LE 

Undeterminate unsigned compare.

Determinate compare:

LT 

less or equal

GE 

less than

GT 

greater or equal

EQ 

greater than

NE 

equal

ULE 

not equal

Unsigned forms:

ULT 
UGE 
UGT 
OR 

Function Documentation

Identifier<Vector<SECmp *> > otawa::se::ADDR_FILTERS ( "otawa::se::ADDR_FILTERS"  )
void otawa::se::applyFilter ( V &  v,
se::op_t  cmp_op,
f 
)
Identifier<Vector<SECmp *> > otawa::se::REG_FILTERS ( "otawa::se::REG_FILTERS"  )
op_t otawa::se::reverse ( op_t  logop)

References GE, GT, LE, LT, UGE, UGT, ULE, and ULT.

Referenced by otawa::clp::Value::add(), and otawa::clp::Value::sub().

Variable Documentation

Identifier<Vector<SECmp *> > otawa::se::ADDR_FILTERS("otawa::se::ADDR_FILTERS")
Identifier<Vector<SECmp *> > otawa::se::REG_FILTERS("otawa::se::REG_FILTERS")