http://llvm.org/bugs/show_bug.cgi?id=10534
Andrew Trick <[email protected]> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |RESOLVED Resolution| |FIXED --- Comment #22 from Andrew Trick <[email protected]> 2011-08-09 23:35:00 CDT --- Fixed in r137203. LoopUnroll now calls SimplifyIndvar to cleanup after itself. Note: The complete fix currently requires -disable-iv-rewrite. But that will be the default mode in a matter of weeks, and the test case requires a nondefault flag anyway. opt -O3 -S FlipBitRun.bc -unroll-count=4 -disable-iv-rewrite define void @FlipBitRun(i32* nocapture %bitmap, i32 %bit_addr, i32 %nbits) nounwind { entry: br label %while.body.3 while.end: ; preds = %while.body.3 ret void while.body.3: ; preds = %entry, %while.body.3 %nbits.addr.02 = phi i32 [ 128, %entry ], [ %dec.3, %while.body.3 ] %bit_addr.addr.01 = phi i32 [ 0, %entry ], [ %inc.3, %while.body.3 ] %shr = lshr i32 %bit_addr.addr.01, 5 %rem = and i32 %bit_addr.addr.01, 28 %shl = shl i32 1, %rem %arrayidx = getelementptr inbounds i32* %bitmap, i32 %shr %tmp6 = load i32* %arrayidx, align 4 %xor = xor i32 %tmp6, %shl %inc3 = and i32 %bit_addr.addr.01, 28 %rem.1 = or i32 %inc3, 1 %shl.1 = shl i32 1, %rem.1 %xor.1 = xor i32 %xor, %shl.1 %inc.14 = and i32 %bit_addr.addr.01, 28 %rem.2 = or i32 %inc.14, 2 %shl.2 = shl i32 1, %rem.2 %xor.2 = xor i32 %xor.1, %shl.2 %dec.3 = add i32 %nbits.addr.02, -4 %inc.25 = and i32 %bit_addr.addr.01, 28 %rem.3 = or i32 %inc.25, 3 %shl.3 = shl i32 1, %rem.3 %xor.3 = xor i32 %xor.2, %shl.3 store i32 %xor.3, i32* %arrayidx, align 4 %inc.3 = add i32 %bit_addr.addr.01, 4 %tobool.3 = icmp eq i32 %dec.3, 0 br i1 %tobool.3, label %while.end, label %while.body.3 -- 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. _______________________________________________ LLVMbugs mailing list [email protected] http://lists.cs.uiuc.edu/mailman/listinfo/llvmbugs
