[PATCH] D66153: [AutoUpgrader] Make ArcRuntime Autoupgrader more conservative

Steven Wu via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue Aug 13 10:36:28 PDT 2019


steven_wu created this revision.
steven_wu added reviewers: ahatanak, rjmccall, dexonsmith, pete.
Herald added subscribers: jkorous, hiraditya.
Herald added a project: LLVM.

This is a tweak to r368311 and r368646 which auto upgrades the calls to
objc runtime functions to objc runtime intrinsics, in order to make sure
that the auto upgrader does not trigger with up-to-date bitcode.

It is possible for bitcode that is up-to-date to contain direct calls to
objc runtime function and those are not inserted by compiler as part of
ARC and they should not be upgraded. Now auto upgrader only triggers as
when the old style of ARC marker is used so it is guaranteed that it
won't trigger on update-to-date bitcode.

This also means it won't do this upgrade for bitcode from llvm-8 and
llvm-9, which preserves the behavior of those releases. Ideally they
should be upgraded as well but it is more important to make sure
AutoUpgrader will not trigger on up-to-date bitcode.


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D66153

Files:
  llvm/include/llvm/IR/AutoUpgrade.h
  llvm/lib/Bitcode/Reader/BitcodeReader.cpp
  llvm/lib/IR/AutoUpgrade.cpp
  llvm/test/Bitcode/upgrade-arc-runtime-calls-new.bc
  llvm/test/Bitcode/upgrade-arc-runtime-calls.ll

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D66153.214876.patch
Type: text/x-patch
Size: 9283 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20190813/f31a530b/attachment.bin>


More information about the llvm-commits mailing list