#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 ntohl(int);
char *afp_error(int error) {
  char *s;
  switch (ntohl(error)) {
  case -5000:
    s = "AFPERR_ACCESS  ";
    break;
  case -5001:
    s = "AFPERR_AUTHCONT";
    break;
  case -5002:
    s = "AFPERR_BADUAM  ";
    break;
  case -5003:
    s = "AFPERR_BADVERS ";
    break;
  case -5004:
    s = "AFPERR_BITMAP  ";
    break;
  case -5005:
    s = "AFPERR_CANTMOVE";
    break;
  case -5006:
    s = "AFPERR_DENYCONF";
    break;
  case -5007:
    s = "AFPERR_DIRNEMPT";
    break;
  case -5008:
    s = "AFPERR_DFULL   ";
    break;
  case -5009:
    s = "AFPERR_EOF     ";
    break;
  case -5010:
    s = "AFPERR_BUSY    ";
    break;
  case -5011:
    s = "AFPERR_FLATVOL ";
    break;
  case -5012:
    s = "AFPERR_NOITEM  ";
    break;
  case -5013:
    s = "AFPERR_LOCK    ";
    break;
  case -5014:
    s = "AFPERR_MISC    ";
    break;
  case -5015:
    s = "AFPERR_NLOCK   ";
    break;
  case -5016:
    s = "AFPERR_NOSRVR  ";
    break;
  case -5017:
    s = "AFPERR_EXIST   ";
    break;
  case -5018:
    s = "AFPERR_NOOBJ   ";
    break;
  case -5019:
    s = "AFPERR_PARAM   ";
    break;
  case -5020:
    s = "AFPERR_NORANGE ";
    break;
  case -5021:
    s = "AFPERR_RANGEOVR";
    break;
  case -5022:
    s = "AFPERR_SESSCLOS";
    break;
  case -5023:
    s = "AFPERR_NOTAUTH ";
    break;
  case -5024:
    s = "AFPERR_NOOP    ";
    break;
  case -5025:
    s = "AFPERR_BADTYPE ";
    break;
  case -5026:
    s = "AFPERR_NFILE   ";
    break;
  case -5027:
    s = "AFPERR_SHUTDOWN";
    break;
  case -5028:
    s = "AFPERR_NORENAME";
    break;
  case -5029:
    s = "AFPERR_NODIR   ";
    break;
  case -5030:
    s = "AFPERR_ITYPE   ";
    break;
  case -5031:
    s = "AFPERR_VLOCK   ";
    break;
  case -5032:
    s = "AFPERR_OLOCK   ";
    break;
  case -5033:
    s = "AFPERR_CTNSHRD ";
    break;
  case -5034:
    s = "AFPERR_NOID    ";
    break;
  case -5035:
    s = "AFPERR_EXISTID ";
    break;
  case -5036:
    s = "AFPERR_DIFFVOL ";
    break;
  case -5037:
    s = "AFPERR_CATCHNG ";
    break;
  case -5038:
    s = "AFPERR_SAMEOBJ ";
    break;
  case -5039:
    s = "AFPERR_BADID   ";
    break;
  case -5040:
    s = "AFPERR_PWDSAME ";
    break;
  case -5041:
    s = "AFPERR_PWDSHORT";
    break;
  case -5042:
    s = "AFPERR_PWDEXPR ";
    break;
  case -5043:
    s = "AFPERR_INSHRD  ";
    break;
  case -5044:
    s = "AFPERR_INTRASH ";
    break;
  case -5045:
    s = "AFPERR_PWDCHNG ";
    break;
  case -5046:
    s = "AFPERR_PWDPOLCY";
    break;
  case -5047:
    s = "AFPERR_USRLOGIN";
    break;
  case 0:
    s = "";
    break;
  case -1:
    s = "EOF";
    break;
  default:
    s = "unknow";
    break;
  }
  return s;
}


