summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Transforms/IPO
diff options
context:
space:
mode:
authorDevang Patel <dpatel@apple.com>2009-03-09 21:32:28 +0000
committerDevang Patel <dpatel@apple.com>2009-03-09 21:32:28 +0000
commit4a1b0776b3b46481acdb76e1e5ea32eef41ceca4 (patch)
tree0eca9958132cef71067c3c051fee7ed64ad71f14 /llvm/lib/Transforms/IPO
parentb855164751a4ffdc46483f4ae37e2fe66f2f4fad (diff)
downloadbcm5719-llvm-4a1b0776b3b46481acdb76e1e5ea32eef41ceca4.tar.gz
bcm5719-llvm-4a1b0776b3b46481acdb76e1e5ea32eef41ceca4.zip
Remove llvm.dbg.global_variables also.
llvm-svn: 66471
Diffstat (limited to 'llvm/lib/Transforms/IPO')
-rw-r--r--llvm/lib/Transforms/IPO/StripSymbols.cpp10
1 files changed, 10 insertions, 0 deletions
diff --git a/llvm/lib/Transforms/IPO/StripSymbols.cpp b/llvm/lib/Transforms/IPO/StripSymbols.cpp
index 066487fe159..ee6fbd3cba1 100644
--- a/llvm/lib/Transforms/IPO/StripSymbols.cpp
+++ b/llvm/lib/Transforms/IPO/StripSymbols.cpp
@@ -392,6 +392,16 @@ bool StripDebugDeclare::runOnModule(Module &M) {
}
Declare->eraseFromParent();
+ // Delete all llvm.dbg.global_variables.
+ for (Module::global_iterator I = M.global_begin(), E = M.global_end();
+ I != E; ++I) {
+ GlobalVariable *GV = dyn_cast<GlobalVariable>(I);
+ if (!GV) continue;
+ if (GV->use_empty() && GV->hasName()
+ && strncmp(GV->getNameStart(), "llvm.dbg.global_variable", 24) == 0)
+ DeadConstants.push_back(GV);
+ }
+
while (!DeadConstants.empty()) {
Constant *C = DeadConstants.back();
DeadConstants.pop_back();
OpenPOWER on IntegriCloud