#define NULL ((void *)0)
typedef unsigned long size_t; // Customize by platform.
typedef long intptr_t;
typedef unsigned long uintptr_t;
typedef long scalar_t__; // Either arithmetic or pointer type.
/* By default, we understand bool (as a convenience). */
typedef int bool;
#define false 0
#define true 1

/* Forward declarations */

/* Type definitions */

/* Variables and functions */
int /*<<< orphan*/ bbm_long_write(void *, unsigned short, int, int);
int fc8300_set_acif_b31_1seg(void *handle, unsigned short devid,
                             unsigned int clk) {
  switch (clk) {
  case 100750:
  case 100800:
    bbm_long_write(handle, devid, 0x1040, 0xffff0000);
    bbm_long_write(handle, devid, 0x1044, 0x02040200);
    bbm_long_write(handle, devid, 0x1048, 0xfcf5f7fe);
    bbm_long_write(handle, devid, 0x104c, 0x453c270e);
    break;
  case 105600:
    bbm_long_write(handle, devid, 0x1040, 0x00ffff00);
    bbm_long_write(handle, devid, 0x1044, 0x01030301);
    bbm_long_write(handle, devid, 0x1048, 0xfef6f6fc);
    bbm_long_write(handle, devid, 0x104c, 0x423a2710);
    break;
  case 110400:
    bbm_long_write(handle, devid, 0x1040, 0x00ffff00);
    bbm_long_write(handle, devid, 0x1044, 0x00030302);
    bbm_long_write(handle, devid, 0x1048, 0x00f7f6fb);
    bbm_long_write(handle, devid, 0x104c, 0x40392712);
    break;
  case 115200:
    bbm_long_write(handle, devid, 0x1040, 0x00ffff00);
    bbm_long_write(handle, devid, 0x1044, 0xff020302);
    bbm_long_write(handle, devid, 0x1048, 0x02f8f6fa);
    bbm_long_write(handle, devid, 0x104c, 0x3e382713);
    break;
  case 99000:
    bbm_long_write(handle, devid, 0x1040, 0xffff0000);
    bbm_long_write(handle, devid, 0x1044, 0x03040200);
    bbm_long_write(handle, devid, 0x1048, 0xfaf4f8ff);
    bbm_long_write(handle, devid, 0x104c, 0x473e270d);
    break;
  case 102000:
    bbm_long_write(handle, devid, 0x1040, 0xffff0000);
    bbm_long_write(handle, devid, 0x1044, 0x02040201);
    bbm_long_write(handle, devid, 0x1048, 0xfdf5f7fd);
    bbm_long_write(handle, devid, 0x104c, 0x443c270f);
    break;
  case 105000:
    bbm_long_write(handle, devid, 0x1040, 0x00ffff00);
    bbm_long_write(handle, devid, 0x1044, 0x01030301);
    bbm_long_write(handle, devid, 0x1048, 0xfef6f7fc);
    bbm_long_write(handle, devid, 0x104c, 0x423b2710);
    break;
  case 108000:
    bbm_long_write(handle, devid, 0x1040, 0x00ffff00);
    bbm_long_write(handle, devid, 0x1044, 0x00030301);
    bbm_long_write(handle, devid, 0x1048, 0xfff6f6fb);
    bbm_long_write(handle, devid, 0x104c, 0x413a2711);
    break;
  case 98310:
    bbm_long_write(handle, devid, 0x1040, 0xffff0000);
    bbm_long_write(handle, devid, 0x1044, 0x03030200);
    bbm_long_write(handle, devid, 0x1048, 0xfaf4f8ff);
    bbm_long_write(handle, devid, 0x104c, 0x473e260c);
    break;
  case 101700:
    bbm_long_write(handle, devid, 0x1040, 0xffff0000);
    bbm_long_write(handle, devid, 0x1044, 0x02040201);
    bbm_long_write(handle, devid, 0x1048, 0xfcf5f7fd);
    bbm_long_write(handle, devid, 0x104c, 0x443c270f);
    break;
  case 105090:
    bbm_long_write(handle, devid, 0x1040, 0x00ffff00);
    bbm_long_write(handle, devid, 0x1044, 0x01030301);
    bbm_long_write(handle, devid, 0x1048, 0xfef6f7fc);
    bbm_long_write(handle, devid, 0x104c, 0x423b2710);
    break;
  case 108480:
    bbm_long_write(handle, devid, 0x1040, 0x00ffff00);
    bbm_long_write(handle, devid, 0x1044, 0x00030301);
    bbm_long_write(handle, devid, 0x1048, 0xfff6f6fb);
    bbm_long_write(handle, devid, 0x104c, 0x413a2711);
    break;
  case 100000:
    bbm_long_write(handle, devid, 0x1040, 0xffff0000);
    bbm_long_write(handle, devid, 0x1044, 0x03040200);
    bbm_long_write(handle, devid, 0x1048, 0xfbf5f8fe);
    bbm_long_write(handle, devid, 0x104c, 0x463d270d);
    break;
  case 104000:
    bbm_long_write(handle, devid, 0x1040, 0x00ffff00);
    bbm_long_write(handle, devid, 0x1044, 0x01030301);
    bbm_long_write(handle, devid, 0x1048, 0xfef6f7fc);
    bbm_long_write(handle, devid, 0x104c, 0x433b2710);
    break;
  case 112000:
    bbm_long_write(handle, devid, 0x1040, 0x00ffff00);
    bbm_long_write(handle, devid, 0x1044, 0x00030302);
    bbm_long_write(handle, devid, 0x1048, 0x01f7f6fa);
    bbm_long_write(handle, devid, 0x104c, 0x3f392712);
    break;
  case 97650:
    bbm_long_write(handle, devid, 0x1040, 0xffff0000);
    bbm_long_write(handle, devid, 0x1044, 0x030301ff);
    bbm_long_write(handle, devid, 0x1048, 0xf9f4f9ff);
    bbm_long_write(handle, devid, 0x104c, 0x483e260b);
    break;
  case 102300:
    bbm_long_write(handle, devid, 0x1040, 0xffff0000);
    bbm_long_write(handle, devid, 0x1044, 0x02040201);
    bbm_long_write(handle, devid, 0x1048, 0xfdf5f7fd);
    bbm_long_write(handle, devid, 0x104c, 0x443c270f);
    break;
  case 106950:
    bbm_long_write(handle, devid, 0x1040, 0x00ffff00);
    bbm_long_write(handle, devid, 0x1044, 0x01030301);
    bbm_long_write(handle, devid, 0x1048, 0xfff6f6fb);
    bbm_long_write(handle, devid, 0x104c, 0x413a2711);
    break;
  case 111600:
    bbm_long_write(handle, devid, 0x1040, 0x00ffff00);
    bbm_long_write(handle, devid, 0x1044, 0x00030302);
    bbm_long_write(handle, devid, 0x1048, 0x00f7f6fa);
    bbm_long_write(handle, devid, 0x104c, 0x3f392712);
    break;
  case 98175:
    bbm_long_write(handle, devid, 0x1040, 0xffff0000);
    bbm_long_write(handle, devid, 0x1044, 0x03030100);
    bbm_long_write(handle, devid, 0x1048, 0xfaf4f8ff);
    bbm_long_write(handle, devid, 0x104c, 0x483e260c);
    break;
  case 102850:
    bbm_long_write(handle, devid, 0x1040, 0xffff0000);
    bbm_long_write(handle, devid, 0x1044, 0x02030301);
    bbm_long_write(handle, devid, 0x1048, 0xfdf5f7fd);
    bbm_long_write(handle, devid, 0x104c, 0x433b270f);
    break;
  case 107250:
  case 107525:
    bbm_long_write(handle, devid, 0x1040, 0x00ffff00);
    bbm_long_write(handle, devid, 0x1044, 0x01030301);
    bbm_long_write(handle, devid, 0x1048, 0xfff6f6fb);
    bbm_long_write(handle, devid, 0x104c, 0x413a2711);
    break;
  case 112200:
    bbm_long_write(handle, devid, 0x1040, 0x00ffff00);
    bbm_long_write(handle, devid, 0x1044, 0x00030302);
    bbm_long_write(handle, devid, 0x1048, 0x01f7f6fa);
    bbm_long_write(handle, devid, 0x104c, 0x3f392712);
    break;
  default:
    return 1;
  }
  return 0;
}


