sail::Unop Class Reference

An instruction of the form v = (unop) s. More...

#include <Unop.h>

Inheritance diagram for sail::Unop:
sail::SaveInstruction sail::Instruction

List of all members.

Public Member Functions

 Unop (Variable *v, Symbol *s, il::unop_type unop, il::node *original, int line)
virtual string to_string () const
virtual string to_string (bool pretty_print) const
virtual Variableget_lhs ()
virtual void set_lhs (Variable *v)
Symbolget_operand ()
il::unop_type get_unop ()
virtual bool is_removable ()

Friends

class boost::serialization::access

Detailed Description

An instruction of the form v = (unop) s.

The unop is defined in il::unop_expression, but the low-level language only contains a subset of the unops defined in il::unop_expression. For instance, pre and post increments are not allowed to appear at the low-level representation.


Member Function Documentation

bool sail::Unop::is_removable (  )  [virtual]

An instruction is removable if it's not present in the original source code, but introduced in the translation from the high-level language to the low-level language. For instance, if **x is an expression used in the original code, the low-level language will introduce a temporary t=*x; such instructions are "removable" for printing purposes.

Implements sail::Instruction.


The documentation for this class was generated from the following files:
Generated on Sun Oct 17 14:01:34 2010 by  doxygen 1.6.3