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::Function*>&)':
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 <vlee@freedesktop.org>
Reviewed-by: Tom Stellard <thomas.stellard@amd.com>
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());