#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*/ inb(int);
int /*<<< orphan*/ outb(int, int);
int /*<<< orphan*/ outw(int, int);
void reset_vga(void) {
  inb(0x3da);
  outb(0, 0x3c0);
  outw(0x0300, 0x3c4);
  outw(0x0001, 0x3c4);
  outw(0x0302, 0x3c4);
  outw(0x0003, 0x3c4);
  outw(0x0204, 0x3c4);
  outw(0x0e11, 0x3d4);
  outw(0x5f00, 0x3d4);
  outw(0x4f01, 0x3d4);
  outw(0x5002, 0x3d4);
  outw(0x8203, 0x3d4);
  outw(0x5504, 0x3d4);
  outw(0x8105, 0x3d4);
  outw(0xbf06, 0x3d4);
  outw(0x1f07, 0x3d4);
  outw(0x0008, 0x3d4);
  outw(0x4f09, 0x3d4);
  outw(0x200a, 0x3d4);
  outw(0x0e0b, 0x3d4);
  outw(0x000c, 0x3d4);
  outw(0x000d, 0x3d4);
  outw(0x010e, 0x3d4);
  outw(0xe00f, 0x3d4);
  outw(0x9c10, 0x3d4);
  outw(0x8e11, 0x3d4);
  outw(0x8f12, 0x3d4);
  outw(0x2813, 0x3d4);
  outw(0x1f14, 0x3d4);
  outw(0x9615, 0x3d4);
  outw(0xb916, 0x3d4);
  outw(0xa317, 0x3d4);
  outw(0xff18, 0x3d4);
  outw(0x0000, 0x3ce);
  outw(0x0001, 0x3ce);
  outw(0x0002, 0x3ce);
  outw(0x0003, 0x3ce);
  outw(0x0004, 0x3ce);
  outw(0x1005, 0x3ce);
  outw(0x0e06, 0x3ce);
  outw(0x0007, 0x3ce);
  outw(0xff08, 0x3ce);
  inb(0x3da);
  outb(0x00, 0x3c0);
  outb(0x00, 0x3c0);
  inb(0x3da);
  outb(0x01, 0x3c0);
  outb(0x01, 0x3c0);
  inb(0x3da);
  outb(0x02, 0x3c0);
  outb(0x02, 0x3c0);
  inb(0x3da);
  outb(0x03, 0x3c0);
  outb(0x03, 0x3c0);
  inb(0x3da);
  outb(0x04, 0x3c0);
  outb(0x04, 0x3c0);
  inb(0x3da);
  outb(0x05, 0x3c0);
  outb(0x05, 0x3c0);
  inb(0x3da);
  outb(0x06, 0x3c0);
  outb(0x14, 0x3c0);
  inb(0x3da);
  outb(0x07, 0x3c0);
  outb(0x07, 0x3c0);
  inb(0x3da);
  outb(0x08, 0x3c0);
  outb(0x38, 0x3c0);
  inb(0x3da);
  outb(0x09, 0x3c0);
  outb(0x39, 0x3c0);
  inb(0x3da);
  outb(0x0a, 0x3c0);
  outb(0x3a, 0x3c0);
  inb(0x3da);
  outb(0x0b, 0x3c0);
  outb(0x3b, 0x3c0);
  inb(0x3da);
  outb(0x0c, 0x3c0);
  outb(0x3c, 0x3c0);
  inb(0x3da);
  outb(0x0d, 0x3c0);
  outb(0x3d, 0x3c0);
  inb(0x3da);
  outb(0x0e, 0x3c0);
  outb(0x3e, 0x3c0);
  inb(0x3da);
  outb(0x0f, 0x3c0);
  outb(0x3f, 0x3c0);
  inb(0x3da);
  outb(0x10, 0x3c0);
  outb(0x0c, 0x3c0);
  inb(0x3da);
  outb(0x11, 0x3c0);
  outb(0x00, 0x3c0);
  inb(0x3da);
  outb(0x12, 0x3c0);
  outb(0x0f, 0x3c0);
  inb(0x3da);
  outb(0x13, 0x3c0);
  outb(0x08, 0x3c0);
  inb(0x3da);
  outb(0x14, 0x3c0);
  outb(0x00, 0x3c0);
  inb(0x3da);
  outb(0x20, 0x3c0);
}


