R600: Short circuit alloca check if address space isn't private.

Skip calling GetUnderlyingObject in cases where it obviously
isn't from an alloca. This should only be a compile time improvement.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@213229 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Matt Arsenault 2014-07-17 06:13:41 +00:00
parent 50a9cd70ac
commit df4663be6a

View File

@ -101,7 +101,7 @@ void AMDGPUTTI::getUnrollingPreferences(Loop *L,
for (BasicBlock::const_iterator I = BB->begin(), E = BB->end();
I != E; ++I) {
const GetElementPtrInst *GEP = dyn_cast<GetElementPtrInst>(I);
if (!GEP)
if (!GEP || GEP->getAddressSpace() != AMDGPUAS::PRIVATE_ADDRESS)
continue;
const Value *Ptr = GEP->getPointerOperand();
const AllocaInst *Alloca = dyn_cast<AllocaInst>(GetUnderlyingObject(Ptr));