#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*/ duergar(int, int /*<<< orphan*/);
int /*<<< orphan*/ niceprint(char *);
int /*<<< orphan*/ putchar(char);
void guards(void) {
  niceprint("The characters come upon two duergar guards beating a duergar "
            "merchant and shouting accusations "
            "of heresy. Any Underdark native accompanying the party urges the "
            "characters not to intervene on "
            "merchant's behalf, telling them this isn't their business and "
            "warning them that any interference "
            "might get them arrested or killed. Bystanders look a little "
            "surprised or concerned but don't intervene, "
            "not even to aid the unconscious merchant once the guards leave.");
  (void)putchar('\n');
  niceprint(
      "If the characters investigate the circumstances leading to the assulat, "
      "bystanders tell them that one "
      "of the guards noticed a golden pin the merchant was wearing inside his "
      "collar.  Though adornment for "
      "adornment's sake is something duegar society frowns upon, the guards' "
      "violent response was unnatural--"
      "a hint of the growing madness festering inside the City of Blades.");
  (void)putchar('\n');
  duergar(2, 0);
}


x86 assembly (clang, -O0):
<guards>:
push   %rbp
mov    %rsp,%rbp
lea    0xec5(%rip),%rdi
call   1050 <niceprint@plt>
mov    $0xa,%edi
call   1030 <putchar@plt>
lea    0x1078(%rip),%rdi
call   1050 <niceprint@plt>
mov    $0xa,%edi
call   1030 <putchar@plt>
mov    $0x2,%edi
xor    %esi,%esi
call   1040 <duergar@plt>
pop    %rbp
ret

x86 assembly (clang, -O2):
<guards>:
push   %rax
lea    0xec8(%rip),%rdi
call   1050 <niceprint@plt>
mov    $0xa,%edi
call   1030 <putchar@plt>
lea    0x107b(%rip),%rdi
call   1050 <niceprint@plt>
mov    $0xa,%edi
call   1030 <putchar@plt>
mov    $0x2,%edi
xor    %esi,%esi
pop    %rax
jmp    1040 <duergar@plt>

LLVM IR (-O0):
@.str = [457 x i8] c"The characters come upon two duergar guards beating a duergar merchant and shouting accusations of heresy. Any Underdark native accompanying the party urges the characters not to intervene on merchant's behalf, telling them this isn't their business and warning them that any interference might get them arrested or killed. Bystanders look a little surprised or concerned but don't intervene, not even to aid the unconscious merchant once the guards leave.\00"
@.str.1 = [372 x i8] c"If the characters investigate the circumstances leading to the assulat, bystanders tell them that one of the guards noticed a golden pin the merchant was wearing inside his collar. Though adornment for adornment's sake is something duegar society frowns upon, the guards' violent response was unnatural--a hint of the growing madness festering inside the City of Blades.\00"
define void @guards() {
%1 = call i32 @niceprint(i8* getelementptr inbounds ([457 x i8], [457 x i8]* @.str, i64 0, i64 0))
%2 = call i32 @putchar(i8 signext 10)
%3 = call i32 @niceprint(i8* getelementptr inbounds ([372 x i8], [372 x i8]* @.str.1, i64 0, i64 0))
%4 = call i32 @putchar(i8 signext 10)
%5 = call i32 @duergar(i32 2, i32 0)
ret void
}

LLVM IR (-O2):
@.str = [457 x i8] c"The characters come upon two duergar guards beating a duergar merchant and shouting accusations of heresy. Any Underdark native accompanying the party urges the characters not to intervene on merchant's behalf, telling them this isn't their business and warning them that any interference might get them arrested or killed. Bystanders look a little surprised or concerned but don't intervene, not even to aid the unconscious merchant once the guards leave.\00"
@.str.1 = [372 x i8] c"If the characters investigate the circumstances leading to the assulat, bystanders tell them that one of the guards noticed a golden pin the merchant was wearing inside his collar. Though adornment for adornment's sake is something duegar society frowns upon, the guards' violent response was unnatural--a hint of the growing madness festering inside the City of Blades.\00"
define void @guards() {
%1 = tail call i32 @niceprint(i8* getelementptr inbounds ([457 x i8], [457 x i8]* @.str, i64 0, i64 0))
%2 = tail call i32 @putchar(i8 signext 10)
%3 = tail call i32 @niceprint(i8* getelementptr inbounds ([372 x i8], [372 x i8]* @.str.1, i64 0, i64 0))
%4 = tail call i32 @putchar(i8 signext 10)
%5 = tail call i32 @duergar(i32 2, i32 0)
ret void
}