1234567891011121314151617181920212223242526 |
- #ifndef _JIT_H
- #define _JIT_H
- //LLVM includes
- #include "llvm/IR/LegacyPassManager.h"
- #include "llvm/Transforms/Scalar.h"
- // Local includes
- #include "KaleidoscopeJIT.h"
- #include "Ast.h"
- namespace jit {
- struct JITObjects {
- public:
- static std::unique_ptr<llvm::legacy::FunctionPassManager> TheFPM;
- static std::unique_ptr<llvm::orc::KaleidoscopeJIT> TheJIT;
- static std::map<std::string, std::unique_ptr<ast::PrototypeAST>> FunctionProtos;
- };
- void InitializeModuleAndPassManager(void);
- Function *getFunction(std::string Name);
- }
- #endif
|