double ho_recognize_font_1_resh(const double *array_in) {
  double return_value = 0.0;
  if ((array_in[17]))
    return_value += 0.1;
  if ((array_in[22]))
    return_value += 0.1;
  if (!(array_in[19]))
    return_value += 0.1;
  if (!(array_in[20]))
    return_value += 0.1;
  if (!(array_in[28]))
    return_value += 0.1;
  if ((array_in[36]))
    return_value += 0.1;
  if ((array_in[19]))
    return_value -= 0.3;
  if ((array_in[47]) || (array_in[48]))
    return_value -= 0.2;
  if ((array_in[20]))
    return_value -= 0.3;
  if ((array_in[21]))
    return_value -= 0.1;
  if ((array_in[69]))
    return_value -= 0.3;
  if ((array_in[4]) > 0.60)
    return_value -= 0.3;
  if ((array_in[4]) < 0.45)
    return_value -= 0.3;
  if ((array_in[28]))
    return_value -= 0.1;
  if ((array_in[1]) < 0.3)
    return_value -= 0.3;
  if ((array_in[2]) < 0.6)
    return_value -= 0.3;
  if ((array_in[14]))
    return_value -= 0.3;
  if ((array_in[10]) < 0.9)
    return_value -= 0.3;
  if ((array_in[8]) < 0.9)
    return_value -= 0.3;
  if ((array_in[1]) < 0.35 || (array_in[0]) < 0.35)
    return_value -= 0.2;
  if ((array_in[1]) < 0.25)
    return_value -= 0.2;
  return return_value;
}