x86 assembly (clang, -O0):
<afp_error>:
push   %rbp
mov    %rsp,%rbp
sub    $0x20,%rsp
mov    %edi,-0x4(%rbp)
mov    -0x4(%rbp),%edi
call   1030 <ntohl@plt>
mov    %eax,%ecx
mov    %ecx,-0x14(%rbp)
sub    $0xffffec49,%eax
je     17c6 <afp_error+0x6b6>
jmp    1138 <afp_error+0x28>
mov    -0x14(%rbp),%eax
sub    $0xffffec4a,%eax
je     17b6 <afp_error+0x6a6>
jmp    114b <afp_error+0x3b>
mov    -0x14(%rbp),%eax
sub    $0xffffec4b,%eax
je     17a6 <afp_error+0x696>
jmp    115e <afp_error+0x4e>
mov    -0x14(%rbp),%eax
sub    $0xffffec4c,%eax
je     1796 <afp_error+0x686>
jmp    1171 <afp_error+0x61>
mov    -0x14(%rbp),%eax
sub    $0xffffec4d,%eax
je     1786 <afp_error+0x676>
jmp    1184 <afp_error+0x74>
mov    -0x14(%rbp),%eax
sub    $0xffffec4e,%eax
je     1776 <afp_error+0x666>
jmp    1197 <afp_error+0x87>
mov    -0x14(%rbp),%eax
sub    $0xffffec4f,%eax
je     1766 <afp_error+0x656>
jmp    11aa <afp_error+0x9a>
mov    -0x14(%rbp),%eax
sub    $0xffffec50,%eax
je     1756 <afp_error+0x646>
jmp    11bd <afp_error+0xad>
mov    -0x14(%rbp),%eax
sub    $0xffffec51,%eax
je     1746 <afp_error+0x636>
jmp    11d0 <afp_error+0xc0>
mov    -0x14(%rbp),%eax
sub    $0xffffec52,%eax
je     1736 <afp_error+0x626>
jmp    11e3 <afp_error+0xd3>
mov    -0x14(%rbp),%eax
sub    $0xffffec53,%eax
je     1726 <afp_error+0x616>
jmp    11f6 <afp_error+0xe6>
mov    -0x14(%rbp),%eax
sub    $0xffffec54,%eax
je     1716 <afp_error+0x606>
jmp    1209 <afp_error+0xf9>
mov    -0x14(%rbp),%eax
sub    $0xffffec55,%eax
je     1706 <afp_error+0x5f6>
jmp    121c <afp_error+0x10c>
mov    -0x14(%rbp),%eax
sub    $0xffffec56,%eax
je     16f6 <afp_error+0x5e6>
jmp    122f <afp_error+0x11f>
mov    -0x14(%rbp),%eax
sub    $0xffffec57,%eax
je     16e6 <afp_error+0x5d6>
jmp    1242 <afp_error+0x132>
mov    -0x14(%rbp),%eax
sub    $0xffffec58,%eax
je     16d6 <afp_error+0x5c6>
jmp    1255 <afp_error+0x145>
mov    -0x14(%rbp),%eax
sub    $0xffffec59,%eax
je     16c6 <afp_error+0x5b6>
jmp    1268 <afp_error+0x158>
mov    -0x14(%rbp),%eax
sub    $0xffffec5a,%eax
je     16b6 <afp_error+0x5a6>
jmp    127b <afp_error+0x16b>
mov    -0x14(%rbp),%eax
sub    $0xffffec5b,%eax
je     16a6 <afp_error+0x596>
jmp    128e <afp_error+0x17e>
mov    -0x14(%rbp),%eax
sub    $0xffffec5c,%eax
je     1696 <afp_error+0x586>
jmp    12a1 <afp_error+0x191>
mov    -0x14(%rbp),%eax
sub    $0xffffec5d,%eax
je     1686 <afp_error+0x576>
jmp    12b4 <afp_error+0x1a4>
mov    -0x14(%rbp),%eax
sub    $0xffffec5e,%eax
je     1676 <afp_error+0x566>
jmp    12c7 <afp_error+0x1b7>
mov    -0x14(%rbp),%eax
sub    $0xffffec5f,%eax
je     1666 <afp_error+0x556>
jmp    12da <afp_error+0x1ca>
mov    -0x14(%rbp),%eax
sub    $0xffffec60,%eax
je     1656 <afp_error+0x546>
jmp    12ed <afp_error+0x1dd>
mov    -0x14(%rbp),%eax
sub    $0xffffec61,%eax
je     1646 <afp_error+0x536>
jmp    1300 <afp_error+0x1f0>
mov    -0x14(%rbp),%eax
sub    $0xffffec62,%eax
je     1636 <afp_error+0x526>
jmp    1313 <afp_error+0x203>
mov    -0x14(%rbp),%eax
sub    $0xffffec63,%eax
je     1626 <afp_error+0x516>
jmp    1326 <afp_error+0x216>
mov    -0x14(%rbp),%eax
sub    $0xffffec64,%eax
je     1616 <afp_error+0x506>
jmp    1339 <afp_error+0x229>
mov    -0x14(%rbp),%eax
sub    $0xffffec65,%eax
je     1606 <afp_error+0x4f6>
jmp    134c <afp_error+0x23c>
mov    -0x14(%rbp),%eax
sub    $0xffffec66,%eax
je     15f6 <afp_error+0x4e6>
jmp    135f <afp_error+0x24f>
mov    -0x14(%rbp),%eax
sub    $0xffffec67,%eax
je     15e6 <afp_error+0x4d6>
jmp    1372 <afp_error+0x262>
mov    -0x14(%rbp),%eax
sub    $0xffffec68,%eax
je     15d6 <afp_error+0x4c6>
jmp    1385 <afp_error+0x275>
mov    -0x14(%rbp),%eax
sub    $0xffffec69,%eax
je     15c6 <afp_error+0x4b6>
jmp    1398 <afp_error+0x288>
mov    -0x14(%rbp),%eax
sub    $0xffffec6a,%eax
je     15b6 <afp_error+0x4a6>
jmp    13ab <afp_error+0x29b>
mov    -0x14(%rbp),%eax
sub    $0xffffec6b,%eax
je     15a6 <afp_error+0x496>
jmp    13be <afp_error+0x2ae>
mov    -0x14(%rbp),%eax
sub    $0xffffec6c,%eax
je     1596 <afp_error+0x486>
jmp    13d1 <afp_error+0x2c1>
mov    -0x14(%rbp),%eax
sub    $0xffffec6d,%eax
je     1586 <afp_error+0x476>
jmp    13e4 <afp_error+0x2d4>
mov    -0x14(%rbp),%eax
sub    $0xffffec6e,%eax
je     1576 <afp_error+0x466>
jmp    13f7 <afp_error+0x2e7>
mov    -0x14(%rbp),%eax
sub    $0xffffec6f,%eax
je     1566 <afp_error+0x456>
jmp    140a <afp_error+0x2fa>
mov    -0x14(%rbp),%eax
sub    $0xffffec70,%eax
je     1556 <afp_error+0x446>
jmp    141d <afp_error+0x30d>
mov    -0x14(%rbp),%eax
sub    $0xffffec71,%eax
je     1546 <afp_error+0x436>
jmp    1430 <afp_error+0x320>
mov    -0x14(%rbp),%eax
sub    $0xffffec72,%eax
je     1536 <afp_error+0x426>
jmp    1443 <afp_error+0x333>
mov    -0x14(%rbp),%eax
sub    $0xffffec73,%eax
je     1526 <afp_error+0x416>
jmp    1456 <afp_error+0x346>
mov    -0x14(%rbp),%eax
sub    $0xffffec74,%eax
je     1516 <afp_error+0x406>
jmp    1469 <afp_error+0x359>
mov    -0x14(%rbp),%eax
sub    $0xffffec75,%eax
je     1506 <afp_error+0x3f6>
jmp    147c <afp_error+0x36c>
mov    -0x14(%rbp),%eax
sub    $0xffffec76,%eax
je     14f6 <afp_error+0x3e6>
jmp    148f <afp_error+0x37f>
mov    -0x14(%rbp),%eax
sub    $0xffffec77,%eax
je     14e6 <afp_error+0x3d6>
jmp    14a2 <afp_error+0x392>
mov    -0x14(%rbp),%eax
sub    $0xffffec78,%eax
je     14d6 <afp_error+0x3c6>
jmp    14b5 <afp_error+0x3a5>
mov    -0x14(%rbp),%eax
sub    $0xffffffff,%eax
je     17e6 <afp_error+0x6d6>
jmp    14c6 <afp_error+0x3b6>
mov    -0x14(%rbp),%eax
test   %eax,%eax
je     17d6 <afp_error+0x6c6>
jmp    17f6 <afp_error+0x6e6>
lea    0xb23(%rip),%rax
mov    %rax,-0x10(%rbp)
jmp    1801 <afp_error+0x6f1>
lea    0xb23(%rip),%rax
mov    %rax,-0x10(%rbp)
jmp    1801 <afp_error+0x6f1>
lea    0xb23(%rip),%rax
mov    %rax,-0x10(%rbp)
jmp    1801 <afp_error+0x6f1>
lea    0xb23(%rip),%rax
mov    %rax,-0x10(%rbp)
jmp    1801 <afp_error+0x6f1>
lea    0xb23(%rip),%rax
mov    %rax,-0x10(%rbp)
jmp    1801 <afp_error+0x6f1>
lea    0xb23(%rip),%rax
mov    %rax,-0x10(%rbp)
jmp    1801 <afp_error+0x6f1>
lea    0xb23(%rip),%rax
mov    %rax,-0x10(%rbp)
jmp    1801 <afp_error+0x6f1>
lea    0xb23(%rip),%rax
mov    %rax,-0x10(%rbp)
jmp    1801 <afp_error+0x6f1>
lea    0xb23(%rip),%rax
mov    %rax,-0x10(%rbp)
jmp    1801 <afp_error+0x6f1>
lea    0xb23(%rip),%rax
mov    %rax,-0x10(%rbp)
jmp    1801 <afp_error+0x6f1>
lea    0xb23(%rip),%rax
mov    %rax,-0x10(%rbp)
jmp    1801 <afp_error+0x6f1>
lea    0xb23(%rip),%rax
mov    %rax,-0x10(%rbp)
jmp    1801 <afp_error+0x6f1>
lea    0xb23(%rip),%rax
mov    %rax,-0x10(%rbp)
jmp    1801 <afp_error+0x6f1>
lea    0xb23(%rip),%rax
mov    %rax,-0x10(%rbp)
jmp    1801 <afp_error+0x6f1>
lea    0xb23(%rip),%rax
mov    %rax,-0x10(%rbp)
jmp    1801 <afp_error+0x6f1>
lea    0xb23(%rip),%rax
mov    %rax,-0x10(%rbp)
jmp    1801 <afp_error+0x6f1>
lea    0xb23(%rip),%rax
mov    %rax,-0x10(%rbp)
jmp    1801 <afp_error+0x6f1>
lea    0xb23(%rip),%rax
mov    %rax,-0x10(%rbp)
jmp    1801 <afp_error+0x6f1>
lea    0xb23(%rip),%rax
mov    %rax,-0x10(%rbp)
jmp    1801 <afp_error+0x6f1>
lea    0xb23(%rip),%rax
mov    %rax,-0x10(%rbp)
jmp    1801 <afp_error+0x6f1>
lea    0xb23(%rip),%rax
mov    %rax,-0x10(%rbp)
jmp    1801 <afp_error+0x6f1>
lea    0xb23(%rip),%rax
mov    %rax,-0x10(%rbp)
jmp    1801 <afp_error+0x6f1>
lea    0xb23(%rip),%rax
mov    %rax,-0x10(%rbp)
jmp    1801 <afp_error+0x6f1>
lea    0xb23(%rip),%rax
mov    %rax,-0x10(%rbp)
jmp    1801 <afp_error+0x6f1>
lea    0xb23(%rip),%rax
mov    %rax,-0x10(%rbp)
jmp    1801 <afp_error+0x6f1>
lea    0xb23(%rip),%rax
mov    %rax,-0x10(%rbp)
jmp    1801 <afp_error+0x6f1>
lea    0xb23(%rip),%rax
mov    %rax,-0x10(%rbp)
jmp    1801 <afp_error+0x6f1>
lea    0xb23(%rip),%rax
mov    %rax,-0x10(%rbp)
jmp    1801 <afp_error+0x6f1>
lea    0xb23(%rip),%rax
mov    %rax,-0x10(%rbp)
jmp    1801 <afp_error+0x6f1>
lea    0xb23(%rip),%rax
mov    %rax,-0x10(%rbp)
jmp    1801 <afp_error+0x6f1>
lea    0xb23(%rip),%rax
mov    %rax,-0x10(%rbp)
jmp    1801 <afp_error+0x6f1>
lea    0xb23(%rip),%rax
mov    %rax,-0x10(%rbp)
jmp    1801 <afp_error+0x6f1>
lea    0xb23(%rip),%rax
mov    %rax,-0x10(%rbp)
jmp    1801 <afp_error+0x6f1>
lea    0xb23(%rip),%rax
mov    %rax,-0x10(%rbp)
jmp    1801 <afp_error+0x6f1>
lea    0xb23(%rip),%rax
mov    %rax,-0x10(%rbp)
jmp    1801 <afp_error+0x6f1>
lea    0xb23(%rip),%rax
mov    %rax,-0x10(%rbp)
jmp    1801 <afp_error+0x6f1>
lea    0xb23(%rip),%rax
mov    %rax,-0x10(%rbp)
jmp    1801 <afp_error+0x6f1>
lea    0xb23(%rip),%rax
mov    %rax,-0x10(%rbp)
jmp    1801 <afp_error+0x6f1>
lea    0xb23(%rip),%rax
mov    %rax,-0x10(%rbp)
jmp    1801 <afp_error+0x6f1>
lea    0xb23(%rip),%rax
mov    %rax,-0x10(%rbp)
jmp    1801 <afp_error+0x6f1>
lea    0xb23(%rip),%rax
mov    %rax,-0x10(%rbp)
jmp    1801 <afp_error+0x6f1>
lea    0xb23(%rip),%rax
mov    %rax,-0x10(%rbp)
jmp    1801 <afp_error+0x6f1>
lea    0xb23(%rip),%rax
mov    %rax,-0x10(%rbp)
jmp    1801 <afp_error+0x6f1>
lea    0xb23(%rip),%rax
mov    %rax,-0x10(%rbp)
jmp    1801 <afp_error+0x6f1>
lea    0xb23(%rip),%rax
mov    %rax,-0x10(%rbp)
jmp    1801 <afp_error+0x6f1>
lea    0xb23(%rip),%rax
mov    %rax,-0x10(%rbp)
jmp    1801 <afp_error+0x6f1>
lea    0xb23(%rip),%rax
mov    %rax,-0x10(%rbp)
jmp    1801 <afp_error+0x6f1>
lea    0xb23(%rip),%rax
mov    %rax,-0x10(%rbp)
jmp    1801 <afp_error+0x6f1>
lea    0x8c2(%rip),%rax
mov    %rax,-0x10(%rbp)
jmp    1801 <afp_error+0x6f1>
lea    0xb13(%rip),%rax
mov    %rax,-0x10(%rbp)
jmp    1801 <afp_error+0x6f1>
lea    0xb07(%rip),%rax
mov    %rax,-0x10(%rbp)
mov    -0x10(%rbp),%rax
add    $0x20,%rsp
pop    %rbp
ret

