[LLVMbugs] [Bug 223] NEW: LICM breaks code

bugzilla-daemon at cs.uiuc.edu bugzilla-daemon at cs.uiuc.edu
Wed Feb 4 22:05:56 PST 2004


           Summary: LICM breaks code
           Product: libraries
           Version: trunk
          Platform: All
        OS/Version: All
            Status: NEW
          Severity: normal
          Priority: P2
         Component: Scalar Optimizations
        AssignedTo: sabre at nondot.org
        ReportedBy: sabre at nondot.org

I have not looked at this at all, but here's a testcase reduced by bugpoint. 
This comes from 176.gcc:

implementation   ; Functions:

void %.subst_48() {
        br bool false, label %loopentry.0, label %UnifiedReturnBlock

loopentry.0:            ; preds = %entry, %loopentry.0
        br bool false, label %loopentry.0, label %loopentry.2

loopentry.2:            ; preds = %loopentry.0, %loopentry.2
        %tmp.968 = setle int 0, 3               ; <bool> [#uses=1]
        br bool %tmp.968, label %loopentry.2, label %UnifiedReturnBlock

UnifiedReturnBlock:             ; preds = %entry, %loopentry.2
        ret void

$ opt -licm bugpoint-reduced-simplified.bc 
Instruction does not dominate all uses!
        %tmp.968 = setle int 0, 3               ; <bool> [#uses=1]
        br bool %tmp.968, label %loopentry.2, label %UnifiedReturnBlock.loopexit
Broken module found, compilation aborted!


------- You are receiving this mail because: -------
You are on the CC list for the bug, or are watching someone who is.

More information about the llvm-bugs mailing list