[llvm-bugs] [Bug 24866] New: NULL deref crash with -value-tracking-dom-conditions

via llvm-bugs llvm-bugs at lists.llvm.org
Thu Sep 17 12:10:38 PDT 2015


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

            Bug ID: 24866
           Summary: NULL deref crash with -value-tracking-dom-conditions
           Product: tools
           Version: trunk
          Hardware: PC
                OS: Windows NT
            Status: NEW
          Severity: normal
          Priority: P
         Component: opt
          Assignee: unassignedbugs at nondot.org
          Reporter: filtered+llvm-bugzilla at psychosanity.com
                CC: llvm-bugs at lists.llvm.org
    Classification: Unclassified

Created attachment 14897
  --> https://llvm.org/bugs/attachment.cgi?id=14897&action=edit
bugpoint-reduced testcase

While looking at some code somebody posted as an example where clang produces
significantly worse code than gcc[1] , I came across this crash while trying to
see if various command-line options could remedy the situation.

The attached bugpoint-reduced testcase demonstrates the problem when run with:
opt bugpoint-reduced-simplified.bc -value-tracking-dom-conditions -licm
-load-combine

The problem seems to be that the expression "Q.DT->getNode(Current)" (on line
640 in llvm\lib\Analysis\ValueTracking.cpp) is returning NULL, and is then
immediately dereferenced to call "->getIDom()". Why that is or how it should be
handled, I have no idea.

[1] The performance bug is filed at https://llvm.org/bugs/show_bug.cgi?id=21760

-- 
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/20150917/b4772cfd/attachment.html>


More information about the llvm-bugs mailing list