void CenterCoords(float **coords, const int len) {
  int i;
  float xsum, ysum, zsum;
  float *x = coords[0], *y = coords[1], *z = coords[2];
  xsum = ysum = zsum = 0.0;
  for (i = 0; i < len; ++i) {
    xsum += x[i];
    ysum += y[i];
    zsum += z[i];
  }
  xsum /= len;
  ysum /= len;
  zsum /= len;
  for (i = 0; i < len; ++i) {
    x[i] -= xsum;
    y[i] -= ysum;
    z[i] -= zsum;
  }
}


x86 assembly (clang, -O0):
<CenterCoords>:
push   %rbp
mov    %rsp,%rbp
mov    %rdi,-0x8(%rbp)
mov    %esi,-0xc(%rbp)
mov    -0x8(%rbp),%rax
mov    (%rax),%rax
mov    %rax,-0x28(%rbp)
mov    -0x8(%rbp),%rax
mov    0x8(%rax),%rax
mov    %rax,-0x30(%rbp)
mov    -0x8(%rbp),%rax
mov    0x10(%rax),%rax
mov    %rax,-0x38(%rbp)
xorps  %xmm0,%xmm0
movss  %xmm0,-0x1c(%rbp)
xorps  %xmm0,%xmm0
movss  %xmm0,-0x18(%rbp)
xorps  %xmm0,%xmm0
movss  %xmm0,-0x14(%rbp)
movl   $0x0,-0x10(%rbp)
mov    -0x10(%rbp),%eax
cmp    -0xc(%rbp),%eax
jge    11ac <CenterCoords+0xac>
mov    -0x28(%rbp),%rax
movslq -0x10(%rbp),%rcx
movss  (%rax,%rcx,4),%xmm0
addss  -0x14(%rbp),%xmm0
movss  %xmm0,-0x14(%rbp)
mov    -0x30(%rbp),%rax
movslq -0x10(%rbp),%rcx
movss  (%rax,%rcx,4),%xmm0
addss  -0x18(%rbp),%xmm0
movss  %xmm0,-0x18(%rbp)
mov    -0x38(%rbp),%rax
movslq -0x10(%rbp),%rcx
movss  (%rax,%rcx,4),%xmm0
addss  -0x1c(%rbp),%xmm0
movss  %xmm0,-0x1c(%rbp)
mov    -0x10(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x10(%rbp)
jmp    114d <CenterCoords+0x4d>
cvtsi2ssl -0xc(%rbp),%xmm1
movss  -0x14(%rbp),%xmm0
divss  %xmm1,%xmm0
movss  %xmm0,-0x14(%rbp)
cvtsi2ssl -0xc(%rbp),%xmm1
movss  -0x18(%rbp),%xmm0
divss  %xmm1,%xmm0
movss  %xmm0,-0x18(%rbp)
cvtsi2ssl -0xc(%rbp),%xmm1
movss  -0x1c(%rbp),%xmm0
divss  %xmm1,%xmm0
movss  %xmm0,-0x1c(%rbp)
movl   $0x0,-0x10(%rbp)
mov    -0x10(%rbp),%eax
cmp    -0xc(%rbp),%eax
jge    1257 <CenterCoords+0x157>
movss  -0x14(%rbp),%xmm1
mov    -0x28(%rbp),%rax
movslq -0x10(%rbp),%rcx
movss  (%rax,%rcx,4),%xmm0
subss  %xmm1,%xmm0
movss  %xmm0,(%rax,%rcx,4)
movss  -0x18(%rbp),%xmm1
mov    -0x30(%rbp),%rax
movslq -0x10(%rbp),%rcx
movss  (%rax,%rcx,4),%xmm0
subss  %xmm1,%xmm0
movss  %xmm0,(%rax,%rcx,4)
movss  -0x1c(%rbp),%xmm1
mov    -0x38(%rbp),%rax
movslq -0x10(%rbp),%rcx
movss  (%rax,%rcx,4),%xmm0
subss  %xmm1,%xmm0
movss  %xmm0,(%rax,%rcx,4)
mov    -0x10(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x10(%rbp)
jmp    11ec <CenterCoords+0xec>
pop    %rbp
ret

x86 assembly (clang, -O2):
<CenterCoords>:
push   %rbp
push   %r14
push   %rbx
test   %esi,%esi
jle    1378 <CenterCoords+0x278>
mov    (%rdi),%r10
mov    0x8(%rdi),%rcx
mov    0x10(%rdi),%rdx
mov    %esi,%r8d
cmp    $0x1,%esi
jne    112c <CenterCoords+0x2c>
xorps  %xmm0,%xmm0
xor    %edi,%edi
xorps  %xmm1,%xmm1
xorps  %xmm2,%xmm2
jmp    116c <CenterCoords+0x6c>
mov    %r8d,%eax
and    $0xfffffffe,%eax
xorps  %xmm0,%xmm0
xor    %edi,%edi
xorps  %xmm1,%xmm1
xorps  %xmm2,%xmm2
nopl   (%rax)
addss  (%r10,%rdi,4),%xmm0
addss  (%rcx,%rdi,4),%xmm1
addss  (%rdx,%rdi,4),%xmm2
addss  0x4(%r10,%rdi,4),%xmm0
addss  0x4(%rcx,%rdi,4),%xmm1
addss  0x4(%rdx,%rdi,4),%xmm2
add    $0x2,%rdi
cmp    %rdi,%rax
jne    1140 <CenterCoords+0x40>
test   $0x1,%r8b
je     1182 <CenterCoords+0x82>
addss  (%r10,%rdi,4),%xmm0
addss  (%rcx,%rdi,4),%xmm1
addss  (%rdx,%rdi,4),%xmm2
test   %esi,%esi
jle    1378 <CenterCoords+0x278>
cvtsi2ss %esi,%xmm3
divss  %xmm3,%xmm0
divss  %xmm3,%xmm1
divss  %xmm3,%xmm2
cmp    $0x4,%esi
jae    125c <CenterCoords+0x15c>
xor    %esi,%esi
mov    %rsi,%rax
not    %rax
test   $0x1,%r8b
je     11e1 <CenterCoords+0xe1>
movss  (%r10,%rsi,4),%xmm3
subss  %xmm0,%xmm3
movss  %xmm3,(%r10,%rsi,4)
movss  (%rcx,%rsi,4),%xmm3
subss  %xmm1,%xmm3
movss  %xmm3,(%rcx,%rsi,4)
movss  (%rdx,%rsi,4),%xmm3
subss  %xmm2,%xmm3
movss  %xmm3,(%rdx,%rsi,4)
or     $0x1,%rsi
add    %r8,%rax
je     1378 <CenterCoords+0x278>
nopw   0x0(%rax,%rax,1)
movss  (%r10,%rsi,4),%xmm3
subss  %xmm0,%xmm3
movss  %xmm3,(%r10,%rsi,4)
movss  (%rcx,%rsi,4),%xmm3
subss  %xmm1,%xmm3
movss  %xmm3,(%rcx,%rsi,4)
movss  (%rdx,%rsi,4),%xmm3
subss  %xmm2,%xmm3
movss  %xmm3,(%rdx,%rsi,4)
movss  0x4(%r10,%rsi,4),%xmm3
subss  %xmm0,%xmm3
movss  %xmm3,0x4(%r10,%rsi,4)
movss  0x4(%rcx,%rsi,4),%xmm3
subss  %xmm1,%xmm3
movss  %xmm3,0x4(%rcx,%rsi,4)
movss  0x4(%rdx,%rsi,4),%xmm3
subss  %xmm2,%xmm3
movss  %xmm3,0x4(%rdx,%rsi,4)
add    $0x2,%rsi
cmp    %rsi,%r8
jne    11f0 <CenterCoords+0xf0>
jmp    1378 <CenterCoords+0x278>
lea    (%r10,%r8,4),%rsi
lea    (%rcx,%r8,4),%rdi
lea    (%rdx,%r8,4),%rbx
cmp    %rdi,%r10
setb   %bpl
cmp    %rsi,%rcx
setb   %r14b
cmp    %rbx,%r10
setb   %al
cmp    %rsi,%rdx
setb   %r9b
cmp    %rbx,%rcx
setb   %bl
cmp    %rdi,%rdx
setb   %r11b
xor    %esi,%esi
test   %r14b,%bpl
jne    11a5 <CenterCoords+0xa5>
and    %r9b,%al
jne    11a5 <CenterCoords+0xa5>
and    %r11b,%bl
jne    11a5 <CenterCoords+0xa5>
mov    %r8d,%esi
and    $0xfffffffc,%esi
movaps %xmm0,%xmm5
shufps $0x0,%xmm0,%xmm5
movaps %xmm1,%xmm4
shufps $0x0,%xmm1,%xmm4
movaps %xmm2,%xmm3
shufps $0x0,%xmm2,%xmm3
lea    -0x4(%rsi),%rax
mov    %rax,%r9
shr    $0x2,%r9
add    $0x1,%r9
test   %rax,%rax
je     137d <CenterCoords+0x27d>
mov    %r9,%rax
and    $0xfffffffffffffffe,%rax
xor    %edi,%edi
nopl   0x0(%rax)
movups (%r10,%rdi,4),%xmm6
subps  %xmm5,%xmm6
movups %xmm6,(%r10,%rdi,4)
movups (%rcx,%rdi,4),%xmm6
subps  %xmm4,%xmm6
movups %xmm6,(%rcx,%rdi,4)
movups (%rdx,%rdi,4),%xmm6
subps  %xmm3,%xmm6
movups %xmm6,(%rdx,%rdi,4)
movups 0x10(%r10,%rdi,4),%xmm6
subps  %xmm5,%xmm6
movups %xmm6,0x10(%r10,%rdi,4)
movups 0x10(%rcx,%rdi,4),%xmm6
subps  %xmm4,%xmm6
movups %xmm6,0x10(%rcx,%rdi,4)
movups 0x10(%rdx,%rdi,4),%xmm6
subps  %xmm3,%xmm6
movups %xmm6,0x10(%rdx,%rdi,4)
add    $0x8,%rdi
add    $0xfffffffffffffffe,%rax
jne    12f0 <CenterCoords+0x1f0>
test   $0x1,%r9b
je     136f <CenterCoords+0x26f>
movups (%r10,%rdi,4),%xmm6
subps  %xmm5,%xmm6
movups %xmm6,(%r10,%rdi,4)
movups (%rcx,%rdi,4),%xmm5
subps  %xmm4,%xmm5
movups %xmm5,(%rcx,%rdi,4)
movups (%rdx,%rdi,4),%xmm4
subps  %xmm3,%xmm4
movups %xmm4,(%rdx,%rdi,4)
cmp    %r8,%rsi
jne    11a5 <CenterCoords+0xa5>
pop    %rbx
pop    %r14
pop    %rbp
ret
xor    %edi,%edi
test   $0x1,%r9b
jne    134c <CenterCoords+0x24c>
jmp    136f <CenterCoords+0x26f>

LLVM IR (-O0):
define void @CenterCoords(float** %0, i32 %1) {
%3 = alloca float**
%4 = alloca i32
%5 = alloca i32
%6 = alloca float
%7 = alloca float
%8 = alloca float
%9 = alloca float*
%10 = alloca float*
%11 = alloca float*
store float** %0, float*** %3
store i32 %1, i32* %4
%12 = load float**, float*** %3
%13 = getelementptr inbounds float*, float** %12, i64 0
%14 = load float*, float** %13
store float* %14, float** %9
%15 = load float**, float*** %3
%16 = getelementptr inbounds float*, float** %15, i64 1
%17 = load float*, float** %16
store float* %17, float** %10
%18 = load float**, float*** %3
%19 = getelementptr inbounds float*, float** %18, i64 2
%20 = load float*, float** %19
store float* %20, float** %11
store float 0.000000e+00, float* %8
store float 0.000000e+00, float* %7
store float 0.000000e+00, float* %6
store i32 0, i32* %5
br label %21
21: ; preds = %47, %2
%22 = load i32, i32* %5
%23 = load i32, i32* %4
%24 = icmp slt i32 %22, %23
br i1 %24, label %25, label %50
25: ; preds = %21
%26 = load float*, float** %9
%27 = load i32, i32* %5
%28 = sext i32 %27 to i64
%29 = getelementptr inbounds float, float* %26, i64 %28
%30 = load float, float* %29
%31 = load float, float* %6
%32 = fadd float %31, %30
store float %32, float* %6
%33 = load float*, float** %10
%34 = load i32, i32* %5
%35 = sext i32 %34 to i64
%36 = getelementptr inbounds float, float* %33, i64 %35
%37 = load float, float* %36
%38 = load float, float* %7
%39 = fadd float %38, %37
store float %39, float* %7
%40 = load float*, float** %11
%41 = load i32, i32* %5
%42 = sext i32 %41 to i64
%43 = getelementptr inbounds float, float* %40, i64 %42
%44 = load float, float* %43
%45 = load float, float* %8
%46 = fadd float %45, %44
store float %46, float* %8
br label %47
47: ; preds = %25
%48 = load i32, i32* %5
%49 = add nsw i32 %48, 1
store i32 %49, i32* %5
br label %21
50: ; preds = %21
%51 = load i32, i32* %4
%52 = sitofp i32 %51 to float
%53 = load float, float* %6
%54 = fdiv float %53, %52
store float %54, float* %6
%55 = load i32, i32* %4
%56 = sitofp i32 %55 to float
%57 = load float, float* %7
%58 = fdiv float %57, %56
store float %58, float* %7
%59 = load i32, i32* %4
%60 = sitofp i32 %59 to float
%61 = load float, float* %8
%62 = fdiv float %61, %60
store float %62, float* %8
store i32 0, i32* %5
br label %63
63: ; preds = %89, %50
%64 = load i32, i32* %5
%65 = load i32, i32* %4
%66 = icmp slt i32 %64, %65
br i1 %66, label %67, label %92
67: ; preds = %63
%68 = load float, float* %6
%69 = load float*, float** %9
%70 = load i32, i32* %5
%71 = sext i32 %70 to i64
%72 = getelementptr inbounds float, float* %69, i64 %71
%73 = load float, float* %72
%74 = fsub float %73, %68
store float %74, float* %72
%75 = load float, float* %7
%76 = load float*, float** %10
%77 = load i32, i32* %5
%78 = sext i32 %77 to i64
%79 = getelementptr inbounds float, float* %76, i64 %78
%80 = load float, float* %79
%81 = fsub float %80, %75
store float %81, float* %79
%82 = load float, float* %8
%83 = load float*, float** %11
%84 = load i32, i32* %5
%85 = sext i32 %84 to i64
%86 = getelementptr inbounds float, float* %83, i64 %85
%87 = load float, float* %86
%88 = fsub float %87, %82
store float %88, float* %86
br label %89
89: ; preds = %67
%90 = load i32, i32* %5
%91 = add nsw i32 %90, 1
store i32 %91, i32* %5
br label %63
92: ; preds = %63
ret void
}

LLVM IR (-O2):
define void @CenterCoords(float** nocapture %0, i32 %1) {
%3 = load float*, float** %0
%4 = getelementptr inbounds float*, float** %0, i64 1
%5 = load float*, float** %4
%6 = getelementptr inbounds float*, float** %0, i64 2
%7 = load float*, float** %6
%8 = icmp sgt i32 %1, 0
br i1 %8, label %9, label %204
9: ; preds = %2
%10 = zext i32 %1 to i64
%11 = and i64 %10, 1
%12 = icmp eq i32 %1, 1
br i1 %12, label %43, label %13
13: ; preds = %9
%14 = and i64 %10, 4294967294
br label %15
15: ; preds = %15, %13
%16 = phi i64 [ 0, %13 ], [ %40, %15 ]
%17 = phi float [ 0.000000e+00, %13 ], [ %33, %15 ]
%18 = phi float [ 0.000000e+00, %13 ], [ %36, %15 ]
%19 = phi float [ 0.000000e+00, %13 ], [ %39, %15 ]
%20 = phi i64 [ 0, %13 ], [ %41, %15 ]
%21 = getelementptr inbounds float, float* %3, i64 %16
%22 = load float, float* %21
%23 = fadd float %17, %22
%24 = getelementptr inbounds float, float* %5, i64 %16
%25 = load float, float* %24
%26 = fadd float %18, %25
%27 = getelementptr inbounds float, float* %7, i64 %16
%28 = load float, float* %27
%29 = fadd float %19, %28
%30 = or i64 %16, 1
%31 = getelementptr inbounds float, float* %3, i64 %30
%32 = load float, float* %31
%33 = fadd float %23, %32
%34 = getelementptr inbounds float, float* %5, i64 %30
%35 = load float, float* %34
%36 = fadd float %26, %35
%37 = getelementptr inbounds float, float* %7, i64 %30
%38 = load float, float* %37
%39 = fadd float %29, %38
%40 = add nuw nsw i64 %16, 2
%41 = add i64 %20, 2
%42 = icmp eq i64 %41, %14
br i1 %42, label %43, label %15
43: ; preds = %15, %9
%44 = phi float [ undef, %9 ], [ %33, %15 ]
%45 = phi float [ undef, %9 ], [ %36, %15 ]
%46 = phi float [ undef, %9 ], [ %39, %15 ]
%47 = phi i64 [ 0, %9 ], [ %40, %15 ]
%48 = phi float [ 0.000000e+00, %9 ], [ %33, %15 ]
%49 = phi float [ 0.000000e+00, %9 ], [ %36, %15 ]
%50 = phi float [ 0.000000e+00, %9 ], [ %39, %15 ]
%51 = icmp eq i64 %11, 0
br i1 %51, label %62, label %52
52: ; preds = %43
%53 = getelementptr inbounds float, float* %3, i64 %47
%54 = load float, float* %53
%55 = fadd float %48, %54
%56 = getelementptr inbounds float, float* %5, i64 %47
%57 = load float, float* %56
%58 = fadd float %49, %57
%59 = getelementptr inbounds float, float* %7, i64 %47
%60 = load float, float* %59
%61 = fadd float %50, %60
br label %62
62: ; preds = %43, %52
%63 = phi float [ %44, %43 ], [ %55, %52 ]
%64 = phi float [ %45, %43 ], [ %58, %52 ]
%65 = phi float [ %46, %43 ], [ %61, %52 ]
%66 = sitofp i32 %1 to float
%67 = fdiv float %63, %66
%68 = fdiv float %64, %66
%69 = fdiv float %65, %66
br i1 %8, label %70, label %204
70: ; preds = %62
%71 = zext i32 %1 to i64
%72 = icmp ult i32 %1, 4
br i1 %72, label %161, label %73
73: ; preds = %70
%74 = getelementptr float, float* %3, i64 %10
%75 = getelementptr float, float* %5, i64 %10
%76 = getelementptr float, float* %7, i64 %10
%77 = icmp ult float* %3, %75
%78 = icmp ult float* %5, %74
%79 = and i1 %77, %78
%80 = icmp ult float* %3, %76
%81 = icmp ult float* %7, %74
%82 = and i1 %80, %81
%83 = or i1 %79, %82
%84 = icmp ult float* %5, %76
%85 = icmp ult float* %7, %75
%86 = and i1 %84, %85
%87 = or i1 %83, %86
br i1 %87, label %161, label %88
88: ; preds = %73
%89 = and i64 %10, 4294967292
%90 = insertelement <4 x float> poison, float %67, i64 0
%91 = shufflevector <4 x float> %90, <4 x float> poison, <4 x i32> zeroinitializer
%92 = insertelement <4 x float> poison, float %68, i64 0
%93 = shufflevector <4 x float> %92, <4 x float> poison, <4 x i32> zeroinitializer
%94 = insertelement <4 x float> poison, float %69, i64 0
%95 = shufflevector <4 x float> %94, <4 x float> poison, <4 x i32> zeroinitializer
%96 = add nsw i64 %89, -4
%97 = lshr exact i64 %96, 2
%98 = add nuw nsw i64 %97, 1
%99 = and i64 %98, 1
%100 = icmp eq i64 %96, 0
br i1 %100, label %140, label %101
101: ; preds = %88
%102 = and i64 %98, 9223372036854775806
br label %103
103: ; preds = %103, %101
%104 = phi i64 [ 0, %101 ], [ %137, %103 ]
%105 = phi i64 [ 0, %101 ], [ %138, %103 ]
%106 = getelementptr inbounds float, float* %3, i64 %104
%107 = bitcast float* %106 to <4 x float>*
%108 = load <4 x float>, <4 x float>* %107
%109 = fsub <4 x float> %108, %91
%110 = bitcast float* %106 to <4 x float>*
store <4 x float> %109, <4 x float>* %110
%111 = getelementptr inbounds float, float* %5, i64 %104
%112 = bitcast float* %111 to <4 x float>*
%113 = load <4 x float>, <4 x float>* %112
%114 = fsub <4 x float> %113, %93
%115 = bitcast float* %111 to <4 x float>*
store <4 x float> %114, <4 x float>* %115
%116 = getelementptr inbounds float, float* %7, i64 %104
%117 = bitcast float* %116 to <4 x float>*
%118 = load <4 x float>, <4 x float>* %117
%119 = fsub <4 x float> %118, %95
%120 = bitcast float* %116 to <4 x float>*
store <4 x float> %119, <4 x float>* %120
%121 = or i64 %104, 4
%122 = getelementptr inbounds float, float* %3, i64 %121
%123 = bitcast float* %122 to <4 x float>*
%124 = load <4 x float>, <4 x float>* %123
%125 = fsub <4 x float> %124, %91
%126 = bitcast float* %122 to <4 x float>*
store <4 x float> %125, <4 x float>* %126
%127 = getelementptr inbounds float, float* %5, i64 %121
%128 = bitcast float* %127 to <4 x float>*
%129 = load <4 x float>, <4 x float>* %128
%130 = fsub <4 x float> %129, %93
%131 = bitcast float* %127 to <4 x float>*
store <4 x float> %130, <4 x float>* %131
%132 = getelementptr inbounds float, float* %7, i64 %121
%133 = bitcast float* %132 to <4 x float>*
%134 = load <4 x float>, <4 x float>* %133
%135 = fsub <4 x float> %134, %95
%136 = bitcast float* %132 to <4 x float>*
store <4 x float> %135, <4 x float>* %136
%137 = add nuw i64 %104, 8
%138 = add i64 %105, 2
%139 = icmp eq i64 %138, %102
br i1 %139, label %140, label %103
140: ; preds = %103, %88
%141 = phi i64 [ 0, %88 ], [ %137, %103 ]
%142 = icmp eq i64 %99, 0
br i1 %142, label %159, label %143
143: ; preds = %140
%144 = getelementptr inbounds float, float* %3, i64 %141
%145 = bitcast float* %144 to <4 x float>*
%146 = load <4 x float>, <4 x float>* %145
%147 = fsub <4 x float> %146, %91
%148 = bitcast float* %144 to <4 x float>*
store <4 x float> %147, <4 x float>* %148
%149 = getelementptr inbounds float, float* %5, i64 %141
%150 = bitcast float* %149 to <4 x float>*
%151 = load <4 x float>, <4 x float>* %150
%152 = fsub <4 x float> %151, %93
%153 = bitcast float* %149 to <4 x float>*
store <4 x float> %152, <4 x float>* %153
%154 = getelementptr inbounds float, float* %7, i64 %141
%155 = bitcast float* %154 to <4 x float>*
%156 = load <4 x float>, <4 x float>* %155
%157 = fsub <4 x float> %156, %95
%158 = bitcast float* %154 to <4 x float>*
store <4 x float> %157, <4 x float>* %158
br label %159
159: ; preds = %140, %143
%160 = icmp eq i64 %89, %10
br i1 %160, label %204, label %161
161: ; preds = %73, %70, %159
%162 = phi i64 [ 0, %73 ], [ 0, %70 ], [ %89, %159 ]
%163 = xor i64 %162, -1
%164 = and i64 %10, 1
%165 = icmp eq i64 %164, 0
br i1 %165, label %177, label %166
166: ; preds = %161
%167 = getelementptr inbounds float, float* %3, i64 %162
%168 = load float, float* %167
%169 = fsub float %168, %67
store float %169, float* %167
%170 = getelementptr inbounds float, float* %5, i64 %162
%171 = load float, float* %170
%172 = fsub float %171, %68
store float %172, float* %170
%173 = getelementptr inbounds float, float* %7, i64 %162
%174 = load float, float* %173
%175 = fsub float %174, %69
store float %175, float* %173
%176 = or i64 %162, 1
br label %177
177: ; preds = %166, %161
%178 = phi i64 [ %162, %161 ], [ %176, %166 ]
%179 = sub nsw i64 0, %10
%180 = icmp eq i64 %163, %179
br i1 %180, label %204, label %181
181: ; preds = %177, %181
%182 = phi i64 [ %202, %181 ], [ %178, %177 ]
%183 = getelementptr inbounds float, float* %3, i64 %182
%184 = load float, float* %183
%185 = fsub float %184, %67
store float %185, float* %183
%186 = getelementptr inbounds float, float* %5, i64 %182
%187 = load float, float* %186
%188 = fsub float %187, %68
store float %188, float* %186
%189 = getelementptr inbounds float, float* %7, i64 %182
%190 = load float, float* %189
%191 = fsub float %190, %69
store float %191, float* %189
%192 = add nuw nsw i64 %182, 1
%193 = getelementptr inbounds float, float* %3, i64 %192
%194 = load float, float* %193
%195 = fsub float %194, %67
store float %195, float* %193
%196 = getelementptr inbounds float, float* %5, i64 %192
%197 = load float, float* %196
%198 = fsub float %197, %68
store float %198, float* %196
%199 = getelementptr inbounds float, float* %7, i64 %192
%200 = load float, float* %199
%201 = fsub float %200, %69
store float %201, float* %199
%202 = add nuw nsw i64 %182, 2
%203 = icmp eq i64 %202, %71
br i1 %203, label %204, label %181
204: ; preds = %177, %181, %159, %2, %62
ret void
}