#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*/ printf(char *);
void usage_license(void) {
  printf("kmemcache"
         " "
         "0.4"
         "\n\n");
  printf(
      "Copyright (C) 2012, Li Jianguo <byjgli@gmail.com>\n"
      "\n"
      "kmemcache is derived from memcached-v1.4.15, exactly it is a\n"
      "linux kernel memcached, and aims at quicker response and higher "
      "performance.\n"
      "\n"
      "kmemcache is free software; you can redistribute it and/or modify it\n"
      "under the terms of the GNU General Public License as published by\n"
      "the Free Software Foundation; either version 2, or (at your option)\n"
      "any later version.\n"
      "\n"
      "kmemcache is distributed in the hope that it will be useful, but "
      "WITHOUT\n"
      "ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or\n"
      "FITNESS FOR A PARTICULAR PURPOSE.\n"
      "\n"
      "You should have received a copy of the GNU General Public License\n"
      "along with kmemcache; see the file COPYING.\n"
      "\n"
      "Copyright (c) 2003, Danga Interactive, Inc. <http://www.danga.com/>\n"
      "All rights reserved.\n"
      "\n"
      "Redistribution and use in source and binary forms, with or without\n"
      "modification, are permitted provided that the following conditions are\n"
      "met:\n"
      "\n"
      "    * Redistributions of source code must retain the above copyright\n"
      "notice, this list of conditions and the following disclaimer.\n"
      "\n"
      "    * Redistributions in binary form must reproduce the above\n"
      "copyright notice, this list of conditions and the following disclaimer\n"
      "in the documentation and/or other materials provided with the\n"
      "distribution.\n"
      "\n"
      "    * Neither the name of the Danga Interactive nor the names of its\n"
      "contributors may be used to endorse or promote products derived from\n"
      "this software without specific prior written permission.\n"
      "\n"
      "THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS\n"
      "\"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT\n"
      "LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR\n"
      "A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT\n"
      "OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,\n"
      "SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT\n"
      "LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,\n"
      "DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY\n"
      "THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT\n"
      "(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE\n"
      "OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n"
      "\n"
      "\n"
      "This product includes software developed by Niels Provos.\n"
      "\n"
      "[ libevent ]\n"
      "\n"
      "Copyright 2000-2003 Niels Provos <provos@citi.umich.edu>\n"
      "All rights reserved.\n"
      "\n"
      "Redistribution and use in source and binary forms, with or without\n"
      "modification, are permitted provided that the following conditions\n"
      "are met:\n"
      "1. Redistributions of source code must retain the above copyright\n"
      "   notice, this list of conditions and the following disclaimer.\n"
      "2. Redistributions in binary form must reproduce the above copyright\n"
      "   notice, this list of conditions and the following disclaimer in the\n"
      "   documentation and/or other materials provided with the "
      "distribution.\n"
      "3. All advertising materials mentioning features or use of this "
      "software\n"
      "   must display the following acknowledgement:\n"
      "      This product includes software developed by Niels Provos.\n"
      "4. The name of the author may not be used to endorse or promote "
      "products\n"
      "   derived from this software without specific prior written "
      "permission.\n"
      "\n"
      "THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR\n"
      "IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED "
      "WARRANTIES\n"
      "OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE "
      "DISCLAIMED.\n"
      "IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,\n"
      "INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, "
      "BUT\n"
      "NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF "
      "USE,\n"
      "DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY\n"
      "THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT\n"
      "(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE "
      "OF\n"
      "THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n");
  return;
}


x86 assembly (clang, -O0):
<usage_license>:
push   %rbp
mov    %rsp,%rbp
lea    0xee5(%rip),%rdi
call   1030 <printf@plt>
lea    0xee9(%rip),%rdi
call   1030 <printf@plt>
pop    %rbp
ret

x86 assembly (clang, -O2):
<usage_license>:
push   %rax
lea    0xee8(%rip),%rdi
call   1030 <puts@plt>
lea    0xeeb(%rip),%rdi
pop    %rax
jmp    1030 <puts@plt>

