#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 /*<<< orphan*/);
int /*<<< orphan*/ printf(char *);
void usage(void) {
  printf("\nusage: chucky [-hbuot]\n\n");
  printf(
      "This program reads /var/db/pkg/local.sqlite and compares install "
      "timestamp with\ndate in $FreeBSD header in the Makefile of the port. If "
      "there is no $FreeBSD\nheader then it is assumed to be a beta port. \n\n "
      "Command line switches: \n\t\t-u\tshow ports with update status only "
      "\n\t\t-o\tshow ports with current status only \n\t\t-b\tshow ports with "
      "beta status only \n\t\t-t\tshow timestamps (debug, etc)\n\t\t-a\tcreate "
      "shar of files (useful with -b). output to stdout\n\t\t-h\thelp "
      "\n\nNOTE: shar files are created with absolute path (ie "
      "/usr/ports/src/dir)\nso executing them will restore to that path. "
      "Multiple shars are concatenated\nby chucky stripping the 'exit' command "
      "from the output. (ie there is no 'exit'\nin the shar output. the shar "
      "output is to stdout, if you want to save:\n\n# chucky -b -a > "
      "save.shar\n\nThis will save all the ports marked 'beta' in the "
      "save.shar archive,\nin the cwd \n\n\n");
  exit(0);
}


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

x86 assembly (clang, -O2):
<usage>:
push   %rax
lea    0xed8(%rip),%rdi
call   1030 <puts@plt>
lea    0xee5(%rip),%rdi
call   1030 <puts@plt>
xor    %edi,%edi
call   1040 <exit@plt>

LLVM IR (-O0):
@.str = [26 x i8] c"\0Ausage: chucky [-hbuot]\0A\0A\00"
@.str.1 = [870 x i8] c"This program reads /var/db/pkg/local.sqlite and compares install timestamp with\0Adate in $FreeBSD header in the Makefile of the port. If there is no $FreeBSD\0Aheader then it is assumed to be a beta port. \0A\0A Command line switches: \0A\09\09-u\09show ports with update status only \0A\09\09-o\09show ports with current status only \0A\09\09-b\09show ports with beta status only \0A\09\09-t\09show timestamps (debug, etc)\0A\09\09-a\09create shar of files (useful with -b). output to stdout\0A\09\09-h\09help \0A\0ANOTE: shar files are created with absolute path (ie /usr/ports/src/dir)\0Aso executing them will restore to that path. Multiple shars are concatenated\0Aby chucky stripping the 'exit' command from the output. (ie there is no 'exit'\0Ain the shar output. the shar output is to stdout, if you want to save:\0A\0A# chucky -b -a > save.shar\0A\0AThis will save all the ports marked 'beta' in the save.shar archive,\0Ain the cwd \0A\0A\0A\00"
define void @usage() {
%1 = call i32 @printf(i8* getelementptr inbounds ([26 x i8], [26 x i8]* @.str, i64 0, i64 0))
%2 = call i32 @printf(i8* getelementptr inbounds ([870 x i8], [870 x i8]* @.str.1, i64 0, i64 0))
%3 = call i32 @exit(i32 0)
unreachable
}

LLVM IR (-O2):
@str = [25 x i8] c"\0Ausage: chucky [-hbuot]\0A\00"
@str.2 = [869 x i8] c"This program reads /var/db/pkg/local.sqlite and compares install timestamp with\0Adate in $FreeBSD header in the Makefile of the port. If there is no $FreeBSD\0Aheader then it is assumed to be a beta port. \0A\0A Command line switches: \0A\09\09-u\09show ports with update status only \0A\09\09-o\09show ports with current status only \0A\09\09-b\09show ports with beta status only \0A\09\09-t\09show timestamps (debug, etc)\0A\09\09-a\09create shar of files (useful with -b). output to stdout\0A\09\09-h\09help \0A\0ANOTE: shar files are created with absolute path (ie /usr/ports/src/dir)\0Aso executing them will restore to that path. Multiple shars are concatenated\0Aby chucky stripping the 'exit' command from the output. (ie there is no 'exit'\0Ain the shar output. the shar output is to stdout, if you want to save:\0A\0A# chucky -b -a > save.shar\0A\0AThis will save all the ports marked 'beta' in the save.shar archive,\0Ain the cwd \0A\0A\00"
define void @usage() {
%1 = tail call i32 @puts(i8* dereferenceable(1) getelementptr inbounds ([25 x i8], [25 x i8]* @str, i64 0, i64 0))
%2 = tail call i32 @puts(i8* dereferenceable(1) getelementptr inbounds ([869 x i8], [869 x i8]* @str.2, i64 0, i64 0))
%3 = tail call i32 @exit(i32 0)
unreachable
}