[llvm-bugs] [Bug 28541] New: Infinite recursion in loop vectorizer
via llvm-bugs
llvm-bugs at lists.llvm.org
Wed Jul 13 12:17:43 PDT 2016
https://llvm.org/bugs/show_bug.cgi?id=28541
Bug ID: 28541
Summary: Infinite recursion in loop vectorizer
Product: libraries
Version: trunk
Hardware: PC
OS: All
Status: NEW
Severity: normal
Priority: P
Component: Loop Optimizer
Assignee: unassignedbugs at nondot.org
Reporter: benny.kra at gmail.com
CC: llvm-bugs at lists.llvm.org
Classification: Unclassified
$ cat t.c
a, b, c;
fn1() {
while (b--) {
c = a;
switch (a & 3)
case 0:
do
case 3:
case 2:
case 1:
;
while (--c)
;
}
}
$ clang -O2 t.c
...
#8 0x00000000019ffbaa (anonymous
namespace)::InnerLoopVectorizer::createBlockInMask(llvm::BasicBlock*)
(bin/clang)
#9 0x0000000001a000d4 (anonymous
namespace)::InnerLoopVectorizer::createEdgeMask(llvm::BasicBlock*,
llvm::BasicBlock*) (bin/clang)
... repeats 100+ times ...
1. <eof> parser at end of file
2. Per-module optimization passes
3. Running pass 'Function Pass Manager' on module 't.c'.
4. Running pass 'Loop Vectorization' on function '@fn1'
clang: error: unable to execute command: Segmentation fault (core dumped)
clang: error: clang frontend command failed due to signal (use -v to see
invocation)
clang version 3.9.0 (trunk 275303) (llvm/trunk 275304)
The crash only occurs at -O2, the bug comes from the interaction of multiple
passes.
--
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/20160713/58ffcf7b/attachment.html>
More information about the llvm-bugs
mailing list