#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*/ TextPrintMsg(char *);
void ShowInfo(void) {
  TextPrintMsg(
      "This GL node builder was originally based on BSP 2.3, which was\n"
      "created from the basic theory stated in DEU5 (OBJECTS.C)\n"
      "\n"
      "Credits should go to :-\n"
      "  Janis Legzdinsh            for fixing up Hexen support\n"
      "  Andy Baker & Marc Pullen   for their invaluable help\n"
      "  Colin Reed & Lee Killough  for creating the original BSP\n"
      "  Matt Fell                  for the Doom Specs\n"
      "  Raphael Quinet             for DEU and the original idea\n"
      "  ... and everyone who helped with the original BSP.\n"
      "\n");
  TextPrintMsg(
      "This program is free software, under the terms of the GNU General\n"
      "Public License, and comes with ABSOLUTELY NO WARRANTY.  See the\n"
      "accompanying documentation for more details.\n"
      "\n"
      "Usage: glbsp [options] input.wad ... [-o output.wad]\n"
      "Or:    glbsp @arg_file.rsp\n"
      "\n"
      "For a list of the available options, type: glbsp -help\n");
}


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

x86 assembly (clang, -O2):
<ShowInfo>:
push   %rax
lea    0xee8(%rip),%rdi
call   1030 <TextPrintMsg@plt>
lea    0x10bb(%rip),%rdi
pop    %rax
jmp    1030 <TextPrintMsg@plt>

LLVM IR (-O0):
@.str = [479 x i8] c"This GL node builder was originally based on BSP 2.3, which was\0Acreated from the basic theory stated in DEU5 (OBJECTS.C)\0A\0ACredits should go to :-\0A Janis Legzdinsh for fixing up Hexen support\0A Andy Baker & Marc Pullen for their invaluable help\0A Colin Reed & Lee Killough for creating the original BSP\0A Matt Fell for the Doom Specs\0A Raphael Quinet for DEU and the original idea\0A ... and everyone who helped with the original BSP.\0A\0A\00"
@.str.1 = [313 x i8] c"This program is free software, under the terms of the GNU General\0APublic License, and comes with ABSOLUTELY NO WARRANTY. See the\0Aaccompanying documentation for more details.\0A\0AUsage: glbsp [options] input.wad ... [-o output.wad]\0AOr: glbsp @arg_file.rsp\0A\0AFor a list of the available options, type: glbsp -help\0A\00"
define void @ShowInfo() {
%1 = call i32 @TextPrintMsg(i8* getelementptr inbounds ([479 x i8], [479 x i8]* @.str, i64 0, i64 0))
%2 = call i32 @TextPrintMsg(i8* getelementptr inbounds ([313 x i8], [313 x i8]* @.str.1, i64 0, i64 0))
ret void
}

LLVM IR (-O2):
@.str = [479 x i8] c"This GL node builder was originally based on BSP 2.3, which was\0Acreated from the basic theory stated in DEU5 (OBJECTS.C)\0A\0ACredits should go to :-\0A Janis Legzdinsh for fixing up Hexen support\0A Andy Baker & Marc Pullen for their invaluable help\0A Colin Reed & Lee Killough for creating the original BSP\0A Matt Fell for the Doom Specs\0A Raphael Quinet for DEU and the original idea\0A ... and everyone who helped with the original BSP.\0A\0A\00"
@.str.1 = [313 x i8] c"This program is free software, under the terms of the GNU General\0APublic License, and comes with ABSOLUTELY NO WARRANTY. See the\0Aaccompanying documentation for more details.\0A\0AUsage: glbsp [options] input.wad ... [-o output.wad]\0AOr: glbsp @arg_file.rsp\0A\0AFor a list of the available options, type: glbsp -help\0A\00"
define void @ShowInfo() {
%1 = tail call i32 @TextPrintMsg(i8* getelementptr inbounds ([479 x i8], [479 x i8]* @.str, i64 0, i64 0))
%2 = tail call i32 @TextPrintMsg(i8* getelementptr inbounds ([313 x i8], [313 x i8]* @.str.1, i64 0, i64 0))
ret void
}