[LLVMbugs] [Bug 2789] New: module does not pass 'verifierPass' after 'loop unroll'
bugzilla-daemon at cs.uiuc.edu
bugzilla-daemon at cs.uiuc.edu
Fri Sep 12 15:15:46 PDT 2008
http://llvm.org/bugs/show_bug.cgi?id=2789
Summary: module does not pass 'verifierPass' after 'loop unroll'
Product: libraries
Version: trunk
Platform: PC
OS/Version: Windows NT
Status: NEW
Severity: normal
Priority: P2
Component: Loop Optimizer
AssignedTo: unassignedbugs at nondot.org
ReportedBy: asitgoes at gmail.com
CC: llvmbugs at cs.uiuc.edu
Created an attachment (id=2013)
--> (http://llvm.org/bugs/attachment.cgi?id=2013)
bitcode after loop unroll pass
Hi,
When I'm playing with the loop unroll pass to unroll a loop whose iteration
count is unknown with 'count=2', I found that after the loop unroll pass, the
module has invalid phi instructions as below
PHINode should have one entry for each predecessor of its parent basic block!
%r6.x.0.lcssa32 = phi float [ %r6.x.0.1, %__while_52_entry.1 ]
; <float> [#uses=1]
Broken module found, compilation aborted!
It seems like that at line 332 in 'Transforms/Utils/UnrollLoop.cpp', a branch
is added from each necessary conditionals to the exit block, but the PHI nodes
in the exit block are not updated to have incomings for the branch.
I attached the bitcode after loop-unroll. Please let me know if I'm guessing
wrong.
Thanks.
- Ji Young
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
More information about the llvm-bugs
mailing list