From 4c9ac7fcf120a9ddf0dd59f824be227972d84395 Mon Sep 17 00:00:00 2001 From: Matt Pharr Date: Thu, 5 Apr 2012 08:22:40 -0700 Subject: [PATCH] Fix build with LLVM 2.9. --- llvmutil.cpp | 5 ++++- opt.cpp | 8 ++++++++ 2 files changed, 12 insertions(+), 1 deletion(-) diff --git a/llvmutil.cpp b/llvmutil.cpp index 2ba60dbb..9f4fc658 100644 --- a/llvmutil.cpp +++ b/llvmutil.cpp @@ -1443,7 +1443,10 @@ lExtractFirstVectorElement(llvm::Value *v, llvm::Instruction *insertBefore, llvm::Instruction *phiInsertPos = phi->getParent()->begin(); llvm::PHINode *scalarPhi = llvm::PHINode::Create(vt->getElementType(), - phi->getNumIncomingValues(), newName, +#ifndef LLVM_2_9 + phi->getNumIncomingValues(), +#endif // !LLVM_2_9 + newName, phiInsertPos); phiMap[phi] = scalarPhi; diff --git a/opt.cpp b/opt.cpp index 1ebfd4a4..9159c495 100644 --- a/opt.cpp +++ b/opt.cpp @@ -1130,7 +1130,11 @@ lExtractFromInserts(llvm::Value *v, unsigned int index) { return NULL; Assert(iv->hasIndices() && iv->getNumIndices() == 1); +#ifdef LLVM_2_9 + if (*(iv->idx_begin()) == index) +#else if (iv->getIndices()[0] == index) +#endif return iv->getInsertedValueOperand(); else return lExtractFromInserts(iv->getAggregateOperand(), index); @@ -1260,7 +1264,11 @@ lGetBasePtrAndOffsets(llvm::Value *ptrs, llvm::Value **offsets, llvm::ExtractValueInst *ev = llvm::dyn_cast(ptrs); if (ev != NULL) { Assert(ev->getNumIndices() == 1); +#ifdef LLVM_2_9 + int index = *(ev->idx_begin()); +#else int index = ev->getIndices()[0]; +#endif ptrs = lExtractFromInserts(ev->getAggregateOperand(), index); if (ptrs != NULL) return lGetBasePtrAndOffsets(ptrs, offsets, insertBefore);