x86 assembly (clang, -O0):
push   %rbp
mov    %rsp,%rbp
sub    $0x20,%rsp
mov    %si,%ax
mov    %rdi,-0x10(%rbp)
mov    %ax,-0x12(%rbp)
mov    %edx,-0x18(%rbp)
mov    -0x18(%rbp),%eax
mov    %eax,-0x1c(%rbp)
sub    $0x17d72,%eax
je     18b3 <fc8300_set_acif_b31_1seg+0x7a3>
jmp    113c <fc8300_set_acif_b31_1seg+0x2c>
mov    -0x1c(%rbp),%eax
sub    $0x17f7f,%eax
je     1a37 <fc8300_set_acif_b31_1seg+0x927>
jmp    114f <fc8300_set_acif_b31_1seg+0x3f>
mov    -0x1c(%rbp),%eax
sub    $0x18006,%eax
je     160c <fc8300_set_acif_b31_1seg+0x4fc>
jmp    1162 <fc8300_set_acif_b31_1seg+0x52>
mov    -0x1c(%rbp),%eax
sub    $0x182b8,%eax
je     1488 <fc8300_set_acif_b31_1seg+0x378>
jmp    1175 <fc8300_set_acif_b31_1seg+0x65>
mov    -0x1c(%rbp),%eax
sub    $0x186a0,%eax
je     1790 <fc8300_set_acif_b31_1seg+0x680>
jmp    1188 <fc8300_set_acif_b31_1seg+0x78>
mov    -0x1c(%rbp),%eax
sub    $0x1898e,%eax
je     1304 <fc8300_set_acif_b31_1seg+0x1f4>
jmp    119b <fc8300_set_acif_b31_1seg+0x8b>
mov    -0x1c(%rbp),%eax
sub    $0x189c0,%eax
je     1304 <fc8300_set_acif_b31_1seg+0x1f4>
jmp    11ae <fc8300_set_acif_b31_1seg+0x9e>
mov    -0x1c(%rbp),%eax
sub    $0x18d44,%eax
je     166d <fc8300_set_acif_b31_1seg+0x55d>
jmp    11c1 <fc8300_set_acif_b31_1seg+0xb1>
mov    -0x1c(%rbp),%eax
sub    $0x18e70,%eax
je     14e9 <fc8300_set_acif_b31_1seg+0x3d9>
jmp    11d4 <fc8300_set_acif_b31_1seg+0xc4>
mov    -0x1c(%rbp),%eax
sub    $0x18f9c,%eax
je     1914 <fc8300_set_acif_b31_1seg+0x804>
jmp    11e7 <fc8300_set_acif_b31_1seg+0xd7>
mov    -0x1c(%rbp),%eax
sub    $0x191c2,%eax
je     1a98 <fc8300_set_acif_b31_1seg+0x988>
jmp    11fa <fc8300_set_acif_b31_1seg+0xea>
mov    -0x1c(%rbp),%eax
sub    $0x19640,%eax
je     17f1 <fc8300_set_acif_b31_1seg+0x6e1>
jmp    120d <fc8300_set_acif_b31_1seg+0xfd>
mov    -0x1c(%rbp),%eax
sub    $0x19a28,%eax
je     154a <fc8300_set_acif_b31_1seg+0x43a>
jmp    1220 <fc8300_set_acif_b31_1seg+0x110>
mov    -0x1c(%rbp),%eax
sub    $0x19a82,%eax
je     16ce <fc8300_set_acif_b31_1seg+0x5be>
jmp    1233 <fc8300_set_acif_b31_1seg+0x123>
mov    -0x1c(%rbp),%eax
sub    $0x19c80,%eax
je     1365 <fc8300_set_acif_b31_1seg+0x255>
jmp    1246 <fc8300_set_acif_b31_1seg+0x136>
mov    -0x1c(%rbp),%eax
sub    $0x1a1c6,%eax
je     1975 <fc8300_set_acif_b31_1seg+0x865>
jmp    1259 <fc8300_set_acif_b31_1seg+0x149>
mov    -0x1c(%rbp),%eax
sub    $0x1a2f2,%eax
je     1af9 <fc8300_set_acif_b31_1seg+0x9e9>
jmp    126c <fc8300_set_acif_b31_1seg+0x15c>
mov    -0x1c(%rbp),%eax
sub    $0x1a405,%eax
je     1af9 <fc8300_set_acif_b31_1seg+0x9e9>
jmp    127f <fc8300_set_acif_b31_1seg+0x16f>
mov    -0x1c(%rbp),%eax
sub    $0x1a5e0,%eax
je     15ab <fc8300_set_acif_b31_1seg+0x49b>
jmp    1292 <fc8300_set_acif_b31_1seg+0x182>
mov    -0x1c(%rbp),%eax
sub    $0x1a7c0,%eax
je     172f <fc8300_set_acif_b31_1seg+0x61f>
jmp    12a5 <fc8300_set_acif_b31_1seg+0x195>
mov    -0x1c(%rbp),%eax
sub    $0x1af40,%eax
je     13c6 <fc8300_set_acif_b31_1seg+0x2b6>
jmp    12b8 <fc8300_set_acif_b31_1seg+0x1a8>
mov    -0x1c(%rbp),%eax
sub    $0x1b3f0,%eax
je     19d6 <fc8300_set_acif_b31_1seg+0x8c6>
jmp    12cb <fc8300_set_acif_b31_1seg+0x1bb>
mov    -0x1c(%rbp),%eax
sub    $0x1b580,%eax
je     1852 <fc8300_set_acif_b31_1seg+0x742>
jmp    12de <fc8300_set_acif_b31_1seg+0x1ce>
mov    -0x1c(%rbp),%eax
sub    $0x1b648,%eax
je     1b5a <fc8300_set_acif_b31_1seg+0xa4a>
jmp    12f1 <fc8300_set_acif_b31_1seg+0x1e1>
mov    -0x1c(%rbp),%eax
sub    $0x1c200,%eax
je     1427 <fc8300_set_acif_b31_1seg+0x317>
jmp    1bbb <fc8300_set_acif_b31_1seg+0xaab>
mov    -0x10(%rbp),%rdi
mov    $0x1040,%edx
mov    $0xffff0000,%ecx
movzwl -0x12(%rbp),%esi
call   1030 <bbm_long_write@plt>
mov    -0x10(%rbp),%rdi
mov    $0x1044,%edx
mov    $0x2040200,%ecx
movzwl -0x12(%rbp),%esi
call   1030 <bbm_long_write@plt>
mov    -0x10(%rbp),%rdi
mov    $0x1048,%edx
mov    $0xfcf5f7fe,%ecx
movzwl -0x12(%rbp),%esi
call   1030 <bbm_long_write@plt>
mov    -0x10(%rbp),%rdi
mov    $0x104c,%edx
mov    $0x453c270e,%ecx
movzwl -0x12(%rbp),%esi
call   1030 <bbm_long_write@plt>
jmp    1bc7 <fc8300_set_acif_b31_1seg+0xab7>
mov    -0x10(%rbp),%rdi
mov    $0x1040,%edx
mov    $0xffff00,%ecx
movzwl -0x12(%rbp),%esi
call   1030 <bbm_long_write@plt>
mov    -0x10(%rbp),%rdi
mov    $0x1044,%edx
mov    $0x1030301,%ecx
movzwl -0x12(%rbp),%esi
call   1030 <bbm_long_write@plt>
mov    -0x10(%rbp),%rdi
mov    $0x1048,%edx
mov    $0xfef6f6fc,%ecx
movzwl -0x12(%rbp),%esi
call   1030 <bbm_long_write@plt>
mov    -0x10(%rbp),%rdi
mov    $0x104c,%edx
mov    $0x423a2710,%ecx
movzwl -0x12(%rbp),%esi
call   1030 <bbm_long_write@plt>
jmp    1bc7 <fc8300_set_acif_b31_1seg+0xab7>
mov    -0x10(%rbp),%rdi
mov    $0x1040,%edx
mov    $0xffff00,%ecx
movzwl -0x12(%rbp),%esi
call   1030 <bbm_long_write@plt>
mov    -0x10(%rbp),%rdi
mov    $0x1044,%edx
mov    $0x30302,%ecx
movzwl -0x12(%rbp),%esi
call   1030 <bbm_long_write@plt>
mov    -0x10(%rbp),%rdi
mov    $0x1048,%edx
mov    $0xf7f6fb,%ecx
movzwl -0x12(%rbp),%esi
call   1030 <bbm_long_write@plt>
mov    -0x10(%rbp),%rdi
mov    $0x104c,%edx
mov    $0x40392712,%ecx
movzwl -0x12(%rbp),%esi
call   1030 <bbm_long_write@plt>
jmp    1bc7 <fc8300_set_acif_b31_1seg+0xab7>
mov    -0x10(%rbp),%rdi
mov    $0x1040,%edx
mov    $0xffff00,%ecx
movzwl -0x12(%rbp),%esi
call   1030 <bbm_long_write@plt>
mov    -0x10(%rbp),%rdi
mov    $0x1044,%edx
mov    $0xff020302,%ecx
movzwl -0x12(%rbp),%esi
call   1030 <bbm_long_write@plt>
mov    -0x10(%rbp),%rdi
mov    $0x1048,%edx
mov    $0x2f8f6fa,%ecx
movzwl -0x12(%rbp),%esi
call   1030 <bbm_long_write@plt>
mov    -0x10(%rbp),%rdi
mov    $0x104c,%edx
mov    $0x3e382713,%ecx
movzwl -0x12(%rbp),%esi
call   1030 <bbm_long_write@plt>
jmp    1bc7 <fc8300_set_acif_b31_1seg+0xab7>
mov    -0x10(%rbp),%rdi
mov    $0x1040,%edx
mov    $0xffff0000,%ecx
movzwl -0x12(%rbp),%esi
call   1030 <bbm_long_write@plt>
mov    -0x10(%rbp),%rdi
mov    $0x1044,%edx
mov    $0x3040200,%ecx
movzwl -0x12(%rbp),%esi
call   1030 <bbm_long_write@plt>
mov    -0x10(%rbp),%rdi
mov    $0x1048,%edx
mov    $0xfaf4f8ff,%ecx
movzwl -0x12(%rbp),%esi
call   1030 <bbm_long_write@plt>
mov    -0x10(%rbp),%rdi
mov    $0x104c,%edx
mov    $0x473e270d,%ecx
movzwl -0x12(%rbp),%esi
call   1030 <bbm_long_write@plt>
jmp    1bc7 <fc8300_set_acif_b31_1seg+0xab7>
mov    -0x10(%rbp),%rdi
mov    $0x1040,%edx
mov    $0xffff0000,%ecx
movzwl -0x12(%rbp),%esi
call   1030 <bbm_long_write@plt>
mov    -0x10(%rbp),%rdi
mov    $0x1044,%edx
mov    $0x2040201,%ecx
movzwl -0x12(%rbp),%esi
call   1030 <bbm_long_write@plt>
mov    -0x10(%rbp),%rdi
mov    $0x1048,%edx
mov    $0xfdf5f7fd,%ecx
movzwl -0x12(%rbp),%esi
call   1030 <bbm_long_write@plt>
mov    -0x10(%rbp),%rdi
mov    $0x104c,%edx
mov    $0x443c270f,%ecx
movzwl -0x12(%rbp),%esi
call   1030 <bbm_long_write@plt>
jmp    1bc7 <fc8300_set_acif_b31_1seg+0xab7>
mov    -0x10(%rbp),%rdi
mov    $0x1040,%edx
mov    $0xffff00,%ecx
movzwl -0x12(%rbp),%esi
call   1030 <bbm_long_write@plt>
mov    -0x10(%rbp),%rdi
mov    $0x1044,%edx
mov    $0x1030301,%ecx
movzwl -0x12(%rbp),%esi
call   1030 <bbm_long_write@plt>
mov    -0x10(%rbp),%rdi
mov    $0x1048,%edx
mov    $0xfef6f7fc,%ecx
movzwl -0x12(%rbp),%esi
call   1030 <bbm_long_write@plt>
mov    -0x10(%rbp),%rdi
mov    $0x104c,%edx
mov    $0x423b2710,%ecx
movzwl -0x12(%rbp),%esi
call   1030 <bbm_long_write@plt>
jmp    1bc7 <fc8300_set_acif_b31_1seg+0xab7>
mov    -0x10(%rbp),%rdi
mov    $0x1040,%edx
mov    $0xffff00,%ecx
movzwl -0x12(%rbp),%esi
call   1030 <bbm_long_write@plt>
mov    -0x10(%rbp),%rdi
mov    $0x1044,%edx
mov    $0x30301,%ecx
movzwl -0x12(%rbp),%esi
call   1030 <bbm_long_write@plt>
mov    -0x10(%rbp),%rdi
mov    $0x1048,%edx
mov    $0xfff6f6fb,%ecx
movzwl -0x12(%rbp),%esi
call   1030 <bbm_long_write@plt>
mov    -0x10(%rbp),%rdi
mov    $0x104c,%edx
mov    $0x413a2711,%ecx
movzwl -0x12(%rbp),%esi
call   1030 <bbm_long_write@plt>
jmp    1bc7 <fc8300_set_acif_b31_1seg+0xab7>
mov    -0x10(%rbp),%rdi
mov    $0x1040,%edx
mov    $0xffff0000,%ecx
movzwl -0x12(%rbp),%esi
call   1030 <bbm_long_write@plt>
mov    -0x10(%rbp),%rdi
mov    $0x1044,%edx
mov    $0x3030200,%ecx
movzwl -0x12(%rbp),%esi
call   1030 <bbm_long_write@plt>
mov    -0x10(%rbp),%rdi
mov    $0x1048,%edx
mov    $0xfaf4f8ff,%ecx
movzwl -0x12(%rbp),%esi
call   1030 <bbm_long_write@plt>
mov    -0x10(%rbp),%rdi
mov    $0x104c,%edx
mov    $0x473e260c,%ecx
movzwl -0x12(%rbp),%esi
call   1030 <bbm_long_write@plt>
jmp    1bc7 <fc8300_set_acif_b31_1seg+0xab7>
mov    -0x10(%rbp),%rdi
mov    $0x1040,%edx
mov    $0xffff0000,%ecx
movzwl -0x12(%rbp),%esi
call   1030 <bbm_long_write@plt>
mov    -0x10(%rbp),%rdi
mov    $0x1044,%edx
mov    $0x2040201,%ecx
movzwl -0x12(%rbp),%esi
call   1030 <bbm_long_write@plt>
mov    -0x10(%rbp),%rdi
mov    $0x1048,%edx
mov    $0xfcf5f7fd,%ecx
movzwl -0x12(%rbp),%esi
call   1030 <bbm_long_write@plt>
mov    -0x10(%rbp),%rdi
mov    $0x104c,%edx
mov    $0x443c270f,%ecx
movzwl -0x12(%rbp),%esi
call   1030 <bbm_long_write@plt>
jmp    1bc7 <fc8300_set_acif_b31_1seg+0xab7>
mov    -0x10(%rbp),%rdi
mov    $0x1040,%edx
mov    $0xffff00,%ecx
movzwl -0x12(%rbp),%esi
call   1030 <bbm_long_write@plt>
mov    -0x10(%rbp),%rdi
mov    $0x1044,%edx
mov    $0x1030301,%ecx
movzwl -0x12(%rbp),%esi
call   1030 <bbm_long_write@plt>
mov    -0x10(%rbp),%rdi
mov    $0x1048,%edx
mov    $0xfef6f7fc,%ecx
movzwl -0x12(%rbp),%esi
call   1030 <bbm_long_write@plt>
mov    -0x10(%rbp),%rdi
mov    $0x104c,%edx
mov    $0x423b2710,%ecx
movzwl -0x12(%rbp),%esi
call   1030 <bbm_long_write@plt>
jmp    1bc7 <fc8300_set_acif_b31_1seg+0xab7>
mov    -0x10(%rbp),%rdi
mov    $0x1040,%edx
mov    $0xffff00,%ecx
movzwl -0x12(%rbp),%esi
call   1030 <bbm_long_write@plt>
mov    -0x10(%rbp),%rdi
mov    $0x1044,%edx
mov    $0x30301,%ecx
movzwl -0x12(%rbp),%esi
call   1030 <bbm_long_write@plt>
mov    -0x10(%rbp),%rdi
mov    $0x1048,%edx
mov    $0xfff6f6fb,%ecx
movzwl -0x12(%rbp),%esi
call   1030 <bbm_long_write@plt>
mov    -0x10(%rbp),%rdi
mov    $0x104c,%edx
mov    $0x413a2711,%ecx
movzwl -0x12(%rbp),%esi
call   1030 <bbm_long_write@plt>
jmp    1bc7 <fc8300_set_acif_b31_1seg+0xab7>
mov    -0x10(%rbp),%rdi
mov    $0x1040,%edx
mov    $0xffff0000,%ecx
movzwl -0x12(%rbp),%esi
call   1030 <bbm_long_write@plt>
mov    -0x10(%rbp),%rdi
mov    $0x1044,%edx
mov    $0x3040200,%ecx
movzwl -0x12(%rbp),%esi
call   1030 <bbm_long_write@plt>
mov    -0x10(%rbp),%rdi
mov    $0x1048,%edx
mov    $0xfbf5f8fe,%ecx
movzwl -0x12(%rbp),%esi
call   1030 <bbm_long_write@plt>
mov    -0x10(%rbp),%rdi
mov    $0x104c,%edx
mov    $0x463d270d,%ecx
movzwl -0x12(%rbp),%esi
call   1030 <bbm_long_write@plt>
jmp    1bc7 <fc8300_set_acif_b31_1seg+0xab7>
mov    -0x10(%rbp),%rdi
mov    $0x1040,%edx
mov    $0xffff00,%ecx
movzwl -0x12(%rbp),%esi
call   1030 <bbm_long_write@plt>
mov    -0x10(%rbp),%rdi
mov    $0x1044,%edx
mov    $0x1030301,%ecx
movzwl -0x12(%rbp),%esi
call   1030 <bbm_long_write@plt>
mov    -0x10(%rbp),%rdi
mov    $0x1048,%edx
mov    $0xfef6f7fc,%ecx
movzwl -0x12(%rbp),%esi
call   1030 <bbm_long_write@plt>
mov    -0x10(%rbp),%rdi
mov    $0x104c,%edx
mov    $0x433b2710,%ecx
movzwl -0x12(%rbp),%esi
call   1030 <bbm_long_write@plt>
jmp    1bc7 <fc8300_set_acif_b31_1seg+0xab7>
mov    -0x10(%rbp),%rdi
mov    $0x1040,%edx
mov    $0xffff00,%ecx
movzwl -0x12(%rbp),%esi
call   1030 <bbm_long_write@plt>
mov    -0x10(%rbp),%rdi
mov    $0x1044,%edx
mov    $0x30302,%ecx
movzwl -0x12(%rbp),%esi
call   1030 <bbm_long_write@plt>
mov    -0x10(%rbp),%rdi
mov    $0x1048,%edx
mov    $0x1f7f6fa,%ecx
movzwl -0x12(%rbp),%esi
call   1030 <bbm_long_write@plt>
mov    -0x10(%rbp),%rdi
mov    $0x104c,%edx
mov    $0x3f392712,%ecx
movzwl -0x12(%rbp),%esi
call   1030 <bbm_long_write@plt>
jmp    1bc7 <fc8300_set_acif_b31_1seg+0xab7>
mov    -0x10(%rbp),%rdi
mov    $0x1040,%edx
mov    $0xffff0000,%ecx
movzwl -0x12(%rbp),%esi
call   1030 <bbm_long_write@plt>
mov    -0x10(%rbp),%rdi
mov    $0x1044,%edx
mov    $0x30301ff,%ecx
movzwl -0x12(%rbp),%esi
call   1030 <bbm_long_write@plt>
mov    -0x10(%rbp),%rdi
mov    $0x1048,%edx
mov    $0xf9f4f9ff,%ecx
movzwl -0x12(%rbp),%esi
call   1030 <bbm_long_write@plt>
mov    -0x10(%rbp),%rdi
mov    $0x104c,%edx
mov    $0x483e260b,%ecx
movzwl -0x12(%rbp),%esi
call   1030 <bbm_long_write@plt>
jmp    1bc7 <fc8300_set_acif_b31_1seg+0xab7>
mov    -0x10(%rbp),%rdi
mov    $0x1040,%edx
mov    $0xffff0000,%ecx
movzwl -0x12(%rbp),%esi
call   1030 <bbm_long_write@plt>
mov    -0x10(%rbp),%rdi
mov    $0x1044,%edx
mov    $0x2040201,%ecx
movzwl -0x12(%rbp),%esi
call   1030 <bbm_long_write@plt>
mov    -0x10(%rbp),%rdi
mov    $0x1048,%edx
mov    $0xfdf5f7fd,%ecx
movzwl -0x12(%rbp),%esi
call   1030 <bbm_long_write@plt>
mov    -0x10(%rbp),%rdi
mov    $0x104c,%edx
mov    $0x443c270f,%ecx
movzwl -0x12(%rbp),%esi
call   1030 <bbm_long_write@plt>
jmp    1bc7 <fc8300_set_acif_b31_1seg+0xab7>
mov    -0x10(%rbp),%rdi
mov    $0x1040,%edx
mov    $0xffff00,%ecx
movzwl -0x12(%rbp),%esi
call   1030 <bbm_long_write@plt>
mov    -0x10(%rbp),%rdi
mov    $0x1044,%edx
mov    $0x1030301,%ecx
movzwl -0x12(%rbp),%esi
call   1030 <bbm_long_write@plt>
mov    -0x10(%rbp),%rdi
mov    $0x1048,%edx
mov    $0xfff6f6fb,%ecx
movzwl -0x12(%rbp),%esi
call   1030 <bbm_long_write@plt>
mov    -0x10(%rbp),%rdi
mov    $0x104c,%edx
mov    $0x413a2711,%ecx
movzwl -0x12(%rbp),%esi
call   1030 <bbm_long_write@plt>
jmp    1bc7 <fc8300_set_acif_b31_1seg+0xab7>
mov    -0x10(%rbp),%rdi
mov    $0x1040,%edx
mov    $0xffff00,%ecx
movzwl -0x12(%rbp),%esi
call   1030 <bbm_long_write@plt>
mov    -0x10(%rbp),%rdi
mov    $0x1044,%edx
mov    $0x30302,%ecx
movzwl -0x12(%rbp),%esi
call   1030 <bbm_long_write@plt>
mov    -0x10(%rbp),%rdi
mov    $0x1048,%edx
mov    $0xf7f6fa,%ecx
movzwl -0x12(%rbp),%esi
call   1030 <bbm_long_write@plt>
mov    -0x10(%rbp),%rdi
mov    $0x104c,%edx
mov    $0x3f392712,%ecx
movzwl -0x12(%rbp),%esi
call   1030 <bbm_long_write@plt>
jmp    1bc7 <fc8300_set_acif_b31_1seg+0xab7>
mov    -0x10(%rbp),%rdi
mov    $0x1040,%edx
mov    $0xffff0000,%ecx
movzwl -0x12(%rbp),%esi
call   1030 <bbm_long_write@plt>
mov    -0x10(%rbp),%rdi
mov    $0x1044,%edx
mov    $0x3030100,%ecx
movzwl -0x12(%rbp),%esi
call   1030 <bbm_long_write@plt>
mov    -0x10(%rbp),%rdi
mov    $0x1048,%edx
mov    $0xfaf4f8ff,%ecx
movzwl -0x12(%rbp),%esi
call   1030 <bbm_long_write@plt>
mov    -0x10(%rbp),%rdi
mov    $0x104c,%edx
mov    $0x483e260c,%ecx
movzwl -0x12(%rbp),%esi
call   1030 <bbm_long_write@plt>
jmp    1bc7 <fc8300_set_acif_b31_1seg+0xab7>
mov    -0x10(%rbp),%rdi
mov    $0x1040,%edx
mov    $0xffff0000,%ecx
movzwl -0x12(%rbp),%esi
call   1030 <bbm_long_write@plt>
mov    -0x10(%rbp),%rdi
mov    $0x1044,%edx
mov    $0x2030301,%ecx
movzwl -0x12(%rbp),%esi
call   1030 <bbm_long_write@plt>
mov    -0x10(%rbp),%rdi
mov    $0x1048,%edx
mov    $0xfdf5f7fd,%ecx
movzwl -0x12(%rbp),%esi
call   1030 <bbm_long_write@plt>
mov    -0x10(%rbp),%rdi
mov    $0x104c,%edx
mov    $0x433b270f,%ecx
movzwl -0x12(%rbp),%esi
call   1030 <bbm_long_write@plt>
jmp    1bc7 <fc8300_set_acif_b31_1seg+0xab7>
mov    -0x10(%rbp),%rdi
mov    $0x1040,%edx
mov    $0xffff00,%ecx
movzwl -0x12(%rbp),%esi
call   1030 <bbm_long_write@plt>
mov    -0x10(%rbp),%rdi
mov    $0x1044,%edx
mov    $0x1030301,%ecx
movzwl -0x12(%rbp),%esi
call   1030 <bbm_long_write@plt>
mov    -0x10(%rbp),%rdi
mov    $0x1048,%edx
mov    $0xfff6f6fb,%ecx
movzwl -0x12(%rbp),%esi
call   1030 <bbm_long_write@plt>
mov    -0x10(%rbp),%rdi
mov    $0x104c,%edx
mov    $0x413a2711,%ecx
movzwl -0x12(%rbp),%esi
call   1030 <bbm_long_write@plt>
jmp    1bc7 <fc8300_set_acif_b31_1seg+0xab7>
mov    -0x10(%rbp),%rdi
mov    $0x1040,%edx
mov    $0xffff00,%ecx
movzwl -0x12(%rbp),%esi
call   1030 <bbm_long_write@plt>
mov    -0x10(%rbp),%rdi
mov    $0x1044,%edx
mov    $0x30302,%ecx
movzwl -0x12(%rbp),%esi
call   1030 <bbm_long_write@plt>
mov    -0x10(%rbp),%rdi
mov    $0x1048,%edx
mov    $0x1f7f6fa,%ecx
movzwl -0x12(%rbp),%esi
call   1030 <bbm_long_write@plt>
mov    -0x10(%rbp),%rdi
mov    $0x104c,%edx
mov    $0x3f392712,%ecx
movzwl -0x12(%rbp),%esi
call   1030 <bbm_long_write@plt>
jmp    1bc7 <fc8300_set_acif_b31_1seg+0xab7>
movl   $0x1,-0x4(%rbp)
jmp    1bce <fc8300_set_acif_b31_1seg+0xabe>
movl   $0x0,-0x4(%rbp)
mov    -0x4(%rbp),%eax
add    $0x20,%rsp
pop    %rbp
ret

