[NFC][RemoveDIs] Prefer iterators over inst-pointers in InstCombine
[llvm-project.git] / llvm / test / CodeGen / PowerPC / 2008-03-26-CoalescerBug.ll
blob20918c2ec208d3164d62d0cb4571bc92444e7963
1 ; RUN: llc -verify-machineinstrs < %s -mtriple=powerpc-unknown-linux-gnu | FileCheck %s
3 ; CHECK: @t
4 ; CHECK: blr
5 define i32 @t(i64 %byteStart, i32 %activeIndex) nounwind  {
6 entry:
7         %tmp50 = load i32, ptr null, align 4            ; <i32> [#uses=1]
8         %tmp5051 = zext i32 %tmp50 to i64               ; <i64> [#uses=3]
9         %tmp53 = udiv i64 %byteStart, %tmp5051          ; <i64> [#uses=1]
10         %tmp5354 = trunc i64 %tmp53 to i32              ; <i32> [#uses=1]
11         %tmp62 = urem i64 %byteStart, %tmp5051          ; <i64> [#uses=1]
12         %tmp94 = add i32 0, 1           ; <i32> [#uses=1]
13         %tmp100 = urem i32 %tmp94, 0            ; <i32> [#uses=2]
14         %tmp108 = add i32 0, %activeIndex               ; <i32> [#uses=1]
15         %tmp110 = sub i32 %tmp108, 0            ; <i32> [#uses=1]
16         %tmp112 = urem i32 %tmp110, 0           ; <i32> [#uses=2]
17         %tmp122 = icmp ult i32 %tmp112, %tmp100         ; <i1> [#uses=1]
18         %iftmp.175.0 = select i1 %tmp122, i32 %tmp112, i32 %tmp100              ; <i32> [#uses=1]
19         %tmp119 = add i32 %tmp5354, 0           ; <i32> [#uses=1]
20         %tmp131 = add i32 %tmp119, %iftmp.175.0         ; <i32> [#uses=1]
21         %tmp131132 = zext i32 %tmp131 to i64            ; <i64> [#uses=1]
22         %tmp147 = mul i64 %tmp131132, %tmp5051          ; <i64> [#uses=1]
23         br i1 false, label %bb164, label %bb190
24 bb164:          ; preds = %entry
25         %tmp171172 = and i64 %tmp62, 4294967295         ; <i64> [#uses=1]
26         %tmp173 = add i64 %tmp171172, %tmp147           ; <i64> [#uses=0]
27         ret i32 0
28 bb190:          ; preds = %entry
29         ret i32 0