#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 display_version(void) {
  printf(
      "\n"
      "Cluster 3.0, command line version, "
      "using the C Clustering Library version 1.30.\n"
      "\n"
      "Cluster was originally written by Michael Eisen (eisen@rana.lbl.gov)\n"
      "Copyright 1998-99 Stanford University.\n");
  printf("\n"
         "The command line version of Cluster version 3.0 was created by "
         "Michiel de Hoon\n"
         "(mdehoon 'AT' c2b2.columbia.edu), together with Seiya Imoto and "
         "Satoru Miyano,\n"
         "University of Tokyo, Institute of Medical Science, Human Genome "
         "Center.\n"
         "\n"
         "Visit our website at "
         "http://bonsai.ims.u-tokyo.ac.jp/~mdehoon/software/cluster\n"
         "for GUI-versions of Cluster 3.0 for Windows, Mac OS X, Unix, and "
         "Linux,\n"
         "as well as Python and Perl interfaces to the C Clustering Library.\n"
         "\n");
  return;
}


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

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

LLVM IR (-O0):
@.str = [191 x i8] c"\0ACluster 3.0, command line version, using the C Clustering Library version 1.30.\0A\0ACluster was originally written by Michael Eisen (eisen@rana.lbl.gov)\0ACopyright 1998-99 Stanford University.\0A\00"
@.str.1 = [452 x i8] c"\0AThe command line version of Cluster version 3.0 was created by Michiel de Hoon\0A(mdehoon 'AT' c2b2.columbia.edu), together with Seiya Imoto and Satoru Miyano,\0AUniversity of Tokyo, Institute of Medical Science, Human Genome Center.\0A\0AVisit our website at http://bonsai.ims.u-tokyo.ac.jp/~mdehoon/software/cluster\0Afor GUI-versions of Cluster 3.0 for Windows, Mac OS X, Unix, and Linux,\0Aas well as Python and Perl interfaces to the C Clustering Library.\0A\0A\00"
define void @display_version() {
%1 = call i32 @printf(i8* getelementptr inbounds ([191 x i8], [191 x i8]* @.str, i64 0, i64 0))
%2 = call i32 @printf(i8* getelementptr inbounds ([452 x i8], [452 x i8]* @.str.1, i64 0, i64 0))
ret void
}

LLVM IR (-O2):
@str = [190 x i8] c"\0ACluster 3.0, command line version, using the C Clustering Library version 1.30.\0A\0ACluster was originally written by Michael Eisen (eisen@rana.lbl.gov)\0ACopyright 1998-99 Stanford University.\00"
@str.2 = [451 x i8] c"\0AThe command line version of Cluster version 3.0 was created by Michiel de Hoon\0A(mdehoon 'AT' c2b2.columbia.edu), together with Seiya Imoto and Satoru Miyano,\0AUniversity of Tokyo, Institute of Medical Science, Human Genome Center.\0A\0AVisit our website at http://bonsai.ims.u-tokyo.ac.jp/~mdehoon/software/cluster\0Afor GUI-versions of Cluster 3.0 for Windows, Mac OS X, Unix, and Linux,\0Aas well as Python and Perl interfaces to the C Clustering Library.\0A\00"
define void @display_version() {
%1 = tail call i32 @puts(i8* dereferenceable(1) getelementptr inbounds ([190 x i8], [190 x i8]* @str, i64 0, i64 0))
%2 = tail call i32 @puts(i8* dereferenceable(1) getelementptr inbounds ([451 x i8], [451 x i8]* @str.2, i64 0, i64 0))
ret void
}