LLVM IR (-O0):
@.str = [16 x i8] c"kmemcache 0.4\0A\0A\00"
@.str.1 = [3905 x i8] c"Copyright (C) 2012, Li Jianguo <byjgli@gmail.com>\0A\0Akmemcache is derived from memcached-v1.4.15, exactly it is a\0Alinux kernel memcached, and aims at quicker response and higher performance.\0A\0Akmemcache is free software; you can redistribute it and/or modify it\0Aunder the terms of the GNU General Public License as published by\0Athe Free Software Foundation; either version 2, or (at your option)\0Aany later version.\0A\0Akmemcache is distributed in the hope that it will be useful, but WITHOUT\0AANY WARRANTY; without even the implied warranty of MERCHANTABILITY or\0AFITNESS FOR A PARTICULAR PURPOSE.\0A\0AYou should have received a copy of the GNU General Public License\0Aalong with kmemcache; see the file COPYING.\0A\0ACopyright (c) 2003, Danga Interactive, Inc. <http://www.danga.com/>\0AAll rights reserved.\0A\0ARedistribution and use in source and binary forms, with or without\0Amodification, are permitted provided that the following conditions are\0Amet:\0A\0A * Redistributions of source code must retain the above copyright\0Anotice, this list of conditions and the following disclaimer.\0A\0A * Redistributions in binary form must reproduce the above\0Acopyright notice, this list of conditions and the following disclaimer\0Ain the documentation and/or other materials provided with the\0Adistribution.\0A\0A * Neither the name of the Danga Interactive nor the names of its\0Acontributors may be used to endorse or promote products derived from\0Athis software without specific prior written permission.\0A\0ATHIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS\0A\22AS IS\22 AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT\0ALIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR\0AA PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT\0AOWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,\0ASPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT\0ALIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,\0ADATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY\0ATHEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT\0A(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE\0AOF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\0A\0A\0AThis product includes software developed by Niels Provos.\0A\0A[ libevent ]\0A\0ACopyright 2000-2003 Niels Provos <provos@citi.umich.edu>\0AAll rights reserved.\0A\0ARedistribution and use in source and binary forms, with or without\0Amodification, are permitted provided that the following conditions\0Aare met:\0A1. Redistributions of source code must retain the above copyright\0A notice, this list of conditions and the following disclaimer.\0A2. Redistributions in binary form must reproduce the above copyright\0A notice, this list of conditions and the following disclaimer in the\0A documentation and/or other materials provided with the distribution.\0A3. All advertising materials mentioning features or use of this software\0A must display the following acknowledgement:\0A This product includes software developed by Niels Provos.\0A4. The name of the author may not be used to endorse or promote products\0A derived from this software without specific prior written permission.\0A\0ATHIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR\0AIMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES\0AOF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.\0AIN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,\0AINCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT\0ANOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,\0ADATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY\0ATHEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT\0A(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF\0ATHIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\0A\00"
define void @usage_license() {
%1 = call i32 @printf(i8* getelementptr inbounds ([16 x i8], [16 x i8]* @.str, i64 0, i64 0))
%2 = call i32 @printf(i8* getelementptr inbounds ([3905 x i8], [3905 x i8]* @.str.1, i64 0, i64 0))
ret void
}

LLVM IR (-O2):
@str = [15 x i8] c"kmemcache 0.4\0A\00"
@str.2 = [3904 x i8] c"Copyright (C) 2012, Li Jianguo <byjgli@gmail.com>\0A\0Akmemcache is derived from memcached-v1.4.15, exactly it is a\0Alinux kernel memcached, and aims at quicker response and higher performance.\0A\0Akmemcache is free software; you can redistribute it and/or modify it\0Aunder the terms of the GNU General Public License as published by\0Athe Free Software Foundation; either version 2, or (at your option)\0Aany later version.\0A\0Akmemcache is distributed in the hope that it will be useful, but WITHOUT\0AANY WARRANTY; without even the implied warranty of MERCHANTABILITY or\0AFITNESS FOR A PARTICULAR PURPOSE.\0A\0AYou should have received a copy of the GNU General Public License\0Aalong with kmemcache; see the file COPYING.\0A\0ACopyright (c) 2003, Danga Interactive, Inc. <http://www.danga.com/>\0AAll rights reserved.\0A\0ARedistribution and use in source and binary forms, with or without\0Amodification, are permitted provided that the following conditions are\0Amet:\0A\0A * Redistributions of source code must retain the above copyright\0Anotice, this list of conditions and the following disclaimer.\0A\0A * Redistributions in binary form must reproduce the above\0Acopyright notice, this list of conditions and the following disclaimer\0Ain the documentation and/or other materials provided with the\0Adistribution.\0A\0A * Neither the name of the Danga Interactive nor the names of its\0Acontributors may be used to endorse or promote products derived from\0Athis software without specific prior written permission.\0A\0ATHIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS\0A\22AS IS\22 AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT\0ALIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR\0AA PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT\0AOWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,\0ASPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT\0ALIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,\0ADATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY\0ATHEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT\0A(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE\0AOF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\0A\0A\0AThis product includes software developed by Niels Provos.\0A\0A[ libevent ]\0A\0ACopyright 2000-2003 Niels Provos <provos@citi.umich.edu>\0AAll rights reserved.\0A\0ARedistribution and use in source and binary forms, with or without\0Amodification, are permitted provided that the following conditions\0Aare met:\0A1. Redistributions of source code must retain the above copyright\0A notice, this list of conditions and the following disclaimer.\0A2. Redistributions in binary form must reproduce the above copyright\0A notice, this list of conditions and the following disclaimer in the\0A documentation and/or other materials provided with the distribution.\0A3. All advertising materials mentioning features or use of this software\0A must display the following acknowledgement:\0A This product includes software developed by Niels Provos.\0A4. The name of the author may not be used to endorse or promote products\0A derived from this software without specific prior written permission.\0A\0ATHIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR\0AIMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES\0AOF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.\0AIN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,\0AINCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT\0ANOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,\0ADATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY\0ATHEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT\0A(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF\0ATHIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\00"
define void @usage_license() {
%1 = tail call i32 @puts(i8* dereferenceable(1) getelementptr inbounds ([15 x i8], [15 x i8]* @str, i64 0, i64 0))
%2 = tail call i32 @puts(i8* dereferenceable(1) getelementptr inbounds ([3904 x i8], [3904 x i8]* @str.2, i64 0, i64 0))
ret void
}