llvm / llvm-project

The LLVM Project is a collection of modular and reusable compiler and toolchain technologies.
http://llvm.org
Other
29.39k stars 12.15k forks source link

Assertion failed: (HasInsideLoopSuccs && "Loop block has no in-loop successors!") #15388

Open llvmbot opened 11 years ago

llvmbot commented 11 years ago
Bugzilla Link 15016
Version trunk
OS MacOS X
Reporter LLVM Bugzilla Contributor
CC @darkbuck

Extended Description

The following assertion fails when I run "llc -O2 lewp2.bc" on the attached .bc file. I'm generating this IR in a common lisp compiler that I'm writing when I don't use a function-pass-manager because I'm debugging the raw IR.

fry:bug-reports$ llc -O2 lewp2.bc Assertion failed: (HasInsideLoopSuccs && "Loop block has no in-loop successors!"), function verifyLoop, file /Users/meister/Development/cando/externals/src/llvm/include/llvm/Analysis/LoopInfoImpl.h, line 297.

llvmbot commented 11 years ago

It seems that the CFG is ill-formed. Simplifying the loop by: opt -simplifycfg lewp2.bc would solve the problem.

nlewycky commented 11 years ago

testcase .ll

llvmbot commented 11 years ago

The .bc file is too large to add as an attachment to bugzilla and I haven't been able to pare it down to a smaller size.

Here is a link to my public directory on Dropbox that contains the .bc file.

https://dl.dropbox.com/u/6229900/lewp2.bc