[llvm-commits] [llvm] r60701 - in /llvm/trunk: lib/Transforms/Scalar/LoopUnswitch.cpp test/Transforms/LoopUnswitch/2008-11-03-Invariant.ll
Devang Patel
dpatel at apple.com
Mon Dec 8 09:02:37 PST 2008
Author: dpatel
Date: Mon Dec 8 11:02:37 2008
New Revision: 60701
URL: http://llvm.org/viewvc/llvm-project?rev=60701&view=rev
Log:
Undo previous patch.
Modified:
llvm/trunk/lib/Transforms/Scalar/LoopUnswitch.cpp
llvm/trunk/test/Transforms/LoopUnswitch/2008-11-03-Invariant.ll
Modified: llvm/trunk/lib/Transforms/Scalar/LoopUnswitch.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Transforms/Scalar/LoopUnswitch.cpp?rev=60701&r1=60700&r2=60701&view=diff
==============================================================================
--- llvm/trunk/lib/Transforms/Scalar/LoopUnswitch.cpp (original)
+++ llvm/trunk/lib/Transforms/Scalar/LoopUnswitch.cpp Mon Dec 8 11:02:37 2008
@@ -168,9 +168,7 @@
// TODO: Handle: br (VARIANT|INVARIANT).
// TODO: Hoist simple expressions out of loops.
- if (Instruction *I = dyn_cast<Instruction>(Cond))
- if (!L->contains(I->getParent()))
- return 0;
+ if (L->isLoopInvariant(Cond)) return Cond;
if (BinaryOperator *BO = dyn_cast<BinaryOperator>(Cond))
if (BO->getOpcode() == Instruction::And ||
Modified: llvm/trunk/test/Transforms/LoopUnswitch/2008-11-03-Invariant.ll
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/Transforms/LoopUnswitch/2008-11-03-Invariant.ll?rev=60701&r1=60700&r2=60701&view=diff
==============================================================================
--- llvm/trunk/test/Transforms/LoopUnswitch/2008-11-03-Invariant.ll (original)
+++ llvm/trunk/test/Transforms/LoopUnswitch/2008-11-03-Invariant.ll Mon Dec 8 11:02:37 2008
@@ -1,4 +1,4 @@
-; RUN: llvm-as < %s | opt -loop-unswitch -stats | not grep loop-unswitch
+; RUN: llvm-as < %s | opt -loop-unswitch -verify -disable-output
define void @test_fc_while_continue_or(float %x, float %y, float* %result) nounwind {
More information about the llvm-commits
mailing list