[llvm-commits] [llvm] r121728 - in /llvm/trunk: lib/Transforms/Utils/SimplifyCFG.cpp test/Transforms/SimplifyCFG/switch_create.ll

Owen Anderson resistor at mac.com
Mon Dec 13 15:53:53 PST 2010


Chris,

This patch broke a number of loop tests of the buildbots.  I've pulled SimplifyCFG back to r121694, which, from your commit messages, was the last bug-free revision.  The test you added since then is still in TOT, but XFAIL'd.

--Owen


On Dec 13, 2010, at 3:02 PM, Chris Lattner wrote:

> Author: lattner
> Date: Mon Dec 13 17:02:19 2010
> New Revision: 121728
> 
> URL: http://llvm.org/viewvc/llvm-project?rev=121728&view=rev
> Log:
> temporarily disable part of my previous patch, which causes an iterator invalidation issue, causing a crash on some versions of perlbmk.
> 
> Modified:
>    llvm/trunk/lib/Transforms/Utils/SimplifyCFG.cpp
>    llvm/trunk/test/Transforms/SimplifyCFG/switch_create.ll
> 
> Modified: llvm/trunk/lib/Transforms/Utils/SimplifyCFG.cpp
> URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Transforms/Utils/SimplifyCFG.cpp?rev=121728&r1=121727&r2=121728&view=diff
> ==============================================================================
> --- llvm/trunk/lib/Transforms/Utils/SimplifyCFG.cpp (original)
> +++ llvm/trunk/lib/Transforms/Utils/SimplifyCFG.cpp Mon Dec 13 17:02:19 2010
> @@ -1515,7 +1515,7 @@
>       AddPredecessorToBlock(FalseDest, PredBlock, BB);
>       PBI->setSuccessor(1, FalseDest);
>     }
> -    return SimplifyCFG(PBI->getParent()) | true;
> +    return SimplifyCFG(BB) | true;
>   }
>   return false;
> }
> 
> Modified: llvm/trunk/test/Transforms/SimplifyCFG/switch_create.ll
> URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/Transforms/SimplifyCFG/switch_create.ll?rev=121728&r1=121727&r2=121728&view=diff
> ==============================================================================
> --- llvm/trunk/test/Transforms/SimplifyCFG/switch_create.ll (original)
> +++ llvm/trunk/test/Transforms/SimplifyCFG/switch_create.ll Mon Dec 13 17:02:19 2010
> @@ -253,21 +253,21 @@
>   ret i32 %conv46
> 
> ; CHECK: @test9
> -; CHECK:   %cmp = icmp ult i8 %c, 33
> -; CHECK:   br i1 %cmp, label %lor.end, label %switch.early.test
> +; HECK:   %cmp = icmp ult i8 %c, 33
> +; HECK:   br i1 %cmp, label %lor.end, label %switch.early.test
> 
> -; CHECK: switch.early.test:
> -; CHECK:   switch i8 %c, label %lor.rhs [
> -; CHECK:     i8 46, label %lor.end
> -; CHECK:     i8 44, label %lor.end
> -; CHECK:     i8 58, label %lor.end
> -; CHECK:     i8 59, label %lor.end
> -; CHECK:     i8 60, label %lor.end
> -; CHECK:     i8 62, label %lor.end
> -; CHECK:     i8 34, label %lor.end
> -; CHECK:     i8 92, label %lor.end
> -; CHECK:     i8 39, label %lor.end
> -; CHECK:   ]
> +; HECK: switch.early.test:
> +; HECK:   switch i8 %c, label %lor.rhs [
> +; HECK:     i8 46, label %lor.end
> +; HECK:     i8 44, label %lor.end
> +; HECK:     i8 58, label %lor.end
> +; HECK:     i8 59, label %lor.end
> +; HECK:     i8 60, label %lor.end
> +; HECK:     i8 62, label %lor.end
> +; HECK:     i8 34, label %lor.end
> +; HECK:     i8 92, label %lor.end
> +; HECK:     i8 39, label %lor.end
> +; HECK:   ]
> }
> 
> define i32 @test10(i32 %mode, i1 %Cond) {
> @@ -331,3 +331,24 @@
> ; CHECK:   i32 4, label %return
> ; CHECK: ]
> }
> +
> +define void @test12() nounwind {
> +entry:
> +  br label %bb49.us.us
> +
> +bb49.us.us:
> +  %A = icmp eq i32 undef, undef
> +  br i1 %A, label %bb55.us.us, label %malformed
> +
> +bb48.us.us:
> +  %B = icmp ugt i32 undef, undef
> +  br i1 %B, label %bb55.us.us, label %bb49.us.us
> +
> +bb55.us.us:
> +  br label %bb48.us.us
> +
> +malformed:
> +  ret void
> +; CHECK: @test12
> +
> +}
> \ No newline at end of file
> 
> 
> _______________________________________________
> llvm-commits mailing list
> llvm-commits at cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20101213/a2bd6be6/attachment.html>


More information about the llvm-commits mailing list