Fix OProfile support after r80406 changed the DebugInfo interface from

GlobalVariables to MDNodes.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80411 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Jeffrey Yasskin 2009-08-29 00:44:16 +00:00
parent 7886cd85b2
commit 91dc33ae8f

View File

@ -71,12 +71,12 @@ OProfileJITEventListener::~OProfileJITEventListener() {
class FilenameCache {
// Holds the filename of each CompileUnit, so that we can pass the
// pointer into oprofile. These char*s are freed in the destructor.
DenseMap<GlobalVariable*, char*> Filenames;
DenseMap<MDNode*, char*> Filenames;
// Used as the scratch space in DICompileUnit::getFilename().
std::string TempFilename;
public:
const char* getFilename(GlobalVariable *CompileUnit) {
const char* getFilename(MDNode *CompileUnit) {
char *&Filename = Filenames[CompileUnit];
if (Filename == NULL) {
DICompileUnit CU(CompileUnit);
@ -85,7 +85,7 @@ class FilenameCache {
return Filename;
}
~FilenameCache() {
for (DenseMap<GlobalVariable*, char*>::iterator
for (DenseMap<MDNode*, char*>::iterator
I = Filenames.begin(), E = Filenames.end(); I != E;++I) {
free(I->second);
}