#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 *, char *);
void Usage(void) {
  printf(
      "Usage: mscgen -T <type> [-o <file>] [-i] <infile>\n"
      "       mscgen -l\n"
      "\n"
      "Where:\n"
      " -T <type>   Specifies the output file type, which maybe one of 'png', "
      "'eps',\n"
      "             'svg' or 'ismap'\n"
      " -i <infile> The file from which to read input.  If omitted or "
      "specified as\n"
      "              '-', input will be read from stdin.  The '-i' flag maybe\n"
      "              omitted if <infile> is specified as the last option on "
      "the\n"
      "              command line.\n"
      " -o <file>   Write output to the named file.  This option must be "
      "specified if \n"
      "              input is taken from stdin, otherwise the output filename\n"
      "              defaults to <infile>.<type>.  This may also be specified "
      "as '-'\n"
      "              to write output directly to stdout.\n"
      " -p          Print parsed msc output (for parser debug).\n"
      " -l          Display program licence and exit.\n"
      "\n"
      "Mscgen version %s, Copyright (C) 2010 Michael C McTernan,\n"
      "                                        "
      "Michael.McTernan.2001@cs.bris.ac.uk\n"
      "Mscgen comes with ABSOLUTELY NO WARRANTY.  This is free software, and "
      "you are\n"
      "welcome to redistribute it under certain conditions; type `mscgen -l' "
      "for\n"
      "details.\n"
      "\n"
      "PNG rendering by libgd, www.libgd.org\n"
      "\n",
      "0.20");
}


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

x86 assembly (clang, -O2):
<Usage>:
lea    0xee9(%rip),%rdi
lea    0x1361(%rip),%rsi
jmp    1030 <printf@plt>

LLVM IR (-O0):
@.str = [1151 x i8] c"Usage: mscgen -T <type> [-o <file>] [-i] <infile>\0A mscgen -l\0A\0AWhere:\0A -T <type> Specifies the output file type, which maybe one of 'png', 'eps',\0A 'svg' or 'ismap'\0A -i <infile> The file from which to read input. If omitted or specified as\0A '-', input will be read from stdin. The '-i' flag maybe\0A omitted if <infile> is specified as the last option on the\0A command line.\0A -o <file> Write output to the named file. This option must be specified if \0A input is taken from stdin, otherwise the output filename\0A defaults to <infile>.<type>. This may also be specified as '-'\0A to write output directly to stdout.\0A -p Print parsed msc output (for parser debug).\0A -l Display program licence and exit.\0A\0AMscgen version %s, Copyright (C) 2010 Michael C McTernan,\0A Michael.McTernan.2001@cs.bris.ac.uk\0AMscgen comes with ABSOLUTELY NO WARRANTY. This is free software, and you are\0Awelcome to redistribute it under certain conditions; type `mscgen -l' for\0Adetails.\0A\0APNG rendering by libgd, www.libgd.org\0A\0A\00"
@.str.1 = [5 x i8] c"0.20\00"
define void @Usage() {
%1 = call i32 @printf(i8* getelementptr inbounds ([1151 x i8], [1151 x i8]* @.str, i64 0, i64 0), i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.1, i64 0, i64 0))
ret void
}

LLVM IR (-O2):
@.str = [1151 x i8] c"Usage: mscgen -T <type> [-o <file>] [-i] <infile>\0A mscgen -l\0A\0AWhere:\0A -T <type> Specifies the output file type, which maybe one of 'png', 'eps',\0A 'svg' or 'ismap'\0A -i <infile> The file from which to read input. If omitted or specified as\0A '-', input will be read from stdin. The '-i' flag maybe\0A omitted if <infile> is specified as the last option on the\0A command line.\0A -o <file> Write output to the named file. This option must be specified if \0A input is taken from stdin, otherwise the output filename\0A defaults to <infile>.<type>. This may also be specified as '-'\0A to write output directly to stdout.\0A -p Print parsed msc output (for parser debug).\0A -l Display program licence and exit.\0A\0AMscgen version %s, Copyright (C) 2010 Michael C McTernan,\0A Michael.McTernan.2001@cs.bris.ac.uk\0AMscgen comes with ABSOLUTELY NO WARRANTY. This is free software, and you are\0Awelcome to redistribute it under certain conditions; type `mscgen -l' for\0Adetails.\0A\0APNG rendering by libgd, www.libgd.org\0A\0A\00"
@.str.1 = [5 x i8] c"0.20\00"
define void @Usage() {
%1 = tail call i32 @printf(i8* getelementptr inbounds ([1151 x i8], [1151 x i8]* @.str, i64 0, i64 0), i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.1, i64 0, i64 0))
ret void
}