x86 assembly (clang, -O0):
<reset_vga>:
push   %rbp
mov    %rsp,%rbp
mov    $0x3da,%edi
call   1040 <inb@plt>
xor    %edi,%edi
mov    $0x3c0,%esi
call   1030 <outb@plt>
mov    $0x300,%edi
mov    $0x3c4,%esi
call   1050 <outw@plt>
mov    $0x1,%edi
mov    $0x3c4,%esi
call   1050 <outw@plt>
mov    $0x302,%edi
mov    $0x3c4,%esi
call   1050 <outw@plt>
mov    $0x3,%edi
mov    $0x3c4,%esi
call   1050 <outw@plt>
mov    $0x204,%edi
mov    $0x3c4,%esi
call   1050 <outw@plt>
mov    $0xe11,%edi
mov    $0x3d4,%esi
call   1050 <outw@plt>
mov    $0x5f00,%edi
mov    $0x3d4,%esi
call   1050 <outw@plt>
mov    $0x4f01,%edi
mov    $0x3d4,%esi
call   1050 <outw@plt>
mov    $0x5002,%edi
mov    $0x3d4,%esi
call   1050 <outw@plt>
mov    $0x8203,%edi
mov    $0x3d4,%esi
call   1050 <outw@plt>
mov    $0x5504,%edi
mov    $0x3d4,%esi
call   1050 <outw@plt>
mov    $0x8105,%edi
mov    $0x3d4,%esi
call   1050 <outw@plt>
mov    $0xbf06,%edi
mov    $0x3d4,%esi
call   1050 <outw@plt>
mov    $0x1f07,%edi
mov    $0x3d4,%esi
call   1050 <outw@plt>
mov    $0x8,%edi
mov    $0x3d4,%esi
call   1050 <outw@plt>
mov    $0x4f09,%edi
mov    $0x3d4,%esi
call   1050 <outw@plt>
mov    $0x200a,%edi
mov    $0x3d4,%esi
call   1050 <outw@plt>
mov    $0xe0b,%edi
mov    $0x3d4,%esi
call   1050 <outw@plt>
mov    $0xc,%edi
mov    $0x3d4,%esi
call   1050 <outw@plt>
mov    $0xd,%edi
mov    $0x3d4,%esi
call   1050 <outw@plt>
mov    $0x10e,%edi
mov    $0x3d4,%esi
call   1050 <outw@plt>
mov    $0xe00f,%edi
mov    $0x3d4,%esi
call   1050 <outw@plt>
mov    $0x9c10,%edi
mov    $0x3d4,%esi
call   1050 <outw@plt>
mov    $0x8e11,%edi
mov    $0x3d4,%esi
call   1050 <outw@plt>
mov    $0x8f12,%edi
mov    $0x3d4,%esi
call   1050 <outw@plt>
mov    $0x2813,%edi
mov    $0x3d4,%esi
call   1050 <outw@plt>
mov    $0x1f14,%edi
mov    $0x3d4,%esi
call   1050 <outw@plt>
mov    $0x9615,%edi
mov    $0x3d4,%esi
call   1050 <outw@plt>
mov    $0xb916,%edi
mov    $0x3d4,%esi
call   1050 <outw@plt>
mov    $0xa317,%edi
mov    $0x3d4,%esi
call   1050 <outw@plt>
mov    $0xff18,%edi
mov    $0x3d4,%esi
call   1050 <outw@plt>
xor    %edi,%edi
mov    $0x3ce,%esi
call   1050 <outw@plt>
mov    $0x1,%edi
mov    $0x3ce,%esi
call   1050 <outw@plt>
mov    $0x2,%edi
mov    $0x3ce,%esi
call   1050 <outw@plt>
mov    $0x3,%edi
mov    $0x3ce,%esi
call   1050 <outw@plt>
mov    $0x4,%edi
mov    $0x3ce,%esi
call   1050 <outw@plt>
mov    $0x1005,%edi
mov    $0x3ce,%esi
call   1050 <outw@plt>
mov    $0xe06,%edi
mov    $0x3ce,%esi
call   1050 <outw@plt>
mov    $0x7,%edi
mov    $0x3ce,%esi
call   1050 <outw@plt>
mov    $0xff08,%edi
mov    $0x3ce,%esi
call   1050 <outw@plt>
mov    $0x3da,%edi
call   1040 <inb@plt>
xor    %edi,%edi
mov    $0x3c0,%esi
call   1030 <outb@plt>
xor    %edi,%edi
mov    $0x3c0,%esi
call   1030 <outb@plt>
mov    $0x3da,%edi
call   1040 <inb@plt>
mov    $0x1,%edi
mov    $0x3c0,%esi
call   1030 <outb@plt>
mov    $0x1,%edi
mov    $0x3c0,%esi
call   1030 <outb@plt>
mov    $0x3da,%edi
call   1040 <inb@plt>
mov    $0x2,%edi
mov    $0x3c0,%esi
call   1030 <outb@plt>
mov    $0x2,%edi
mov    $0x3c0,%esi
call   1030 <outb@plt>
mov    $0x3da,%edi
call   1040 <inb@plt>
mov    $0x3,%edi
mov    $0x3c0,%esi
call   1030 <outb@plt>
mov    $0x3,%edi
mov    $0x3c0,%esi
call   1030 <outb@plt>
mov    $0x3da,%edi
call   1040 <inb@plt>
mov    $0x4,%edi
mov    $0x3c0,%esi
call   1030 <outb@plt>
mov    $0x4,%edi
mov    $0x3c0,%esi
call   1030 <outb@plt>
mov    $0x3da,%edi
call   1040 <inb@plt>
mov    $0x5,%edi
mov    $0x3c0,%esi
call   1030 <outb@plt>
mov    $0x5,%edi
mov    $0x3c0,%esi
call   1030 <outb@plt>
mov    $0x3da,%edi
call   1040 <inb@plt>
mov    $0x6,%edi
mov    $0x3c0,%esi
call   1030 <outb@plt>
mov    $0x14,%edi
mov    $0x3c0,%esi
call   1030 <outb@plt>
mov    $0x3da,%edi
call   1040 <inb@plt>
mov    $0x7,%edi
mov    $0x3c0,%esi
call   1030 <outb@plt>
mov    $0x7,%edi
mov    $0x3c0,%esi
call   1030 <outb@plt>
mov    $0x3da,%edi
call   1040 <inb@plt>
mov    $0x8,%edi
mov    $0x3c0,%esi
call   1030 <outb@plt>
mov    $0x38,%edi
mov    $0x3c0,%esi
call   1030 <outb@plt>
mov    $0x3da,%edi
call   1040 <inb@plt>
mov    $0x9,%edi
mov    $0x3c0,%esi
call   1030 <outb@plt>
mov    $0x39,%edi
mov    $0x3c0,%esi
call   1030 <outb@plt>
mov    $0x3da,%edi
call   1040 <inb@plt>
mov    $0xa,%edi
mov    $0x3c0,%esi
call   1030 <outb@plt>
mov    $0x3a,%edi
mov    $0x3c0,%esi
call   1030 <outb@plt>
mov    $0x3da,%edi
call   1040 <inb@plt>
mov    $0xb,%edi
mov    $0x3c0,%esi
call   1030 <outb@plt>
mov    $0x3b,%edi
mov    $0x3c0,%esi
call   1030 <outb@plt>
mov    $0x3da,%edi
call   1040 <inb@plt>
mov    $0xc,%edi
mov    $0x3c0,%esi
call   1030 <outb@plt>
mov    $0x3c,%edi
mov    $0x3c0,%esi
call   1030 <outb@plt>
mov    $0x3da,%edi
call   1040 <inb@plt>
mov    $0xd,%edi
mov    $0x3c0,%esi
call   1030 <outb@plt>
mov    $0x3d,%edi
mov    $0x3c0,%esi
call   1030 <outb@plt>
mov    $0x3da,%edi
call   1040 <inb@plt>
mov    $0xe,%edi
mov    $0x3c0,%esi
call   1030 <outb@plt>
mov    $0x3e,%edi
mov    $0x3c0,%esi
call   1030 <outb@plt>
mov    $0x3da,%edi
call   1040 <inb@plt>
mov    $0xf,%edi
mov    $0x3c0,%esi
call   1030 <outb@plt>
mov    $0x3f,%edi
mov    $0x3c0,%esi
call   1030 <outb@plt>
mov    $0x3da,%edi
call   1040 <inb@plt>
mov    $0x10,%edi
mov    $0x3c0,%esi
call   1030 <outb@plt>
mov    $0xc,%edi
mov    $0x3c0,%esi
call   1030 <outb@plt>
mov    $0x3da,%edi
call   1040 <inb@plt>
mov    $0x11,%edi
mov    $0x3c0,%esi
call   1030 <outb@plt>
xor    %edi,%edi
mov    $0x3c0,%esi
call   1030 <outb@plt>
mov    $0x3da,%edi
call   1040 <inb@plt>
mov    $0x12,%edi
mov    $0x3c0,%esi
call   1030 <outb@plt>
mov    $0xf,%edi
mov    $0x3c0,%esi
call   1030 <outb@plt>
mov    $0x3da,%edi
call   1040 <inb@plt>
mov    $0x13,%edi
mov    $0x3c0,%esi
call   1030 <outb@plt>
mov    $0x8,%edi
mov    $0x3c0,%esi
call   1030 <outb@plt>
mov    $0x3da,%edi
call   1040 <inb@plt>
mov    $0x14,%edi
mov    $0x3c0,%esi
call   1030 <outb@plt>
xor    %edi,%edi
mov    $0x3c0,%esi
call   1030 <outb@plt>
mov    $0x3da,%edi
call   1040 <inb@plt>
mov    $0x20,%edi
mov    $0x3c0,%esi
call   1030 <outb@plt>
pop    %rbp
ret

