[llvm-bugs] [Bug 31522] New: [guards] Jump threading of guards

via llvm-bugs llvm-bugs at lists.llvm.org
Tue Jan 3 13:59:06 PST 2017


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

            Bug ID: 31522
           Summary: [guards] Jump threading of guards
           Product: libraries
           Version: trunk
          Hardware: PC
                OS: Linux
            Status: NEW
          Severity: normal
          Priority: P
         Component: Scalar Optimizations
          Assignee: unassignedbugs at nondot.org
          Reporter: listmail at philipreames.com
                CC: llvm-bugs at lists.llvm.org
    Classification: Unclassified

JumpThreading should handle guards when the guard can be reorder to the
beginning of the block and the guard condition is known to be true along some
inbound paths.

if (a != null) {
  a->f = 5;
}
guard (a != null);

==>
if (a != null) {
  a->f = 5;
} else {
  guard (a != null);
}

Note that we only need to handle the relatively simple cases.  The idea is to
allow better canonicalization before lowering, not to duplicate the entirety of
our optimizations over branches on guards.

-- 
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/20170103/170f0d0a/attachment.html>


More information about the llvm-bugs mailing list