The type ids making up a filter are unsigned, and
should be output as unsigned values.  Checked against
gcc.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@39775 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/CodeGen/DwarfWriter.cpp b/lib/CodeGen/DwarfWriter.cpp
index f86c4d5..257a776 100644
--- a/lib/CodeGen/DwarfWriter.cpp
+++ b/lib/CodeGen/DwarfWriter.cpp
@@ -3002,7 +3002,7 @@
     for(std::vector<unsigned>::const_iterator I = FilterIds.begin(),
         E = FilterIds.end(); I != E; ++I) {
       FilterOffsets.push_back(Offset);
-      Offset -= Asm->SizeSLEB128(*I);
+      Offset -= Asm->SizeULEB128(*I);
     }
 
     // Compute sizes for exception table.
@@ -3191,7 +3191,7 @@
     // Emit the filter typeids.
     for (unsigned j = 0, M = FilterIds.size(); j < M; ++j) {
       unsigned TypeID = FilterIds[j];
-      Asm->EmitSLEB128Bytes(TypeID);
+      Asm->EmitULEB128Bytes(TypeID);
       Asm->EOL("Filter TypeInfo index");
     }