xref: /aosp_15_r20/external/llvm/test/CodeGen/PowerPC/2011-12-05-NoSpillDupCR.ll (revision 9880d6810fe72a1726cb53787c6711e909410d58)
1*9880d681SAndroid Build Coastguard Worker; RUN: llc < %s -mtriple=powerpc-apple-darwin -mcpu=g4 -disable-ppc-ilp-pref | FileCheck %s
2*9880d681SAndroid Build Coastguard Worker; RUN: llc < %s -mtriple=powerpc64-unknown-linux-gnu -mcpu=g4 -disable-ppc-ilp-pref | FileCheck %s
3*9880d681SAndroid Build Coastguard Worker
4*9880d681SAndroid Build Coastguard Worker; ModuleID = 'tsc.c'
5*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-v128:128:128-n32:64"
6*9880d681SAndroid Build Coastguard Workertarget triple = "powerpc64-unknown-linux-gnu"
7*9880d681SAndroid Build Coastguard Worker
8*9880d681SAndroid Build Coastguard Worker@a = common global [32000 x float] zeroinitializer, align 16
9*9880d681SAndroid Build Coastguard Worker@b = common global [32000 x float] zeroinitializer, align 16
10*9880d681SAndroid Build Coastguard Worker@c = common global [32000 x float] zeroinitializer, align 16
11*9880d681SAndroid Build Coastguard Worker@d = common global [32000 x float] zeroinitializer, align 16
12*9880d681SAndroid Build Coastguard Worker@e = common global [32000 x float] zeroinitializer, align 16
13*9880d681SAndroid Build Coastguard Worker@aa = common global [256 x [256 x float]] zeroinitializer, align 16
14*9880d681SAndroid Build Coastguard Worker@bb = common global [256 x [256 x float]] zeroinitializer, align 16
15*9880d681SAndroid Build Coastguard Worker@cc = common global [256 x [256 x float]] zeroinitializer, align 16
16*9880d681SAndroid Build Coastguard Worker
17*9880d681SAndroid Build Coastguard Worker@.str11 = private unnamed_addr constant [6 x i8] c"s122 \00", align 1
18*9880d681SAndroid Build Coastguard Worker@.str152 = private unnamed_addr constant [14 x i8] c"S122\09 %.2f \09\09\00", align 1
19*9880d681SAndroid Build Coastguard Worker
20*9880d681SAndroid Build Coastguard Workerdeclare i32 @printf(i8* nocapture, ...) nounwind
21*9880d681SAndroid Build Coastguard Workerdeclare i32 @init(i8* %name) nounwind
22*9880d681SAndroid Build Coastguard Workerdeclare i64 @clock() nounwind
23*9880d681SAndroid Build Coastguard Workerdeclare i32 @dummy(float*, float*, float*, float*, float*, [256 x float]*, [256 x float]*, [256 x float]*, float)
24*9880d681SAndroid Build Coastguard Workerdeclare void @check(i32 %name) nounwind
25*9880d681SAndroid Build Coastguard Worker
26*9880d681SAndroid Build Coastguard Worker; CHECK: mfcr
27*9880d681SAndroid Build Coastguard Worker; CHECK: mtcr
28*9880d681SAndroid Build Coastguard Worker
29*9880d681SAndroid Build Coastguard Workerdefine i32 @s122(i32 %n1, i32 %n3) nounwind {
30*9880d681SAndroid Build Coastguard Workerentry:
31*9880d681SAndroid Build Coastguard Worker  %call = tail call i32 @init(i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str11, i64 0, i64 0))
32*9880d681SAndroid Build Coastguard Worker  %call1 = tail call i64 @clock() nounwind
33*9880d681SAndroid Build Coastguard Worker  %sub = add nsw i32 %n1, -1
34*9880d681SAndroid Build Coastguard Worker  %cmp316 = icmp slt i32 %sub, 32000
35*9880d681SAndroid Build Coastguard Worker  br i1 %cmp316, label %entry.split.us, label %for.end.7
36*9880d681SAndroid Build Coastguard Worker
37*9880d681SAndroid Build Coastguard Workerentry.split.us:                                   ; preds = %entry
38*9880d681SAndroid Build Coastguard Worker  %0 = sext i32 %sub to i64
39*9880d681SAndroid Build Coastguard Worker  %1 = sext i32 %n3 to i64
40*9880d681SAndroid Build Coastguard Worker  br label %for.body4.lr.ph.us
41*9880d681SAndroid Build Coastguard Worker
42*9880d681SAndroid Build Coastguard Workerfor.body4.us:                                     ; preds = %for.body4.lr.ph.us, %for.body4.us
43*9880d681SAndroid Build Coastguard Worker  %indvars.iv20 = phi i64 [ 0, %for.body4.lr.ph.us ], [ %indvars.iv.next21, %for.body4.us ]
44*9880d681SAndroid Build Coastguard Worker  %indvars.iv = phi i64 [ %0, %for.body4.lr.ph.us ], [ %indvars.iv.next, %for.body4.us ]
45*9880d681SAndroid Build Coastguard Worker  %indvars.iv.next21 = add i64 %indvars.iv20, 1
46*9880d681SAndroid Build Coastguard Worker  %sub5.us = sub i64 31999, %indvars.iv20
47*9880d681SAndroid Build Coastguard Worker  %sext = shl i64 %sub5.us, 32
48*9880d681SAndroid Build Coastguard Worker  %idxprom.us = ashr exact i64 %sext, 32
49*9880d681SAndroid Build Coastguard Worker  %arrayidx.us = getelementptr inbounds [32000 x float], [32000 x float]* @b, i64 0, i64 %idxprom.us
50*9880d681SAndroid Build Coastguard Worker  %2 = load float, float* %arrayidx.us, align 4
51*9880d681SAndroid Build Coastguard Worker  %arrayidx7.us = getelementptr inbounds [32000 x float], [32000 x float]* @a, i64 0, i64 %indvars.iv
52*9880d681SAndroid Build Coastguard Worker  %3 = load float, float* %arrayidx7.us, align 4
53*9880d681SAndroid Build Coastguard Worker  %add8.us = fadd float %3, %2
54*9880d681SAndroid Build Coastguard Worker  store float %add8.us, float* %arrayidx7.us, align 4
55*9880d681SAndroid Build Coastguard Worker  %indvars.iv.next = add i64 %indvars.iv, %1
56*9880d681SAndroid Build Coastguard Worker  %4 = trunc i64 %indvars.iv.next to i32
57*9880d681SAndroid Build Coastguard Worker  %cmp3.us = icmp slt i32 %4, 32000
58*9880d681SAndroid Build Coastguard Worker  br i1 %cmp3.us, label %for.body4.us, label %for.body4.lr.ph.us.1
59*9880d681SAndroid Build Coastguard Worker
60*9880d681SAndroid Build Coastguard Workerfor.body4.lr.ph.us:                               ; preds = %entry.split.us, %for.end.us.4
61*9880d681SAndroid Build Coastguard Worker  %nl.019.us = phi i32 [ 0, %entry.split.us ], [ %inc.us.4, %for.end.us.4 ]
62*9880d681SAndroid Build Coastguard Worker  br label %for.body4.us
63*9880d681SAndroid Build Coastguard Worker
64*9880d681SAndroid Build Coastguard Workerfor.end12:                                        ; preds = %for.end.7, %for.end.us.4
65*9880d681SAndroid Build Coastguard Worker  %call13 = tail call i64 @clock() nounwind
66*9880d681SAndroid Build Coastguard Worker  %sub14 = sub nsw i64 %call13, %call1
67*9880d681SAndroid Build Coastguard Worker  %conv = sitofp i64 %sub14 to double
68*9880d681SAndroid Build Coastguard Worker  %div = fdiv double %conv, 1.000000e+06
69*9880d681SAndroid Build Coastguard Worker  %call15 = tail call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([14 x i8], [14 x i8]* @.str152, i64 0, i64 0), double %div) nounwind
70*9880d681SAndroid Build Coastguard Worker  tail call void @check(i32 1)
71*9880d681SAndroid Build Coastguard Worker  ret i32 0
72*9880d681SAndroid Build Coastguard Worker
73*9880d681SAndroid Build Coastguard Workerfor.body4.lr.ph.us.1:                             ; preds = %for.body4.us
74*9880d681SAndroid Build Coastguard Worker  %call10.us = tail call i32 @dummy(float* getelementptr inbounds ([32000 x float], [32000 x float]* @a, i64 0, i64 0), float* getelementptr inbounds ([32000 x float], [32000 x float]* @b, i64 0, i64 0), float* getelementptr inbounds ([32000 x float], [32000 x float]* @c, i64 0, i64 0), float* getelementptr inbounds ([32000 x float], [32000 x float]* @d, i64 0, i64 0), float* getelementptr inbounds ([32000 x float], [32000 x float]* @e, i64 0, i64 0), [256 x float]* getelementptr inbounds ([256 x [256 x float]], [256 x [256 x float]]* @aa, i64 0, i64 0), [256 x float]* getelementptr inbounds ([256 x [256 x float]], [256 x [256 x float]]* @bb, i64 0, i64 0), [256 x float]* getelementptr inbounds ([256 x [256 x float]], [256 x [256 x float]]* @cc, i64 0, i64 0), float 0.000000e+00) nounwind
75*9880d681SAndroid Build Coastguard Worker  br label %for.body4.us.1
76*9880d681SAndroid Build Coastguard Worker
77*9880d681SAndroid Build Coastguard Workerfor.body4.us.1:                                   ; preds = %for.body4.us.1, %for.body4.lr.ph.us.1
78*9880d681SAndroid Build Coastguard Worker  %indvars.iv20.1 = phi i64 [ 0, %for.body4.lr.ph.us.1 ], [ %indvars.iv.next21.1, %for.body4.us.1 ]
79*9880d681SAndroid Build Coastguard Worker  %indvars.iv.1 = phi i64 [ %0, %for.body4.lr.ph.us.1 ], [ %indvars.iv.next.1, %for.body4.us.1 ]
80*9880d681SAndroid Build Coastguard Worker  %indvars.iv.next21.1 = add i64 %indvars.iv20.1, 1
81*9880d681SAndroid Build Coastguard Worker  %sub5.us.1 = sub i64 31999, %indvars.iv20.1
82*9880d681SAndroid Build Coastguard Worker  %sext23 = shl i64 %sub5.us.1, 32
83*9880d681SAndroid Build Coastguard Worker  %idxprom.us.1 = ashr exact i64 %sext23, 32
84*9880d681SAndroid Build Coastguard Worker  %arrayidx.us.1 = getelementptr inbounds [32000 x float], [32000 x float]* @b, i64 0, i64 %idxprom.us.1
85*9880d681SAndroid Build Coastguard Worker  %5 = load float, float* %arrayidx.us.1, align 4
86*9880d681SAndroid Build Coastguard Worker  %arrayidx7.us.1 = getelementptr inbounds [32000 x float], [32000 x float]* @a, i64 0, i64 %indvars.iv.1
87*9880d681SAndroid Build Coastguard Worker  %6 = load float, float* %arrayidx7.us.1, align 4
88*9880d681SAndroid Build Coastguard Worker  %add8.us.1 = fadd float %6, %5
89*9880d681SAndroid Build Coastguard Worker  store float %add8.us.1, float* %arrayidx7.us.1, align 4
90*9880d681SAndroid Build Coastguard Worker  %indvars.iv.next.1 = add i64 %indvars.iv.1, %1
91*9880d681SAndroid Build Coastguard Worker  %7 = trunc i64 %indvars.iv.next.1 to i32
92*9880d681SAndroid Build Coastguard Worker  %cmp3.us.1 = icmp slt i32 %7, 32000
93*9880d681SAndroid Build Coastguard Worker  br i1 %cmp3.us.1, label %for.body4.us.1, label %for.body4.lr.ph.us.2
94*9880d681SAndroid Build Coastguard Worker
95*9880d681SAndroid Build Coastguard Workerfor.body4.lr.ph.us.2:                             ; preds = %for.body4.us.1
96*9880d681SAndroid Build Coastguard Worker  %call10.us.1 = tail call i32 @dummy(float* getelementptr inbounds ([32000 x float], [32000 x float]* @a, i64 0, i64 0), float* getelementptr inbounds ([32000 x float], [32000 x float]* @b, i64 0, i64 0), float* getelementptr inbounds ([32000 x float], [32000 x float]* @c, i64 0, i64 0), float* getelementptr inbounds ([32000 x float], [32000 x float]* @d, i64 0, i64 0), float* getelementptr inbounds ([32000 x float], [32000 x float]* @e, i64 0, i64 0), [256 x float]* getelementptr inbounds ([256 x [256 x float]], [256 x [256 x float]]* @aa, i64 0, i64 0), [256 x float]* getelementptr inbounds ([256 x [256 x float]], [256 x [256 x float]]* @bb, i64 0, i64 0), [256 x float]* getelementptr inbounds ([256 x [256 x float]], [256 x [256 x float]]* @cc, i64 0, i64 0), float 0.000000e+00) nounwind
97*9880d681SAndroid Build Coastguard Worker  br label %for.body4.us.2
98*9880d681SAndroid Build Coastguard Worker
99*9880d681SAndroid Build Coastguard Workerfor.body4.us.2:                                   ; preds = %for.body4.us.2, %for.body4.lr.ph.us.2
100*9880d681SAndroid Build Coastguard Worker  %indvars.iv20.2 = phi i64 [ 0, %for.body4.lr.ph.us.2 ], [ %indvars.iv.next21.2, %for.body4.us.2 ]
101*9880d681SAndroid Build Coastguard Worker  %indvars.iv.2 = phi i64 [ %0, %for.body4.lr.ph.us.2 ], [ %indvars.iv.next.2, %for.body4.us.2 ]
102*9880d681SAndroid Build Coastguard Worker  %indvars.iv.next21.2 = add i64 %indvars.iv20.2, 1
103*9880d681SAndroid Build Coastguard Worker  %sub5.us.2 = sub i64 31999, %indvars.iv20.2
104*9880d681SAndroid Build Coastguard Worker  %sext24 = shl i64 %sub5.us.2, 32
105*9880d681SAndroid Build Coastguard Worker  %idxprom.us.2 = ashr exact i64 %sext24, 32
106*9880d681SAndroid Build Coastguard Worker  %arrayidx.us.2 = getelementptr inbounds [32000 x float], [32000 x float]* @b, i64 0, i64 %idxprom.us.2
107*9880d681SAndroid Build Coastguard Worker  %8 = load float, float* %arrayidx.us.2, align 4
108*9880d681SAndroid Build Coastguard Worker  %arrayidx7.us.2 = getelementptr inbounds [32000 x float], [32000 x float]* @a, i64 0, i64 %indvars.iv.2
109*9880d681SAndroid Build Coastguard Worker  %9 = load float, float* %arrayidx7.us.2, align 4
110*9880d681SAndroid Build Coastguard Worker  %add8.us.2 = fadd float %9, %8
111*9880d681SAndroid Build Coastguard Worker  store float %add8.us.2, float* %arrayidx7.us.2, align 4
112*9880d681SAndroid Build Coastguard Worker  %indvars.iv.next.2 = add i64 %indvars.iv.2, %1
113*9880d681SAndroid Build Coastguard Worker  %10 = trunc i64 %indvars.iv.next.2 to i32
114*9880d681SAndroid Build Coastguard Worker  %cmp3.us.2 = icmp slt i32 %10, 32000
115*9880d681SAndroid Build Coastguard Worker  br i1 %cmp3.us.2, label %for.body4.us.2, label %for.body4.lr.ph.us.3
116*9880d681SAndroid Build Coastguard Worker
117*9880d681SAndroid Build Coastguard Workerfor.body4.lr.ph.us.3:                             ; preds = %for.body4.us.2
118*9880d681SAndroid Build Coastguard Worker  %call10.us.2 = tail call i32 @dummy(float* getelementptr inbounds ([32000 x float], [32000 x float]* @a, i64 0, i64 0), float* getelementptr inbounds ([32000 x float], [32000 x float]* @b, i64 0, i64 0), float* getelementptr inbounds ([32000 x float], [32000 x float]* @c, i64 0, i64 0), float* getelementptr inbounds ([32000 x float], [32000 x float]* @d, i64 0, i64 0), float* getelementptr inbounds ([32000 x float], [32000 x float]* @e, i64 0, i64 0), [256 x float]* getelementptr inbounds ([256 x [256 x float]], [256 x [256 x float]]* @aa, i64 0, i64 0), [256 x float]* getelementptr inbounds ([256 x [256 x float]], [256 x [256 x float]]* @bb, i64 0, i64 0), [256 x float]* getelementptr inbounds ([256 x [256 x float]], [256 x [256 x float]]* @cc, i64 0, i64 0), float 0.000000e+00) nounwind
119*9880d681SAndroid Build Coastguard Worker  br label %for.body4.us.3
120*9880d681SAndroid Build Coastguard Worker
121*9880d681SAndroid Build Coastguard Workerfor.body4.us.3:                                   ; preds = %for.body4.us.3, %for.body4.lr.ph.us.3
122*9880d681SAndroid Build Coastguard Worker  %indvars.iv20.3 = phi i64 [ 0, %for.body4.lr.ph.us.3 ], [ %indvars.iv.next21.3, %for.body4.us.3 ]
123*9880d681SAndroid Build Coastguard Worker  %indvars.iv.3 = phi i64 [ %0, %for.body4.lr.ph.us.3 ], [ %indvars.iv.next.3, %for.body4.us.3 ]
124*9880d681SAndroid Build Coastguard Worker  %indvars.iv.next21.3 = add i64 %indvars.iv20.3, 1
125*9880d681SAndroid Build Coastguard Worker  %sub5.us.3 = sub i64 31999, %indvars.iv20.3
126*9880d681SAndroid Build Coastguard Worker  %sext25 = shl i64 %sub5.us.3, 32
127*9880d681SAndroid Build Coastguard Worker  %idxprom.us.3 = ashr exact i64 %sext25, 32
128*9880d681SAndroid Build Coastguard Worker  %arrayidx.us.3 = getelementptr inbounds [32000 x float], [32000 x float]* @b, i64 0, i64 %idxprom.us.3
129*9880d681SAndroid Build Coastguard Worker  %11 = load float, float* %arrayidx.us.3, align 4
130*9880d681SAndroid Build Coastguard Worker  %arrayidx7.us.3 = getelementptr inbounds [32000 x float], [32000 x float]* @a, i64 0, i64 %indvars.iv.3
131*9880d681SAndroid Build Coastguard Worker  %12 = load float, float* %arrayidx7.us.3, align 4
132*9880d681SAndroid Build Coastguard Worker  %add8.us.3 = fadd float %12, %11
133*9880d681SAndroid Build Coastguard Worker  store float %add8.us.3, float* %arrayidx7.us.3, align 4
134*9880d681SAndroid Build Coastguard Worker  %indvars.iv.next.3 = add i64 %indvars.iv.3, %1
135*9880d681SAndroid Build Coastguard Worker  %13 = trunc i64 %indvars.iv.next.3 to i32
136*9880d681SAndroid Build Coastguard Worker  %cmp3.us.3 = icmp slt i32 %13, 32000
137*9880d681SAndroid Build Coastguard Worker  br i1 %cmp3.us.3, label %for.body4.us.3, label %for.body4.lr.ph.us.4
138*9880d681SAndroid Build Coastguard Worker
139*9880d681SAndroid Build Coastguard Workerfor.body4.lr.ph.us.4:                             ; preds = %for.body4.us.3
140*9880d681SAndroid Build Coastguard Worker  %call10.us.3 = tail call i32 @dummy(float* getelementptr inbounds ([32000 x float], [32000 x float]* @a, i64 0, i64 0), float* getelementptr inbounds ([32000 x float], [32000 x float]* @b, i64 0, i64 0), float* getelementptr inbounds ([32000 x float], [32000 x float]* @c, i64 0, i64 0), float* getelementptr inbounds ([32000 x float], [32000 x float]* @d, i64 0, i64 0), float* getelementptr inbounds ([32000 x float], [32000 x float]* @e, i64 0, i64 0), [256 x float]* getelementptr inbounds ([256 x [256 x float]], [256 x [256 x float]]* @aa, i64 0, i64 0), [256 x float]* getelementptr inbounds ([256 x [256 x float]], [256 x [256 x float]]* @bb, i64 0, i64 0), [256 x float]* getelementptr inbounds ([256 x [256 x float]], [256 x [256 x float]]* @cc, i64 0, i64 0), float 0.000000e+00) nounwind
141*9880d681SAndroid Build Coastguard Worker  br label %for.body4.us.4
142*9880d681SAndroid Build Coastguard Worker
143*9880d681SAndroid Build Coastguard Workerfor.body4.us.4:                                   ; preds = %for.body4.us.4, %for.body4.lr.ph.us.4
144*9880d681SAndroid Build Coastguard Worker  %indvars.iv20.4 = phi i64 [ 0, %for.body4.lr.ph.us.4 ], [ %indvars.iv.next21.4, %for.body4.us.4 ]
145*9880d681SAndroid Build Coastguard Worker  %indvars.iv.4 = phi i64 [ %0, %for.body4.lr.ph.us.4 ], [ %indvars.iv.next.4, %for.body4.us.4 ]
146*9880d681SAndroid Build Coastguard Worker  %indvars.iv.next21.4 = add i64 %indvars.iv20.4, 1
147*9880d681SAndroid Build Coastguard Worker  %sub5.us.4 = sub i64 31999, %indvars.iv20.4
148*9880d681SAndroid Build Coastguard Worker  %sext26 = shl i64 %sub5.us.4, 32
149*9880d681SAndroid Build Coastguard Worker  %idxprom.us.4 = ashr exact i64 %sext26, 32
150*9880d681SAndroid Build Coastguard Worker  %arrayidx.us.4 = getelementptr inbounds [32000 x float], [32000 x float]* @b, i64 0, i64 %idxprom.us.4
151*9880d681SAndroid Build Coastguard Worker  %14 = load float, float* %arrayidx.us.4, align 4
152*9880d681SAndroid Build Coastguard Worker  %arrayidx7.us.4 = getelementptr inbounds [32000 x float], [32000 x float]* @a, i64 0, i64 %indvars.iv.4
153*9880d681SAndroid Build Coastguard Worker  %15 = load float, float* %arrayidx7.us.4, align 4
154*9880d681SAndroid Build Coastguard Worker  %add8.us.4 = fadd float %15, %14
155*9880d681SAndroid Build Coastguard Worker  store float %add8.us.4, float* %arrayidx7.us.4, align 4
156*9880d681SAndroid Build Coastguard Worker  %indvars.iv.next.4 = add i64 %indvars.iv.4, %1
157*9880d681SAndroid Build Coastguard Worker  %16 = trunc i64 %indvars.iv.next.4 to i32
158*9880d681SAndroid Build Coastguard Worker  %cmp3.us.4 = icmp slt i32 %16, 32000
159*9880d681SAndroid Build Coastguard Worker  br i1 %cmp3.us.4, label %for.body4.us.4, label %for.end.us.4
160*9880d681SAndroid Build Coastguard Worker
161*9880d681SAndroid Build Coastguard Workerfor.end.us.4:                                     ; preds = %for.body4.us.4
162*9880d681SAndroid Build Coastguard Worker  %call10.us.4 = tail call i32 @dummy(float* getelementptr inbounds ([32000 x float], [32000 x float]* @a, i64 0, i64 0), float* getelementptr inbounds ([32000 x float], [32000 x float]* @b, i64 0, i64 0), float* getelementptr inbounds ([32000 x float], [32000 x float]* @c, i64 0, i64 0), float* getelementptr inbounds ([32000 x float], [32000 x float]* @d, i64 0, i64 0), float* getelementptr inbounds ([32000 x float], [32000 x float]* @e, i64 0, i64 0), [256 x float]* getelementptr inbounds ([256 x [256 x float]], [256 x [256 x float]]* @aa, i64 0, i64 0), [256 x float]* getelementptr inbounds ([256 x [256 x float]], [256 x [256 x float]]* @bb, i64 0, i64 0), [256 x float]* getelementptr inbounds ([256 x [256 x float]], [256 x [256 x float]]* @cc, i64 0, i64 0), float 0.000000e+00) nounwind
163*9880d681SAndroid Build Coastguard Worker  %inc.us.4 = add nsw i32 %nl.019.us, 5
164*9880d681SAndroid Build Coastguard Worker  %exitcond.4 = icmp eq i32 %inc.us.4, 200000
165*9880d681SAndroid Build Coastguard Worker  br i1 %exitcond.4, label %for.end12, label %for.body4.lr.ph.us
166*9880d681SAndroid Build Coastguard Worker
167*9880d681SAndroid Build Coastguard Workerfor.end.7:                                        ; preds = %entry, %for.end.7
168*9880d681SAndroid Build Coastguard Worker  %nl.019 = phi i32 [ %inc.7, %for.end.7 ], [ 0, %entry ]
169*9880d681SAndroid Build Coastguard Worker  %call10 = tail call i32 @dummy(float* getelementptr inbounds ([32000 x float], [32000 x float]* @a, i64 0, i64 0), float* getelementptr inbounds ([32000 x float], [32000 x float]* @b, i64 0, i64 0), float* getelementptr inbounds ([32000 x float], [32000 x float]* @c, i64 0, i64 0), float* getelementptr inbounds ([32000 x float], [32000 x float]* @d, i64 0, i64 0), float* getelementptr inbounds ([32000 x float], [32000 x float]* @e, i64 0, i64 0), [256 x float]* getelementptr inbounds ([256 x [256 x float]], [256 x [256 x float]]* @aa, i64 0, i64 0), [256 x float]* getelementptr inbounds ([256 x [256 x float]], [256 x [256 x float]]* @bb, i64 0, i64 0), [256 x float]* getelementptr inbounds ([256 x [256 x float]], [256 x [256 x float]]* @cc, i64 0, i64 0), float 0.000000e+00) nounwind
170*9880d681SAndroid Build Coastguard Worker  %call10.1 = tail call i32 @dummy(float* getelementptr inbounds ([32000 x float], [32000 x float]* @a, i64 0, i64 0), float* getelementptr inbounds ([32000 x float], [32000 x float]* @b, i64 0, i64 0), float* getelementptr inbounds ([32000 x float], [32000 x float]* @c, i64 0, i64 0), float* getelementptr inbounds ([32000 x float], [32000 x float]* @d, i64 0, i64 0), float* getelementptr inbounds ([32000 x float], [32000 x float]* @e, i64 0, i64 0), [256 x float]* getelementptr inbounds ([256 x [256 x float]], [256 x [256 x float]]* @aa, i64 0, i64 0), [256 x float]* getelementptr inbounds ([256 x [256 x float]], [256 x [256 x float]]* @bb, i64 0, i64 0), [256 x float]* getelementptr inbounds ([256 x [256 x float]], [256 x [256 x float]]* @cc, i64 0, i64 0), float 0.000000e+00) nounwind
171*9880d681SAndroid Build Coastguard Worker  %call10.2 = tail call i32 @dummy(float* getelementptr inbounds ([32000 x float], [32000 x float]* @a, i64 0, i64 0), float* getelementptr inbounds ([32000 x float], [32000 x float]* @b, i64 0, i64 0), float* getelementptr inbounds ([32000 x float], [32000 x float]* @c, i64 0, i64 0), float* getelementptr inbounds ([32000 x float], [32000 x float]* @d, i64 0, i64 0), float* getelementptr inbounds ([32000 x float], [32000 x float]* @e, i64 0, i64 0), [256 x float]* getelementptr inbounds ([256 x [256 x float]], [256 x [256 x float]]* @aa, i64 0, i64 0), [256 x float]* getelementptr inbounds ([256 x [256 x float]], [256 x [256 x float]]* @bb, i64 0, i64 0), [256 x float]* getelementptr inbounds ([256 x [256 x float]], [256 x [256 x float]]* @cc, i64 0, i64 0), float 0.000000e+00) nounwind
172*9880d681SAndroid Build Coastguard Worker  %call10.3 = tail call i32 @dummy(float* getelementptr inbounds ([32000 x float], [32000 x float]* @a, i64 0, i64 0), float* getelementptr inbounds ([32000 x float], [32000 x float]* @b, i64 0, i64 0), float* getelementptr inbounds ([32000 x float], [32000 x float]* @c, i64 0, i64 0), float* getelementptr inbounds ([32000 x float], [32000 x float]* @d, i64 0, i64 0), float* getelementptr inbounds ([32000 x float], [32000 x float]* @e, i64 0, i64 0), [256 x float]* getelementptr inbounds ([256 x [256 x float]], [256 x [256 x float]]* @aa, i64 0, i64 0), [256 x float]* getelementptr inbounds ([256 x [256 x float]], [256 x [256 x float]]* @bb, i64 0, i64 0), [256 x float]* getelementptr inbounds ([256 x [256 x float]], [256 x [256 x float]]* @cc, i64 0, i64 0), float 0.000000e+00) nounwind
173*9880d681SAndroid Build Coastguard Worker  %call10.4 = tail call i32 @dummy(float* getelementptr inbounds ([32000 x float], [32000 x float]* @a, i64 0, i64 0), float* getelementptr inbounds ([32000 x float], [32000 x float]* @b, i64 0, i64 0), float* getelementptr inbounds ([32000 x float], [32000 x float]* @c, i64 0, i64 0), float* getelementptr inbounds ([32000 x float], [32000 x float]* @d, i64 0, i64 0), float* getelementptr inbounds ([32000 x float], [32000 x float]* @e, i64 0, i64 0), [256 x float]* getelementptr inbounds ([256 x [256 x float]], [256 x [256 x float]]* @aa, i64 0, i64 0), [256 x float]* getelementptr inbounds ([256 x [256 x float]], [256 x [256 x float]]* @bb, i64 0, i64 0), [256 x float]* getelementptr inbounds ([256 x [256 x float]], [256 x [256 x float]]* @cc, i64 0, i64 0), float 0.000000e+00) nounwind
174*9880d681SAndroid Build Coastguard Worker  %call10.5 = tail call i32 @dummy(float* getelementptr inbounds ([32000 x float], [32000 x float]* @a, i64 0, i64 0), float* getelementptr inbounds ([32000 x float], [32000 x float]* @b, i64 0, i64 0), float* getelementptr inbounds ([32000 x float], [32000 x float]* @c, i64 0, i64 0), float* getelementptr inbounds ([32000 x float], [32000 x float]* @d, i64 0, i64 0), float* getelementptr inbounds ([32000 x float], [32000 x float]* @e, i64 0, i64 0), [256 x float]* getelementptr inbounds ([256 x [256 x float]], [256 x [256 x float]]* @aa, i64 0, i64 0), [256 x float]* getelementptr inbounds ([256 x [256 x float]], [256 x [256 x float]]* @bb, i64 0, i64 0), [256 x float]* getelementptr inbounds ([256 x [256 x float]], [256 x [256 x float]]* @cc, i64 0, i64 0), float 0.000000e+00) nounwind
175*9880d681SAndroid Build Coastguard Worker  %call10.6 = tail call i32 @dummy(float* getelementptr inbounds ([32000 x float], [32000 x float]* @a, i64 0, i64 0), float* getelementptr inbounds ([32000 x float], [32000 x float]* @b, i64 0, i64 0), float* getelementptr inbounds ([32000 x float], [32000 x float]* @c, i64 0, i64 0), float* getelementptr inbounds ([32000 x float], [32000 x float]* @d, i64 0, i64 0), float* getelementptr inbounds ([32000 x float], [32000 x float]* @e, i64 0, i64 0), [256 x float]* getelementptr inbounds ([256 x [256 x float]], [256 x [256 x float]]* @aa, i64 0, i64 0), [256 x float]* getelementptr inbounds ([256 x [256 x float]], [256 x [256 x float]]* @bb, i64 0, i64 0), [256 x float]* getelementptr inbounds ([256 x [256 x float]], [256 x [256 x float]]* @cc, i64 0, i64 0), float 0.000000e+00) nounwind
176*9880d681SAndroid Build Coastguard Worker  %call10.7 = tail call i32 @dummy(float* getelementptr inbounds ([32000 x float], [32000 x float]* @a, i64 0, i64 0), float* getelementptr inbounds ([32000 x float], [32000 x float]* @b, i64 0, i64 0), float* getelementptr inbounds ([32000 x float], [32000 x float]* @c, i64 0, i64 0), float* getelementptr inbounds ([32000 x float], [32000 x float]* @d, i64 0, i64 0), float* getelementptr inbounds ([32000 x float], [32000 x float]* @e, i64 0, i64 0), [256 x float]* getelementptr inbounds ([256 x [256 x float]], [256 x [256 x float]]* @aa, i64 0, i64 0), [256 x float]* getelementptr inbounds ([256 x [256 x float]], [256 x [256 x float]]* @bb, i64 0, i64 0), [256 x float]* getelementptr inbounds ([256 x [256 x float]], [256 x [256 x float]]* @cc, i64 0, i64 0), float 0.000000e+00) nounwind
177*9880d681SAndroid Build Coastguard Worker  %inc.7 = add nsw i32 %nl.019, 8
178*9880d681SAndroid Build Coastguard Worker  %exitcond.7 = icmp eq i32 %inc.7, 200000
179*9880d681SAndroid Build Coastguard Worker  br i1 %exitcond.7, label %for.end12, label %for.end.7
180*9880d681SAndroid Build Coastguard Worker}
181*9880d681SAndroid Build Coastguard Worker
182*9880d681SAndroid Build Coastguard Workerdeclare void @llvm.memcpy.p0i8.p0i8.i64(i8* nocapture, i8* nocapture, i64, i32, i1) nounwind
183*9880d681SAndroid Build Coastguard Worker
184*9880d681SAndroid Build Coastguard Workerdeclare i32 @puts(i8* nocapture) nounwind
185*9880d681SAndroid Build Coastguard Worker
186*9880d681SAndroid Build Coastguard Worker!3 = !{!"branch_weights", i32 64, i32 4}
187