x86 assembly (clang, -O2):
push   %rbp
push   %r15
push   %r14
push   %r12
push   %rbx
mov    %rdi,%rbx
mov    $0x1,%eax
cmp    $0x19a27,%edx
jle    1169 <fc8300_set_acif_b31_1seg+0x59>
cmp    $0x1a5df,%edx
jle    11d3 <fc8300_set_acif_b31_1seg+0xc3>
cmp    $0x1b3ef,%edx
jle    1249 <fc8300_set_acif_b31_1seg+0x139>
cmp    $0x1b647,%edx
jg     12fd <fc8300_set_acif_b31_1seg+0x1ed>
cmp    $0x1b3f0,%edx
je     138a <fc8300_set_acif_b31_1seg+0x27a>
cmp    $0x1b580,%edx
je     137c <fc8300_set_acif_b31_1seg+0x26c>
jmp    1463 <fc8300_set_acif_b31_1seg+0x353>
mov    $0x453c270e,%r14d
mov    $0xfcf5f7fe,%r15d
mov    $0x2040200,%r12d
mov    $0xffff0000,%ecx
cmp    $0x189bf,%edx
jg     1214 <fc8300_set_acif_b31_1seg+0x104>
cmp    $0x182b7,%edx
jg     127e <fc8300_set_acif_b31_1seg+0x16e>
cmp    $0x17d72,%edx
je     13a3 <fc8300_set_acif_b31_1seg+0x293>
cmp    $0x17f7f,%edx
je     13b7 <fc8300_set_acif_b31_1seg+0x2a7>
cmp    $0x18006,%edx
jne    1463 <fc8300_set_acif_b31_1seg+0x353>
mov    $0x473e260c,%r14d
mov    $0xfaf4f8ff,%r15d
mov    $0x3030200,%r12d
jmp    1419 <fc8300_set_acif_b31_1seg+0x309>
cmp    $0x1a1c5,%edx
jg     12a7 <fc8300_set_acif_b31_1seg+0x197>
cmp    $0x19a28,%edx
je     132d <fc8300_set_acif_b31_1seg+0x21d>
cmp    $0x19a82,%edx
je     132d <fc8300_set_acif_b31_1seg+0x21d>
cmp    $0x19c80,%edx
jne    1463 <fc8300_set_acif_b31_1seg+0x353>
mov    $0x423a2710,%r14d
mov    $0xfef6f6fc,%r15d
jmp    1339 <fc8300_set_acif_b31_1seg+0x229>
cmp    $0x18f9b,%edx
jg     12d1 <fc8300_set_acif_b31_1seg+0x1c1>
cmp    $0x189c0,%edx
je     1419 <fc8300_set_acif_b31_1seg+0x309>
cmp    $0x18d44,%edx
je     13cb <fc8300_set_acif_b31_1seg+0x2bb>
cmp    $0x18e70,%edx
je     1365 <fc8300_set_acif_b31_1seg+0x255>
jmp    1463 <fc8300_set_acif_b31_1seg+0x353>
cmp    $0x1a5e0,%edx
je     1349 <fc8300_set_acif_b31_1seg+0x239>
cmp    $0x1a7c0,%edx
je     1349 <fc8300_set_acif_b31_1seg+0x239>
cmp    $0x1af40,%edx
jne    1463 <fc8300_set_acif_b31_1seg+0x353>
mov    $0x40392712,%r14d
mov    $0xf7f6fb,%r15d
jmp    1396 <fc8300_set_acif_b31_1seg+0x286>
cmp    $0x182b8,%edx
je     13df <fc8300_set_acif_b31_1seg+0x2cf>
cmp    $0x186a0,%edx
je     13f3 <fc8300_set_acif_b31_1seg+0x2e3>
cmp    $0x1898e,%edx
je     1419 <fc8300_set_acif_b31_1seg+0x309>
jmp    1463 <fc8300_set_acif_b31_1seg+0x353>
cmp    $0x1a1c6,%edx
je     12c3 <fc8300_set_acif_b31_1seg+0x1b3>
cmp    $0x1a2f2,%edx
je     12c3 <fc8300_set_acif_b31_1seg+0x1b3>
cmp    $0x1a405,%edx
jne    1463 <fc8300_set_acif_b31_1seg+0x353>
mov    $0x413a2711,%r14d
mov    $0xfff6f6fb,%r15d
jmp    1339 <fc8300_set_acif_b31_1seg+0x229>
cmp    $0x18f9c,%edx
je     1365 <fc8300_set_acif_b31_1seg+0x255>
cmp    $0x191c2,%edx
je     1407 <fc8300_set_acif_b31_1seg+0x2f7>
cmp    $0x19640,%edx
jne    1463 <fc8300_set_acif_b31_1seg+0x353>
mov    $0x433b2710,%r14d
jmp    1333 <fc8300_set_acif_b31_1seg+0x223>
cmp    $0x1b648,%edx
je     137c <fc8300_set_acif_b31_1seg+0x26c>
cmp    $0x1c200,%edx
jne    1463 <fc8300_set_acif_b31_1seg+0x353>
mov    $0x3e382713,%r14d
mov    $0x2f8f6fa,%r15d
mov    $0xff020302,%r12d
mov    $0xffff00,%ecx
jmp    1419 <fc8300_set_acif_b31_1seg+0x309>
mov    $0x423b2710,%r14d
mov    $0xfef6f7fc,%r15d
mov    $0x1030301,%r12d
mov    $0xffff00,%ecx
jmp    1419 <fc8300_set_acif_b31_1seg+0x309>
mov    $0x413a2711,%r14d
mov    $0xfff6f6fb,%r15d
mov    $0x30301,%r12d
mov    $0xffff00,%ecx
jmp    1419 <fc8300_set_acif_b31_1seg+0x309>
mov    $0x443c270f,%r14d
mov    $0xfdf5f7fd,%r15d
mov    $0x2040201,%r12d
jmp    1419 <fc8300_set_acif_b31_1seg+0x309>
mov    $0x3f392712,%r14d
mov    $0x1f7f6fa,%r15d
jmp    1396 <fc8300_set_acif_b31_1seg+0x286>
mov    $0x3f392712,%r14d
mov    $0xf7f6fa,%r15d
mov    $0x30302,%r12d
mov    $0xffff00,%ecx
jmp    1419 <fc8300_set_acif_b31_1seg+0x309>
mov    $0x483e260b,%r14d
mov    $0xf9f4f9ff,%r15d
mov    $0x30301ff,%r12d
jmp    1419 <fc8300_set_acif_b31_1seg+0x309>
mov    $0x483e260c,%r14d
mov    $0xfaf4f8ff,%r15d
mov    $0x3030100,%r12d
jmp    1419 <fc8300_set_acif_b31_1seg+0x309>
mov    $0x443c270f,%r14d
mov    $0xfcf5f7fd,%r15d
mov    $0x2040201,%r12d
jmp    1419 <fc8300_set_acif_b31_1seg+0x309>
mov    $0x473e270d,%r14d
mov    $0xfaf4f8ff,%r15d
mov    $0x3040200,%r12d
jmp    1419 <fc8300_set_acif_b31_1seg+0x309>
mov    $0x463d270d,%r14d
mov    $0xfbf5f8fe,%r15d
mov    $0x3040200,%r12d
jmp    1419 <fc8300_set_acif_b31_1seg+0x309>
mov    $0x433b270f,%r14d
mov    $0xfdf5f7fd,%r15d
mov    $0x2030301,%r12d
movzwl %si,%ebp
mov    %rbx,%rdi
mov    %ebp,%esi
mov    $0x1040,%edx
call   1030 <bbm_long_write@plt>
mov    %rbx,%rdi
mov    %ebp,%esi
mov    $0x1044,%edx
mov    %r12d,%ecx
call   1030 <bbm_long_write@plt>
mov    %rbx,%rdi
mov    %ebp,%esi
mov    $0x1048,%edx
mov    %r15d,%ecx
call   1030 <bbm_long_write@plt>
mov    %rbx,%rdi
mov    %ebp,%esi
mov    $0x104c,%edx
mov    %r14d,%ecx
call   1030 <bbm_long_write@plt>
xor    %eax,%eax
pop    %rbx
pop    %r12
pop    %r14
pop    %r15
pop    %rbp
ret

