#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*/ exit(int);
int /*<<< orphan*/ printf(char *);
void print_help() {
  printf(
      "\nProgram to call peaks from genomic and other data.\n\nMandatory "
      "command line options:\n-i Path to input file\n\nOptional command line "
      "options taking no arguments:\n-e Paired end reads\n-V New peak version, "
      "extending peaks only as far as evidence permits\n-M MAQ format "
      "[default]\n-B BED format\n-E ELAND format\n-S SAM format\n-F BAM "
      "format\n-C count format\n-z File is gzipped\n-O Create files of nearest "
      "features with comparison file (-a)\n-g Overlap mode for two bed "
      "files\n-T Bootstrap input\n-y Quiet mode, only print warnings\n-A "
      "Append output file\n-H Suppress headers\n-v Print version number and "
      "exit\n-h This help page\n\nOptional command line options taking "
      "arguments [defaults in square brackets]:\n-o Path to output file [Input "
      "file.'.SWEMBL.4.0.txt']\n-r Path to reference (Input) file\n-w Path to "
      "wiggle track file\n-a Path to comparison file\n-s Path to coordinate "
      "file\n-G Number of rows in coordinate file [200]\n-b Penalty applied to "
      "read count [0]\n-p Penalty applied to a gap of one base pair [0.01]\n-l "
      "Read length [calculated from first read in file for BED and MAQ "
      "formats]\n-f Fragment length for extending fragments [Read length]\n-d "
      "Gap at which penalty per base pair increases [70]\n-P Penalty per base "
      "pair applied after gap specifed above [0.02]\n-t Threshold value for "
      "number of sample reads starting at one base pair [5]\n-j Threshold "
      "value for number of reference reads starting at one base pair [0 = -t "
      "value]\n-q Mapping quality filter value (MAQ, SAM or BAM) [0]\n-m "
      "Minimum read count in a peak [8]\n-c Minimum score for a peak [0]\n-n "
      "Maximum score threshold [0 = infinite]\n-N Number of input reads "
      "[0]\n-R Relative background (depends on -N) [0]\n-K Number of reference "
      "reads [0]\n-x Penalty factor for reference reads [1]\n-u Proportion of "
      "reads sampled [1]\n-D Random seed (only used for sampling and "
      "bootstrapping) [time]\n\n");
  exit(1);
}


x86 assembly (clang, -O0):
<print_help>:
push   %rbp
mov    %rsp,%rbp
lea    0xed5(%rip),%rdi
call   1030 <printf@plt>
mov    $0x1,%edi
call   1040 <exit@plt>

x86 assembly (clang, -O2):
<print_help>:
push   %rax
lea    0xed8(%rip),%rdi
call   1030 <puts@plt>
mov    $0x1,%edi
call   1040 <exit@plt>

LLVM IR (-O0):
@.str = [1820 x i8] c"\0AProgram to call peaks from genomic and other data.\0A\0AMandatory command line options:\0A-i Path to input file\0A\0AOptional command line options taking no arguments:\0A-e Paired end reads\0A-V New peak version, extending peaks only as far as evidence permits\0A-M MAQ format [default]\0A-B BED format\0A-E ELAND format\0A-S SAM format\0A-F BAM format\0A-C count format\0A-z File is gzipped\0A-O Create files of nearest features with comparison file (-a)\0A-g Overlap mode for two bed files\0A-T Bootstrap input\0A-y Quiet mode, only print warnings\0A-A Append output file\0A-H Suppress headers\0A-v Print version number and exit\0A-h This help page\0A\0AOptional command line options taking arguments [defaults in square brackets]:\0A-o Path to output file [Input file.'.SWEMBL.4.0.txt']\0A-r Path to reference (Input) file\0A-w Path to wiggle track file\0A-a Path to comparison file\0A-s Path to coordinate file\0A-G Number of rows in coordinate file [200]\0A-b Penalty applied to read count [0]\0A-p Penalty applied to a gap of one base pair [0.01]\0A-l Read length [calculated from first read in file for BED and MAQ formats]\0A-f Fragment length for extending fragments [Read length]\0A-d Gap at which penalty per base pair increases [70]\0A-P Penalty per base pair applied after gap specifed above [0.02]\0A-t Threshold value for number of sample reads starting at one base pair [5]\0A-j Threshold value for number of reference reads starting at one base pair [0 = -t value]\0A-q Mapping quality filter value (MAQ, SAM or BAM) [0]\0A-m Minimum read count in a peak [8]\0A-c Minimum score for a peak [0]\0A-n Maximum score threshold [0 = infinite]\0A-N Number of input reads [0]\0A-R Relative background (depends on -N) [0]\0A-K Number of reference reads [0]\0A-x Penalty factor for reference reads [1]\0A-u Proportion of reads sampled [1]\0A-D Random seed (only used for sampling and bootstrapping) [time]\0A\0A\00"
define void @print_help() {
%1 = call i32 @printf(i8* getelementptr inbounds ([1820 x i8], [1820 x i8]* @.str, i64 0, i64 0))
%2 = call i32 @exit(i32 1)
unreachable
}

LLVM IR (-O2):
@str = [1819 x i8] c"\0AProgram to call peaks from genomic and other data.\0A\0AMandatory command line options:\0A-i Path to input file\0A\0AOptional command line options taking no arguments:\0A-e Paired end reads\0A-V New peak version, extending peaks only as far as evidence permits\0A-M MAQ format [default]\0A-B BED format\0A-E ELAND format\0A-S SAM format\0A-F BAM format\0A-C count format\0A-z File is gzipped\0A-O Create files of nearest features with comparison file (-a)\0A-g Overlap mode for two bed files\0A-T Bootstrap input\0A-y Quiet mode, only print warnings\0A-A Append output file\0A-H Suppress headers\0A-v Print version number and exit\0A-h This help page\0A\0AOptional command line options taking arguments [defaults in square brackets]:\0A-o Path to output file [Input file.'.SWEMBL.4.0.txt']\0A-r Path to reference (Input) file\0A-w Path to wiggle track file\0A-a Path to comparison file\0A-s Path to coordinate file\0A-G Number of rows in coordinate file [200]\0A-b Penalty applied to read count [0]\0A-p Penalty applied to a gap of one base pair [0.01]\0A-l Read length [calculated from first read in file for BED and MAQ formats]\0A-f Fragment length for extending fragments [Read length]\0A-d Gap at which penalty per base pair increases [70]\0A-P Penalty per base pair applied after gap specifed above [0.02]\0A-t Threshold value for number of sample reads starting at one base pair [5]\0A-j Threshold value for number of reference reads starting at one base pair [0 = -t value]\0A-q Mapping quality filter value (MAQ, SAM or BAM) [0]\0A-m Minimum read count in a peak [8]\0A-c Minimum score for a peak [0]\0A-n Maximum score threshold [0 = infinite]\0A-N Number of input reads [0]\0A-R Relative background (depends on -N) [0]\0A-K Number of reference reads [0]\0A-x Penalty factor for reference reads [1]\0A-u Proportion of reads sampled [1]\0A-D Random seed (only used for sampling and bootstrapping) [time]\0A\00"
define void @print_help() {
%1 = tail call i32 @puts(i8* dereferenceable(1) getelementptr inbounds ([1819 x i8], [1819 x i8]* @str, i64 0, i64 0))
%2 = tail call i32 @exit(i32 1)
unreachable
}