#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*/ AT_BASE;
int /*<<< orphan*/ AT_BASE_PLATFORM;
int /*<<< orphan*/ AT_CLKTCK;
int /*<<< orphan*/ AT_DCACHEBSIZE;
int /*<<< orphan*/ AT_EGID;
int /*<<< orphan*/ AT_ENTRY;
int /*<<< orphan*/ AT_EUID;
int /*<<< orphan*/ AT_EXECFD;
int /*<<< orphan*/ AT_EXECFN;
int /*<<< orphan*/ AT_FLAGS;
int /*<<< orphan*/ AT_FPUCW;
int /*<<< orphan*/ AT_GID;
int /*<<< orphan*/ AT_HWCAP;
int /*<<< orphan*/ AT_HWCAP2;
int /*<<< orphan*/ AT_ICACHEBSIZE;
int /*<<< orphan*/ AT_L1D_CACHEGEOMETRY;
int /*<<< orphan*/ AT_L1D_CACHESIZE;
int /*<<< orphan*/ AT_L1I_CACHEGEOMETRY;
int /*<<< orphan*/ AT_L1I_CACHESIZE;
int /*<<< orphan*/ AT_L2_CACHEGEOMETRY;
int /*<<< orphan*/ AT_L2_CACHESIZE;
int /*<<< orphan*/ AT_L3_CACHEGEOMETRY;
int /*<<< orphan*/ AT_L3_CACHESIZE;
int /*<<< orphan*/ AT_PAGESZ;
int /*<<< orphan*/ AT_PHDR;
int /*<<< orphan*/ AT_PHENT;
int /*<<< orphan*/ AT_PHNUM;
int /*<<< orphan*/ AT_PLATFORM;
int /*<<< orphan*/ AT_RANDOM;
int /*<<< orphan*/ AT_SECURE;
int /*<<< orphan*/ AT_SYSINFO;
int /*<<< orphan*/ AT_SYSINFO_EHDR;
int /*<<< orphan*/ AT_UCACHEBSIZE;
int /*<<< orphan*/ AT_UID;
int /*<<< orphan*/ getauxval(int /*<<< orphan*/);
int /*<<< orphan*/ printf(char *, char *, int /*<<< orphan*/);
int main(void) {
  printf("%s: %#lx\n", "AT_BASE", getauxval(AT_BASE));
  printf("%s: %#lx\n", "AT_BASE_PLATFORM", getauxval(AT_BASE_PLATFORM));
  printf("%s: %#lx\n", "AT_CLKTCK", getauxval(AT_CLKTCK));
  printf("%s: %#lx\n", "AT_DCACHEBSIZE", getauxval(AT_DCACHEBSIZE));
  printf("%s: %#lx\n", "AT_EGID", getauxval(AT_EGID));
  printf("%s: %#lx\n", "AT_ENTRY", getauxval(AT_ENTRY));
  printf("%s: %#lx\n", "AT_EUID", getauxval(AT_EUID));
  printf("%s: %#lx\n", "AT_EXECFD", getauxval(AT_EXECFD));
  printf("%s: %#lx\n", "AT_EXECFN", getauxval(AT_EXECFN));
  printf("%s: %#lx\n", "AT_FLAGS", getauxval(AT_FLAGS));
  printf("%s: %#lx\n", "AT_FPUCW", getauxval(AT_FPUCW));
  printf("%s: %#lx\n", "AT_GID", getauxval(AT_GID));
  printf("%s: %#lx\n", "AT_HWCAP", getauxval(AT_HWCAP));
  printf("%s: %#lx\n", "AT_HWCAP2", getauxval(AT_HWCAP2));
  printf("%s: %#lx\n", "AT_ICACHEBSIZE", getauxval(AT_ICACHEBSIZE));
  printf("%s: %#lx\n", "AT_L1D_CACHEGEOMETRY", getauxval(AT_L1D_CACHEGEOMETRY));
  printf("%s: %#lx\n", "AT_L1D_CACHESIZE", getauxval(AT_L1D_CACHESIZE));
  printf("%s: %#lx\n", "AT_L1I_CACHEGEOMETRY", getauxval(AT_L1I_CACHEGEOMETRY));
  printf("%s: %#lx\n", "AT_L1I_CACHESIZE", getauxval(AT_L1I_CACHESIZE));
  printf("%s: %#lx\n", "AT_L2_CACHEGEOMETRY", getauxval(AT_L2_CACHEGEOMETRY));
  printf("%s: %#lx\n", "AT_L2_CACHESIZE", getauxval(AT_L2_CACHESIZE));
  printf("%s: %#lx\n", "AT_L3_CACHEGEOMETRY", getauxval(AT_L3_CACHEGEOMETRY));
  printf("%s: %#lx\n", "AT_L3_CACHESIZE", getauxval(AT_L3_CACHESIZE));
  printf("%s: %#lx\n", "AT_PAGESZ", getauxval(AT_PAGESZ));
  printf("%s: %#lx\n", "AT_PHDR", getauxval(AT_PHDR));
  printf("%s: %#lx\n", "AT_PHENT", getauxval(AT_PHENT));
  printf("%s: %#lx\n", "AT_PHNUM", getauxval(AT_PHNUM));
  printf("%s: %#lx\n", "AT_PLATFORM", getauxval(AT_PLATFORM));
  printf("%s: %#lx\n", "AT_RANDOM", getauxval(AT_RANDOM));
  printf("%s: %#lx\n", "AT_SECURE", getauxval(AT_SECURE));
  printf("%s: %#lx\n", "AT_SYSINFO", getauxval(AT_SYSINFO));
  printf("%s: %#lx\n", "AT_SYSINFO_EHDR", getauxval(AT_SYSINFO_EHDR));
  printf("%s: %#lx\n", "AT_UCACHEBSIZE", getauxval(AT_UCACHEBSIZE));
  printf("%s: %#lx\n", "AT_UID", getauxval(AT_UID));
  return 0;
}


