#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*/ fc8300_write(void *, unsigned short, int, int);
void fc8300_1seg_init(void *handle, unsigned short devid,
                      unsigned short filter_cal) {
  fc8300_write(handle, devid, 0x00, 0x00);
  fc8300_write(handle, devid, 0x02, 0x01);
  fc8300_write(handle, devid, 0x03, 0x04);
  fc8300_write(handle, devid, 0x04, 0x10);
  fc8300_write(handle, devid, 0x08, 0xe4);
  fc8300_write(handle, devid, 0x13, 0x07);
  fc8300_write(handle, devid, 0x19, 0x21);
  fc8300_write(handle, devid, 0x1d, 0x10);
  fc8300_write(handle, devid, 0x1f, 0x72);
  fc8300_write(handle, devid, 0x20, 0x22);
  fc8300_write(handle, devid, 0x21, 0x30);
  fc8300_write(handle, devid, 0x24, 0x98);
  fc8300_write(handle, devid, 0x3f, 0x01);
  fc8300_write(handle, devid, 0x40, (0x44 + (filter_cal / 256)));
  fc8300_write(handle, devid, 0x41, (filter_cal % 256));
  fc8300_write(handle, devid, 0x3f, 0x00);
  fc8300_write(handle, devid, 0x33, 0x83);
  fc8300_write(handle, devid, 0x34, 0x44);
  fc8300_write(handle, devid, 0x37, 0x65);
  fc8300_write(handle, devid, 0x38, 0x55);
  fc8300_write(handle, devid, 0x39, 0x02);
  fc8300_write(handle, devid, 0x3e, 0xab);
  fc8300_write(handle, devid, 0x3c, 0xaa);
  fc8300_write(handle, devid, 0x3d, 0xaa);
  fc8300_write(handle, devid, 0x4d, 0x01);
  fc8300_write(handle, devid, 0x50, 0xff);
  fc8300_write(handle, devid, 0x54, 0x80);
  fc8300_write(handle, devid, 0x70, 0x5f);
  fc8300_write(handle, devid, 0x78, 0x31);
  fc8300_write(handle, devid, 0x82, 0x88);
  fc8300_write(handle, devid, 0x84, 0x14);
  fc8300_write(handle, devid, 0x85, 0x0f);
  fc8300_write(handle, devid, 0x86, 0x3f);
  fc8300_write(handle, devid, 0x87, 0x18);
  fc8300_write(handle, devid, 0x88, 0x0e);
  fc8300_write(handle, devid, 0x89, 0x0b);
  fc8300_write(handle, devid, 0x8a, 0x15);
  fc8300_write(handle, devid, 0x8b, 0x0e);
  fc8300_write(handle, devid, 0x8f, 0xb6);
  fc8300_write(handle, devid, 0x90, 0xb2);
  fc8300_write(handle, devid, 0x91, 0x68);
  fc8300_write(handle, devid, 0xb2, 0x00);
  fc8300_write(handle, devid, 0xb3, 0x04);
  fc8300_write(handle, devid, 0xb4, 0x00);
  fc8300_write(handle, devid, 0xb5, 0x04);
  fc8300_write(handle, devid, 0xb6, 0x00);
  fc8300_write(handle, devid, 0xb7, 0x07);
  fc8300_write(handle, devid, 0xb8, 0x00);
  fc8300_write(handle, devid, 0xb9, 0x07);
  fc8300_write(handle, devid, 0xba, 0x00);
  fc8300_write(handle, devid, 0xbb, 0x07);
  fc8300_write(handle, devid, 0xbc, 0x00);
  fc8300_write(handle, devid, 0xbd, 0x0a);
  fc8300_write(handle, devid, 0xbe, 0x00);
  fc8300_write(handle, devid, 0xbf, 0x0a);
  fc8300_write(handle, devid, 0xc0, 0x0a);
  fc8300_write(handle, devid, 0xc1, 0x00);
  fc8300_write(handle, devid, 0xc2, 0x13);
  fc8300_write(handle, devid, 0xc3, 0x00);
  fc8300_write(handle, devid, 0xd3, 0x00);
  fc8300_write(handle, devid, 0xd4, 0x01);
  fc8300_write(handle, devid, 0xd5, 0x05);
  fc8300_write(handle, devid, 0xd6, 0x0d);
  fc8300_write(handle, devid, 0xd7, 0x0e);
  fc8300_write(handle, devid, 0xd8, 0x0f);
  fc8300_write(handle, devid, 0xd9, 0x2f);
  fc8300_write(handle, devid, 0xda, 0x4f);
  fc8300_write(handle, devid, 0xdb, 0x6f);
  fc8300_write(handle, devid, 0xdc, 0x77);
  fc8300_write(handle, devid, 0xdd, 0x97);
  fc8300_write(handle, devid, 0xe9, 0x79);
  fc8300_write(handle, devid, 0xed, 0x0c);
  fc8300_write(handle, devid, 0xef, 0xb7);
  fc8300_write(handle, devid, 0x2a, 0xb2);
  fc8300_write(handle, devid, 0x2b, 0xb5);
  fc8300_write(handle, devid, 0x2c, 0xd5);
  fc8300_write(handle, devid, 0x2d, 0xd8);
  fc8300_write(handle, devid, 0xcd, 0x41);
  fc8300_write(handle, devid, 0xce, 0x88);
  fc8300_write(handle, devid, 0xcf, 0x01);
  fc8300_write(handle, devid, 0x2e, 0x64);
  fc8300_write(handle, devid, 0x2f, 0x91);
}