x86 assembly (clang, -O2):
<reset_vga>:
push   %rax
mov    $0x3da,%edi
call   1040 <inb@plt>
xor    %edi,%edi
mov    $0x3c0,%esi
call   1030 <outb@plt>
mov    $0x300,%edi
mov    $0x3c4,%esi
call   1050 <outw@plt>
mov    $0x1,%edi
mov    $0x3c4,%esi
call   1050 <outw@plt>
mov    $0x302,%edi
mov    $0x3c4,%esi
call   1050 <outw@plt>
mov    $0x3,%edi
mov    $0x3c4,%esi
call   1050 <outw@plt>
mov    $0x204,%edi
mov    $0x3c4,%esi
call   1050 <outw@plt>
mov    $0xe11,%edi
mov    $0x3d4,%esi
call   1050 <outw@plt>
mov    $0x5f00,%edi
mov    $0x3d4,%esi
call   1050 <outw@plt>
mov    $0x4f01,%edi
mov    $0x3d4,%esi
call   1050 <outw@plt>
mov    $0x5002,%edi
mov    $0x3d4,%esi
call   1050 <outw@plt>
mov    $0x8203,%edi
mov    $0x3d4,%esi
call   1050 <outw@plt>
mov    $0x5504,%edi
mov    $0x3d4,%esi
call   1050 <outw@plt>
mov    $0x8105,%edi
mov    $0x3d4,%esi
call   1050 <outw@plt>
mov    $0xbf06,%edi
mov    $0x3d4,%esi
call   1050 <outw@plt>
mov    $0x1f07,%edi
mov    $0x3d4,%esi
call   1050 <outw@plt>
mov    $0x8,%edi
mov    $0x3d4,%esi
call   1050 <outw@plt>
mov    $0x4f09,%edi
mov    $0x3d4,%esi
call   1050 <outw@plt>
mov    $0x200a,%edi
mov    $0x3d4,%esi
call   1050 <outw@plt>
mov    $0xe0b,%edi
mov    $0x3d4,%esi
call   1050 <outw@plt>
mov    $0xc,%edi
mov    $0x3d4,%esi
call   1050 <outw@plt>
mov    $0xd,%edi
mov    $0x3d4,%esi
call   1050 <outw@plt>
mov    $0x10e,%edi
mov    $0x3d4,%esi
call   1050 <outw@plt>
mov    $0xe00f,%edi
mov    $0x3d4,%esi
call   1050 <outw@plt>
mov    $0x9c10,%edi
mov    $0x3d4,%esi
call   1050 <outw@plt>
mov    $0x8e11,%edi
mov    $0x3d4,%esi
call   1050 <outw@plt>
mov    $0x8f12,%edi
mov    $0x3d4,%esi
call   1050 <outw@plt>
mov    $0x2813,%edi
mov    $0x3d4,%esi
call   1050 <outw@plt>
mov    $0x1f14,%edi
mov    $0x3d4,%esi
call   1050 <outw@plt>
mov    $0x9615,%edi
mov    $0x3d4,%esi
call   1050 <outw@plt>
mov    $0xb916,%edi
mov    $0x3d4,%esi
call   1050 <outw@plt>
mov    $0xa317,%edi
mov    $0x3d4,%esi
call   1050 <outw@plt>
mov    $0xff18,%edi
mov    $0x3d4,%esi
call   1050 <outw@plt>
xor    %edi,%edi
mov    $0x3ce,%esi
call   1050 <outw@plt>
mov    $0x1,%edi
mov    $0x3ce,%esi
call   1050 <outw@plt>
mov    $0x2,%edi
mov    $0x3ce,%esi
call   1050 <outw@plt>
mov    $0x3,%edi
mov    $0x3ce,%esi
call   1050 <outw@plt>
mov    $0x4,%edi
mov    $0x3ce,%esi
call   1050 <outw@plt>
mov    $0x1005,%edi
mov    $0x3ce,%esi
call   1050 <outw@plt>
mov    $0xe06,%edi
mov    $0x3ce,%esi
call   1050 <outw@plt>
mov    $0x7,%edi
mov    $0x3ce,%esi
call   1050 <outw@plt>
mov    $0xff08,%edi
mov    $0x3ce,%esi
call   1050 <outw@plt>
mov    $0x3da,%edi
call   1040 <inb@plt>
xor    %edi,%edi
mov    $0x3c0,%esi
call   1030 <outb@plt>
xor    %edi,%edi
mov    $0x3c0,%esi
call   1030 <outb@plt>
mov    $0x3da,%edi
call   1040 <inb@plt>
mov    $0x1,%edi
mov    $0x3c0,%esi
call   1030 <outb@plt>
mov    $0x1,%edi
mov    $0x3c0,%esi
call   1030 <outb@plt>
mov    $0x3da,%edi
call   1040 <inb@plt>
mov    $0x2,%edi
mov    $0x3c0,%esi
call   1030 <outb@plt>
mov    $0x2,%edi
mov    $0x3c0,%esi
call   1030 <outb@plt>
mov    $0x3da,%edi
call   1040 <inb@plt>
mov    $0x3,%edi
mov    $0x3c0,%esi
call   1030 <outb@plt>
mov    $0x3,%edi
mov    $0x3c0,%esi
call   1030 <outb@plt>
mov    $0x3da,%edi
call   1040 <inb@plt>
mov    $0x4,%edi
mov    $0x3c0,%esi
call   1030 <outb@plt>
mov    $0x4,%edi
mov    $0x3c0,%esi
call   1030 <outb@plt>
mov    $0x3da,%edi
call   1040 <inb@plt>
mov    $0x5,%edi
mov    $0x3c0,%esi
call   1030 <outb@plt>
mov    $0x5,%edi
mov    $0x3c0,%esi
call   1030 <outb@plt>
mov    $0x3da,%edi
call   1040 <inb@plt>
mov    $0x6,%edi
mov    $0x3c0,%esi
call   1030 <outb@plt>
mov    $0x14,%edi
mov    $0x3c0,%esi
call   1030 <outb@plt>
mov    $0x3da,%edi
call   1040 <inb@plt>
mov    $0x7,%edi
mov    $0x3c0,%esi
call   1030 <outb@plt>
mov    $0x7,%edi
mov    $0x3c0,%esi
call   1030 <outb@plt>
mov    $0x3da,%edi
call   1040 <inb@plt>
mov    $0x8,%edi
mov    $0x3c0,%esi
call   1030 <outb@plt>
mov    $0x38,%edi
mov    $0x3c0,%esi
call   1030 <outb@plt>
mov    $0x3da,%edi
call   1040 <inb@plt>
mov    $0x9,%edi
mov    $0x3c0,%esi
call   1030 <outb@plt>
mov    $0x39,%edi
mov    $0x3c0,%esi
call   1030 <outb@plt>
mov    $0x3da,%edi
call   1040 <inb@plt>
mov    $0xa,%edi
mov    $0x3c0,%esi
call   1030 <outb@plt>
mov    $0x3a,%edi
mov    $0x3c0,%esi
call   1030 <outb@plt>
mov    $0x3da,%edi
call   1040 <inb@plt>
mov    $0xb,%edi
mov    $0x3c0,%esi
call   1030 <outb@plt>
mov    $0x3b,%edi
mov    $0x3c0,%esi
call   1030 <outb@plt>
mov    $0x3da,%edi
call   1040 <inb@plt>
mov    $0xc,%edi
mov    $0x3c0,%esi
call   1030 <outb@plt>
mov    $0x3c,%edi
mov    $0x3c0,%esi
call   1030 <outb@plt>
mov    $0x3da,%edi
call   1040 <inb@plt>
mov    $0xd,%edi
mov    $0x3c0,%esi
call   1030 <outb@plt>
mov    $0x3d,%edi
mov    $0x3c0,%esi
call   1030 <outb@plt>
mov    $0x3da,%edi
call   1040 <inb@plt>
mov    $0xe,%edi
mov    $0x3c0,%esi
call   1030 <outb@plt>
mov    $0x3e,%edi
mov    $0x3c0,%esi
call   1030 <outb@plt>
mov    $0x3da,%edi
call   1040 <inb@plt>
mov    $0xf,%edi
mov    $0x3c0,%esi
call   1030 <outb@plt>
mov    $0x3f,%edi
mov    $0x3c0,%esi
call   1030 <outb@plt>
mov    $0x3da,%edi
call   1040 <inb@plt>
mov    $0x10,%edi
mov    $0x3c0,%esi
call   1030 <outb@plt>
mov    $0xc,%edi
mov    $0x3c0,%esi
call   1030 <outb@plt>
mov    $0x3da,%edi
call   1040 <inb@plt>
mov    $0x11,%edi
mov    $0x3c0,%esi
call   1030 <outb@plt>
xor    %edi,%edi
mov    $0x3c0,%esi
call   1030 <outb@plt>
mov    $0x3da,%edi
call   1040 <inb@plt>
mov    $0x12,%edi
mov    $0x3c0,%esi
call   1030 <outb@plt>
mov    $0xf,%edi
mov    $0x3c0,%esi
call   1030 <outb@plt>
mov    $0x3da,%edi
call   1040 <inb@plt>
mov    $0x13,%edi
mov    $0x3c0,%esi
call   1030 <outb@plt>
mov    $0x8,%edi
mov    $0x3c0,%esi
call   1030 <outb@plt>
mov    $0x3da,%edi
call   1040 <inb@plt>
mov    $0x14,%edi
mov    $0x3c0,%esi
call   1030 <outb@plt>
xor    %edi,%edi
mov    $0x3c0,%esi
call   1030 <outb@plt>
mov    $0x3da,%edi
call   1040 <inb@plt>
mov    $0x20,%edi
mov    $0x3c0,%esi
pop    %rax
jmp    1030 <outb@plt>