x86 assembly (clang, -O0):
<main>:
push   %rbp
mov    %rsp,%rbp
sub    $0x10,%rsp
movl   $0x0,-0x4(%rbp)
mov    0x2e3a(%rip),%rax
mov    (%rax),%edi
call   1040 <getauxval@plt>
mov    %eax,%edx
lea    0xeba(%rip),%rdi
lea    0xebd(%rip),%rsi
call   1030 <printf@plt>
mov    0x2d7f(%rip),%rax
mov    (%rax),%edi
call   1040 <getauxval@plt>
mov    %eax,%edx
lea    0xe97(%rip),%rdi
lea    0xea2(%rip),%rsi
call   1030 <printf@plt>
mov    0x2dd4(%rip),%rax
mov    (%rax),%edi
call   1040 <getauxval@plt>
mov    %eax,%edx
lea    0xe74(%rip),%rdi
lea    0xe90(%rip),%rsi
call   1030 <printf@plt>
mov    0x2d81(%rip),%rax
mov    (%rax),%edi
call   1040 <getauxval@plt>
mov    %eax,%edx
lea    0xe51(%rip),%rdi
lea    0xe77(%rip),%rsi
call   1030 <printf@plt>
mov    0x2df6(%rip),%rax
mov    (%rax),%edi
call   1040 <getauxval@plt>
mov    %eax,%edx
lea    0xe2e(%rip),%rdi
lea    0xe63(%rip),%rsi
call   1030 <printf@plt>
mov    0x2d93(%rip),%rax
mov    (%rax),%edi
call   1040 <getauxval@plt>
mov    %eax,%edx
lea    0xe0b(%rip),%rdi
lea    0xe48(%rip),%rsi
call   1030 <printf@plt>
mov    0x2dc0(%rip),%rax
mov    (%rax),%edi
call   1040 <getauxval@plt>
mov    %eax,%edx
lea    0xde8(%rip),%rdi
lea    0xe2e(%rip),%rsi
call   1030 <printf@plt>
mov    0x2cdd(%rip),%rax
mov    (%rax),%edi
call   1040 <getauxval@plt>
mov    %eax,%edx
lea    0xdc5(%rip),%rdi
lea    0xe13(%rip),%rsi
call   1030 <printf@plt>
mov    0x2c9a(%rip),%rax
mov    (%rax),%edi
call   1040 <getauxval@plt>
mov    %eax,%edx
lea    0xda2(%rip),%rdi
lea    0xdfa(%rip),%rsi
call   1030 <printf@plt>
mov    0x2d27(%rip),%rax
mov    (%rax),%edi
call   1040 <getauxval@plt>
mov    %eax,%edx
lea    0xd7f(%rip),%rdi
lea    0xde1(%rip),%rsi
call   1030 <printf@plt>
mov    0x2d54(%rip),%rax
mov    (%rax),%edi
call   1040 <getauxval@plt>
mov    %eax,%edx
lea    0xd5c(%rip),%rdi
lea    0xdc7(%rip),%rsi
call   1030 <printf@plt>
mov    0x2ce9(%rip),%rax
mov    (%rax),%edi
call   1040 <getauxval@plt>
mov    %eax,%edx
lea    0xd39(%rip),%rdi
lea    0xdad(%rip),%rsi
call   1030 <printf@plt>
mov    0x2c8e(%rip),%rax
mov    (%rax),%edi
call   1040 <getauxval@plt>
mov    %eax,%edx
lea    0xd16(%rip),%rdi
lea    0xd91(%rip),%rsi
call   1030 <printf@plt>
mov    0x2c83(%rip),%rax
mov    (%rax),%edi
call   1040 <getauxval@plt>
mov    %eax,%edx
lea    0xcf3(%rip),%rdi
lea    0xd77(%rip),%rsi
call   1030 <printf@plt>
mov    0x2c88(%rip),%rax
mov    (%rax),%edi
call   1040 <getauxval@plt>
mov    %eax,%edx
lea    0xcd0(%rip),%rdi
lea    0xd5e(%rip),%rsi
call   1030 <printf@plt>
mov    0x2bfd(%rip),%rax
mov    (%rax),%edi
call   1040 <getauxval@plt>
mov    %eax,%edx
lea    0xcad(%rip),%rdi
lea    0xd4a(%rip),%rsi
call   1030 <printf@plt>
mov    0x2bf2(%rip),%rax
mov    (%rax),%edi
call   1040 <getauxval@plt>
mov    %eax,%edx
lea    0xc8a(%rip),%rdi
lea    0xd3c(%rip),%rsi
call   1030 <printf@plt>
mov    0x2bd7(%rip),%rax
mov    (%rax),%edi
call   1040 <getauxval@plt>
mov    %eax,%edx
lea    0xc67(%rip),%rdi
lea    0xd2a(%rip),%rsi
call   1030 <printf@plt>
mov    0x2c24(%rip),%rax
mov    (%rax),%edi
call   1040 <getauxval@plt>
mov    %eax,%edx
lea    0xc44(%rip),%rdi
lea    0xd1c(%rip),%rsi
call   1030 <printf@plt>
mov    0x2b11(%rip),%rax
mov    (%rax),%edi
call   1040 <getauxval@plt>
mov    %eax,%edx
lea    0xc21(%rip),%rdi
lea    0xd0a(%rip),%rsi
call   1030 <printf@plt>
mov    0x2bbe(%rip),%rax
mov    (%rax),%edi
call   1040 <getauxval@plt>
mov    %eax,%edx
lea    0xbfe(%rip),%rdi
lea    0xcfb(%rip),%rsi
call   1030 <printf@plt>
mov    0x2aeb(%rip),%rax
mov    (%rax),%edi
call   1040 <getauxval@plt>
mov    %eax,%edx
lea    0xbdb(%rip),%rdi
lea    0xce8(%rip),%rsi
call   1030 <printf@plt>
mov    0x2b10(%rip),%rax
mov    (%rax),%edi
call   1040 <getauxval@plt>
mov    %eax,%edx
lea    0xbb8(%rip),%rdi
lea    0xcd9(%rip),%rsi
call   1030 <printf@plt>
mov    0x2acd(%rip),%rax
mov    (%rax),%edi
call   1040 <getauxval@plt>
mov    %eax,%edx
lea    0xb95(%rip),%rdi
lea    0xcc6(%rip),%rsi
call   1030 <printf@plt>
mov    0x2a7a(%rip),%rax
mov    (%rax),%edi
call   1040 <getauxval@plt>
mov    %eax,%edx
lea    0xb72(%rip),%rdi
lea    0xcad(%rip),%rsi
call   1030 <printf@plt>
mov    0x2a6f(%rip),%rax
mov    (%rax),%edi
call   1040 <getauxval@plt>
mov    %eax,%edx
lea    0xb4f(%rip),%rdi
lea    0xc92(%rip),%rsi
call   1030 <printf@plt>
mov    0x2a0c(%rip),%rax
mov    (%rax),%edi
call   1040 <getauxval@plt>
mov    %eax,%edx
lea    0xb2c(%rip),%rdi
lea    0xc78(%rip),%rsi
call   1030 <printf@plt>
mov    0x2af1(%rip),%rax
mov    (%rax),%edi
call   1040 <getauxval@plt>
mov    %eax,%edx
lea    0xb09(%rip),%rdi
lea    0xc5e(%rip),%rsi
call   1030 <printf@plt>
mov    0x2a7e(%rip),%rax
mov    (%rax),%edi
call   1040 <getauxval@plt>
mov    %eax,%edx
lea    0xae6(%rip),%rdi
lea    0xc47(%rip),%rsi
call   1030 <printf@plt>
mov    0x29eb(%rip),%rax
mov    (%rax),%edi
call   1040 <getauxval@plt>
mov    %eax,%edx
lea    0xac3(%rip),%rdi
lea    0xc2e(%rip),%rsi
call   1030 <printf@plt>
mov    0x2aa8(%rip),%rax
mov    (%rax),%edi
call   1040 <getauxval@plt>
mov    %eax,%edx
lea    0xaa0(%rip),%rdi
lea    0xc15(%rip),%rsi
call   1030 <printf@plt>
mov    0x29c5(%rip),%rax
mov    (%rax),%edi
call   1040 <getauxval@plt>
mov    %eax,%edx
lea    0xa7d(%rip),%rdi
lea    0xbfd(%rip),%rsi
call   1030 <printf@plt>
mov    0x299a(%rip),%rax
mov    (%rax),%edi
call   1040 <getauxval@plt>
mov    %eax,%edx
lea    0xa5a(%rip),%rdi
lea    0xbea(%rip),%rsi
call   1030 <printf@plt>
mov    0x2a07(%rip),%rax
mov    (%rax),%edi
call   1040 <getauxval@plt>
mov    %eax,%edx
lea    0xa37(%rip),%rdi
lea    0xbd6(%rip),%rsi
call   1030 <printf@plt>
xor    %eax,%eax
add    $0x10,%rsp
pop    %rbp
ret