x86 assembly (clang, -O0):
push   %rbp
mov    %rsp,%rbp
sub    $0x10,%rsp
mov    %dx,%ax
mov    %si,%cx
mov    %rdi,-0x8(%rbp)
mov    %cx,-0xa(%rbp)
mov    %ax,-0xc(%rbp)
mov    -0x8(%rbp),%rdi
xor    %ecx,%ecx
movzwl -0xa(%rbp),%esi
mov    %ecx,%edx
call   1030 <fc8300_write@plt>
mov    -0x8(%rbp),%rdi
mov    $0x2,%edx
mov    $0x1,%ecx
movzwl -0xa(%rbp),%esi
call   1030 <fc8300_write@plt>
mov    -0x8(%rbp),%rdi
mov    $0x3,%edx
mov    $0x4,%ecx
movzwl -0xa(%rbp),%esi
call   1030 <fc8300_write@plt>
mov    -0x8(%rbp),%rdi
mov    $0x4,%edx
mov    $0x10,%ecx
movzwl -0xa(%rbp),%esi
call   1030 <fc8300_write@plt>
mov    -0x8(%rbp),%rdi
mov    $0x8,%edx
mov    $0xe4,%ecx
movzwl -0xa(%rbp),%esi
call   1030 <fc8300_write@plt>
mov    -0x8(%rbp),%rdi
mov    $0x13,%edx
mov    $0x7,%ecx
movzwl -0xa(%rbp),%esi
call   1030 <fc8300_write@plt>
mov    -0x8(%rbp),%rdi
mov    $0x19,%edx
mov    $0x21,%ecx
movzwl -0xa(%rbp),%esi
call   1030 <fc8300_write@plt>
mov    -0x8(%rbp),%rdi
mov    $0x1d,%edx
mov    $0x10,%ecx
movzwl -0xa(%rbp),%esi
call   1030 <fc8300_write@plt>
mov    -0x8(%rbp),%rdi
mov    $0x1f,%edx
mov    $0x72,%ecx
movzwl -0xa(%rbp),%esi
call   1030 <fc8300_write@plt>
mov    -0x8(%rbp),%rdi
mov    $0x20,%edx
mov    $0x22,%ecx
movzwl -0xa(%rbp),%esi
call   1030 <fc8300_write@plt>
mov    -0x8(%rbp),%rdi
mov    $0x21,%edx
mov    $0x30,%ecx
movzwl -0xa(%rbp),%esi
call   1030 <fc8300_write@plt>
mov    -0x8(%rbp),%rdi
mov    $0x24,%edx
mov    $0x98,%ecx
movzwl -0xa(%rbp),%esi
call   1030 <fc8300_write@plt>
mov    -0x8(%rbp),%rdi
mov    $0x3f,%edx
mov    $0x1,%ecx
movzwl -0xa(%rbp),%esi
call   1030 <fc8300_write@plt>
mov    -0x8(%rbp),%rdi
mov    -0xa(%rbp),%ax
mov    %ax,-0x10(%rbp)
movzwl -0xc(%rbp),%eax
mov    $0x100,%ecx
cltd
idiv   %ecx
mov    %eax,%ecx
mov    -0x10(%rbp),%ax
add    $0x44,%ecx
mov    $0x40,%edx
movzwl %ax,%esi
call   1030 <fc8300_write@plt>
mov    -0x8(%rbp),%rdi
mov    -0xa(%rbp),%ax
mov    %ax,-0xe(%rbp)
movzwl -0xc(%rbp),%eax
mov    $0x100,%ecx
cltd
idiv   %ecx
mov    -0xe(%rbp),%ax
mov    %edx,%ecx
mov    $0x41,%edx
movzwl %ax,%esi
call   1030 <fc8300_write@plt>
mov    -0x8(%rbp),%rdi
mov    $0x3f,%edx
xor    %ecx,%ecx
movzwl -0xa(%rbp),%esi
call   1030 <fc8300_write@plt>
mov    -0x8(%rbp),%rdi
mov    $0x33,%edx
mov    $0x83,%ecx
movzwl -0xa(%rbp),%esi
call   1030 <fc8300_write@plt>
mov    -0x8(%rbp),%rdi
mov    $0x34,%edx
mov    $0x44,%ecx
movzwl -0xa(%rbp),%esi
call   1030 <fc8300_write@plt>
mov    -0x8(%rbp),%rdi
mov    $0x37,%edx
mov    $0x65,%ecx
movzwl -0xa(%rbp),%esi
call   1030 <fc8300_write@plt>
mov    -0x8(%rbp),%rdi
mov    $0x38,%edx
mov    $0x55,%ecx
movzwl -0xa(%rbp),%esi
call   1030 <fc8300_write@plt>
mov    -0x8(%rbp),%rdi
mov    $0x39,%edx
mov    $0x2,%ecx
movzwl -0xa(%rbp),%esi
call   1030 <fc8300_write@plt>
mov    -0x8(%rbp),%rdi
mov    $0x3e,%edx
mov    $0xab,%ecx
movzwl -0xa(%rbp),%esi
call   1030 <fc8300_write@plt>
mov    -0x8(%rbp),%rdi
mov    $0x3c,%edx
mov    $0xaa,%ecx
movzwl -0xa(%rbp),%esi
call   1030 <fc8300_write@plt>
mov    -0x8(%rbp),%rdi
mov    $0x3d,%edx
mov    $0xaa,%ecx
movzwl -0xa(%rbp),%esi
call   1030 <fc8300_write@plt>
mov    -0x8(%rbp),%rdi
mov    $0x4d,%edx
mov    $0x1,%ecx
movzwl -0xa(%rbp),%esi
call   1030 <fc8300_write@plt>
mov    -0x8(%rbp),%rdi
mov    $0x50,%edx
mov    $0xff,%ecx
movzwl -0xa(%rbp),%esi
call   1030 <fc8300_write@plt>
mov    -0x8(%rbp),%rdi
mov    $0x54,%edx
mov    $0x80,%ecx
movzwl -0xa(%rbp),%esi
call   1030 <fc8300_write@plt>
mov    -0x8(%rbp),%rdi
mov    $0x70,%edx
mov    $0x5f,%ecx
movzwl -0xa(%rbp),%esi
call   1030 <fc8300_write@plt>
mov    -0x8(%rbp),%rdi
mov    $0x78,%edx
mov    $0x31,%ecx
movzwl -0xa(%rbp),%esi
call   1030 <fc8300_write@plt>
mov    -0x8(%rbp),%rdi
mov    $0x82,%edx
mov    $0x88,%ecx
movzwl -0xa(%rbp),%esi
call   1030 <fc8300_write@plt>
mov    -0x8(%rbp),%rdi
mov    $0x84,%edx
mov    $0x14,%ecx
movzwl -0xa(%rbp),%esi
call   1030 <fc8300_write@plt>
mov    -0x8(%rbp),%rdi
mov    $0x85,%edx
mov    $0xf,%ecx
movzwl -0xa(%rbp),%esi
call   1030 <fc8300_write@plt>
mov    -0x8(%rbp),%rdi
mov    $0x86,%edx
mov    $0x3f,%ecx
movzwl -0xa(%rbp),%esi
call   1030 <fc8300_write@plt>
mov    -0x8(%rbp),%rdi
mov    $0x87,%edx
mov    $0x18,%ecx
movzwl -0xa(%rbp),%esi
call   1030 <fc8300_write@plt>
mov    -0x8(%rbp),%rdi
mov    $0x88,%edx
mov    $0xe,%ecx
movzwl -0xa(%rbp),%esi
call   1030 <fc8300_write@plt>
mov    -0x8(%rbp),%rdi
mov    $0x89,%edx
mov    $0xb,%ecx
movzwl -0xa(%rbp),%esi
call   1030 <fc8300_write@plt>
mov    -0x8(%rbp),%rdi
mov    $0x8a,%edx
mov    $0x15,%ecx
movzwl -0xa(%rbp),%esi
call   1030 <fc8300_write@plt>
mov    -0x8(%rbp),%rdi
mov    $0x8b,%edx
mov    $0xe,%ecx
movzwl -0xa(%rbp),%esi
call   1030 <fc8300_write@plt>
mov    -0x8(%rbp),%rdi
mov    $0x8f,%edx
mov    $0xb6,%ecx
movzwl -0xa(%rbp),%esi
call   1030 <fc8300_write@plt>
mov    -0x8(%rbp),%rdi
mov    $0x90,%edx
mov    $0xb2,%ecx
movzwl -0xa(%rbp),%esi
call   1030 <fc8300_write@plt>
mov    -0x8(%rbp),%rdi
mov    $0x91,%edx
mov    $0x68,%ecx
movzwl -0xa(%rbp),%esi
call   1030 <fc8300_write@plt>
mov    -0x8(%rbp),%rdi
mov    $0xb2,%edx
xor    %ecx,%ecx
movzwl -0xa(%rbp),%esi
call   1030 <fc8300_write@plt>
mov    -0x8(%rbp),%rdi
mov    $0xb3,%edx
mov    $0x4,%ecx
movzwl -0xa(%rbp),%esi
call   1030 <fc8300_write@plt>
mov    -0x8(%rbp),%rdi
mov    $0xb4,%edx
xor    %ecx,%ecx
movzwl -0xa(%rbp),%esi
call   1030 <fc8300_write@plt>
mov    -0x8(%rbp),%rdi
mov    $0xb5,%edx
mov    $0x4,%ecx
movzwl -0xa(%rbp),%esi
call   1030 <fc8300_write@plt>
mov    -0x8(%rbp),%rdi
mov    $0xb6,%edx
xor    %ecx,%ecx
movzwl -0xa(%rbp),%esi
call   1030 <fc8300_write@plt>
mov    -0x8(%rbp),%rdi
mov    $0xb7,%edx
mov    $0x7,%ecx
movzwl -0xa(%rbp),%esi
call   1030 <fc8300_write@plt>
mov    -0x8(%rbp),%rdi
mov    $0xb8,%edx
xor    %ecx,%ecx
movzwl -0xa(%rbp),%esi
call   1030 <fc8300_write@plt>
mov    -0x8(%rbp),%rdi
mov    $0xb9,%edx
mov    $0x7,%ecx
movzwl -0xa(%rbp),%esi
call   1030 <fc8300_write@plt>
mov    -0x8(%rbp),%rdi
mov    $0xba,%edx
xor    %ecx,%ecx
movzwl -0xa(%rbp),%esi
call   1030 <fc8300_write@plt>
mov    -0x8(%rbp),%rdi
mov    $0xbb,%edx
mov    $0x7,%ecx
movzwl -0xa(%rbp),%esi
call   1030 <fc8300_write@plt>
mov    -0x8(%rbp),%rdi
mov    $0xbc,%edx
xor    %ecx,%ecx
movzwl -0xa(%rbp),%esi
call   1030 <fc8300_write@plt>
mov    -0x8(%rbp),%rdi
mov    $0xbd,%edx
mov    $0xa,%ecx
movzwl -0xa(%rbp),%esi
call   1030 <fc8300_write@plt>
mov    -0x8(%rbp),%rdi
mov    $0xbe,%edx
xor    %ecx,%ecx
movzwl -0xa(%rbp),%esi
call   1030 <fc8300_write@plt>
mov    -0x8(%rbp),%rdi
mov    $0xbf,%edx
mov    $0xa,%ecx
movzwl -0xa(%rbp),%esi
call   1030 <fc8300_write@plt>
mov    -0x8(%rbp),%rdi
mov    $0xc0,%edx
mov    $0xa,%ecx
movzwl -0xa(%rbp),%esi
call   1030 <fc8300_write@plt>
mov    -0x8(%rbp),%rdi
mov    $0xc1,%edx
xor    %ecx,%ecx
movzwl -0xa(%rbp),%esi
call   1030 <fc8300_write@plt>
mov    -0x8(%rbp),%rdi
mov    $0xc2,%edx
mov    $0x13,%ecx
movzwl -0xa(%rbp),%esi
call   1030 <fc8300_write@plt>
mov    -0x8(%rbp),%rdi
mov    $0xc3,%edx
xor    %ecx,%ecx
movzwl -0xa(%rbp),%esi
call   1030 <fc8300_write@plt>
mov    -0x8(%rbp),%rdi
mov    $0xd3,%edx
xor    %ecx,%ecx
movzwl -0xa(%rbp),%esi
call   1030 <fc8300_write@plt>
mov    -0x8(%rbp),%rdi
mov    $0xd4,%edx
mov    $0x1,%ecx
movzwl -0xa(%rbp),%esi
call   1030 <fc8300_write@plt>
mov    -0x8(%rbp),%rdi
mov    $0xd5,%edx
mov    $0x5,%ecx
movzwl -0xa(%rbp),%esi
call   1030 <fc8300_write@plt>
mov    -0x8(%rbp),%rdi
mov    $0xd6,%edx
mov    $0xd,%ecx
movzwl -0xa(%rbp),%esi
call   1030 <fc8300_write@plt>
mov    -0x8(%rbp),%rdi
mov    $0xd7,%edx
mov    $0xe,%ecx
movzwl -0xa(%rbp),%esi
call   1030 <fc8300_write@plt>
mov    -0x8(%rbp),%rdi
mov    $0xd8,%edx
mov    $0xf,%ecx
movzwl -0xa(%rbp),%esi
call   1030 <fc8300_write@plt>
mov    -0x8(%rbp),%rdi
mov    $0xd9,%edx
mov    $0x2f,%ecx
movzwl -0xa(%rbp),%esi
call   1030 <fc8300_write@plt>
mov    -0x8(%rbp),%rdi
mov    $0xda,%edx
mov    $0x4f,%ecx
movzwl -0xa(%rbp),%esi
call   1030 <fc8300_write@plt>
mov    -0x8(%rbp),%rdi
mov    $0xdb,%edx
mov    $0x6f,%ecx
movzwl -0xa(%rbp),%esi
call   1030 <fc8300_write@plt>
mov    -0x8(%rbp),%rdi
mov    $0xdc,%edx
mov    $0x77,%ecx
movzwl -0xa(%rbp),%esi
call   1030 <fc8300_write@plt>
mov    -0x8(%rbp),%rdi
mov    $0xdd,%edx
mov    $0x97,%ecx
movzwl -0xa(%rbp),%esi
call   1030 <fc8300_write@plt>
mov    -0x8(%rbp),%rdi
mov    $0xe9,%edx
mov    $0x79,%ecx
movzwl -0xa(%rbp),%esi
call   1030 <fc8300_write@plt>
mov    -0x8(%rbp),%rdi
mov    $0xed,%edx
mov    $0xc,%ecx
movzwl -0xa(%rbp),%esi
call   1030 <fc8300_write@plt>
mov    -0x8(%rbp),%rdi
mov    $0xef,%edx
mov    $0xb7,%ecx
movzwl -0xa(%rbp),%esi
call   1030 <fc8300_write@plt>
mov    -0x8(%rbp),%rdi
mov    $0x2a,%edx
mov    $0xb2,%ecx
movzwl -0xa(%rbp),%esi
call   1030 <fc8300_write@plt>
mov    -0x8(%rbp),%rdi
mov    $0x2b,%edx
mov    $0xb5,%ecx
movzwl -0xa(%rbp),%esi
call   1030 <fc8300_write@plt>
mov    -0x8(%rbp),%rdi
mov    $0x2c,%edx
mov    $0xd5,%ecx
movzwl -0xa(%rbp),%esi
call   1030 <fc8300_write@plt>
mov    -0x8(%rbp),%rdi
mov    $0x2d,%edx
mov    $0xd8,%ecx
movzwl -0xa(%rbp),%esi
call   1030 <fc8300_write@plt>
mov    -0x8(%rbp),%rdi
mov    $0xcd,%edx
mov    $0x41,%ecx
movzwl -0xa(%rbp),%esi
call   1030 <fc8300_write@plt>
mov    -0x8(%rbp),%rdi
mov    $0xce,%edx
mov    $0x88,%ecx
movzwl -0xa(%rbp),%esi
call   1030 <fc8300_write@plt>
mov    -0x8(%rbp),%rdi
mov    $0xcf,%edx
mov    $0x1,%ecx
movzwl -0xa(%rbp),%esi
call   1030 <fc8300_write@plt>
mov    -0x8(%rbp),%rdi
mov    $0x2e,%edx
mov    $0x64,%ecx
movzwl -0xa(%rbp),%esi
call   1030 <fc8300_write@plt>
mov    -0x8(%rbp),%rdi
mov    $0x2f,%edx
mov    $0x91,%ecx
movzwl -0xa(%rbp),%esi
call   1030 <fc8300_write@plt>
add    $0x10,%rsp
pop    %rbp
ret

