aboutsummaryrefslogtreecommitdiff
path: root/tools/perf/util/c++/clang.h
diff options
context:
space:
mode:
authorJonathan Corbet <[email protected]>2016-12-27 12:53:44 -0700
committerJonathan Corbet <[email protected]>2016-12-27 12:53:44 -0700
commit54ab6db0909061ab7ee07233d3cab86d29f86e6c (patch)
treea7650ab5c0fa3a6a3841de8e8693041b3e009054 /tools/perf/util/c++/clang.h
parent217e2bfab22e740227df09f22165e834cddd8a3b (diff)
parent7ce7d89f48834cefece7804d38fc5d85382edf77 (diff)
Merge tag 'v4.10-rc1' into docs-next
Linux 4.10-rc1
Diffstat (limited to 'tools/perf/util/c++/clang.h')
-rw-r--r--tools/perf/util/c++/clang.h26
1 files changed, 26 insertions, 0 deletions
diff --git a/tools/perf/util/c++/clang.h b/tools/perf/util/c++/clang.h
new file mode 100644
index 000000000000..dd8b0427550d
--- /dev/null
+++ b/tools/perf/util/c++/clang.h
@@ -0,0 +1,26 @@
+#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