#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);
int /*<<< orphan*/ fprintf(int /*<<< orphan*/, char *);
int /*<<< orphan*/ stderr;
int usage(void) {
  fprintf(
      stderr,
      "Usage: lltop [OPTION]... FILESYSTEM\n"
      "  or:  lltop [OPTION]... -l SERVER...\n"
      "Report load by job for Lustre FILESYSTEM or SERVER(s).\n"
      "\n"
      "Mandatory arguments to long options are mandatory for short options "
      "too.\n"
      "  -f, --fqdn               use fully qualified domain names for "
      "clients\n"
      "  -g, --get-host=COMMAND   use COMMAND for reverse DNS lookups\n"
      "  -h, --help               display this help and exit\n"
      "  -i, --interval=NUMBER    report load over NUMBER seconds\n"
      "  -j, --get-job=COMMAND    use COMMAND for job lookup\n"
      "  -l, --server-list        report load on servers given as arguments\n"
      "  -m, --job-map=COMMAND    use COMMAND to get job map\n"
      "  -n, --limit=NUMBER       limit output to NUMBER jobs\n"
      "      --no-header          do not display header\n"
      "      --lltop-serv=PATH    use lltop-serv at PATH on servers\n"
      "      --remote-shell=PATH  use remote shell at PATH to execute "
      "lltop-serv\n"
      "      --execd-spool=PATH   use execd_spool directory PATH for job "
      "lookup\n"
      "\n"
      "lltop GitHub repository: <https://github.com/jhammond/lltop>\n");
  exit(1);
}


x86 assembly (clang, -O0):
<usage>:
push   %rbp
mov    %rsp,%rbp
mov    0x2eb5(%rip),%rax
mov    (%rax),%edi
lea    0xecc(%rip),%rsi
call   1030 <fprintf@plt>
mov    $0x1,%edi
call   1040 <exit@plt>

x86 assembly (clang, -O2):
<usage>:
push   %rax
mov    0x2eb8(%rip),%rax
mov    (%rax),%edi
lea    0xecf(%rip),%rsi
call   1030 <fprintf@plt>
mov    $0x1,%edi
call   1040 <exit@plt>

LLVM IR (-O0):
@stderr = global i32 0
@.str = [1003 x i8] c"Usage: lltop [OPTION]... FILESYSTEM\0A or: lltop [OPTION]... -l SERVER...\0AReport load by job for Lustre FILESYSTEM or SERVER(s).\0A\0AMandatory arguments to long options are mandatory for short options too.\0A -f, --fqdn use fully qualified domain names for clients\0A -g, --get-host=COMMAND use COMMAND for reverse DNS lookups\0A -h, --help display this help and exit\0A -i, --interval=NUMBER report load over NUMBER seconds\0A -j, --get-job=COMMAND use COMMAND for job lookup\0A -l, --server-list report load on servers given as arguments\0A -m, --job-map=COMMAND use COMMAND to get job map\0A -n, --limit=NUMBER limit output to NUMBER jobs\0A --no-header do not display header\0A --lltop-serv=PATH use lltop-serv at PATH on servers\0A --remote-shell=PATH use remote shell at PATH to execute lltop-serv\0A --execd-spool=PATH use execd_spool directory PATH for job lookup\0A\0Alltop GitHub repository: <https://github.com/jhammond/lltop>\0A\00"
define i32 @usage() {
%1 = load i32, i32* @stderr
%2 = call i32 @fprintf(i32 %1, i8* getelementptr inbounds ([1003 x i8], [1003 x i8]* @.str, i64 0, i64 0))
%3 = call i32 @exit(i32 1)
unreachable
}

LLVM IR (-O2):
@stderr = global i32 0
@.str = [1003 x i8] c"Usage: lltop [OPTION]... FILESYSTEM\0A or: lltop [OPTION]... -l SERVER...\0AReport load by job for Lustre FILESYSTEM or SERVER(s).\0A\0AMandatory arguments to long options are mandatory for short options too.\0A -f, --fqdn use fully qualified domain names for clients\0A -g, --get-host=COMMAND use COMMAND for reverse DNS lookups\0A -h, --help display this help and exit\0A -i, --interval=NUMBER report load over NUMBER seconds\0A -j, --get-job=COMMAND use COMMAND for job lookup\0A -l, --server-list report load on servers given as arguments\0A -m, --job-map=COMMAND use COMMAND to get job map\0A -n, --limit=NUMBER limit output to NUMBER jobs\0A --no-header do not display header\0A --lltop-serv=PATH use lltop-serv at PATH on servers\0A --remote-shell=PATH use remote shell at PATH to execute lltop-serv\0A --execd-spool=PATH use execd_spool directory PATH for job lookup\0A\0Alltop GitHub repository: <https://github.com/jhammond/lltop>\0A\00"
define i32 @usage() {
%1 = load i32, i32* @stderr
%2 = tail call i32 @fprintf(i32 %1, i8* getelementptr inbounds ([1003 x i8], [1003 x i8]* @.str, i64 0, i64 0))
%3 = tail call i32 @exit(i32 1)
unreachable
}