Line number 0 indicates there is no source line/file name info available for this...
authorDevang Patel <dpatel@apple.com>
Fri, 8 Oct 2010 17:18:54 +0000 (17:18 +0000)
committerDevang Patel <dpatel@apple.com>
Fri, 8 Oct 2010 17:18:54 +0000 (17:18 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@116061 91177308-0d34-0410-b5e6-96231b3b80d8

lib/CodeGen/AsmPrinter/DwarfDebug.cpp

index 74fe8643ab371fe2edd6fb4162e21e68f047ca47..2c0aeb7e0144fcbfd0de9fc055b6e7b27c680954 100644 (file)
@@ -507,6 +507,8 @@ void DwarfDebug::addSourceLine(DIE *Die, DIVariable V) {
     return;
 
   unsigned Line = V.getLineNumber();
+  if (Line == 0)
+    return;
   unsigned FileID = GetOrCreateSourceID(V.getContext().getDirectory(),
                                         V.getContext().getFilename());
   assert(FileID && "Invalid file id");
@@ -522,6 +524,8 @@ void DwarfDebug::addSourceLine(DIE *Die, DIGlobalVariable G) {
     return;
 
   unsigned Line = G.getLineNumber();
+  if (Line == 0)
+    return;
   unsigned FileID = GetOrCreateSourceID(G.getContext().getDirectory(),
                                         G.getContext().getFilename());
   assert(FileID && "Invalid file id");
@@ -557,7 +561,7 @@ void DwarfDebug::addSourceLine(DIE *Die, DIType Ty) {
     return;
 
   unsigned Line = Ty.getLineNumber();
-  if (!Ty.getContext().Verify())
+  if (Line == 0 || !Ty.getContext().Verify())
     return;
   unsigned FileID = GetOrCreateSourceID(Ty.getContext().getDirectory(),
                                         Ty.getContext().getFilename());
@@ -574,6 +578,8 @@ void DwarfDebug::addSourceLine(DIE *Die, DINameSpace NS) {
     return;
 
   unsigned Line = NS.getLineNumber();
+  if (Line == 0)
+    return;
   StringRef FN = NS.getFilename();
   StringRef Dir = NS.getDirectory();