diff options
Diffstat (limited to 'test')
-rw-r--r-- | test/Transforms/IndVarsSimplify/2003-09-23-NotAtTop.ll | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/test/Transforms/IndVarsSimplify/2003-09-23-NotAtTop.ll b/test/Transforms/IndVarsSimplify/2003-09-23-NotAtTop.ll new file mode 100644 index 0000000000..64c1051f34 --- /dev/null +++ b/test/Transforms/IndVarsSimplify/2003-09-23-NotAtTop.ll @@ -0,0 +1,16 @@ +; RUN: llvm-as < %s | opt -indvars | llvm-dis | grep -C 1 Loop: | grep Canonical + +; The indvar simplification code should ensure that the first PHI in the block +; is the canonical one! + +int %test() { + br label %Loop +Loop: + %NonIndvar = phi int [200, %0], [%NonIndvarNext, %Loop] + %Canonical = phi int [0, %0], [%CanonicalNext, %Loop] + + %NonIndvarNext = div int %NonIndvar, 2 + %CanonicalNext = add int %Canonical, 1 + br label %Loop +} + |