From: Devang Patel Date: Sat, 24 Apr 2010 00:49:16 +0000 (+0000) Subject: Revert accidental check-in. X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=970c618c3f9ce7e010a30587118afc03434cfd99;p=clang Revert accidental check-in. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@102226 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/lib/CodeGen/CGDebugInfo.cpp b/lib/CodeGen/CGDebugInfo.cpp index 7a9961b37f..2a5b7af712 100644 --- a/lib/CodeGen/CGDebugInfo.cpp +++ b/lib/CodeGen/CGDebugInfo.cpp @@ -1333,21 +1333,9 @@ void CGDebugInfo::EmitFunctionStart(GlobalDecl GD, QualType FnType, llvm::StringRef Name; MangleBuffer LinkageName; - // It is expected that CurLoc is set before using EmitFunctionStart. - // Usually, CurLoc points to the left bracket location of compound - // statement representing function body. - llvm::DIFile Unit = getOrCreateFile(CurLoc); - llvm::DIDescriptor Context(Unit.getNode()); const Decl *D = GD.getDecl(); if (const FunctionDecl *FD = dyn_cast(D)) { - if (const CXXMethodDecl *MD = dyn_cast(FD)) { - if (MD->isStatic()) { - QualType RTy = CGM.getContext().getTypeDeclType(MD->getParent()); - Context = CreateType(RTy->getAs(), getOrCreateFile(CurLoc)); - } - } - // If there is a DISubprogram for this function available then use it. llvm::DenseMap::iterator FI = SPCache.find(FD); @@ -1372,11 +1360,15 @@ void CGDebugInfo::EmitFunctionStart(GlobalDecl GD, QualType FnType, Name = Name.substr(1); } + // It is expected that CurLoc is set before using EmitFunctionStart. + // Usually, CurLoc points to the left bracket location of compound + // statement representing function body. + llvm::DIFile Unit = getOrCreateFile(CurLoc); SourceManager &SM = CGM.getContext().getSourceManager(); unsigned LineNo = SM.getPresumedLoc(CurLoc).getLine(); llvm::DISubprogram SP = - DebugFactory.CreateSubprogram(Context, Name, Name, LinkageName, Unit, LineNo, + DebugFactory.CreateSubprogram(Unit, Name, Name, LinkageName, Unit, LineNo, getOrCreateType(FnType, Unit), Fn->hasInternalLinkage(), true/*definition*/);