#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 */
typedef int Elf64_Half;

/* Variables and functions */
#define EM_386 205
#define EM_68HC05 204
#define EM_68HC08 203
#define EM_68HC11 202
#define EM_68HC12 201
#define EM_68HC16 200
#define EM_68K 199
#define EM_860 198
#define EM_88K 197
#define EM_960 196
#define EM_AARCH64 195
#define EM_ARC 194
#define EM_ARC_A5 193
#define EM_ARM 192
#define EM_AVR 191
#define EM_COLDFIRE 190
#define EM_CRIS 189
#define EM_D10V 188
#define EM_D30V 187
#define EM_FAKE_ALPHA 186
#define EM_FIREPATH 185
#define EM_FR20 184
#define EM_FR30 183
#define EM_FX66 182
#define EM_H8S 181
#define EM_H8_300 180
#define EM_H8_300H 179
#define EM_H8_500 178
#define EM_HUANY 177
#define EM_IA_64 176
#define EM_JAVELIN 175
#define EM_M32 174
#define EM_M32R 173
#define EM_ME16 172
#define EM_MICROBLAZE 171
#define EM_MIPS 170
#define EM_MIPS_RS3_LE 169
#define EM_MIPS_X 168
#define EM_MMA 167
#define EM_MMIX 166
#define EM_MN10200 165
#define EM_MN10300 164
#define EM_NCPU 163
#define EM_NDR1 162
#define EM_NONE 161
#define EM_OPENRISC 160
#define EM_PARISC 159
#define EM_PCP 158
#define EM_PDSP 157
#define EM_PJ 156
#define EM_PPC 155
#define EM_PPC64 154
#define EM_PRISM 153
#define EM_RCE 152
#define EM_RH32 151
#define EM_S370 150
#define EM_S390 149
#define EM_SH 148
#define EM_SPARC 147
#define EM_SPARC32PLUS 146
#define EM_SPARCV9 145
#define EM_ST100 144
#define EM_ST19 143
#define EM_ST7 142
#define EM_ST9PLUS 141
#define EM_STARCORE 140
#define EM_SVX 139
#define EM_TILEGX 138
#define EM_TILEPRO 137
#define EM_TINYJ 136
#define EM_TRICORE 135
#define EM_V800 134
#define EM_V850 133
#define EM_VAX 132
#define EM_VPP500 131
#define EM_X86_64 130
#define EM_XTENSA 129
#define EM_ZSP 128
int /*<<< orphan*/ printf(char *);
void parse_machine(Elf64_Half e_machine) {
  printf("Machine Archetecture: ");
  switch (e_machine) {
  case EM_NONE:
    printf("No machine\n");
    break;
  case EM_M32:
    printf("AT&T WE 32100\n");
    break;
  case EM_SPARC:
    printf("Sun SPARC\n");
    break;
  case EM_386:
    printf("Intel 80386\n");
    break;
  case EM_68K:
    printf("Motorola m68k family\n");
    break;
  case EM_88K:
    printf("Motorola m88k family\n");
    break;
  case EM_860:
    printf("Intel 80860\n");
    break;
  case EM_MIPS:
    printf("MIPS R3000 big-endian\n");
    break;
  case EM_S370:
    printf("IBM System/370\n");
    break;
  case EM_MIPS_RS3_LE:
    printf("MIPS R3000 little-endian\n");
    break;
  case EM_PARISC:
    printf("HPPA\n");
    break;
  case EM_VPP500:
    printf("Fujitsu VPP500\n");
    break;
  case EM_SPARC32PLUS:
    printf("Sun's \"v8plus\"\n");
    break;
  case EM_960:
    printf("Intel 80960\n");
    break;
  case EM_PPC:
    printf("PowerPC\n");
    break;
  case EM_PPC64:
    printf("PowerPC 64-bit\n");
    break;
  case EM_S390:
    printf("IBM S390\n");
    break;
  case EM_V800:
    printf("NEC V800 series\n");
    break;
  case EM_FR20:
    printf("Fujitsu FR20\n");
    break;
  case EM_RH32:
    printf("TRW RH-32\n");
    break;
  case EM_RCE:
    printf("Motorola RCE\n");
    break;
  case EM_ARM:
    printf("ARM\n");
    break;
  case EM_FAKE_ALPHA:
    printf("Digital Alpha\n");
    break;
  case EM_SH:
    printf("Hitachi SH\n");
    break;
  case EM_SPARCV9:
    printf("SPARC v9 64-bit\n");
    break;
  case EM_TRICORE:
    printf("Siemens Tricore\n");
    break;
  case EM_ARC:
    printf("Argonaut RISC Core\n");
    break;
  case EM_H8_300:
    printf("Hitachi H8/300\n");
    break;
  case EM_H8_300H:
    printf("Hitachi H8/300H\n");
    break;
  case EM_H8S:
    printf("Hitachi H8S\n");
    break;
  case EM_H8_500:
    printf("Hitachi H8/500\n");
    break;
  case EM_IA_64:
    printf("Intel Merced\n");
    break;
  case EM_MIPS_X:
    printf("Stanford MIPS-X\n");
    break;
  case EM_COLDFIRE:
    printf("Motorola Coldfire\n");
    break;
  case EM_68HC12:
    printf("Motorola M68HC12\n");
    break;
  case EM_MMA:
    printf("Fujitsu MMA Multimedia Accelerator*/\n");
    break;
  case EM_PCP:
    printf("Siemens PCP\n");
    break;
  case EM_NCPU:
    printf("Sony nCPU embeeded RISC\n");
    break;
  case EM_NDR1:
    printf("Denso NDR1 microprocessor\n");
    break;
  case EM_STARCORE:
    printf("Motorola Start*Core processor\n");
    break;
  case EM_ME16:
    printf("Toyota ME16 processor\n");
    break;
  case EM_ST100:
    printf("STMicroelectronic ST100 processor\n");
    break;
  case EM_TINYJ:
    printf("Advanced Logic Corp. Tinyj emb.fam*/\n");
    break;
  case EM_X86_64:
    printf("AMD x86-64 architecture\n");
    break;
  case EM_PDSP:
    printf("Sony DSP Processor\n");
    break;
  case EM_FX66:
    printf("Siemens FX66 microcontroller\n");
    break;
  case EM_ST9PLUS:
    printf("STMicroelectronics ST9+ 8/16 mc\n");
    break;
  case EM_ST7:
    printf("STmicroelectronics ST7 8 bit mc\n");
    break;
  case EM_68HC16:
    printf("Motorola MC68HC16 microcontroller\n");
    break;
  case EM_68HC11:
    printf("Motorola MC68HC11 microcontroller\n");
    break;
  case EM_68HC08:
    printf("Motorola MC68HC08 microcontroller\n");
    break;
  case EM_68HC05:
    printf("Motorola MC68HC05 microcontroller\n");
    break;
  case EM_SVX:
    printf("Silicon Graphics SVx\n");
    break;
  case EM_ST19:
    printf("STMicroelectronics ST19 8 bit mc\n");
    break;
  case EM_VAX:
    printf("Digital VAX\n");
    break;
  case EM_CRIS:
    printf("Axis Communications 32-bit embedded processor\n");
    break;
  case EM_JAVELIN:
    printf("Infineon Technologies 32-bit embedded processor\n");
    break;
  case EM_FIREPATH:
    printf("Element 14 64-bit DSP Processor\n");
    break;
  case EM_ZSP:
    printf("LSI Logic 16-bit DSP Processor\n");
    break;
  case EM_MMIX:
    printf("Donald Knuth's educational 64-bit processor\n");
    break;
  case EM_HUANY:
    printf("Harvard University machine-independent object files\n");
    break;
  case EM_PRISM:
    printf("SiTera Prism\n");
    break;
  case EM_AVR:
    printf("Atmel AVR 8-bit microcontroller\n");
    break;
  case EM_FR30:
    printf("Fujitsu FR30\n");
    break;
  case EM_D10V:
    printf("Mitsubishi D10V\n");
    break;
  case EM_D30V:
    printf("Mitsubishi D30V\n");
    break;
  case EM_V850:
    printf("NEC v850\n");
    break;
  case EM_M32R:
    printf("Mitsubishi M32R\n");
    break;
  case EM_MN10300:
    printf("Matsushita MN10300\n");
    break;
  case EM_MN10200:
    printf("Matsushita MN10200\n");
    break;
  case EM_PJ:
    printf("picoJava\n");
    break;
  case EM_OPENRISC:
    printf("OpenRISC 32-bit embedded processor\n");
    break;
  case EM_ARC_A5:
    printf("ARC Cores Tangent-A5\n");
    break;
  case EM_XTENSA:
    printf("Tensilica Xtensa Architecture\n");
    break;
  case EM_AARCH64:
    printf("ARM AARCH64\n");
    break;
  case EM_TILEPRO:
    printf("Tilera TILEPro\n");
    break;
  case EM_MICROBLAZE:
    printf("Xilinx MicroBlaze\n");
    break;
  case EM_TILEGX:
    printf("Tilera TILE-Gx\n");
    break;
  default:
    printf("not found\n");
  }
}


