Spatial
Simple Static Analysis in LLVM
InstModel.h
Go to the documentation of this file.
1#ifndef INSTMODEL_INSTMODEL_H
2#define INSTMODEL_INSTMODEL_H
3
4#include "InstInfo/InstInfo.h"
5#include "Token/Token.h"
7#include "vector"
8#include "llvm/IR/Instruction.h"
9
10namespace spatial {
11
12class InstModel {
13private:
14 TokenWrapper *TW;
15
16public:
18 virtual ~InstModel();
20 virtual std::vector<Token *> extractToken(llvm::Instruction *) = 0;
21 virtual std::vector<int> extractRedirections(llvm::Instruction *) = 0;
22 virtual InstInfo extractInstInfo(llvm::Instruction *) = 0;
23};
24
25} // namespace spatial
26
27#endif
Definition: InstInfo.h:10
Definition: InstModel.h:12
TokenWrapper * getTokenWrapper()
Definition: InstModel.cpp:7
virtual ~InstModel()
Definition: InstModel.cpp:6
virtual std::vector< int > extractRedirections(llvm::Instruction *)=0
InstModel(TokenWrapper *TW)
Definition: InstModel.cpp:5
virtual std::vector< Token * > extractToken(llvm::Instruction *)=0
virtual InstInfo extractInstInfo(llvm::Instruction *)=0
Definition: TokenWrapper.h:18
Definition: PointsToBenchmark.cpp:19