[all-commits] [llvm/llvm-project] 59cc39: [ObjC][ARC] Use the addresses of the ARC runtime f...

Akira Hatanaka via All-commits all-commits at lists.llvm.org
Wed Sep 8 12:01:59 PDT 2021


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 59cc39ae141f92c01836064cd033c537f16dec5e
      https://github.com/llvm/llvm-project/commit/59cc39ae141f92c01836064cd033c537f16dec5e
  Author: Akira Hatanaka <ahatanaka at apple.com>
  Date:   2021-09-08 (Wed, 08 Sep 2021)

  Changed paths:
    M clang/lib/CodeGen/CGObjC.cpp
    M clang/test/CodeGenObjC/arc-rv-attr.m
    M clang/test/CodeGenObjCXX/arc-rv-attr.mm

  Log Message:
  -----------
  [ObjC][ARC] Use the addresses of the ARC runtime functions instead of
integer 0/1 for the operand of bundle "clang.arc.attachedcall"

This should make it easier to understand what the IR is doing and also
simplify some of the passes as they no longer have to translate the
integer values to the runtime functions.

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


  Commit: dea6f71af0fdd7c54cacd43f5fb15e293924fa20
      https://github.com/llvm/llvm-project/commit/dea6f71af0fdd7c54cacd43f5fb15e293924fa20
  Author: Akira Hatanaka <ahatanaka at apple.com>
  Date:   2021-09-08 (Wed, 08 Sep 2021)

  Changed paths:
    M llvm/docs/LangRef.rst
    M llvm/include/llvm/Analysis/ObjCARCUtil.h
    M llvm/include/llvm/IR/Function.h
    M llvm/include/llvm/IR/InstrTypes.h
    M llvm/lib/IR/Function.cpp
    M llvm/lib/IR/Verifier.cpp
    M llvm/lib/Target/X86/X86ExpandPseudo.cpp
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/lib/Target/X86/X86InstrCompiler.td
    M llvm/lib/Target/X86/X86InstrControl.td
    M llvm/lib/Transforms/ObjCARC/ObjCARC.cpp
    M llvm/lib/Transforms/ObjCARC/ObjCARC.h
    M llvm/lib/Transforms/ObjCARC/ObjCARCContract.cpp
    M llvm/lib/Transforms/ObjCARC/ObjCARCOpts.cpp
    M llvm/lib/Transforms/Utils/InlineFunction.cpp
    M llvm/test/CodeGen/AArch64/call-rv-marker.ll
    M llvm/test/CodeGen/X86/call-rv-marker.ll
    M llvm/test/CodeGen/X86/expand-call-rvmarker.mir
    M llvm/test/Transforms/DeadArgElim/deadretval.ll
    M llvm/test/Transforms/Inline/inline-retainRV-call.ll
    M llvm/test/Transforms/ObjCARC/contract-marker-funclet.ll
    M llvm/test/Transforms/ObjCARC/contract-rv-attr.ll
    M llvm/test/Transforms/ObjCARC/rv.ll
    M llvm/test/Transforms/SCCP/clang-arc-rv.ll
    M llvm/test/Transforms/TailCallElim/deopt-bundle.ll
    M llvm/test/Verifier/invoke.ll
    M llvm/test/Verifier/operand-bundles.ll

  Log Message:
  -----------
  [ObjC][ARC] Use the addresses of the ARC runtime functions instead of
integer 0/1 for the operand of bundle "clang.arc.attachedcall"

https://reviews.llvm.org/D102996 changes the operand of bundle
"clang.arc.attachedcall". This patch makes changes to llvm that are
needed to handle the new IR.

This should make it easier to understand what the IR is doing and also
simplify some of the passes as they no longer have to translate the
integer values to the runtime functions.

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


Compare: https://github.com/llvm/llvm-project/compare/ff77c4eac79c...dea6f71af0fd


More information about the All-commits mailing list