x86 assembly (clang, -O2):
<afp_error>:
push   %rax
call   1030 <ntohl@plt>
lea    0x13b7(%rax),%ecx
cmp    $0x2f,%ecx
ja     1141 <afp_error+0x31>
lea    0xf98(%rip),%rax
lea    0xed1(%rip),%rdx
movslq (%rdx,%rcx,4),%rcx
add    %rdx,%rcx
jmp    *%rcx
lea    0x1271(%rip),%rax
pop    %rcx
ret
cmp    $0xffffffff,%eax
je     12f9 <afp_error+0x1e9>
test   %eax,%eax
jne    1302 <afp_error+0x1f2>
lea    0x1006(%rip),%rax
pop    %rcx
ret
lea    0x123e(%rip),%rax
pop    %rcx
ret
lea    0x1225(%rip),%rax
pop    %rcx
ret
lea    0x120c(%rip),%rax
pop    %rcx
ret
lea    0x11f3(%rip),%rax
pop    %rcx
ret
lea    0x11da(%rip),%rax
pop    %rcx
ret
lea    0x11c1(%rip),%rax
pop    %rcx
ret
lea    0x11a8(%rip),%rax
pop    %rcx
ret
lea    0x118f(%rip),%rax
pop    %rcx
ret
lea    0x1176(%rip),%rax
pop    %rcx
ret
lea    0x115d(%rip),%rax
pop    %rcx
ret
lea    0x1144(%rip),%rax
pop    %rcx
ret
lea    0x112b(%rip),%rax
pop    %rcx
ret
lea    0x1112(%rip),%rax
pop    %rcx
ret
lea    0x10f9(%rip),%rax
pop    %rcx
ret
lea    0x10e0(%rip),%rax
pop    %rcx
ret
lea    0x10c7(%rip),%rax
pop    %rcx
ret
lea    0x10ae(%rip),%rax
pop    %rcx
ret
lea    0x1095(%rip),%rax
pop    %rcx
ret
lea    0x107c(%rip),%rax
pop    %rcx
ret
lea    0x1063(%rip),%rax
pop    %rcx
ret
lea    0x104a(%rip),%rax
pop    %rcx
ret
lea    0x1031(%rip),%rax
pop    %rcx
ret
lea    0x1018(%rip),%rax
pop    %rcx
ret
lea    0xfff(%rip),%rax
pop    %rcx
ret
lea    0xfe6(%rip),%rax
pop    %rcx
ret
lea    0xfcd(%rip),%rax
pop    %rcx
ret
lea    0xfb4(%rip),%rax
pop    %rcx
ret
lea    0xf9b(%rip),%rax
pop    %rcx
ret
lea    0xf82(%rip),%rax
pop    %rcx
ret
lea    0xf69(%rip),%rax
pop    %rcx
ret
lea    0xf50(%rip),%rax
pop    %rcx
ret
lea    0xf37(%rip),%rax
pop    %rcx
ret
lea    0xf1e(%rip),%rax
pop    %rcx
ret
lea    0xf05(%rip),%rax
pop    %rcx
ret
lea    0xeec(%rip),%rax
pop    %rcx
ret
lea    0xed3(%rip),%rax
pop    %rcx
ret
lea    0xeba(%rip),%rax
pop    %rcx
ret
lea    0xea1(%rip),%rax
pop    %rcx
ret
lea    0xe88(%rip),%rax
pop    %rcx
ret
lea    0xe6f(%rip),%rax
pop    %rcx
ret
lea    0xe56(%rip),%rax
pop    %rcx
ret
lea    0xe3d(%rip),%rax
pop    %rcx
ret
lea    0xe24(%rip),%rax
pop    %rcx
ret
lea    0xe0b(%rip),%rax
pop    %rcx
ret
lea    0xdf2(%rip),%rax
pop    %rcx
ret
lea    0xdd9(%rip),%rax
pop    %rcx
ret
lea    0x10c0(%rip),%rax
pop    %rcx
ret
lea    0x10bb(%rip),%rax
pop    %rcx
ret

