[llvm-bugs] [Bug 31320] New: Merge r281586 into 3.9.1

via llvm-bugs llvm-bugs at lists.llvm.org
Thu Dec 8 12:19:12 PST 2016


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

            Bug ID: 31320
           Summary: Merge r281586 into 3.9.1
           Product: new-bugs
           Version: 3.9
          Hardware: PC
                OS: All
            Status: NEW
          Severity: normal
          Priority: P
         Component: new bugs
          Assignee: unassignedbugs at nondot.org
          Reporter: dimitry at andric.com
                CC: llvm-bugs at lists.llvm.org
    Classification: Unclassified

Please merge r281586 into 3.9.1:
------------------------------------------------------------------------
r281586 | wmi | 2016-09-15 08:28:34 +0200 (Thu, 15 Sep 2016) | 11 lines

Add some shortcuts in LazyValueInfo to reduce compile time of Correlated Value
Propagation.

The patch is to partially fix PR10584. Correlated Value Propagation queries LVI
to check non-null for pointer params of each callsite. If we know the def of
param is an alloca instruction, we know it is non-null and can return early
from
LVI. Similarly, CVP queries LVI to check whether pointer for each mem access is
constant. If the def of the pointer is an alloca instruction, we know it is not
a constant pointer. These shortcuts can reduce the cost of CVP significantly.

Differential Revision: https://reviews.llvm.org/D18066
------------------------------------------------------------------------

This greatly increases the performance of the Value Propagation pass in some
cases, and it is (as far as I can see) a low-impact, non-API changing fix.

-- 
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/20161208/3ba89c9b/attachment.html>


More information about the llvm-bugs mailing list