x86 assembly (clang, -O2):
<main>:
push   %rbx
mov    0x2e48(%rip),%rax
mov    (%rax),%edi
call   1040 <getauxval@plt>
lea    0xeca(%rip),%rbx
lea    0xecd(%rip),%rsi
mov    %rbx,%rdi
mov    %eax,%edx
call   1030 <printf@plt>
mov    0x2d8a(%rip),%rax
mov    (%rax),%edi
call   1040 <getauxval@plt>
lea    0xeb6(%rip),%rsi
mov    %rbx,%rdi
mov    %eax,%edx
call   1030 <printf@plt>
mov    0x2de3(%rip),%rax
mov    (%rax),%edi
call   1040 <getauxval@plt>
lea    0xea8(%rip),%rsi
mov    %rbx,%rdi
mov    %eax,%edx
call   1030 <printf@plt>
mov    0x2d94(%rip),%rax
mov    (%rax),%edi
call   1040 <getauxval@plt>
lea    0xe93(%rip),%rsi
mov    %rbx,%rdi
mov    %eax,%edx
call   1030 <printf@plt>
mov    0x2e0d(%rip),%rax
mov    (%rax),%edi
call   1040 <getauxval@plt>
lea    0xe83(%rip),%rsi
mov    %rbx,%rdi
mov    %eax,%edx
call   1030 <printf@plt>
mov    0x2dae(%rip),%rax
mov    (%rax),%edi
call   1040 <getauxval@plt>
lea    0xe6c(%rip),%rsi
mov    %rbx,%rdi
mov    %eax,%edx
call   1030 <printf@plt>
mov    0x2ddf(%rip),%rax
mov    (%rax),%edi
call   1040 <getauxval@plt>
lea    0xe56(%rip),%rsi
mov    %rbx,%rdi
mov    %eax,%edx
call   1030 <printf@plt>
mov    0x2d00(%rip),%rax
mov    (%rax),%edi
call   1040 <getauxval@plt>
lea    0xe3f(%rip),%rsi
mov    %rbx,%rdi
mov    %eax,%edx
call   1030 <printf@plt>
mov    0x2cc1(%rip),%rax
mov    (%rax),%edi
call   1040 <getauxval@plt>
lea    0xe2a(%rip),%rsi
mov    %rbx,%rdi
mov    %eax,%edx
call   1030 <printf@plt>
mov    0x2d52(%rip),%rax
mov    (%rax),%edi
call   1040 <getauxval@plt>
lea    0xe15(%rip),%rsi
mov    %rbx,%rdi
mov    %eax,%edx
call   1030 <printf@plt>
mov    0x2d83(%rip),%rax
mov    (%rax),%edi
call   1040 <getauxval@plt>
lea    0xdff(%rip),%rsi
mov    %rbx,%rdi
mov    %eax,%edx
call   1030 <printf@plt>
mov    0x2d1c(%rip),%rax
mov    (%rax),%edi
call   1040 <getauxval@plt>
lea    0xde9(%rip),%rsi
mov    %rbx,%rdi
mov    %eax,%edx
call   1030 <printf@plt>
mov    0x2cc5(%rip),%rax
mov    (%rax),%edi
call   1040 <getauxval@plt>
lea    0xdd1(%rip),%rsi
mov    %rbx,%rdi
mov    %eax,%edx
call   1030 <printf@plt>
mov    0x2cbe(%rip),%rax
mov    (%rax),%edi
call   1040 <getauxval@plt>
lea    0xdbb(%rip),%rsi
mov    %rbx,%rdi
mov    %eax,%edx
call   1030 <printf@plt>
mov    0x2cc7(%rip),%rax
mov    (%rax),%edi
call   1040 <getauxval@plt>
lea    0xda6(%rip),%rsi
mov    %rbx,%rdi
mov    %eax,%edx
call   1030 <printf@plt>
mov    0x2c40(%rip),%rax
mov    (%rax),%edi
call   1040 <getauxval@plt>
lea    0xd96(%rip),%rsi
mov    %rbx,%rdi
mov    %eax,%edx
call   1030 <printf@plt>
mov    0x2c39(%rip),%rax
mov    (%rax),%edi
call   1040 <getauxval@plt>
lea    0xd8c(%rip),%rsi
mov    %rbx,%rdi
mov    %eax,%edx
call   1030 <printf@plt>
mov    0x2c22(%rip),%rax
mov    (%rax),%edi
call   1040 <getauxval@plt>
lea    0xd7e(%rip),%rsi
mov    %rbx,%rdi
mov    %eax,%edx
call   1030 <printf@plt>
mov    0x2c73(%rip),%rax
mov    (%rax),%edi
call   1040 <getauxval@plt>
lea    0xd74(%rip),%rsi
mov    %rbx,%rdi
mov    %eax,%edx
call   1030 <printf@plt>
mov    0x2b64(%rip),%rax
mov    (%rax),%edi
call   1040 <getauxval@plt>
lea    0xd66(%rip),%rsi
mov    %rbx,%rdi
mov    %eax,%edx
call   1030 <printf@plt>
mov    0x2c15(%rip),%rax
mov    (%rax),%edi
call   1040 <getauxval@plt>
lea    0xd5b(%rip),%rsi
mov    %rbx,%rdi
mov    %eax,%edx
call   1030 <printf@plt>
mov    0x2b46(%rip),%rax
mov    (%rax),%edi
call   1040 <getauxval@plt>
lea    0xd4c(%rip),%rsi
mov    %rbx,%rdi
mov    %eax,%edx
call   1030 <printf@plt>
mov    0x2b6f(%rip),%rax
mov    (%rax),%edi
call   1040 <getauxval@plt>
lea    0xd41(%rip),%rsi
mov    %rbx,%rdi
mov    %eax,%edx
call   1030 <printf@plt>
mov    0x2b30(%rip),%rax
mov    (%rax),%edi
call   1040 <getauxval@plt>
lea    0xd32(%rip),%rsi
mov    %rbx,%rdi
mov    %eax,%edx
call   1030 <printf@plt>
mov    0x2ae1(%rip),%rax
mov    (%rax),%edi
call   1040 <getauxval@plt>
lea    0xd1d(%rip),%rsi
mov    %rbx,%rdi
mov    %eax,%edx
call   1030 <printf@plt>
mov    0x2ada(%rip),%rax
mov    (%rax),%edi
call   1040 <getauxval@plt>
lea    0xd06(%rip),%rsi
mov    %rbx,%rdi
mov    %eax,%edx
call   1030 <printf@plt>
mov    0x2a7b(%rip),%rax
mov    (%rax),%edi
call   1040 <getauxval@plt>
lea    0xcf0(%rip),%rsi
mov    %rbx,%rdi
mov    %eax,%edx
call   1030 <printf@plt>
mov    0x2b64(%rip),%rax
mov    (%rax),%edi
call   1040 <getauxval@plt>
lea    0xcda(%rip),%rsi
mov    %rbx,%rdi
mov    %eax,%edx
call   1030 <printf@plt>
mov    0x2af5(%rip),%rax
mov    (%rax),%edi
call   1040 <getauxval@plt>
lea    0xcc7(%rip),%rsi
mov    %rbx,%rdi
mov    %eax,%edx
call   1030 <printf@plt>
mov    0x2a66(%rip),%rax
mov    (%rax),%edi
call   1040 <getauxval@plt>
lea    0xcb2(%rip),%rsi
mov    %rbx,%rdi
mov    %eax,%edx
call   1030 <printf@plt>
mov    0x2b27(%rip),%rax
mov    (%rax),%edi
call   1040 <getauxval@plt>
lea    0xc9d(%rip),%rsi
mov    %rbx,%rdi
mov    %eax,%edx
call   1030 <printf@plt>
mov    0x2a48(%rip),%rax
mov    (%rax),%edi
call   1040 <getauxval@plt>
lea    0xc89(%rip),%rsi
mov    %rbx,%rdi
mov    %eax,%edx
call   1030 <printf@plt>
mov    0x2a21(%rip),%rax
mov    (%rax),%edi
call   1040 <getauxval@plt>
lea    0xc7a(%rip),%rsi
mov    %rbx,%rdi
mov    %eax,%edx
call   1030 <printf@plt>
mov    0x2a92(%rip),%rax
mov    (%rax),%edi
call   1040 <getauxval@plt>
lea    0xc6a(%rip),%rsi
mov    %rbx,%rdi
mov    %eax,%edx
call   1030 <printf@plt>
xor    %eax,%eax
pop    %rbx
ret

