#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 print_help_snmf() {
  printf("\nHELP: ./TESS3 options \n\n"
         "mandatory:\n"
         "        -x genotype_file      -- genotype file (in .geno format)\n"
         "        -K K                  -- number K of ancestral populations\n"
         "        -r coordinates_file   -- coordinates input file\n"
         " OR \n"
         "        -W edge_weight_file  -- edge weight matrix of the graph "
         "input file\n"
         "optional:\n"
         "        -h                    -- help\n"
         "        -a alpha              -- normalized regularization parameter "
         "      (default: 0.001)\n"
         "        -q output_Q           -- individual admixture file      "
         "(default: genotype_file.K.Q)\n"
         "        -g output_G           -- ancestral frequencies file     "
         "(default: genotype_file.K.G)\n"
         "        -f					-- Fst file            "
         "           (default: genotype_file.F.Fst)\n"
         "        -c perc               -- cross-entropy with 'perc'           "
         "              \n"
         "                              of masked genotypes               "
         "(default: 0.05)\n"
         "        -e tol                -- tolerance error                "
         "(default: 0.0000001)\n"
         "        -i iterations         -- number max of iterations       "
         "(default: 200)\n"
         "        -I nb_SNPs            -- number of SNPs used to init Q  "
         "(default: min(10000,L/10)\n"
         "        -Q input_Q            -- individual admixture initialisation "
         "file\n"
         "        -s seed               -- seed random init               "
         "(default: random)\n"
         "        -m ploidy             -- 1 if haploid, 2 if diploid     "
         "(default: 2)\n"
         "        -p num_proc           -- number of processes (CPU)      "
         "(default: 1)\n");
}


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

x86 assembly (clang, -O2):
<print_help_snmf>:
lea    0xee9(%rip),%rdi
jmp    1030 <puts@plt>

LLVM IR (-O0):
@.str = [1439 x i8] c"\0AHELP: ./TESS3 options \0A\0Amandatory:\0A -x genotype_file -- genotype file (in .geno format)\0A -K K -- number K of ancestral populations\0A -r coordinates_file -- coordinates input file\0A OR \0A -W edge_weight_file -- edge weight matrix of the graph input file\0Aoptional:\0A -h -- help\0A -a alpha -- normalized regularization parameter (default: 0.001)\0A -q output_Q -- individual admixture file (default: genotype_file.K.Q)\0A -g output_G -- ancestral frequencies file (default: genotype_file.K.G)\0A -f\09\09\09\09\09-- Fst file (default: genotype_file.F.Fst)\0A -c perc -- cross-entropy with 'perc' \0A of masked genotypes (default: 0.05)\0A -e tol -- tolerance error (default: 0.0000001)\0A -i iterations -- number max of iterations (default: 200)\0A -I nb_SNPs -- number of SNPs used to init Q (default: min(10000,L/10)\0A -Q input_Q -- individual admixture initialisation file\0A -s seed -- seed random init (default: random)\0A -m ploidy -- 1 if haploid, 2 if diploid (default: 2)\0A -p num_proc -- number of processes (CPU) (default: 1)\0A\00"
define void @print_help_snmf() {
%1 = call i32 @printf(i8* getelementptr inbounds ([1439 x i8], [1439 x i8]* @.str, i64 0, i64 0))
ret void
}

LLVM IR (-O2):
@str = [1438 x i8] c"\0AHELP: ./TESS3 options \0A\0Amandatory:\0A -x genotype_file -- genotype file (in .geno format)\0A -K K -- number K of ancestral populations\0A -r coordinates_file -- coordinates input file\0A OR \0A -W edge_weight_file -- edge weight matrix of the graph input file\0Aoptional:\0A -h -- help\0A -a alpha -- normalized regularization parameter (default: 0.001)\0A -q output_Q -- individual admixture file (default: genotype_file.K.Q)\0A -g output_G -- ancestral frequencies file (default: genotype_file.K.G)\0A -f\09\09\09\09\09-- Fst file (default: genotype_file.F.Fst)\0A -c perc -- cross-entropy with 'perc' \0A of masked genotypes (default: 0.05)\0A -e tol -- tolerance error (default: 0.0000001)\0A -i iterations -- number max of iterations (default: 200)\0A -I nb_SNPs -- number of SNPs used to init Q (default: min(10000,L/10)\0A -Q input_Q -- individual admixture initialisation file\0A -s seed -- seed random init (default: random)\0A -m ploidy -- 1 if haploid, 2 if diploid (default: 2)\0A -p num_proc -- number of processes (CPU) (default: 1)\00"
define void @print_help_snmf() {
%1 = tail call i32 @puts(i8* dereferenceable(1) getelementptr inbounds ([1438 x i8], [1438 x i8]* @str, i64 0, i64 0))
ret void
}