[PATCH] D105671: [Intrinsics][ObjC] Mark objc_retain and friends as thisreturn.

Jon Roelofs via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Wed Aug 4 12:31:06 PDT 2021


jroelofs added a comment.

In D105671#2884483 <https://reviews.llvm.org/D105671#2884483>, @rjmccall wrote:

> IIUC, we sometimes turn `-retain` message sends into calls to `objc_retain` and so on.  Outside of ARC (the only time they're valid), these calls don't have the semantics of guaranteeing to return their self argument.  So I think this change is only fine if we're not applying it when doing that non-ARC transformation.

I believe this is covered now. The `-retain => objc_retain` transformation emits normal function calls, and `objc_retain` calls are only transformed into intrinsic calls when ARC is enabled.


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D105671



More information about the cfe-commits mailing list