ahatanak added a comment.

In D86049#3818696 <https://reviews.llvm.org/D86049#3818696>, @plotfi wrote:

> In D86049#3818435 <https://reviews.llvm.org/D86049#3818435>, @mwyman wrote:
>
>> In D86049#3816006 <https://reviews.llvm.org/D86049#3816006>, @plotfi wrote:
>>
>>> @dmaclach @ahatanak @mwyman How do things look from here? Do you want 
>>> something for properties as well or would it be ok if we did this in a 
>>> later commit?
>>
>> Huh, for some reason I thought when I'd last poked at using the `visibility` 
>> attribute it wasn't allowed on ObjC methods, which is why I'd suggested 
>> adding the enum on `objc_direct`, but as that no longer appears to be the 
>> case yes I like this approach better.
>
> @dmaclach @mwyman  I am also very happy with the fact that we can just reuse 
> the regular `visibility` attribute. In the future we can decide on revised 
> behavior for `hasMethodVisibilityDefault`.
>
> @ahatanak Do you have feedback on this?

The visibility attribute changes look good to me.

Do we have the answers to the last two questions John raised in 
https://reviews.llvm.org/D86049#2255738? I think we should get it right the 
first time since, once we make the direct methods visible, it'd be hard to 
change where the null check or class initialization is done since that would be 
an ABI change. Should we run experiments to measure the impact on code size?



================
Comment at: clang/lib/AST/Mangle.cpp:371
+  OS << (MD->isInstanceMethod() ? '-' : '+');
+  OS << (MD->hasMethodVisibilityDefault() ? '<' : '[');
   if (const auto *CID = MD->getCategory()) {
----------------
Sorry, I might have missed the discussion, but what's the reason we need this 
change in mangling? Is it because the linker cannot handle the standard 
mangling scheme?


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D86049

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

Reply via email to