#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 usage(void) {
  printf(
      "Usage: md2html [OPTION]... [FILE]\n"
      "Convert input FILE (or standard input) in Markdown format to HTML.\n"
      "\n"
      "General options:\n"
      "  -o  --output=FILE    Output file (default is standard output)\n"
      "  -f, --full-html      Generate full HTML document, including header\n"
      "  -s, --stat           Measure time of input parsing\n"
      "  -h, --help           Display this help and exit\n"
      "  -v, --version        Display version and exit\n"
      "\n"
      "Markdown dialect options:\n"
      "(note these are equivalent to some combinations of the flags below)\n"
      "      --commonmark     CommonMark (this is default)\n"
      "      --github         Github Flavored Markdown\n"
      "\n"
      "Markdown extension options:\n"
      "      --fcollapse-whitespace\n"
      "                       Collapse non-trivial whitespace\n"
      "      --flatex-math    Enable LaTeX style mathematics spans\n"
      "      --fpermissive-atx-headers\n"
      "                       Allow ATX headers without delimiting space\n"
      "      --fpermissive-url-autolinks\n"
      "                       Allow URL autolinks without '<', '>'\n"
      "      --fpermissive-www-autolinks\n"
      "                       Allow WWW autolinks without any scheme (e.g. "
      "'www.example.com')\n"
      "      --fpermissive-email-autolinks  \n"
      "                       Allow e-mail autolinks without '<', '>' and "
      "'mailto:'\n"
      "      --fpermissive-autolinks\n"
      "                       Same as --fpermissive-url-autolinks "
      "--fpermissive-www-autolinks\n"
      "                       --fpermissive-email-autolinks\n"
      "      --fstrikethrough Enable strike-through spans\n"
      "      --ftables        Enable tables\n"
      "      --ftasklists     Enable task lists\n"
      "      --funderline     Enable underline spans\n"
      "      --fwiki-links    Enable wiki links\n"
      "\n"
      "Markdown suppression options:\n"
      "      --fno-html-blocks\n"
      "                       Disable raw HTML blocks\n"
      "      --fno-html-spans\n"
      "                       Disable raw HTML spans\n"
      "      --fno-html       Same as --fno-html-blocks --fno-html-spans\n"
      "      --fno-indented-code\n"
      "                       Disable indented code blocks\n"
      "\n"
      "HTML generator options:\n"
      "      --fverbatim-entities\n"
      "                       Do not translate entities\n"
      "\n");
}


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

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

LLVM IR (-O0):
@.str = [2003 x i8] c"Usage: md2html [OPTION]... [FILE]\0AConvert input FILE (or standard input) in Markdown format to HTML.\0A\0AGeneral options:\0A -o --output=FILE Output file (default is standard output)\0A -f, --full-html Generate full HTML document, including header\0A -s, --stat Measure time of input parsing\0A -h, --help Display this help and exit\0A -v, --version Display version and exit\0A\0AMarkdown dialect options:\0A(note these are equivalent to some combinations of the flags below)\0A --commonmark CommonMark (this is default)\0A --github Github Flavored Markdown\0A\0AMarkdown extension options:\0A --fcollapse-whitespace\0A Collapse non-trivial whitespace\0A --flatex-math Enable LaTeX style mathematics spans\0A --fpermissive-atx-headers\0A Allow ATX headers without delimiting space\0A --fpermissive-url-autolinks\0A Allow URL autolinks without '<', '>'\0A --fpermissive-www-autolinks\0A Allow WWW autolinks without any scheme (e.g. 'www.example.com')\0A --fpermissive-email-autolinks \0A Allow e-mail autolinks without '<', '>' and 'mailto:'\0A --fpermissive-autolinks\0A Same as --fpermissive-url-autolinks --fpermissive-www-autolinks\0A --fpermissive-email-autolinks\0A --fstrikethrough Enable strike-through spans\0A --ftables Enable tables\0A --ftasklists Enable task lists\0A --funderline Enable underline spans\0A --fwiki-links Enable wiki links\0A\0AMarkdown suppression options:\0A --fno-html-blocks\0A Disable raw HTML blocks\0A --fno-html-spans\0A Disable raw HTML spans\0A --fno-html Same as --fno-html-blocks --fno-html-spans\0A --fno-indented-code\0A Disable indented code blocks\0A\0AHTML generator options:\0A --fverbatim-entities\0A Do not translate entities\0A\0A\00"
define void @usage() {
%1 = call i32 @printf(i8* getelementptr inbounds ([2003 x i8], [2003 x i8]* @.str, i64 0, i64 0))
ret void
}

LLVM IR (-O2):
@str = [2002 x i8] c"Usage: md2html [OPTION]... [FILE]\0AConvert input FILE (or standard input) in Markdown format to HTML.\0A\0AGeneral options:\0A -o --output=FILE Output file (default is standard output)\0A -f, --full-html Generate full HTML document, including header\0A -s, --stat Measure time of input parsing\0A -h, --help Display this help and exit\0A -v, --version Display version and exit\0A\0AMarkdown dialect options:\0A(note these are equivalent to some combinations of the flags below)\0A --commonmark CommonMark (this is default)\0A --github Github Flavored Markdown\0A\0AMarkdown extension options:\0A --fcollapse-whitespace\0A Collapse non-trivial whitespace\0A --flatex-math Enable LaTeX style mathematics spans\0A --fpermissive-atx-headers\0A Allow ATX headers without delimiting space\0A --fpermissive-url-autolinks\0A Allow URL autolinks without '<', '>'\0A --fpermissive-www-autolinks\0A Allow WWW autolinks without any scheme (e.g. 'www.example.com')\0A --fpermissive-email-autolinks \0A Allow e-mail autolinks without '<', '>' and 'mailto:'\0A --fpermissive-autolinks\0A Same as --fpermissive-url-autolinks --fpermissive-www-autolinks\0A --fpermissive-email-autolinks\0A --fstrikethrough Enable strike-through spans\0A --ftables Enable tables\0A --ftasklists Enable task lists\0A --funderline Enable underline spans\0A --fwiki-links Enable wiki links\0A\0AMarkdown suppression options:\0A --fno-html-blocks\0A Disable raw HTML blocks\0A --fno-html-spans\0A Disable raw HTML spans\0A --fno-html Same as --fno-html-blocks --fno-html-spans\0A --fno-indented-code\0A Disable indented code blocks\0A\0AHTML generator options:\0A --fverbatim-entities\0A Do not translate entities\0A\00"
define void @usage() {
%1 = tail call i32 @puts(i8* dereferenceable(1) getelementptr inbounds ([2002 x i8], [2002 x i8]* @str, i64 0, i64 0))
ret void
}