LLVM IR (-O0):
define i32 @fc8300_set_acif_b31_1seg(i8* %0, i16 zeroext %1, i32 %2) {
%4 = alloca i32
%5 = alloca i8*
%6 = alloca i16
%7 = alloca i32
store i8* %0, i8** %5
store i16 %1, i16* %6
store i32 %2, i32* %7
%8 = load i32, i32* %7
switch i32 %8, label %308 [
i32 100750, label %9
i32 100800, label %9
i32 105600, label %22
i32 110400, label %35
i32 115200, label %48
i32 99000, label %61
i32 102000, label %74
i32 105000, label %87
i32 108000, label %100
i32 98310, label %113
i32 101700, label %126
i32 105090, label %139
i32 108480, label %152
i32 100000, label %165
i32 104000, label %178
i32 112000, label %191
i32 97650, label %204
i32 102300, label %217
i32 106950, label %230
i32 111600, label %243
i32 98175, label %256
i32 102850, label %269
i32 107250, label %282
i32 107525, label %282
i32 112200, label %295
]
9: ; preds = %3, %3
%10 = load i8*, i8** %5
%11 = load i16, i16* %6
%12 = call i32 @bbm_long_write(i8* %10, i16 zeroext %11, i32 4160, i32 -65536)
%13 = load i8*, i8** %5
%14 = load i16, i16* %6
%15 = call i32 @bbm_long_write(i8* %13, i16 zeroext %14, i32 4164, i32 33817088)
%16 = load i8*, i8** %5
%17 = load i16, i16* %6
%18 = call i32 @bbm_long_write(i8* %16, i16 zeroext %17, i32 4168, i32 -50989058)
%19 = load i8*, i8** %5
%20 = load i16, i16* %6
%21 = call i32 @bbm_long_write(i8* %19, i16 zeroext %20, i32 4172, i32 1161570062)
br label %309
22: ; preds = %3
%23 = load i8*, i8** %5
%24 = load i16, i16* %6
%25 = call i32 @bbm_long_write(i8* %23, i16 zeroext %24, i32 4160, i32 16776960)
%26 = load i8*, i8** %5
%27 = load i16, i16* %6
%28 = call i32 @bbm_long_write(i8* %26, i16 zeroext %27, i32 4164, i32 16974593)
%29 = load i8*, i8** %5
%30 = load i16, i16* %6
%31 = call i32 @bbm_long_write(i8* %29, i16 zeroext %30, i32 4168, i32 -17369348)
%32 = load i8*, i8** %5
%33 = load i16, i16* %6
%34 = call i32 @bbm_long_write(i8* %32, i16 zeroext %33, i32 4172, i32 1111107344)
br label %309
35: ; preds = %3
%36 = load i8*, i8** %5
%37 = load i16, i16* %6
%38 = call i32 @bbm_long_write(i8* %36, i16 zeroext %37, i32 4160, i32 16776960)
%39 = load i8*, i8** %5
%40 = load i16, i16* %6
%41 = call i32 @bbm_long_write(i8* %39, i16 zeroext %40, i32 4164, i32 197378)
%42 = load i8*, i8** %5
%43 = load i16, i16* %6
%44 = call i32 @bbm_long_write(i8* %42, i16 zeroext %43, i32 4168, i32 16250619)
%45 = load i8*, i8** %5
%46 = load i16, i16* %6
%47 = call i32 @bbm_long_write(i8* %45, i16 zeroext %46, i32 4172, i32 1077487378)
br label %309
48: ; preds = %3
%49 = load i8*, i8** %5
%50 = load i16, i16* %6
%51 = call i32 @bbm_long_write(i8* %49, i16 zeroext %50, i32 4160, i32 16776960)
%52 = load i8*, i8** %5
%53 = load i16, i16* %6
%54 = call i32 @bbm_long_write(i8* %52, i16 zeroext %53, i32 4164, i32 -16645374)
%55 = load i8*, i8** %5
%56 = load i16, i16* %6
%57 = call i32 @bbm_long_write(i8* %55, i16 zeroext %56, i32 4168, i32 49870586)
%58 = load i8*, i8** %5
%59 = load i16, i16* %6
%60 = call i32 @bbm_long_write(i8* %58, i16 zeroext %59, i32 4172, i32 1043867411)
br label %309
61: ; preds = %3
%62 = load i8*, i8** %5
%63 = load i16, i16* %6
%64 = call i32 @bbm_long_write(i8* %62, i16 zeroext %63, i32 4160, i32 -65536)
%65 = load i8*, i8** %5
%66 = load i16, i16* %6
%67 = call i32 @bbm_long_write(i8* %65, i16 zeroext %66, i32 4164, i32 50594304)
%68 = load i8*, i8** %5
%69 = load i16, i16* %6
%70 = call i32 @bbm_long_write(i8* %68, i16 zeroext %69, i32 4168, i32 -84608769)
%71 = load i8*, i8** %5
%72 = load i16, i16* %6
%73 = call i32 @bbm_long_write(i8* %71, i16 zeroext %72, i32 4172, i32 1195255565)
br label %309
74: ; preds = %3
%75 = load i8*, i8** %5
%76 = load i16, i16* %6
%77 = call i32 @bbm_long_write(i8* %75, i16 zeroext %76, i32 4160, i32 -65536)
%78 = load i8*, i8** %5
%79 = load i16, i16* %6
%80 = call i32 @bbm_long_write(i8* %78, i16 zeroext %79, i32 4164, i32 33817089)
%81 = load i8*, i8** %5
%82 = load i16, i16* %6
%83 = call i32 @bbm_long_write(i8* %81, i16 zeroext %82, i32 4168, i32 -34211843)
%84 = load i8*, i8** %5
%85 = load i16, i16* %6
%86 = call i32 @bbm_long_write(i8* %84, i16 zeroext %85, i32 4172, i32 1144792847)
br label %309
87: ; preds = %3
%88 = load i8*, i8** %5
%89 = load i16, i16* %6
%90 = call i32 @bbm_long_write(i8* %88, i16 zeroext %89, i32 4160, i32 16776960)
%91 = load i8*, i8** %5
%92 = load i16, i16* %6
%93 = call i32 @bbm_long_write(i8* %91, i16 zeroext %92, i32 4164, i32 16974593)
%94 = load i8*, i8** %5
%95 = load i16, i16* %6
%96 = call i32 @bbm_long_write(i8* %94, i16 zeroext %95, i32 4168, i32 -17369092)
%97 = load i8*, i8** %5
%98 = load i16, i16* %6
%99 = call i32 @bbm_long_write(i8* %97, i16 zeroext %98, i32 4172, i32 1111172880)
br label %309
100: ; preds = %3
%101 = load i8*, i8** %5
%102 = load i16, i16* %6
%103 = call i32 @bbm_long_write(i8* %101, i16 zeroext %102, i32 4160, i32 16776960)
%104 = load i8*, i8** %5
%105 = load i16, i16* %6
%106 = call i32 @bbm_long_write(i8* %104, i16 zeroext %105, i32 4164, i32 197377)
%107 = load i8*, i8** %5
%108 = load i16, i16* %6
%109 = call i32 @bbm_long_write(i8* %107, i16 zeroext %108, i32 4168, i32 -592133)
%110 = load i8*, i8** %5
%111 = load i16, i16* %6
%112 = call i32 @bbm_long_write(i8* %110, i16 zeroext %111, i32 4172, i32 1094330129)
br label %309
113: ; preds = %3
%114 = load i8*, i8** %5
%115 = load i16, i16* %6
%116 = call i32 @bbm_long_write(i8* %114, i16 zeroext %115, i32 4160, i32 -65536)
%117 = load i8*, i8** %5
%118 = load i16, i16* %6
%119 = call i32 @bbm_long_write(i8* %117, i16 zeroext %118, i32 4164, i32 50528768)
%120 = load i8*, i8** %5
%121 = load i16, i16* %6
%122 = call i32 @bbm_long_write(i8* %120, i16 zeroext %121, i32 4168, i32 -84608769)
%123 = load i8*, i8** %5
%124 = load i16, i16* %6
%125 = call i32 @bbm_long_write(i8* %123, i16 zeroext %124, i32 4172, i32 1195255308)
br label %309
126: ; preds = %3
%127 = load i8*, i8** %5
%128 = load i16, i16* %6
%129 = call i32 @bbm_long_write(i8* %127, i16 zeroext %128, i32 4160, i32 -65536)
%130 = load i8*, i8** %5
%131 = load i16, i16* %6
%132 = call i32 @bbm_long_write(i8* %130, i16 zeroext %131, i32 4164, i32 33817089)
%133 = load i8*, i8** %5
%134 = load i16, i16* %6
%135 = call i32 @bbm_long_write(i8* %133, i16 zeroext %134, i32 4168, i32 -50989059)
%136 = load i8*, i8** %5
%137 = load i16, i16* %6
%138 = call i32 @bbm_long_write(i8* %136, i16 zeroext %137, i32 4172, i32 1144792847)
br label %309
139: ; preds = %3
%140 = load i8*, i8** %5
%141 = load i16, i16* %6
%142 = call i32 @bbm_long_write(i8* %140, i16 zeroext %141, i32 4160, i32 16776960)
%143 = load i8*, i8** %5
%144 = load i16, i16* %6
%145 = call i32 @bbm_long_write(i8* %143, i16 zeroext %144, i32 4164, i32 16974593)
%146 = load i8*, i8** %5
%147 = load i16, i16* %6
%148 = call i32 @bbm_long_write(i8* %146, i16 zeroext %147, i32 4168, i32 -17369092)
%149 = load i8*, i8** %5
%150 = load i16, i16* %6
%151 = call i32 @bbm_long_write(i8* %149, i16 zeroext %150, i32 4172, i32 1111172880)
br label %309
152: ; preds = %3
%153 = load i8*, i8** %5
%154 = load i16, i16* %6
%155 = call i32 @bbm_long_write(i8* %153, i16 zeroext %154, i32 4160, i32 16776960)
%156 = load i8*, i8** %5
%157 = load i16, i16* %6
%158 = call i32 @bbm_long_write(i8* %156, i16 zeroext %157, i32 4164, i32 197377)
%159 = load i8*, i8** %5
%160 = load i16, i16* %6
%161 = call i32 @bbm_long_write(i8* %159, i16 zeroext %160, i32 4168, i32 -592133)
%162 = load i8*, i8** %5
%163 = load i16, i16* %6
%164 = call i32 @bbm_long_write(i8* %162, i16 zeroext %163, i32 4172, i32 1094330129)
br label %309
165: ; preds = %3
%166 = load i8*, i8** %5
%167 = load i16, i16* %6
%168 = call i32 @bbm_long_write(i8* %166, i16 zeroext %167, i32 4160, i32 -65536)
%169 = load i8*, i8** %5
%170 = load i16, i16* %6
%171 = call i32 @bbm_long_write(i8* %169, i16 zeroext %170, i32 4164, i32 50594304)
%172 = load i8*, i8** %5
%173 = load i16, i16* %6
%174 = call i32 @bbm_long_write(i8* %172, i16 zeroext %173, i32 4168, i32 -67766018)
%175 = load i8*, i8** %5
%176 = load i16, i16* %6
%177 = call i32 @bbm_long_write(i8* %175, i16 zeroext %176, i32 4172, i32 1178412813)
br label %309
178: ; preds = %3
%179 = load i8*, i8** %5
%180 = load i16, i16* %6
%181 = call i32 @bbm_long_write(i8* %179, i16 zeroext %180, i32 4160, i32 16776960)
%182 = load i8*, i8** %5
%183 = load i16, i16* %6
%184 = call i32 @bbm_long_write(i8* %182, i16 zeroext %183, i32 4164, i32 16974593)
%185 = load i8*, i8** %5
%186 = load i16, i16* %6
%187 = call i32 @bbm_long_write(i8* %185, i16 zeroext %186, i32 4168, i32 -17369092)
%188 = load i8*, i8** %5
%189 = load i16, i16* %6
%190 = call i32 @bbm_long_write(i8* %188, i16 zeroext %189, i32 4172, i32 1127950096)
br label %309
191: ; preds = %3
%192 = load i8*, i8** %5
%193 = load i16, i16* %6
%194 = call i32 @bbm_long_write(i8* %192, i16 zeroext %193, i32 4160, i32 16776960)
%195 = load i8*, i8** %5
%196 = load i16, i16* %6
%197 = call i32 @bbm_long_write(i8* %195, i16 zeroext %196, i32 4164, i32 197378)
%198 = load i8*, i8** %5
%199 = load i16, i16* %6
%200 = call i32 @bbm_long_write(i8* %198, i16 zeroext %199, i32 4168, i32 33027834)
%201 = load i8*, i8** %5
%202 = load i16, i16* %6
%203 = call i32 @bbm_long_write(i8* %201, i16 zeroext %202, i32 4172, i32 1060710162)
br label %309
204: ; preds = %3
%205 = load i8*, i8** %5
%206 = load i16, i16* %6
%207 = call i32 @bbm_long_write(i8* %205, i16 zeroext %206, i32 4160, i32 -65536)
%208 = load i8*, i8** %5
%209 = load i16, i16* %6
%210 = call i32 @bbm_long_write(i8* %208, i16 zeroext %209, i32 4164, i32 50528767)
%211 = load i8*, i8** %5
%212 = load i16, i16* %6
%213 = call i32 @bbm_long_write(i8* %211, i16 zeroext %212, i32 4168, i32 -101385729)
%214 = load i8*, i8** %5
%215 = load i16, i16* %6
%216 = call i32 @bbm_long_write(i8* %214, i16 zeroext %215, i32 4172, i32 1212032523)
br label %309
217: ; preds = %3
%218 = load i8*, i8** %5
%219 = load i16, i16* %6
%220 = call i32 @bbm_long_write(i8* %218, i16 zeroext %219, i32 4160, i32 -65536)
%221 = load i8*, i8** %5
%222 = load i16, i16* %6
%223 = call i32 @bbm_long_write(i8* %221, i16 zeroext %222, i32 4164, i32 33817089)
%224 = load i8*, i8** %5
%225 = load i16, i16* %6
%226 = call i32 @bbm_long_write(i8* %224, i16 zeroext %225, i32 4168, i32 -34211843)
%227 = load i8*, i8** %5
%228 = load i16, i16* %6
%229 = call i32 @bbm_long_write(i8* %227, i16 zeroext %228, i32 4172, i32 1144792847)
br label %309
230: ; preds = %3
%231 = load i8*, i8** %5
%232 = load i16, i16* %6
%233 = call i32 @bbm_long_write(i8* %231, i16 zeroext %232, i32 4160, i32 16776960)
%234 = load i8*, i8** %5
%235 = load i16, i16* %6
%236 = call i32 @bbm_long_write(i8* %234, i16 zeroext %235, i32 4164, i32 16974593)
%237 = load i8*, i8** %5
%238 = load i16, i16* %6
%239 = call i32 @bbm_long_write(i8* %237, i16 zeroext %238, i32 4168, i32 -592133)
%240 = load i8*, i8** %5
%241 = load i16, i16* %6
%242 = call i32 @bbm_long_write(i8* %240, i16 zeroext %241, i32 4172, i32 1094330129)
br label %309
243: ; preds = %3
%244 = load i8*, i8** %5
%245 = load i16, i16* %6
%246 = call i32 @bbm_long_write(i8* %244, i16 zeroext %245, i32 4160, i32 16776960)
%247 = load i8*, i8** %5
%248 = load i16, i16* %6
%249 = call i32 @bbm_long_write(i8* %247, i16 zeroext %248, i32 4164, i32 197378)
%250 = load i8*, i8** %5
%251 = load i16, i16* %6
%252 = call i32 @bbm_long_write(i8* %250, i16 zeroext %251, i32 4168, i32 16250618)
%253 = load i8*, i8** %5
%254 = load i16, i16* %6
%255 = call i32 @bbm_long_write(i8* %253, i16 zeroext %254, i32 4172, i32 1060710162)
br label %309
256: ; preds = %3
%257 = load i8*, i8** %5
%258 = load i16, i16* %6
%259 = call i32 @bbm_long_write(i8* %257, i16 zeroext %258, i32 4160, i32 -65536)
%260 = load i8*, i8** %5
%261 = load i16, i16* %6
%262 = call i32 @bbm_long_write(i8* %260, i16 zeroext %261, i32 4164, i32 50528512)
%263 = load i8*, i8** %5
%264 = load i16, i16* %6
%265 = call i32 @bbm_long_write(i8* %263, i16 zeroext %264, i32 4168, i32 -84608769)
%266 = load i8*, i8** %5
%267 = load i16, i16* %6
%268 = call i32 @bbm_long_write(i8* %266, i16 zeroext %267, i32 4172, i32 1212032524)
br label %309
269: ; preds = %3
%270 = load i8*, i8** %5
%271 = load i16, i16* %6
%272 = call i32 @bbm_long_write(i8* %270, i16 zeroext %271, i32 4160, i32 -65536)
%273 = load i8*, i8** %5
%274 = load i16, i16* %6
%275 = call i32 @bbm_long_write(i8* %273, i16 zeroext %274, i32 4164, i32 33751809)
%276 = load i8*, i8** %5
%277 = load i16, i16* %6
%278 = call i32 @bbm_long_write(i8* %276, i16 zeroext %277, i32 4168, i32 -34211843)
%279 = load i8*, i8** %5
%280 = load i16, i16* %6
%281 = call i32 @bbm_long_write(i8* %279, i16 zeroext %280, i32 4172, i32 1127950095)
br label %309
282: ; preds = %3, %3
%283 = load i8*, i8** %5
%284 = load i16, i16* %6
%285 = call i32 @bbm_long_write(i8* %283, i16 zeroext %284, i32 4160, i32 16776960)
%286 = load i8*, i8** %5
%287 = load i16, i16* %6
%288 = call i32 @bbm_long_write(i8* %286, i16 zeroext %287, i32 4164, i32 16974593)
%289 = load i8*, i8** %5
%290 = load i16, i16* %6
%291 = call i32 @bbm_long_write(i8* %289, i16 zeroext %290, i32 4168, i32 -592133)
%292 = load i8*, i8** %5
%293 = load i16, i16* %6
%294 = call i32 @bbm_long_write(i8* %292, i16 zeroext %293, i32 4172, i32 1094330129)
br label %309
295: ; preds = %3
%296 = load i8*, i8** %5
%297 = load i16, i16* %6
%298 = call i32 @bbm_long_write(i8* %296, i16 zeroext %297, i32 4160, i32 16776960)
%299 = load i8*, i8** %5
%300 = load i16, i16* %6
%301 = call i32 @bbm_long_write(i8* %299, i16 zeroext %300, i32 4164, i32 197378)
%302 = load i8*, i8** %5
%303 = load i16, i16* %6
%304 = call i32 @bbm_long_write(i8* %302, i16 zeroext %303, i32 4168, i32 33027834)
%305 = load i8*, i8** %5
%306 = load i16, i16* %6
%307 = call i32 @bbm_long_write(i8* %305, i16 zeroext %306, i32 4172, i32 1060710162)
br label %309
308: ; preds = %3
store i32 1, i32* %4
br label %310
309: ; preds = %295, %282, %269, %256, %243, %230, %217, %204, %191, %178, %165, %152, %139, %126, %113, %100, %87, %74, %61, %48, %35, %22, %9
store i32 0, i32* %4
br label %310
310: ; preds = %309, %308
%311 = load i32, i32* %4
ret i32 %311
}

