dblaikie added a comment.

In D80369#2051681 <https://reviews.llvm.org/D80369#2051681>, @aprantl wrote:

> In D80369#2051278 <https://reviews.llvm.org/D80369#2051278>, @dblaikie wrote:
>
> > @aprantl can you check here? I've attached two IR files for the 
> > ModuleDebugInfo.m test, before/after ('x' is before), stripped of the 
> > metadata numbers to make diffing easier - but I think you can still follow 
> > what's connected to what with reasonable guesswork. The point is these two 
> > function declarations end up in the retainedTypes list, and since the 
> > function declarations are emitted, so are the types used in their 
> > parameters, etc - but those types aren't reachable from anywhere else in 
> > the debug info metadata, so they won't be emitted into the final object 
> > file so far as I can see (because nothing looks at the function 
> > declarations in retainedTypes - only types).
> >
> > F11980002: x.ll <https://reviews.llvm.org/F11980002>
> >
> > F11980001: y.ll <https://reviews.llvm.org/F11980001>
>
>
> These two files are for the C++ test, not the Objective-C one. Is the 
> Objective-C case similar?


Haven't looked.

> If there is no explicit CHECK line for the types anchored by the function 
> calls, removing them is fine. However, for ObjC there is explicit code in 
> `clang/lib/CodeGen/ObjectFilePCHContainerOperations.cpp` 
> `DebugTypeVisitor::VisitFunctionDecl()` to emit the Objective-C methods. I do 
> want to keep this functionality; it's needed for debugging Swift code with 
> ObjC interoperability.

How does this data get used for Swift code and ObjC interoperability? At the 
moment I see no use of this IR metadata in LLVM. Does ObjC/Swift interop use 
the DI IR over in the Swift compiler? Got a link to the code there?

> I would be fine with manually adding everything created by this particular 
> visitor to the retained types if that makes the separation easier.




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

https://reviews.llvm.org/D80369



_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to