The type ids making up a filter are unsigned, and

should be output as unsigned values.  Checked against
gcc.

llvm-svn: 39775
This commit is contained in:
Duncan Sands 2007-07-12 13:51:39 +00:00
parent b8bca52c7d
commit 0263dd1d7f
1 changed files with 2 additions and 2 deletions

View File

@ -3002,7 +3002,7 @@ private:
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 @@ private:
// 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");
}