Tag blocks with DW_AT_APPLE_block.
authorMike Stump <mrs@apple.com>
Thu, 14 May 2009 18:45:49 +0000 (18:45 +0000)
committerMike Stump <mrs@apple.com>
Thu, 14 May 2009 18:45:49 +0000 (18:45 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@71784 91177308-0d34-0410-b5e6-96231b3b80d8

lib/CodeGen/AsmPrinter/DwarfWriter.cpp

index bc83b8f026dca5bb3ad551d0c31d3b052c33cb42..c77a7537cbaa5dd7530d5564d5d7236a40487575 100644 (file)
@@ -1811,6 +1811,13 @@ private:
                                       DIDerivedType(Element.getGV()));
           Buffer.AddChild(ElemDie);
         }
+
+        // FIXME: We'd like an API to register additional attributes for the
+        // frontend to use while synthesizing, and then we'd use that api in
+        // clang instead of this.
+        if (Name == "__block_literal_generic")
+          AddUInt(&Buffer, DW_AT_APPLE_block, DW_FORM_flag, 1);
+
         unsigned RLang = CTy.getRunTimeLang();
         if (RLang) 
           AddUInt(&Buffer, DW_AT_APPLE_runtime_class, DW_FORM_data1, RLang);