x86 assembly (clang, -O2):
push   %rbp
push   %r14
push   %rbx
mov    %edx,%r14d
mov    %esi,%ebp
mov    %rdi,%rbx
xor    %edx,%edx
xor    %ecx,%ecx
call   1030 <fc8300_write@plt>
mov    %rbx,%rdi
mov    %ebp,%esi
mov    $0x2,%edx
mov    $0x1,%ecx
call   1030 <fc8300_write@plt>
mov    %rbx,%rdi
mov    %ebp,%esi
mov    $0x3,%edx
mov    $0x4,%ecx
call   1030 <fc8300_write@plt>
mov    %rbx,%rdi
mov    %ebp,%esi
mov    $0x4,%edx
mov    $0x10,%ecx
call   1030 <fc8300_write@plt>
mov    %rbx,%rdi
mov    %ebp,%esi
mov    $0x8,%edx
mov    $0xe4,%ecx
call   1030 <fc8300_write@plt>
mov    %rbx,%rdi
mov    %ebp,%esi
mov    $0x13,%edx
mov    $0x7,%ecx
call   1030 <fc8300_write@plt>
mov    %rbx,%rdi
mov    %ebp,%esi
mov    $0x19,%edx
mov    $0x21,%ecx
call   1030 <fc8300_write@plt>
mov    %rbx,%rdi
mov    %ebp,%esi
mov    $0x1d,%edx
mov    $0x10,%ecx
call   1030 <fc8300_write@plt>
mov    %rbx,%rdi
mov    %ebp,%esi
mov    $0x1f,%edx
mov    $0x72,%ecx
call   1030 <fc8300_write@plt>
mov    %rbx,%rdi
mov    %ebp,%esi
mov    $0x20,%edx
mov    $0x22,%ecx
call   1030 <fc8300_write@plt>
mov    %rbx,%rdi
mov    %ebp,%esi
mov    $0x21,%edx
mov    $0x30,%ecx
call   1030 <fc8300_write@plt>
mov    %rbx,%rdi
mov    %ebp,%esi
mov    $0x24,%edx
mov    $0x98,%ecx
call   1030 <fc8300_write@plt>
mov    %rbx,%rdi
mov    %ebp,%esi
mov    $0x3f,%edx
mov    $0x1,%ecx
call   1030 <fc8300_write@plt>
mov    %r14d,%ecx
shr    $0x8,%ecx
add    $0x44,%ecx
mov    %rbx,%rdi
mov    %ebp,%esi
mov    $0x40,%edx
call   1030 <fc8300_write@plt>
movzbl %r14b,%ecx
mov    %rbx,%rdi
mov    %ebp,%esi
mov    $0x41,%edx
call   1030 <fc8300_write@plt>
mov    %rbx,%rdi
mov    %ebp,%esi
mov    $0x3f,%edx
xor    %ecx,%ecx
call   1030 <fc8300_write@plt>
mov    %rbx,%rdi
mov    %ebp,%esi
mov    $0x33,%edx
mov    $0x83,%ecx
call   1030 <fc8300_write@plt>
mov    %rbx,%rdi
mov    %ebp,%esi
mov    $0x34,%edx
mov    $0x44,%ecx
call   1030 <fc8300_write@plt>
mov    %rbx,%rdi
mov    %ebp,%esi
mov    $0x37,%edx
mov    $0x65,%ecx
call   1030 <fc8300_write@plt>
mov    %rbx,%rdi
mov    %ebp,%esi
mov    $0x38,%edx
mov    $0x55,%ecx
call   1030 <fc8300_write@plt>
mov    %rbx,%rdi
mov    %ebp,%esi
mov    $0x39,%edx
mov    $0x2,%ecx
call   1030 <fc8300_write@plt>
mov    %rbx,%rdi
mov    %ebp,%esi
mov    $0x3e,%edx
mov    $0xab,%ecx
call   1030 <fc8300_write@plt>
mov    %rbx,%rdi
mov    %ebp,%esi
mov    $0x3c,%edx
mov    $0xaa,%ecx
call   1030 <fc8300_write@plt>
mov    %rbx,%rdi
mov    %ebp,%esi
mov    $0x3d,%edx
mov    $0xaa,%ecx
call   1030 <fc8300_write@plt>
mov    %rbx,%rdi
mov    %ebp,%esi
mov    $0x4d,%edx
mov    $0x1,%ecx
call   1030 <fc8300_write@plt>
mov    %rbx,%rdi
mov    %ebp,%esi
mov    $0x50,%edx
mov    $0xff,%ecx
call   1030 <fc8300_write@plt>
mov    %rbx,%rdi
mov    %ebp,%esi
mov    $0x54,%edx
mov    $0x80,%ecx
call   1030 <fc8300_write@plt>
mov    %rbx,%rdi
mov    %ebp,%esi
mov    $0x70,%edx
mov    $0x5f,%ecx
call   1030 <fc8300_write@plt>
mov    %rbx,%rdi
mov    %ebp,%esi
mov    $0x78,%edx
mov    $0x31,%ecx
call   1030 <fc8300_write@plt>
mov    %rbx,%rdi
mov    %ebp,%esi
mov    $0x82,%edx
mov    $0x88,%ecx
call   1030 <fc8300_write@plt>
mov    %rbx,%rdi
mov    %ebp,%esi
mov    $0x84,%edx
mov    $0x14,%ecx
call   1030 <fc8300_write@plt>
mov    %rbx,%rdi
mov    %ebp,%esi
mov    $0x85,%edx
mov    $0xf,%ecx
call   1030 <fc8300_write@plt>
mov    %rbx,%rdi
mov    %ebp,%esi
mov    $0x86,%edx
mov    $0x3f,%ecx
call   1030 <fc8300_write@plt>
mov    %rbx,%rdi
mov    %ebp,%esi
mov    $0x87,%edx
mov    $0x18,%ecx
call   1030 <fc8300_write@plt>
mov    %rbx,%rdi
mov    %ebp,%esi
mov    $0x88,%edx
mov    $0xe,%ecx
call   1030 <fc8300_write@plt>
mov    %rbx,%rdi
mov    %ebp,%esi
mov    $0x89,%edx
mov    $0xb,%ecx
call   1030 <fc8300_write@plt>
mov    %rbx,%rdi
mov    %ebp,%esi
mov    $0x8a,%edx
mov    $0x15,%ecx
call   1030 <fc8300_write@plt>
mov    %rbx,%rdi
mov    %ebp,%esi
mov    $0x8b,%edx
mov    $0xe,%ecx
call   1030 <fc8300_write@plt>
mov    %rbx,%rdi
mov    %ebp,%esi
mov    $0x8f,%edx
mov    $0xb6,%ecx
call   1030 <fc8300_write@plt>
mov    %rbx,%rdi
mov    %ebp,%esi
mov    $0x90,%edx
mov    $0xb2,%ecx
call   1030 <fc8300_write@plt>
mov    %rbx,%rdi
mov    %ebp,%esi
mov    $0x91,%edx
mov    $0x68,%ecx
call   1030 <fc8300_write@plt>
mov    %rbx,%rdi
mov    %ebp,%esi
mov    $0xb2,%edx
xor    %ecx,%ecx
call   1030 <fc8300_write@plt>
mov    %rbx,%rdi
mov    %ebp,%esi
mov    $0xb3,%edx
mov    $0x4,%ecx
call   1030 <fc8300_write@plt>
mov    %rbx,%rdi
mov    %ebp,%esi
mov    $0xb4,%edx
xor    %ecx,%ecx
call   1030 <fc8300_write@plt>
mov    %rbx,%rdi
mov    %ebp,%esi
mov    $0xb5,%edx
mov    $0x4,%ecx
call   1030 <fc8300_write@plt>
mov    %rbx,%rdi
mov    %ebp,%esi
mov    $0xb6,%edx
xor    %ecx,%ecx
call   1030 <fc8300_write@plt>
mov    %rbx,%rdi
mov    %ebp,%esi
mov    $0xb7,%edx
mov    $0x7,%ecx
call   1030 <fc8300_write@plt>
mov    %rbx,%rdi
mov    %ebp,%esi
mov    $0xb8,%edx
xor    %ecx,%ecx
call   1030 <fc8300_write@plt>
mov    %rbx,%rdi
mov    %ebp,%esi
mov    $0xb9,%edx
mov    $0x7,%ecx
call   1030 <fc8300_write@plt>
mov    %rbx,%rdi
mov    %ebp,%esi
mov    $0xba,%edx
xor    %ecx,%ecx
call   1030 <fc8300_write@plt>
mov    %rbx,%rdi
mov    %ebp,%esi
mov    $0xbb,%edx
mov    $0x7,%ecx
call   1030 <fc8300_write@plt>
mov    %rbx,%rdi
mov    %ebp,%esi
mov    $0xbc,%edx
xor    %ecx,%ecx
call   1030 <fc8300_write@plt>
mov    %rbx,%rdi
mov    %ebp,%esi
mov    $0xbd,%edx
mov    $0xa,%ecx
call   1030 <fc8300_write@plt>
mov    %rbx,%rdi
mov    %ebp,%esi
mov    $0xbe,%edx
xor    %ecx,%ecx
call   1030 <fc8300_write@plt>
mov    %rbx,%rdi
mov    %ebp,%esi
mov    $0xbf,%edx
mov    $0xa,%ecx
call   1030 <fc8300_write@plt>
mov    %rbx,%rdi
mov    %ebp,%esi
mov    $0xc0,%edx
mov    $0xa,%ecx
call   1030 <fc8300_write@plt>
mov    %rbx,%rdi
mov    %ebp,%esi
mov    $0xc1,%edx
xor    %ecx,%ecx
call   1030 <fc8300_write@plt>
mov    %rbx,%rdi
mov    %ebp,%esi
mov    $0xc2,%edx
mov    $0x13,%ecx
call   1030 <fc8300_write@plt>
mov    %rbx,%rdi
mov    %ebp,%esi
mov    $0xc3,%edx
xor    %ecx,%ecx
call   1030 <fc8300_write@plt>
mov    %rbx,%rdi
mov    %ebp,%esi
mov    $0xd3,%edx
xor    %ecx,%ecx
call   1030 <fc8300_write@plt>
mov    %rbx,%rdi
mov    %ebp,%esi
mov    $0xd4,%edx
mov    $0x1,%ecx
call   1030 <fc8300_write@plt>
mov    %rbx,%rdi
mov    %ebp,%esi
mov    $0xd5,%edx
mov    $0x5,%ecx
call   1030 <fc8300_write@plt>
mov    %rbx,%rdi
mov    %ebp,%esi
mov    $0xd6,%edx
mov    $0xd,%ecx
call   1030 <fc8300_write@plt>
mov    %rbx,%rdi
mov    %ebp,%esi
mov    $0xd7,%edx
mov    $0xe,%ecx
call   1030 <fc8300_write@plt>
mov    %rbx,%rdi
mov    %ebp,%esi
mov    $0xd8,%edx
mov    $0xf,%ecx
call   1030 <fc8300_write@plt>
mov    %rbx,%rdi
mov    %ebp,%esi
mov    $0xd9,%edx
mov    $0x2f,%ecx
call   1030 <fc8300_write@plt>
mov    %rbx,%rdi
mov    %ebp,%esi
mov    $0xda,%edx
mov    $0x4f,%ecx
call   1030 <fc8300_write@plt>
mov    %rbx,%rdi
mov    %ebp,%esi
mov    $0xdb,%edx
mov    $0x6f,%ecx
call   1030 <fc8300_write@plt>
mov    %rbx,%rdi
mov    %ebp,%esi
mov    $0xdc,%edx
mov    $0x77,%ecx
call   1030 <fc8300_write@plt>
mov    %rbx,%rdi
mov    %ebp,%esi
mov    $0xdd,%edx
mov    $0x97,%ecx
call   1030 <fc8300_write@plt>
mov    %rbx,%rdi
mov    %ebp,%esi
mov    $0xe9,%edx
mov    $0x79,%ecx
call   1030 <fc8300_write@plt>
mov    %rbx,%rdi
mov    %ebp,%esi
mov    $0xed,%edx
mov    $0xc,%ecx
call   1030 <fc8300_write@plt>
mov    %rbx,%rdi
mov    %ebp,%esi
mov    $0xef,%edx
mov    $0xb7,%ecx
call   1030 <fc8300_write@plt>
mov    %rbx,%rdi
mov    %ebp,%esi
mov    $0x2a,%edx
mov    $0xb2,%ecx
call   1030 <fc8300_write@plt>
mov    %rbx,%rdi
mov    %ebp,%esi
mov    $0x2b,%edx
mov    $0xb5,%ecx
call   1030 <fc8300_write@plt>
mov    %rbx,%rdi
mov    %ebp,%esi
mov    $0x2c,%edx
mov    $0xd5,%ecx
call   1030 <fc8300_write@plt>
mov    %rbx,%rdi
mov    %ebp,%esi
mov    $0x2d,%edx
mov    $0xd8,%ecx
call   1030 <fc8300_write@plt>
mov    %rbx,%rdi
mov    %ebp,%esi
mov    $0xcd,%edx
mov    $0x41,%ecx
call   1030 <fc8300_write@plt>
mov    %rbx,%rdi
mov    %ebp,%esi
mov    $0xce,%edx
mov    $0x88,%ecx
call   1030 <fc8300_write@plt>
mov    %rbx,%rdi
mov    %ebp,%esi
mov    $0xcf,%edx
mov    $0x1,%ecx
call   1030 <fc8300_write@plt>
mov    %rbx,%rdi
mov    %ebp,%esi
mov    $0x2e,%edx
mov    $0x64,%ecx
call   1030 <fc8300_write@plt>
mov    %rbx,%rdi
mov    %ebp,%esi
mov    $0x2f,%edx
mov    $0x91,%ecx
pop    %rbx
pop    %r14
pop    %rbp
jmp    1030 <fc8300_write@plt>

