summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Target
diff options
context:
space:
mode:
authorMatt Arsenault <Matthew.Arsenault@amd.com>2016-04-27 21:05:08 +0000
committerMatt Arsenault <Matthew.Arsenault@amd.com>2016-04-27 21:05:08 +0000
commit0547b016b18631db0f20855a509986650a3b4487 (patch)
treed5430e74cf7eea99d5edd0e2858e82235664dedd /llvm/lib/Target
parentbc38ea9596d08fb7d5d4d9ac524ffd45595fba3c (diff)
downloadbcm5719-llvm-0547b016b18631db0f20855a509986650a3b4487.tar.gz
bcm5719-llvm-0547b016b18631db0f20855a509986650a3b4487.zip
AMDGPU: Account for globals in AMDGPUPromoteAlloca pass
Patch by Bas Nieuwenhuizen llvm-svn: 267791
Diffstat (limited to 'llvm/lib/Target')
-rw-r--r--llvm/lib/Target/AMDGPU/AMDGPUPromoteAlloca.cpp6
1 files changed, 4 insertions, 2 deletions
diff --git a/llvm/lib/Target/AMDGPU/AMDGPUPromoteAlloca.cpp b/llvm/lib/Target/AMDGPU/AMDGPUPromoteAlloca.cpp
index 1b3ce61ef92..b7d30d235a0 100644
--- a/llvm/lib/Target/AMDGPU/AMDGPUPromoteAlloca.cpp
+++ b/llvm/lib/Target/AMDGPU/AMDGPUPromoteAlloca.cpp
@@ -125,14 +125,16 @@ bool AMDGPUPromoteAlloca::runOnFunction(Function &F) {
if (GV.getType()->getAddressSpace() != AMDGPUAS::LOCAL_ADDRESS)
continue;
- for (Use &U : GV.uses()) {
+ for (User *U : GV.users()) {
Instruction *Use = dyn_cast<Instruction>(U);
if (!Use)
continue;
- if (Use->getParent()->getParent() == &F)
+ if (Use->getParent()->getParent() == &F) {
LocalMemAvailable -=
Mod->getDataLayout().getTypeAllocSize(GV.getValueType());
+ break;
+ }
}
}
OpenPOWER on IntegriCloud