LLVM IR (-O2):
define i32 @fc8300_set_acif_b31_1seg(i8* %0, i16 zeroext %1, i32 %2) {
switch i32 %2, label %35 [
i32 100750, label %26
i32 100800, label %26
i32 105600, label %4
i32 110400, label %5
i32 115200, label %6
i32 99000, label %7
i32 102000, label %8
i32 105000, label %9
i32 108000, label %10
i32 98310, label %11
i32 101700, label %12
i32 105090, label %13
i32 108480, label %14
i32 100000, label %15
i32 104000, label %16
i32 112000, label %17
i32 97650, label %18
i32 102300, label %19
i32 106950, label %20
i32 111600, label %21
i32 98175, label %22
i32 102850, label %23
i32 107250, label %24
i32 107525, label %24
i32 112200, label %25
]
4: ; preds = %3
br label %26
5: ; preds = %3
br label %26
6: ; preds = %3
br label %26
7: ; preds = %3
br label %26
8: ; preds = %3
br label %26
9: ; preds = %3
br label %26
10: ; preds = %3
br label %26
11: ; preds = %3
br label %26
12: ; preds = %3
br label %26
13: ; preds = %3
br label %26
14: ; preds = %3
br label %26
15: ; preds = %3
br label %26
16: ; preds = %3
br label %26
17: ; preds = %3
br label %26
18: ; preds = %3
br label %26
19: ; preds = %3
br label %26
20: ; preds = %3
br label %26
21: ; preds = %3
br label %26
22: ; preds = %3
br label %26
23: ; preds = %3
br label %26
24: ; preds = %3, %3
br label %26
25: ; preds = %3
br label %26
26: ; preds = %3, %3, %25, %24, %23, %22, %21, %20, %19, %18, %17, %16, %15, %14, %13, %12, %11, %10, %9, %8, %7, %6, %5, %4
%27 = phi i32 [ 16776960, %4 ], [ 16776960, %5 ], [ 16776960, %6 ], [ -65536, %7 ], [ -65536, %8 ], [ 16776960, %9 ], [ 16776960, %10 ], [ -65536, %11 ], [ -65536, %12 ], [ 16776960, %13 ], [ 16776960, %14 ], [ -65536, %15 ], [ 16776960, %16 ], [ 16776960, %17 ], [ -65536, %18 ], [ -65536, %19 ], [ 16776960, %20 ], [ 16776960, %21 ], [ -65536, %22 ], [ -65536, %23 ], [ 16776960, %24 ], [ 16776960, %25 ], [ -65536, %3 ], [ -65536, %3 ]
%28 = phi i32 [ 16974593, %4 ], [ 197378, %5 ], [ -16645374, %6 ], [ 50594304, %7 ], [ 33817089, %8 ], [ 16974593, %9 ], [ 197377, %10 ], [ 50528768, %11 ], [ 33817089, %12 ], [ 16974593, %13 ], [ 197377, %14 ], [ 50594304, %15 ], [ 16974593, %16 ], [ 197378, %17 ], [ 50528767, %18 ], [ 33817089, %19 ], [ 16974593, %20 ], [ 197378, %21 ], [ 50528512, %22 ], [ 33751809, %23 ], [ 16974593, %24 ], [ 197378, %25 ], [ 33817088, %3 ], [ 33817088, %3 ]
%29 = phi i32 [ -17369348, %4 ], [ 16250619, %5 ], [ 49870586, %6 ], [ -84608769, %7 ], [ -34211843, %8 ], [ -17369092, %9 ], [ -592133, %10 ], [ -84608769, %11 ], [ -50989059, %12 ], [ -17369092, %13 ], [ -592133, %14 ], [ -67766018, %15 ], [ -17369092, %16 ], [ 33027834, %17 ], [ -101385729, %18 ], [ -34211843, %19 ], [ -592133, %20 ], [ 16250618, %21 ], [ -84608769, %22 ], [ -34211843, %23 ], [ -592133, %24 ], [ 33027834, %25 ], [ -50989058, %3 ], [ -50989058, %3 ]
%30 = phi i32 [ 1111107344, %4 ], [ 1077487378, %5 ], [ 1043867411, %6 ], [ 1195255565, %7 ], [ 1144792847, %8 ], [ 1111172880, %9 ], [ 1094330129, %10 ], [ 1195255308, %11 ], [ 1144792847, %12 ], [ 1111172880, %13 ], [ 1094330129, %14 ], [ 1178412813, %15 ], [ 1127950096, %16 ], [ 1060710162, %17 ], [ 1212032523, %18 ], [ 1144792847, %19 ], [ 1094330129, %20 ], [ 1060710162, %21 ], [ 1212032524, %22 ], [ 1127950095, %23 ], [ 1094330129, %24 ], [ 1060710162, %25 ], [ 1161570062, %3 ], [ 1161570062, %3 ]
%31 = tail call i32 @bbm_long_write(i8* %0, i16 zeroext %1, i32 4160, i32 %27)
%32 = tail call i32 @bbm_long_write(i8* %0, i16 zeroext %1, i32 4164, i32 %28)
%33 = tail call i32 @bbm_long_write(i8* %0, i16 zeroext %1, i32 4168, i32 %29)
%34 = tail call i32 @bbm_long_write(i8* %0, i16 zeroext %1, i32 4172, i32 %30)
br label %35
35: ; preds = %26, %3
%36 = phi i32 [ 1, %3 ], [ 0, %26 ]
ret i32 %36
}