[llvm-bugs] [Bug 30626] New: Compiler crash inside SLP Vectorizer ("Use still stuck around after Def is destroyed")
via llvm-bugs
llvm-bugs at lists.llvm.org
Thu Oct 6 13:50:30 PDT 2016
https://llvm.org/bugs/show_bug.cgi?id=30626
Bug ID: 30626
Summary: Compiler crash inside SLP Vectorizer ("Use still stuck
around after Def is destroyed")
Product: tools
Version: trunk
Hardware: PC
OS: Linux
Status: NEW
Severity: normal
Priority: P
Component: opt
Assignee: unassignedbugs at nondot.org
Reporter: charles_li at playstation.sony.com
CC: llvm-bugs at lists.llvm.org
Classification: Unclassified
Created attachment 17409
--> https://llvm.org/bugs/attachment.cgi?id=17409&action=edit
test case that causes ICE
Hi Everyone,
I have found a compiler crash bug.
Attached are the test case and the crash log.
To reproduce this ICE, compile using the following command.
$ clang -c -ffast-math -fslp-vectorize -O1 -march=btver2 test.cpp
I have triaged the history of this bug.
1. ICE started at commit r253240.
2. ICE went away at commit r258830.
3. ICE resurfaced when commit r258830 was reverted at r278938.
4. As of today, this ICE still exists.
FYI, the Commit Logs for r253240, r258830 and r278938.
$ svn log -r 253240
------------------------------------------------------------------------
r253240 | resistor | 2015-11-16 10:07:30 -0800 (Mon, 16 Nov 2015) | 7 lines
Add intermediate subtract instructions to reassociation worklist.
We sometimes create intermediate subtract instructions during
reassociation. Adding these to the worklist to revisit exposes many
additional reassociation opportunities.
Patch by Aditya Nandakumar.
------------------------------------------------------------------------
$ svn log -r 258830
------------------------------------------------------------------------
r258830 | aditya_nandakumar | 2016-01-26 10:42:36 -0800 (Tue, 26 Jan 2016) | 7
lines
Reassociate: Reprocess RedoInsts after each inst
Previously the RedoInsts was processed at the end of the block.
However it was possible that it left behind some instructions that
were not canonicalized.
This should guarantee that any previous instruction in the basic
block is canonicalized before we process a new instruction.
------------------------------------------------------------------------
$ svn log -r 278938
------------------------------------------------------------------------
r278938 | mcrosier | 2016-08-17 08:54:39 -0700 (Wed, 17 Aug 2016) | 5 lines
Revert "Reassociate: Reprocess RedoInsts after each inst".
This reverts commit r258830, which introduced a bug described in PR28367.
PR28367
------------------------------------------------------------------------
--
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/20161006/b2ca29e6/attachment.html>
More information about the llvm-bugs
mailing list