Update DebugInfo interface to use metadata, instead of special named llvm.dbg.... global variables, to encode debugging information in llvm IR. This is mostly a mechanical change that tests metadata support very well.

This change speeds up llvm-gcc by more then 6% at "-O0 -g" (measured by compiling InstructionCombining.cpp!)


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79977 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Devang Patel
2009-08-25 05:24:07 +00:00
parent 4bda11fbda
commit 2a610c7387
47 changed files with 966 additions and 1933 deletions
+8 -10
View File
@@ -1739,11 +1739,10 @@ void AsmPrinter::EmitComments(const MachineInstr &MI) const {
// Print source line info.
O.PadToColumn(MAI->getCommentColumn());
O << MAI->getCommentString() << " SrcLine ";
if (DLT.CompileUnit->hasInitializer()) {
Constant *Name = DLT.CompileUnit->getInitializer();
if (ConstantArray *NameString = dyn_cast<ConstantArray>(Name))
if (NameString->isString())
O << NameString->getAsString() << " ";
if (DLT.CompileUnit) {
std::string Str;
DICompileUnit CU(DLT.CompileUnit);
O << CU.getFilename(Str) << " ";
}
O << DLT.Line;
if (DLT.Col != 0)
@@ -1761,11 +1760,10 @@ void AsmPrinter::EmitComments(const MCInst &MI) const {
// Print source line info
O.PadToColumn(MAI->getCommentColumn());
O << MAI->getCommentString() << " SrcLine ";
if (DLT.CompileUnit->hasInitializer()) {
Constant *Name = DLT.CompileUnit->getInitializer();
if (ConstantArray *NameString = dyn_cast<ConstantArray>(Name))
if (NameString->isString())
O << NameString->getAsString() << " ";
if (DLT.CompileUnit) {
std::string Str;
DICompileUnit CU(DLT.CompileUnit);
O << CU.getFilename(Str) << " ";
}
O << DLT.Line;
if (DLT.Col != 0)