double ho_recognize_font_1_pey_sofit(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[36]))
    return_value += 0.1;
  if ((array_in[4]) < 0.47)
    return_value += 0.2;
  if ((!(array_in[49]) && !(array_in[50])) || (array_in[58]))
    return_value += 0.2;
  if ((array_in[0]) > 0.51)
    return_value += 0.1;
  if ((array_in[13]))
    return_value += 0.1;
  if ((array_in[19]))
    return_value -= 0.3;
  if ((array_in[20]))
    return_value -= 0.3;
  if ((array_in[21]))
    return_value -= 0.1;
  if ((array_in[8]) == 1.0)
    return_value -= 0.2;
  if ((array_in[69]))
    return_value -= 0.3;
  if ((array_in[4]) > 0.50)
    return_value -= 0.3;
  if ((array_in[1]) < 0.3)
    return_value -= 0.3;
  if ((array_in[49]) && !(array_in[58]))
    return_value -= 0.3;
  if ((array_in[0]) < 0.5)
    return_value -= 0.3;
  if ((array_in[4]) > 0.50)
    return_value -= 0.2;
  if ((array_in[2]) < 0.45)
    return_value -= 0.3;
  if ((array_in[10]) < 0.75)
    return_value -= 0.3;
  if (!(array_in[57]))
    return_value -= 0.2;
  if ((array_in[56]))
    return_value -= 0.2;
  return return_value;
}


