Make LLVM compile and optimize for the current CPU

This commit is contained in:
Magnus Norddahl 2016-09-27 03:07:03 +02:00
commit d5c7a7ab76
3 changed files with 73 additions and 24 deletions

View file

@ -26,6 +26,8 @@ public:
llvm::LLVMContext &context() { return *mContext; }
llvm::Module *module() { return mModule; }
llvm::ExecutionEngine *engine() { return mEngine.get(); }
llvm::legacy::PassManager *modulePassManager() { return mModulePassManager.get(); }
llvm::legacy::FunctionPassManager *functionPassManager() { return mFunctionPassManager.get(); }
private:
void *PointerToFunction(const char *name);
@ -33,6 +35,8 @@ private:
std::unique_ptr<llvm::LLVMContext> mContext;
llvm::Module *mModule;
std::unique_ptr<llvm::ExecutionEngine> mEngine;
std::unique_ptr<llvm::legacy::PassManager> mModulePassManager;
std::unique_ptr<llvm::legacy::FunctionPassManager> mFunctionPassManager;
};
class FixedFunction