x86 assembly (clang, -O0):
<ho_recognize_font_1_resh>:
push   %rbp
mov    %rsp,%rbp
mov    %rdi,-0x8(%rbp)
xorps  %xmm0,%xmm0
movsd  %xmm0,-0x10(%rbp)
mov    -0x8(%rbp),%rax
movsd  0x88(%rax),%xmm0
xorps  %xmm1,%xmm1
ucomisd %xmm1,%xmm0
jne    1134 <ho_recognize_font_1_resh+0x34>
jp     1134 <ho_recognize_font_1_resh+0x34>
jmp    1146 <ho_recognize_font_1_resh+0x46>
movsd  0xec4(%rip),%xmm0
addsd  -0x10(%rbp),%xmm0
movsd  %xmm0,-0x10(%rbp)
mov    -0x8(%rbp),%rax
movsd  0xb0(%rax),%xmm0
xorps  %xmm1,%xmm1
ucomisd %xmm1,%xmm0
jne    116a <ho_recognize_font_1_resh+0x6a>
jp     116a <ho_recognize_font_1_resh+0x6a>
jmp    117c <ho_recognize_font_1_resh+0x7c>
movsd  0xe8e(%rip),%xmm0
addsd  -0x10(%rbp),%xmm0
movsd  %xmm0,-0x10(%rbp)
mov    -0x8(%rbp),%rax
movsd  0x98(%rax),%xmm0
xorps  %xmm1,%xmm1
ucomisd %xmm1,%xmm0
jne    11ad <ho_recognize_font_1_resh+0xad>
jp     11ad <ho_recognize_font_1_resh+0xad>
movsd  0xe5d(%rip),%xmm0
addsd  -0x10(%rbp),%xmm0
movsd  %xmm0,-0x10(%rbp)
mov    -0x8(%rbp),%rax
movsd  0xa0(%rax),%xmm0
xorps  %xmm1,%xmm1
ucomisd %xmm1,%xmm0
jne    11de <ho_recognize_font_1_resh+0xde>
jp     11de <ho_recognize_font_1_resh+0xde>
movsd  0xe2c(%rip),%xmm0
addsd  -0x10(%rbp),%xmm0
movsd  %xmm0,-0x10(%rbp)
mov    -0x8(%rbp),%rax
movsd  0xe0(%rax),%xmm0
xorps  %xmm1,%xmm1
ucomisd %xmm1,%xmm0
jne    120f <ho_recognize_font_1_resh+0x10f>
jp     120f <ho_recognize_font_1_resh+0x10f>
movsd  0xdfb(%rip),%xmm0
addsd  -0x10(%rbp),%xmm0
movsd  %xmm0,-0x10(%rbp)
mov    -0x8(%rbp),%rax
movsd  0x120(%rax),%xmm0
xorps  %xmm1,%xmm1
ucomisd %xmm1,%xmm0
jne    1233 <ho_recognize_font_1_resh+0x133>
jp     1233 <ho_recognize_font_1_resh+0x133>
jmp    1245 <ho_recognize_font_1_resh+0x145>
movsd  0xdc5(%rip),%xmm0
addsd  -0x10(%rbp),%xmm0
movsd  %xmm0,-0x10(%rbp)
mov    -0x8(%rbp),%rax
movsd  0x98(%rax),%xmm0
xorps  %xmm1,%xmm1
ucomisd %xmm1,%xmm0
jne    1269 <ho_recognize_font_1_resh+0x169>
jp     1269 <ho_recognize_font_1_resh+0x169>
jmp    127f <ho_recognize_font_1_resh+0x17f>
movsd  -0x10(%rbp),%xmm0
movsd  0xd92(%rip),%xmm1
subsd  %xmm1,%xmm0
movsd  %xmm0,-0x10(%rbp)
mov    -0x8(%rbp),%rax
movsd  0x178(%rax),%xmm0
xorps  %xmm1,%xmm1
ucomisd %xmm1,%xmm0
jne    12c2 <ho_recognize_font_1_resh+0x1c2>
jp     12c2 <ho_recognize_font_1_resh+0x1c2>
mov    -0x8(%rbp),%rax
movsd  0x180(%rax),%xmm0
xorps  %xmm1,%xmm1
ucomisd %xmm1,%xmm0
jne    12c2 <ho_recognize_font_1_resh+0x1c2>
jp     12c2 <ho_recognize_font_1_resh+0x1c2>
jmp    12d8 <ho_recognize_font_1_resh+0x1d8>
movsd  -0x10(%rbp),%xmm0
movsd  0xd41(%rip),%xmm1
subsd  %xmm1,%xmm0
movsd  %xmm0,-0x10(%rbp)
mov    -0x8(%rbp),%rax
movsd  0xa0(%rax),%xmm0
xorps  %xmm1,%xmm1
ucomisd %xmm1,%xmm0
jne    12fc <ho_recognize_font_1_resh+0x1fc>
jp     12fc <ho_recognize_font_1_resh+0x1fc>
jmp    1312 <ho_recognize_font_1_resh+0x212>
movsd  -0x10(%rbp),%xmm0
movsd  0xcff(%rip),%xmm1
subsd  %xmm1,%xmm0
movsd  %xmm0,-0x10(%rbp)
mov    -0x8(%rbp),%rax
movsd  0xa8(%rax),%xmm0
xorps  %xmm1,%xmm1
ucomisd %xmm1,%xmm0
jne    1336 <ho_recognize_font_1_resh+0x236>
jp     1336 <ho_recognize_font_1_resh+0x236>
jmp    134c <ho_recognize_font_1_resh+0x24c>
movsd  -0x10(%rbp),%xmm0
movsd  0xcbd(%rip),%xmm1
subsd  %xmm1,%xmm0
movsd  %xmm0,-0x10(%rbp)
mov    -0x8(%rbp),%rax
movsd  0x228(%rax),%xmm0
xorps  %xmm1,%xmm1
ucomisd %xmm1,%xmm0
jne    1370 <ho_recognize_font_1_resh+0x270>
jp     1370 <ho_recognize_font_1_resh+0x270>
jmp    1386 <ho_recognize_font_1_resh+0x286>
movsd  -0x10(%rbp),%xmm0
movsd  0xc8b(%rip),%xmm1
subsd  %xmm1,%xmm0
movsd  %xmm0,-0x10(%rbp)
mov    -0x8(%rbp),%rax
movsd  0x20(%rax),%xmm0
movsd  0xc81(%rip),%xmm1
ucomisd %xmm1,%xmm0
jbe    13b7 <ho_recognize_font_1_resh+0x2b7>
movsd  -0x10(%rbp),%xmm0
movsd  0xc5a(%rip),%xmm1
subsd  %xmm1,%xmm0
movsd  %xmm0,-0x10(%rbp)
mov    -0x8(%rbp),%rax
movsd  0xc5d(%rip),%xmm0
ucomisd 0x20(%rax),%xmm0
jbe    13e4 <ho_recognize_font_1_resh+0x2e4>
movsd  -0x10(%rbp),%xmm0
movsd  0xc2d(%rip),%xmm1
subsd  %xmm1,%xmm0
movsd  %xmm0,-0x10(%rbp)
mov    -0x8(%rbp),%rax
movsd  0xe0(%rax),%xmm0
xorps  %xmm1,%xmm1
ucomisd %xmm1,%xmm0
jne    1408 <ho_recognize_font_1_resh+0x308>
jp     1408 <ho_recognize_font_1_resh+0x308>
jmp    141e <ho_recognize_font_1_resh+0x31e>
movsd  -0x10(%rbp),%xmm0
movsd  0xbeb(%rip),%xmm1
subsd  %xmm1,%xmm0
movsd  %xmm0,-0x10(%rbp)
mov    -0x8(%rbp),%rax
movsd  0xbde(%rip),%xmm0
ucomisd 0x8(%rax),%xmm0
jbe    144b <ho_recognize_font_1_resh+0x34b>
movsd  -0x10(%rbp),%xmm0
movsd  0xbc6(%rip),%xmm1
subsd  %xmm1,%xmm0
movsd  %xmm0,-0x10(%rbp)
mov    -0x8(%rbp),%rax
movsd  0xbc1(%rip),%xmm0
ucomisd 0x10(%rax),%xmm0
jbe    1478 <ho_recognize_font_1_resh+0x378>
movsd  -0x10(%rbp),%xmm0
movsd  0xb99(%rip),%xmm1
subsd  %xmm1,%xmm0
movsd  %xmm0,-0x10(%rbp)
mov    -0x8(%rbp),%rax
movsd  0x70(%rax),%xmm0
xorps  %xmm1,%xmm1
ucomisd %xmm1,%xmm0
jne    1499 <ho_recognize_font_1_resh+0x399>
jp     1499 <ho_recognize_font_1_resh+0x399>
jmp    14af <ho_recognize_font_1_resh+0x3af>
movsd  -0x10(%rbp),%xmm0
movsd  0xb62(%rip),%xmm1
subsd  %xmm1,%xmm0
movsd  %xmm0,-0x10(%rbp)
mov    -0x8(%rbp),%rax
movsd  0xb6d(%rip),%xmm0
ucomisd 0x50(%rax),%xmm0
jbe    14dc <ho_recognize_font_1_resh+0x3dc>
movsd  -0x10(%rbp),%xmm0
movsd  0xb35(%rip),%xmm1
subsd  %xmm1,%xmm0
movsd  %xmm0,-0x10(%rbp)
mov    -0x8(%rbp),%rax
movsd  0xb40(%rip),%xmm0
ucomisd 0x40(%rax),%xmm0
jbe    1509 <ho_recognize_font_1_resh+0x409>
movsd  -0x10(%rbp),%xmm0
movsd  0xb08(%rip),%xmm1
subsd  %xmm1,%xmm0
movsd  %xmm0,-0x10(%rbp)
mov    -0x8(%rbp),%rax
movsd  0xb1b(%rip),%xmm0
ucomisd 0x8(%rax),%xmm0
ja     1536 <ho_recognize_font_1_resh+0x436>
mov    -0x8(%rbp),%rax
movsd  0xb04(%rip),%xmm0
ucomisd (%rax),%xmm0
jbe    154c <ho_recognize_font_1_resh+0x44c>
movsd  -0x10(%rbp),%xmm0
movsd  0xacd(%rip),%xmm1
subsd  %xmm1,%xmm0
movsd  %xmm0,-0x10(%rbp)
mov    -0x8(%rbp),%rax
movsd  0xae0(%rip),%xmm0
ucomisd 0x8(%rax),%xmm0
jbe    1579 <ho_recognize_font_1_resh+0x479>
movsd  -0x10(%rbp),%xmm0
movsd  0xaa0(%rip),%xmm1
subsd  %xmm1,%xmm0
movsd  %xmm0,-0x10(%rbp)
movsd  -0x10(%rbp),%xmm0
pop    %rbp
ret

x86 assembly (clang, -O2):
<ho_recognize_font_1_resh>:
xorpd  %xmm2,%xmm2
movsd  0x88(%rdi),%xmm0
cmpneqsd %xmm2,%xmm0
movsd  0xee7(%rip),%xmm3
andpd  %xmm3,%xmm0
movsd  0xb0(%rdi),%xmm4
cmpneqsd %xmm2,%xmm4
movapd %xmm4,%xmm1
andnpd %xmm0,%xmm1
addsd  %xmm3,%xmm0
andpd  %xmm0,%xmm4
orpd   %xmm1,%xmm4
ucomisd 0x98(%rdi),%xmm2
jne    114e <ho_recognize_font_1_resh+0x4e>
jp     114e <ho_recognize_font_1_resh+0x4e>
addsd  %xmm3,%xmm4
movsd  0xa0(%rdi),%xmm0
movsd  0xe0(%rdi),%xmm1
movapd %xmm4,%xmm5
addsd  %xmm3,%xmm5
movapd %xmm0,%xmm6
cmpneqsd %xmm2,%xmm6
movapd %xmm6,%xmm7
andpd  %xmm4,%xmm7
andnpd %xmm5,%xmm6
orpd   %xmm7,%xmm6
movapd %xmm1,%xmm4
cmpneqsd %xmm2,%xmm4
movapd %xmm4,%xmm5
andpd  %xmm6,%xmm5
addsd  %xmm3,%xmm6
andnpd %xmm6,%xmm4
orpd   %xmm5,%xmm4
movsd  0x120(%rdi),%xmm5
cmpneqsd %xmm2,%xmm5
movapd %xmm5,%xmm6
andnpd %xmm4,%xmm6
addsd  %xmm3,%xmm4
andpd  %xmm4,%xmm5
orpd   %xmm6,%xmm5
movsd  0xe43(%rip),%xmm4
addsd  %xmm5,%xmm4
jne    11d1 <ho_recognize_font_1_resh+0xd1>
jp     11d1 <ho_recognize_font_1_resh+0xd1>
movapd %xmm5,%xmm4
movsd  0x178(%rdi),%xmm3
ucomisd %xmm2,%xmm3
jne    11f5 <ho_recognize_font_1_resh+0xf5>
jp     11f5 <ho_recognize_font_1_resh+0xf5>
movsd  0x180(%rdi),%xmm2
xorpd  %xmm3,%xmm3
ucomisd %xmm3,%xmm2
jne    11f5 <ho_recognize_font_1_resh+0xf5>
jnp    11fd <ho_recognize_font_1_resh+0xfd>
addsd  0xe13(%rip),%xmm4
movsd  0xe03(%rip),%xmm2
movapd %xmm4,%xmm5
addsd  %xmm2,%xmm5
xorpd  %xmm3,%xmm3
cmpneqsd %xmm3,%xmm0
andpd  %xmm0,%xmm5
andnpd %xmm4,%xmm0
orpd   %xmm5,%xmm0
movsd  0xded(%rip),%xmm8
movapd %xmm0,%xmm5
addsd  %xmm8,%xmm5
movsd  0xa8(%rdi),%xmm6
cmpneqsd %xmm3,%xmm6
movapd %xmm6,%xmm7
andnpd %xmm0,%xmm7
andpd  %xmm5,%xmm6
orpd   %xmm7,%xmm6
movsd  0x228(%rdi),%xmm0
cmpneqsd %xmm3,%xmm0
movapd %xmm0,%xmm5
andnpd %xmm6,%xmm5
addsd  %xmm2,%xmm6
andpd  %xmm6,%xmm0
orpd   %xmm5,%xmm0
movsd  0x20(%rdi),%xmm5
movsd  0xda1(%rip),%xmm6
movsd  0x10(%rdi),%xmm7
cmpltsd %xmm6,%xmm7
cmpltsd %xmm5,%xmm6
movapd %xmm6,%xmm4
andnpd %xmm0,%xmm4
addsd  %xmm2,%xmm0
andpd  %xmm0,%xmm6
orpd   %xmm4,%xmm6
cmpltsd 0xd7d(%rip),%xmm5
movapd %xmm5,%xmm0
andnpd %xmm6,%xmm0
addsd  %xmm2,%xmm6
andpd  %xmm6,%xmm5
orpd   %xmm0,%xmm5
cmpneqsd %xmm3,%xmm1
movapd %xmm1,%xmm0
andnpd %xmm5,%xmm0
addsd  %xmm8,%xmm5
andpd  %xmm5,%xmm1
orpd   %xmm0,%xmm1
movsd  0x8(%rdi),%xmm0
movapd %xmm1,%xmm4
addsd  %xmm2,%xmm4
movapd %xmm0,%xmm5
cmpltsd 0xd3d(%rip),%xmm5
movapd %xmm5,%xmm6
andnpd %xmm1,%xmm6
andpd  %xmm4,%xmm5
orpd   %xmm6,%xmm5
movapd %xmm7,%xmm1
andnpd %xmm5,%xmm1
addsd  %xmm2,%xmm5
andpd  %xmm5,%xmm7
orpd   %xmm1,%xmm7
cmpneqsd 0x70(%rdi),%xmm3
movapd %xmm3,%xmm1
andnpd %xmm7,%xmm1
addsd  %xmm2,%xmm7
andpd  %xmm7,%xmm3
orpd   %xmm1,%xmm3
movsd  0x50(%rdi),%xmm4
movsd  0xcfa(%rip),%xmm5
cmpltsd %xmm5,%xmm4
movapd %xmm4,%xmm1
andnpd %xmm3,%xmm1
addsd  %xmm2,%xmm3
andpd  %xmm3,%xmm4
orpd   %xmm1,%xmm4
movsd  0x40(%rdi),%xmm1
cmpltsd %xmm5,%xmm1
movapd %xmm1,%xmm3
andnpd %xmm4,%xmm3
addsd  %xmm2,%xmm4
andpd  %xmm4,%xmm1
orpd   %xmm3,%xmm1
movsd  0xcc3(%rip),%xmm2
ucomisd %xmm0,%xmm2
ja     1389 <ho_recognize_font_1_resh+0x289>
ucomisd (%rdi),%xmm2
jbe    1391 <ho_recognize_font_1_resh+0x291>
addsd  0xc7f(%rip),%xmm1
movsd  0xc77(%rip),%xmm2
cmpltsd 0xca6(%rip),%xmm0
addsd  %xmm1,%xmm2
andpd  %xmm0,%xmm2
andnpd %xmm1,%xmm0
orpd   %xmm2,%xmm0
ret

