Jan Vesely <jan.ves...@rutgers.edu> writes: > r325155 ("Pass a reference to a module to the bitcode writer.") > and > r325160 ("Pass module reference to CloneModule") > > change function interface from pointer to reference. > > Signed-off-by: Jan Vesely <jan.ves...@rutgers.edu> > --- > .../state_trackers/clover/llvm/codegen/bitcode.cpp | 2 +- > .../state_trackers/clover/llvm/codegen/native.cpp | 2 +- > src/gallium/state_trackers/clover/llvm/compat.hpp | 28 > ++++++++++++++++++++++ > 3 files changed, 30 insertions(+), 2 deletions(-) > > diff --git a/src/gallium/state_trackers/clover/llvm/codegen/bitcode.cpp > b/src/gallium/state_trackers/clover/llvm/codegen/bitcode.cpp > index 679ecd8758..40bb426218 100644 > --- a/src/gallium/state_trackers/clover/llvm/codegen/bitcode.cpp > +++ b/src/gallium/state_trackers/clover/llvm/codegen/bitcode.cpp > @@ -66,7 +66,7 @@ namespace { > emit_code(const ::llvm::Module &mod) { > ::llvm::SmallVector<char, 1024> data; > ::llvm::raw_svector_ostream os { data }; > - WriteBitcodeToFile(&mod, os); > + compat::write_bitcode_to_file(mod, os); > return { os.str().begin(), os.str().end() }; > } > } > diff --git a/src/gallium/state_trackers/clover/llvm/codegen/native.cpp > b/src/gallium/state_trackers/clover/llvm/codegen/native.cpp > index 12c83a92b6..409f8ac32f 100644 > --- a/src/gallium/state_trackers/clover/llvm/codegen/native.cpp > +++ b/src/gallium/state_trackers/clover/llvm/codegen/native.cpp > @@ -156,7 +156,7 @@ clover::llvm::print_module_native(const ::llvm::Module > &mod, > const target &target) { > std::string log; > try { > - std::unique_ptr< ::llvm::Module> cmod { CloneModule(&mod) }; > + std::unique_ptr< ::llvm::Module> cmod { compat::clone_module(mod) }; > return as_string(emit_code(*cmod, target, > TargetMachine::CGFT_AssemblyFile, log)); > } catch (...) { > diff --git a/src/gallium/state_trackers/clover/llvm/compat.hpp > b/src/gallium/state_trackers/clover/llvm/compat.hpp > index 6fc75fb250..db9e8020cf 100644 > --- a/src/gallium/state_trackers/clover/llvm/compat.hpp > +++ b/src/gallium/state_trackers/clover/llvm/compat.hpp > @@ -36,9 +36,17 @@ > > #include "util/algorithm.hpp" > > +#if HAVE_LLVM < 0x0400 > +#include <llvm/Bitcode/ReaderWriter.h> > +#else > +#include <llvm/Bitcode/BitcodeReader.h> > +#include <llvm/Bitcode/BitcodeWriter.h> > +#endif > + > #include <llvm/IR/LLVMContext.h> > #include <llvm/Linker/Linker.h> > #include <llvm/Transforms/IPO.h> > +#include <llvm/Transforms/Utils/Cloning.h> > #include <llvm/Target/TargetMachine.h> > #if HAVE_LLVM >= 0x0400 > #include <llvm/Support/Error.h> > @@ -217,6 +225,26 @@ namespace clover { > ctx.setDiagnosticHandler(diagnostic_handler, data); > #endif > } > + > + inline std::unique_ptr< ::llvm::Module> > + clone_module(const ::llvm::Module &mod) > + { > +#if HAVE_LLVM >= 0x0700 > + return ::llvm::CloneModule(mod); > +#else > + return ::llvm::CloneModule(&mod); > +#endif > + } > + > + template<typename T> void
Weird indentation. Other than that: Reviewed-by: Francisco Jerez <curroje...@riseup.net> > + write_bitcode_to_file(const ::llvm::Module &mod, T &os) > + { > +#if HAVE_LLVM >= 0x0700 > + ::llvm::WriteBitcodeToFile(mod, os); > +#else > + ::llvm::WriteBitcodeToFile(&mod, os); > +#endif > + } > } > } > } > -- > 2.14.3
signature.asc
Description: PGP signature
_______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev