diff options
Diffstat (limited to 'llvm/lib/Transforms/IPO/FunctionImport.cpp')
-rw-r--r-- | llvm/lib/Transforms/IPO/FunctionImport.cpp | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/llvm/lib/Transforms/IPO/FunctionImport.cpp b/llvm/lib/Transforms/IPO/FunctionImport.cpp index 8dbee83bc3e..408d1819bde 100644 --- a/llvm/lib/Transforms/IPO/FunctionImport.cpp +++ b/llvm/lib/Transforms/IPO/FunctionImport.cpp @@ -618,10 +618,12 @@ void llvm::convertToDeclaration(GlobalValue &GV) { if (Function *F = dyn_cast<Function>(&GV)) { F->deleteBody(); F->clearMetadata(); + F->setComdat(nullptr); } else if (GlobalVariable *V = dyn_cast<GlobalVariable>(&GV)) { V->setInitializer(nullptr); V->setLinkage(GlobalValue::ExternalLinkage); V->clearMetadata(); + V->setComdat(nullptr); } else // For now we don't resolve or drop aliases. Once we do we'll // need to add support here for creating either a function or |