We have logic in there to emit a default debugging label at the beginning of a

function. Emitting another label after the prologue messes up the debugging. We
are doing that because the first DebugLoc object it sees is different from the
previous, which was nothing. Check for this situation, and don't emit one if
it's the first.

llvm-svn: 65180
This commit is contained in:
Bill Wendling 2009-02-20 22:19:20 +00:00
parent 666f7a42d6
commit 4d38d7272e
1 changed files with 3 additions and 4 deletions

View File

@ -647,11 +647,10 @@ void AsmWriterEmitter::run(std::ostream &O) {
<< " if (!CurDL.isUnknown()) {\n"
<< " static DebugLocTuple PrevDLT(~0U, ~0U, ~0U);\n"
<< " DebugLocTuple CurDLT = MF->getDebugLocTuple(CurDL);\n\n"
<< " if (PrevDLT != CurDLT) {\n"
<< " if (PrevDLT.Src != ~0U && PrevDLT != CurDLT)\n"
<< " printLabel(DW->RecordSourceLine(CurDLT.Line, CurDLT.Col,\n"
<< " CurDLT.Src));\n"
<< " PrevDLT = CurDLT;\n"
<< " }\n"
<< " CurDLT.Src));\n\n"
<< " PrevDLT = CurDLT;\n"
<< " }\n"
<< " }\n\n";