OpenADFortTk (including Open64 and OpenAnalysis references)
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
ReachConstsIRInterface.hpp
Go to the documentation of this file.
1 
21 #ifndef ReachConstsIRInterface_h
22 #define ReachConstsIRInterface_h
23 
29 //#include <OpenAnalysis/IRInterface/ExprStmtPairIterator.hpp>
32 
33 namespace OA {
34  namespace ReachConsts {
35 
42  public virtual EvalToConstVisitorIRInterface,
44 {
45  public:
48 
52 
54  //virtual std::string toString(const StmtHandle h) = 0;
55 
57  //virtual std::string toString(const MemRefHandle h) = 0;
58 
62 
66 
70 
76 
82  OA_ptr<ConstValBasicInterface> operand2) = 0;
83 
87 
91 
93  // given a ConstValBasicInterface, print out value if any
95  // need all for full override
96  virtual std::string toString(const ProcHandle h) = 0;
97  virtual std::string toString(const StmtHandle h) = 0;
98  virtual std::string toString(const ExprHandle h) = 0;
99  virtual std::string toString(const OpHandle h) = 0;
100  virtual std::string toString(const MemRefHandle h) = 0;
101  virtual std::string toString(const SymHandle h) = 0;
102  virtual std::string toString(const ConstSymHandle h) = 0;
103  virtual std::string toString(const ConstValHandle h) = 0;
104 
105 
107  // Given an unsigned int, return a ConstValBAsicInterface for it
108  virtual OA_ptr<ConstValBasicInterface> getConstValBasic (unsigned int val) = 0;
109 
111  virtual OA_ptr<ExprTree> getExprTree(ExprHandle h) = 0;
112 
115 
117  // should be removed after testing
118  virtual int returnOpEnumValInt(OA::OpHandle op) = 0;
119 
120 };
121 
122  } // end of namespace ReachConsts
123 } // end of namespace OA
124 
125 #endif