#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 *, char *, char *, char *,
                           char *, char *, char *, char *, char *, char *,
                           char *, char *, char *, char *, char *);
int /*<<< orphan*/ stderr;
void acis_pix_dist_complain(void) {
  fprintf(
      stderr, "%s\n%s\n%s\n%s\n%s\n%s\n%s\n%s\n%s\n%s\n%s\n%s\n%s\n%s\n\n",
      "usage: cpix_dist -e <energy> (-n <depl_events>| -N <photons>)",
      "    [-ne | -r <rms noise (electrons)>][-t <event threshold (ADU)>]",
      "    [-g <gain (eV per ADU)>][-o <output filename>][-T <kelvin>][-z "
      "<z1><z2>]",
      "    [-s <sensor number [0|1]>][-c <chip number [0|1|2|3]>][-k <echo "
      "factor>]",
      "    [-wc (CS_wall)<w><d1><d2><d3>][-wk (CLK_wall)<w><d1><d2><d3>]",
      "    [-d <depl.depth>][-D <resid. dferror (e-)>][-l <electron_loss>]",
      "    [-m <diagnostic mode [opticaldepthmap [dim]|eventmaps|rv_file]>]",
      "    [-f <clock deflection factor>][-B (backside option)][-b <bs Si>]",
      "    [-x (excl. fluorescence & escape features)][-C (excl. fs partial "
      "evts)]",
      "    [-Y <Si Fluorescent Yield>][-br <backside_reflection_coefficient>]",
      "    [-L <bs diff.length>][-F (`fully depleted')][-P <channel "
      "potential>]",
      "    [-kT <Schottky barrier `ff' thresh>][-M "
      "<minimum_delta_scale_factor>]",
      "    [-S <drift_sigma_scale>][-R <resonance_collisions>]",
      "NOTE: specifying a sensor and a chip will override any gains/noises "
      "specified.");
  exit(1);
}


x86 assembly (clang, -O0):
<acis_pix_dist_complain>:
push   %rbp
mov    %rsp,%rbp
push   %r15
push   %r14
push   %r13
push   %r12
push   %rbx
sub    $0x68,%rsp
mov    0x2ea8(%rip),%rax
mov    (%rax),%edi
lea    0xebf(%rip),%rsi
lea    0xee4(%rip),%rdx
lea    0xf1b(%rip),%rcx
lea    0xf57(%rip),%r8
lea    0xf9d(%rip),%r9
lea    0xfe3(%rip),%rax
mov    %rax,-0x40(%rbp)
lea    0x101a(%rip),%rax
mov    %rax,-0x38(%rbp)
lea    0x1053(%rip),%r13
lea    0x1091(%rip),%r12
lea    0x10cf(%rip),%r15
lea    0x1114(%rip),%r14
lea    0x1154(%rip),%rbx
lea    0x1196(%rip),%r11
lea    0x11d9(%rip),%r10
lea    0x120a(%rip),%rax
mov    %rax,-0x30(%rbp)
mov    -0x40(%rbp),%rax
mov    %rax,(%rsp)
mov    -0x38(%rbp),%rax
mov    %rax,0x8(%rsp)
mov    -0x30(%rbp),%rax
mov    %r13,0x10(%rsp)
mov    %r12,0x18(%rsp)
mov    %r15,0x20(%rsp)
mov    %r14,0x28(%rsp)
mov    %rbx,0x30(%rsp)
mov    %r11,0x38(%rsp)
mov    %r10,0x40(%rsp)
mov    %rax,0x48(%rsp)
call   1030 <fprintf@plt>
mov    $0x1,%edi
call   1040 <exit@plt>

x86 assembly (clang, -O2):
<acis_pix_dist_complain>:
push   %rbp
push   %r15
push   %r14
push   %r13
push   %r12
push   %rbx
push   %rax
mov    0x2eae(%rip),%rax
mov    (%rax),%edi
lea    0x127a(%rip),%rax
lea    0x123b(%rip),%r10
lea    0x11ea(%rip),%r11
lea    0x119a(%rip),%rbx
lea    0x114c(%rip),%r14
lea    0x10f9(%rip),%r15
lea    0x10ad(%rip),%r12
lea    0x1061(%rip),%r13
lea    0x1016(%rip),%rbp
lea    0xe86(%rip),%rsi
lea    0xeab(%rip),%rdx
lea    0xee2(%rip),%rcx
lea    0xf1e(%rip),%r8
lea    0xf64(%rip),%r9
push   %rax
push   %r10
push   %r11
push   %rbx
push   %r14
push   %r15
push   %r12
push   %r13
push   %rbp
lea    0xf9b(%rip),%rax
push   %rax
call   1030 <fprintf@plt>
add    $0x50,%rsp
mov    $0x1,%edi
call   1040 <exit@plt>