x86 assembly (clang, -O0):
<parse_machine>:
push   %rbp
mov    %rsp,%rbp
sub    $0x10,%rsp
mov    %edi,-0x4(%rbp)
lea    0x1016(%rip),%rdi
call   1030 <printf@plt>
mov    -0x4(%rbp),%eax
add    $0xffffff80,%eax
mov    %eax,%ecx
mov    %rcx,-0x10(%rbp)
sub    $0x4d,%eax
ja     167e <parse_machine+0x56e>
mov    -0x10(%rbp),%rax
lea    0xeb9(%rip),%rcx
movslq (%rcx,%rax,4),%rax
add    %rcx,%rax
jmp    *%rax
lea    0xff8(%rip),%rdi
call   1030 <printf@plt>
jmp    168a <parse_machine+0x57a>
lea    0xff3(%rip),%rdi
call   1030 <printf@plt>
jmp    168a <parse_machine+0x57a>
lea    0xff1(%rip),%rdi
call   1030 <printf@plt>
jmp    168a <parse_machine+0x57a>
lea    0xfeb(%rip),%rdi
call   1030 <printf@plt>
jmp    168a <parse_machine+0x57a>
lea    0xfe7(%rip),%rdi
call   1030 <printf@plt>
jmp    168a <parse_machine+0x57a>
lea    0xfec(%rip),%rdi
call   1030 <printf@plt>
jmp    168a <parse_machine+0x57a>
lea    0xff1(%rip),%rdi
call   1030 <printf@plt>
jmp    168a <parse_machine+0x57a>
lea    0xfed(%rip),%rdi
call   1030 <printf@plt>
jmp    168a <parse_machine+0x57a>
lea    0xff3(%rip),%rdi
call   1030 <printf@plt>
jmp    168a <parse_machine+0x57a>
lea    0xff2(%rip),%rdi
call   1030 <printf@plt>
jmp    168a <parse_machine+0x57a>
lea    0xffb(%rip),%rdi
call   1030 <printf@plt>
jmp    168a <parse_machine+0x57a>
lea    0xff0(%rip),%rdi
call   1030 <printf@plt>
jmp    168a <parse_machine+0x57a>
lea    0xfef(%rip),%rdi
call   1030 <printf@plt>
jmp    168a <parse_machine+0x57a>
lea    0xfee(%rip),%rdi
call   1030 <printf@plt>
jmp    168a <parse_machine+0x57a>
lea    0xfea(%rip),%rdi
call   1030 <printf@plt>
jmp    168a <parse_machine+0x57a>
lea    0xfe2(%rip),%rdi
call   1030 <printf@plt>
jmp    168a <parse_machine+0x57a>
lea    0xfe1(%rip),%rdi
call   1030 <printf@plt>
jmp    168a <parse_machine+0x57a>
lea    0xfda(%rip),%rdi
call   1030 <printf@plt>
jmp    168a <parse_machine+0x57a>
lea    0xfda(%rip),%rdi
call   1030 <printf@plt>
jmp    168a <parse_machine+0x57a>
lea    0xfd7(%rip),%rdi
call   1030 <printf@plt>
jmp    168a <parse_machine+0x57a>
lea    0xfd1(%rip),%rdi
call   1030 <printf@plt>
jmp    168a <parse_machine+0x57a>
lea    0xfce(%rip),%rdi
call   1030 <printf@plt>
jmp    168a <parse_machine+0x57a>
lea    0xfc2(%rip),%rdi
call   1030 <printf@plt>
jmp    168a <parse_machine+0x57a>
lea    0xfc0(%rip),%rdi
call   1030 <printf@plt>
jmp    168a <parse_machine+0x57a>
lea    0xfbb(%rip),%rdi
call   1030 <printf@plt>
jmp    168a <parse_machine+0x57a>
lea    0xfbb(%rip),%rdi
call   1030 <printf@plt>
jmp    168a <parse_machine+0x57a>
lea    0xfbb(%rip),%rdi
call   1030 <printf@plt>
jmp    168a <parse_machine+0x57a>
lea    0xfbe(%rip),%rdi
call   1030 <printf@plt>
jmp    168a <parse_machine+0x57a>
lea    0xfbd(%rip),%rdi
call   1030 <printf@plt>
jmp    168a <parse_machine+0x57a>
lea    0xfbd(%rip),%rdi
call   1030 <printf@plt>
jmp    168a <parse_machine+0x57a>
lea    0xfb9(%rip),%rdi
call   1030 <printf@plt>
jmp    168a <parse_machine+0x57a>
lea    0xfb8(%rip),%rdi
call   1030 <printf@plt>
jmp    168a <parse_machine+0x57a>
lea    0xfb5(%rip),%rdi
call   1030 <printf@plt>
jmp    168a <parse_machine+0x57a>
lea    0xfb5(%rip),%rdi
call   1030 <printf@plt>
jmp    168a <parse_machine+0x57a>
lea    0xfb7(%rip),%rdi
call   1030 <printf@plt>
jmp    168a <parse_machine+0x57a>
lea    0xfb8(%rip),%rdi
call   1030 <printf@plt>
jmp    168a <parse_machine+0x57a>
lea    0xfcd(%rip),%rdi
call   1030 <printf@plt>
jmp    168a <parse_machine+0x57a>
lea    0xfc9(%rip),%rdi
call   1030 <printf@plt>
jmp    168a <parse_machine+0x57a>
lea    0xfd1(%rip),%rdi
call   1030 <printf@plt>
jmp    168a <parse_machine+0x57a>
lea    0xfdb(%rip),%rdi
call   1030 <printf@plt>
jmp    168a <parse_machine+0x57a>
lea    0xfe9(%rip),%rdi
call   1030 <printf@plt>
jmp    168a <parse_machine+0x57a>
lea    0xfef(%rip),%rdi
call   1030 <printf@plt>
jmp    168a <parse_machine+0x57a>
lea    0x1001(%rip),%rdi
call   1030 <printf@plt>
jmp    168a <parse_machine+0x57a>
lea    0x1016(%rip),%rdi
call   1030 <printf@plt>
jmp    168a <parse_machine+0x57a>
lea    0x101e(%rip),%rdi
call   1030 <printf@plt>
jmp    168a <parse_machine+0x57a>
lea    0x1021(%rip),%rdi
call   1030 <printf@plt>
jmp    168a <parse_machine+0x57a>
lea    0x102e(%rip),%rdi
call   1030 <printf@plt>
jmp    168a <parse_machine+0x57a>
lea    0x103e(%rip),%rdi
call   1030 <printf@plt>
jmp    168a <parse_machine+0x57a>
lea    0x104e(%rip),%rdi
call   1030 <printf@plt>
jmp    168a <parse_machine+0x57a>
lea    0x1060(%rip),%rdi
call   1030 <printf@plt>
jmp    168a <parse_machine+0x57a>
lea    0x1072(%rip),%rdi
call   1030 <printf@plt>
jmp    168a <parse_machine+0x57a>
lea    0x1084(%rip),%rdi
call   1030 <printf@plt>
jmp    168a <parse_machine+0x57a>
lea    0x1096(%rip),%rdi
call   1030 <printf@plt>
jmp    168a <parse_machine+0x57a>
lea    0x109b(%rip),%rdi
call   1030 <printf@plt>
jmp    168a <parse_machine+0x57a>
lea    0x10ac(%rip),%rdi
call   1030 <printf@plt>
jmp    168a <parse_machine+0x57a>
lea    0x10a8(%rip),%rdi
call   1030 <printf@plt>
jmp    168a <parse_machine+0x57a>
lea    0x10c6(%rip),%rdi
call   1030 <printf@plt>
jmp    168a <parse_machine+0x57a>
lea    0x10e6(%rip),%rdi
call   1030 <printf@plt>
jmp    168a <parse_machine+0x57a>
lea    0x10f6(%rip),%rdi
call   1030 <printf@plt>
jmp    168a <parse_machine+0x57a>
lea    0x1105(%rip),%rdi
call   1030 <printf@plt>
jmp    168a <parse_machine+0x57a>
lea    0x1121(%rip),%rdi
call   1030 <printf@plt>
jmp    168a <parse_machine+0x57a>
lea    0x1145(%rip),%rdi
call   1030 <printf@plt>
jmp    168a <parse_machine+0x57a>
lea    0x1142(%rip),%rdi
call   1030 <printf@plt>
jmp    168a <parse_machine+0x57a>
lea    0x1152(%rip),%rdi
call   1030 <printf@plt>
jmp    168a <parse_machine+0x57a>
lea    0x114f(%rip),%rdi
call   1030 <printf@plt>
jmp    168a <parse_machine+0x57a>
lea    0x114f(%rip),%rdi
call   1030 <printf@plt>
jmp    168a <parse_machine+0x57a>
lea    0x114f(%rip),%rdi
call   1030 <printf@plt>
jmp    168a <parse_machine+0x57a>
lea    0x1148(%rip),%rdi
call   1030 <printf@plt>
jmp    168a <parse_machine+0x57a>
lea    0x1148(%rip),%rdi
call   1030 <printf@plt>
jmp    168a <parse_machine+0x57a>
lea    0x114b(%rip),%rdi
call   1030 <printf@plt>
jmp    168a <parse_machine+0x57a>
lea    0x114e(%rip),%rdi
call   1030 <printf@plt>
jmp    168a <parse_machine+0x57a>
lea    0x1147(%rip),%rdi
call   1030 <printf@plt>
jmp    168a <parse_machine+0x57a>
lea    0x115a(%rip),%rdi
call   1030 <printf@plt>
jmp    168a <parse_machine+0x57a>
lea    0x115f(%rip),%rdi
call   1030 <printf@plt>
jmp    168a <parse_machine+0x57a>
lea    0x116d(%rip),%rdi
call   1030 <printf@plt>
jmp    168a <parse_machine+0x57a>
lea    0x1169(%rip),%rdi
call   1030 <printf@plt>
jmp    168a <parse_machine+0x57a>
lea    0x1168(%rip),%rdi
call   1030 <printf@plt>
jmp    168a <parse_machine+0x57a>
lea    0x116a(%rip),%rdi
call   1030 <printf@plt>
jmp    168a <parse_machine+0x57a>
lea    0x1169(%rip),%rdi
call   1030 <printf@plt>
add    $0x10,%rsp
pop    %rbp
ret

