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!)

llvm-svn: 79977
This commit is contained in:
Devang Patel
2009-08-25 05:24:07 +00:00
parent c1eb79b7c9
commit 02aac922b4
47 changed files with 966 additions and 1933 deletions

View File

@@ -16,7 +16,7 @@
#include "llvm/Constants.h"
#include "llvm/DerivedTypes.h"
#include "llvm/InlineAsm.h"
#include "llvm/Instructions.h"
#include "llvm/IntrinsicInst.h"
#include "llvm/LLVMContext.h"
#include "llvm/Metadata.h"
#include "llvm/Module.h"
@@ -2192,7 +2192,10 @@ Module *BitcodeReader::materializeModule(std::string *ErrInfo) {
}
}
std::vector<std::pair<Function*, Function*> >().swap(UpgradedIntrinsics);
// Check debug info intrinsics.
CheckDebugInfoIntrinsics(TheModule);
return TheModule;
}