int get_alphabetic_length(int n) {
  int i, k, exp, len = 0, add_and = 0;
  printf("n: %d, len: ", n);
  if (n == 11 || n == 12)
    return 6;
  if (n == 15 || n == 16)
    return 7;
  if (n == 13 || n == 14 || n == 18 || n == 19)
    return 8;
  if (n == 17)
    return 9;
  if (n == 111 || n == 112)
    return 6 + 7 + 3 + 3;
  if (n == 115 || n == 116)
    return 7 + 7 + 3 + 3;
  if (n == 113 || n == 114 || n == 118 || n == 119)
    return 8 + 7 + 3 + 3;
  if (n == 117)
    return 9 + 7 + 3 + 3;
  if (n == 211 || n == 212)
    return 6 + 7 + 3 + 3;
  if (n == 215 || n == 216)
    return 7 + 7 + 3 + 3;
  if (n == 213 || n == 214 || n == 218 || n == 219)
    return 8 + 7 + 3 + 3;
  if (n == 217)
    return 9 + 7 + 3 + 3;
  if (n == 311 || n == 312)
    return 6 + 7 + 3 + 5;
  if (n == 315 || n == 316)
    return 7 + 7 + 3 + 5;
  if (n == 313 || n == 314 || n == 318 || n == 319)
    return 8 + 7 + 3 + 5;
  if (n == 317)
    return 9 + 7 + 3 + 5;
  if (n == 411 || n == 412)
    return 6 + 7 + 3 + 4;
  if (n == 415 || n == 416)
    return 7 + 7 + 3 + 4;
  if (n == 413 || n == 414 || n == 418 || n == 419)
    return 8 + 7 + 3 + 4;
  if (n == 417)
    return 9 + 7 + 3 + 4;
  if (n == 511 || n == 512)
    return 6 + 7 + 3 + 4;
  if (n == 515 || n == 516)
    return 7 + 7 + 3 + 4;
  if (n == 513 || n == 514 || n == 518 || n == 519)
    return 8 + 7 + 3 + 4;
  if (n == 517)
    return 9 + 7 + 3 + 4;
  if (n == 611 || n == 612)
    return 6 + 7 + 3 + 3;
  if (n == 615 || n == 616)
    return 7 + 7 + 3 + 3;
  if (n == 613 || n == 614 || n == 618 || n == 619)
    return 8 + 7 + 3 + 3;
  if (n == 617)
    return 9 + 7 + 3 + 3;
  if (n == 711 || n == 712)
    return 6 + 7 + 3 + 5;
  if (n == 715 || n == 716)
    return 7 + 7 + 3 + 5;
  if (n == 713 || n == 714 || n == 718 || n == 719)
    return 8 + 7 + 3 + 5;
  if (n == 717)
    return 9 + 7 + 3 + 5;
  if (n == 811 || n == 812)
    return 6 + 7 + 3 + 5;
  if (n == 815 || n == 816)
    return 7 + 7 + 3 + 5;
  if (n == 813 || n == 814 || n == 818 || n == 819)
    return 8 + 7 + 3 + 5;
  if (n == 817)
    return 9 + 7 + 3 + 5;
  if (n == 911 || n == 912)
    return 6 + 7 + 3 + 4;
  if (n == 915 || n == 916)
    return 7 + 7 + 3 + 4;
  if (n == 913 || n == 914 || n == 918 || n == 919)
    return 8 + 7 + 3 + 4;
  if (n == 917)
    return 9 + 7 + 3 + 4;
  for (i = 0;; i++) {
    exp = pow(10, i);
    if (exp > n)
      break;
    k = n % (int)pow(10, i + 1) - n % exp;
    if (k < 100 && k > 0)
      add_and = 1;
    if (k == 1 || k == 2 || k == 6 || k == 10)
      len += 3;
    if (k == 4 || k == 5 || k == 9)
      len += 4;
    if (k == 3 || k == 7 || k == 8 || k == 40 || k == 50 || k == 60)
      len += 5;
    if (k == 20 || k == 30 || k == 80 || k == 90)
      len += 6;
    if (k == 70)
      len += 7;
    if (k == 100 || k == 200 || k == 600)
      len += 10;
    if (k == 400 || k == 500 || k == 900)
      len += 11;
    if (k == 300 || k == 700 || k == 800)
      len += 12;
    if (k == 1000)
      len += 11;
    printf(" %d, ", len);
  }
  if (n > 100 && add_and) {
    len += 3;
    printf(" adding and");
  }
  printf(", final len: %d \n", len);
  return len;
}