LLVM IR (-O0):
define double @ho_recognize_font_1_resh(double* %0) {
%2 = alloca double*
%3 = alloca double
store double* %0, double** %2
store double 0.000000e+00, double* %3
%4 = load double*, double** %2
%5 = getelementptr inbounds double, double* %4, i64 17
%6 = load double, double* %5
%7 = fcmp une double %6, 0.000000e+00
br i1 %7, label %8, label %11
8: ; preds = %1
%9 = load double, double* %3
%10 = fadd double %9, 1.000000e-01
store double %10, double* %3
br label %11
11: ; preds = %8, %1
%12 = load double*, double** %2
%13 = getelementptr inbounds double, double* %12, i64 22
%14 = load double, double* %13
%15 = fcmp une double %14, 0.000000e+00
br i1 %15, label %16, label %19
16: ; preds = %11
%17 = load double, double* %3
%18 = fadd double %17, 1.000000e-01
store double %18, double* %3
br label %19
19: ; preds = %16, %11
%20 = load double*, double** %2
%21 = getelementptr inbounds double, double* %20, i64 19
%22 = load double, double* %21
%23 = fcmp une double %22, 0.000000e+00
br i1 %23, label %27, label %24
24: ; preds = %19
%25 = load double, double* %3
%26 = fadd double %25, 1.000000e-01
store double %26, double* %3
br label %27
27: ; preds = %24, %19
%28 = load double*, double** %2
%29 = getelementptr inbounds double, double* %28, i64 20
%30 = load double, double* %29
%31 = fcmp une double %30, 0.000000e+00
br i1 %31, label %35, label %32
32: ; preds = %27
%33 = load double, double* %3
%34 = fadd double %33, 1.000000e-01
store double %34, double* %3
br label %35
35: ; preds = %32, %27
%36 = load double*, double** %2
%37 = getelementptr inbounds double, double* %36, i64 28
%38 = load double, double* %37
%39 = fcmp une double %38, 0.000000e+00
br i1 %39, label %43, label %40
40: ; preds = %35
%41 = load double, double* %3
%42 = fadd double %41, 1.000000e-01
store double %42, double* %3
br label %43
43: ; preds = %40, %35
%44 = load double*, double** %2
%45 = getelementptr inbounds double, double* %44, i64 36
%46 = load double, double* %45
%47 = fcmp une double %46, 0.000000e+00
br i1 %47, label %48, label %51
48: ; preds = %43
%49 = load double, double* %3
%50 = fadd double %49, 1.000000e-01
store double %50, double* %3
br label %51
51: ; preds = %48, %43
%52 = load double*, double** %2
%53 = getelementptr inbounds double, double* %52, i64 19
%54 = load double, double* %53
%55 = fcmp une double %54, 0.000000e+00
br i1 %55, label %56, label %59
56: ; preds = %51
%57 = load double, double* %3
%58 = fsub double %57, 3.000000e-01
store double %58, double* %3
br label %59
59: ; preds = %56, %51
%60 = load double*, double** %2
%61 = getelementptr inbounds double, double* %60, i64 47
%62 = load double, double* %61
%63 = fcmp une double %62, 0.000000e+00
br i1 %63, label %69, label %64
64: ; preds = %59
%65 = load double*, double** %2
%66 = getelementptr inbounds double, double* %65, i64 48
%67 = load double, double* %66
%68 = fcmp une double %67, 0.000000e+00
br i1 %68, label %69, label %72
69: ; preds = %64, %59
%70 = load double, double* %3
%71 = fsub double %70, 2.000000e-01
store double %71, double* %3
br label %72
72: ; preds = %69, %64
%73 = load double*, double** %2
%74 = getelementptr inbounds double, double* %73, i64 20
%75 = load double, double* %74
%76 = fcmp une double %75, 0.000000e+00
br i1 %76, label %77, label %80
77: ; preds = %72
%78 = load double, double* %3
%79 = fsub double %78, 3.000000e-01
store double %79, double* %3
br label %80
80: ; preds = %77, %72
%81 = load double*, double** %2
%82 = getelementptr inbounds double, double* %81, i64 21
%83 = load double, double* %82
%84 = fcmp une double %83, 0.000000e+00
br i1 %84, label %85, label %88
85: ; preds = %80
%86 = load double, double* %3
%87 = fsub double %86, 1.000000e-01
store double %87, double* %3
br label %88
88: ; preds = %85, %80
%89 = load double*, double** %2
%90 = getelementptr inbounds double, double* %89, i64 69
%91 = load double, double* %90
%92 = fcmp une double %91, 0.000000e+00
br i1 %92, label %93, label %96
93: ; preds = %88
%94 = load double, double* %3
%95 = fsub double %94, 3.000000e-01
store double %95, double* %3
br label %96
96: ; preds = %93, %88
%97 = load double*, double** %2
%98 = getelementptr inbounds double, double* %97, i64 4
%99 = load double, double* %98
%100 = fcmp ogt double %99, 6.000000e-01
br i1 %100, label %101, label %104
101: ; preds = %96
%102 = load double, double* %3
%103 = fsub double %102, 3.000000e-01
store double %103, double* %3
br label %104
104: ; preds = %101, %96
%105 = load double*, double** %2
%106 = getelementptr inbounds double, double* %105, i64 4
%107 = load double, double* %106
%108 = fcmp olt double %107, 4.500000e-01
br i1 %108, label %109, label %112
109: ; preds = %104
%110 = load double, double* %3
%111 = fsub double %110, 3.000000e-01
store double %111, double* %3
br label %112
112: ; preds = %109, %104
%113 = load double*, double** %2
%114 = getelementptr inbounds double, double* %113, i64 28
%115 = load double, double* %114
%116 = fcmp une double %115, 0.000000e+00
br i1 %116, label %117, label %120
117: ; preds = %112
%118 = load double, double* %3
%119 = fsub double %118, 1.000000e-01
store double %119, double* %3
br label %120
120: ; preds = %117, %112
%121 = load double*, double** %2
%122 = getelementptr inbounds double, double* %121, i64 1
%123 = load double, double* %122
%124 = fcmp olt double %123, 3.000000e-01
br i1 %124, label %125, label %128
125: ; preds = %120
%126 = load double, double* %3
%127 = fsub double %126, 3.000000e-01
store double %127, double* %3
br label %128
128: ; preds = %125, %120
%129 = load double*, double** %2
%130 = getelementptr inbounds double, double* %129, i64 2
%131 = load double, double* %130
%132 = fcmp olt double %131, 6.000000e-01
br i1 %132, label %133, label %136
133: ; preds = %128
%134 = load double, double* %3
%135 = fsub double %134, 3.000000e-01
store double %135, double* %3
br label %136
136: ; preds = %133, %128
%137 = load double*, double** %2
%138 = getelementptr inbounds double, double* %137, i64 14
%139 = load double, double* %138
%140 = fcmp une double %139, 0.000000e+00
br i1 %140, label %141, label %144
141: ; preds = %136
%142 = load double, double* %3
%143 = fsub double %142, 3.000000e-01
store double %143, double* %3
br label %144
144: ; preds = %141, %136
%145 = load double*, double** %2
%146 = getelementptr inbounds double, double* %145, i64 10
%147 = load double, double* %146
%148 = fcmp olt double %147, 9.000000e-01
br i1 %148, label %149, label %152
149: ; preds = %144
%150 = load double, double* %3
%151 = fsub double %150, 3.000000e-01
store double %151, double* %3
br label %152
152: ; preds = %149, %144
%153 = load double*, double** %2
%154 = getelementptr inbounds double, double* %153, i64 8
%155 = load double, double* %154
%156 = fcmp olt double %155, 9.000000e-01
br i1 %156, label %157, label %160
157: ; preds = %152
%158 = load double, double* %3
%159 = fsub double %158, 3.000000e-01
store double %159, double* %3
br label %160
160: ; preds = %157, %152
%161 = load double*, double** %2
%162 = getelementptr inbounds double, double* %161, i64 1
%163 = load double, double* %162
%164 = fcmp olt double %163, 3.500000e-01
br i1 %164, label %170, label %165
165: ; preds = %160
%166 = load double*, double** %2
%167 = getelementptr inbounds double, double* %166, i64 0
%168 = load double, double* %167
%169 = fcmp olt double %168, 3.500000e-01
br i1 %169, label %170, label %173
170: ; preds = %165, %160
%171 = load double, double* %3
%172 = fsub double %171, 2.000000e-01
store double %172, double* %3
br label %173
173: ; preds = %170, %165
%174 = load double*, double** %2
%175 = getelementptr inbounds double, double* %174, i64 1
%176 = load double, double* %175
%177 = fcmp olt double %176, 2.500000e-01
br i1 %177, label %178, label %181
178: ; preds = %173
%179 = load double, double* %3
%180 = fsub double %179, 2.000000e-01
store double %180, double* %3
br label %181
181: ; preds = %178, %173
%182 = load double, double* %3
ret double %182
}

