clover: Fix build with LLVM 3.2

Reviewed-by: Francisco Jerez <currojerez@riseup.net>
This commit is contained in:
Tom Stellard 2012-10-10 20:22:22 +00:00
parent c6b0132d1e
commit dc54c49df9
1 changed files with 10 additions and 1 deletions

View File

@ -35,10 +35,15 @@
#include <llvm/Support/TargetSelect.h>
#include <llvm/Support/MemoryBuffer.h>
#include <llvm/Support/PathV1.h>
#include <llvm/Target/TargetData.h>
#include <llvm/Transforms/IPO.h>
#include <llvm/Transforms/IPO/PassManagerBuilder.h>
#if HAVE_LLVM < 0x0302
#include <llvm/Target/TargetData.h>
#else
#include <llvm/DataLayout.h>
#endif
#include "pipe/p_state.h"
#include "util/u_memory.h"
@ -216,7 +221,11 @@ namespace {
E = kernel_func->arg_end(); I != E; ++I) {
llvm::Argument &arg = *I;
llvm::Type *arg_type = arg.getType();
#if HAVE_LLVM < 0x0302
llvm::TargetData TD(kernel_func->getParent());
#else
llvm::DataLayout TD(kernel_func->getParent()->getDataLayout());
#endif
unsigned arg_size = TD.getTypeStoreSize(arg_type);
if (llvm::isa<llvm::PointerType>(arg_type) && arg.hasByValAttr()) {