LLVM IR (-O0):
@stderr = global i32 0
@.str = [44 x i8] c"%s\0A%s\0A%s\0A%s\0A%s\0A%s\0A%s\0A%s\0A%s\0A%s\0A%s\0A%s\0A%s\0A%s\0A\0A\00"
@.str.1 = [62 x i8] c"usage: cpix_dist -e <energy> (-n <depl_events>| -N <photons>)\00"
@.str.2 = [67 x i8] c" [-ne | -r <rms noise (electrons)>][-t <event threshold (ADU)>]\00"
@.str.3 = [77 x i8] c" [-g <gain (eV per ADU)>][-o <output filename>][-T <kelvin>][-z <z1><z2>]\00"
@.str.4 = [77 x i8] c" [-s <sensor number [0|1]>][-c <chip number [0|1|2|3]>][-k <echo factor>]\00"
@.str.5 = [66 x i8] c" [-wc (CS_wall)<w><d1><d2><d3>][-wk (CLK_wall)<w><d1><d2><d3>]\00"
@.str.6 = [68 x i8] c" [-d <depl.depth>][-D <resid. dferror (e-)>][-l <electron_loss>]\00"
@.str.7 = [69 x i8] c" [-m <diagnostic mode [opticaldepthmap [dim]|eventmaps|rv_file]>]\00"
@.str.8 = [69 x i8] c" [-f <clock deflection factor>][-B (backside option)][-b <bs Si>]\00"
@.str.9 = [76 x i8] c" [-x (excl. fluorescence & escape features)][-C (excl. fs partial evts)]\00"
@.str.10 = [71 x i8] c" [-Y <Si Fluorescent Yield>][-br <backside_reflection_coefficient>]\00"
@.str.11 = [73 x i8] c" [-L <bs diff.length>][-F (`fully depleted')][-P <channel potential>]\00"
@.str.12 = [74 x i8] c" [-kT <Schottky barrier `ff' thresh>][-M <minimum_delta_scale_factor>]\00"
@.str.13 = [56 x i8] c" [-S <drift_sigma_scale>][-R <resonance_collisions>]\00"
@.str.14 = [79 x i8] c"NOTE: specifying a sensor and a chip will override any gains/noises specified.\00"
define void @acis_pix_dist_complain() {
%1 = load i32, i32* @stderr
%2 = call i32 @fprintf(i32 %1, i8* getelementptr inbounds ([44 x i8], [44 x i8]* @.str, i64 0, i64 0), i8* getelementptr inbounds ([62 x i8], [62 x i8]* @.str.1, i64 0, i64 0), i8* getelementptr inbounds ([67 x i8], [67 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([77 x i8], [77 x i8]* @.str.3, i64 0, i64 0), i8* getelementptr inbounds ([77 x i8], [77 x i8]* @.str.4, i64 0, i64 0), i8* getelementptr inbounds ([66 x i8], [66 x i8]* @.str.5, i64 0, i64 0), i8* getelementptr inbounds ([68 x i8], [68 x i8]* @.str.6, i64 0, i64 0), i8* getelementptr inbounds ([69 x i8], [69 x i8]* @.str.7, i64 0, i64 0), i8* getelementptr inbounds ([69 x i8], [69 x i8]* @.str.8, i64 0, i64 0), i8* getelementptr inbounds ([76 x i8], [76 x i8]* @.str.9, i64 0, i64 0), i8* getelementptr inbounds ([71 x i8], [71 x i8]* @.str.10, i64 0, i64 0), i8* getelementptr inbounds ([73 x i8], [73 x i8]* @.str.11, i64 0, i64 0), i8* getelementptr inbounds ([74 x i8], [74 x i8]* @.str.12, i64 0, i64 0), i8* getelementptr inbounds ([56 x i8], [56 x i8]* @.str.13, i64 0, i64 0), i8* getelementptr inbounds ([79 x i8], [79 x i8]* @.str.14, i64 0, i64 0))
%3 = call i32 @exit(i32 1)
unreachable
}

LLVM IR (-O2):
@stderr = global i32 0
@.str = [44 x i8] c"%s\0A%s\0A%s\0A%s\0A%s\0A%s\0A%s\0A%s\0A%s\0A%s\0A%s\0A%s\0A%s\0A%s\0A\0A\00"
@.str.1 = [62 x i8] c"usage: cpix_dist -e <energy> (-n <depl_events>| -N <photons>)\00"
@.str.2 = [67 x i8] c" [-ne | -r <rms noise (electrons)>][-t <event threshold (ADU)>]\00"
@.str.3 = [77 x i8] c" [-g <gain (eV per ADU)>][-o <output filename>][-T <kelvin>][-z <z1><z2>]\00"
@.str.4 = [77 x i8] c" [-s <sensor number [0|1]>][-c <chip number [0|1|2|3]>][-k <echo factor>]\00"
@.str.5 = [66 x i8] c" [-wc (CS_wall)<w><d1><d2><d3>][-wk (CLK_wall)<w><d1><d2><d3>]\00"
@.str.6 = [68 x i8] c" [-d <depl.depth>][-D <resid. dferror (e-)>][-l <electron_loss>]\00"
@.str.7 = [69 x i8] c" [-m <diagnostic mode [opticaldepthmap [dim]|eventmaps|rv_file]>]\00"
@.str.8 = [69 x i8] c" [-f <clock deflection factor>][-B (backside option)][-b <bs Si>]\00"
@.str.9 = [76 x i8] c" [-x (excl. fluorescence & escape features)][-C (excl. fs partial evts)]\00"
@.str.10 = [71 x i8] c" [-Y <Si Fluorescent Yield>][-br <backside_reflection_coefficient>]\00"
@.str.11 = [73 x i8] c" [-L <bs diff.length>][-F (`fully depleted')][-P <channel potential>]\00"
@.str.12 = [74 x i8] c" [-kT <Schottky barrier `ff' thresh>][-M <minimum_delta_scale_factor>]\00"
@.str.13 = [56 x i8] c" [-S <drift_sigma_scale>][-R <resonance_collisions>]\00"
@.str.14 = [79 x i8] c"NOTE: specifying a sensor and a chip will override any gains/noises specified.\00"
define void @acis_pix_dist_complain() {
%1 = load i32, i32* @stderr
%2 = tail call i32 @fprintf(i32 %1, i8* getelementptr inbounds ([44 x i8], [44 x i8]* @.str, i64 0, i64 0), i8* getelementptr inbounds ([62 x i8], [62 x i8]* @.str.1, i64 0, i64 0), i8* getelementptr inbounds ([67 x i8], [67 x i8]* @.str.2, i64 0, i64 0), i8* getelementptr inbounds ([77 x i8], [77 x i8]* @.str.3, i64 0, i64 0), i8* getelementptr inbounds ([77 x i8], [77 x i8]* @.str.4, i64 0, i64 0), i8* getelementptr inbounds ([66 x i8], [66 x i8]* @.str.5, i64 0, i64 0), i8* getelementptr inbounds ([68 x i8], [68 x i8]* @.str.6, i64 0, i64 0), i8* getelementptr inbounds ([69 x i8], [69 x i8]* @.str.7, i64 0, i64 0), i8* getelementptr inbounds ([69 x i8], [69 x i8]* @.str.8, i64 0, i64 0), i8* getelementptr inbounds ([76 x i8], [76 x i8]* @.str.9, i64 0, i64 0), i8* getelementptr inbounds ([71 x i8], [71 x i8]* @.str.10, i64 0, i64 0), i8* getelementptr inbounds ([73 x i8], [73 x i8]* @.str.11, i64 0, i64 0), i8* getelementptr inbounds ([74 x i8], [74 x i8]* @.str.12, i64 0, i64 0), i8* getelementptr inbounds ([56 x i8], [56 x i8]* @.str.13, i64 0, i64 0), i8* getelementptr inbounds ([79 x i8], [79 x i8]* @.str.14, i64 0, i64 0))
%3 = tail call i32 @exit(i32 1)
unreachable
}