LLVM IR (-O0):
@.str = [10 x i8] c"%s: %#lx\0A\00"
@.str.1 = [8 x i8] c"AT_BASE\00"
@AT_BASE = global i32 0
@.str.2 = [17 x i8] c"AT_BASE_PLATFORM\00"
@AT_BASE_PLATFORM = global i32 0
@.str.3 = [10 x i8] c"AT_CLKTCK\00"
@AT_CLKTCK = global i32 0
@.str.4 = [15 x i8] c"AT_DCACHEBSIZE\00"
@AT_DCACHEBSIZE = global i32 0
@.str.5 = [8 x i8] c"AT_EGID\00"
@AT_EGID = global i32 0
@.str.6 = [9 x i8] c"AT_ENTRY\00"
@AT_ENTRY = global i32 0
@.str.7 = [8 x i8] c"AT_EUID\00"
@AT_EUID = global i32 0
@.str.8 = [10 x i8] c"AT_EXECFD\00"
@AT_EXECFD = global i32 0
@.str.9 = [10 x i8] c"AT_EXECFN\00"
@AT_EXECFN = global i32 0
@.str.10 = [9 x i8] c"AT_FLAGS\00"
@AT_FLAGS = global i32 0
@.str.11 = [9 x i8] c"AT_FPUCW\00"
@AT_FPUCW = global i32 0
@.str.12 = [7 x i8] c"AT_GID\00"
@AT_GID = global i32 0
@.str.13 = [9 x i8] c"AT_HWCAP\00"
@AT_HWCAP = global i32 0
@.str.14 = [10 x i8] c"AT_HWCAP2\00"
@AT_HWCAP2 = global i32 0
@.str.15 = [15 x i8] c"AT_ICACHEBSIZE\00"
@AT_ICACHEBSIZE = global i32 0
@.str.16 = [21 x i8] c"AT_L1D_CACHEGEOMETRY\00"
@AT_L1D_CACHEGEOMETRY = global i32 0
@.str.17 = [17 x i8] c"AT_L1D_CACHESIZE\00"
@AT_L1D_CACHESIZE = global i32 0
@.str.18 = [21 x i8] c"AT_L1I_CACHEGEOMETRY\00"
@AT_L1I_CACHEGEOMETRY = global i32 0
@.str.19 = [17 x i8] c"AT_L1I_CACHESIZE\00"
@AT_L1I_CACHESIZE = global i32 0
@.str.20 = [20 x i8] c"AT_L2_CACHEGEOMETRY\00"
@AT_L2_CACHEGEOMETRY = global i32 0
@.str.21 = [16 x i8] c"AT_L2_CACHESIZE\00"
@AT_L2_CACHESIZE = global i32 0
@.str.22 = [20 x i8] c"AT_L3_CACHEGEOMETRY\00"
@AT_L3_CACHEGEOMETRY = global i32 0
@.str.23 = [16 x i8] c"AT_L3_CACHESIZE\00"
@AT_L3_CACHESIZE = global i32 0
@.str.24 = [10 x i8] c"AT_PAGESZ\00"
@AT_PAGESZ = global i32 0
@.str.25 = [8 x i8] c"AT_PHDR\00"
@AT_PHDR = global i32 0
@.str.26 = [9 x i8] c"AT_PHENT\00"
@AT_PHENT = global i32 0
@.str.27 = [9 x i8] c"AT_PHNUM\00"
@AT_PHNUM = global i32 0
@.str.28 = [12 x i8] c"AT_PLATFORM\00"
@AT_PLATFORM = global i32 0
@.str.29 = [10 x i8] c"AT_RANDOM\00"
@AT_RANDOM = global i32 0
@.str.30 = [10 x i8] c"AT_SECURE\00"
@AT_SECURE = global i32 0
@.str.31 = [11 x i8] c"AT_SYSINFO\00"
@AT_SYSINFO = global i32 0
@.str.32 = [16 x i8] c"AT_SYSINFO_EHDR\00"
@AT_SYSINFO_EHDR = global i32 0
@.str.33 = [15 x i8] c"AT_UCACHEBSIZE\00"
@AT_UCACHEBSIZE = global i32 0
@.str.34 = [7 x i8] c"AT_UID\00"
@AT_UID = global i32 0
define i32 @main() {
%1 = alloca i32
store i32 0, i32* %1
%2 = load i32, i32* @AT_BASE
%3 = call i32 @getauxval(i32 %2)
%4 = call i32 @printf(i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i64 0, i64 0), i8* getelementptr inbounds ([8 x i8], [8 x i8]* @.str.1, i64 0, i64 0), i32 %3)
%5 = load i32, i32* @AT_BASE_PLATFORM
%6 = call i32 @getauxval(i32 %5)
%7 = call i32 @printf(i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i64 0, i64 0), i8* getelementptr inbounds ([17 x i8], [17 x i8]* @.str.2, i64 0, i64 0), i32 %6)
%8 = load i32, i32* @AT_CLKTCK
%9 = call i32 @getauxval(i32 %8)
%10 = call i32 @printf(i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i64 0, i64 0), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str.3, i64 0, i64 0), i32 %9)
%11 = load i32, i32* @AT_DCACHEBSIZE
%12 = call i32 @getauxval(i32 %11)
%13 = call i32 @printf(i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i64 0, i64 0), i8* getelementptr inbounds ([15 x i8], [15 x i8]* @.str.4, i64 0, i64 0), i32 %12)
%14 = load i32, i32* @AT_EGID
%15 = call i32 @getauxval(i32 %14)
%16 = call i32 @printf(i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i64 0, i64 0), i8* getelementptr inbounds ([8 x i8], [8 x i8]* @.str.5, i64 0, i64 0), i32 %15)
%17 = load i32, i32* @AT_ENTRY
%18 = call i32 @getauxval(i32 %17)
%19 = call i32 @printf(i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i64 0, i64 0), i8* getelementptr inbounds ([9 x i8], [9 x i8]* @.str.6, i64 0, i64 0), i32 %18)
%20 = load i32, i32* @AT_EUID
%21 = call i32 @getauxval(i32 %20)
%22 = call i32 @printf(i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i64 0, i64 0), i8* getelementptr inbounds ([8 x i8], [8 x i8]* @.str.7, i64 0, i64 0), i32 %21)
%23 = load i32, i32* @AT_EXECFD
%24 = call i32 @getauxval(i32 %23)
%25 = call i32 @printf(i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i64 0, i64 0), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str.8, i64 0, i64 0), i32 %24)
%26 = load i32, i32* @AT_EXECFN
%27 = call i32 @getauxval(i32 %26)
%28 = call i32 @printf(i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i64 0, i64 0), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str.9, i64 0, i64 0), i32 %27)
%29 = load i32, i32* @AT_FLAGS
%30 = call i32 @getauxval(i32 %29)
%31 = call i32 @printf(i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i64 0, i64 0), i8* getelementptr inbounds ([9 x i8], [9 x i8]* @.str.10, i64 0, i64 0), i32 %30)
%32 = load i32, i32* @AT_FPUCW
%33 = call i32 @getauxval(i32 %32)
%34 = call i32 @printf(i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i64 0, i64 0), i8* getelementptr inbounds ([9 x i8], [9 x i8]* @.str.11, i64 0, i64 0), i32 %33)
%35 = load i32, i32* @AT_GID
%36 = call i32 @getauxval(i32 %35)
%37 = call i32 @printf(i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i64 0, i64 0), i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str.12, i64 0, i64 0), i32 %36)
%38 = load i32, i32* @AT_HWCAP
%39 = call i32 @getauxval(i32 %38)
%40 = call i32 @printf(i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i64 0, i64 0), i8* getelementptr inbounds ([9 x i8], [9 x i8]* @.str.13, i64 0, i64 0), i32 %39)
%41 = load i32, i32* @AT_HWCAP2
%42 = call i32 @getauxval(i32 %41)
%43 = call i32 @printf(i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i64 0, i64 0), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str.14, i64 0, i64 0), i32 %42)
%44 = load i32, i32* @AT_ICACHEBSIZE
%45 = call i32 @getauxval(i32 %44)
%46 = call i32 @printf(i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i64 0, i64 0), i8* getelementptr inbounds ([15 x i8], [15 x i8]* @.str.15, i64 0, i64 0), i32 %45)
%47 = load i32, i32* @AT_L1D_CACHEGEOMETRY
%48 = call i32 @getauxval(i32 %47)
%49 = call i32 @printf(i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i64 0, i64 0), i8* getelementptr inbounds ([21 x i8], [21 x i8]* @.str.16, i64 0, i64 0), i32 %48)
%50 = load i32, i32* @AT_L1D_CACHESIZE
%51 = call i32 @getauxval(i32 %50)
%52 = call i32 @printf(i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i64 0, i64 0), i8* getelementptr inbounds ([17 x i8], [17 x i8]* @.str.17, i64 0, i64 0), i32 %51)
%53 = load i32, i32* @AT_L1I_CACHEGEOMETRY
%54 = call i32 @getauxval(i32 %53)
%55 = call i32 @printf(i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i64 0, i64 0), i8* getelementptr inbounds ([21 x i8], [21 x i8]* @.str.18, i64 0, i64 0), i32 %54)
%56 = load i32, i32* @AT_L1I_CACHESIZE
%57 = call i32 @getauxval(i32 %56)
%58 = call i32 @printf(i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i64 0, i64 0), i8* getelementptr inbounds ([17 x i8], [17 x i8]* @.str.19, i64 0, i64 0), i32 %57)
%59 = load i32, i32* @AT_L2_CACHEGEOMETRY
%60 = call i32 @getauxval(i32 %59)
%61 = call i32 @printf(i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i64 0, i64 0), i8* getelementptr inbounds ([20 x i8], [20 x i8]* @.str.20, i64 0, i64 0), i32 %60)
%62 = load i32, i32* @AT_L2_CACHESIZE
%63 = call i32 @getauxval(i32 %62)
%64 = call i32 @printf(i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i64 0, i64 0), i8* getelementptr inbounds ([16 x i8], [16 x i8]* @.str.21, i64 0, i64 0), i32 %63)
%65 = load i32, i32* @AT_L3_CACHEGEOMETRY
%66 = call i32 @getauxval(i32 %65)
%67 = call i32 @printf(i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i64 0, i64 0), i8* getelementptr inbounds ([20 x i8], [20 x i8]* @.str.22, i64 0, i64 0), i32 %66)
%68 = load i32, i32* @AT_L3_CACHESIZE
%69 = call i32 @getauxval(i32 %68)
%70 = call i32 @printf(i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i64 0, i64 0), i8* getelementptr inbounds ([16 x i8], [16 x i8]* @.str.23, i64 0, i64 0), i32 %69)
%71 = load i32, i32* @AT_PAGESZ
%72 = call i32 @getauxval(i32 %71)
%73 = call i32 @printf(i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i64 0, i64 0), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str.24, i64 0, i64 0), i32 %72)
%74 = load i32, i32* @AT_PHDR
%75 = call i32 @getauxval(i32 %74)
%76 = call i32 @printf(i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i64 0, i64 0), i8* getelementptr inbounds ([8 x i8], [8 x i8]* @.str.25, i64 0, i64 0), i32 %75)
%77 = load i32, i32* @AT_PHENT
%78 = call i32 @getauxval(i32 %77)
%79 = call i32 @printf(i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i64 0, i64 0), i8* getelementptr inbounds ([9 x i8], [9 x i8]* @.str.26, i64 0, i64 0), i32 %78)
%80 = load i32, i32* @AT_PHNUM
%81 = call i32 @getauxval(i32 %80)
%82 = call i32 @printf(i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i64 0, i64 0), i8* getelementptr inbounds ([9 x i8], [9 x i8]* @.str.27, i64 0, i64 0), i32 %81)
%83 = load i32, i32* @AT_PLATFORM
%84 = call i32 @getauxval(i32 %83)
%85 = call i32 @printf(i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i64 0, i64 0), i8* getelementptr inbounds ([12 x i8], [12 x i8]* @.str.28, i64 0, i64 0), i32 %84)
%86 = load i32, i32* @AT_RANDOM
%87 = call i32 @getauxval(i32 %86)
%88 = call i32 @printf(i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i64 0, i64 0), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str.29, i64 0, i64 0), i32 %87)
%89 = load i32, i32* @AT_SECURE
%90 = call i32 @getauxval(i32 %89)
%91 = call i32 @printf(i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i64 0, i64 0), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str.30, i64 0, i64 0), i32 %90)
%92 = load i32, i32* @AT_SYSINFO
%93 = call i32 @getauxval(i32 %92)
%94 = call i32 @printf(i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i64 0, i64 0), i8* getelementptr inbounds ([11 x i8], [11 x i8]* @.str.31, i64 0, i64 0), i32 %93)
%95 = load i32, i32* @AT_SYSINFO_EHDR
%96 = call i32 @getauxval(i32 %95)
%97 = call i32 @printf(i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i64 0, i64 0), i8* getelementptr inbounds ([16 x i8], [16 x i8]* @.str.32, i64 0, i64 0), i32 %96)
%98 = load i32, i32* @AT_UCACHEBSIZE
%99 = call i32 @getauxval(i32 %98)
%100 = call i32 @printf(i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i64 0, i64 0), i8* getelementptr inbounds ([15 x i8], [15 x i8]* @.str.33, i64 0, i64 0), i32 %99)
%101 = load i32, i32* @AT_UID
%102 = call i32 @getauxval(i32 %101)
%103 = call i32 @printf(i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i64 0, i64 0), i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str.34, i64 0, i64 0), i32 %102)
ret i32 0
}

