[PATCH] D80369: [DebugInfo][CallSites] Remove decl subprograms from 'retainedTypes:'

Djordje Todorovic via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Fri May 22 06:23:48 PDT 2020


djtodoro added a comment.

In D80369#2050022 <https://reviews.llvm.org/D80369#2050022>, @dblaikie wrote:

> In D80369#2048932 <https://reviews.llvm.org/D80369#2048932>, @djtodoro wrote:
>
> > Still have test failing:
> >
> >   Clang :: Modules/DebugInfoTransitiveImport.m
> >   Clang :: Modules/ModuleDebugInfo.cpp
> >   Clang :: Modules/ModuleDebugInfo.m
> >   
> >
> > I haven't looked into the failures, but I guess something Objective-C++ related should be handled with some additional work here.
>
>
> These look like over-constrained/accidental tests. At least the ModuleDEbugInfo.m test - the type being tested for won't be emitted, because the type itself isn't in the retained types list nor is it reachable from any other metadata that is going to be emitted.
>
> I think it'd probably be good to clean these tests up - and leave it to @aprantl to look into if this has exposed other bugs - but the bugs are already there, and this IR/debug info metadata isn't working around the bugs, since the IR is going unused anyway.


Looks like ObjC expects the declarations within retained types  (based on some tests failures), so I left it as is (I think @aprantl can help us with that).
Therefore, this patch will remove the declarations only in the case of call site debug info for now.


CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D80369/new/

https://reviews.llvm.org/D80369





More information about the cfe-commits mailing list