x86 assembly (clang, -O0):
<ho_recognize_font_1_pey_sofit>:
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_pey_sofit+0x34>
jp     1134 <ho_recognize_font_1_pey_sofit+0x34>
jmp    1146 <ho_recognize_font_1_pey_sofit+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_pey_sofit+0x6a>
jp     116a <ho_recognize_font_1_pey_sofit+0x6a>
jmp    117c <ho_recognize_font_1_pey_sofit+0x7c>
movsd  0xe8e(%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    11a0 <ho_recognize_font_1_pey_sofit+0xa0>
jp     11a0 <ho_recognize_font_1_pey_sofit+0xa0>
jmp    11b2 <ho_recognize_font_1_pey_sofit+0xb2>
movsd  0xe58(%rip),%xmm0
addsd  -0x10(%rbp),%xmm0
movsd  %xmm0,-0x10(%rbp)
mov    -0x8(%rbp),%rax
movsd  0xe4a(%rip),%xmm0
ucomisd 0x20(%rax),%xmm0
jbe    11db <ho_recognize_font_1_pey_sofit+0xdb>
movsd  0xe3f(%rip),%xmm0
addsd  -0x10(%rbp),%xmm0
movsd  %xmm0,-0x10(%rbp)
mov    -0x8(%rbp),%rax
movsd  0x188(%rax),%xmm0
xorps  %xmm1,%xmm1
ucomisd %xmm1,%xmm0
jne    121e <ho_recognize_font_1_pey_sofit+0x11e>
jp     121e <ho_recognize_font_1_pey_sofit+0x11e>
mov    -0x8(%rbp),%rax
movsd  0x190(%rax),%xmm0
xorps  %xmm1,%xmm1
ucomisd %xmm1,%xmm0
jne    121e <ho_recognize_font_1_pey_sofit+0x11e>
jp     121e <ho_recognize_font_1_pey_sofit+0x11e>
jmp    1242 <ho_recognize_font_1_pey_sofit+0x142>
mov    -0x8(%rbp),%rax
movsd  0x1d0(%rax),%xmm0
xorps  %xmm1,%xmm1
ucomisd %xmm1,%xmm0
jne    1242 <ho_recognize_font_1_pey_sofit+0x142>
jp     1242 <ho_recognize_font_1_pey_sofit+0x142>
jmp    1254 <ho_recognize_font_1_pey_sofit+0x154>
movsd  0xdc6(%rip),%xmm0
addsd  -0x10(%rbp),%xmm0
movsd  %xmm0,-0x10(%rbp)
mov    -0x8(%rbp),%rax
movsd  (%rax),%xmm0
movsd  0xdb4(%rip),%xmm1
ucomisd %xmm1,%xmm0
jbe    1280 <ho_recognize_font_1_pey_sofit+0x180>
movsd  0xd8a(%rip),%xmm0
addsd  -0x10(%rbp),%xmm0
movsd  %xmm0,-0x10(%rbp)
mov    -0x8(%rbp),%rax
movsd  0x68(%rax),%xmm0
xorps  %xmm1,%xmm1
ucomisd %xmm1,%xmm0
jne    12a1 <ho_recognize_font_1_pey_sofit+0x1a1>
jp     12a1 <ho_recognize_font_1_pey_sofit+0x1a1>
jmp    12b3 <ho_recognize_font_1_pey_sofit+0x1b3>
movsd  0xd57(%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    12d7 <ho_recognize_font_1_pey_sofit+0x1d7>
jp     12d7 <ho_recognize_font_1_pey_sofit+0x1d7>
jmp    12ed <ho_recognize_font_1_pey_sofit+0x1ed>
movsd  -0x10(%rbp),%xmm0
movsd  0xd3c(%rip),%xmm1
subsd  %xmm1,%xmm0
movsd  %xmm0,-0x10(%rbp)
mov    -0x8(%rbp),%rax
movsd  0xa0(%rax),%xmm0
xorps  %xmm1,%xmm1
ucomisd %xmm1,%xmm0
jne    1311 <ho_recognize_font_1_pey_sofit+0x211>
jp     1311 <ho_recognize_font_1_pey_sofit+0x211>
jmp    1327 <ho_recognize_font_1_pey_sofit+0x227>
movsd  -0x10(%rbp),%xmm0
movsd  0xd02(%rip),%xmm1
subsd  %xmm1,%xmm0
movsd  %xmm0,-0x10(%rbp)
mov    -0x8(%rbp),%rax
movsd  0xa8(%rax),%xmm0
xorps  %xmm1,%xmm1
ucomisd %xmm1,%xmm0
jne    134b <ho_recognize_font_1_pey_sofit+0x24b>
jp     134b <ho_recognize_font_1_pey_sofit+0x24b>
jmp    1361 <ho_recognize_font_1_pey_sofit+0x261>
movsd  -0x10(%rbp),%xmm0
movsd  0xca8(%rip),%xmm1
subsd  %xmm1,%xmm0
movsd  %xmm0,-0x10(%rbp)
mov    -0x8(%rbp),%rax
movsd  0x40(%rax),%xmm0
movsd  0xcb6(%rip),%xmm1
ucomisd %xmm1,%xmm0
jne    1398 <ho_recognize_font_1_pey_sofit+0x298>
jp     1398 <ho_recognize_font_1_pey_sofit+0x298>
movsd  -0x10(%rbp),%xmm0
movsd  0xc81(%rip),%xmm1
subsd  %xmm1,%xmm0
movsd  %xmm0,-0x10(%rbp)
mov    -0x8(%rbp),%rax
movsd  0x228(%rax),%xmm0
xorps  %xmm1,%xmm1
ucomisd %xmm1,%xmm0
jne    13bc <ho_recognize_font_1_pey_sofit+0x2bc>
jp     13bc <ho_recognize_font_1_pey_sofit+0x2bc>
jmp    13d2 <ho_recognize_font_1_pey_sofit+0x2d2>
movsd  -0x10(%rbp),%xmm0
movsd  0xc57(%rip),%xmm1
subsd  %xmm1,%xmm0
movsd  %xmm0,-0x10(%rbp)
mov    -0x8(%rbp),%rax
movsd  0x20(%rax),%xmm0
movsd  0xc4d(%rip),%xmm1
ucomisd %xmm1,%xmm0
jbe    1403 <ho_recognize_font_1_pey_sofit+0x303>
movsd  -0x10(%rbp),%xmm0
movsd  0xc26(%rip),%xmm1
subsd  %xmm1,%xmm0
movsd  %xmm0,-0x10(%rbp)
mov    -0x8(%rbp),%rax
movsd  0xc11(%rip),%xmm0
ucomisd 0x8(%rax),%xmm0
jbe    1430 <ho_recognize_font_1_pey_sofit+0x330>
movsd  -0x10(%rbp),%xmm0
movsd  0xbf9(%rip),%xmm1
subsd  %xmm1,%xmm0
movsd  %xmm0,-0x10(%rbp)
mov    -0x8(%rbp),%rax
movsd  0x188(%rax),%xmm0
xorps  %xmm1,%xmm1
ucomisd %xmm1,%xmm0
jne    1454 <ho_recognize_font_1_pey_sofit+0x354>
jp     1454 <ho_recognize_font_1_pey_sofit+0x354>
jmp    1489 <ho_recognize_font_1_pey_sofit+0x389>
mov    -0x8(%rbp),%rax
movsd  0x1d0(%rax),%xmm0
xorps  %xmm1,%xmm1
ucomisd %xmm1,%xmm0
jne    1489 <ho_recognize_font_1_pey_sofit+0x389>
jp     1489 <ho_recognize_font_1_pey_sofit+0x389>
movsd  -0x10(%rbp),%xmm0
movsd  0xba0(%rip),%xmm1
subsd  %xmm1,%xmm0
movsd  %xmm0,-0x10(%rbp)
mov    -0x8(%rbp),%rax
movsd  0xb9b(%rip),%xmm0
ucomisd (%rax),%xmm0
jbe    14b5 <ho_recognize_font_1_pey_sofit+0x3b5>
movsd  -0x10(%rbp),%xmm0
movsd  0xb74(%rip),%xmm1
subsd  %xmm1,%xmm0
movsd  %xmm0,-0x10(%rbp)
mov    -0x8(%rbp),%rax
movsd  0x20(%rax),%xmm0
movsd  0xb6a(%rip),%xmm1
ucomisd %xmm1,%xmm0
jbe    14e6 <ho_recognize_font_1_pey_sofit+0x3e6>
movsd  -0x10(%rbp),%xmm0
movsd  0xb33(%rip),%xmm1
subsd  %xmm1,%xmm0
movsd  %xmm0,-0x10(%rbp)
mov    -0x8(%rbp),%rax
movsd  0xb46(%rip),%xmm0
ucomisd 0x10(%rax),%xmm0
jbe    1513 <ho_recognize_font_1_pey_sofit+0x413>
movsd  -0x10(%rbp),%xmm0
movsd  0xb16(%rip),%xmm1
subsd  %xmm1,%xmm0
movsd  %xmm0,-0x10(%rbp)
mov    -0x8(%rbp),%rax
movsd  0xb21(%rip),%xmm0
ucomisd 0x50(%rax),%xmm0
jbe    1540 <ho_recognize_font_1_pey_sofit+0x440>
movsd  -0x10(%rbp),%xmm0
movsd  0xae9(%rip),%xmm1
subsd  %xmm1,%xmm0
movsd  %xmm0,-0x10(%rbp)
mov    -0x8(%rbp),%rax
movsd  0x1c8(%rax),%xmm0
xorps  %xmm1,%xmm1
ucomisd %xmm1,%xmm0
jne    1575 <ho_recognize_font_1_pey_sofit+0x475>
jp     1575 <ho_recognize_font_1_pey_sofit+0x475>
movsd  -0x10(%rbp),%xmm0
movsd  0xaa4(%rip),%xmm1
subsd  %xmm1,%xmm0
movsd  %xmm0,-0x10(%rbp)
mov    -0x8(%rbp),%rax
movsd  0x1c0(%rax),%xmm0
xorps  %xmm1,%xmm1
ucomisd %xmm1,%xmm0
jne    1599 <ho_recognize_font_1_pey_sofit+0x499>
jp     1599 <ho_recognize_font_1_pey_sofit+0x499>
jmp    15af <ho_recognize_font_1_pey_sofit+0x4af>
movsd  -0x10(%rbp),%xmm0
movsd  0xa6a(%rip),%xmm1
subsd  %xmm1,%xmm0
movsd  %xmm0,-0x10(%rbp)
movsd  -0x10(%rbp),%xmm0
pop    %rbp
ret

x86 assembly (clang, -O2):
<ho_recognize_font_1_pey_sofit>:
xorpd  %xmm0,%xmm0
movsd  0x88(%rdi),%xmm1
cmpneqsd %xmm0,%xmm1
movsd  0xee7(%rip),%xmm2
andpd  %xmm2,%xmm1
movsd  0xb0(%rdi),%xmm3
cmpneqsd %xmm0,%xmm3
movapd %xmm3,%xmm4
andnpd %xmm1,%xmm4
addsd  %xmm2,%xmm1
andpd  %xmm1,%xmm3
orpd   %xmm4,%xmm3
movsd  0x120(%rdi),%xmm6
cmpneqsd %xmm0,%xmm6
movapd %xmm6,%xmm1
andnpd %xmm3,%xmm1
addsd  %xmm2,%xmm3
andpd  %xmm3,%xmm6
orpd   %xmm1,%xmm6
movsd  0x20(%rdi),%xmm4
movapd %xmm4,%xmm5
cmpltsd 0xe9f(%rip),%xmm5
movsd  0x188(%rdi),%xmm1
movapd %xmm5,%xmm3
andnpd %xmm6,%xmm3
addsd  0xe7f(%rip),%xmm6
andpd  %xmm6,%xmm5
orpd   %xmm3,%xmm5
ucomisd %xmm0,%xmm1
jne    11a9 <ho_recognize_font_1_pey_sofit+0xa9>
jp     11a9 <ho_recognize_font_1_pey_sofit+0xa9>
movsd  0x190(%rdi),%xmm3
ucomisd %xmm0,%xmm3
jne    11a9 <ho_recognize_font_1_pey_sofit+0xa9>
jnp    11b9 <ho_recognize_font_1_pey_sofit+0xb9>
movsd  0x1d0(%rdi),%xmm3
ucomisd %xmm0,%xmm3
jne    11b9 <ho_recognize_font_1_pey_sofit+0xb9>
jnp    11c1 <ho_recognize_font_1_pey_sofit+0xc1>
addsd  0xe47(%rip),%xmm5
xorpd  %xmm0,%xmm0
ucomisd %xmm0,%xmm1
movsd  (%rdi),%xmm1
movsd  0x8(%rdi),%xmm3
movapd %xmm5,%xmm6
addsd  %xmm2,%xmm6
movsd  0xe36(%rip),%xmm7
cmpltsd %xmm1,%xmm7
andpd  %xmm7,%xmm6
andnpd %xmm5,%xmm7
orpd   %xmm6,%xmm7
movsd  0x68(%rdi),%xmm5
cmpneqsd %xmm0,%xmm5
movapd %xmm5,%xmm6
andnpd %xmm7,%xmm6
addsd  %xmm2,%xmm7
andpd  %xmm7,%xmm5
orpd   %xmm6,%xmm5
movsd  0xe07(%rip),%xmm2
movsd  0x98(%rdi),%xmm6
cmpneqsd %xmm0,%xmm6
movapd %xmm6,%xmm7
andnpd %xmm5,%xmm7
addsd  %xmm2,%xmm5
andpd  %xmm5,%xmm6
orpd   %xmm7,%xmm6
movsd  0xa0(%rdi),%xmm5
cmpneqsd %xmm0,%xmm5
movapd %xmm5,%xmm7
andnpd %xmm6,%xmm7
addsd  %xmm2,%xmm6
andpd  %xmm6,%xmm5
orpd   %xmm7,%xmm5
movsd  0xa8(%rdi),%xmm6
cmpneqsd %xmm0,%xmm6
movapd %xmm6,%xmm7
andnpd %xmm5,%xmm7
addsd  0xdb0(%rip),%xmm5
andpd  %xmm5,%xmm6
movsd  0xdb4(%rip),%xmm5
cmpeqsd 0x40(%rdi),%xmm5
orpd   %xmm7,%xmm6
movapd %xmm5,%xmm7
andnpd %xmm6,%xmm7
addsd  0xd92(%rip),%xmm6
andpd  %xmm6,%xmm5
orpd   %xmm7,%xmm5
movsd  0x228(%rdi),%xmm7
cmpneqsd %xmm0,%xmm7
movapd %xmm7,%xmm6
andnpd %xmm5,%xmm6
addsd  %xmm2,%xmm5
andpd  %xmm5,%xmm7
orpd   %xmm6,%xmm7
movsd  0xd71(%rip),%xmm6
movapd %xmm6,%xmm5
cmpltsd %xmm4,%xmm5
movapd %xmm5,%xmm4
andnpd %xmm7,%xmm4
addsd  %xmm2,%xmm7
andpd  %xmm5,%xmm7
orpd   %xmm4,%xmm7
cmpltsd 0xd53(%rip),%xmm3
movapd %xmm3,%xmm4
andnpd %xmm7,%xmm4
addsd  %xmm2,%xmm7
andpd  %xmm7,%xmm3
orpd   %xmm4,%xmm3
jne    130d <ho_recognize_font_1_pey_sofit+0x20d>
jnp    1325 <ho_recognize_font_1_pey_sofit+0x225>
movsd  0x1d0(%rdi),%xmm4
ucomisd %xmm0,%xmm4
jne    1325 <ho_recognize_font_1_pey_sofit+0x225>
jp     1325 <ho_recognize_font_1_pey_sofit+0x225>
addsd  0xcfb(%rip),%xmm3
movapd %xmm3,%xmm4
addsd  %xmm2,%xmm4
cmpltsd %xmm6,%xmm1
andpd  %xmm1,%xmm4
andnpd %xmm3,%xmm1
orpd   %xmm4,%xmm1
movsd  0xcea(%rip),%xmm3
movapd %xmm1,%xmm4
addsd  %xmm3,%xmm4
movapd %xmm5,%xmm6
andnpd %xmm1,%xmm6
andpd  %xmm5,%xmm4
movsd  0x10(%rdi),%xmm1
cmpltsd 0xce8(%rip),%xmm1
orpd   %xmm6,%xmm4
movapd %xmm1,%xmm5
andnpd %xmm4,%xmm5
addsd  %xmm2,%xmm4
movsd  0x50(%rdi),%xmm6
andpd  %xmm4,%xmm1
orpd   %xmm5,%xmm1
cmpltsd 0xcca(%rip),%xmm6
movapd %xmm6,%xmm4
andnpd %xmm1,%xmm4
addsd  %xmm2,%xmm1
andpd  %xmm1,%xmm6
orpd   %xmm4,%xmm6
movsd  0x1c8(%rdi),%xmm1
cmpneqsd %xmm0,%xmm1
movapd %xmm1,%xmm2
andpd  %xmm6,%xmm2
addsd  %xmm3,%xmm6
andnpd %xmm6,%xmm1
orpd   %xmm2,%xmm1
cmpneqsd 0x1c0(%rdi),%xmm0
movapd %xmm0,%xmm2
andnpd %xmm1,%xmm2
addsd  %xmm3,%xmm1
andpd  %xmm1,%xmm0
orpd   %xmm2,%xmm0
ret

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

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