LLVM IR (-O0):
@.str = [16 x i8] c"AFPERR_ACCESS \00"
@.str.1 = [16 x i8] c"AFPERR_AUTHCONT\00"
@.str.2 = [16 x i8] c"AFPERR_BADUAM \00"
@.str.3 = [16 x i8] c"AFPERR_BADVERS \00"
@.str.4 = [16 x i8] c"AFPERR_BITMAP \00"
@.str.5 = [16 x i8] c"AFPERR_CANTMOVE\00"
@.str.6 = [16 x i8] c"AFPERR_DENYCONF\00"
@.str.7 = [16 x i8] c"AFPERR_DIRNEMPT\00"
@.str.8 = [16 x i8] c"AFPERR_DFULL \00"
@.str.9 = [16 x i8] c"AFPERR_EOF \00"
@.str.10 = [16 x i8] c"AFPERR_BUSY \00"
@.str.11 = [16 x i8] c"AFPERR_FLATVOL \00"
@.str.12 = [16 x i8] c"AFPERR_NOITEM \00"
@.str.13 = [16 x i8] c"AFPERR_LOCK \00"
@.str.14 = [16 x i8] c"AFPERR_MISC \00"
@.str.15 = [16 x i8] c"AFPERR_NLOCK \00"
@.str.16 = [16 x i8] c"AFPERR_NOSRVR \00"
@.str.17 = [16 x i8] c"AFPERR_EXIST \00"
@.str.18 = [16 x i8] c"AFPERR_NOOBJ \00"
@.str.19 = [16 x i8] c"AFPERR_PARAM \00"
@.str.20 = [16 x i8] c"AFPERR_NORANGE \00"
@.str.21 = [16 x i8] c"AFPERR_RANGEOVR\00"
@.str.22 = [16 x i8] c"AFPERR_SESSCLOS\00"
@.str.23 = [16 x i8] c"AFPERR_NOTAUTH \00"
@.str.24 = [16 x i8] c"AFPERR_NOOP \00"
@.str.25 = [16 x i8] c"AFPERR_BADTYPE \00"
@.str.26 = [16 x i8] c"AFPERR_NFILE \00"
@.str.27 = [16 x i8] c"AFPERR_SHUTDOWN\00"
@.str.28 = [16 x i8] c"AFPERR_NORENAME\00"
@.str.29 = [16 x i8] c"AFPERR_NODIR \00"
@.str.30 = [16 x i8] c"AFPERR_ITYPE \00"
@.str.31 = [16 x i8] c"AFPERR_VLOCK \00"
@.str.32 = [16 x i8] c"AFPERR_OLOCK \00"
@.str.33 = [16 x i8] c"AFPERR_CTNSHRD \00"
@.str.34 = [16 x i8] c"AFPERR_NOID \00"
@.str.35 = [16 x i8] c"AFPERR_EXISTID \00"
@.str.36 = [16 x i8] c"AFPERR_DIFFVOL \00"
@.str.37 = [16 x i8] c"AFPERR_CATCHNG \00"
@.str.38 = [16 x i8] c"AFPERR_SAMEOBJ \00"
@.str.39 = [16 x i8] c"AFPERR_BADID \00"
@.str.40 = [16 x i8] c"AFPERR_PWDSAME \00"
@.str.41 = [16 x i8] c"AFPERR_PWDSHORT\00"
@.str.42 = [16 x i8] c"AFPERR_PWDEXPR \00"
@.str.43 = [16 x i8] c"AFPERR_INSHRD \00"
@.str.44 = [16 x i8] c"AFPERR_INTRASH \00"
@.str.45 = [16 x i8] c"AFPERR_PWDCHNG \00"
@.str.46 = [16 x i8] c"AFPERR_PWDPOLCY\00"
@.str.47 = [16 x i8] c"AFPERR_USRLOGIN\00"
@.str.48 = [1 x i8] zeroinitializer
@.str.49 = [4 x i8] c"EOF\00"
@.str.50 = [7 x i8] c"unknow\00"
define i8* @afp_error(i32 %0) {
%2 = alloca i32
%3 = alloca i8*
store i32 %0, i32* %2
%4 = load i32, i32* %2
%5 = call i32 @ntohl(i32 %4)
switch i32 %5, label %56 [
i32 -5000, label %6
i32 -5001, label %7
i32 -5002, label %8
i32 -5003, label %9
i32 -5004, label %10
i32 -5005, label %11
i32 -5006, label %12
i32 -5007, label %13
i32 -5008, label %14
i32 -5009, label %15
i32 -5010, label %16
i32 -5011, label %17
i32 -5012, label %18
i32 -5013, label %19
i32 -5014, label %20
i32 -5015, label %21
i32 -5016, label %22
i32 -5017, label %23
i32 -5018, label %24
i32 -5019, label %25
i32 -5020, label %26
i32 -5021, label %27
i32 -5022, label %28
i32 -5023, label %29
i32 -5024, label %30
i32 -5025, label %31
i32 -5026, label %32
i32 -5027, label %33
i32 -5028, label %34
i32 -5029, label %35
i32 -5030, label %36
i32 -5031, label %37
i32 -5032, label %38
i32 -5033, label %39
i32 -5034, label %40
i32 -5035, label %41
i32 -5036, label %42
i32 -5037, label %43
i32 -5038, label %44
i32 -5039, label %45
i32 -5040, label %46
i32 -5041, label %47
i32 -5042, label %48
i32 -5043, label %49
i32 -5044, label %50
i32 -5045, label %51
i32 -5046, label %52
i32 -5047, label %53
i32 0, label %54
i32 -1, label %55
]
6: ; preds = %1
store i8* getelementptr inbounds ([16 x i8], [16 x i8]* @.str, i64 0, i64 0), i8** %3
br label %57
7: ; preds = %1
store i8* getelementptr inbounds ([16 x i8], [16 x i8]* @.str.1, i64 0, i64 0), i8** %3
br label %57
8: ; preds = %1
store i8* getelementptr inbounds ([16 x i8], [16 x i8]* @.str.2, i64 0, i64 0), i8** %3
br label %57
9: ; preds = %1
store i8* getelementptr inbounds ([16 x i8], [16 x i8]* @.str.3, i64 0, i64 0), i8** %3
br label %57
10: ; preds = %1
store i8* getelementptr inbounds ([16 x i8], [16 x i8]* @.str.4, i64 0, i64 0), i8** %3
br label %57
11: ; preds = %1
store i8* getelementptr inbounds ([16 x i8], [16 x i8]* @.str.5, i64 0, i64 0), i8** %3
br label %57
12: ; preds = %1
store i8* getelementptr inbounds ([16 x i8], [16 x i8]* @.str.6, i64 0, i64 0), i8** %3
br label %57
13: ; preds = %1
store i8* getelementptr inbounds ([16 x i8], [16 x i8]* @.str.7, i64 0, i64 0), i8** %3
br label %57
14: ; preds = %1
store i8* getelementptr inbounds ([16 x i8], [16 x i8]* @.str.8, i64 0, i64 0), i8** %3
br label %57
15: ; preds = %1
store i8* getelementptr inbounds ([16 x i8], [16 x i8]* @.str.9, i64 0, i64 0), i8** %3
br label %57
16: ; preds = %1
store i8* getelementptr inbounds ([16 x i8], [16 x i8]* @.str.10, i64 0, i64 0), i8** %3
br label %57
17: ; preds = %1
store i8* getelementptr inbounds ([16 x i8], [16 x i8]* @.str.11, i64 0, i64 0), i8** %3
br label %57
18: ; preds = %1
store i8* getelementptr inbounds ([16 x i8], [16 x i8]* @.str.12, i64 0, i64 0), i8** %3
br label %57
19: ; preds = %1
store i8* getelementptr inbounds ([16 x i8], [16 x i8]* @.str.13, i64 0, i64 0), i8** %3
br label %57
20: ; preds = %1
store i8* getelementptr inbounds ([16 x i8], [16 x i8]* @.str.14, i64 0, i64 0), i8** %3
br label %57
21: ; preds = %1
store i8* getelementptr inbounds ([16 x i8], [16 x i8]* @.str.15, i64 0, i64 0), i8** %3
br label %57
22: ; preds = %1
store i8* getelementptr inbounds ([16 x i8], [16 x i8]* @.str.16, i64 0, i64 0), i8** %3
br label %57
23: ; preds = %1
store i8* getelementptr inbounds ([16 x i8], [16 x i8]* @.str.17, i64 0, i64 0), i8** %3
br label %57
24: ; preds = %1
store i8* getelementptr inbounds ([16 x i8], [16 x i8]* @.str.18, i64 0, i64 0), i8** %3
br label %57
25: ; preds = %1
store i8* getelementptr inbounds ([16 x i8], [16 x i8]* @.str.19, i64 0, i64 0), i8** %3
br label %57
26: ; preds = %1
store i8* getelementptr inbounds ([16 x i8], [16 x i8]* @.str.20, i64 0, i64 0), i8** %3
br label %57
27: ; preds = %1
store i8* getelementptr inbounds ([16 x i8], [16 x i8]* @.str.21, i64 0, i64 0), i8** %3
br label %57
28: ; preds = %1
store i8* getelementptr inbounds ([16 x i8], [16 x i8]* @.str.22, i64 0, i64 0), i8** %3
br label %57
29: ; preds = %1
store i8* getelementptr inbounds ([16 x i8], [16 x i8]* @.str.23, i64 0, i64 0), i8** %3
br label %57
30: ; preds = %1
store i8* getelementptr inbounds ([16 x i8], [16 x i8]* @.str.24, i64 0, i64 0), i8** %3
br label %57
31: ; preds = %1
store i8* getelementptr inbounds ([16 x i8], [16 x i8]* @.str.25, i64 0, i64 0), i8** %3
br label %57
32: ; preds = %1
store i8* getelementptr inbounds ([16 x i8], [16 x i8]* @.str.26, i64 0, i64 0), i8** %3
br label %57
33: ; preds = %1
store i8* getelementptr inbounds ([16 x i8], [16 x i8]* @.str.27, i64 0, i64 0), i8** %3
br label %57
34: ; preds = %1
store i8* getelementptr inbounds ([16 x i8], [16 x i8]* @.str.28, i64 0, i64 0), i8** %3
br label %57
35: ; preds = %1
store i8* getelementptr inbounds ([16 x i8], [16 x i8]* @.str.29, i64 0, i64 0), i8** %3
br label %57
36: ; preds = %1
store i8* getelementptr inbounds ([16 x i8], [16 x i8]* @.str.30, i64 0, i64 0), i8** %3
br label %57
37: ; preds = %1
store i8* getelementptr inbounds ([16 x i8], [16 x i8]* @.str.31, i64 0, i64 0), i8** %3
br label %57
38: ; preds = %1
store i8* getelementptr inbounds ([16 x i8], [16 x i8]* @.str.32, i64 0, i64 0), i8** %3
br label %57
39: ; preds = %1
store i8* getelementptr inbounds ([16 x i8], [16 x i8]* @.str.33, i64 0, i64 0), i8** %3
br label %57
40: ; preds = %1
store i8* getelementptr inbounds ([16 x i8], [16 x i8]* @.str.34, i64 0, i64 0), i8** %3
br label %57
41: ; preds = %1
store i8* getelementptr inbounds ([16 x i8], [16 x i8]* @.str.35, i64 0, i64 0), i8** %3
br label %57
42: ; preds = %1
store i8* getelementptr inbounds ([16 x i8], [16 x i8]* @.str.36, i64 0, i64 0), i8** %3
br label %57
43: ; preds = %1
store i8* getelementptr inbounds ([16 x i8], [16 x i8]* @.str.37, i64 0, i64 0), i8** %3
br label %57
44: ; preds = %1
store i8* getelementptr inbounds ([16 x i8], [16 x i8]* @.str.38, i64 0, i64 0), i8** %3
br label %57
45: ; preds = %1
store i8* getelementptr inbounds ([16 x i8], [16 x i8]* @.str.39, i64 0, i64 0), i8** %3
br label %57
46: ; preds = %1
store i8* getelementptr inbounds ([16 x i8], [16 x i8]* @.str.40, i64 0, i64 0), i8** %3
br label %57
47: ; preds = %1
store i8* getelementptr inbounds ([16 x i8], [16 x i8]* @.str.41, i64 0, i64 0), i8** %3
br label %57
48: ; preds = %1
store i8* getelementptr inbounds ([16 x i8], [16 x i8]* @.str.42, i64 0, i64 0), i8** %3
br label %57
49: ; preds = %1
store i8* getelementptr inbounds ([16 x i8], [16 x i8]* @.str.43, i64 0, i64 0), i8** %3
br label %57
50: ; preds = %1
store i8* getelementptr inbounds ([16 x i8], [16 x i8]* @.str.44, i64 0, i64 0), i8** %3
br label %57
51: ; preds = %1
store i8* getelementptr inbounds ([16 x i8], [16 x i8]* @.str.45, i64 0, i64 0), i8** %3
br label %57
52: ; preds = %1
store i8* getelementptr inbounds ([16 x i8], [16 x i8]* @.str.46, i64 0, i64 0), i8** %3
br label %57
53: ; preds = %1
store i8* getelementptr inbounds ([16 x i8], [16 x i8]* @.str.47, i64 0, i64 0), i8** %3
br label %57
54: ; preds = %1
store i8* getelementptr inbounds ([1 x i8], [1 x i8]* @.str.48, i64 0, i64 0), i8** %3
br label %57
55: ; preds = %1
store i8* getelementptr inbounds ([4 x i8], [4 x i8]* @.str.49, i64 0, i64 0), i8** %3
br label %57
56: ; preds = %1
store i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str.50, i64 0, i64 0), i8** %3
br label %57
57: ; preds = %56, %55, %54, %53, %52, %51, %50, %49, %48, %47, %46, %45, %44, %43, %42, %41, %40, %39, %38, %37, %36, %35, %34, %33, %32, %31, %30, %29, %28, %27, %26, %25, %24, %23, %22, %21, %20, %19, %18, %17, %16, %15, %14, %13, %12, %11, %10, %9, %8, %7, %6
%58 = load i8*, i8** %3
ret i8* %58
}

