r249282 - Module Debugging: Emit (ObjC) function declarations in the module scope

Adrian Prantl via cfe-commits cfe-commits at lists.llvm.org
Sun Oct 4 16:23:05 PDT 2015


Author: adrian
Date: Sun Oct  4 18:23:04 2015
New Revision: 249282

URL: http://llvm.org/viewvc/llvm-project?rev=249282&view=rev
Log:
Module Debugging: Emit (ObjC) function declarations in the module scope
when building a module.

Modified:
    cfe/trunk/lib/CodeGen/CGDebugInfo.cpp
    cfe/trunk/test/Modules/ModuleDebugInfo.m

Modified: cfe/trunk/lib/CodeGen/CGDebugInfo.cpp
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/CodeGen/CGDebugInfo.cpp?rev=249282&r1=249281&r2=249282&view=diff
==============================================================================
--- cfe/trunk/lib/CodeGen/CGDebugInfo.cpp (original)
+++ cfe/trunk/lib/CodeGen/CGDebugInfo.cpp Sun Oct  4 18:23:04 2015
@@ -2731,7 +2731,7 @@ void CGDebugInfo::EmitFunctionDecl(Globa
 
   unsigned Flags = 0;
   llvm::DIFile *Unit = getOrCreateFile(Loc);
-  llvm::DIScope *FDContext = Unit;
+  llvm::DIScope *FDContext = getDeclContextDescriptor(D);
   llvm::DINodeArray TParamsArray;
   if (isa<FunctionDecl>(D)) {
     // If there is a DISubprogram for this function available then use it.

Modified: cfe/trunk/test/Modules/ModuleDebugInfo.m
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/test/Modules/ModuleDebugInfo.m?rev=249282&r1=249281&r2=249282&view=diff
==============================================================================
--- cfe/trunk/test/Modules/ModuleDebugInfo.m (original)
+++ cfe/trunk/test/Modules/ModuleDebugInfo.m Sun Oct  4 18:23:04 2015
@@ -41,6 +41,8 @@
 // MODULE-CHECK: !DICompositeType(tag: DW_TAG_structure_type,
 // MODULE-CHECK-SAME:             name: "ObjCClass",
 // MODULE-CHECK-SAME:             scope: ![[MODULE]],
+// MODULE-CHECK: !DISubprogram(name: "+[ObjCClass classMethod]",
+// MODULE-CHECK-SAME:          scope: ![[MODULE]],
 
 // The forward declaration should not be in the module scope.
 // MODULE-CHECK: !DICompositeType(tag: DW_TAG_structure_type, name: "OpaqueData", file




More information about the cfe-commits mailing list