[PATCH] D65902: [ObjC][ARC] Upgrade calls to ARC runtime functions to intrinsic calls if the bitcode has the arm64 retainAutoreleasedReturnValue marker

Akira Hatanaka via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Aug 7 15:45:02 PDT 2019


ahatanak added a comment.

Since ARC optimizer needs `clang.arc.use` to correctly move or remove retain/release pairs (see the comment in `TopDownPtrState::HandlePotentialAlterRefCount`), I think we should unconditionally upgrade the intrinsic calls instead of removing them  even when the bitcode doesn't have the arm64 marker. I'll update the patch to convert `clang.arc.use` to `llvm.objc.clang.arc.use`.


Repository:
  rL LLVM

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

https://reviews.llvm.org/D65902





More information about the llvm-commits mailing list