Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Infinite recursion in loop vectorizer #28915

Closed
d0k opened this issue Jul 13, 2016 · 8 comments
Closed

Infinite recursion in loop vectorizer #28915

d0k opened this issue Jul 13, 2016 · 8 comments
Labels
bugzilla Issues migrated from bugzilla loopoptim

Comments

@d0k
Copy link
Member

d0k commented Jul 13, 2016

Bugzilla Link 28541
Resolution FIXED
Resolved on Aug 12, 2016 17:48
Version trunk
OS All
Blocks #28974
CC @zmodem,@hfinkel

Extended Description

$ 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.

@d0k
Copy link
Member Author

d0k commented Jul 13, 2016

Bisection points at r264697.

This code is coming from real code (pygame) even though it looks like fuzzer output ;)

@d0k
Copy link
Member Author

d0k commented Jul 27, 2016

*** Bug llvm/llvm-bugzilla-archive#28716 has been marked as a duplicate of this bug. ***

@zmodem
Copy link
Collaborator

zmodem commented Jul 28, 2016

Sounds like this is a 3.8 -> 3.9 regression.

@llvmbot
Copy link
Collaborator

llvmbot commented Aug 10, 2016

*** Bug #28564 has been marked as a duplicate of this bug. ***

@zmodem
Copy link
Collaborator

zmodem commented Aug 10, 2016

mkuper pointed out there's a fix up for review: http://reviews.llvm.org/D22952

@llvmbot
Copy link
Collaborator

llvmbot commented Aug 13, 2016

Fixed by r278573.

@zmodem
Copy link
Collaborator

zmodem commented Nov 26, 2021

mentioned in issue #28974

@d0k
Copy link
Member Author

d0k commented Nov 26, 2021

mentioned in issue llvm/llvm-bugzilla-archive#28716

@llvmbot llvmbot transferred this issue from llvm/llvm-bugzilla-archive Dec 10, 2021
This issue was closed.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bugzilla Issues migrated from bugzilla loopoptim
Projects
None yet
Development

No branches or pull requests

3 participants