LLVM IR (-O0):
define void @fc8300_1seg_init(i8* %0, i16 zeroext %1, i16 zeroext %2) {
%4 = alloca i8*
%5 = alloca i16
%6 = alloca i16
store i8* %0, i8** %4
store i16 %1, i16* %5
store i16 %2, i16* %6
%7 = load i8*, i8** %4
%8 = load i16, i16* %5
%9 = call i32 @fc8300_write(i8* %7, i16 zeroext %8, i32 0, i32 0)
%10 = load i8*, i8** %4
%11 = load i16, i16* %5
%12 = call i32 @fc8300_write(i8* %10, i16 zeroext %11, i32 2, i32 1)
%13 = load i8*, i8** %4
%14 = load i16, i16* %5
%15 = call i32 @fc8300_write(i8* %13, i16 zeroext %14, i32 3, i32 4)
%16 = load i8*, i8** %4
%17 = load i16, i16* %5
%18 = call i32 @fc8300_write(i8* %16, i16 zeroext %17, i32 4, i32 16)
%19 = load i8*, i8** %4
%20 = load i16, i16* %5
%21 = call i32 @fc8300_write(i8* %19, i16 zeroext %20, i32 8, i32 228)
%22 = load i8*, i8** %4
%23 = load i16, i16* %5
%24 = call i32 @fc8300_write(i8* %22, i16 zeroext %23, i32 19, i32 7)
%25 = load i8*, i8** %4
%26 = load i16, i16* %5
%27 = call i32 @fc8300_write(i8* %25, i16 zeroext %26, i32 25, i32 33)
%28 = load i8*, i8** %4
%29 = load i16, i16* %5
%30 = call i32 @fc8300_write(i8* %28, i16 zeroext %29, i32 29, i32 16)
%31 = load i8*, i8** %4
%32 = load i16, i16* %5
%33 = call i32 @fc8300_write(i8* %31, i16 zeroext %32, i32 31, i32 114)
%34 = load i8*, i8** %4
%35 = load i16, i16* %5
%36 = call i32 @fc8300_write(i8* %34, i16 zeroext %35, i32 32, i32 34)
%37 = load i8*, i8** %4
%38 = load i16, i16* %5
%39 = call i32 @fc8300_write(i8* %37, i16 zeroext %38, i32 33, i32 48)
%40 = load i8*, i8** %4
%41 = load i16, i16* %5
%42 = call i32 @fc8300_write(i8* %40, i16 zeroext %41, i32 36, i32 152)
%43 = load i8*, i8** %4
%44 = load i16, i16* %5
%45 = call i32 @fc8300_write(i8* %43, i16 zeroext %44, i32 63, i32 1)
%46 = load i8*, i8** %4
%47 = load i16, i16* %5
%48 = load i16, i16* %6
%49 = zext i16 %48 to i32
%50 = sdiv i32 %49, 256
%51 = add nsw i32 68, %50
%52 = call i32 @fc8300_write(i8* %46, i16 zeroext %47, i32 64, i32 %51)
%53 = load i8*, i8** %4
%54 = load i16, i16* %5
%55 = load i16, i16* %6
%56 = zext i16 %55 to i32
%57 = srem i32 %56, 256
%58 = call i32 @fc8300_write(i8* %53, i16 zeroext %54, i32 65, i32 %57)
%59 = load i8*, i8** %4
%60 = load i16, i16* %5
%61 = call i32 @fc8300_write(i8* %59, i16 zeroext %60, i32 63, i32 0)
%62 = load i8*, i8** %4
%63 = load i16, i16* %5
%64 = call i32 @fc8300_write(i8* %62, i16 zeroext %63, i32 51, i32 131)
%65 = load i8*, i8** %4
%66 = load i16, i16* %5
%67 = call i32 @fc8300_write(i8* %65, i16 zeroext %66, i32 52, i32 68)
%68 = load i8*, i8** %4
%69 = load i16, i16* %5
%70 = call i32 @fc8300_write(i8* %68, i16 zeroext %69, i32 55, i32 101)
%71 = load i8*, i8** %4
%72 = load i16, i16* %5
%73 = call i32 @fc8300_write(i8* %71, i16 zeroext %72, i32 56, i32 85)
%74 = load i8*, i8** %4
%75 = load i16, i16* %5
%76 = call i32 @fc8300_write(i8* %74, i16 zeroext %75, i32 57, i32 2)
%77 = load i8*, i8** %4
%78 = load i16, i16* %5
%79 = call i32 @fc8300_write(i8* %77, i16 zeroext %78, i32 62, i32 171)
%80 = load i8*, i8** %4
%81 = load i16, i16* %5
%82 = call i32 @fc8300_write(i8* %80, i16 zeroext %81, i32 60, i32 170)
%83 = load i8*, i8** %4
%84 = load i16, i16* %5
%85 = call i32 @fc8300_write(i8* %83, i16 zeroext %84, i32 61, i32 170)
%86 = load i8*, i8** %4
%87 = load i16, i16* %5
%88 = call i32 @fc8300_write(i8* %86, i16 zeroext %87, i32 77, i32 1)
%89 = load i8*, i8** %4
%90 = load i16, i16* %5
%91 = call i32 @fc8300_write(i8* %89, i16 zeroext %90, i32 80, i32 255)
%92 = load i8*, i8** %4
%93 = load i16, i16* %5
%94 = call i32 @fc8300_write(i8* %92, i16 zeroext %93, i32 84, i32 128)
%95 = load i8*, i8** %4
%96 = load i16, i16* %5
%97 = call i32 @fc8300_write(i8* %95, i16 zeroext %96, i32 112, i32 95)
%98 = load i8*, i8** %4
%99 = load i16, i16* %5
%100 = call i32 @fc8300_write(i8* %98, i16 zeroext %99, i32 120, i32 49)
%101 = load i8*, i8** %4
%102 = load i16, i16* %5
%103 = call i32 @fc8300_write(i8* %101, i16 zeroext %102, i32 130, i32 136)
%104 = load i8*, i8** %4
%105 = load i16, i16* %5
%106 = call i32 @fc8300_write(i8* %104, i16 zeroext %105, i32 132, i32 20)
%107 = load i8*, i8** %4
%108 = load i16, i16* %5
%109 = call i32 @fc8300_write(i8* %107, i16 zeroext %108, i32 133, i32 15)
%110 = load i8*, i8** %4
%111 = load i16, i16* %5
%112 = call i32 @fc8300_write(i8* %110, i16 zeroext %111, i32 134, i32 63)
%113 = load i8*, i8** %4
%114 = load i16, i16* %5
%115 = call i32 @fc8300_write(i8* %113, i16 zeroext %114, i32 135, i32 24)
%116 = load i8*, i8** %4
%117 = load i16, i16* %5
%118 = call i32 @fc8300_write(i8* %116, i16 zeroext %117, i32 136, i32 14)
%119 = load i8*, i8** %4
%120 = load i16, i16* %5
%121 = call i32 @fc8300_write(i8* %119, i16 zeroext %120, i32 137, i32 11)
%122 = load i8*, i8** %4
%123 = load i16, i16* %5
%124 = call i32 @fc8300_write(i8* %122, i16 zeroext %123, i32 138, i32 21)
%125 = load i8*, i8** %4
%126 = load i16, i16* %5
%127 = call i32 @fc8300_write(i8* %125, i16 zeroext %126, i32 139, i32 14)
%128 = load i8*, i8** %4
%129 = load i16, i16* %5
%130 = call i32 @fc8300_write(i8* %128, i16 zeroext %129, i32 143, i32 182)
%131 = load i8*, i8** %4
%132 = load i16, i16* %5
%133 = call i32 @fc8300_write(i8* %131, i16 zeroext %132, i32 144, i32 178)
%134 = load i8*, i8** %4
%135 = load i16, i16* %5
%136 = call i32 @fc8300_write(i8* %134, i16 zeroext %135, i32 145, i32 104)
%137 = load i8*, i8** %4
%138 = load i16, i16* %5
%139 = call i32 @fc8300_write(i8* %137, i16 zeroext %138, i32 178, i32 0)
%140 = load i8*, i8** %4
%141 = load i16, i16* %5
%142 = call i32 @fc8300_write(i8* %140, i16 zeroext %141, i32 179, i32 4)
%143 = load i8*, i8** %4
%144 = load i16, i16* %5
%145 = call i32 @fc8300_write(i8* %143, i16 zeroext %144, i32 180, i32 0)
%146 = load i8*, i8** %4
%147 = load i16, i16* %5
%148 = call i32 @fc8300_write(i8* %146, i16 zeroext %147, i32 181, i32 4)
%149 = load i8*, i8** %4
%150 = load i16, i16* %5
%151 = call i32 @fc8300_write(i8* %149, i16 zeroext %150, i32 182, i32 0)
%152 = load i8*, i8** %4
%153 = load i16, i16* %5
%154 = call i32 @fc8300_write(i8* %152, i16 zeroext %153, i32 183, i32 7)
%155 = load i8*, i8** %4
%156 = load i16, i16* %5
%157 = call i32 @fc8300_write(i8* %155, i16 zeroext %156, i32 184, i32 0)
%158 = load i8*, i8** %4
%159 = load i16, i16* %5
%160 = call i32 @fc8300_write(i8* %158, i16 zeroext %159, i32 185, i32 7)
%161 = load i8*, i8** %4
%162 = load i16, i16* %5
%163 = call i32 @fc8300_write(i8* %161, i16 zeroext %162, i32 186, i32 0)
%164 = load i8*, i8** %4
%165 = load i16, i16* %5
%166 = call i32 @fc8300_write(i8* %164, i16 zeroext %165, i32 187, i32 7)
%167 = load i8*, i8** %4
%168 = load i16, i16* %5
%169 = call i32 @fc8300_write(i8* %167, i16 zeroext %168, i32 188, i32 0)
%170 = load i8*, i8** %4
%171 = load i16, i16* %5
%172 = call i32 @fc8300_write(i8* %170, i16 zeroext %171, i32 189, i32 10)
%173 = load i8*, i8** %4
%174 = load i16, i16* %5
%175 = call i32 @fc8300_write(i8* %173, i16 zeroext %174, i32 190, i32 0)
%176 = load i8*, i8** %4
%177 = load i16, i16* %5
%178 = call i32 @fc8300_write(i8* %176, i16 zeroext %177, i32 191, i32 10)
%179 = load i8*, i8** %4
%180 = load i16, i16* %5
%181 = call i32 @fc8300_write(i8* %179, i16 zeroext %180, i32 192, i32 10)
%182 = load i8*, i8** %4
%183 = load i16, i16* %5
%184 = call i32 @fc8300_write(i8* %182, i16 zeroext %183, i32 193, i32 0)
%185 = load i8*, i8** %4
%186 = load i16, i16* %5
%187 = call i32 @fc8300_write(i8* %185, i16 zeroext %186, i32 194, i32 19)
%188 = load i8*, i8** %4
%189 = load i16, i16* %5
%190 = call i32 @fc8300_write(i8* %188, i16 zeroext %189, i32 195, i32 0)
%191 = load i8*, i8** %4
%192 = load i16, i16* %5
%193 = call i32 @fc8300_write(i8* %191, i16 zeroext %192, i32 211, i32 0)
%194 = load i8*, i8** %4
%195 = load i16, i16* %5
%196 = call i32 @fc8300_write(i8* %194, i16 zeroext %195, i32 212, i32 1)
%197 = load i8*, i8** %4
%198 = load i16, i16* %5
%199 = call i32 @fc8300_write(i8* %197, i16 zeroext %198, i32 213, i32 5)
%200 = load i8*, i8** %4
%201 = load i16, i16* %5
%202 = call i32 @fc8300_write(i8* %200, i16 zeroext %201, i32 214, i32 13)
%203 = load i8*, i8** %4
%204 = load i16, i16* %5
%205 = call i32 @fc8300_write(i8* %203, i16 zeroext %204, i32 215, i32 14)
%206 = load i8*, i8** %4
%207 = load i16, i16* %5
%208 = call i32 @fc8300_write(i8* %206, i16 zeroext %207, i32 216, i32 15)
%209 = load i8*, i8** %4
%210 = load i16, i16* %5
%211 = call i32 @fc8300_write(i8* %209, i16 zeroext %210, i32 217, i32 47)
%212 = load i8*, i8** %4
%213 = load i16, i16* %5
%214 = call i32 @fc8300_write(i8* %212, i16 zeroext %213, i32 218, i32 79)
%215 = load i8*, i8** %4
%216 = load i16, i16* %5
%217 = call i32 @fc8300_write(i8* %215, i16 zeroext %216, i32 219, i32 111)
%218 = load i8*, i8** %4
%219 = load i16, i16* %5
%220 = call i32 @fc8300_write(i8* %218, i16 zeroext %219, i32 220, i32 119)
%221 = load i8*, i8** %4
%222 = load i16, i16* %5
%223 = call i32 @fc8300_write(i8* %221, i16 zeroext %222, i32 221, i32 151)
%224 = load i8*, i8** %4
%225 = load i16, i16* %5
%226 = call i32 @fc8300_write(i8* %224, i16 zeroext %225, i32 233, i32 121)
%227 = load i8*, i8** %4
%228 = load i16, i16* %5
%229 = call i32 @fc8300_write(i8* %227, i16 zeroext %228, i32 237, i32 12)
%230 = load i8*, i8** %4
%231 = load i16, i16* %5
%232 = call i32 @fc8300_write(i8* %230, i16 zeroext %231, i32 239, i32 183)
%233 = load i8*, i8** %4
%234 = load i16, i16* %5
%235 = call i32 @fc8300_write(i8* %233, i16 zeroext %234, i32 42, i32 178)
%236 = load i8*, i8** %4
%237 = load i16, i16* %5
%238 = call i32 @fc8300_write(i8* %236, i16 zeroext %237, i32 43, i32 181)
%239 = load i8*, i8** %4
%240 = load i16, i16* %5
%241 = call i32 @fc8300_write(i8* %239, i16 zeroext %240, i32 44, i32 213)
%242 = load i8*, i8** %4
%243 = load i16, i16* %5
%244 = call i32 @fc8300_write(i8* %242, i16 zeroext %243, i32 45, i32 216)
%245 = load i8*, i8** %4
%246 = load i16, i16* %5
%247 = call i32 @fc8300_write(i8* %245, i16 zeroext %246, i32 205, i32 65)
%248 = load i8*, i8** %4
%249 = load i16, i16* %5
%250 = call i32 @fc8300_write(i8* %248, i16 zeroext %249, i32 206, i32 136)
%251 = load i8*, i8** %4
%252 = load i16, i16* %5
%253 = call i32 @fc8300_write(i8* %251, i16 zeroext %252, i32 207, i32 1)
%254 = load i8*, i8** %4
%255 = load i16, i16* %5
%256 = call i32 @fc8300_write(i8* %254, i16 zeroext %255, i32 46, i32 100)
%257 = load i8*, i8** %4
%258 = load i16, i16* %5
%259 = call i32 @fc8300_write(i8* %257, i16 zeroext %258, i32 47, i32 145)
ret void
}

