Module iterator contains list of filescope functions as well, we don't need to emit and global declarations for them. This was working earlier and was broken during one of the recent commit for PIC16 naming.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@71394 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/Target/PIC16/PIC16AsmPrinter.cpp b/lib/Target/PIC16/PIC16AsmPrinter.cpp
index 86f5b4e..1aebe09 100644
--- a/lib/Target/PIC16/PIC16AsmPrinter.cpp
+++ b/lib/Target/PIC16/PIC16AsmPrinter.cpp
@@ -175,8 +175,8 @@
     if (Name.find("llvm.") != std::string::npos)
       continue;
 
-    assert ((I->isDeclaration() || I->hasExternalLinkage())
-            && "Not an extern function declaration or definition");
+    if (! (I->isDeclaration() || I->hasExternalLinkage()))
+      continue;
 
     const char *directive = I->isDeclaration() ? TAI->getExternDirective() :
                                                  TAI->getGlobalDirective();