x86 assembly (clang, -O0):
<get_alphabetic_length>:
push   %rbp
mov    %rsp,%rbp
sub    $0x30,%rsp
mov    %edi,-0x8(%rbp)
movl   $0x0,-0x18(%rbp)
movl   $0x0,-0x1c(%rbp)
mov    -0x8(%rbp),%esi
lea    0xec5(%rip),%rdi
mov    $0x0,%al
call   1030 <printf@plt>
cmpl   $0xb,-0x8(%rbp)
je     115e <get_alphabetic_length+0x3e>
cmpl   $0xc,-0x8(%rbp)
jne    116a <get_alphabetic_length+0x4a>
movl   $0x6,-0x4(%rbp)
jmp    19f2 <get_alphabetic_length+0x8d2>
cmpl   $0xf,-0x8(%rbp)
je     117e <get_alphabetic_length+0x5e>
cmpl   $0x10,-0x8(%rbp)
jne    118a <get_alphabetic_length+0x6a>
movl   $0x7,-0x4(%rbp)
jmp    19f2 <get_alphabetic_length+0x8d2>
cmpl   $0xd,-0x8(%rbp)
je     11b2 <get_alphabetic_length+0x92>
cmpl   $0xe,-0x8(%rbp)
je     11b2 <get_alphabetic_length+0x92>
cmpl   $0x12,-0x8(%rbp)
je     11b2 <get_alphabetic_length+0x92>
cmpl   $0x13,-0x8(%rbp)
jne    11be <get_alphabetic_length+0x9e>
movl   $0x8,-0x4(%rbp)
jmp    19f2 <get_alphabetic_length+0x8d2>
cmpl   $0x11,-0x8(%rbp)
jne    11d4 <get_alphabetic_length+0xb4>
movl   $0x9,-0x4(%rbp)
jmp    19f2 <get_alphabetic_length+0x8d2>
cmpl   $0x6f,-0x8(%rbp)
je     11e8 <get_alphabetic_length+0xc8>
cmpl   $0x70,-0x8(%rbp)
jne    11f4 <get_alphabetic_length+0xd4>
movl   $0x13,-0x4(%rbp)
jmp    19f2 <get_alphabetic_length+0x8d2>
cmpl   $0x73,-0x8(%rbp)
je     1208 <get_alphabetic_length+0xe8>
cmpl   $0x74,-0x8(%rbp)
jne    1214 <get_alphabetic_length+0xf4>
movl   $0x14,-0x4(%rbp)
jmp    19f2 <get_alphabetic_length+0x8d2>
cmpl   $0x71,-0x8(%rbp)
je     123c <get_alphabetic_length+0x11c>
cmpl   $0x72,-0x8(%rbp)
je     123c <get_alphabetic_length+0x11c>
cmpl   $0x76,-0x8(%rbp)
je     123c <get_alphabetic_length+0x11c>
cmpl   $0x77,-0x8(%rbp)
jne    1248 <get_alphabetic_length+0x128>
movl   $0x15,-0x4(%rbp)
jmp    19f2 <get_alphabetic_length+0x8d2>
cmpl   $0x75,-0x8(%rbp)
jne    125e <get_alphabetic_length+0x13e>
movl   $0x16,-0x4(%rbp)
jmp    19f2 <get_alphabetic_length+0x8d2>
cmpl   $0xd3,-0x8(%rbp)
je     1278 <get_alphabetic_length+0x158>
cmpl   $0xd4,-0x8(%rbp)
jne    1284 <get_alphabetic_length+0x164>
movl   $0x13,-0x4(%rbp)
jmp    19f2 <get_alphabetic_length+0x8d2>
cmpl   $0xd7,-0x8(%rbp)
je     129e <get_alphabetic_length+0x17e>
cmpl   $0xd8,-0x8(%rbp)
jne    12aa <get_alphabetic_length+0x18a>
movl   $0x14,-0x4(%rbp)
jmp    19f2 <get_alphabetic_length+0x8d2>
cmpl   $0xd5,-0x8(%rbp)
je     12de <get_alphabetic_length+0x1be>
cmpl   $0xd6,-0x8(%rbp)
je     12de <get_alphabetic_length+0x1be>
cmpl   $0xda,-0x8(%rbp)
je     12de <get_alphabetic_length+0x1be>
cmpl   $0xdb,-0x8(%rbp)
jne    12ea <get_alphabetic_length+0x1ca>
movl   $0x15,-0x4(%rbp)
jmp    19f2 <get_alphabetic_length+0x8d2>
cmpl   $0xd9,-0x8(%rbp)
jne    1303 <get_alphabetic_length+0x1e3>
movl   $0x16,-0x4(%rbp)
jmp    19f2 <get_alphabetic_length+0x8d2>
cmpl   $0x137,-0x8(%rbp)
je     131d <get_alphabetic_length+0x1fd>
cmpl   $0x138,-0x8(%rbp)
jne    1329 <get_alphabetic_length+0x209>
movl   $0x15,-0x4(%rbp)
jmp    19f2 <get_alphabetic_length+0x8d2>
cmpl   $0x13b,-0x8(%rbp)
je     1343 <get_alphabetic_length+0x223>
cmpl   $0x13c,-0x8(%rbp)
jne    134f <get_alphabetic_length+0x22f>
movl   $0x16,-0x4(%rbp)
jmp    19f2 <get_alphabetic_length+0x8d2>
cmpl   $0x139,-0x8(%rbp)
je     1383 <get_alphabetic_length+0x263>
cmpl   $0x13a,-0x8(%rbp)
je     1383 <get_alphabetic_length+0x263>
cmpl   $0x13e,-0x8(%rbp)
je     1383 <get_alphabetic_length+0x263>
cmpl   $0x13f,-0x8(%rbp)
jne    138f <get_alphabetic_length+0x26f>
movl   $0x17,-0x4(%rbp)
jmp    19f2 <get_alphabetic_length+0x8d2>
cmpl   $0x13d,-0x8(%rbp)
jne    13a8 <get_alphabetic_length+0x288>
movl   $0x18,-0x4(%rbp)
jmp    19f2 <get_alphabetic_length+0x8d2>
cmpl   $0x19b,-0x8(%rbp)
je     13c2 <get_alphabetic_length+0x2a2>
cmpl   $0x19c,-0x8(%rbp)
jne    13ce <get_alphabetic_length+0x2ae>
movl   $0x14,-0x4(%rbp)
jmp    19f2 <get_alphabetic_length+0x8d2>
cmpl   $0x19f,-0x8(%rbp)
je     13e8 <get_alphabetic_length+0x2c8>
cmpl   $0x1a0,-0x8(%rbp)
jne    13f4 <get_alphabetic_length+0x2d4>
movl   $0x15,-0x4(%rbp)
jmp    19f2 <get_alphabetic_length+0x8d2>
cmpl   $0x19d,-0x8(%rbp)
je     1428 <get_alphabetic_length+0x308>
cmpl   $0x19e,-0x8(%rbp)
je     1428 <get_alphabetic_length+0x308>
cmpl   $0x1a2,-0x8(%rbp)
je     1428 <get_alphabetic_length+0x308>
cmpl   $0x1a3,-0x8(%rbp)
jne    1434 <get_alphabetic_length+0x314>
movl   $0x16,-0x4(%rbp)
jmp    19f2 <get_alphabetic_length+0x8d2>
cmpl   $0x1a1,-0x8(%rbp)
jne    144d <get_alphabetic_length+0x32d>
movl   $0x17,-0x4(%rbp)
jmp    19f2 <get_alphabetic_length+0x8d2>
cmpl   $0x1ff,-0x8(%rbp)
je     1467 <get_alphabetic_length+0x347>
cmpl   $0x200,-0x8(%rbp)
jne    1473 <get_alphabetic_length+0x353>
movl   $0x14,-0x4(%rbp)
jmp    19f2 <get_alphabetic_length+0x8d2>
cmpl   $0x203,-0x8(%rbp)
je     148d <get_alphabetic_length+0x36d>
cmpl   $0x204,-0x8(%rbp)
jne    1499 <get_alphabetic_length+0x379>
movl   $0x15,-0x4(%rbp)
jmp    19f2 <get_alphabetic_length+0x8d2>
cmpl   $0x201,-0x8(%rbp)
je     14cd <get_alphabetic_length+0x3ad>
cmpl   $0x202,-0x8(%rbp)
je     14cd <get_alphabetic_length+0x3ad>
cmpl   $0x206,-0x8(%rbp)
je     14cd <get_alphabetic_length+0x3ad>
cmpl   $0x207,-0x8(%rbp)
jne    14d9 <get_alphabetic_length+0x3b9>
movl   $0x16,-0x4(%rbp)
jmp    19f2 <get_alphabetic_length+0x8d2>
cmpl   $0x205,-0x8(%rbp)
jne    14f2 <get_alphabetic_length+0x3d2>
movl   $0x17,-0x4(%rbp)
jmp    19f2 <get_alphabetic_length+0x8d2>
cmpl   $0x263,-0x8(%rbp)
je     150c <get_alphabetic_length+0x3ec>
cmpl   $0x264,-0x8(%rbp)
jne    1518 <get_alphabetic_length+0x3f8>
movl   $0x13,-0x4(%rbp)
jmp    19f2 <get_alphabetic_length+0x8d2>
cmpl   $0x267,-0x8(%rbp)
je     1532 <get_alphabetic_length+0x412>
cmpl   $0x268,-0x8(%rbp)
jne    153e <get_alphabetic_length+0x41e>
movl   $0x14,-0x4(%rbp)
jmp    19f2 <get_alphabetic_length+0x8d2>
cmpl   $0x265,-0x8(%rbp)
je     1572 <get_alphabetic_length+0x452>
cmpl   $0x266,-0x8(%rbp)
je     1572 <get_alphabetic_length+0x452>
cmpl   $0x26a,-0x8(%rbp)
je     1572 <get_alphabetic_length+0x452>
cmpl   $0x26b,-0x8(%rbp)
jne    157e <get_alphabetic_length+0x45e>
movl   $0x15,-0x4(%rbp)
jmp    19f2 <get_alphabetic_length+0x8d2>
cmpl   $0x269,-0x8(%rbp)
jne    1597 <get_alphabetic_length+0x477>
movl   $0x16,-0x4(%rbp)
jmp    19f2 <get_alphabetic_length+0x8d2>
cmpl   $0x2c7,-0x8(%rbp)
je     15b1 <get_alphabetic_length+0x491>
cmpl   $0x2c8,-0x8(%rbp)
jne    15bd <get_alphabetic_length+0x49d>
movl   $0x15,-0x4(%rbp)
jmp    19f2 <get_alphabetic_length+0x8d2>
cmpl   $0x2cb,-0x8(%rbp)
je     15d7 <get_alphabetic_length+0x4b7>
cmpl   $0x2cc,-0x8(%rbp)
jne    15e3 <get_alphabetic_length+0x4c3>
movl   $0x16,-0x4(%rbp)
jmp    19f2 <get_alphabetic_length+0x8d2>
cmpl   $0x2c9,-0x8(%rbp)
je     1617 <get_alphabetic_length+0x4f7>
cmpl   $0x2ca,-0x8(%rbp)
je     1617 <get_alphabetic_length+0x4f7>
cmpl   $0x2ce,-0x8(%rbp)
je     1617 <get_alphabetic_length+0x4f7>
cmpl   $0x2cf,-0x8(%rbp)
jne    1623 <get_alphabetic_length+0x503>
movl   $0x17,-0x4(%rbp)
jmp    19f2 <get_alphabetic_length+0x8d2>
cmpl   $0x2cd,-0x8(%rbp)
jne    163c <get_alphabetic_length+0x51c>
movl   $0x18,-0x4(%rbp)
jmp    19f2 <get_alphabetic_length+0x8d2>
cmpl   $0x32b,-0x8(%rbp)
je     1656 <get_alphabetic_length+0x536>
cmpl   $0x32c,-0x8(%rbp)
jne    1662 <get_alphabetic_length+0x542>
movl   $0x15,-0x4(%rbp)
jmp    19f2 <get_alphabetic_length+0x8d2>
cmpl   $0x32f,-0x8(%rbp)
je     167c <get_alphabetic_length+0x55c>
cmpl   $0x330,-0x8(%rbp)
jne    1688 <get_alphabetic_length+0x568>
movl   $0x16,-0x4(%rbp)
jmp    19f2 <get_alphabetic_length+0x8d2>
cmpl   $0x32d,-0x8(%rbp)
je     16bc <get_alphabetic_length+0x59c>
cmpl   $0x32e,-0x8(%rbp)
je     16bc <get_alphabetic_length+0x59c>
cmpl   $0x332,-0x8(%rbp)
je     16bc <get_alphabetic_length+0x59c>
cmpl   $0x333,-0x8(%rbp)
jne    16c8 <get_alphabetic_length+0x5a8>
movl   $0x17,-0x4(%rbp)
jmp    19f2 <get_alphabetic_length+0x8d2>
cmpl   $0x331,-0x8(%rbp)
jne    16e1 <get_alphabetic_length+0x5c1>
movl   $0x18,-0x4(%rbp)
jmp    19f2 <get_alphabetic_length+0x8d2>
cmpl   $0x38f,-0x8(%rbp)
je     16fb <get_alphabetic_length+0x5db>
cmpl   $0x390,-0x8(%rbp)
jne    1707 <get_alphabetic_length+0x5e7>
movl   $0x14,-0x4(%rbp)
jmp    19f2 <get_alphabetic_length+0x8d2>
cmpl   $0x393,-0x8(%rbp)
je     1721 <get_alphabetic_length+0x601>
cmpl   $0x394,-0x8(%rbp)
jne    172d <get_alphabetic_length+0x60d>
movl   $0x15,-0x4(%rbp)
jmp    19f2 <get_alphabetic_length+0x8d2>
cmpl   $0x391,-0x8(%rbp)
je     1761 <get_alphabetic_length+0x641>
cmpl   $0x392,-0x8(%rbp)
je     1761 <get_alphabetic_length+0x641>
cmpl   $0x396,-0x8(%rbp)
je     1761 <get_alphabetic_length+0x641>
cmpl   $0x397,-0x8(%rbp)
jne    176d <get_alphabetic_length+0x64d>
movl   $0x16,-0x4(%rbp)
jmp    19f2 <get_alphabetic_length+0x8d2>
cmpl   $0x395,-0x8(%rbp)
jne    1786 <get_alphabetic_length+0x666>
movl   $0x17,-0x4(%rbp)
jmp    19f2 <get_alphabetic_length+0x8d2>
movl   $0x0,-0xc(%rbp)
cvtsi2sdl -0xc(%rbp),%xmm1
movsd  0x866(%rip),%xmm0
call   1040 <pow@plt>
cvttsd2si %xmm0,%eax
mov    %eax,-0x14(%rbp)
mov    -0x14(%rbp),%eax
cmp    -0x8(%rbp),%eax
jle    17b7 <get_alphabetic_length+0x697>
jmp    19b0 <get_alphabetic_length+0x890>
mov    -0x8(%rbp),%eax
mov    %eax,-0x24(%rbp)
mov    -0xc(%rbp),%eax
add    $0x1,%eax
cvtsi2sd %eax,%xmm1
movsd  0x831(%rip),%xmm0
call   1040 <pow@plt>
mov    -0x24(%rbp),%eax
cvttsd2si %xmm0,%ecx
cltd
idiv   %ecx
mov    %edx,-0x20(%rbp)
mov    -0x8(%rbp),%eax
cltd
idivl  -0x14(%rbp)
mov    %edx,%eax
mov    -0x20(%rbp),%edx
sub    %eax,%edx
mov    %edx,-0x10(%rbp)
cmpl   $0x64,-0x10(%rbp)
jge    180d <get_alphabetic_length+0x6ed>
cmpl   $0x0,-0x10(%rbp)
jle    180d <get_alphabetic_length+0x6ed>
movl   $0x1,-0x1c(%rbp)
cmpl   $0x1,-0x10(%rbp)
je     1835 <get_alphabetic_length+0x715>
cmpl   $0x2,-0x10(%rbp)
je     1835 <get_alphabetic_length+0x715>
cmpl   $0x6,-0x10(%rbp)
je     1835 <get_alphabetic_length+0x715>
cmpl   $0xa,-0x10(%rbp)
jne    183e <get_alphabetic_length+0x71e>
mov    -0x18(%rbp),%eax
add    $0x3,%eax
mov    %eax,-0x18(%rbp)
cmpl   $0x4,-0x10(%rbp)
je     185c <get_alphabetic_length+0x73c>
cmpl   $0x5,-0x10(%rbp)
je     185c <get_alphabetic_length+0x73c>
cmpl   $0x9,-0x10(%rbp)
jne    1865 <get_alphabetic_length+0x745>
mov    -0x18(%rbp),%eax
add    $0x4,%eax
mov    %eax,-0x18(%rbp)
cmpl   $0x3,-0x10(%rbp)
je     18a1 <get_alphabetic_length+0x781>
cmpl   $0x7,-0x10(%rbp)
je     18a1 <get_alphabetic_length+0x781>
cmpl   $0x8,-0x10(%rbp)
je     18a1 <get_alphabetic_length+0x781>
cmpl   $0x28,-0x10(%rbp)
je     18a1 <get_alphabetic_length+0x781>
cmpl   $0x32,-0x10(%rbp)
je     18a1 <get_alphabetic_length+0x781>
cmpl   $0x3c,-0x10(%rbp)
jne    18aa <get_alphabetic_length+0x78a>
mov    -0x18(%rbp),%eax
add    $0x5,%eax
mov    %eax,-0x18(%rbp)
cmpl   $0x14,-0x10(%rbp)
je     18d2 <get_alphabetic_length+0x7b2>
cmpl   $0x1e,-0x10(%rbp)
je     18d2 <get_alphabetic_length+0x7b2>
cmpl   $0x50,-0x10(%rbp)
je     18d2 <get_alphabetic_length+0x7b2>
cmpl   $0x5a,-0x10(%rbp)
jne    18db <get_alphabetic_length+0x7bb>
mov    -0x18(%rbp),%eax
add    $0x6,%eax
mov    %eax,-0x18(%rbp)
cmpl   $0x46,-0x10(%rbp)
jne    18ee <get_alphabetic_length+0x7ce>
mov    -0x18(%rbp),%eax
add    $0x7,%eax
mov    %eax,-0x18(%rbp)
cmpl   $0x64,-0x10(%rbp)
je     1912 <get_alphabetic_length+0x7f2>
cmpl   $0xc8,-0x10(%rbp)
je     1912 <get_alphabetic_length+0x7f2>
cmpl   $0x258,-0x10(%rbp)
jne    191b <get_alphabetic_length+0x7fb>
mov    -0x18(%rbp),%eax
add    $0xa,%eax
mov    %eax,-0x18(%rbp)
cmpl   $0x190,-0x10(%rbp)
je     1942 <get_alphabetic_length+0x822>
cmpl   $0x1f4,-0x10(%rbp)
je     1942 <get_alphabetic_length+0x822>
cmpl   $0x384,-0x10(%rbp)
jne    194b <get_alphabetic_length+0x82b>
mov    -0x18(%rbp),%eax
add    $0xb,%eax
mov    %eax,-0x18(%rbp)
cmpl   $0x12c,-0x10(%rbp)
je     1972 <get_alphabetic_length+0x852>
cmpl   $0x2bc,-0x10(%rbp)
je     1972 <get_alphabetic_length+0x852>
cmpl   $0x320,-0x10(%rbp)
jne    197b <get_alphabetic_length+0x85b>
mov    -0x18(%rbp),%eax
add    $0xc,%eax
mov    %eax,-0x18(%rbp)
cmpl   $0x3e8,-0x10(%rbp)
jne    1991 <get_alphabetic_length+0x871>
mov    -0x18(%rbp),%eax
add    $0xb,%eax
mov    %eax,-0x18(%rbp)
mov    -0x18(%rbp),%esi
lea    0x67a(%rip),%rdi
mov    $0x0,%al
call   1030 <printf@plt>
mov    -0xc(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0xc(%rbp)
jmp    178d <get_alphabetic_length+0x66d>
cmpl   $0x64,-0x8(%rbp)
jle    19db <get_alphabetic_length+0x8bb>
cmpl   $0x0,-0x1c(%rbp)
je     19db <get_alphabetic_length+0x8bb>
mov    -0x18(%rbp),%eax
add    $0x3,%eax
mov    %eax,-0x18(%rbp)
lea    0x647(%rip),%rdi
mov    $0x0,%al
call   1030 <printf@plt>
mov    -0x18(%rbp),%esi
lea    0x642(%rip),%rdi
mov    $0x0,%al
call   1030 <printf@plt>
mov    -0x18(%rbp),%eax
mov    %eax,-0x4(%rbp)
mov    -0x4(%rbp),%eax
add    $0x30,%rsp
pop    %rbp
ret

x86 assembly (clang, -O2):
<get_alphabetic_length>:
push   %rbp
push   %r15
push   %r14
push   %r13
push   %r12
push   %rbx
push   %rax
mov    %edi,%ebx
lea    0xeec(%rip),%rdi
mov    %ebx,%esi
xor    %eax,%eax
call   1030 <printf@plt>
lea    -0xb(%rbx),%eax
mov    $0x6,%r14d
cmp    $0x2,%eax
jb     1196 <get_alphabetic_length+0x76>
lea    -0xf(%rbx),%eax
mov    $0x7,%r14d
cmp    $0x2,%eax
jb     1196 <get_alphabetic_length+0x76>
lea    -0xd(%rbx),%eax
cmp    $0x7,%eax
jae    116b <get_alphabetic_length+0x4b>
mov    $0x73,%ecx
bt     %eax,%ecx
jb     1189 <get_alphabetic_length+0x69>
lea    -0x6f(%rbx),%eax
mov    $0x13,%r14d
cmp    $0x2,%eax
jb     1196 <get_alphabetic_length+0x76>
lea    -0x73(%rbx),%eax
cmp    $0x2,%eax
jae    11a8 <get_alphabetic_length+0x88>
mov    $0x14,%r14d
jmp    1196 <get_alphabetic_length+0x76>
cltq
lea    0xec2(%rip),%rcx
mov    (%rcx,%rax,4),%r14d
mov    %r14d,%eax
add    $0x8,%rsp
pop    %rbx
pop    %r12
pop    %r13
pop    %r14
pop    %r15
pop    %rbp
ret
lea    -0x71(%rbx),%eax
cmp    $0x7,%eax
jae    11be <get_alphabetic_length+0x9e>
mov    $0x73,%ecx
bt     %eax,%ecx
jb     139a <get_alphabetic_length+0x27a>
lea    -0xd3(%rbx),%eax
cmp    $0x2,%eax
jb     1196 <get_alphabetic_length+0x76>
lea    -0xd7(%rbx),%eax
cmp    $0x2,%eax
jb     1181 <get_alphabetic_length+0x61>
lea    -0xd5(%rbx),%eax
cmp    $0x7,%eax
jae    11ed <get_alphabetic_length+0xcd>
mov    $0x73,%ecx
bt     %eax,%ecx
jb     139a <get_alphabetic_length+0x27a>
lea    -0x137(%rbx),%eax
cmp    $0x2,%eax
jae    1200 <get_alphabetic_length+0xe0>
mov    $0x15,%r14d
jmp    1196 <get_alphabetic_length+0x76>
lea    -0x13b(%rbx),%eax
cmp    $0x2,%eax
jae    1213 <get_alphabetic_length+0xf3>
mov    $0x16,%r14d
jmp    1196 <get_alphabetic_length+0x76>
lea    -0x139(%rbx),%eax
cmp    $0x7,%eax
jae    122c <get_alphabetic_length+0x10c>
mov    $0x73,%ecx
bt     %eax,%ecx
jb     13a8 <get_alphabetic_length+0x288>
lea    -0x19b(%rbx),%eax
cmp    $0x2,%eax
jb     1181 <get_alphabetic_length+0x61>
lea    -0x19f(%rbx),%eax
cmp    $0x2,%eax
jb     11f8 <get_alphabetic_length+0xd8>
lea    -0x19d(%rbx),%eax
cmp    $0x7,%eax
jae    125f <get_alphabetic_length+0x13f>
mov    $0x73,%ecx
bt     %eax,%ecx
jb     13b6 <get_alphabetic_length+0x296>
lea    -0x1ff(%rbx),%eax
cmp    $0x2,%eax
jb     1181 <get_alphabetic_length+0x61>
lea    -0x203(%rbx),%eax
cmp    $0x2,%eax
jb     11f8 <get_alphabetic_length+0xd8>
lea    -0x201(%rbx),%eax
cmp    $0x7,%eax
jae    1296 <get_alphabetic_length+0x176>
mov    $0x73,%ecx
bt     %eax,%ecx
jb     13b6 <get_alphabetic_length+0x296>
lea    -0x263(%rbx),%eax
cmp    $0x2,%eax
jb     1196 <get_alphabetic_length+0x76>
lea    -0x267(%rbx),%eax
cmp    $0x2,%eax
jb     1181 <get_alphabetic_length+0x61>
lea    -0x265(%rbx),%eax
cmp    $0x7,%eax
jae    12cd <get_alphabetic_length+0x1ad>
mov    $0x73,%ecx
bt     %eax,%ecx
jb     139a <get_alphabetic_length+0x27a>
lea    -0x2c7(%rbx),%eax
cmp    $0x2,%eax
jb     11f8 <get_alphabetic_length+0xd8>
lea    -0x2cb(%rbx),%eax
cmp    $0x2,%eax
jb     120b <get_alphabetic_length+0xeb>
lea    -0x2c9(%rbx),%eax
cmp    $0x7,%eax
jae    1304 <get_alphabetic_length+0x1e4>
mov    $0x73,%ecx
bt     %eax,%ecx
jb     13a8 <get_alphabetic_length+0x288>
lea    -0x32b(%rbx),%eax
cmp    $0x2,%eax
jb     11f8 <get_alphabetic_length+0xd8>
lea    -0x32f(%rbx),%eax
mov    $0x16,%r14d
cmp    $0x2,%eax
jb     1196 <get_alphabetic_length+0x76>
lea    -0x32d(%rbx),%eax
cmp    $0x7,%eax
jae    133d <get_alphabetic_length+0x21d>
mov    $0x73,%ecx
bt     %eax,%ecx
jb     13a8 <get_alphabetic_length+0x288>
lea    -0x38f(%rbx),%eax
mov    $0x14,%r14d
cmp    $0x2,%eax
jb     1196 <get_alphabetic_length+0x76>
lea    -0x393(%rbx),%eax
mov    $0x15,%r14d
cmp    $0x2,%eax
jb     1196 <get_alphabetic_length+0x76>
lea    -0x391(%rbx),%eax
cmp    $0x7,%eax
jae    137c <get_alphabetic_length+0x25c>
mov    $0x73,%ecx
bt     %eax,%ecx
jb     13b6 <get_alphabetic_length+0x296>
test   %ebx,%ebx
jle    153b <get_alphabetic_length+0x41b>
mov    $0x1,%r13d
mov    $0x1,%r15d
xor    %ebp,%ebp
xor    %r14d,%r14d
jmp    14bb <get_alphabetic_length+0x39b>
cltq
lea    0xccd(%rip),%rcx
jmp    1192 <get_alphabetic_length+0x72>
cltq
lea    0xcdb(%rip),%rcx
jmp    1192 <get_alphabetic_length+0x72>
cltq
lea    0xce9(%rip),%rcx
jmp    1192 <get_alphabetic_length+0x72>
mov    %ecx,%edx
and    $0xfffffffe,%edx
lea    0x4(%rax),%esi
cmp    $0x4,%edx
cmove  %esi,%eax
cmp    $0x9,%ecx
cmove  %esi,%eax
mov    %ecx,%edx
and    $0xfffffffb,%edx
mov    %ecx,%esi
and    $0xffffffdf,%esi
lea    0x5(%rax),%edi
cmp    $0x3c,%ecx
cmove  %edi,%eax
cmp    $0x32,%ecx
cmove  %edi,%eax
cmp    $0x3,%edx
cmove  %edi,%eax
cmp    $0x8,%esi
cmove  %edi,%eax
movd   %ecx,%xmm0
pshufd $0x0,%xmm0,%xmm0
pcmpeqd 0xc02(%rip),%xmm0
movmskps %xmm0,%edx
lea    0x6(%rax),%esi
test   %edx,%edx
cmove  %eax,%esi
lea    0x7(%rsi),%eax
cmp    $0x46,%ecx
cmovne %esi,%eax
lea    0xa(%rax),%edx
cmp    $0xc8,%ecx
cmove  %edx,%eax
cmp    $0x64,%ecx
cmove  %edx,%eax
cmp    $0x258,%ecx
cmove  %edx,%eax
lea    0xb(%rax),%edx
cmp    $0x1f4,%ecx
cmove  %edx,%eax
cmp    $0x190,%ecx
cmove  %edx,%eax
cmp    $0x384,%ecx
cmove  %edx,%eax
lea    0xc(%rax),%edx
cmp    $0x2bc,%ecx
cmove  %edx,%eax
cmp    $0x12c,%ecx
cmove  %edx,%eax
cmp    $0x320,%ecx
cmove  %edx,%eax
lea    0xb(%rax),%r14d
cmp    $0x3e8,%ecx
cmovne %eax,%r14d
lea    0xb9f(%rip),%rdi
mov    %r14d,%esi
xor    %eax,%eax
call   1030 <printf@plt>
movsd  0xb60(%rip),%xmm0
movsd  (%rsp),%xmm1
call   1040 <pow@plt>
cvttsd2si %xmm0,%r15d
add    $0x1,%r13d
mov    %r12d,%ebp
cmp    %ebx,%r15d
jg     151d <get_alphabetic_length+0x3fd>
xorps  %xmm1,%xmm1
cvtsi2sd %r13d,%xmm1
movsd  0xb35(%rip),%xmm0
movsd  %xmm1,(%rsp)
call   1040 <pow@plt>
cvttsd2si %xmm0,%ecx
mov    %ebx,%eax
cltd
idiv   %ecx
mov    %edx,%ecx
mov    %ebx,%eax
cltd
idiv   %r15d
sub    %edx,%ecx
lea    -0x1(%rcx),%edx
mov    $0x1,%r12d
cmp    $0x63,%edx
jb     14f9 <get_alphabetic_length+0x3d9>
mov    %ebp,%r12d
lea    0x3(%r14),%eax
mov    %eax,%esi
cmp    $0x2,%edx
jb     1507 <get_alphabetic_length+0x3e7>
mov    %r14d,%esi
lea    -0x6(%rcx),%edx
test   $0xfffffffb,%edx
je     13c4 <get_alphabetic_length+0x2a4>
mov    %esi,%eax
jmp    13c4 <get_alphabetic_length+0x2a4>
cmp    $0x65,%ebx
jl     153e <get_alphabetic_length+0x41e>
test   %r12d,%r12d
je     153e <get_alphabetic_length+0x41e>
add    $0x3,%r14d
lea    0xb01(%rip),%rdi
xor    %eax,%eax
call   1030 <printf@plt>
jmp    153e <get_alphabetic_length+0x41e>
xor    %r14d,%r14d
lea    0xafa(%rip),%rdi
mov    %r14d,%esi
xor    %eax,%eax
call   1030 <printf@plt>
jmp    1196 <get_alphabetic_length+0x76>

LLVM IR (-O0):
@.str = [13 x i8] c"n: %d, len: \00"
@.str.1 = [6 x i8] c" %d, \00"
@.str.2 = [12 x i8] c" adding and\00"
@.str.3 = [18 x i8] c", final len: %d \0A\00"
define i32 @get_alphabetic_length(i32 %0) {
%2 = alloca i32
%3 = alloca i32
%4 = alloca i32
%5 = alloca i32
%6 = alloca i32
%7 = alloca i32
%8 = alloca i32
store i32 %0, i32* %3
store i32 0, i32* %7
store i32 0, i32* %8
%9 = load i32, i32* %3
%10 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([13 x i8], [13 x i8]* @.str, i64 0, i64 0), i32 %9)
%11 = load i32, i32* %3
%12 = icmp eq i32 %11, 11
br i1 %12, label %16, label %13
13: ; preds = %1
%14 = load i32, i32* %3
%15 = icmp eq i32 %14, 12
br i1 %15, label %16, label %17
16: ; preds = %13, %1
store i32 6, i32* %2
br label %479
17: ; preds = %13
%18 = load i32, i32* %3
%19 = icmp eq i32 %18, 15
br i1 %19, label %23, label %20
20: ; preds = %17
%21 = load i32, i32* %3
%22 = icmp eq i32 %21, 16
br i1 %22, label %23, label %24
23: ; preds = %20, %17
store i32 7, i32* %2
br label %479
24: ; preds = %20
%25 = load i32, i32* %3
%26 = icmp eq i32 %25, 13
br i1 %26, label %36, label %27
27: ; preds = %24
%28 = load i32, i32* %3
%29 = icmp eq i32 %28, 14
br i1 %29, label %36, label %30
30: ; preds = %27
%31 = load i32, i32* %3
%32 = icmp eq i32 %31, 18
br i1 %32, label %36, label %33
33: ; preds = %30
%34 = load i32, i32* %3
%35 = icmp eq i32 %34, 19
br i1 %35, label %36, label %37
36: ; preds = %33, %30, %27, %24
store i32 8, i32* %2
br label %479
37: ; preds = %33
%38 = load i32, i32* %3
%39 = icmp eq i32 %38, 17
br i1 %39, label %40, label %41
40: ; preds = %37
store i32 9, i32* %2
br label %479
41: ; preds = %37
%42 = load i32, i32* %3
%43 = icmp eq i32 %42, 111
br i1 %43, label %47, label %44
44: ; preds = %41
%45 = load i32, i32* %3
%46 = icmp eq i32 %45, 112
br i1 %46, label %47, label %48
47: ; preds = %44, %41
store i32 19, i32* %2
br label %479
48: ; preds = %44
%49 = load i32, i32* %3
%50 = icmp eq i32 %49, 115
br i1 %50, label %54, label %51
51: ; preds = %48
%52 = load i32, i32* %3
%53 = icmp eq i32 %52, 116
br i1 %53, label %54, label %55
54: ; preds = %51, %48
store i32 20, i32* %2
br label %479
55: ; preds = %51
%56 = load i32, i32* %3
%57 = icmp eq i32 %56, 113
br i1 %57, label %67, label %58
58: ; preds = %55
%59 = load i32, i32* %3
%60 = icmp eq i32 %59, 114
br i1 %60, label %67, label %61
61: ; preds = %58
%62 = load i32, i32* %3
%63 = icmp eq i32 %62, 118
br i1 %63, label %67, label %64
64: ; preds = %61
%65 = load i32, i32* %3
%66 = icmp eq i32 %65, 119
br i1 %66, label %67, label %68
67: ; preds = %64, %61, %58, %55
store i32 21, i32* %2
br label %479
68: ; preds = %64
%69 = load i32, i32* %3
%70 = icmp eq i32 %69, 117
br i1 %70, label %71, label %72
71: ; preds = %68
store i32 22, i32* %2
br label %479
72: ; preds = %68
%73 = load i32, i32* %3
%74 = icmp eq i32 %73, 211
br i1 %74, label %78, label %75
75: ; preds = %72
%76 = load i32, i32* %3
%77 = icmp eq i32 %76, 212
br i1 %77, label %78, label %79
78: ; preds = %75, %72
store i32 19, i32* %2
br label %479
79: ; preds = %75
%80 = load i32, i32* %3
%81 = icmp eq i32 %80, 215
br i1 %81, label %85, label %82
82: ; preds = %79
%83 = load i32, i32* %3
%84 = icmp eq i32 %83, 216
br i1 %84, label %85, label %86
85: ; preds = %82, %79
store i32 20, i32* %2
br label %479
86: ; preds = %82
%87 = load i32, i32* %3
%88 = icmp eq i32 %87, 213
br i1 %88, label %98, label %89
89: ; preds = %86
%90 = load i32, i32* %3
%91 = icmp eq i32 %90, 214
br i1 %91, label %98, label %92
92: ; preds = %89
%93 = load i32, i32* %3
%94 = icmp eq i32 %93, 218
br i1 %94, label %98, label %95
95: ; preds = %92
%96 = load i32, i32* %3
%97 = icmp eq i32 %96, 219
br i1 %97, label %98, label %99
98: ; preds = %95, %92, %89, %86
store i32 21, i32* %2
br label %479
99: ; preds = %95
%100 = load i32, i32* %3
%101 = icmp eq i32 %100, 217
br i1 %101, label %102, label %103
102: ; preds = %99
store i32 22, i32* %2
br label %479
103: ; preds = %99
%104 = load i32, i32* %3
%105 = icmp eq i32 %104, 311
br i1 %105, label %109, label %106
106: ; preds = %103
%107 = load i32, i32* %3
%108 = icmp eq i32 %107, 312
br i1 %108, label %109, label %110
109: ; preds = %106, %103
store i32 21, i32* %2
br label %479
110: ; preds = %106
%111 = load i32, i32* %3
%112 = icmp eq i32 %111, 315
br i1 %112, label %116, label %113
113: ; preds = %110
%114 = load i32, i32* %3
%115 = icmp eq i32 %114, 316
br i1 %115, label %116, label %117
116: ; preds = %113, %110
store i32 22, i32* %2
br label %479
117: ; preds = %113
%118 = load i32, i32* %3
%119 = icmp eq i32 %118, 313
br i1 %119, label %129, label %120
120: ; preds = %117
%121 = load i32, i32* %3
%122 = icmp eq i32 %121, 314
br i1 %122, label %129, label %123
123: ; preds = %120
%124 = load i32, i32* %3
%125 = icmp eq i32 %124, 318
br i1 %125, label %129, label %126
126: ; preds = %123
%127 = load i32, i32* %3
%128 = icmp eq i32 %127, 319
br i1 %128, label %129, label %130
129: ; preds = %126, %123, %120, %117
store i32 23, i32* %2
br label %479
130: ; preds = %126
%131 = load i32, i32* %3
%132 = icmp eq i32 %131, 317
br i1 %132, label %133, label %134
133: ; preds = %130
store i32 24, i32* %2
br label %479
134: ; preds = %130
%135 = load i32, i32* %3
%136 = icmp eq i32 %135, 411
br i1 %136, label %140, label %137
137: ; preds = %134
%138 = load i32, i32* %3
%139 = icmp eq i32 %138, 412
br i1 %139, label %140, label %141
140: ; preds = %137, %134
store i32 20, i32* %2
br label %479
141: ; preds = %137
%142 = load i32, i32* %3
%143 = icmp eq i32 %142, 415
br i1 %143, label %147, label %144
144: ; preds = %141
%145 = load i32, i32* %3
%146 = icmp eq i32 %145, 416
br i1 %146, label %147, label %148
147: ; preds = %144, %141
store i32 21, i32* %2
br label %479
148: ; preds = %144
%149 = load i32, i32* %3
%150 = icmp eq i32 %149, 413
br i1 %150, label %160, label %151
151: ; preds = %148
%152 = load i32, i32* %3
%153 = icmp eq i32 %152, 414
br i1 %153, label %160, label %154
154: ; preds = %151
%155 = load i32, i32* %3
%156 = icmp eq i32 %155, 418
br i1 %156, label %160, label %157
157: ; preds = %154
%158 = load i32, i32* %3
%159 = icmp eq i32 %158, 419
br i1 %159, label %160, label %161
160: ; preds = %157, %154, %151, %148
store i32 22, i32* %2
br label %479
161: ; preds = %157
%162 = load i32, i32* %3
%163 = icmp eq i32 %162, 417
br i1 %163, label %164, label %165
164: ; preds = %161
store i32 23, i32* %2
br label %479
165: ; preds = %161
%166 = load i32, i32* %3
%167 = icmp eq i32 %166, 511
br i1 %167, label %171, label %168
168: ; preds = %165
%169 = load i32, i32* %3
%170 = icmp eq i32 %169, 512
br i1 %170, label %171, label %172
171: ; preds = %168, %165
store i32 20, i32* %2
br label %479
172: ; preds = %168
%173 = load i32, i32* %3
%174 = icmp eq i32 %173, 515
br i1 %174, label %178, label %175
175: ; preds = %172
%176 = load i32, i32* %3
%177 = icmp eq i32 %176, 516
br i1 %177, label %178, label %179
178: ; preds = %175, %172
store i32 21, i32* %2
br label %479
179: ; preds = %175
%180 = load i32, i32* %3
%181 = icmp eq i32 %180, 513
br i1 %181, label %191, label %182
182: ; preds = %179
%183 = load i32, i32* %3
%184 = icmp eq i32 %183, 514
br i1 %184, label %191, label %185
185: ; preds = %182
%186 = load i32, i32* %3
%187 = icmp eq i32 %186, 518
br i1 %187, label %191, label %188
188: ; preds = %185
%189 = load i32, i32* %3
%190 = icmp eq i32 %189, 519
br i1 %190, label %191, label %192
191: ; preds = %188, %185, %182, %179
store i32 22, i32* %2
br label %479
192: ; preds = %188
%193 = load i32, i32* %3
%194 = icmp eq i32 %193, 517
br i1 %194, label %195, label %196
195: ; preds = %192
store i32 23, i32* %2
br label %479
196: ; preds = %192
%197 = load i32, i32* %3
%198 = icmp eq i32 %197, 611
br i1 %198, label %202, label %199
199: ; preds = %196
%200 = load i32, i32* %3
%201 = icmp eq i32 %200, 612
br i1 %201, label %202, label %203
202: ; preds = %199, %196
store i32 19, i32* %2
br label %479
203: ; preds = %199
%204 = load i32, i32* %3
%205 = icmp eq i32 %204, 615
br i1 %205, label %209, label %206
206: ; preds = %203
%207 = load i32, i32* %3
%208 = icmp eq i32 %207, 616
br i1 %208, label %209, label %210
209: ; preds = %206, %203
store i32 20, i32* %2
br label %479
210: ; preds = %206
%211 = load i32, i32* %3
%212 = icmp eq i32 %211, 613
br i1 %212, label %222, label %213
213: ; preds = %210
%214 = load i32, i32* %3
%215 = icmp eq i32 %214, 614
br i1 %215, label %222, label %216
216: ; preds = %213
%217 = load i32, i32* %3
%218 = icmp eq i32 %217, 618
br i1 %218, label %222, label %219
219: ; preds = %216
%220 = load i32, i32* %3
%221 = icmp eq i32 %220, 619
br i1 %221, label %222, label %223
222: ; preds = %219, %216, %213, %210
store i32 21, i32* %2
br label %479
223: ; preds = %219
%224 = load i32, i32* %3
%225 = icmp eq i32 %224, 617
br i1 %225, label %226, label %227
226: ; preds = %223
store i32 22, i32* %2
br label %479
227: ; preds = %223
%228 = load i32, i32* %3
%229 = icmp eq i32 %228, 711
br i1 %229, label %233, label %230
230: ; preds = %227
%231 = load i32, i32* %3
%232 = icmp eq i32 %231, 712
br i1 %232, label %233, label %234
233: ; preds = %230, %227
store i32 21, i32* %2
br label %479
234: ; preds = %230
%235 = load i32, i32* %3
%236 = icmp eq i32 %235, 715
br i1 %236, label %240, label %237
237: ; preds = %234
%238 = load i32, i32* %3
%239 = icmp eq i32 %238, 716
br i1 %239, label %240, label %241
240: ; preds = %237, %234
store i32 22, i32* %2
br label %479
241: ; preds = %237
%242 = load i32, i32* %3
%243 = icmp eq i32 %242, 713
br i1 %243, label %253, label %244
244: ; preds = %241
%245 = load i32, i32* %3
%246 = icmp eq i32 %245, 714
br i1 %246, label %253, label %247
247: ; preds = %244
%248 = load i32, i32* %3
%249 = icmp eq i32 %248, 718
br i1 %249, label %253, label %250
250: ; preds = %247
%251 = load i32, i32* %3
%252 = icmp eq i32 %251, 719
br i1 %252, label %253, label %254
253: ; preds = %250, %247, %244, %241
store i32 23, i32* %2
br label %479
254: ; preds = %250
%255 = load i32, i32* %3
%256 = icmp eq i32 %255, 717
br i1 %256, label %257, label %258
257: ; preds = %254
store i32 24, i32* %2
br label %479
258: ; preds = %254
%259 = load i32, i32* %3
%260 = icmp eq i32 %259, 811
br i1 %260, label %264, label %261
261: ; preds = %258
%262 = load i32, i32* %3
%263 = icmp eq i32 %262, 812
br i1 %263, label %264, label %265
264: ; preds = %261, %258
store i32 21, i32* %2
br label %479
265: ; preds = %261
%266 = load i32, i32* %3
%267 = icmp eq i32 %266, 815
br i1 %267, label %271, label %268
268: ; preds = %265
%269 = load i32, i32* %3
%270 = icmp eq i32 %269, 816
br i1 %270, label %271, label %272
271: ; preds = %268, %265
store i32 22, i32* %2
br label %479
272: ; preds = %268
%273 = load i32, i32* %3
%274 = icmp eq i32 %273, 813
br i1 %274, label %284, label %275
275: ; preds = %272
%276 = load i32, i32* %3
%277 = icmp eq i32 %276, 814
br i1 %277, label %284, label %278
278: ; preds = %275
%279 = load i32, i32* %3
%280 = icmp eq i32 %279, 818
br i1 %280, label %284, label %281
281: ; preds = %278
%282 = load i32, i32* %3
%283 = icmp eq i32 %282, 819
br i1 %283, label %284, label %285
284: ; preds = %281, %278, %275, %272
store i32 23, i32* %2
br label %479
285: ; preds = %281
%286 = load i32, i32* %3
%287 = icmp eq i32 %286, 817
br i1 %287, label %288, label %289
288: ; preds = %285
store i32 24, i32* %2
br label %479
289: ; preds = %285
%290 = load i32, i32* %3
%291 = icmp eq i32 %290, 911
br i1 %291, label %295, label %292
292: ; preds = %289
%293 = load i32, i32* %3
%294 = icmp eq i32 %293, 912
br i1 %294, label %295, label %296
295: ; preds = %292, %289
store i32 20, i32* %2
br label %479
296: ; preds = %292
%297 = load i32, i32* %3
%298 = icmp eq i32 %297, 915
br i1 %298, label %302, label %299
299: ; preds = %296
%300 = load i32, i32* %3
%301 = icmp eq i32 %300, 916
br i1 %301, label %302, label %303
302: ; preds = %299, %296
store i32 21, i32* %2
br label %479
303: ; preds = %299
%304 = load i32, i32* %3
%305 = icmp eq i32 %304, 913
br i1 %305, label %315, label %306
306: ; preds = %303
%307 = load i32, i32* %3
%308 = icmp eq i32 %307, 914
br i1 %308, label %315, label %309
309: ; preds = %306
%310 = load i32, i32* %3
%311 = icmp eq i32 %310, 918
br i1 %311, label %315, label %312
312: ; preds = %309
%313 = load i32, i32* %3
%314 = icmp eq i32 %313, 919
br i1 %314, label %315, label %316
315: ; preds = %312, %309, %306, %303
store i32 22, i32* %2
br label %479
316: ; preds = %312
%317 = load i32, i32* %3
%318 = icmp eq i32 %317, 917
br i1 %318, label %319, label %320
319: ; preds = %316
store i32 23, i32* %2
br label %479
320: ; preds = %316
store i32 0, i32* %4
br label %321
321: ; preds = %462, %320
%322 = load i32, i32* %4
%323 = sitofp i32 %322 to double
%324 = call double @pow(double 1.000000e+01, double %323)
%325 = fptosi double %324 to i32
store i32 %325, i32* %6
%326 = load i32, i32* %6
%327 = load i32, i32* %3
%328 = icmp sgt i32 %326, %327
br i1 %328, label %329, label %330
329: ; preds = %321
br label %465
330: ; preds = %321
%331 = load i32, i32* %3
%332 = load i32, i32* %4
%333 = add nsw i32 %332, 1
%334 = sitofp i32 %333 to double
%335 = call double @pow(double 1.000000e+01, double %334)
%336 = fptosi double %335 to i32
%337 = srem i32 %331, %336
%338 = load i32, i32* %3
%339 = load i32, i32* %6
%340 = srem i32 %338, %339
%341 = sub nsw i32 %337, %340
store i32 %341, i32* %5
%342 = load i32, i32* %5
%343 = icmp slt i32 %342, 100
br i1 %343, label %344, label %348
344: ; preds = %330
%345 = load i32, i32* %5
%346 = icmp sgt i32 %345, 0
br i1 %346, label %347, label %348
347: ; preds = %344
store i32 1, i32* %8
br label %348
348: ; preds = %347, %344, %330
%349 = load i32, i32* %5
%350 = icmp eq i32 %349, 1
br i1 %350, label %360, label %351
351: ; preds = %348
%352 = load i32, i32* %5
%353 = icmp eq i32 %352, 2
br i1 %353, label %360, label %354
354: ; preds = %351
%355 = load i32, i32* %5
%356 = icmp eq i32 %355, 6
br i1 %356, label %360, label %357
357: ; preds = %354
%358 = load i32, i32* %5
%359 = icmp eq i32 %358, 10
br i1 %359, label %360, label %363
360: ; preds = %357, %354, %351, %348
%361 = load i32, i32* %7
%362 = add nsw i32 %361, 3
store i32 %362, i32* %7
br label %363
363: ; preds = %360, %357
%364 = load i32, i32* %5
%365 = icmp eq i32 %364, 4
br i1 %365, label %372, label %366
366: ; preds = %363
%367 = load i32, i32* %5
%368 = icmp eq i32 %367, 5
br i1 %368, label %372, label %369
369: ; preds = %366
%370 = load i32, i32* %5
%371 = icmp eq i32 %370, 9
br i1 %371, label %372, label %375
372: ; preds = %369, %366, %363
%373 = load i32, i32* %7
%374 = add nsw i32 %373, 4
store i32 %374, i32* %7
br label %375
375: ; preds = %372, %369
%376 = load i32, i32* %5
%377 = icmp eq i32 %376, 3
br i1 %377, label %393, label %378
378: ; preds = %375
%379 = load i32, i32* %5
%380 = icmp eq i32 %379, 7
br i1 %380, label %393, label %381
381: ; preds = %378
%382 = load i32, i32* %5
%383 = icmp eq i32 %382, 8
br i1 %383, label %393, label %384
384: ; preds = %381
%385 = load i32, i32* %5
%386 = icmp eq i32 %385, 40
br i1 %386, label %393, label %387
387: ; preds = %384
%388 = load i32, i32* %5
%389 = icmp eq i32 %388, 50
br i1 %389, label %393, label %390
390: ; preds = %387
%391 = load i32, i32* %5
%392 = icmp eq i32 %391, 60
br i1 %392, label %393, label %396
393: ; preds = %390, %387, %384, %381, %378, %375
%394 = load i32, i32* %7
%395 = add nsw i32 %394, 5
store i32 %395, i32* %7
br label %396
396: ; preds = %393, %390
%397 = load i32, i32* %5
%398 = icmp eq i32 %397, 20
br i1 %398, label %408, label %399
399: ; preds = %396
%400 = load i32, i32* %5
%401 = icmp eq i32 %400, 30
br i1 %401, label %408, label %402
402: ; preds = %399
%403 = load i32, i32* %5
%404 = icmp eq i32 %403, 80
br i1 %404, label %408, label %405
405: ; preds = %402
%406 = load i32, i32* %5
%407 = icmp eq i32 %406, 90
br i1 %407, label %408, label %411
408: ; preds = %405, %402, %399, %396
%409 = load i32, i32* %7
%410 = add nsw i32 %409, 6
store i32 %410, i32* %7
br label %411
411: ; preds = %408, %405
%412 = load i32, i32* %5
%413 = icmp eq i32 %412, 70
br i1 %413, label %414, label %417
414: ; preds = %411
%415 = load i32, i32* %7
%416 = add nsw i32 %415, 7
store i32 %416, i32* %7
br label %417
417: ; preds = %414, %411
%418 = load i32, i32* %5
%419 = icmp eq i32 %418, 100
br i1 %419, label %426, label %420
420: ; preds = %417
%421 = load i32, i32* %5
%422 = icmp eq i32 %421, 200
br i1 %422, label %426, label %423
423: ; preds = %420
%424 = load i32, i32* %5
%425 = icmp eq i32 %424, 600
br i1 %425, label %426, label %429
426: ; preds = %423, %420, %417
%427 = load i32, i32* %7
%428 = add nsw i32 %427, 10
store i32 %428, i32* %7
br label %429
429: ; preds = %426, %423
%430 = load i32, i32* %5
%431 = icmp eq i32 %430, 400
br i1 %431, label %438, label %432
432: ; preds = %429
%433 = load i32, i32* %5
%434 = icmp eq i32 %433, 500
br i1 %434, label %438, label %435
435: ; preds = %432
%436 = load i32, i32* %5
%437 = icmp eq i32 %436, 900
br i1 %437, label %438, label %441
438: ; preds = %435, %432, %429
%439 = load i32, i32* %7
%440 = add nsw i32 %439, 11
store i32 %440, i32* %7
br label %441
441: ; preds = %438, %435
%442 = load i32, i32* %5
%443 = icmp eq i32 %442, 300
br i1 %443, label %450, label %444
444: ; preds = %441
%445 = load i32, i32* %5
%446 = icmp eq i32 %445, 700
br i1 %446, label %450, label %447
447: ; preds = %444
%448 = load i32, i32* %5
%449 = icmp eq i32 %448, 800
br i1 %449, label %450, label %453
450: ; preds = %447, %444, %441
%451 = load i32, i32* %7
%452 = add nsw i32 %451, 12
store i32 %452, i32* %7
br label %453
453: ; preds = %450, %447
%454 = load i32, i32* %5
%455 = icmp eq i32 %454, 1000
br i1 %455, label %456, label %459
456: ; preds = %453
%457 = load i32, i32* %7
%458 = add nsw i32 %457, 11
store i32 %458, i32* %7
br label %459
459: ; preds = %456, %453
%460 = load i32, i32* %7
%461 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.1, i64 0, i64 0), i32 %460)
br label %462
462: ; preds = %459
%463 = load i32, i32* %4
%464 = add nsw i32 %463, 1
store i32 %464, i32* %4
br label %321
465: ; preds = %329
%466 = load i32, i32* %3
%467 = icmp sgt i32 %466, 100
br i1 %467, label %468, label %475
468: ; preds = %465
%469 = load i32, i32* %8
%470 = icmp ne i32 %469, 0
br i1 %470, label %471, label %475
471: ; preds = %468
%472 = load i32, i32* %7
%473 = add nsw i32 %472, 3
store i32 %473, i32* %7
%474 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([12 x i8], [12 x i8]* @.str.2, i64 0, i64 0))
br label %475
475: ; preds = %471, %468, %465
%476 = load i32, i32* %7
%477 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([18 x i8], [18 x i8]* @.str.3, i64 0, i64 0), i32 %476)
%478 = load i32, i32* %7
store i32 %478, i32* %2
br label %479
479: ; preds = %475, %319, %315, %302, %295, %288, %284, %271, %264, %257, %253, %240, %233, %226, %222, %209, %202, %195, %191, %178, %171, %164, %160, %147, %140, %133, %129, %116, %109, %102, %98, %85, %78, %71, %67, %54, %47, %40, %36, %23, %16
%480 = load i32, i32* %2
ret i32 %480
}