LLVM IR (-O2):
define void @fc8300_1seg_init(i8* %0, i16 zeroext %1, i16 zeroext %2) {
%4 = tail call i32 @fc8300_write(i8* %0, i16 zeroext %1, i32 0, i32 0)
%5 = tail call i32 @fc8300_write(i8* %0, i16 zeroext %1, i32 2, i32 1)
%6 = tail call i32 @fc8300_write(i8* %0, i16 zeroext %1, i32 3, i32 4)
%7 = tail call i32 @fc8300_write(i8* %0, i16 zeroext %1, i32 4, i32 16)
%8 = tail call i32 @fc8300_write(i8* %0, i16 zeroext %1, i32 8, i32 228)
%9 = tail call i32 @fc8300_write(i8* %0, i16 zeroext %1, i32 19, i32 7)
%10 = tail call i32 @fc8300_write(i8* %0, i16 zeroext %1, i32 25, i32 33)
%11 = tail call i32 @fc8300_write(i8* %0, i16 zeroext %1, i32 29, i32 16)
%12 = tail call i32 @fc8300_write(i8* %0, i16 zeroext %1, i32 31, i32 114)
%13 = tail call i32 @fc8300_write(i8* %0, i16 zeroext %1, i32 32, i32 34)
%14 = tail call i32 @fc8300_write(i8* %0, i16 zeroext %1, i32 33, i32 48)
%15 = tail call i32 @fc8300_write(i8* %0, i16 zeroext %1, i32 36, i32 152)
%16 = tail call i32 @fc8300_write(i8* %0, i16 zeroext %1, i32 63, i32 1)
%17 = zext i16 %2 to i32
%18 = lshr i32 %17, 8
%19 = add nuw nsw i32 %18, 68
%20 = tail call i32 @fc8300_write(i8* %0, i16 zeroext %1, i32 64, i32 %19)
%21 = and i32 %17, 255
%22 = tail call i32 @fc8300_write(i8* %0, i16 zeroext %1, i32 65, i32 %21)
%23 = tail call i32 @fc8300_write(i8* %0, i16 zeroext %1, i32 63, i32 0)
%24 = tail call i32 @fc8300_write(i8* %0, i16 zeroext %1, i32 51, i32 131)
%25 = tail call i32 @fc8300_write(i8* %0, i16 zeroext %1, i32 52, i32 68)
%26 = tail call i32 @fc8300_write(i8* %0, i16 zeroext %1, i32 55, i32 101)
%27 = tail call i32 @fc8300_write(i8* %0, i16 zeroext %1, i32 56, i32 85)
%28 = tail call i32 @fc8300_write(i8* %0, i16 zeroext %1, i32 57, i32 2)
%29 = tail call i32 @fc8300_write(i8* %0, i16 zeroext %1, i32 62, i32 171)
%30 = tail call i32 @fc8300_write(i8* %0, i16 zeroext %1, i32 60, i32 170)
%31 = tail call i32 @fc8300_write(i8* %0, i16 zeroext %1, i32 61, i32 170)
%32 = tail call i32 @fc8300_write(i8* %0, i16 zeroext %1, i32 77, i32 1)
%33 = tail call i32 @fc8300_write(i8* %0, i16 zeroext %1, i32 80, i32 255)
%34 = tail call i32 @fc8300_write(i8* %0, i16 zeroext %1, i32 84, i32 128)
%35 = tail call i32 @fc8300_write(i8* %0, i16 zeroext %1, i32 112, i32 95)
%36 = tail call i32 @fc8300_write(i8* %0, i16 zeroext %1, i32 120, i32 49)
%37 = tail call i32 @fc8300_write(i8* %0, i16 zeroext %1, i32 130, i32 136)
%38 = tail call i32 @fc8300_write(i8* %0, i16 zeroext %1, i32 132, i32 20)
%39 = tail call i32 @fc8300_write(i8* %0, i16 zeroext %1, i32 133, i32 15)
%40 = tail call i32 @fc8300_write(i8* %0, i16 zeroext %1, i32 134, i32 63)
%41 = tail call i32 @fc8300_write(i8* %0, i16 zeroext %1, i32 135, i32 24)
%42 = tail call i32 @fc8300_write(i8* %0, i16 zeroext %1, i32 136, i32 14)
%43 = tail call i32 @fc8300_write(i8* %0, i16 zeroext %1, i32 137, i32 11)
%44 = tail call i32 @fc8300_write(i8* %0, i16 zeroext %1, i32 138, i32 21)
%45 = tail call i32 @fc8300_write(i8* %0, i16 zeroext %1, i32 139, i32 14)
%46 = tail call i32 @fc8300_write(i8* %0, i16 zeroext %1, i32 143, i32 182)
%47 = tail call i32 @fc8300_write(i8* %0, i16 zeroext %1, i32 144, i32 178)
%48 = tail call i32 @fc8300_write(i8* %0, i16 zeroext %1, i32 145, i32 104)
%49 = tail call i32 @fc8300_write(i8* %0, i16 zeroext %1, i32 178, i32 0)
%50 = tail call i32 @fc8300_write(i8* %0, i16 zeroext %1, i32 179, i32 4)
%51 = tail call i32 @fc8300_write(i8* %0, i16 zeroext %1, i32 180, i32 0)
%52 = tail call i32 @fc8300_write(i8* %0, i16 zeroext %1, i32 181, i32 4)
%53 = tail call i32 @fc8300_write(i8* %0, i16 zeroext %1, i32 182, i32 0)
%54 = tail call i32 @fc8300_write(i8* %0, i16 zeroext %1, i32 183, i32 7)
%55 = tail call i32 @fc8300_write(i8* %0, i16 zeroext %1, i32 184, i32 0)
%56 = tail call i32 @fc8300_write(i8* %0, i16 zeroext %1, i32 185, i32 7)
%57 = tail call i32 @fc8300_write(i8* %0, i16 zeroext %1, i32 186, i32 0)
%58 = tail call i32 @fc8300_write(i8* %0, i16 zeroext %1, i32 187, i32 7)
%59 = tail call i32 @fc8300_write(i8* %0, i16 zeroext %1, i32 188, i32 0)
%60 = tail call i32 @fc8300_write(i8* %0, i16 zeroext %1, i32 189, i32 10)
%61 = tail call i32 @fc8300_write(i8* %0, i16 zeroext %1, i32 190, i32 0)
%62 = tail call i32 @fc8300_write(i8* %0, i16 zeroext %1, i32 191, i32 10)
%63 = tail call i32 @fc8300_write(i8* %0, i16 zeroext %1, i32 192, i32 10)
%64 = tail call i32 @fc8300_write(i8* %0, i16 zeroext %1, i32 193, i32 0)
%65 = tail call i32 @fc8300_write(i8* %0, i16 zeroext %1, i32 194, i32 19)
%66 = tail call i32 @fc8300_write(i8* %0, i16 zeroext %1, i32 195, i32 0)
%67 = tail call i32 @fc8300_write(i8* %0, i16 zeroext %1, i32 211, i32 0)
%68 = tail call i32 @fc8300_write(i8* %0, i16 zeroext %1, i32 212, i32 1)
%69 = tail call i32 @fc8300_write(i8* %0, i16 zeroext %1, i32 213, i32 5)
%70 = tail call i32 @fc8300_write(i8* %0, i16 zeroext %1, i32 214, i32 13)
%71 = tail call i32 @fc8300_write(i8* %0, i16 zeroext %1, i32 215, i32 14)
%72 = tail call i32 @fc8300_write(i8* %0, i16 zeroext %1, i32 216, i32 15)
%73 = tail call i32 @fc8300_write(i8* %0, i16 zeroext %1, i32 217, i32 47)
%74 = tail call i32 @fc8300_write(i8* %0, i16 zeroext %1, i32 218, i32 79)
%75 = tail call i32 @fc8300_write(i8* %0, i16 zeroext %1, i32 219, i32 111)
%76 = tail call i32 @fc8300_write(i8* %0, i16 zeroext %1, i32 220, i32 119)
%77 = tail call i32 @fc8300_write(i8* %0, i16 zeroext %1, i32 221, i32 151)
%78 = tail call i32 @fc8300_write(i8* %0, i16 zeroext %1, i32 233, i32 121)
%79 = tail call i32 @fc8300_write(i8* %0, i16 zeroext %1, i32 237, i32 12)
%80 = tail call i32 @fc8300_write(i8* %0, i16 zeroext %1, i32 239, i32 183)
%81 = tail call i32 @fc8300_write(i8* %0, i16 zeroext %1, i32 42, i32 178)
%82 = tail call i32 @fc8300_write(i8* %0, i16 zeroext %1, i32 43, i32 181)
%83 = tail call i32 @fc8300_write(i8* %0, i16 zeroext %1, i32 44, i32 213)
%84 = tail call i32 @fc8300_write(i8* %0, i16 zeroext %1, i32 45, i32 216)
%85 = tail call i32 @fc8300_write(i8* %0, i16 zeroext %1, i32 205, i32 65)
%86 = tail call i32 @fc8300_write(i8* %0, i16 zeroext %1, i32 206, i32 136)
%87 = tail call i32 @fc8300_write(i8* %0, i16 zeroext %1, i32 207, i32 1)
%88 = tail call i32 @fc8300_write(i8* %0, i16 zeroext %1, i32 46, i32 100)
%89 = tail call i32 @fc8300_write(i8* %0, i16 zeroext %1, i32 47, i32 145)
ret void
}