[llvm-bugs] [Bug 37333] New: ARC doesn't elide retain/release pair

via llvm-bugs llvm-bugs at lists.llvm.org
Thu May 3 17:38:11 PDT 2018


https://bugs.llvm.org/show_bug.cgi?id=37333

            Bug ID: 37333
           Summary: ARC doesn't elide retain/release pair
           Product: libraries
           Version: trunk
          Hardware: PC
                OS: All
            Status: NEW
          Severity: enhancement
          Priority: P
         Component: Scalar Optimizations
          Assignee: unassignedbugs at nondot.org
          Reporter: smeenai at fb.com
                CC: ahatanak at gmail.com, compnerd at compnerd.org,
                    llvm-bugs at lists.llvm.org, rjmccall at apple.com

Created attachment 20261
  --> https://bugs.llvm.org/attachment.cgi?id=20261&action=edit
Reduced IR

If I run opt -objc-arc on the attached IR, it's able to eliminate the
retain/release pair for %p but not the one for %q. I don't really understand
why one is eliminated but not the other; they both seem elidable as far as I
can see. Changing the order of the releases doesn't have any effect, but
changing the order of the retains (i.e. retaining %q before %p) makes %p be the
RR pair that's eliminated instead of %q.

-- 
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-bugs/attachments/20180504/62350a1b/attachment.html>


More information about the llvm-bugs mailing list