x86 assembly (clang, -O2):
<parse_machine>:
push   %rbx
mov    %edi,%ebx
lea    0xed6(%rip),%rdi
call   1040 <printf@plt>
add    $0xffffff80,%ebx
cmp    $0x4d,%ebx
ja     114e <parse_machine+0x2e>
movslq %ebx,%rax
lea    0x1533(%rip),%rcx
movslq (%rcx,%rax,4),%rdi
add    %rcx,%rdi
pop    %rbx
jmp    1030 <puts@plt>
lea    0x1513(%rip),%rdi
pop    %rbx
jmp    1030 <puts@plt>

LLVM IR (-O0):
@.str = [23 x i8] c"Machine Archetecture: \00"
@.str.1 = [12 x i8] c"No machine\0A\00"
@.str.2 = [15 x i8] c"AT&T WE 32100\0A\00"
@.str.3 = [11 x i8] c"Sun SPARC\0A\00"
@.str.4 = [13 x i8] c"Intel 80386\0A\00"
@.str.5 = [22 x i8] c"Motorola m68k family\0A\00"
@.str.6 = [22 x i8] c"Motorola m88k family\0A\00"
@.str.7 = [13 x i8] c"Intel 80860\0A\00"
@.str.8 = [23 x i8] c"MIPS R3000 big-endian\0A\00"
@.str.9 = [16 x i8] c"IBM System/370\0A\00"
@.str.10 = [26 x i8] c"MIPS R3000 little-endian\0A\00"
@.str.11 = [6 x i8] c"HPPA\0A\00"
@.str.12 = [16 x i8] c"Fujitsu VPP500\0A\00"
@.str.13 = [16 x i8] c"Sun's \22v8plus\22\0A\00"
@.str.14 = [13 x i8] c"Intel 80960\0A\00"
@.str.15 = [9 x i8] c"PowerPC\0A\00"
@.str.16 = [16 x i8] c"PowerPC 64-bit\0A\00"
@.str.17 = [10 x i8] c"IBM S390\0A\00"
@.str.18 = [17 x i8] c"NEC V800 series\0A\00"
@.str.19 = [14 x i8] c"Fujitsu FR20\0A\00"
@.str.20 = [11 x i8] c"TRW RH-32\0A\00"
@.str.21 = [14 x i8] c"Motorola RCE\0A\00"
@.str.22 = [5 x i8] c"ARM\0A\00"
@.str.23 = [15 x i8] c"Digital Alpha\0A\00"
@.str.24 = [12 x i8] c"Hitachi SH\0A\00"
@.str.25 = [17 x i8] c"SPARC v9 64-bit\0A\00"
@.str.26 = [17 x i8] c"Siemens Tricore\0A\00"
@.str.27 = [20 x i8] c"Argonaut RISC Core\0A\00"
@.str.28 = [16 x i8] c"Hitachi H8/300\0A\00"
@.str.29 = [17 x i8] c"Hitachi H8/300H\0A\00"
@.str.30 = [13 x i8] c"Hitachi H8S\0A\00"
@.str.31 = [16 x i8] c"Hitachi H8/500\0A\00"
@.str.32 = [14 x i8] c"Intel Merced\0A\00"
@.str.33 = [17 x i8] c"Stanford MIPS-X\0A\00"
@.str.34 = [19 x i8] c"Motorola Coldfire\0A\00"
@.str.35 = [18 x i8] c"Motorola M68HC12\0A\00"
@.str.36 = [38 x i8] c"Fujitsu MMA Multimedia Accelerator*/\0A\00"
@.str.37 = [13 x i8] c"Siemens PCP\0A\00"
@.str.38 = [25 x i8] c"Sony nCPU embeeded RISC\0A\00"
@.str.39 = [27 x i8] c"Denso NDR1 microprocessor\0A\00"
@.str.40 = [31 x i8] c"Motorola Start*Core processor\0A\00"
@.str.41 = [23 x i8] c"Toyota ME16 processor\0A\00"
@.str.42 = [35 x i8] c"STMicroelectronic ST100 processor\0A\00"
@.str.43 = [38 x i8] c"Advanced Logic Corp. Tinyj emb.fam*/\0A\00"
@.str.44 = [25 x i8] c"AMD x86-64 architecture\0A\00"
@.str.45 = [20 x i8] c"Sony DSP Processor\0A\00"
@.str.46 = [30 x i8] c"Siemens FX66 microcontroller\0A\00"
@.str.47 = [33 x i8] c"STMicroelectronics ST9+ 8/16 mc\0A\00"
@.str.48 = [33 x i8] c"STmicroelectronics ST7 8 bit mc\0A\00"
@.str.49 = [35 x i8] c"Motorola MC68HC16 microcontroller\0A\00"
@.str.50 = [35 x i8] c"Motorola MC68HC11 microcontroller\0A\00"
@.str.51 = [35 x i8] c"Motorola MC68HC08 microcontroller\0A\00"
@.str.52 = [35 x i8] c"Motorola MC68HC05 microcontroller\0A\00"
@.str.53 = [22 x i8] c"Silicon Graphics SVx\0A\00"
@.str.54 = [34 x i8] c"STMicroelectronics ST19 8 bit mc\0A\00"
@.str.55 = [13 x i8] c"Digital VAX\0A\00"
@.str.56 = [47 x i8] c"Axis Communications 32-bit embedded processor\0A\00"
@.str.57 = [49 x i8] c"Infineon Technologies 32-bit embedded processor\0A\00"
@.str.58 = [33 x i8] c"Element 14 64-bit DSP Processor\0A\00"
@.str.59 = [32 x i8] c"LSI Logic 16-bit DSP Processor\0A\00"
@.str.60 = [45 x i8] c"Donald Knuth's educational 64-bit processor\0A\00"
@.str.61 = [53 x i8] c"Harvard University machine-independent object files\0A\00"
@.str.62 = [14 x i8] c"SiTera Prism\0A\00"
@.str.63 = [33 x i8] c"Atmel AVR 8-bit microcontroller\0A\00"
@.str.64 = [14 x i8] c"Fujitsu FR30\0A\00"
@.str.65 = [17 x i8] c"Mitsubishi D10V\0A\00"
@.str.66 = [17 x i8] c"Mitsubishi D30V\0A\00"
@.str.67 = [10 x i8] c"NEC v850\0A\00"
@.str.68 = [17 x i8] c"Mitsubishi M32R\0A\00"
@.str.69 = [20 x i8] c"Matsushita MN10300\0A\00"
@.str.70 = [20 x i8] c"Matsushita MN10200\0A\00"
@.str.71 = [10 x i8] c"picoJava\0A\00"
@.str.72 = [36 x i8] c"OpenRISC 32-bit embedded processor\0A\00"
@.str.73 = [22 x i8] c"ARC Cores Tangent-A5\0A\00"
@.str.74 = [31 x i8] c"Tensilica Xtensa Architecture\0A\00"
@.str.75 = [13 x i8] c"ARM AARCH64\0A\00"
@.str.76 = [16 x i8] c"Tilera TILEPro\0A\00"
@.str.77 = [19 x i8] c"Xilinx MicroBlaze\0A\00"
@.str.78 = [16 x i8] c"Tilera TILE-Gx\0A\00"
@.str.79 = [11 x i8] c"not found\0A\00"
define void @parse_machine(i32 %0) {
%2 = alloca i32
store i32 %0, i32* %2
%3 = call i32 @printf(i8* getelementptr inbounds ([23 x i8], [23 x i8]* @.str, i64 0, i64 0))
%4 = load i32, i32* %2
switch i32 %4, label %161 [
i32 161, label %5
i32 174, label %7
i32 147, label %9
i32 205, label %11
i32 199, label %13
i32 197, label %15
i32 198, label %17
i32 170, label %19
i32 150, label %21
i32 169, label %23
i32 159, label %25
i32 131, label %27
i32 146, label %29
i32 196, label %31
i32 155, label %33
i32 154, label %35
i32 149, label %37
i32 134, label %39
i32 184, label %41
i32 151, label %43
i32 152, label %45
i32 192, label %47
i32 186, label %49
i32 148, label %51
i32 145, label %53
i32 135, label %55
i32 194, label %57
i32 180, label %59
i32 179, label %61
i32 181, label %63
i32 178, label %65
i32 176, label %67
i32 168, label %69
i32 190, label %71
i32 201, label %73
i32 167, label %75
i32 158, label %77
i32 163, label %79
i32 162, label %81
i32 140, label %83
i32 172, label %85
i32 144, label %87
i32 136, label %89
i32 130, label %91
i32 157, label %93
i32 182, label %95
i32 141, label %97
i32 142, label %99
i32 200, label %101
i32 202, label %103
i32 203, label %105
i32 204, label %107
i32 139, label %109
i32 143, label %111
i32 132, label %113
i32 189, label %115
i32 175, label %117
i32 185, label %119
i32 128, label %121
i32 166, label %123
i32 177, label %125
i32 153, label %127
i32 191, label %129
i32 183, label %131
i32 188, label %133
i32 187, label %135
i32 133, label %137
i32 173, label %139
i32 164, label %141
i32 165, label %143
i32 156, label %145
i32 160, label %147
i32 193, label %149
i32 129, label %151
i32 195, label %153
i32 137, label %155
i32 171, label %157
i32 138, label %159
]
5: ; preds = %1
%6 = call i32 @printf(i8* getelementptr inbounds ([12 x i8], [12 x i8]* @.str.1, i64 0, i64 0))
br label %163
7: ; preds = %1
%8 = call i32 @printf(i8* getelementptr inbounds ([15 x i8], [15 x i8]* @.str.2, i64 0, i64 0))
br label %163
9: ; preds = %1
%10 = call i32 @printf(i8* getelementptr inbounds ([11 x i8], [11 x i8]* @.str.3, i64 0, i64 0))
br label %163
11: ; preds = %1
%12 = call i32 @printf(i8* getelementptr inbounds ([13 x i8], [13 x i8]* @.str.4, i64 0, i64 0))
br label %163
13: ; preds = %1
%14 = call i32 @printf(i8* getelementptr inbounds ([22 x i8], [22 x i8]* @.str.5, i64 0, i64 0))
br label %163
15: ; preds = %1
%16 = call i32 @printf(i8* getelementptr inbounds ([22 x i8], [22 x i8]* @.str.6, i64 0, i64 0))
br label %163
17: ; preds = %1
%18 = call i32 @printf(i8* getelementptr inbounds ([13 x i8], [13 x i8]* @.str.7, i64 0, i64 0))
br label %163
19: ; preds = %1
%20 = call i32 @printf(i8* getelementptr inbounds ([23 x i8], [23 x i8]* @.str.8, i64 0, i64 0))
br label %163
21: ; preds = %1
%22 = call i32 @printf(i8* getelementptr inbounds ([16 x i8], [16 x i8]* @.str.9, i64 0, i64 0))
br label %163
23: ; preds = %1
%24 = call i32 @printf(i8* getelementptr inbounds ([26 x i8], [26 x i8]* @.str.10, i64 0, i64 0))
br label %163
25: ; preds = %1
%26 = call i32 @printf(i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.11, i64 0, i64 0))
br label %163
27: ; preds = %1
%28 = call i32 @printf(i8* getelementptr inbounds ([16 x i8], [16 x i8]* @.str.12, i64 0, i64 0))
br label %163
29: ; preds = %1
%30 = call i32 @printf(i8* getelementptr inbounds ([16 x i8], [16 x i8]* @.str.13, i64 0, i64 0))
br label %163
31: ; preds = %1
%32 = call i32 @printf(i8* getelementptr inbounds ([13 x i8], [13 x i8]* @.str.14, i64 0, i64 0))
br label %163
33: ; preds = %1
%34 = call i32 @printf(i8* getelementptr inbounds ([9 x i8], [9 x i8]* @.str.15, i64 0, i64 0))
br label %163
35: ; preds = %1
%36 = call i32 @printf(i8* getelementptr inbounds ([16 x i8], [16 x i8]* @.str.16, i64 0, i64 0))
br label %163
37: ; preds = %1
%38 = call i32 @printf(i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str.17, i64 0, i64 0))
br label %163
39: ; preds = %1
%40 = call i32 @printf(i8* getelementptr inbounds ([17 x i8], [17 x i8]* @.str.18, i64 0, i64 0))
br label %163
41: ; preds = %1
%42 = call i32 @printf(i8* getelementptr inbounds ([14 x i8], [14 x i8]* @.str.19, i64 0, i64 0))
br label %163
43: ; preds = %1
%44 = call i32 @printf(i8* getelementptr inbounds ([11 x i8], [11 x i8]* @.str.20, i64 0, i64 0))
br label %163
45: ; preds = %1
%46 = call i32 @printf(i8* getelementptr inbounds ([14 x i8], [14 x i8]* @.str.21, i64 0, i64 0))
br label %163
47: ; preds = %1
%48 = call i32 @printf(i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.22, i64 0, i64 0))
br label %163
49: ; preds = %1
%50 = call i32 @printf(i8* getelementptr inbounds ([15 x i8], [15 x i8]* @.str.23, i64 0, i64 0))
br label %163
51: ; preds = %1
%52 = call i32 @printf(i8* getelementptr inbounds ([12 x i8], [12 x i8]* @.str.24, i64 0, i64 0))
br label %163
53: ; preds = %1
%54 = call i32 @printf(i8* getelementptr inbounds ([17 x i8], [17 x i8]* @.str.25, i64 0, i64 0))
br label %163
55: ; preds = %1
%56 = call i32 @printf(i8* getelementptr inbounds ([17 x i8], [17 x i8]* @.str.26, i64 0, i64 0))
br label %163
57: ; preds = %1
%58 = call i32 @printf(i8* getelementptr inbounds ([20 x i8], [20 x i8]* @.str.27, i64 0, i64 0))
br label %163
59: ; preds = %1
%60 = call i32 @printf(i8* getelementptr inbounds ([16 x i8], [16 x i8]* @.str.28, i64 0, i64 0))
br label %163
61: ; preds = %1
%62 = call i32 @printf(i8* getelementptr inbounds ([17 x i8], [17 x i8]* @.str.29, i64 0, i64 0))
br label %163
63: ; preds = %1
%64 = call i32 @printf(i8* getelementptr inbounds ([13 x i8], [13 x i8]* @.str.30, i64 0, i64 0))
br label %163
65: ; preds = %1
%66 = call i32 @printf(i8* getelementptr inbounds ([16 x i8], [16 x i8]* @.str.31, i64 0, i64 0))
br label %163
67: ; preds = %1
%68 = call i32 @printf(i8* getelementptr inbounds ([14 x i8], [14 x i8]* @.str.32, i64 0, i64 0))
br label %163
69: ; preds = %1
%70 = call i32 @printf(i8* getelementptr inbounds ([17 x i8], [17 x i8]* @.str.33, i64 0, i64 0))
br label %163
71: ; preds = %1
%72 = call i32 @printf(i8* getelementptr inbounds ([19 x i8], [19 x i8]* @.str.34, i64 0, i64 0))
br label %163
73: ; preds = %1
%74 = call i32 @printf(i8* getelementptr inbounds ([18 x i8], [18 x i8]* @.str.35, i64 0, i64 0))
br label %163
75: ; preds = %1
%76 = call i32 @printf(i8* getelementptr inbounds ([38 x i8], [38 x i8]* @.str.36, i64 0, i64 0))
br label %163
77: ; preds = %1
%78 = call i32 @printf(i8* getelementptr inbounds ([13 x i8], [13 x i8]* @.str.37, i64 0, i64 0))
br label %163
79: ; preds = %1
%80 = call i32 @printf(i8* getelementptr inbounds ([25 x i8], [25 x i8]* @.str.38, i64 0, i64 0))
br label %163
81: ; preds = %1
%82 = call i32 @printf(i8* getelementptr inbounds ([27 x i8], [27 x i8]* @.str.39, i64 0, i64 0))
br label %163
83: ; preds = %1
%84 = call i32 @printf(i8* getelementptr inbounds ([31 x i8], [31 x i8]* @.str.40, i64 0, i64 0))
br label %163
85: ; preds = %1
%86 = call i32 @printf(i8* getelementptr inbounds ([23 x i8], [23 x i8]* @.str.41, i64 0, i64 0))
br label %163
87: ; preds = %1
%88 = call i32 @printf(i8* getelementptr inbounds ([35 x i8], [35 x i8]* @.str.42, i64 0, i64 0))
br label %163
89: ; preds = %1
%90 = call i32 @printf(i8* getelementptr inbounds ([38 x i8], [38 x i8]* @.str.43, i64 0, i64 0))
br label %163
91: ; preds = %1
%92 = call i32 @printf(i8* getelementptr inbounds ([25 x i8], [25 x i8]* @.str.44, i64 0, i64 0))
br label %163
93: ; preds = %1
%94 = call i32 @printf(i8* getelementptr inbounds ([20 x i8], [20 x i8]* @.str.45, i64 0, i64 0))
br label %163
95: ; preds = %1
%96 = call i32 @printf(i8* getelementptr inbounds ([30 x i8], [30 x i8]* @.str.46, i64 0, i64 0))
br label %163
97: ; preds = %1
%98 = call i32 @printf(i8* getelementptr inbounds ([33 x i8], [33 x i8]* @.str.47, i64 0, i64 0))
br label %163
99: ; preds = %1
%100 = call i32 @printf(i8* getelementptr inbounds ([33 x i8], [33 x i8]* @.str.48, i64 0, i64 0))
br label %163
101: ; preds = %1
%102 = call i32 @printf(i8* getelementptr inbounds ([35 x i8], [35 x i8]* @.str.49, i64 0, i64 0))
br label %163
103: ; preds = %1
%104 = call i32 @printf(i8* getelementptr inbounds ([35 x i8], [35 x i8]* @.str.50, i64 0, i64 0))
br label %163
105: ; preds = %1
%106 = call i32 @printf(i8* getelementptr inbounds ([35 x i8], [35 x i8]* @.str.51, i64 0, i64 0))
br label %163
107: ; preds = %1
%108 = call i32 @printf(i8* getelementptr inbounds ([35 x i8], [35 x i8]* @.str.52, i64 0, i64 0))
br label %163
109: ; preds = %1
%110 = call i32 @printf(i8* getelementptr inbounds ([22 x i8], [22 x i8]* @.str.53, i64 0, i64 0))
br label %163
111: ; preds = %1
%112 = call i32 @printf(i8* getelementptr inbounds ([34 x i8], [34 x i8]* @.str.54, i64 0, i64 0))
br label %163
113: ; preds = %1
%114 = call i32 @printf(i8* getelementptr inbounds ([13 x i8], [13 x i8]* @.str.55, i64 0, i64 0))
br label %163
115: ; preds = %1
%116 = call i32 @printf(i8* getelementptr inbounds ([47 x i8], [47 x i8]* @.str.56, i64 0, i64 0))
br label %163
117: ; preds = %1
%118 = call i32 @printf(i8* getelementptr inbounds ([49 x i8], [49 x i8]* @.str.57, i64 0, i64 0))
br label %163
119: ; preds = %1
%120 = call i32 @printf(i8* getelementptr inbounds ([33 x i8], [33 x i8]* @.str.58, i64 0, i64 0))
br label %163
121: ; preds = %1
%122 = call i32 @printf(i8* getelementptr inbounds ([32 x i8], [32 x i8]* @.str.59, i64 0, i64 0))
br label %163
123: ; preds = %1
%124 = call i32 @printf(i8* getelementptr inbounds ([45 x i8], [45 x i8]* @.str.60, i64 0, i64 0))
br label %163
125: ; preds = %1
%126 = call i32 @printf(i8* getelementptr inbounds ([53 x i8], [53 x i8]* @.str.61, i64 0, i64 0))
br label %163
127: ; preds = %1
%128 = call i32 @printf(i8* getelementptr inbounds ([14 x i8], [14 x i8]* @.str.62, i64 0, i64 0))
br label %163
129: ; preds = %1
%130 = call i32 @printf(i8* getelementptr inbounds ([33 x i8], [33 x i8]* @.str.63, i64 0, i64 0))
br label %163
131: ; preds = %1
%132 = call i32 @printf(i8* getelementptr inbounds ([14 x i8], [14 x i8]* @.str.64, i64 0, i64 0))
br label %163
133: ; preds = %1
%134 = call i32 @printf(i8* getelementptr inbounds ([17 x i8], [17 x i8]* @.str.65, i64 0, i64 0))
br label %163
135: ; preds = %1
%136 = call i32 @printf(i8* getelementptr inbounds ([17 x i8], [17 x i8]* @.str.66, i64 0, i64 0))
br label %163
137: ; preds = %1
%138 = call i32 @printf(i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str.67, i64 0, i64 0))
br label %163
139: ; preds = %1
%140 = call i32 @printf(i8* getelementptr inbounds ([17 x i8], [17 x i8]* @.str.68, i64 0, i64 0))
br label %163
141: ; preds = %1
%142 = call i32 @printf(i8* getelementptr inbounds ([20 x i8], [20 x i8]* @.str.69, i64 0, i64 0))
br label %163
143: ; preds = %1
%144 = call i32 @printf(i8* getelementptr inbounds ([20 x i8], [20 x i8]* @.str.70, i64 0, i64 0))
br label %163
145: ; preds = %1
%146 = call i32 @printf(i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str.71, i64 0, i64 0))
br label %163
147: ; preds = %1
%148 = call i32 @printf(i8* getelementptr inbounds ([36 x i8], [36 x i8]* @.str.72, i64 0, i64 0))
br label %163
149: ; preds = %1
%150 = call i32 @printf(i8* getelementptr inbounds ([22 x i8], [22 x i8]* @.str.73, i64 0, i64 0))
br label %163
151: ; preds = %1
%152 = call i32 @printf(i8* getelementptr inbounds ([31 x i8], [31 x i8]* @.str.74, i64 0, i64 0))
br label %163
153: ; preds = %1
%154 = call i32 @printf(i8* getelementptr inbounds ([13 x i8], [13 x i8]* @.str.75, i64 0, i64 0))
br label %163
155: ; preds = %1
%156 = call i32 @printf(i8* getelementptr inbounds ([16 x i8], [16 x i8]* @.str.76, i64 0, i64 0))
br label %163
157: ; preds = %1
%158 = call i32 @printf(i8* getelementptr inbounds ([19 x i8], [19 x i8]* @.str.77, i64 0, i64 0))
br label %163
159: ; preds = %1
%160 = call i32 @printf(i8* getelementptr inbounds ([16 x i8], [16 x i8]* @.str.78, i64 0, i64 0))
br label %163
161: ; preds = %1
%162 = call i32 @printf(i8* getelementptr inbounds ([11 x i8], [11 x i8]* @.str.79, i64 0, i64 0))
br label %163
163: ; preds = %161, %159, %157, %155, %153, %151, %149, %147, %145, %143, %141, %139, %137, %135, %133, %131, %129, %127, %125, %123, %121, %119, %117, %115, %113, %111, %109, %107, %105, %103, %101, %99, %97, %95, %93, %91, %89, %87, %85, %83, %81, %79, %77, %75, %73, %71, %69, %67, %65, %63, %61, %59, %57, %55, %53, %51, %49, %47, %45, %43, %41, %39, %37, %35, %33, %31, %29, %27, %25, %23, %21, %19, %17, %15, %13, %11, %9, %7, %5
ret void
}