LLVM IR (-O0):
define void @reset_vga() {
%1 = call i32 @inb(i32 986)
%2 = call i32 @outb(i32 0, i32 960)
%3 = call i32 @outw(i32 768, i32 964)
%4 = call i32 @outw(i32 1, i32 964)
%5 = call i32 @outw(i32 770, i32 964)
%6 = call i32 @outw(i32 3, i32 964)
%7 = call i32 @outw(i32 516, i32 964)
%8 = call i32 @outw(i32 3601, i32 980)
%9 = call i32 @outw(i32 24320, i32 980)
%10 = call i32 @outw(i32 20225, i32 980)
%11 = call i32 @outw(i32 20482, i32 980)
%12 = call i32 @outw(i32 33283, i32 980)
%13 = call i32 @outw(i32 21764, i32 980)
%14 = call i32 @outw(i32 33029, i32 980)
%15 = call i32 @outw(i32 48902, i32 980)
%16 = call i32 @outw(i32 7943, i32 980)
%17 = call i32 @outw(i32 8, i32 980)
%18 = call i32 @outw(i32 20233, i32 980)
%19 = call i32 @outw(i32 8202, i32 980)
%20 = call i32 @outw(i32 3595, i32 980)
%21 = call i32 @outw(i32 12, i32 980)
%22 = call i32 @outw(i32 13, i32 980)
%23 = call i32 @outw(i32 270, i32 980)
%24 = call i32 @outw(i32 57359, i32 980)
%25 = call i32 @outw(i32 39952, i32 980)
%26 = call i32 @outw(i32 36369, i32 980)
%27 = call i32 @outw(i32 36626, i32 980)
%28 = call i32 @outw(i32 10259, i32 980)
%29 = call i32 @outw(i32 7956, i32 980)
%30 = call i32 @outw(i32 38421, i32 980)
%31 = call i32 @outw(i32 47382, i32 980)
%32 = call i32 @outw(i32 41751, i32 980)
%33 = call i32 @outw(i32 65304, i32 980)
%34 = call i32 @outw(i32 0, i32 974)
%35 = call i32 @outw(i32 1, i32 974)
%36 = call i32 @outw(i32 2, i32 974)
%37 = call i32 @outw(i32 3, i32 974)
%38 = call i32 @outw(i32 4, i32 974)
%39 = call i32 @outw(i32 4101, i32 974)
%40 = call i32 @outw(i32 3590, i32 974)
%41 = call i32 @outw(i32 7, i32 974)
%42 = call i32 @outw(i32 65288, i32 974)
%43 = call i32 @inb(i32 986)
%44 = call i32 @outb(i32 0, i32 960)
%45 = call i32 @outb(i32 0, i32 960)
%46 = call i32 @inb(i32 986)
%47 = call i32 @outb(i32 1, i32 960)
%48 = call i32 @outb(i32 1, i32 960)
%49 = call i32 @inb(i32 986)
%50 = call i32 @outb(i32 2, i32 960)
%51 = call i32 @outb(i32 2, i32 960)
%52 = call i32 @inb(i32 986)
%53 = call i32 @outb(i32 3, i32 960)
%54 = call i32 @outb(i32 3, i32 960)
%55 = call i32 @inb(i32 986)
%56 = call i32 @outb(i32 4, i32 960)
%57 = call i32 @outb(i32 4, i32 960)
%58 = call i32 @inb(i32 986)
%59 = call i32 @outb(i32 5, i32 960)
%60 = call i32 @outb(i32 5, i32 960)
%61 = call i32 @inb(i32 986)
%62 = call i32 @outb(i32 6, i32 960)
%63 = call i32 @outb(i32 20, i32 960)
%64 = call i32 @inb(i32 986)
%65 = call i32 @outb(i32 7, i32 960)
%66 = call i32 @outb(i32 7, i32 960)
%67 = call i32 @inb(i32 986)
%68 = call i32 @outb(i32 8, i32 960)
%69 = call i32 @outb(i32 56, i32 960)
%70 = call i32 @inb(i32 986)
%71 = call i32 @outb(i32 9, i32 960)
%72 = call i32 @outb(i32 57, i32 960)
%73 = call i32 @inb(i32 986)
%74 = call i32 @outb(i32 10, i32 960)
%75 = call i32 @outb(i32 58, i32 960)
%76 = call i32 @inb(i32 986)
%77 = call i32 @outb(i32 11, i32 960)
%78 = call i32 @outb(i32 59, i32 960)
%79 = call i32 @inb(i32 986)
%80 = call i32 @outb(i32 12, i32 960)
%81 = call i32 @outb(i32 60, i32 960)
%82 = call i32 @inb(i32 986)
%83 = call i32 @outb(i32 13, i32 960)
%84 = call i32 @outb(i32 61, i32 960)
%85 = call i32 @inb(i32 986)
%86 = call i32 @outb(i32 14, i32 960)
%87 = call i32 @outb(i32 62, i32 960)
%88 = call i32 @inb(i32 986)
%89 = call i32 @outb(i32 15, i32 960)
%90 = call i32 @outb(i32 63, i32 960)
%91 = call i32 @inb(i32 986)
%92 = call i32 @outb(i32 16, i32 960)
%93 = call i32 @outb(i32 12, i32 960)
%94 = call i32 @inb(i32 986)
%95 = call i32 @outb(i32 17, i32 960)
%96 = call i32 @outb(i32 0, i32 960)
%97 = call i32 @inb(i32 986)
%98 = call i32 @outb(i32 18, i32 960)
%99 = call i32 @outb(i32 15, i32 960)
%100 = call i32 @inb(i32 986)
%101 = call i32 @outb(i32 19, i32 960)
%102 = call i32 @outb(i32 8, i32 960)
%103 = call i32 @inb(i32 986)
%104 = call i32 @outb(i32 20, i32 960)
%105 = call i32 @outb(i32 0, i32 960)
%106 = call i32 @inb(i32 986)
%107 = call i32 @outb(i32 32, i32 960)
ret void
}

