[Beignet] [PATCH] fix issue when build against llvm3.3

Guo Yejun yejun.guo at intel.com
Tue Aug 11 18:09:42 PDT 2015


llvm 3.3 has a different constructure of llvm::raw_fd_ostream

Signed-off-by: Guo Yejun <yejun.guo at intel.com>
---
 backend/src/backend/program.cpp | 11 ++++++++++-
 1 file changed, 10 insertions(+), 1 deletion(-)

diff --git a/backend/src/backend/program.cpp b/backend/src/backend/program.cpp
index 9caf1ac..5f4277a 100644
--- a/backend/src/backend/program.cpp
+++ b/backend/src/backend/program.cpp
@@ -813,7 +813,16 @@ namespace gbe {
       }
 
       // Dump the LLVM if requested.
-      #if (LLVM_VERSION_MAJOR == 3) && (LLVM_VERSION_MINOR < 6)
+      #if (LLVM_VERSION_MAJOR == 3) && (LLVM_VERSION_MINOR == 3)
+      if (!dumpLLVMFileName.empty()) {
+        std::string err;
+        llvm::raw_fd_ostream ostream (dumpLLVMFileName.c_str(),
+                                      err, 0);
+        if (err.empty()) {
+          out_module->print(ostream, 0);
+        } //Otherwise, you'll have to make do without the dump.
+      }
+      #elif (LLVM_VERSION_MAJOR == 3) && (LLVM_VERSION_MINOR < 6)
       if (!dumpLLVMFileName.empty()) {
         std::string err;
         llvm::raw_fd_ostream ostream (dumpLLVMFileName.c_str(),
-- 
1.9.1



More information about the Beignet mailing list