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