LLVM IR (-O2):
define void @reset_vga() {
%1 = tail call i32 @inb(i32 986)
%2 = tail call i32 @outb(i32 0, i32 960)
%3 = tail call i32 @outw(i32 768, i32 964)
%4 = tail call i32 @outw(i32 1, i32 964)
%5 = tail call i32 @outw(i32 770, i32 964)
%6 = tail call i32 @outw(i32 3, i32 964)
%7 = tail call i32 @outw(i32 516, i32 964)
%8 = tail call i32 @outw(i32 3601, i32 980)
%9 = tail call i32 @outw(i32 24320, i32 980)
%10 = tail call i32 @outw(i32 20225, i32 980)
%11 = tail call i32 @outw(i32 20482, i32 980)
%12 = tail call i32 @outw(i32 33283, i32 980)
%13 = tail call i32 @outw(i32 21764, i32 980)
%14 = tail call i32 @outw(i32 33029, i32 980)
%15 = tail call i32 @outw(i32 48902, i32 980)
%16 = tail call i32 @outw(i32 7943, i32 980)
%17 = tail call i32 @outw(i32 8, i32 980)
%18 = tail call i32 @outw(i32 20233, i32 980)
%19 = tail call i32 @outw(i32 8202, i32 980)
%20 = tail call i32 @outw(i32 3595, i32 980)
%21 = tail call i32 @outw(i32 12, i32 980)
%22 = tail call i32 @outw(i32 13, i32 980)
%23 = tail call i32 @outw(i32 270, i32 980)
%24 = tail call i32 @outw(i32 57359, i32 980)
%25 = tail call i32 @outw(i32 39952, i32 980)
%26 = tail call i32 @outw(i32 36369, i32 980)
%27 = tail call i32 @outw(i32 36626, i32 980)
%28 = tail call i32 @outw(i32 10259, i32 980)
%29 = tail call i32 @outw(i32 7956, i32 980)
%30 = tail call i32 @outw(i32 38421, i32 980)
%31 = tail call i32 @outw(i32 47382, i32 980)
%32 = tail call i32 @outw(i32 41751, i32 980)
%33 = tail call i32 @outw(i32 65304, i32 980)
%34 = tail call i32 @outw(i32 0, i32 974)
%35 = tail call i32 @outw(i32 1, i32 974)
%36 = tail call i32 @outw(i32 2, i32 974)
%37 = tail call i32 @outw(i32 3, i32 974)
%38 = tail call i32 @outw(i32 4, i32 974)
%39 = tail call i32 @outw(i32 4101, i32 974)
%40 = tail call i32 @outw(i32 3590, i32 974)
%41 = tail call i32 @outw(i32 7, i32 974)
%42 = tail call i32 @outw(i32 65288, i32 974)
%43 = tail call i32 @inb(i32 986)
%44 = tail call i32 @outb(i32 0, i32 960)
%45 = tail call i32 @outb(i32 0, i32 960)
%46 = tail call i32 @inb(i32 986)
%47 = tail call i32 @outb(i32 1, i32 960)
%48 = tail call i32 @outb(i32 1, i32 960)
%49 = tail call i32 @inb(i32 986)
%50 = tail call i32 @outb(i32 2, i32 960)
%51 = tail call i32 @outb(i32 2, i32 960)
%52 = tail call i32 @inb(i32 986)
%53 = tail call i32 @outb(i32 3, i32 960)
%54 = tail call i32 @outb(i32 3, i32 960)
%55 = tail call i32 @inb(i32 986)
%56 = tail call i32 @outb(i32 4, i32 960)
%57 = tail call i32 @outb(i32 4, i32 960)
%58 = tail call i32 @inb(i32 986)
%59 = tail call i32 @outb(i32 5, i32 960)
%60 = tail call i32 @outb(i32 5, i32 960)
%61 = tail call i32 @inb(i32 986)
%62 = tail call i32 @outb(i32 6, i32 960)
%63 = tail call i32 @outb(i32 20, i32 960)
%64 = tail call i32 @inb(i32 986)
%65 = tail call i32 @outb(i32 7, i32 960)
%66 = tail call i32 @outb(i32 7, i32 960)
%67 = tail call i32 @inb(i32 986)
%68 = tail call i32 @outb(i32 8, i32 960)
%69 = tail call i32 @outb(i32 56, i32 960)
%70 = tail call i32 @inb(i32 986)
%71 = tail call i32 @outb(i32 9, i32 960)
%72 = tail call i32 @outb(i32 57, i32 960)
%73 = tail call i32 @inb(i32 986)
%74 = tail call i32 @outb(i32 10, i32 960)
%75 = tail call i32 @outb(i32 58, i32 960)
%76 = tail call i32 @inb(i32 986)
%77 = tail call i32 @outb(i32 11, i32 960)
%78 = tail call i32 @outb(i32 59, i32 960)
%79 = tail call i32 @inb(i32 986)
%80 = tail call i32 @outb(i32 12, i32 960)
%81 = tail call i32 @outb(i32 60, i32 960)
%82 = tail call i32 @inb(i32 986)
%83 = tail call i32 @outb(i32 13, i32 960)
%84 = tail call i32 @outb(i32 61, i32 960)
%85 = tail call i32 @inb(i32 986)
%86 = tail call i32 @outb(i32 14, i32 960)
%87 = tail call i32 @outb(i32 62, i32 960)
%88 = tail call i32 @inb(i32 986)
%89 = tail call i32 @outb(i32 15, i32 960)
%90 = tail call i32 @outb(i32 63, i32 960)
%91 = tail call i32 @inb(i32 986)
%92 = tail call i32 @outb(i32 16, i32 960)
%93 = tail call i32 @outb(i32 12, i32 960)
%94 = tail call i32 @inb(i32 986)
%95 = tail call i32 @outb(i32 17, i32 960)
%96 = tail call i32 @outb(i32 0, i32 960)
%97 = tail call i32 @inb(i32 986)
%98 = tail call i32 @outb(i32 18, i32 960)
%99 = tail call i32 @outb(i32 15, i32 960)
%100 = tail call i32 @inb(i32 986)
%101 = tail call i32 @outb(i32 19, i32 960)
%102 = tail call i32 @outb(i32 8, i32 960)
%103 = tail call i32 @inb(i32 986)
%104 = tail call i32 @outb(i32 20, i32 960)
%105 = tail call i32 @outb(i32 0, i32 960)
%106 = tail call i32 @inb(i32 986)
%107 = tail call i32 @outb(i32 32, i32 960)
ret void
}