28 lines
		
	
	
		
			587 B
		
	
	
	
		
			C++
		
	
	
	
	
	
			
		
		
	
	
			28 lines
		
	
	
		
			587 B
		
	
	
	
		
			C++
		
	
	
	
	
	
/* SPDX-License-Identifier: GPL-2.0 */
 | 
						|
#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
 |