#ifndef PERF_UTIL_CLANG_H | |
#define PERF_UTIL_CLANG_H | |
#include "llvm/ADT/StringRef.h" | |
#include "llvm/IR/LLVMContext.h" | |
#include "llvm/IR/Module.h" | |
#include "llvm/Option/Option.h" | |
#include <memory> | |
namespace perf { | |
using namespace llvm; | |
std::unique_ptr<Module> | |
getModuleFromSource(opt::ArgStringList CFlags, | |
StringRef Name, StringRef Content); | |
std::unique_ptr<Module> | |
getModuleFromSource(opt::ArgStringList CFlags, | |
StringRef Path); | |
std::unique_ptr<llvm::SmallVectorImpl<char>> | |
getBPFObjectFromModule(llvm::Module *Module); | |
} | |
#endif |