[all-commits] [llvm/llvm-project] 4b794c: [ObjC] Support objc_claimAutoreleasedReturnValue (...

Marina Taylor via All-commits all-commits at lists.llvm.org
Tue May 13 08:05:11 PDT 2025


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 4b794c8aff3ba01d95bd29973f45ff776aaee3ed
      https://github.com/llvm/llvm-project/commit/4b794c8aff3ba01d95bd29973f45ff776aaee3ed
  Author: Marina Taylor <marina_taylor at apple.com>
  Date:   2025-05-13 (Tue, 13 May 2025)

  Changed paths:
    M llvm/include/llvm/Analysis/ObjCARCUtil.h
    M llvm/include/llvm/IR/Intrinsics.td
    M llvm/lib/CodeGen/PreISelIntrinsicLowering.cpp
    M llvm/lib/IR/Verifier.cpp
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/lib/Target/AArch64/GISel/AArch64CallLowering.cpp
    M llvm/test/CodeGen/AArch64/call-rv-marker.ll

  Log Message:
  -----------
  [ObjC] Support objc_claimAutoreleasedReturnValue (#139720)

This adds basic support for objc_claimAutoreleasedReturnValue, which is
mostly equivalent to objc_retainAutoreleasedReturnValue, with the
difference that it doesn't require the marker nop to be emitted between
it and the call it was attached to.

To achieve that, this also teaches the AArch64 attachedcall bundle
lowering to pick whether the marker should be emitted or not based on
whether the attachedcall target is claimARV or retainARV.

Co-authored-by: Ahmed Bougacha <ahmed at bougacha.org>



To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications


More information about the All-commits mailing list