LLVM IR (-O2):
@.str = [16 x i8] c"AFPERR_ACCESS \00"
@.str.1 = [16 x i8] c"AFPERR_AUTHCONT\00"
@.str.2 = [16 x i8] c"AFPERR_BADUAM \00"
@.str.3 = [16 x i8] c"AFPERR_BADVERS \00"
@.str.4 = [16 x i8] c"AFPERR_BITMAP \00"
@.str.5 = [16 x i8] c"AFPERR_CANTMOVE\00"
@.str.6 = [16 x i8] c"AFPERR_DENYCONF\00"
@.str.7 = [16 x i8] c"AFPERR_DIRNEMPT\00"
@.str.8 = [16 x i8] c"AFPERR_DFULL \00"
@.str.9 = [16 x i8] c"AFPERR_EOF \00"
@.str.10 = [16 x i8] c"AFPERR_BUSY \00"
@.str.11 = [16 x i8] c"AFPERR_FLATVOL \00"
@.str.12 = [16 x i8] c"AFPERR_NOITEM \00"
@.str.13 = [16 x i8] c"AFPERR_LOCK \00"
@.str.14 = [16 x i8] c"AFPERR_MISC \00"
@.str.15 = [16 x i8] c"AFPERR_NLOCK \00"
@.str.16 = [16 x i8] c"AFPERR_NOSRVR \00"
@.str.17 = [16 x i8] c"AFPERR_EXIST \00"
@.str.18 = [16 x i8] c"AFPERR_NOOBJ \00"
@.str.19 = [16 x i8] c"AFPERR_PARAM \00"
@.str.20 = [16 x i8] c"AFPERR_NORANGE \00"
@.str.21 = [16 x i8] c"AFPERR_RANGEOVR\00"
@.str.22 = [16 x i8] c"AFPERR_SESSCLOS\00"
@.str.23 = [16 x i8] c"AFPERR_NOTAUTH \00"
@.str.24 = [16 x i8] c"AFPERR_NOOP \00"
@.str.25 = [16 x i8] c"AFPERR_BADTYPE \00"
@.str.26 = [16 x i8] c"AFPERR_NFILE \00"
@.str.27 = [16 x i8] c"AFPERR_SHUTDOWN\00"
@.str.28 = [16 x i8] c"AFPERR_NORENAME\00"
@.str.29 = [16 x i8] c"AFPERR_NODIR \00"
@.str.30 = [16 x i8] c"AFPERR_ITYPE \00"
@.str.31 = [16 x i8] c"AFPERR_VLOCK \00"
@.str.32 = [16 x i8] c"AFPERR_OLOCK \00"
@.str.33 = [16 x i8] c"AFPERR_CTNSHRD \00"
@.str.34 = [16 x i8] c"AFPERR_NOID \00"
@.str.35 = [16 x i8] c"AFPERR_EXISTID \00"
@.str.36 = [16 x i8] c"AFPERR_DIFFVOL \00"
@.str.37 = [16 x i8] c"AFPERR_CATCHNG \00"
@.str.38 = [16 x i8] c"AFPERR_SAMEOBJ \00"
@.str.39 = [16 x i8] c"AFPERR_BADID \00"
@.str.40 = [16 x i8] c"AFPERR_PWDSAME \00"
@.str.41 = [16 x i8] c"AFPERR_PWDSHORT\00"
@.str.42 = [16 x i8] c"AFPERR_PWDEXPR \00"
@.str.43 = [16 x i8] c"AFPERR_INSHRD \00"
@.str.44 = [16 x i8] c"AFPERR_INTRASH \00"
@.str.45 = [16 x i8] c"AFPERR_PWDCHNG \00"
@.str.46 = [16 x i8] c"AFPERR_PWDPOLCY\00"
@.str.47 = [16 x i8] c"AFPERR_USRLOGIN\00"
@.str.48 = [1 x i8] zeroinitializer
@.str.49 = [4 x i8] c"EOF\00"
@.str.50 = [7 x i8] c"unknow\00"
define i8* @afp_error(i32 %0) {
%2 = tail call i32 @ntohl(i32 %0)
switch i32 %2, label %52 [
i32 -5000, label %53
i32 -5001, label %3
i32 -5002, label %4
i32 -5003, label %5
i32 -5004, label %6
i32 -5005, label %7
i32 -5006, label %8
i32 -5007, label %9
i32 -5008, label %10
i32 -5009, label %11
i32 -5010, label %12
i32 -5011, label %13
i32 -5012, label %14
i32 -5013, label %15
i32 -5014, label %16
i32 -5015, label %17
i32 -5016, label %18
i32 -5017, label %19
i32 -5018, label %20
i32 -5019, label %21
i32 -5020, label %22
i32 -5021, label %23
i32 -5022, label %24
i32 -5023, label %25
i32 -5024, label %26
i32 -5025, label %27
i32 -5026, label %28
i32 -5027, label %29
i32 -5028, label %30
i32 -5029, label %31
i32 -5030, label %32
i32 -5031, label %33
i32 -5032, label %34
i32 -5033, label %35
i32 -5034, label %36
i32 -5035, label %37
i32 -5036, label %38
i32 -5037, label %39
i32 -5038, label %40
i32 -5039, label %41
i32 -5040, label %42
i32 -5041, label %43
i32 -5042, label %44
i32 -5043, label %45
i32 -5044, label %46
i32 -5045, label %47
i32 -5046, label %48
i32 -5047, label %49
i32 0, label %50
i32 -1, label %51
]
3: ; preds = %1
br label %53
4: ; preds = %1
br label %53
5: ; preds = %1
br label %53
6: ; preds = %1
br label %53
7: ; preds = %1
br label %53
8: ; preds = %1
br label %53
9: ; preds = %1
br label %53
10: ; preds = %1
br label %53
11: ; preds = %1
br label %53
12: ; preds = %1
br label %53
13: ; preds = %1
br label %53
14: ; preds = %1
br label %53
15: ; preds = %1
br label %53
16: ; preds = %1
br label %53
17: ; preds = %1
br label %53
18: ; preds = %1
br label %53
19: ; preds = %1
br label %53
20: ; preds = %1
br label %53
21: ; preds = %1
br label %53
22: ; preds = %1
br label %53
23: ; preds = %1
br label %53
24: ; preds = %1
br label %53
25: ; preds = %1
br label %53
26: ; preds = %1
br label %53
27: ; preds = %1
br label %53
28: ; preds = %1
br label %53
29: ; preds = %1
br label %53
30: ; preds = %1
br label %53
31: ; preds = %1
br label %53
32: ; preds = %1
br label %53
33: ; preds = %1
br label %53
34: ; preds = %1
br label %53
35: ; preds = %1
br label %53
36: ; preds = %1
br label %53
37: ; preds = %1
br label %53
38: ; preds = %1
br label %53
39: ; preds = %1
br label %53
40: ; preds = %1
br label %53
41: ; preds = %1
br label %53
42: ; preds = %1
br label %53
43: ; preds = %1
br label %53
44: ; preds = %1
br label %53
45: ; preds = %1
br label %53
46: ; preds = %1
br label %53
47: ; preds = %1
br label %53
48: ; preds = %1
br label %53
49: ; preds = %1
br label %53
50: ; preds = %1
br label %53
51: ; preds = %1
br label %53
52: ; preds = %1
br label %53
53: ; preds = %1, %52, %51, %50, %49, %48, %47, %46, %45, %44, %43, %42, %41, %40, %39, %38, %37, %36, %35, %34, %33, %32, %31, %30, %29, %28, %27, %26, %25, %24, %23, %22, %21, %20, %19, %18, %17, %16, %15, %14, %13, %12, %11, %10, %9, %8, %7, %6, %5, %4, %3
%54 = phi i8* [ getelementptr inbounds ([7 x i8], [7 x i8]* @.str.50, i64 0, i64 0), %52 ], [ getelementptr inbounds ([4 x i8], [4 x i8]* @.str.49, i64 0, i64 0), %51 ], [ getelementptr inbounds ([1 x i8], [1 x i8]* @.str.48, i64 0, i64 0), %50 ], [ getelementptr inbounds ([16 x i8], [16 x i8]* @.str.47, i64 0, i64 0), %49 ], [ getelementptr inbounds ([16 x i8], [16 x i8]* @.str.46, i64 0, i64 0), %48 ], [ getelementptr inbounds ([16 x i8], [16 x i8]* @.str.45, i64 0, i64 0), %47 ], [ getelementptr inbounds ([16 x i8], [16 x i8]* @.str.44, i64 0, i64 0), %46 ], [ getelementptr inbounds ([16 x i8], [16 x i8]* @.str.43, i64 0, i64 0), %45 ], [ getelementptr inbounds ([16 x i8], [16 x i8]* @.str.42, i64 0, i64 0), %44 ], [ getelementptr inbounds ([16 x i8], [16 x i8]* @.str.41, i64 0, i64 0), %43 ], [ getelementptr inbounds ([16 x i8], [16 x i8]* @.str.40, i64 0, i64 0), %42 ], [ getelementptr inbounds ([16 x i8], [16 x i8]* @.str.39, i64 0, i64 0), %41 ], [ getelementptr inbounds ([16 x i8], [16 x i8]* @.str.38, i64 0, i64 0), %40 ], [ getelementptr inbounds ([16 x i8], [16 x i8]* @.str.37, i64 0, i64 0), %39 ], [ getelementptr inbounds ([16 x i8], [16 x i8]* @.str.36, i64 0, i64 0), %38 ], [ getelementptr inbounds ([16 x i8], [16 x i8]* @.str.35, i64 0, i64 0), %37 ], [ getelementptr inbounds ([16 x i8], [16 x i8]* @.str.34, i64 0, i64 0), %36 ], [ getelementptr inbounds ([16 x i8], [16 x i8]* @.str.33, i64 0, i64 0), %35 ], [ getelementptr inbounds ([16 x i8], [16 x i8]* @.str.32, i64 0, i64 0), %34 ], [ getelementptr inbounds ([16 x i8], [16 x i8]* @.str.31, i64 0, i64 0), %33 ], [ getelementptr inbounds ([16 x i8], [16 x i8]* @.str.30, i64 0, i64 0), %32 ], [ getelementptr inbounds ([16 x i8], [16 x i8]* @.str.29, i64 0, i64 0), %31 ], [ getelementptr inbounds ([16 x i8], [16 x i8]* @.str.28, i64 0, i64 0), %30 ], [ getelementptr inbounds ([16 x i8], [16 x i8]* @.str.27, i64 0, i64 0), %29 ], [ getelementptr inbounds ([16 x i8], [16 x i8]* @.str.26, i64 0, i64 0), %28 ], [ getelementptr inbounds ([16 x i8], [16 x i8]* @.str.25, i64 0, i64 0), %27 ], [ getelementptr inbounds ([16 x i8], [16 x i8]* @.str.24, i64 0, i64 0), %26 ], [ getelementptr inbounds ([16 x i8], [16 x i8]* @.str.23, i64 0, i64 0), %25 ], [ getelementptr inbounds ([16 x i8], [16 x i8]* @.str.22, i64 0, i64 0), %24 ], [ getelementptr inbounds ([16 x i8], [16 x i8]* @.str.21, i64 0, i64 0), %23 ], [ getelementptr inbounds ([16 x i8], [16 x i8]* @.str.20, i64 0, i64 0), %22 ], [ getelementptr inbounds ([16 x i8], [16 x i8]* @.str.19, i64 0, i64 0), %21 ], [ getelementptr inbounds ([16 x i8], [16 x i8]* @.str.18, i64 0, i64 0), %20 ], [ getelementptr inbounds ([16 x i8], [16 x i8]* @.str.17, i64 0, i64 0), %19 ], [ getelementptr inbounds ([16 x i8], [16 x i8]* @.str.16, i64 0, i64 0), %18 ], [ getelementptr inbounds ([16 x i8], [16 x i8]* @.str.15, i64 0, i64 0), %17 ], [ getelementptr inbounds ([16 x i8], [16 x i8]* @.str.14, i64 0, i64 0), %16 ], [ getelementptr inbounds ([16 x i8], [16 x i8]* @.str.13, i64 0, i64 0), %15 ], [ getelementptr inbounds ([16 x i8], [16 x i8]* @.str.12, i64 0, i64 0), %14 ], [ getelementptr inbounds ([16 x i8], [16 x i8]* @.str.11, i64 0, i64 0), %13 ], [ getelementptr inbounds ([16 x i8], [16 x i8]* @.str.10, i64 0, i64 0), %12 ], [ getelementptr inbounds ([16 x i8], [16 x i8]* @.str.9, i64 0, i64 0), %11 ], [ getelementptr inbounds ([16 x i8], [16 x i8]* @.str.8, i64 0, i64 0), %10 ], [ getelementptr inbounds ([16 x i8], [16 x i8]* @.str.7, i64 0, i64 0), %9 ], [ getelementptr inbounds ([16 x i8], [16 x i8]* @.str.6, i64 0, i64 0), %8 ], [ getelementptr inbounds ([16 x i8], [16 x i8]* @.str.5, i64 0, i64 0), %7 ], [ getelementptr inbounds ([16 x i8], [16 x i8]* @.str.4, i64 0, i64 0), %6 ], [ getelementptr inbounds ([16 x i8], [16 x i8]* @.str.3, i64 0, i64 0), %5 ], [ getelementptr inbounds ([16 x i8], [16 x i8]* @.str.2, i64 0, i64 0), %4 ], [ getelementptr inbounds ([16 x i8], [16 x i8]* @.str.1, i64 0, i64 0), %3 ], [ getelementptr inbounds ([16 x i8], [16 x i8]* @.str, i64 0, i64 0), %1 ]
ret i8* %54
}