LLVM IR (-O2):
@.str = [23 x i8] c"Machine Archetecture: \00"
@str = [15 x i8] c"Tilera TILE-Gx\00"
@str.80 = [18 x i8] c"Xilinx MicroBlaze\00"
@str.81 = [15 x i8] c"Tilera TILEPro\00"
@str.82 = [12 x i8] c"ARM AARCH64\00"
@str.83 = [30 x i8] c"Tensilica Xtensa Architecture\00"
@str.84 = [21 x i8] c"ARC Cores Tangent-A5\00"
@str.85 = [35 x i8] c"OpenRISC 32-bit embedded processor\00"
@str.86 = [9 x i8] c"picoJava\00"
@str.87 = [19 x i8] c"Matsushita MN10200\00"
@str.88 = [19 x i8] c"Matsushita MN10300\00"
@str.89 = [16 x i8] c"Mitsubishi M32R\00"
@str.90 = [9 x i8] c"NEC v850\00"
@str.91 = [16 x i8] c"Mitsubishi D30V\00"
@str.92 = [16 x i8] c"Mitsubishi D10V\00"
@str.93 = [13 x i8] c"Fujitsu FR30\00"
@str.94 = [32 x i8] c"Atmel AVR 8-bit microcontroller\00"
@str.95 = [13 x i8] c"SiTera Prism\00"
@str.96 = [52 x i8] c"Harvard University machine-independent object files\00"
@str.97 = [44 x i8] c"Donald Knuth's educational 64-bit processor\00"
@str.98 = [31 x i8] c"LSI Logic 16-bit DSP Processor\00"
@str.99 = [32 x i8] c"Element 14 64-bit DSP Processor\00"
@str.100 = [48 x i8] c"Infineon Technologies 32-bit embedded processor\00"
@str.101 = [46 x i8] c"Axis Communications 32-bit embedded processor\00"
@str.102 = [12 x i8] c"Digital VAX\00"
@str.103 = [33 x i8] c"STMicroelectronics ST19 8 bit mc\00"
@str.104 = [21 x i8] c"Silicon Graphics SVx\00"
@str.105 = [34 x i8] c"Motorola MC68HC05 microcontroller\00"
@str.106 = [34 x i8] c"Motorola MC68HC08 microcontroller\00"
@str.107 = [34 x i8] c"Motorola MC68HC11 microcontroller\00"
@str.108 = [34 x i8] c"Motorola MC68HC16 microcontroller\00"
@str.109 = [32 x i8] c"STmicroelectronics ST7 8 bit mc\00"
@str.110 = [32 x i8] c"STMicroelectronics ST9+ 8/16 mc\00"
@str.111 = [29 x i8] c"Siemens FX66 microcontroller\00"
@str.112 = [19 x i8] c"Sony DSP Processor\00"
@str.113 = [24 x i8] c"AMD x86-64 architecture\00"
@str.114 = [37 x i8] c"Advanced Logic Corp. Tinyj emb.fam*/\00"
@str.115 = [34 x i8] c"STMicroelectronic ST100 processor\00"
@str.116 = [22 x i8] c"Toyota ME16 processor\00"
@str.117 = [30 x i8] c"Motorola Start*Core processor\00"
@str.118 = [26 x i8] c"Denso NDR1 microprocessor\00"
@str.119 = [24 x i8] c"Sony nCPU embeeded RISC\00"
@str.120 = [12 x i8] c"Siemens PCP\00"
@str.121 = [37 x i8] c"Fujitsu MMA Multimedia Accelerator*/\00"
@str.122 = [17 x i8] c"Motorola M68HC12\00"
@str.123 = [18 x i8] c"Motorola Coldfire\00"
@str.124 = [16 x i8] c"Stanford MIPS-X\00"
@str.125 = [13 x i8] c"Intel Merced\00"
@str.126 = [15 x i8] c"Hitachi H8/500\00"
@str.127 = [12 x i8] c"Hitachi H8S\00"
@str.128 = [16 x i8] c"Hitachi H8/300H\00"
@str.129 = [15 x i8] c"Hitachi H8/300\00"
@str.130 = [19 x i8] c"Argonaut RISC Core\00"
@str.131 = [16 x i8] c"Siemens Tricore\00"
@str.132 = [16 x i8] c"SPARC v9 64-bit\00"
@str.133 = [11 x i8] c"Hitachi SH\00"
@str.134 = [14 x i8] c"Digital Alpha\00"
@str.135 = [4 x i8] c"ARM\00"
@str.136 = [13 x i8] c"Motorola RCE\00"
@str.137 = [10 x i8] c"TRW RH-32\00"
@str.138 = [13 x i8] c"Fujitsu FR20\00"
@str.139 = [16 x i8] c"NEC V800 series\00"
@str.140 = [9 x i8] c"IBM S390\00"
@str.141 = [15 x i8] c"PowerPC 64-bit\00"
@str.142 = [8 x i8] c"PowerPC\00"
@str.143 = [12 x i8] c"Intel 80960\00"
@str.144 = [15 x i8] c"Sun's \22v8plus\22\00"
@str.145 = [15 x i8] c"Fujitsu VPP500\00"
@str.146 = [5 x i8] c"HPPA\00"
@str.147 = [25 x i8] c"MIPS R3000 little-endian\00"
@str.148 = [15 x i8] c"IBM System/370\00"
@str.149 = [22 x i8] c"MIPS R3000 big-endian\00"
@str.150 = [12 x i8] c"Intel 80860\00"
@str.151 = [21 x i8] c"Motorola m88k family\00"
@str.152 = [21 x i8] c"Motorola m68k family\00"
@str.153 = [12 x i8] c"Intel 80386\00"
@str.154 = [10 x i8] c"Sun SPARC\00"
@str.155 = [14 x i8] c"AT&T WE 32100\00"
@str.156 = [11 x i8] c"No machine\00"
@str.157 = [10 x i8] c"not found\00"
@reltable.parse_machine = [78 x i32] [i32 trunc (i64 sub (i64 ptrtoint ([31 x i8]* @str.98 to i64), i64 ptrtoint ([78 x i32]* @reltable.parse_machine to i64)) to i32), i32 trunc (i64 sub (i64 ptrtoint ([30 x i8]* @str.83 to i64), i64 ptrtoint ([78 x i32]* @reltable.parse_machine to i64)) to i32), i32 trunc (i64 sub (i64 ptrtoint ([24 x i8]* @str.113 to i64), i64 ptrtoint ([78 x i32]* @reltable.parse_machine to i64)) to i32), i32 trunc (i64 sub (i64 ptrtoint ([15 x i8]* @str.145 to i64), i64 ptrtoint ([78 x i32]* @reltable.parse_machine to i64)) to i32), i32 trunc (i64 sub (i64 ptrtoint ([12 x i8]* @str.102 to i64), i64 ptrtoint ([78 x i32]* @reltable.parse_machine to i64)) to i32), i32 trunc (i64 sub (i64 ptrtoint ([9 x i8]* @str.90 to i64), i64 ptrtoint ([78 x i32]* @reltable.parse_machine to i64)) to i32), i32 trunc (i64 sub (i64 ptrtoint ([16 x i8]* @str.139 to i64), i64 ptrtoint ([78 x i32]* @reltable.parse_machine to i64)) to i32), i32 trunc (i64 sub (i64 ptrtoint ([16 x i8]* @str.131 to i64), i64 ptrtoint ([78 x i32]* @reltable.parse_machine to i64)) to i32), i32 trunc (i64 sub (i64 ptrtoint ([37 x i8]* @str.114 to i64), i64 ptrtoint ([78 x i32]* @reltable.parse_machine to i64)) to i32), i32 trunc (i64 sub (i64 ptrtoint ([15 x i8]* @str.81 to i64), i64 ptrtoint ([78 x i32]* @reltable.parse_machine to i64)) to i32), i32 trunc (i64 sub (i64 ptrtoint ([15 x i8]* @str to i64), i64 ptrtoint ([78 x i32]* @reltable.parse_machine to i64)) to i32), i32 trunc (i64 sub (i64 ptrtoint ([21 x i8]* @str.104 to i64), i64 ptrtoint ([78 x i32]* @reltable.parse_machine to i64)) to i32), i32 trunc (i64 sub (i64 ptrtoint ([30 x i8]* @str.117 to i64), i64 ptrtoint ([78 x i32]* @reltable.parse_machine to i64)) to i32), i32 trunc (i64 sub (i64 ptrtoint ([32 x i8]* @str.110 to i64), i64 ptrtoint ([78 x i32]* @reltable.parse_machine to i64)) to i32), i32 trunc (i64 sub (i64 ptrtoint ([32 x i8]* @str.109 to i64), i64 ptrtoint ([78 x i32]* @reltable.parse_machine to i64)) to i32), i32 trunc (i64 sub (i64 ptrtoint ([33 x i8]* @str.103 to i64), i64 ptrtoint ([78 x i32]* @reltable.parse_machine to i64)) to i32), i32 trunc (i64 sub (i64 ptrtoint ([34 x i8]* @str.115 to i64), i64 ptrtoint ([78 x i32]* @reltable.parse_machine to i64)) to i32), i32 trunc (i64 sub (i64 ptrtoint ([16 x i8]* @str.132 to i64), i64 ptrtoint ([78 x i32]* @reltable.parse_machine to i64)) to i32), i32 trunc (i64 sub (i64 ptrtoint ([15 x i8]* @str.144 to i64), i64 ptrtoint ([78 x i32]* @reltable.parse_machine to i64)) to i32), i32 trunc (i64 sub (i64 ptrtoint ([10 x i8]* @str.154 to i64), i64 ptrtoint ([78 x i32]* @reltable.parse_machine to i64)) to i32), i32 trunc (i64 sub (i64 ptrtoint ([11 x i8]* @str.133 to i64), i64 ptrtoint ([78 x i32]* @reltable.parse_machine to i64)) to i32), i32 trunc (i64 sub (i64 ptrtoint ([9 x i8]* @str.140 to i64), i64 ptrtoint ([78 x i32]* @reltable.parse_machine to i64)) to i32), i32 trunc (i64 sub (i64 ptrtoint ([15 x i8]* @str.148 to i64), i64 ptrtoint ([78 x i32]* @reltable.parse_machine to i64)) to i32), i32 trunc (i64 sub (i64 ptrtoint ([10 x i8]* @str.137 to i64), i64 ptrtoint ([78 x i32]* @reltable.parse_machine to i64)) to i32), i32 trunc (i64 sub (i64 ptrtoint ([13 x i8]* @str.136 to i64), i64 ptrtoint ([78 x i32]* @reltable.parse_machine to i64)) to i32), i32 trunc (i64 sub (i64 ptrtoint ([13 x i8]* @str.95 to i64), i64 ptrtoint ([78 x i32]* @reltable.parse_machine to i64)) to i32), i32 trunc (i64 sub (i64 ptrtoint ([15 x i8]* @str.141 to i64), i64 ptrtoint ([78 x i32]* @reltable.parse_machine to i64)) to i32), i32 trunc (i64 sub (i64 ptrtoint ([8 x i8]* @str.142 to i64), i64 ptrtoint ([78 x i32]* @reltable.parse_machine to i64)) to i32), i32 trunc (i64 sub (i64 ptrtoint ([9 x i8]* @str.86 to i64), i64 ptrtoint ([78 x i32]* @reltable.parse_machine to i64)) to i32), i32 trunc (i64 sub (i64 ptrtoint ([19 x i8]* @str.112 to i64), i64 ptrtoint ([78 x i32]* @reltable.parse_machine to i64)) to i32), i32 trunc (i64 sub (i64 ptrtoint ([12 x i8]* @str.120 to i64), i64 ptrtoint ([78 x i32]* @reltable.parse_machine to i64)) to i32), i32 trunc (i64 sub (i64 ptrtoint ([5 x i8]* @str.146 to i64), i64 ptrtoint ([78 x i32]* @reltable.parse_machine to i64)) to i32), i32 trunc (i64 sub (i64 ptrtoint ([35 x i8]* @str.85 to i64), i64 ptrtoint ([78 x i32]* @reltable.parse_machine to i64)) to i32), i32 trunc (i64 sub (i64 ptrtoint ([11 x i8]* @str.156 to i64), i64 ptrtoint ([78 x i32]* @reltable.parse_machine to i64)) to i32), i32 trunc (i64 sub (i64 ptrtoint ([26 x i8]* @str.118 to i64), i64 ptrtoint ([78 x i32]* @reltable.parse_machine to i64)) to i32), i32 trunc (i64 sub (i64 ptrtoint ([24 x i8]* @str.119 to i64), i64 ptrtoint ([78 x i32]* @reltable.parse_machine to i64)) to i32), i32 trunc (i64 sub (i64 ptrtoint ([19 x i8]* @str.88 to i64), i64 ptrtoint ([78 x i32]* @reltable.parse_machine to i64)) to i32), i32 trunc (i64 sub (i64 ptrtoint ([19 x i8]* @str.87 to i64), i64 ptrtoint ([78 x i32]* @reltable.parse_machine to i64)) to i32), i32 trunc (i64 sub (i64 ptrtoint ([44 x i8]* @str.97 to i64), i64 ptrtoint ([78 x i32]* @reltable.parse_machine to i64)) to i32), i32 trunc (i64 sub (i64 ptrtoint ([37 x i8]* @str.121 to i64), i64 ptrtoint ([78 x i32]* @reltable.parse_machine to i64)) to i32), i32 trunc (i64 sub (i64 ptrtoint ([16 x i8]* @str.124 to i64), i64 ptrtoint ([78 x i32]* @reltable.parse_machine to i64)) to i32), i32 trunc (i64 sub (i64 ptrtoint ([25 x i8]* @str.147 to i64), i64 ptrtoint ([78 x i32]* @reltable.parse_machine to i64)) to i32), i32 trunc (i64 sub (i64 ptrtoint ([22 x i8]* @str.149 to i64), i64 ptrtoint ([78 x i32]* @reltable.parse_machine to i64)) to i32), i32 trunc (i64 sub (i64 ptrtoint ([18 x i8]* @str.80 to i64), i64 ptrtoint ([78 x i32]* @reltable.parse_machine to i64)) to i32), i32 trunc (i64 sub (i64 ptrtoint ([22 x i8]* @str.116 to i64), i64 ptrtoint ([78 x i32]* @reltable.parse_machine to i64)) to i32), i32 trunc (i64 sub (i64 ptrtoint ([16 x i8]* @str.89 to i64), i64 ptrtoint ([78 x i32]* @reltable.parse_machine to i64)) to i32), i32 trunc (i64 sub (i64 ptrtoint ([14 x i8]* @str.155 to i64), i64 ptrtoint ([78 x i32]* @reltable.parse_machine to i64)) to i32), i32 trunc (i64 sub (i64 ptrtoint ([48 x i8]* @str.100 to i64), i64 ptrtoint ([78 x i32]* @reltable.parse_machine to i64)) to i32), i32 trunc (i64 sub (i64 ptrtoint ([13 x i8]* @str.125 to i64), i64 ptrtoint ([78 x i32]* @reltable.parse_machine to i64)) to i32), i32 trunc (i64 sub (i64 ptrtoint ([52 x i8]* @str.96 to i64), i64 ptrtoint ([78 x i32]* @reltable.parse_machine to i64)) to i32), i32 trunc (i64 sub (i64 ptrtoint ([15 x i8]* @str.126 to i64), i64 ptrtoint ([78 x i32]* @reltable.parse_machine to i64)) to i32), i32 trunc (i64 sub (i64 ptrtoint ([16 x i8]* @str.128 to i64), i64 ptrtoint ([78 x i32]* @reltable.parse_machine to i64)) to i32), i32 trunc (i64 sub (i64 ptrtoint ([15 x i8]* @str.129 to i64), i64 ptrtoint ([78 x i32]* @reltable.parse_machine to i64)) to i32), i32 trunc (i64 sub (i64 ptrtoint ([12 x i8]* @str.127 to i64), i64 ptrtoint ([78 x i32]* @reltable.parse_machine to i64)) to i32), i32 trunc (i64 sub (i64 ptrtoint ([29 x i8]* @str.111 to i64), i64 ptrtoint ([78 x i32]* @reltable.parse_machine to i64)) to i32), i32 trunc (i64 sub (i64 ptrtoint ([13 x i8]* @str.93 to i64), i64 ptrtoint ([78 x i32]* @reltable.parse_machine to i64)) to i32), i32 trunc (i64 sub (i64 ptrtoint ([13 x i8]* @str.138 to i64), i64 ptrtoint ([78 x i32]* @reltable.parse_machine to i64)) to i32), i32 trunc (i64 sub (i64 ptrtoint ([32 x i8]* @str.99 to i64), i64 ptrtoint ([78 x i32]* @reltable.parse_machine to i64)) to i32), i32 trunc (i64 sub (i64 ptrtoint ([14 x i8]* @str.134 to i64), i64 ptrtoint ([78 x i32]* @reltable.parse_machine to i64)) to i32), i32 trunc (i64 sub (i64 ptrtoint ([16 x i8]* @str.91 to i64), i64 ptrtoint ([78 x i32]* @reltable.parse_machine to i64)) to i32), i32 trunc (i64 sub (i64 ptrtoint ([16 x i8]* @str.92 to i64), i64 ptrtoint ([78 x i32]* @reltable.parse_machine to i64)) to i32), i32 trunc (i64 sub (i64 ptrtoint ([46 x i8]* @str.101 to i64), i64 ptrtoint ([78 x i32]* @reltable.parse_machine to i64)) to i32), i32 trunc (i64 sub (i64 ptrtoint ([18 x i8]* @str.123 to i64), i64 ptrtoint ([78 x i32]* @reltable.parse_machine to i64)) to i32), i32 trunc (i64 sub (i64 ptrtoint ([32 x i8]* @str.94 to i64), i64 ptrtoint ([78 x i32]* @reltable.parse_machine to i64)) to i32), i32 trunc (i64 sub (i64 ptrtoint ([4 x i8]* @str.135 to i64), i64 ptrtoint ([78 x i32]* @reltable.parse_machine to i64)) to i32), i32 trunc (i64 sub (i64 ptrtoint ([21 x i8]* @str.84 to i64), i64 ptrtoint ([78 x i32]* @reltable.parse_machine to i64)) to i32), i32 trunc (i64 sub (i64 ptrtoint ([19 x i8]* @str.130 to i64), i64 ptrtoint ([78 x i32]* @reltable.parse_machine to i64)) to i32), i32 trunc (i64 sub (i64 ptrtoint ([12 x i8]* @str.82 to i64), i64 ptrtoint ([78 x i32]* @reltable.parse_machine to i64)) to i32), i32 trunc (i64 sub (i64 ptrtoint ([12 x i8]* @str.143 to i64), i64 ptrtoint ([78 x i32]* @reltable.parse_machine to i64)) to i32), i32 trunc (i64 sub (i64 ptrtoint ([21 x i8]* @str.151 to i64), i64 ptrtoint ([78 x i32]* @reltable.parse_machine to i64)) to i32), i32 trunc (i64 sub (i64 ptrtoint ([12 x i8]* @str.150 to i64), i64 ptrtoint ([78 x i32]* @reltable.parse_machine to i64)) to i32), i32 trunc (i64 sub (i64 ptrtoint ([21 x i8]* @str.152 to i64), i64 ptrtoint ([78 x i32]* @reltable.parse_machine to i64)) to i32), i32 trunc (i64 sub (i64 ptrtoint ([34 x i8]* @str.108 to i64), i64 ptrtoint ([78 x i32]* @reltable.parse_machine to i64)) to i32), i32 trunc (i64 sub (i64 ptrtoint ([17 x i8]* @str.122 to i64), i64 ptrtoint ([78 x i32]* @reltable.parse_machine to i64)) to i32), i32 trunc (i64 sub (i64 ptrtoint ([34 x i8]* @str.107 to i64), i64 ptrtoint ([78 x i32]* @reltable.parse_machine to i64)) to i32), i32 trunc (i64 sub (i64 ptrtoint ([34 x i8]* @str.106 to i64), i64 ptrtoint ([78 x i32]* @reltable.parse_machine to i64)) to i32), i32 trunc (i64 sub (i64 ptrtoint ([34 x i8]* @str.105 to i64), i64 ptrtoint ([78 x i32]* @reltable.parse_machine to i64)) to i32), i32 trunc (i64 sub (i64 ptrtoint ([12 x i8]* @str.153 to i64), i64 ptrtoint ([78 x i32]* @reltable.parse_machine to i64)) to i32)]
define void @parse_machine(i32 %0) {
%2 = tail call i32 @printf(i8* dereferenceable(1) getelementptr inbounds ([23 x i8], [23 x i8]* @.str, i64 0, i64 0))
%3 = add i32 %0, -128
%4 = icmp ult i32 %3, 78
br i1 %4, label %5, label %9
5: ; preds = %1
%6 = sext i32 %3 to i64
%7 = shl i64 %6, 2
%8 = call i8* @llvm.load.relative.i64(i8* bitcast ([78 x i32]* @reltable.parse_machine to i8*), i64 %7)
br label %9
9: ; preds = %1, %5
%10 = phi i8* [ %8, %5 ], [ getelementptr inbounds ([10 x i8], [10 x i8]* @str.157, i64 0, i64 0), %1 ]
%11 = tail call i32 @puts(i8* dereferenceable(1) %10)
ret void
}