#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 help_enc() {
  printf("\n Usage: encmars [-options] [inputfile [outputfile]]"
         "\n Supported options:\n"
         " --------------------------------------------------------------------"
         "------\n"
         " -F   Fisher method          (Off)   -X   Hurtgen method             "
         " (Off)\n"
         " -Z   Saupe-Fisher method    (Off)   -S   Saupe method               "
         " (Off)\n"
         " -Y   Saupe-MC method        (Off)   -C   MassCenter method          "
         " (On) \n"
         " -e # Entropy threshold      (8.0)   -d # Domain step                "
         " (4)  \n"
         " -r # Rms threshold          (8.0)   -a # Adaptive factor            "
         " (1.0)\n"
         " -v # Variance threshold     (Inf)   -W # Image width                "
         " (512)\n"
         " -m # Min range size         (4)     -H # Image height               "
         " (512)\n"
         " -M # Max range size         (16)    -l # Matches in a kd-tree query "
         " (50) \n"
         " -f   Full 1^ class search   (Off)   -p # Epsilon in a kd-tree query "
         " (2.0)\n"
         " -s   Full 2^ class search   (Off)   -k # Shrunk factor in MC method "
         " (1.0)\n"
         " -c # Num of Saupe features  (16)    -n # Number of MC classes       "
         " (50) \n"
         " -A # Num of bits for alfa   (4)     -B # Number of bits for beta    "
         " (7)  \n"
         " -y # Max value of alfa      (1.0)   -Q   Output a quadtree image    "
         " (Off)\n"
         " -z # Force alfa to be 0     (0)     -h   Display this help \n\n"
         " Supported image format: raw and pgm\n"
         " Default input file : lena.raw\n"
         " Default output file: lena.ifs\n\n");
}


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

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

LLVM IR (-O0):
@.str = [1300 x i8] c"\0A Usage: encmars [-options] [inputfile [outputfile]]\0A Supported options:\0A --------------------------------------------------------------------------\0A -F Fisher method (Off) -X Hurtgen method (Off)\0A -Z Saupe-Fisher method (Off) -S Saupe method (Off)\0A -Y Saupe-MC method (Off) -C MassCenter method (On) \0A -e # Entropy threshold (8.0) -d # Domain step (4) \0A -r # Rms threshold (8.0) -a # Adaptive factor (1.0)\0A -v # Variance threshold (Inf) -W # Image width (512)\0A -m # Min range size (4) -H # Image height (512)\0A -M # Max range size (16) -l # Matches in a kd-tree query (50) \0A -f Full 1^ class search (Off) -p # Epsilon in a kd-tree query (2.0)\0A -s Full 2^ class search (Off) -k # Shrunk factor in MC method (1.0)\0A -c # Num of Saupe features (16) -n # Number of MC classes (50) \0A -A # Num of bits for alfa (4) -B # Number of bits for beta (7) \0A -y # Max value of alfa (1.0) -Q Output a quadtree image (Off)\0A -z # Force alfa to be 0 (0) -h Display this help \0A\0A Supported image format: raw and pgm\0A Default input file : lena.raw\0A Default output file: lena.ifs\0A\0A\00"
define void @help_enc() {
%1 = call i32 @printf(i8* getelementptr inbounds ([1300 x i8], [1300 x i8]* @.str, i64 0, i64 0))
ret void
}

LLVM IR (-O2):
@str = [1299 x i8] c"\0A Usage: encmars [-options] [inputfile [outputfile]]\0A Supported options:\0A --------------------------------------------------------------------------\0A -F Fisher method (Off) -X Hurtgen method (Off)\0A -Z Saupe-Fisher method (Off) -S Saupe method (Off)\0A -Y Saupe-MC method (Off) -C MassCenter method (On) \0A -e # Entropy threshold (8.0) -d # Domain step (4) \0A -r # Rms threshold (8.0) -a # Adaptive factor (1.0)\0A -v # Variance threshold (Inf) -W # Image width (512)\0A -m # Min range size (4) -H # Image height (512)\0A -M # Max range size (16) -l # Matches in a kd-tree query (50) \0A -f Full 1^ class search (Off) -p # Epsilon in a kd-tree query (2.0)\0A -s Full 2^ class search (Off) -k # Shrunk factor in MC method (1.0)\0A -c # Num of Saupe features (16) -n # Number of MC classes (50) \0A -A # Num of bits for alfa (4) -B # Number of bits for beta (7) \0A -y # Max value of alfa (1.0) -Q Output a quadtree image (Off)\0A -z # Force alfa to be 0 (0) -h Display this help \0A\0A Supported image format: raw and pgm\0A Default input file : lena.raw\0A Default output file: lena.ifs\0A\00"
define void @help_enc() {
%1 = tail call i32 @puts(i8* dereferenceable(1) getelementptr inbounds ([1299 x i8], [1299 x i8]* @str, i64 0, i64 0))
ret void
}