LLVM IR (-O2):
@.str = [10 x i8] c"%s: %#lx\0A\00"
@.str.1 = [8 x i8] c"AT_BASE\00"
@AT_BASE = global i32 0
@.str.2 = [17 x i8] c"AT_BASE_PLATFORM\00"
@AT_BASE_PLATFORM = global i32 0
@.str.3 = [10 x i8] c"AT_CLKTCK\00"
@AT_CLKTCK = global i32 0
@.str.4 = [15 x i8] c"AT_DCACHEBSIZE\00"
@AT_DCACHEBSIZE = global i32 0
@.str.5 = [8 x i8] c"AT_EGID\00"
@AT_EGID = global i32 0
@.str.6 = [9 x i8] c"AT_ENTRY\00"
@AT_ENTRY = global i32 0
@.str.7 = [8 x i8] c"AT_EUID\00"
@AT_EUID = global i32 0
@.str.8 = [10 x i8] c"AT_EXECFD\00"
@AT_EXECFD = global i32 0
@.str.9 = [10 x i8] c"AT_EXECFN\00"
@AT_EXECFN = global i32 0
@.str.10 = [9 x i8] c"AT_FLAGS\00"
@AT_FLAGS = global i32 0
@.str.11 = [9 x i8] c"AT_FPUCW\00"
@AT_FPUCW = global i32 0
@.str.12 = [7 x i8] c"AT_GID\00"
@AT_GID = global i32 0
@.str.13 = [9 x i8] c"AT_HWCAP\00"
@AT_HWCAP = global i32 0
@.str.14 = [10 x i8] c"AT_HWCAP2\00"
@AT_HWCAP2 = global i32 0
@.str.15 = [15 x i8] c"AT_ICACHEBSIZE\00"
@AT_ICACHEBSIZE = global i32 0
@.str.16 = [21 x i8] c"AT_L1D_CACHEGEOMETRY\00"
@AT_L1D_CACHEGEOMETRY = global i32 0
@.str.17 = [17 x i8] c"AT_L1D_CACHESIZE\00"
@AT_L1D_CACHESIZE = global i32 0
@.str.18 = [21 x i8] c"AT_L1I_CACHEGEOMETRY\00"
@AT_L1I_CACHEGEOMETRY = global i32 0
@.str.19 = [17 x i8] c"AT_L1I_CACHESIZE\00"
@AT_L1I_CACHESIZE = global i32 0
@.str.20 = [20 x i8] c"AT_L2_CACHEGEOMETRY\00"
@AT_L2_CACHEGEOMETRY = global i32 0
@.str.21 = [16 x i8] c"AT_L2_CACHESIZE\00"
@AT_L2_CACHESIZE = global i32 0
@.str.22 = [20 x i8] c"AT_L3_CACHEGEOMETRY\00"
@AT_L3_CACHEGEOMETRY = global i32 0
@.str.23 = [16 x i8] c"AT_L3_CACHESIZE\00"
@AT_L3_CACHESIZE = global i32 0
@.str.24 = [10 x i8] c"AT_PAGESZ\00"
@AT_PAGESZ = global i32 0
@.str.25 = [8 x i8] c"AT_PHDR\00"
@AT_PHDR = global i32 0
@.str.26 = [9 x i8] c"AT_PHENT\00"
@AT_PHENT = global i32 0
@.str.27 = [9 x i8] c"AT_PHNUM\00"
@AT_PHNUM = global i32 0
@.str.28 = [12 x i8] c"AT_PLATFORM\00"
@AT_PLATFORM = global i32 0
@.str.29 = [10 x i8] c"AT_RANDOM\00"
@AT_RANDOM = global i32 0
@.str.30 = [10 x i8] c"AT_SECURE\00"
@AT_SECURE = global i32 0
@.str.31 = [11 x i8] c"AT_SYSINFO\00"
@AT_SYSINFO = global i32 0
@.str.32 = [16 x i8] c"AT_SYSINFO_EHDR\00"
@AT_SYSINFO_EHDR = global i32 0
@.str.33 = [15 x i8] c"AT_UCACHEBSIZE\00"
@AT_UCACHEBSIZE = global i32 0
@.str.34 = [7 x i8] c"AT_UID\00"
@AT_UID = global i32 0
define i32 @main() {
%1 = load i32, i32* @AT_BASE
%2 = tail call i32 @getauxval(i32 %1)
%3 = tail call i32 @printf(i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i64 0, i64 0), i8* getelementptr inbounds ([8 x i8], [8 x i8]* @.str.1, i64 0, i64 0), i32 %2)
%4 = load i32, i32* @AT_BASE_PLATFORM
%5 = tail call i32 @getauxval(i32 %4)
%6 = tail call i32 @printf(i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i64 0, i64 0), i8* getelementptr inbounds ([17 x i8], [17 x i8]* @.str.2, i64 0, i64 0), i32 %5)
%7 = load i32, i32* @AT_CLKTCK
%8 = tail call i32 @getauxval(i32 %7)
%9 = tail call i32 @printf(i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i64 0, i64 0), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str.3, i64 0, i64 0), i32 %8)
%10 = load i32, i32* @AT_DCACHEBSIZE
%11 = tail call i32 @getauxval(i32 %10)
%12 = tail call i32 @printf(i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i64 0, i64 0), i8* getelementptr inbounds ([15 x i8], [15 x i8]* @.str.4, i64 0, i64 0), i32 %11)
%13 = load i32, i32* @AT_EGID
%14 = tail call i32 @getauxval(i32 %13)
%15 = tail call i32 @printf(i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i64 0, i64 0), i8* getelementptr inbounds ([8 x i8], [8 x i8]* @.str.5, i64 0, i64 0), i32 %14)
%16 = load i32, i32* @AT_ENTRY
%17 = tail call i32 @getauxval(i32 %16)
%18 = tail call i32 @printf(i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i64 0, i64 0), i8* getelementptr inbounds ([9 x i8], [9 x i8]* @.str.6, i64 0, i64 0), i32 %17)
%19 = load i32, i32* @AT_EUID
%20 = tail call i32 @getauxval(i32 %19)
%21 = tail call i32 @printf(i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i64 0, i64 0), i8* getelementptr inbounds ([8 x i8], [8 x i8]* @.str.7, i64 0, i64 0), i32 %20)
%22 = load i32, i32* @AT_EXECFD
%23 = tail call i32 @getauxval(i32 %22)
%24 = tail call i32 @printf(i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i64 0, i64 0), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str.8, i64 0, i64 0), i32 %23)
%25 = load i32, i32* @AT_EXECFN
%26 = tail call i32 @getauxval(i32 %25)
%27 = tail call i32 @printf(i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i64 0, i64 0), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str.9, i64 0, i64 0), i32 %26)
%28 = load i32, i32* @AT_FLAGS
%29 = tail call i32 @getauxval(i32 %28)
%30 = tail call i32 @printf(i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i64 0, i64 0), i8* getelementptr inbounds ([9 x i8], [9 x i8]* @.str.10, i64 0, i64 0), i32 %29)
%31 = load i32, i32* @AT_FPUCW
%32 = tail call i32 @getauxval(i32 %31)
%33 = tail call i32 @printf(i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i64 0, i64 0), i8* getelementptr inbounds ([9 x i8], [9 x i8]* @.str.11, i64 0, i64 0), i32 %32)
%34 = load i32, i32* @AT_GID
%35 = tail call i32 @getauxval(i32 %34)
%36 = tail call i32 @printf(i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i64 0, i64 0), i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str.12, i64 0, i64 0), i32 %35)
%37 = load i32, i32* @AT_HWCAP
%38 = tail call i32 @getauxval(i32 %37)
%39 = tail call i32 @printf(i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i64 0, i64 0), i8* getelementptr inbounds ([9 x i8], [9 x i8]* @.str.13, i64 0, i64 0), i32 %38)
%40 = load i32, i32* @AT_HWCAP2
%41 = tail call i32 @getauxval(i32 %40)
%42 = tail call i32 @printf(i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i64 0, i64 0), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str.14, i64 0, i64 0), i32 %41)
%43 = load i32, i32* @AT_ICACHEBSIZE
%44 = tail call i32 @getauxval(i32 %43)
%45 = tail call i32 @printf(i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i64 0, i64 0), i8* getelementptr inbounds ([15 x i8], [15 x i8]* @.str.15, i64 0, i64 0), i32 %44)
%46 = load i32, i32* @AT_L1D_CACHEGEOMETRY
%47 = tail call i32 @getauxval(i32 %46)
%48 = tail call i32 @printf(i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i64 0, i64 0), i8* getelementptr inbounds ([21 x i8], [21 x i8]* @.str.16, i64 0, i64 0), i32 %47)
%49 = load i32, i32* @AT_L1D_CACHESIZE
%50 = tail call i32 @getauxval(i32 %49)
%51 = tail call i32 @printf(i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i64 0, i64 0), i8* getelementptr inbounds ([17 x i8], [17 x i8]* @.str.17, i64 0, i64 0), i32 %50)
%52 = load i32, i32* @AT_L1I_CACHEGEOMETRY
%53 = tail call i32 @getauxval(i32 %52)
%54 = tail call i32 @printf(i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i64 0, i64 0), i8* getelementptr inbounds ([21 x i8], [21 x i8]* @.str.18, i64 0, i64 0), i32 %53)
%55 = load i32, i32* @AT_L1I_CACHESIZE
%56 = tail call i32 @getauxval(i32 %55)
%57 = tail call i32 @printf(i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i64 0, i64 0), i8* getelementptr inbounds ([17 x i8], [17 x i8]* @.str.19, i64 0, i64 0), i32 %56)
%58 = load i32, i32* @AT_L2_CACHEGEOMETRY
%59 = tail call i32 @getauxval(i32 %58)
%60 = tail call i32 @printf(i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i64 0, i64 0), i8* getelementptr inbounds ([20 x i8], [20 x i8]* @.str.20, i64 0, i64 0), i32 %59)
%61 = load i32, i32* @AT_L2_CACHESIZE
%62 = tail call i32 @getauxval(i32 %61)
%63 = tail call i32 @printf(i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i64 0, i64 0), i8* getelementptr inbounds ([16 x i8], [16 x i8]* @.str.21, i64 0, i64 0), i32 %62)
%64 = load i32, i32* @AT_L3_CACHEGEOMETRY
%65 = tail call i32 @getauxval(i32 %64)
%66 = tail call i32 @printf(i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i64 0, i64 0), i8* getelementptr inbounds ([20 x i8], [20 x i8]* @.str.22, i64 0, i64 0), i32 %65)
%67 = load i32, i32* @AT_L3_CACHESIZE
%68 = tail call i32 @getauxval(i32 %67)
%69 = tail call i32 @printf(i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i64 0, i64 0), i8* getelementptr inbounds ([16 x i8], [16 x i8]* @.str.23, i64 0, i64 0), i32 %68)
%70 = load i32, i32* @AT_PAGESZ
%71 = tail call i32 @getauxval(i32 %70)
%72 = tail call i32 @printf(i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i64 0, i64 0), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str.24, i64 0, i64 0), i32 %71)
%73 = load i32, i32* @AT_PHDR
%74 = tail call i32 @getauxval(i32 %73)
%75 = tail call i32 @printf(i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i64 0, i64 0), i8* getelementptr inbounds ([8 x i8], [8 x i8]* @.str.25, i64 0, i64 0), i32 %74)
%76 = load i32, i32* @AT_PHENT
%77 = tail call i32 @getauxval(i32 %76)
%78 = tail call i32 @printf(i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i64 0, i64 0), i8* getelementptr inbounds ([9 x i8], [9 x i8]* @.str.26, i64 0, i64 0), i32 %77)
%79 = load i32, i32* @AT_PHNUM
%80 = tail call i32 @getauxval(i32 %79)
%81 = tail call i32 @printf(i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i64 0, i64 0), i8* getelementptr inbounds ([9 x i8], [9 x i8]* @.str.27, i64 0, i64 0), i32 %80)
%82 = load i32, i32* @AT_PLATFORM
%83 = tail call i32 @getauxval(i32 %82)
%84 = tail call i32 @printf(i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i64 0, i64 0), i8* getelementptr inbounds ([12 x i8], [12 x i8]* @.str.28, i64 0, i64 0), i32 %83)
%85 = load i32, i32* @AT_RANDOM
%86 = tail call i32 @getauxval(i32 %85)
%87 = tail call i32 @printf(i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i64 0, i64 0), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str.29, i64 0, i64 0), i32 %86)
%88 = load i32, i32* @AT_SECURE
%89 = tail call i32 @getauxval(i32 %88)
%90 = tail call i32 @printf(i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i64 0, i64 0), i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str.30, i64 0, i64 0), i32 %89)
%91 = load i32, i32* @AT_SYSINFO
%92 = tail call i32 @getauxval(i32 %91)
%93 = tail call i32 @printf(i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i64 0, i64 0), i8* getelementptr inbounds ([11 x i8], [11 x i8]* @.str.31, i64 0, i64 0), i32 %92)
%94 = load i32, i32* @AT_SYSINFO_EHDR
%95 = tail call i32 @getauxval(i32 %94)
%96 = tail call i32 @printf(i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i64 0, i64 0), i8* getelementptr inbounds ([16 x i8], [16 x i8]* @.str.32, i64 0, i64 0), i32 %95)
%97 = load i32, i32* @AT_UCACHEBSIZE
%98 = tail call i32 @getauxval(i32 %97)
%99 = tail call i32 @printf(i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i64 0, i64 0), i8* getelementptr inbounds ([15 x i8], [15 x i8]* @.str.33, i64 0, i64 0), i32 %98)
%100 = load i32, i32* @AT_UID
%101 = tail call i32 @getauxval(i32 %100)
%102 = tail call i32 @printf(i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str, i64 0, i64 0), i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str.34, i64 0, i64 0), i32 %101)
ret i32 0
}