LLVM IR (-O2):
define double @ho_recognize_font_1_resh(double* nocapture %0) {
%2 = getelementptr inbounds double, double* %0, i64 17
%3 = load double, double* %2
%4 = fcmp une double %3, 0.000000e+00
%5 = select i1 %4, double 1.000000e-01, double 0.000000e+00
%6 = getelementptr inbounds double, double* %0, i64 22
%7 = load double, double* %6
%8 = fcmp une double %7, 0.000000e+00
%9 = fadd double %5, 1.000000e-01
%10 = select i1 %8, double %9, double %5
%11 = getelementptr inbounds double, double* %0, i64 19
%12 = load double, double* %11
%13 = fcmp une double %12, 0.000000e+00
%14 = fadd double %10, 1.000000e-01
%15 = select i1 %13, double %10, double %14
%16 = getelementptr inbounds double, double* %0, i64 20
%17 = load double, double* %16
%18 = fcmp une double %17, 0.000000e+00
%19 = fadd double %15, 1.000000e-01
%20 = select i1 %18, double %15, double %19
%21 = getelementptr inbounds double, double* %0, i64 28
%22 = load double, double* %21
%23 = fcmp une double %22, 0.000000e+00
%24 = fadd double %20, 1.000000e-01
%25 = select i1 %23, double %20, double %24
%26 = getelementptr inbounds double, double* %0, i64 36
%27 = load double, double* %26
%28 = fcmp une double %27, 0.000000e+00
%29 = fadd double %25, 1.000000e-01
%30 = select i1 %28, double %29, double %25
%31 = fadd double %30, -3.000000e-01
%32 = select i1 %13, double %31, double %30
%33 = getelementptr inbounds double, double* %0, i64 47
%34 = load double, double* %33
%35 = fcmp une double %34, 0.000000e+00
br i1 %35, label %40, label %36
36: ; preds = %1
%37 = getelementptr inbounds double, double* %0, i64 48
%38 = load double, double* %37
%39 = fcmp une double %38, 0.000000e+00
br i1 %39, label %40, label %42
40: ; preds = %36, %1
%41 = fadd double %32, -2.000000e-01
br label %42
42: ; preds = %40, %36
%43 = phi double [ %41, %40 ], [ %32, %36 ]
%44 = fadd double %43, -3.000000e-01
%45 = select i1 %18, double %44, double %43
%46 = getelementptr inbounds double, double* %0, i64 21
%47 = load double, double* %46
%48 = fcmp une double %47, 0.000000e+00
%49 = fadd double %45, -1.000000e-01
%50 = select i1 %48, double %49, double %45
%51 = getelementptr inbounds double, double* %0, i64 69
%52 = load double, double* %51
%53 = fcmp une double %52, 0.000000e+00
%54 = fadd double %50, -3.000000e-01
%55 = select i1 %53, double %54, double %50
%56 = getelementptr inbounds double, double* %0, i64 4
%57 = load double, double* %56
%58 = fcmp ogt double %57, 6.000000e-01
%59 = fadd double %55, -3.000000e-01
%60 = select i1 %58, double %59, double %55
%61 = fcmp olt double %57, 4.500000e-01
%62 = fadd double %60, -3.000000e-01
%63 = select i1 %61, double %62, double %60
%64 = fadd double %63, -1.000000e-01
%65 = select i1 %23, double %64, double %63
%66 = getelementptr inbounds double, double* %0, i64 1
%67 = load double, double* %66
%68 = fcmp olt double %67, 3.000000e-01
%69 = fadd double %65, -3.000000e-01
%70 = select i1 %68, double %69, double %65
%71 = getelementptr inbounds double, double* %0, i64 2
%72 = load double, double* %71
%73 = fcmp olt double %72, 6.000000e-01
%74 = fadd double %70, -3.000000e-01
%75 = select i1 %73, double %74, double %70
%76 = getelementptr inbounds double, double* %0, i64 14
%77 = load double, double* %76
%78 = fcmp une double %77, 0.000000e+00
%79 = fadd double %75, -3.000000e-01
%80 = select i1 %78, double %79, double %75
%81 = getelementptr inbounds double, double* %0, i64 10
%82 = load double, double* %81
%83 = fcmp olt double %82, 9.000000e-01
%84 = fadd double %80, -3.000000e-01
%85 = select i1 %83, double %84, double %80
%86 = getelementptr inbounds double, double* %0, i64 8
%87 = load double, double* %86
%88 = fcmp olt double %87, 9.000000e-01
%89 = fadd double %85, -3.000000e-01
%90 = select i1 %88, double %89, double %85
%91 = fcmp olt double %67, 3.500000e-01
br i1 %91, label %95, label %92
92: ; preds = %42
%93 = load double, double* %0
%94 = fcmp olt double %93, 3.500000e-01
br i1 %94, label %95, label %97
95: ; preds = %92, %42
%96 = fadd double %90, -2.000000e-01
br label %97
97: ; preds = %95, %92
%98 = phi double [ %96, %95 ], [ %90, %92 ]
%99 = fcmp olt double %67, 2.500000e-01
%100 = fadd double %98, -2.000000e-01
%101 = select i1 %99, double %100, double %98
ret double %101
}