From 1ab6543431b5a4eaf589cdabf2227088dd62ce6f Mon Sep 17 00:00:00 2001 From: Vinson Lee Date: Sun, 19 Oct 2014 00:13:33 -0700 Subject: [PATCH] clover: Fix build error with LLVM 3.4. DataLayoutPass was added in LLVM 3.5 r202168, commit 57edc9d4ff1648568a5dd7e9958649065b260dca "Make DataLayout a plain object, not a pass.". This patch fixes this build error with LLVM 3.4. CXX llvm/libclllvm_la-invocation.lo llvm/invocation.cpp: In function 'void {anonymous}::optimize(llvm::Module*, unsigned int, const std::vector&)': llvm/invocation.cpp:324:18: error: expected type-specifier PM.add(new llvm::DataLayoutPass(mod)); ^ Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=85189 Signed-off-by: Vinson Lee Reviewed-by: Tom Stellard --- src/gallium/state_trackers/clover/llvm/invocation.cpp | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/gallium/state_trackers/clover/llvm/invocation.cpp b/src/gallium/state_trackers/clover/llvm/invocation.cpp index 507daa0e376..7c31008f52e 100644 --- a/src/gallium/state_trackers/clover/llvm/invocation.cpp +++ b/src/gallium/state_trackers/clover/llvm/invocation.cpp @@ -344,7 +344,9 @@ namespace { llvm::Function *kernel = *I; export_list.push_back(kernel->getName().data()); } -#if HAVE_LLVM < 0x0306 +#if HAVE_LLVM < 0x0305 + PM.add(new llvm::DataLayout(mod)); +#elif HAVE_LLVM < 0x0306 PM.add(new llvm::DataLayoutPass(mod)); #else PM.add(new llvm::DataLayoutPass()); -- 2.30.2