1*9880d681SAndroid Build Coastguard Worker; RUN: opt < %s -loop-reroll -verify-scev -S | FileCheck %s 2*9880d681SAndroid Build Coastguard Workertarget datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64-S128" 3*9880d681SAndroid Build Coastguard Workertarget triple = "x86_64-unknown-linux-gnu" 4*9880d681SAndroid Build Coastguard Worker 5*9880d681SAndroid Build Coastguard Worker; void goo32(float alpha, float *a, float *b) { 6*9880d681SAndroid Build Coastguard Worker; for (int i = 0; i < 3200; i += 32) { 7*9880d681SAndroid Build Coastguard Worker; a[i] += alpha * b[i]; 8*9880d681SAndroid Build Coastguard Worker; a[i + 1] += alpha * b[i + 1]; 9*9880d681SAndroid Build Coastguard Worker; a[i + 2] += alpha * b[i + 2]; 10*9880d681SAndroid Build Coastguard Worker; a[i + 3] += alpha * b[i + 3]; 11*9880d681SAndroid Build Coastguard Worker; a[i + 4] += alpha * b[i + 4]; 12*9880d681SAndroid Build Coastguard Worker; a[i + 5] += alpha * b[i + 5]; 13*9880d681SAndroid Build Coastguard Worker; a[i + 6] += alpha * b[i + 6]; 14*9880d681SAndroid Build Coastguard Worker; a[i + 7] += alpha * b[i + 7]; 15*9880d681SAndroid Build Coastguard Worker; a[i + 8] += alpha * b[i + 8]; 16*9880d681SAndroid Build Coastguard Worker; a[i + 9] += alpha * b[i + 9]; 17*9880d681SAndroid Build Coastguard Worker; a[i + 10] += alpha * b[i + 10]; 18*9880d681SAndroid Build Coastguard Worker; a[i + 11] += alpha * b[i + 11]; 19*9880d681SAndroid Build Coastguard Worker; a[i + 12] += alpha * b[i + 12]; 20*9880d681SAndroid Build Coastguard Worker; a[i + 13] += alpha * b[i + 13]; 21*9880d681SAndroid Build Coastguard Worker; a[i + 14] += alpha * b[i + 14]; 22*9880d681SAndroid Build Coastguard Worker; a[i + 15] += alpha * b[i + 15]; 23*9880d681SAndroid Build Coastguard Worker; a[i + 16] += alpha * b[i + 16]; 24*9880d681SAndroid Build Coastguard Worker; a[i + 17] += alpha * b[i + 17]; 25*9880d681SAndroid Build Coastguard Worker; a[i + 18] += alpha * b[i + 18]; 26*9880d681SAndroid Build Coastguard Worker; a[i + 19] += alpha * b[i + 19]; 27*9880d681SAndroid Build Coastguard Worker; a[i + 20] += alpha * b[i + 20]; 28*9880d681SAndroid Build Coastguard Worker; a[i + 21] += alpha * b[i + 21]; 29*9880d681SAndroid Build Coastguard Worker; a[i + 22] += alpha * b[i + 22]; 30*9880d681SAndroid Build Coastguard Worker; a[i + 23] += alpha * b[i + 23]; 31*9880d681SAndroid Build Coastguard Worker; a[i + 24] += alpha * b[i + 24]; 32*9880d681SAndroid Build Coastguard Worker; a[i + 25] += alpha * b[i + 25]; 33*9880d681SAndroid Build Coastguard Worker; a[i + 26] += alpha * b[i + 26]; 34*9880d681SAndroid Build Coastguard Worker; a[i + 27] += alpha * b[i + 27]; 35*9880d681SAndroid Build Coastguard Worker; a[i + 28] += alpha * b[i + 28]; 36*9880d681SAndroid Build Coastguard Worker; a[i + 29] += alpha * b[i + 29]; 37*9880d681SAndroid Build Coastguard Worker; a[i + 30] += alpha * b[i + 30]; 38*9880d681SAndroid Build Coastguard Worker; a[i + 31] += alpha * b[i + 31]; 39*9880d681SAndroid Build Coastguard Worker; } 40*9880d681SAndroid Build Coastguard Worker; } 41*9880d681SAndroid Build Coastguard Worker 42*9880d681SAndroid Build Coastguard Worker; Function Attrs: norecurse nounwind uwtable 43*9880d681SAndroid Build Coastguard Workerdefine void @goo32(float %alpha, float* %a, float* readonly %b) #0 { 44*9880d681SAndroid Build Coastguard Workerentry: 45*9880d681SAndroid Build Coastguard Worker br label %for.body 46*9880d681SAndroid Build Coastguard Worker 47*9880d681SAndroid Build Coastguard Workerfor.body: ; preds = %entry, %for.body 48*9880d681SAndroid Build Coastguard Worker %indvars.iv = phi i64 [ 0, %entry ], [ %indvars.iv.next, %for.body ] 49*9880d681SAndroid Build Coastguard Worker %arrayidx = getelementptr inbounds float, float* %b, i64 %indvars.iv 50*9880d681SAndroid Build Coastguard Worker %0 = load float, float* %arrayidx, align 4 51*9880d681SAndroid Build Coastguard Worker %mul = fmul float %0, %alpha 52*9880d681SAndroid Build Coastguard Worker %arrayidx2 = getelementptr inbounds float, float* %a, i64 %indvars.iv 53*9880d681SAndroid Build Coastguard Worker %1 = load float, float* %arrayidx2, align 4 54*9880d681SAndroid Build Coastguard Worker %add = fadd float %1, %mul 55*9880d681SAndroid Build Coastguard Worker store float %add, float* %arrayidx2, align 4 56*9880d681SAndroid Build Coastguard Worker %2 = or i64 %indvars.iv, 1 57*9880d681SAndroid Build Coastguard Worker %arrayidx5 = getelementptr inbounds float, float* %b, i64 %2 58*9880d681SAndroid Build Coastguard Worker %3 = load float, float* %arrayidx5, align 4 59*9880d681SAndroid Build Coastguard Worker %mul6 = fmul float %3, %alpha 60*9880d681SAndroid Build Coastguard Worker %arrayidx9 = getelementptr inbounds float, float* %a, i64 %2 61*9880d681SAndroid Build Coastguard Worker %4 = load float, float* %arrayidx9, align 4 62*9880d681SAndroid Build Coastguard Worker %add10 = fadd float %4, %mul6 63*9880d681SAndroid Build Coastguard Worker store float %add10, float* %arrayidx9, align 4 64*9880d681SAndroid Build Coastguard Worker %5 = or i64 %indvars.iv, 2 65*9880d681SAndroid Build Coastguard Worker %arrayidx13 = getelementptr inbounds float, float* %b, i64 %5 66*9880d681SAndroid Build Coastguard Worker %6 = load float, float* %arrayidx13, align 4 67*9880d681SAndroid Build Coastguard Worker %mul14 = fmul float %6, %alpha 68*9880d681SAndroid Build Coastguard Worker %arrayidx17 = getelementptr inbounds float, float* %a, i64 %5 69*9880d681SAndroid Build Coastguard Worker %7 = load float, float* %arrayidx17, align 4 70*9880d681SAndroid Build Coastguard Worker %add18 = fadd float %7, %mul14 71*9880d681SAndroid Build Coastguard Worker store float %add18, float* %arrayidx17, align 4 72*9880d681SAndroid Build Coastguard Worker %8 = or i64 %indvars.iv, 3 73*9880d681SAndroid Build Coastguard Worker %arrayidx21 = getelementptr inbounds float, float* %b, i64 %8 74*9880d681SAndroid Build Coastguard Worker %9 = load float, float* %arrayidx21, align 4 75*9880d681SAndroid Build Coastguard Worker %mul22 = fmul float %9, %alpha 76*9880d681SAndroid Build Coastguard Worker %arrayidx25 = getelementptr inbounds float, float* %a, i64 %8 77*9880d681SAndroid Build Coastguard Worker %10 = load float, float* %arrayidx25, align 4 78*9880d681SAndroid Build Coastguard Worker %add26 = fadd float %10, %mul22 79*9880d681SAndroid Build Coastguard Worker store float %add26, float* %arrayidx25, align 4 80*9880d681SAndroid Build Coastguard Worker %11 = or i64 %indvars.iv, 4 81*9880d681SAndroid Build Coastguard Worker %arrayidx29 = getelementptr inbounds float, float* %b, i64 %11 82*9880d681SAndroid Build Coastguard Worker %12 = load float, float* %arrayidx29, align 4 83*9880d681SAndroid Build Coastguard Worker %mul30 = fmul float %12, %alpha 84*9880d681SAndroid Build Coastguard Worker %arrayidx33 = getelementptr inbounds float, float* %a, i64 %11 85*9880d681SAndroid Build Coastguard Worker %13 = load float, float* %arrayidx33, align 4 86*9880d681SAndroid Build Coastguard Worker %add34 = fadd float %13, %mul30 87*9880d681SAndroid Build Coastguard Worker store float %add34, float* %arrayidx33, align 4 88*9880d681SAndroid Build Coastguard Worker %14 = or i64 %indvars.iv, 5 89*9880d681SAndroid Build Coastguard Worker %arrayidx37 = getelementptr inbounds float, float* %b, i64 %14 90*9880d681SAndroid Build Coastguard Worker %15 = load float, float* %arrayidx37, align 4 91*9880d681SAndroid Build Coastguard Worker %mul38 = fmul float %15, %alpha 92*9880d681SAndroid Build Coastguard Worker %arrayidx41 = getelementptr inbounds float, float* %a, i64 %14 93*9880d681SAndroid Build Coastguard Worker %16 = load float, float* %arrayidx41, align 4 94*9880d681SAndroid Build Coastguard Worker %add42 = fadd float %16, %mul38 95*9880d681SAndroid Build Coastguard Worker store float %add42, float* %arrayidx41, align 4 96*9880d681SAndroid Build Coastguard Worker %17 = or i64 %indvars.iv, 6 97*9880d681SAndroid Build Coastguard Worker %arrayidx45 = getelementptr inbounds float, float* %b, i64 %17 98*9880d681SAndroid Build Coastguard Worker %18 = load float, float* %arrayidx45, align 4 99*9880d681SAndroid Build Coastguard Worker %mul46 = fmul float %18, %alpha 100*9880d681SAndroid Build Coastguard Worker %arrayidx49 = getelementptr inbounds float, float* %a, i64 %17 101*9880d681SAndroid Build Coastguard Worker %19 = load float, float* %arrayidx49, align 4 102*9880d681SAndroid Build Coastguard Worker %add50 = fadd float %19, %mul46 103*9880d681SAndroid Build Coastguard Worker store float %add50, float* %arrayidx49, align 4 104*9880d681SAndroid Build Coastguard Worker %20 = or i64 %indvars.iv, 7 105*9880d681SAndroid Build Coastguard Worker %arrayidx53 = getelementptr inbounds float, float* %b, i64 %20 106*9880d681SAndroid Build Coastguard Worker %21 = load float, float* %arrayidx53, align 4 107*9880d681SAndroid Build Coastguard Worker %mul54 = fmul float %21, %alpha 108*9880d681SAndroid Build Coastguard Worker %arrayidx57 = getelementptr inbounds float, float* %a, i64 %20 109*9880d681SAndroid Build Coastguard Worker %22 = load float, float* %arrayidx57, align 4 110*9880d681SAndroid Build Coastguard Worker %add58 = fadd float %22, %mul54 111*9880d681SAndroid Build Coastguard Worker store float %add58, float* %arrayidx57, align 4 112*9880d681SAndroid Build Coastguard Worker %23 = or i64 %indvars.iv, 8 113*9880d681SAndroid Build Coastguard Worker %arrayidx61 = getelementptr inbounds float, float* %b, i64 %23 114*9880d681SAndroid Build Coastguard Worker %24 = load float, float* %arrayidx61, align 4 115*9880d681SAndroid Build Coastguard Worker %mul62 = fmul float %24, %alpha 116*9880d681SAndroid Build Coastguard Worker %arrayidx65 = getelementptr inbounds float, float* %a, i64 %23 117*9880d681SAndroid Build Coastguard Worker %25 = load float, float* %arrayidx65, align 4 118*9880d681SAndroid Build Coastguard Worker %add66 = fadd float %25, %mul62 119*9880d681SAndroid Build Coastguard Worker store float %add66, float* %arrayidx65, align 4 120*9880d681SAndroid Build Coastguard Worker %26 = or i64 %indvars.iv, 9 121*9880d681SAndroid Build Coastguard Worker %arrayidx69 = getelementptr inbounds float, float* %b, i64 %26 122*9880d681SAndroid Build Coastguard Worker %27 = load float, float* %arrayidx69, align 4 123*9880d681SAndroid Build Coastguard Worker %mul70 = fmul float %27, %alpha 124*9880d681SAndroid Build Coastguard Worker %arrayidx73 = getelementptr inbounds float, float* %a, i64 %26 125*9880d681SAndroid Build Coastguard Worker %28 = load float, float* %arrayidx73, align 4 126*9880d681SAndroid Build Coastguard Worker %add74 = fadd float %28, %mul70 127*9880d681SAndroid Build Coastguard Worker store float %add74, float* %arrayidx73, align 4 128*9880d681SAndroid Build Coastguard Worker %29 = or i64 %indvars.iv, 10 129*9880d681SAndroid Build Coastguard Worker %arrayidx77 = getelementptr inbounds float, float* %b, i64 %29 130*9880d681SAndroid Build Coastguard Worker %30 = load float, float* %arrayidx77, align 4 131*9880d681SAndroid Build Coastguard Worker %mul78 = fmul float %30, %alpha 132*9880d681SAndroid Build Coastguard Worker %arrayidx81 = getelementptr inbounds float, float* %a, i64 %29 133*9880d681SAndroid Build Coastguard Worker %31 = load float, float* %arrayidx81, align 4 134*9880d681SAndroid Build Coastguard Worker %add82 = fadd float %31, %mul78 135*9880d681SAndroid Build Coastguard Worker store float %add82, float* %arrayidx81, align 4 136*9880d681SAndroid Build Coastguard Worker %32 = or i64 %indvars.iv, 11 137*9880d681SAndroid Build Coastguard Worker %arrayidx85 = getelementptr inbounds float, float* %b, i64 %32 138*9880d681SAndroid Build Coastguard Worker %33 = load float, float* %arrayidx85, align 4 139*9880d681SAndroid Build Coastguard Worker %mul86 = fmul float %33, %alpha 140*9880d681SAndroid Build Coastguard Worker %arrayidx89 = getelementptr inbounds float, float* %a, i64 %32 141*9880d681SAndroid Build Coastguard Worker %34 = load float, float* %arrayidx89, align 4 142*9880d681SAndroid Build Coastguard Worker %add90 = fadd float %34, %mul86 143*9880d681SAndroid Build Coastguard Worker store float %add90, float* %arrayidx89, align 4 144*9880d681SAndroid Build Coastguard Worker %35 = or i64 %indvars.iv, 12 145*9880d681SAndroid Build Coastguard Worker %arrayidx93 = getelementptr inbounds float, float* %b, i64 %35 146*9880d681SAndroid Build Coastguard Worker %36 = load float, float* %arrayidx93, align 4 147*9880d681SAndroid Build Coastguard Worker %mul94 = fmul float %36, %alpha 148*9880d681SAndroid Build Coastguard Worker %arrayidx97 = getelementptr inbounds float, float* %a, i64 %35 149*9880d681SAndroid Build Coastguard Worker %37 = load float, float* %arrayidx97, align 4 150*9880d681SAndroid Build Coastguard Worker %add98 = fadd float %37, %mul94 151*9880d681SAndroid Build Coastguard Worker store float %add98, float* %arrayidx97, align 4 152*9880d681SAndroid Build Coastguard Worker %38 = or i64 %indvars.iv, 13 153*9880d681SAndroid Build Coastguard Worker %arrayidx101 = getelementptr inbounds float, float* %b, i64 %38 154*9880d681SAndroid Build Coastguard Worker %39 = load float, float* %arrayidx101, align 4 155*9880d681SAndroid Build Coastguard Worker %mul102 = fmul float %39, %alpha 156*9880d681SAndroid Build Coastguard Worker %arrayidx105 = getelementptr inbounds float, float* %a, i64 %38 157*9880d681SAndroid Build Coastguard Worker %40 = load float, float* %arrayidx105, align 4 158*9880d681SAndroid Build Coastguard Worker %add106 = fadd float %40, %mul102 159*9880d681SAndroid Build Coastguard Worker store float %add106, float* %arrayidx105, align 4 160*9880d681SAndroid Build Coastguard Worker %41 = or i64 %indvars.iv, 14 161*9880d681SAndroid Build Coastguard Worker %arrayidx109 = getelementptr inbounds float, float* %b, i64 %41 162*9880d681SAndroid Build Coastguard Worker %42 = load float, float* %arrayidx109, align 4 163*9880d681SAndroid Build Coastguard Worker %mul110 = fmul float %42, %alpha 164*9880d681SAndroid Build Coastguard Worker %arrayidx113 = getelementptr inbounds float, float* %a, i64 %41 165*9880d681SAndroid Build Coastguard Worker %43 = load float, float* %arrayidx113, align 4 166*9880d681SAndroid Build Coastguard Worker %add114 = fadd float %43, %mul110 167*9880d681SAndroid Build Coastguard Worker store float %add114, float* %arrayidx113, align 4 168*9880d681SAndroid Build Coastguard Worker %44 = or i64 %indvars.iv, 15 169*9880d681SAndroid Build Coastguard Worker %arrayidx117 = getelementptr inbounds float, float* %b, i64 %44 170*9880d681SAndroid Build Coastguard Worker %45 = load float, float* %arrayidx117, align 4 171*9880d681SAndroid Build Coastguard Worker %mul118 = fmul float %45, %alpha 172*9880d681SAndroid Build Coastguard Worker %arrayidx121 = getelementptr inbounds float, float* %a, i64 %44 173*9880d681SAndroid Build Coastguard Worker %46 = load float, float* %arrayidx121, align 4 174*9880d681SAndroid Build Coastguard Worker %add122 = fadd float %46, %mul118 175*9880d681SAndroid Build Coastguard Worker store float %add122, float* %arrayidx121, align 4 176*9880d681SAndroid Build Coastguard Worker %47 = or i64 %indvars.iv, 16 177*9880d681SAndroid Build Coastguard Worker %arrayidx125 = getelementptr inbounds float, float* %b, i64 %47 178*9880d681SAndroid Build Coastguard Worker %48 = load float, float* %arrayidx125, align 4 179*9880d681SAndroid Build Coastguard Worker %mul126 = fmul float %48, %alpha 180*9880d681SAndroid Build Coastguard Worker %arrayidx129 = getelementptr inbounds float, float* %a, i64 %47 181*9880d681SAndroid Build Coastguard Worker %49 = load float, float* %arrayidx129, align 4 182*9880d681SAndroid Build Coastguard Worker %add130 = fadd float %49, %mul126 183*9880d681SAndroid Build Coastguard Worker store float %add130, float* %arrayidx129, align 4 184*9880d681SAndroid Build Coastguard Worker %50 = or i64 %indvars.iv, 17 185*9880d681SAndroid Build Coastguard Worker %arrayidx133 = getelementptr inbounds float, float* %b, i64 %50 186*9880d681SAndroid Build Coastguard Worker %51 = load float, float* %arrayidx133, align 4 187*9880d681SAndroid Build Coastguard Worker %mul134 = fmul float %51, %alpha 188*9880d681SAndroid Build Coastguard Worker %arrayidx137 = getelementptr inbounds float, float* %a, i64 %50 189*9880d681SAndroid Build Coastguard Worker %52 = load float, float* %arrayidx137, align 4 190*9880d681SAndroid Build Coastguard Worker %add138 = fadd float %52, %mul134 191*9880d681SAndroid Build Coastguard Worker store float %add138, float* %arrayidx137, align 4 192*9880d681SAndroid Build Coastguard Worker %53 = or i64 %indvars.iv, 18 193*9880d681SAndroid Build Coastguard Worker %arrayidx141 = getelementptr inbounds float, float* %b, i64 %53 194*9880d681SAndroid Build Coastguard Worker %54 = load float, float* %arrayidx141, align 4 195*9880d681SAndroid Build Coastguard Worker %mul142 = fmul float %54, %alpha 196*9880d681SAndroid Build Coastguard Worker %arrayidx145 = getelementptr inbounds float, float* %a, i64 %53 197*9880d681SAndroid Build Coastguard Worker %55 = load float, float* %arrayidx145, align 4 198*9880d681SAndroid Build Coastguard Worker %add146 = fadd float %55, %mul142 199*9880d681SAndroid Build Coastguard Worker store float %add146, float* %arrayidx145, align 4 200*9880d681SAndroid Build Coastguard Worker %56 = or i64 %indvars.iv, 19 201*9880d681SAndroid Build Coastguard Worker %arrayidx149 = getelementptr inbounds float, float* %b, i64 %56 202*9880d681SAndroid Build Coastguard Worker %57 = load float, float* %arrayidx149, align 4 203*9880d681SAndroid Build Coastguard Worker %mul150 = fmul float %57, %alpha 204*9880d681SAndroid Build Coastguard Worker %arrayidx153 = getelementptr inbounds float, float* %a, i64 %56 205*9880d681SAndroid Build Coastguard Worker %58 = load float, float* %arrayidx153, align 4 206*9880d681SAndroid Build Coastguard Worker %add154 = fadd float %58, %mul150 207*9880d681SAndroid Build Coastguard Worker store float %add154, float* %arrayidx153, align 4 208*9880d681SAndroid Build Coastguard Worker %59 = or i64 %indvars.iv, 20 209*9880d681SAndroid Build Coastguard Worker %arrayidx157 = getelementptr inbounds float, float* %b, i64 %59 210*9880d681SAndroid Build Coastguard Worker %60 = load float, float* %arrayidx157, align 4 211*9880d681SAndroid Build Coastguard Worker %mul158 = fmul float %60, %alpha 212*9880d681SAndroid Build Coastguard Worker %arrayidx161 = getelementptr inbounds float, float* %a, i64 %59 213*9880d681SAndroid Build Coastguard Worker %61 = load float, float* %arrayidx161, align 4 214*9880d681SAndroid Build Coastguard Worker %add162 = fadd float %61, %mul158 215*9880d681SAndroid Build Coastguard Worker store float %add162, float* %arrayidx161, align 4 216*9880d681SAndroid Build Coastguard Worker %62 = or i64 %indvars.iv, 21 217*9880d681SAndroid Build Coastguard Worker %arrayidx165 = getelementptr inbounds float, float* %b, i64 %62 218*9880d681SAndroid Build Coastguard Worker %63 = load float, float* %arrayidx165, align 4 219*9880d681SAndroid Build Coastguard Worker %mul166 = fmul float %63, %alpha 220*9880d681SAndroid Build Coastguard Worker %arrayidx169 = getelementptr inbounds float, float* %a, i64 %62 221*9880d681SAndroid Build Coastguard Worker %64 = load float, float* %arrayidx169, align 4 222*9880d681SAndroid Build Coastguard Worker %add170 = fadd float %64, %mul166 223*9880d681SAndroid Build Coastguard Worker store float %add170, float* %arrayidx169, align 4 224*9880d681SAndroid Build Coastguard Worker %65 = or i64 %indvars.iv, 22 225*9880d681SAndroid Build Coastguard Worker %arrayidx173 = getelementptr inbounds float, float* %b, i64 %65 226*9880d681SAndroid Build Coastguard Worker %66 = load float, float* %arrayidx173, align 4 227*9880d681SAndroid Build Coastguard Worker %mul174 = fmul float %66, %alpha 228*9880d681SAndroid Build Coastguard Worker %arrayidx177 = getelementptr inbounds float, float* %a, i64 %65 229*9880d681SAndroid Build Coastguard Worker %67 = load float, float* %arrayidx177, align 4 230*9880d681SAndroid Build Coastguard Worker %add178 = fadd float %67, %mul174 231*9880d681SAndroid Build Coastguard Worker store float %add178, float* %arrayidx177, align 4 232*9880d681SAndroid Build Coastguard Worker %68 = or i64 %indvars.iv, 23 233*9880d681SAndroid Build Coastguard Worker %arrayidx181 = getelementptr inbounds float, float* %b, i64 %68 234*9880d681SAndroid Build Coastguard Worker %69 = load float, float* %arrayidx181, align 4 235*9880d681SAndroid Build Coastguard Worker %mul182 = fmul float %69, %alpha 236*9880d681SAndroid Build Coastguard Worker %arrayidx185 = getelementptr inbounds float, float* %a, i64 %68 237*9880d681SAndroid Build Coastguard Worker %70 = load float, float* %arrayidx185, align 4 238*9880d681SAndroid Build Coastguard Worker %add186 = fadd float %70, %mul182 239*9880d681SAndroid Build Coastguard Worker store float %add186, float* %arrayidx185, align 4 240*9880d681SAndroid Build Coastguard Worker %71 = or i64 %indvars.iv, 24 241*9880d681SAndroid Build Coastguard Worker %arrayidx189 = getelementptr inbounds float, float* %b, i64 %71 242*9880d681SAndroid Build Coastguard Worker %72 = load float, float* %arrayidx189, align 4 243*9880d681SAndroid Build Coastguard Worker %mul190 = fmul float %72, %alpha 244*9880d681SAndroid Build Coastguard Worker %arrayidx193 = getelementptr inbounds float, float* %a, i64 %71 245*9880d681SAndroid Build Coastguard Worker %73 = load float, float* %arrayidx193, align 4 246*9880d681SAndroid Build Coastguard Worker %add194 = fadd float %73, %mul190 247*9880d681SAndroid Build Coastguard Worker store float %add194, float* %arrayidx193, align 4 248*9880d681SAndroid Build Coastguard Worker %74 = or i64 %indvars.iv, 25 249*9880d681SAndroid Build Coastguard Worker %arrayidx197 = getelementptr inbounds float, float* %b, i64 %74 250*9880d681SAndroid Build Coastguard Worker %75 = load float, float* %arrayidx197, align 4 251*9880d681SAndroid Build Coastguard Worker %mul198 = fmul float %75, %alpha 252*9880d681SAndroid Build Coastguard Worker %arrayidx201 = getelementptr inbounds float, float* %a, i64 %74 253*9880d681SAndroid Build Coastguard Worker %76 = load float, float* %arrayidx201, align 4 254*9880d681SAndroid Build Coastguard Worker %add202 = fadd float %76, %mul198 255*9880d681SAndroid Build Coastguard Worker store float %add202, float* %arrayidx201, align 4 256*9880d681SAndroid Build Coastguard Worker %77 = or i64 %indvars.iv, 26 257*9880d681SAndroid Build Coastguard Worker %arrayidx205 = getelementptr inbounds float, float* %b, i64 %77 258*9880d681SAndroid Build Coastguard Worker %78 = load float, float* %arrayidx205, align 4 259*9880d681SAndroid Build Coastguard Worker %mul206 = fmul float %78, %alpha 260*9880d681SAndroid Build Coastguard Worker %arrayidx209 = getelementptr inbounds float, float* %a, i64 %77 261*9880d681SAndroid Build Coastguard Worker %79 = load float, float* %arrayidx209, align 4 262*9880d681SAndroid Build Coastguard Worker %add210 = fadd float %79, %mul206 263*9880d681SAndroid Build Coastguard Worker store float %add210, float* %arrayidx209, align 4 264*9880d681SAndroid Build Coastguard Worker %80 = or i64 %indvars.iv, 27 265*9880d681SAndroid Build Coastguard Worker %arrayidx213 = getelementptr inbounds float, float* %b, i64 %80 266*9880d681SAndroid Build Coastguard Worker %81 = load float, float* %arrayidx213, align 4 267*9880d681SAndroid Build Coastguard Worker %mul214 = fmul float %81, %alpha 268*9880d681SAndroid Build Coastguard Worker %arrayidx217 = getelementptr inbounds float, float* %a, i64 %80 269*9880d681SAndroid Build Coastguard Worker %82 = load float, float* %arrayidx217, align 4 270*9880d681SAndroid Build Coastguard Worker %add218 = fadd float %82, %mul214 271*9880d681SAndroid Build Coastguard Worker store float %add218, float* %arrayidx217, align 4 272*9880d681SAndroid Build Coastguard Worker %83 = or i64 %indvars.iv, 28 273*9880d681SAndroid Build Coastguard Worker %arrayidx221 = getelementptr inbounds float, float* %b, i64 %83 274*9880d681SAndroid Build Coastguard Worker %84 = load float, float* %arrayidx221, align 4 275*9880d681SAndroid Build Coastguard Worker %mul222 = fmul float %84, %alpha 276*9880d681SAndroid Build Coastguard Worker %arrayidx225 = getelementptr inbounds float, float* %a, i64 %83 277*9880d681SAndroid Build Coastguard Worker %85 = load float, float* %arrayidx225, align 4 278*9880d681SAndroid Build Coastguard Worker %add226 = fadd float %85, %mul222 279*9880d681SAndroid Build Coastguard Worker store float %add226, float* %arrayidx225, align 4 280*9880d681SAndroid Build Coastguard Worker %86 = or i64 %indvars.iv, 29 281*9880d681SAndroid Build Coastguard Worker %arrayidx229 = getelementptr inbounds float, float* %b, i64 %86 282*9880d681SAndroid Build Coastguard Worker %87 = load float, float* %arrayidx229, align 4 283*9880d681SAndroid Build Coastguard Worker %mul230 = fmul float %87, %alpha 284*9880d681SAndroid Build Coastguard Worker %arrayidx233 = getelementptr inbounds float, float* %a, i64 %86 285*9880d681SAndroid Build Coastguard Worker %88 = load float, float* %arrayidx233, align 4 286*9880d681SAndroid Build Coastguard Worker %add234 = fadd float %88, %mul230 287*9880d681SAndroid Build Coastguard Worker store float %add234, float* %arrayidx233, align 4 288*9880d681SAndroid Build Coastguard Worker %89 = or i64 %indvars.iv, 30 289*9880d681SAndroid Build Coastguard Worker %arrayidx237 = getelementptr inbounds float, float* %b, i64 %89 290*9880d681SAndroid Build Coastguard Worker %90 = load float, float* %arrayidx237, align 4 291*9880d681SAndroid Build Coastguard Worker %mul238 = fmul float %90, %alpha 292*9880d681SAndroid Build Coastguard Worker %arrayidx241 = getelementptr inbounds float, float* %a, i64 %89 293*9880d681SAndroid Build Coastguard Worker %91 = load float, float* %arrayidx241, align 4 294*9880d681SAndroid Build Coastguard Worker %add242 = fadd float %91, %mul238 295*9880d681SAndroid Build Coastguard Worker store float %add242, float* %arrayidx241, align 4 296*9880d681SAndroid Build Coastguard Worker %92 = or i64 %indvars.iv, 31 297*9880d681SAndroid Build Coastguard Worker %arrayidx245 = getelementptr inbounds float, float* %b, i64 %92 298*9880d681SAndroid Build Coastguard Worker %93 = load float, float* %arrayidx245, align 4 299*9880d681SAndroid Build Coastguard Worker %mul246 = fmul float %93, %alpha 300*9880d681SAndroid Build Coastguard Worker %arrayidx249 = getelementptr inbounds float, float* %a, i64 %92 301*9880d681SAndroid Build Coastguard Worker %94 = load float, float* %arrayidx249, align 4 302*9880d681SAndroid Build Coastguard Worker %add250 = fadd float %94, %mul246 303*9880d681SAndroid Build Coastguard Worker store float %add250, float* %arrayidx249, align 4 304*9880d681SAndroid Build Coastguard Worker %indvars.iv.next = add nuw nsw i64 %indvars.iv, 32 305*9880d681SAndroid Build Coastguard Worker %cmp = icmp slt i64 %indvars.iv.next, 3200 306*9880d681SAndroid Build Coastguard Worker br i1 %cmp, label %for.body, label %for.end 307*9880d681SAndroid Build Coastguard Worker 308*9880d681SAndroid Build Coastguard Worker; CHECK-LABEL: @goo32 309*9880d681SAndroid Build Coastguard Worker 310*9880d681SAndroid Build Coastguard Worker; CHECK: for.body: 311*9880d681SAndroid Build Coastguard Worker; CHECK: %indvar = phi i64 [ %indvar.next, %for.body ], [ 0, %entry ] 312*9880d681SAndroid Build Coastguard Worker; CHECK: %arrayidx = getelementptr inbounds float, float* %b, i64 %indvar 313*9880d681SAndroid Build Coastguard Worker; CHECK: %0 = load float, float* %arrayidx, align 4 314*9880d681SAndroid Build Coastguard Worker; CHECK: %mul = fmul float %0, %alpha 315*9880d681SAndroid Build Coastguard Worker; CHECK: %arrayidx2 = getelementptr inbounds float, float* %a, i64 %indvar 316*9880d681SAndroid Build Coastguard Worker; CHECK: %1 = load float, float* %arrayidx2, align 4 317*9880d681SAndroid Build Coastguard Worker; CHECK: %add = fadd float %1, %mul 318*9880d681SAndroid Build Coastguard Worker; CHECK: store float %add, float* %arrayidx2, align 4 319*9880d681SAndroid Build Coastguard Worker; CHECK: %indvar.next = add i64 %indvar, 1 320*9880d681SAndroid Build Coastguard Worker; CHECK: %exitcond = icmp eq i64 %indvar, 3199 321*9880d681SAndroid Build Coastguard Worker; CHECK: br i1 %exitcond, label %for.end, label %for.body 322*9880d681SAndroid Build Coastguard Worker; CHECK: ret 323*9880d681SAndroid Build Coastguard Worker 324*9880d681SAndroid Build Coastguard Workerfor.end: ; preds = %for.body 325*9880d681SAndroid Build Coastguard Worker ret void 326*9880d681SAndroid Build Coastguard Worker} 327*9880d681SAndroid Build Coastguard Worker 328*9880d681SAndroid Build Coastguard Workerattributes #0 = { nounwind uwtable } 329