Mercurial > hg > CbC > CbC_llvm
view llvm/test/Transforms/IndVarSimplify/2003-09-23-NotAtTop.ll @ 252:1f2b6ac9f198 llvm-original
LLVM16-1
author | Shinji KONO <kono@ie.u-ryukyu.ac.jp> |
---|---|
date | Fri, 18 Aug 2023 09:04:13 +0900 |
parents | c4bab56944e8 |
children |
line wrap: on
line source
; RUN: opt -S -passes=indvars < %s | FileCheck %s ; The indvar simplification code should ensure that the first PHI in the block ; is the canonical one! define i32 @test() { ; <label>:0 br label %Loop Loop: ; preds = %Loop, %0 ; CHECK: Loop: ; CHECK-NEXT: Canonical %NonIndvar = phi i32 [ 200, %0 ], [ %NonIndvarNext, %Loop ] ; <i32> [#uses=1] %Canonical = phi i32 [ 0, %0 ], [ %CanonicalNext, %Loop ] ; <i32> [#uses=2] store i32 %Canonical, ptr null %NonIndvarNext = sdiv i32 %NonIndvar, 2 ; <i32> [#uses=1] %CanonicalNext = add i32 %Canonical, 1 ; <i32> [#uses=1] br label %Loop }