IEEE floating-point operations These have two data operands (op0 and op1) and one rounding mode (op2).
More...
|
| ieee_float_op_exprt () |
|
| ieee_float_op_exprt (const exprt &_lhs, const irep_idt &_id, const exprt &_rhs, const exprt &_rm) |
|
exprt & | lhs () |
|
const exprt & | lhs () const |
|
exprt & | rhs () |
|
const exprt & | rhs () const |
|
exprt & | rounding_mode () |
|
const exprt & | rounding_mode () const |
|
| exprt () |
|
| exprt (const irep_idt &_id) |
|
| exprt (const irep_idt &_id, const typet &_type) |
|
typet & | type () |
| Return the type of the expression. More...
|
|
const typet & | type () const |
|
bool | has_operands () const |
| Return true if there is at least one operand. More...
|
|
operandst & | operands () |
|
const operandst & | operands () const |
|
exprt & | op0 () |
|
exprt & | op1 () |
|
exprt & | op2 () |
|
exprt & | op3 () |
|
const exprt & | op0 () const |
|
const exprt & | op1 () const |
|
const exprt & | op2 () const |
|
const exprt & | op3 () const |
|
void | reserve_operands (operandst::size_type n) |
|
void | move_to_operands (exprt &expr) |
| Move the given argument to the end of exprt 's operands. More...
|
|
void | move_to_operands (exprt &e1, exprt &e2) |
| Move the given arguments to the end of exprt 's operands. More...
|
|
void | move_to_operands (exprt &e1, exprt &e2, exprt &e3) |
| Move the given arguments to the end of exprt 's operands. More...
|
|
void | copy_to_operands (const exprt &expr) |
| Copy the given argument to the end of exprt 's operands. More...
|
|
void | add_to_operands (const exprt &expr) |
| Add the given argument to the end of exprt 's operands. More...
|
|
void | add_to_operands (exprt &&expr) |
| Add the given argument to the end of exprt 's operands. More...
|
|
void | copy_to_operands (const exprt &e1, const exprt &e2) |
| Copy the given arguments to the end of exprt 's operands. More...
|
|
void | add_to_operands (const exprt &e1, const exprt &e2) |
| Add the given arguments to the end of exprt 's operands. More...
|
|
void | add_to_operands (exprt &&e1, exprt &&e2) |
| Add the given arguments to the end of exprt 's operands. More...
|
|
void | add_to_operands (const exprt &e1, const exprt &e2, const exprt &e3) |
| Add the given arguments to the end of exprt 's operands. More...
|
|
void | copy_to_operands (const exprt &e1, const exprt &e2, const exprt &e3) |
| Copy the given arguments to the end of exprt 's operands. More...
|
|
void | add_to_operands (exprt &&e1, exprt &&e2, exprt &&e3) |
| Add the given arguments to the end of exprt 's operands. More...
|
|
void | make_typecast (const typet &_type) |
| Create a typecast_exprt to the given type. More...
|
|
void | make_bool (bool value) |
| Replace the expression by a Boolean expression representing value . More...
|
|
bool | is_constant () const |
| Return whether the expression is a constant. More...
|
|
bool | is_true () const |
| Return whether the expression is a constant representing true . More...
|
|
bool | is_false () const |
| Return whether the expression is a constant representing false . More...
|
|
bool | is_zero () const |
| Return whether the expression is a constant representing 0. More...
|
|
bool | is_one () const |
| Return whether the expression is a constant representing 1. More...
|
|
bool | is_boolean () const |
| Return whether the expression represents a Boolean. More...
|
|
const source_locationt & | find_source_location () const |
| Get a source_locationt from the expression or from its operands (non-recursively). More...
|
|
const source_locationt & | source_location () const |
|
source_locationt & | add_source_location () |
|
void | visit (class expr_visitort &visitor) |
|
void | visit (class const_expr_visitort &visitor) const |
|
depth_iteratort | depth_begin () |
|
depth_iteratort | depth_end () |
|
const_depth_iteratort | depth_begin () const |
|
const_depth_iteratort | depth_end () const |
|
const_depth_iteratort | depth_cbegin () const |
|
const_depth_iteratort | depth_cend () const |
|
depth_iteratort | depth_begin (std::function< exprt &()> mutate_root) const |
|
const_unique_depth_iteratort | unique_depth_begin () const |
|
const_unique_depth_iteratort | unique_depth_end () const |
|
const_unique_depth_iteratort | unique_depth_cbegin () const |
|
const_unique_depth_iteratort | unique_depth_cend () const |
|
bool | is_nil () const |
|
bool | is_not_nil () const |
|
| irept (const irep_idt &_id) |
|
| irept () |
|
| irept (const irept &irep) |
|
| irept (irept &&irep) |
|
irept & | operator= (const irept &irep) |
|
irept & | operator= (irept &&irep) |
|
| ~irept () |
|
const irep_idt & | id () const |
|
const std::string & | id_string () const |
|
void | id (const irep_idt &_data) |
|
const irept & | find (const irep_namet &name) const |
|
irept & | add (const irep_namet &name) |
|
irept & | add (const irep_namet &name, const irept &irep) |
|
const std::string & | get_string (const irep_namet &name) const |
|
const irep_idt & | get (const irep_namet &name) const |
|
bool | get_bool (const irep_namet &name) const |
|
signed int | get_int (const irep_namet &name) const |
|
unsigned int | get_unsigned_int (const irep_namet &name) const |
|
std::size_t | get_size_t (const irep_namet &name) const |
|
long long | get_long_long (const irep_namet &name) const |
|
void | set (const irep_namet &name, const irep_idt &value) |
|
void | set (const irep_namet &name, const irept &irep) |
|
void | set (const irep_namet &name, const long long value) |
|
void | remove (const irep_namet &name) |
|
void | move_to_sub (irept &irep) |
|
void | move_to_named_sub (const irep_namet &name, irept &irep) |
|
bool | operator== (const irept &other) const |
|
bool | operator!= (const irept &other) const |
|
void | swap (irept &irep) |
|
bool | operator< (const irept &other) const |
| defines ordering on the internal representation More...
|
|
bool | ordering (const irept &other) const |
| defines ordering on the internal representation More...
|
|
int | compare (const irept &i) const |
| defines ordering on the internal representation More...
|
|
void | clear () |
|
void | make_nil () |
|
subt & | get_sub () |
|
const subt & | get_sub () const |
|
named_subt & | get_named_sub () |
|
const named_subt & | get_named_sub () const |
|
named_subt & | get_comments () |
|
const named_subt & | get_comments () const |
|
std::size_t | hash () const |
|
std::size_t | full_hash () const |
|
bool | full_eq (const irept &other) const |
|
std::string | pretty (unsigned indent=0, unsigned max_indent=0) const |
|
const dt & | read () const |
|
dt & | write () |
|
|
typedef std::vector< exprt > | operandst |
|
typedef std::vector< irept > | subt |
|
typedef std::map< irep_namet, irept > | named_subt |
|
static void | check (const exprt &, const validation_modet) |
| Check that the expression is well-formed (shallow checks only, i.e., subexpressions and its type are not checked). More...
|
|
static void | validate (const exprt &expr, const namespacet &, const validation_modet vm=validation_modet::INVARIANT) |
| Check that the expression is well-formed, assuming that its subexpressions and type have all ready been checked for well-formedness. More...
|
|
static void | validate_full (const exprt &expr, const namespacet &ns, const validation_modet vm=validation_modet::INVARIANT) |
| Check that the expression is well-formed (full check, including checks of all subexpressions and the type) More...
|
|
exprt & | add_expr (const irep_idt &name) |
|
const exprt & | find_expr (const irep_idt &name) const |
|
void | detach () |
|
static bool | is_comment (const irep_namet &name) |
|
static void | remove_ref (dt *old_data) |
|
static void | nonrecursive_destructor (dt *old_data) |
| Does the same as remove_ref, but using an explicit stack instead of recursion. More...
|
|
dt * | data |
|
static dt | empty_d |
|
IEEE floating-point operations These have two data operands (op0 and op1) and one rounding mode (op2).
The type of the result is that of the data operands.
Definition at line 4282 of file std_expr.h.