LLVM IR (-O2):
@.str = [13 x i8] c"n: %d, len: \00"
@.str.1 = [6 x i8] c" %d, \00"
@.str.2 = [12 x i8] c" adding and\00"
@.str.3 = [18 x i8] c", final len: %d \0A\00"
@switch.table.get_alphabetic_length = [7 x i32] [i32 8, i32 8, i32 8, i32 8, i32 9, i32 8, i32 8]
@switch.table.get_alphabetic_length.9 = [7 x i32] [i32 21, i32 21, i32 21, i32 21, i32 22, i32 21, i32 21]
@switch.table.get_alphabetic_length.11 = [7 x i32] [i32 23, i32 23, i32 23, i32 23, i32 24, i32 23, i32 23]
@switch.table.get_alphabetic_length.12 = [7 x i32] [i32 22, i32 22, i32 22, i32 22, i32 23, i32 22, i32 22]
define i32 @get_alphabetic_length(i32 %0) {
%2 = tail call i32 (i8*, ...) @printf(i8* dereferenceable(1) getelementptr inbounds ([13 x i8], [13 x i8]* @.str, i64 0, i64 0), i32 %0)
%3 = add i32 %0, -11
%4 = icmp ult i32 %3, 2
br i1 %4, label %271, label %5
5: ; preds = %1
%6 = add i32 %0, -15
%7 = icmp ult i32 %6, 2
br i1 %7, label %271, label %8
8: ; preds = %5
%9 = add i32 %0, -13
%10 = icmp ult i32 %9, 7
br i1 %10, label %181, label %11
11: ; preds = %181, %8
%12 = add i32 %0, -111
%13 = icmp ult i32 %12, 2
br i1 %13, label %271, label %14
14: ; preds = %11
%15 = add i32 %0, -115
%16 = icmp ult i32 %15, 2
br i1 %16, label %271, label %17
17: ; preds = %14
%18 = add i32 %0, -113
%19 = icmp ult i32 %18, 7
br i1 %19, label %190, label %20
20: ; preds = %190, %17
%21 = add i32 %0, -211
%22 = icmp ult i32 %21, 2
br i1 %22, label %271, label %23
23: ; preds = %20
%24 = add i32 %0, -215
%25 = icmp ult i32 %24, 2
br i1 %25, label %271, label %26
26: ; preds = %23
%27 = add i32 %0, -213
%28 = icmp ult i32 %27, 7
br i1 %28, label %199, label %29
29: ; preds = %199, %26
%30 = add i32 %0, -311
%31 = icmp ult i32 %30, 2
br i1 %31, label %271, label %32
32: ; preds = %29
%33 = add i32 %0, -315
%34 = icmp ult i32 %33, 2
br i1 %34, label %271, label %35
35: ; preds = %32
%36 = add i32 %0, -313
%37 = icmp ult i32 %36, 7
br i1 %37, label %208, label %38
38: ; preds = %208, %35
%39 = add i32 %0, -411
%40 = icmp ult i32 %39, 2
br i1 %40, label %271, label %41
41: ; preds = %38
%42 = add i32 %0, -415
%43 = icmp ult i32 %42, 2
br i1 %43, label %271, label %44
44: ; preds = %41
%45 = add i32 %0, -413
%46 = icmp ult i32 %45, 7
br i1 %46, label %217, label %47
47: ; preds = %217, %44
%48 = add i32 %0, -511
%49 = icmp ult i32 %48, 2
br i1 %49, label %271, label %50
50: ; preds = %47
%51 = add i32 %0, -515
%52 = icmp ult i32 %51, 2
br i1 %52, label %271, label %53
53: ; preds = %50
%54 = add i32 %0, -513
%55 = icmp ult i32 %54, 7
br i1 %55, label %226, label %56
56: ; preds = %226, %53
%57 = add i32 %0, -611
%58 = icmp ult i32 %57, 2
br i1 %58, label %271, label %59
59: ; preds = %56
%60 = add i32 %0, -615
%61 = icmp ult i32 %60, 2
br i1 %61, label %271, label %62
62: ; preds = %59
%63 = add i32 %0, -613
%64 = icmp ult i32 %63, 7
br i1 %64, label %235, label %65
65: ; preds = %235, %62
%66 = add i32 %0, -711
%67 = icmp ult i32 %66, 2
br i1 %67, label %271, label %68
68: ; preds = %65
%69 = add i32 %0, -715
%70 = icmp ult i32 %69, 2
br i1 %70, label %271, label %71
71: ; preds = %68
%72 = add i32 %0, -713
%73 = icmp ult i32 %72, 7
br i1 %73, label %244, label %74
74: ; preds = %244, %71
%75 = add i32 %0, -811
%76 = icmp ult i32 %75, 2
br i1 %76, label %271, label %77
77: ; preds = %74
%78 = add i32 %0, -815
%79 = icmp ult i32 %78, 2
br i1 %79, label %271, label %80
80: ; preds = %77
%81 = add i32 %0, -813
%82 = icmp ult i32 %81, 7
br i1 %82, label %253, label %83
83: ; preds = %253, %80
%84 = add i32 %0, -911
%85 = icmp ult i32 %84, 2
br i1 %85, label %271, label %86
86: ; preds = %83
%87 = add i32 %0, -915
%88 = icmp ult i32 %87, 2
br i1 %88, label %271, label %89
89: ; preds = %86
%90 = add i32 %0, -913
%91 = icmp ult i32 %90, 7
br i1 %91, label %262, label %92
92: ; preds = %262, %89
%93 = icmp slt i32 %0, 1
br i1 %93, label %178, label %94
94: ; preds = %92, %94
%95 = phi i32 [ %169, %94 ], [ 1, %92 ]
%96 = phi i32 [ %108, %94 ], [ 0, %92 ]
%97 = phi i32 [ %166, %94 ], [ 0, %92 ]
%98 = phi i32 [ %99, %94 ], [ 0, %92 ]
%99 = add nuw nsw i32 %98, 1
%100 = sitofp i32 %99 to double
%101 = tail call double @pow(double 1.000000e+01, double %100)
%102 = fptosi double %101 to i32
%103 = srem i32 %0, %102
%104 = srem i32 %0, %95
%105 = sub nsw i32 %103, %104
%106 = add i32 %105, -1
%107 = icmp ult i32 %106, 99
%108 = select i1 %107, i32 1, i32 %96
%109 = icmp ult i32 %106, 2
%110 = icmp eq i32 %105, 6
%111 = or i1 %110, %109
%112 = icmp eq i32 %105, 10
%113 = or i1 %112, %111
%114 = add nsw i32 %97, 3
%115 = select i1 %113, i32 %114, i32 %97
%116 = and i32 %105, -2
%117 = icmp eq i32 %116, 4
%118 = icmp eq i32 %105, 9
%119 = or i1 %118, %117
%120 = add nsw i32 %115, 4
%121 = select i1 %119, i32 %120, i32 %115
%122 = and i32 %105, -5
%123 = icmp eq i32 %122, 3
%124 = and i32 %105, -33
%125 = icmp eq i32 %124, 8
%126 = or i1 %125, %123
%127 = icmp eq i32 %105, 50
%128 = select i1 %126, i1 true, i1 %127
%129 = icmp eq i32 %105, 60
%130 = select i1 %128, i1 true, i1 %129
%131 = add nsw i32 %121, 5
%132 = select i1 %130, i32 %131, i32 %121
%133 = insertelement <4 x i32> poison, i32 %105, i64 0
%134 = shufflevector <4 x i32> %133, <4 x i32> poison, <4 x i32> zeroinitializer
%135 = icmp eq <4 x i32> %134, <i32 90, i32 80, i32 20, i32 30>
%136 = bitcast <4 x i1> %135 to i4
%137 = icmp eq i4 %136, 0
%138 = add nsw i32 %132, 6
%139 = select i1 %137, i32 %132, i32 %138
%140 = icmp eq i32 %105, 70
%141 = add nsw i32 %139, 7
%142 = select i1 %140, i32 %141, i32 %139
%143 = icmp eq i32 %105, 100
%144 = icmp eq i32 %105, 200
%145 = or i1 %143, %144
%146 = icmp eq i32 %105, 600
%147 = or i1 %146, %145
%148 = add nsw i32 %142, 10
%149 = select i1 %147, i32 %148, i32 %142
%150 = icmp eq i32 %105, 400
%151 = icmp eq i32 %105, 500
%152 = or i1 %150, %151
%153 = icmp eq i32 %105, 900
%154 = or i1 %153, %152
%155 = add nsw i32 %149, 11
%156 = select i1 %154, i32 %155, i32 %149
%157 = icmp eq i32 %105, 300
%158 = icmp eq i32 %105, 700
%159 = or i1 %157, %158
%160 = icmp eq i32 %105, 800
%161 = or i1 %160, %159
%162 = add nsw i32 %156, 12
%163 = select i1 %161, i32 %162, i32 %156
%164 = icmp eq i32 %105, 1000
%165 = add nsw i32 %163, 11
%166 = select i1 %164, i32 %165, i32 %163
%167 = tail call i32 (i8*, ...) @printf(i8* dereferenceable(1) getelementptr inbounds ([6 x i8], [6 x i8]* @.str.1, i64 0, i64 0), i32 %166)
%168 = tail call double @pow(double 1.000000e+01, double %100)
%169 = fptosi double %168 to i32
%170 = icmp sgt i32 %169, %0
br i1 %170, label %171, label %94
171: ; preds = %94
%172 = icmp ne i32 %108, 0
%173 = icmp sgt i32 %0, 100
%174 = select i1 %173, i1 %172, i1 false
br i1 %174, label %175, label %178
175: ; preds = %171
%176 = add nsw i32 %166, 3
%177 = tail call i32 (i8*, ...) @printf(i8* dereferenceable(1) getelementptr inbounds ([12 x i8], [12 x i8]* @.str.2, i64 0, i64 0))
br label %178
178: ; preds = %92, %175, %171
%179 = phi i32 [ %176, %175 ], [ %166, %171 ], [ 0, %92 ]
%180 = tail call i32 (i8*, ...) @printf(i8* dereferenceable(1) getelementptr inbounds ([18 x i8], [18 x i8]* @.str.3, i64 0, i64 0), i32 %179)
br label %271
181: ; preds = %8
%182 = trunc i32 %9 to i8
%183 = lshr i8 115, %182
%184 = and i8 %183, 1
%185 = icmp eq i8 %184, 0
br i1 %185, label %11, label %186
186: ; preds = %181
%187 = sext i32 %9 to i64
%188 = getelementptr inbounds [7 x i32], [7 x i32]* @switch.table.get_alphabetic_length, i64 0, i64 %187
%189 = load i32, i32* %188
br label %271
190: ; preds = %17
%191 = trunc i32 %18 to i8
%192 = lshr i8 115, %191
%193 = and i8 %192, 1
%194 = icmp eq i8 %193, 0
br i1 %194, label %20, label %195
195: ; preds = %190
%196 = sext i32 %18 to i64
%197 = getelementptr inbounds [7 x i32], [7 x i32]* @switch.table.get_alphabetic_length.9, i64 0, i64 %196
%198 = load i32, i32* %197
br label %271
199: ; preds = %26
%200 = trunc i32 %27 to i8
%201 = lshr i8 115, %200
%202 = and i8 %201, 1
%203 = icmp eq i8 %202, 0
br i1 %203, label %29, label %204
204: ; preds = %199
%205 = sext i32 %27 to i64
%206 = getelementptr inbounds [7 x i32], [7 x i32]* @switch.table.get_alphabetic_length.9, i64 0, i64 %205
%207 = load i32, i32* %206
br label %271
208: ; preds = %35
%209 = trunc i32 %36 to i8
%210 = lshr i8 115, %209
%211 = and i8 %210, 1
%212 = icmp eq i8 %211, 0
br i1 %212, label %38, label %213
213: ; preds = %208
%214 = sext i32 %36 to i64
%215 = getelementptr inbounds [7 x i32], [7 x i32]* @switch.table.get_alphabetic_length.11, i64 0, i64 %214
%216 = load i32, i32* %215
br label %271
217: ; preds = %44
%218 = trunc i32 %45 to i8
%219 = lshr i8 115, %218
%220 = and i8 %219, 1
%221 = icmp eq i8 %220, 0
br i1 %221, label %47, label %222
222: ; preds = %217
%223 = sext i32 %45 to i64
%224 = getelementptr inbounds [7 x i32], [7 x i32]* @switch.table.get_alphabetic_length.12, i64 0, i64 %223
%225 = load i32, i32* %224
br label %271
226: ; preds = %53
%227 = trunc i32 %54 to i8
%228 = lshr i8 115, %227
%229 = and i8 %228, 1
%230 = icmp eq i8 %229, 0
br i1 %230, label %56, label %231
231: ; preds = %226
%232 = sext i32 %54 to i64
%233 = getelementptr inbounds [7 x i32], [7 x i32]* @switch.table.get_alphabetic_length.12, i64 0, i64 %232
%234 = load i32, i32* %233
br label %271
235: ; preds = %62
%236 = trunc i32 %63 to i8
%237 = lshr i8 115, %236
%238 = and i8 %237, 1
%239 = icmp eq i8 %238, 0
br i1 %239, label %65, label %240
240: ; preds = %235
%241 = sext i32 %63 to i64
%242 = getelementptr inbounds [7 x i32], [7 x i32]* @switch.table.get_alphabetic_length.9, i64 0, i64 %241
%243 = load i32, i32* %242
br label %271
244: ; preds = %71
%245 = trunc i32 %72 to i8
%246 = lshr i8 115, %245
%247 = and i8 %246, 1
%248 = icmp eq i8 %247, 0
br i1 %248, label %74, label %249
249: ; preds = %244
%250 = sext i32 %72 to i64
%251 = getelementptr inbounds [7 x i32], [7 x i32]* @switch.table.get_alphabetic_length.11, i64 0, i64 %250
%252 = load i32, i32* %251
br label %271
253: ; preds = %80
%254 = trunc i32 %81 to i8
%255 = lshr i8 115, %254
%256 = and i8 %255, 1
%257 = icmp eq i8 %256, 0
br i1 %257, label %83, label %258
258: ; preds = %253
%259 = sext i32 %81 to i64
%260 = getelementptr inbounds [7 x i32], [7 x i32]* @switch.table.get_alphabetic_length.11, i64 0, i64 %259
%261 = load i32, i32* %260
br label %271
262: ; preds = %89
%263 = trunc i32 %90 to i8
%264 = lshr i8 115, %263
%265 = and i8 %264, 1
%266 = icmp eq i8 %265, 0
br i1 %266, label %92, label %267
267: ; preds = %262
%268 = sext i32 %90 to i64
%269 = getelementptr inbounds [7 x i32], [7 x i32]* @switch.table.get_alphabetic_length.12, i64 0, i64 %268
%270 = load i32, i32* %269
br label %271
271: ; preds = %267, %258, %249, %240, %231, %222, %213, %204, %195, %186, %86, %83, %77, %74, %68, %65, %59, %56, %50, %47, %41, %38, %32, %29, %23, %20, %14, %11, %5, %1, %178
%272 = phi i32 [ %179, %178 ], [ 6, %1 ], [ 7, %5 ], [ 19, %11 ], [ 20, %14 ], [ 19, %20 ], [ 20, %23 ], [ 21, %29 ], [ 22, %32 ], [ 20, %38 ], [ 21, %41 ], [ 20, %47 ], [ 21, %50 ], [ 19, %56 ], [ 20, %59 ], [ 21, %65 ], [ 22, %68 ], [ 21, %74 ], [ 22, %77 ], [ 20, %83 ], [ 21, %86 ], [ %189, %186 ], [ %198, %195 ], [ %207, %204 ], [ %216, %213 ], [ %225, %222 ], [ %234, %231 ], [ %243, %240 ], [ %252, %249 ], [ %261, %258 ], [ %270, %267 ]
ret i32 %272
}