[all-commits] [llvm/llvm-project] 41b1e9: [CodeGen][ObjC] Mark calls to objc_unsafeClaimAuto...

Akira Hatanaka via All-commits all-commits at lists.llvm.org
Mon Aug 3 13:25:49 PDT 2020


  Branch: refs/heads/master
  Home:   https://github.com/llvm/llvm-project
  Commit: 41b1e97b12c1407e40d8e5081bf1f9cf183934b0
      https://github.com/llvm/llvm-project/commit/41b1e97b12c1407e40d8e5081bf1f9cf183934b0
  Author: Akira Hatanaka <ahatanaka at apple.com>
  Date:   2020-08-03 (Mon, 03 Aug 2020)

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

  Log Message:
  -----------
  [CodeGen][ObjC] Mark calls to objc_unsafeClaimAutoreleasedReturnValue as
notail on x86-64

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

Differential Revision: https://reviews.llvm.org/D84540




More information about the All-commits mailing list