#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*/ puts(char *);
int realbay_help_createindex(int argc, const char **argv) {
  puts(" USAGE: realbay createindex <csv> <output> [OPTIONS] \n"
       " \n"
       " The 'createindex' command creates a new searchable index from \n"
       " an input CSV file. The CSV file is expected to have two columns, \n"
       " one which is a 'title' that will be scanned for words and the other \n"
       " is the infohash of the torrent. An example CSV: \n"
       " \n"
       "  'Ubuntu 14.10 64-bit Desktop', B415C913643 ... \n"
       "  'Ubuntu 14.04 LTS 64-bit Desktop', CB84CCC1... \n"
       " \n"
       " The size of the output file is based on the number of rows in the "
       "input \n"
       " CSV file. The total size of the index will be (n * 64) + (m * 512) "
       "where n \n"
       " is the number of torrents to be indexed and m is the number of pieces "
       "the \n"
       " index is divided into. \n"
       " \n");
  return 0;
}


x86 assembly (clang, -O0):
<realbay_help_createindex>:
push   %rbp
mov    %rsp,%rbp
sub    $0x10,%rsp
mov    %edi,-0x4(%rbp)
mov    %rsi,-0x10(%rbp)
lea    0xeda(%rip),%rdi
call   1030 <puts@plt>
xor    %eax,%eax
add    $0x10,%rsp
pop    %rbp
ret

x86 assembly (clang, -O2):
<realbay_help_createindex>:
push   %rax
lea    0xee8(%rip),%rdi
call   1030 <puts@plt>
xor    %eax,%eax
pop    %rcx
ret

LLVM IR (-O0):
@.str = [666 x i8] c" USAGE: realbay createindex <csv> <output> [OPTIONS] \0A \0A The 'createindex' command creates a new searchable index from \0A an input CSV file. The CSV file is expected to have two columns, \0A one which is a 'title' that will be scanned for words and the other \0A is the infohash of the torrent. An example CSV: \0A \0A 'Ubuntu 14.10 64-bit Desktop', B415C913643 ... \0A 'Ubuntu 14.04 LTS 64-bit Desktop', CB84CCC1... \0A \0A The size of the output file is based on the number of rows in the input \0A CSV file. The total size of the index will be (n * 64) + (m * 512) where n \0A is the number of torrents to be indexed and m is the number of pieces the \0A index is divided into. \0A \0A\00"
define i32 @realbay_help_createindex(i32 %0, i8** %1) {
%3 = alloca i32
%4 = alloca i8**
store i32 %0, i32* %3
store i8** %1, i8*** %4
%5 = call i32 @puts(i8* getelementptr inbounds ([666 x i8], [666 x i8]* @.str, i64 0, i64 0))
ret i32 0
}

LLVM IR (-O2):
@.str = [666 x i8] c" USAGE: realbay createindex <csv> <output> [OPTIONS] \0A \0A The 'createindex' command creates a new searchable index from \0A an input CSV file. The CSV file is expected to have two columns, \0A one which is a 'title' that will be scanned for words and the other \0A is the infohash of the torrent. An example CSV: \0A \0A 'Ubuntu 14.10 64-bit Desktop', B415C913643 ... \0A 'Ubuntu 14.04 LTS 64-bit Desktop', CB84CCC1... \0A \0A The size of the output file is based on the number of rows in the input \0A CSV file. The total size of the index will be (n * 64) + (m * 512) where n \0A is the number of torrents to be indexed and m is the number of pieces the \0A index is divided into. \0A \0A\00"
define i32 @realbay_help_createindex(i32 %0, i8** nocapture readnone %1) {
%3 = tail call i32 @puts(i8* dereferenceable(1) getelementptr inbounds ([666 x i8], [666 x i8]* @.str, i64 0, i64 0))
ret i32 0
}