[PATCH] D84540: [CodeGen][ObjC] Mark calls to objc_unsafeClaimAutoreleasedReturnValue as notail on x86-64

Akira Hatanaka via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Fri Jul 24 09:37:11 PDT 2020


ahatanak created this revision.
ahatanak added reviewers: rjmccall, erik.pilkington.
ahatanak added a project: clang.
Herald added subscribers: ributzka, dexonsmith, jkorous.

This is needed because the epilogue code inserted before tail calls on x86-64 breaks the handshake between the caller and callee.

Calls to objc_retainAutoreleasedReturnValue used to have the same problem, which was fixed in https://reviews.llvm.org/D59656.

rdar://problem/66029552


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D84540

Files:
  clang/lib/CodeGen/CGObjC.cpp
  clang/lib/CodeGen/TargetInfo.cpp
  clang/lib/CodeGen/TargetInfo.h
  clang/test/CodeGenObjC/arc-unsafeclaim.m

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D84540.280498.patch
Type: text/x-patch
Size: 10030 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20200724/64c152fb/attachment.bin>


More information about the cfe-commits mailing list