#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 */
typedef scalar_t__ uint8_t;
typedef int uint64_t;

/* Variables and functions */
int UINT8_C(int);
void fiat_p384_to_bytes(uint8_t out1[48], const uint64_t arg1[6]) {
  uint64_t x1;
  uint64_t x2;
  uint64_t x3;
  uint64_t x4;
  uint64_t x5;
  uint64_t x6;
  uint8_t x7;
  uint64_t x8;
  uint8_t x9;
  uint64_t x10;
  uint8_t x11;
  uint64_t x12;
  uint8_t x13;
  uint64_t x14;
  uint8_t x15;
  uint64_t x16;
  uint8_t x17;
  uint64_t x18;
  uint8_t x19;
  uint8_t x20;
  uint8_t x21;
  uint64_t x22;
  uint8_t x23;
  uint64_t x24;
  uint8_t x25;
  uint64_t x26;
  uint8_t x27;
  uint64_t x28;
  uint8_t x29;
  uint64_t x30;
  uint8_t x31;
  uint64_t x32;
  uint8_t x33;
  uint8_t x34;
  uint8_t x35;
  uint64_t x36;
  uint8_t x37;
  uint64_t x38;
  uint8_t x39;
  uint64_t x40;
  uint8_t x41;
  uint64_t x42;
  uint8_t x43;
  uint64_t x44;
  uint8_t x45;
  uint64_t x46;
  uint8_t x47;
  uint8_t x48;
  uint8_t x49;
  uint64_t x50;
  uint8_t x51;
  uint64_t x52;
  uint8_t x53;
  uint64_t x54;
  uint8_t x55;
  uint64_t x56;
  uint8_t x57;
  uint64_t x58;
  uint8_t x59;
  uint64_t x60;
  uint8_t x61;
  uint8_t x62;
  uint8_t x63;
  uint64_t x64;
  uint8_t x65;
  uint64_t x66;
  uint8_t x67;
  uint64_t x68;
  uint8_t x69;
  uint64_t x70;
  uint8_t x71;
  uint64_t x72;
  uint8_t x73;
  uint64_t x74;
  uint8_t x75;
  uint8_t x76;
  uint8_t x77;
  uint64_t x78;
  uint8_t x79;
  uint64_t x80;
  uint8_t x81;
  uint64_t x82;
  uint8_t x83;
  uint64_t x84;
  uint8_t x85;
  uint64_t x86;
  uint8_t x87;
  uint64_t x88;
  uint8_t x89;
  uint8_t x90;
  x1 = (arg1[5]);
  x2 = (arg1[4]);
  x3 = (arg1[3]);
  x4 = (arg1[2]);
  x5 = (arg1[1]);
  x6 = (arg1[0]);
  x7 = (uint8_t)(x6 & UINT8_C(0xff));
  x8 = (x6 >> 8);
  x9 = (uint8_t)(x8 & UINT8_C(0xff));
  x10 = (x8 >> 8);
  x11 = (uint8_t)(x10 & UINT8_C(0xff));
  x12 = (x10 >> 8);
  x13 = (uint8_t)(x12 & UINT8_C(0xff));
  x14 = (x12 >> 8);
  x15 = (uint8_t)(x14 & UINT8_C(0xff));
  x16 = (x14 >> 8);
  x17 = (uint8_t)(x16 & UINT8_C(0xff));
  x18 = (x16 >> 8);
  x19 = (uint8_t)(x18 & UINT8_C(0xff));
  x20 = (uint8_t)(x18 >> 8);
  x21 = (uint8_t)(x5 & UINT8_C(0xff));
  x22 = (x5 >> 8);
  x23 = (uint8_t)(x22 & UINT8_C(0xff));
  x24 = (x22 >> 8);
  x25 = (uint8_t)(x24 & UINT8_C(0xff));
  x26 = (x24 >> 8);
  x27 = (uint8_t)(x26 & UINT8_C(0xff));
  x28 = (x26 >> 8);
  x29 = (uint8_t)(x28 & UINT8_C(0xff));
  x30 = (x28 >> 8);
  x31 = (uint8_t)(x30 & UINT8_C(0xff));
  x32 = (x30 >> 8);
  x33 = (uint8_t)(x32 & UINT8_C(0xff));
  x34 = (uint8_t)(x32 >> 8);
  x35 = (uint8_t)(x4 & UINT8_C(0xff));
  x36 = (x4 >> 8);
  x37 = (uint8_t)(x36 & UINT8_C(0xff));
  x38 = (x36 >> 8);
  x39 = (uint8_t)(x38 & UINT8_C(0xff));
  x40 = (x38 >> 8);
  x41 = (uint8_t)(x40 & UINT8_C(0xff));
  x42 = (x40 >> 8);
  x43 = (uint8_t)(x42 & UINT8_C(0xff));
  x44 = (x42 >> 8);
  x45 = (uint8_t)(x44 & UINT8_C(0xff));
  x46 = (x44 >> 8);
  x47 = (uint8_t)(x46 & UINT8_C(0xff));
  x48 = (uint8_t)(x46 >> 8);
  x49 = (uint8_t)(x3 & UINT8_C(0xff));
  x50 = (x3 >> 8);
  x51 = (uint8_t)(x50 & UINT8_C(0xff));
  x52 = (x50 >> 8);
  x53 = (uint8_t)(x52 & UINT8_C(0xff));
  x54 = (x52 >> 8);
  x55 = (uint8_t)(x54 & UINT8_C(0xff));
  x56 = (x54 >> 8);
  x57 = (uint8_t)(x56 & UINT8_C(0xff));
  x58 = (x56 >> 8);
  x59 = (uint8_t)(x58 & UINT8_C(0xff));
  x60 = (x58 >> 8);
  x61 = (uint8_t)(x60 & UINT8_C(0xff));
  x62 = (uint8_t)(x60 >> 8);
  x63 = (uint8_t)(x2 & UINT8_C(0xff));
  x64 = (x2 >> 8);
  x65 = (uint8_t)(x64 & UINT8_C(0xff));
  x66 = (x64 >> 8);
  x67 = (uint8_t)(x66 & UINT8_C(0xff));
  x68 = (x66 >> 8);
  x69 = (uint8_t)(x68 & UINT8_C(0xff));
  x70 = (x68 >> 8);
  x71 = (uint8_t)(x70 & UINT8_C(0xff));
  x72 = (x70 >> 8);
  x73 = (uint8_t)(x72 & UINT8_C(0xff));
  x74 = (x72 >> 8);
  x75 = (uint8_t)(x74 & UINT8_C(0xff));
  x76 = (uint8_t)(x74 >> 8);
  x77 = (uint8_t)(x1 & UINT8_C(0xff));
  x78 = (x1 >> 8);
  x79 = (uint8_t)(x78 & UINT8_C(0xff));
  x80 = (x78 >> 8);
  x81 = (uint8_t)(x80 & UINT8_C(0xff));
  x82 = (x80 >> 8);
  x83 = (uint8_t)(x82 & UINT8_C(0xff));
  x84 = (x82 >> 8);
  x85 = (uint8_t)(x84 & UINT8_C(0xff));
  x86 = (x84 >> 8);
  x87 = (uint8_t)(x86 & UINT8_C(0xff));
  x88 = (x86 >> 8);
  x89 = (uint8_t)(x88 & UINT8_C(0xff));
  x90 = (uint8_t)(x88 >> 8);
  out1[0] = x7;
  out1[1] = x9;
  out1[2] = x11;
  out1[3] = x13;
  out1[4] = x15;
  out1[5] = x17;
  out1[6] = x19;
  out1[7] = x20;
  out1[8] = x21;
  out1[9] = x23;
  out1[10] = x25;
  out1[11] = x27;
  out1[12] = x29;
  out1[13] = x31;
  out1[14] = x33;
  out1[15] = x34;
  out1[16] = x35;
  out1[17] = x37;
  out1[18] = x39;
  out1[19] = x41;
  out1[20] = x43;
  out1[21] = x45;
  out1[22] = x47;
  out1[23] = x48;
  out1[24] = x49;
  out1[25] = x51;
  out1[26] = x53;
  out1[27] = x55;
  out1[28] = x57;
  out1[29] = x59;
  out1[30] = x61;
  out1[31] = x62;
  out1[32] = x63;
  out1[33] = x65;
  out1[34] = x67;
  out1[35] = x69;
  out1[36] = x71;
  out1[37] = x73;
  out1[38] = x75;
  out1[39] = x76;
  out1[40] = x77;
  out1[41] = x79;
  out1[42] = x81;
  out1[43] = x83;
  out1[44] = x85;
  out1[45] = x87;
  out1[46] = x89;
  out1[47] = x90;
}


x86 assembly (clang, -O0):
<fiat_p384_to_bytes>:
push   %rbp
mov    %rsp,%rbp
sub    $0x370,%rsp
mov    %rdi,-0x8(%rbp)
mov    %rsi,-0x10(%rbp)
mov    -0x10(%rbp),%rax
mov    0x14(%rax),%eax
mov    %eax,-0x14(%rbp)
mov    -0x10(%rbp),%rax
mov    0x10(%rax),%eax
mov    %eax,-0x18(%rbp)
mov    -0x10(%rbp),%rax
mov    0xc(%rax),%eax
mov    %eax,-0x1c(%rbp)
mov    -0x10(%rbp),%rax
mov    0x8(%rax),%eax
mov    %eax,-0x20(%rbp)
mov    -0x10(%rbp),%rax
mov    0x4(%rax),%eax
mov    %eax,-0x24(%rbp)
mov    -0x10(%rbp),%rax
mov    (%rax),%eax
mov    %eax,-0x28(%rbp)
mov    -0x28(%rbp),%eax
mov    %eax,-0x370(%rbp)
mov    $0xff,%edi
call   1030 <UINT8_C@plt>
mov    %eax,%ecx
mov    -0x370(%rbp),%eax
and    %ecx,%eax
cltq
mov    %rax,-0x30(%rbp)
mov    -0x28(%rbp),%eax
sar    $0x8,%eax
mov    %eax,-0x34(%rbp)
mov    -0x34(%rbp),%eax
mov    %eax,-0x36c(%rbp)
mov    $0xff,%edi
call   1030 <UINT8_C@plt>
mov    %eax,%ecx
mov    -0x36c(%rbp),%eax
and    %ecx,%eax
cltq
mov    %rax,-0x40(%rbp)
mov    -0x34(%rbp),%eax
sar    $0x8,%eax
mov    %eax,-0x44(%rbp)
mov    -0x44(%rbp),%eax
mov    %eax,-0x368(%rbp)
mov    $0xff,%edi
call   1030 <UINT8_C@plt>
mov    %eax,%ecx
mov    -0x368(%rbp),%eax
and    %ecx,%eax
cltq
mov    %rax,-0x50(%rbp)
mov    -0x44(%rbp),%eax
sar    $0x8,%eax
mov    %eax,-0x54(%rbp)
mov    -0x54(%rbp),%eax
mov    %eax,-0x364(%rbp)
mov    $0xff,%edi
call   1030 <UINT8_C@plt>
mov    %eax,%ecx
mov    -0x364(%rbp),%eax
and    %ecx,%eax
cltq
mov    %rax,-0x60(%rbp)
mov    -0x54(%rbp),%eax
sar    $0x8,%eax
mov    %eax,-0x64(%rbp)
mov    -0x64(%rbp),%eax
mov    %eax,-0x360(%rbp)
mov    $0xff,%edi
call   1030 <UINT8_C@plt>
mov    %eax,%ecx
mov    -0x360(%rbp),%eax
and    %ecx,%eax
cltq
mov    %rax,-0x70(%rbp)
mov    -0x64(%rbp),%eax
sar    $0x8,%eax
mov    %eax,-0x74(%rbp)
mov    -0x74(%rbp),%eax
mov    %eax,-0x35c(%rbp)
mov    $0xff,%edi
call   1030 <UINT8_C@plt>
mov    %eax,%ecx
mov    -0x35c(%rbp),%eax
and    %ecx,%eax
cltq
mov    %rax,-0x80(%rbp)
mov    -0x74(%rbp),%eax
sar    $0x8,%eax
mov    %eax,-0x84(%rbp)
mov    -0x84(%rbp),%eax
mov    %eax,-0x358(%rbp)
mov    $0xff,%edi
call   1030 <UINT8_C@plt>
mov    %eax,%ecx
mov    -0x358(%rbp),%eax
and    %ecx,%eax
cltq
mov    %rax,-0x90(%rbp)
mov    -0x84(%rbp),%eax
sar    $0x8,%eax
cltq
mov    %rax,-0x98(%rbp)
mov    -0x24(%rbp),%eax
mov    %eax,-0x354(%rbp)
mov    $0xff,%edi
call   1030 <UINT8_C@plt>
mov    %eax,%ecx
mov    -0x354(%rbp),%eax
and    %ecx,%eax
cltq
mov    %rax,-0xa0(%rbp)
mov    -0x24(%rbp),%eax
sar    $0x8,%eax
mov    %eax,-0xa4(%rbp)
mov    -0xa4(%rbp),%eax
mov    %eax,-0x350(%rbp)
mov    $0xff,%edi
call   1030 <UINT8_C@plt>
mov    %eax,%ecx
mov    -0x350(%rbp),%eax
and    %ecx,%eax
cltq
mov    %rax,-0xb0(%rbp)
mov    -0xa4(%rbp),%eax
sar    $0x8,%eax
mov    %eax,-0xb4(%rbp)
mov    -0xb4(%rbp),%eax
mov    %eax,-0x34c(%rbp)
mov    $0xff,%edi
call   1030 <UINT8_C@plt>
mov    %eax,%ecx
mov    -0x34c(%rbp),%eax
and    %ecx,%eax
cltq
mov    %rax,-0xc0(%rbp)
mov    -0xb4(%rbp),%eax
sar    $0x8,%eax
mov    %eax,-0xc4(%rbp)
mov    -0xc4(%rbp),%eax
mov    %eax,-0x348(%rbp)
mov    $0xff,%edi
call   1030 <UINT8_C@plt>
mov    %eax,%ecx
mov    -0x348(%rbp),%eax
and    %ecx,%eax
cltq
mov    %rax,-0xd0(%rbp)
mov    -0xc4(%rbp),%eax
sar    $0x8,%eax
mov    %eax,-0xd4(%rbp)
mov    -0xd4(%rbp),%eax
mov    %eax,-0x344(%rbp)
mov    $0xff,%edi
call   1030 <UINT8_C@plt>
mov    %eax,%ecx
mov    -0x344(%rbp),%eax
and    %ecx,%eax
cltq
mov    %rax,-0xe0(%rbp)
mov    -0xd4(%rbp),%eax
sar    $0x8,%eax
mov    %eax,-0xe4(%rbp)
mov    -0xe4(%rbp),%eax
mov    %eax,-0x340(%rbp)
mov    $0xff,%edi
call   1030 <UINT8_C@plt>
mov    %eax,%ecx
mov    -0x340(%rbp),%eax
and    %ecx,%eax
cltq
mov    %rax,-0xf0(%rbp)
mov    -0xe4(%rbp),%eax
sar    $0x8,%eax
mov    %eax,-0xf4(%rbp)
mov    -0xf4(%rbp),%eax
mov    %eax,-0x33c(%rbp)
mov    $0xff,%edi
call   1030 <UINT8_C@plt>
mov    %eax,%ecx
mov    -0x33c(%rbp),%eax
and    %ecx,%eax
cltq
mov    %rax,-0x100(%rbp)
mov    -0xf4(%rbp),%eax
sar    $0x8,%eax
cltq
mov    %rax,-0x108(%rbp)
mov    -0x20(%rbp),%eax
mov    %eax,-0x338(%rbp)
mov    $0xff,%edi
call   1030 <UINT8_C@plt>
mov    %eax,%ecx
mov    -0x338(%rbp),%eax
and    %ecx,%eax
cltq
mov    %rax,-0x110(%rbp)
mov    -0x20(%rbp),%eax
sar    $0x8,%eax
mov    %eax,-0x114(%rbp)
mov    -0x114(%rbp),%eax
mov    %eax,-0x334(%rbp)
mov    $0xff,%edi
call   1030 <UINT8_C@plt>
mov    %eax,%ecx
mov    -0x334(%rbp),%eax
and    %ecx,%eax
cltq
mov    %rax,-0x120(%rbp)
mov    -0x114(%rbp),%eax
sar    $0x8,%eax
mov    %eax,-0x124(%rbp)
mov    -0x124(%rbp),%eax
mov    %eax,-0x330(%rbp)
mov    $0xff,%edi
call   1030 <UINT8_C@plt>
mov    %eax,%ecx
mov    -0x330(%rbp),%eax
and    %ecx,%eax
cltq
mov    %rax,-0x130(%rbp)
mov    -0x124(%rbp),%eax
sar    $0x8,%eax
mov    %eax,-0x134(%rbp)
mov    -0x134(%rbp),%eax
mov    %eax,-0x32c(%rbp)
mov    $0xff,%edi
call   1030 <UINT8_C@plt>
mov    %eax,%ecx
mov    -0x32c(%rbp),%eax
and    %ecx,%eax
cltq
mov    %rax,-0x140(%rbp)
mov    -0x134(%rbp),%eax
sar    $0x8,%eax
mov    %eax,-0x144(%rbp)
mov    -0x144(%rbp),%eax
mov    %eax,-0x328(%rbp)
mov    $0xff,%edi
call   1030 <UINT8_C@plt>
mov    %eax,%ecx
mov    -0x328(%rbp),%eax
and    %ecx,%eax
cltq
mov    %rax,-0x150(%rbp)
mov    -0x144(%rbp),%eax
sar    $0x8,%eax
mov    %eax,-0x154(%rbp)
mov    -0x154(%rbp),%eax
mov    %eax,-0x324(%rbp)
mov    $0xff,%edi
call   1030 <UINT8_C@plt>
mov    %eax,%ecx
mov    -0x324(%rbp),%eax
and    %ecx,%eax
cltq
mov    %rax,-0x160(%rbp)
mov    -0x154(%rbp),%eax
sar    $0x8,%eax
mov    %eax,-0x164(%rbp)
mov    -0x164(%rbp),%eax
mov    %eax,-0x320(%rbp)
mov    $0xff,%edi
call   1030 <UINT8_C@plt>
mov    %eax,%ecx
mov    -0x320(%rbp),%eax
and    %ecx,%eax
cltq
mov    %rax,-0x170(%rbp)
mov    -0x164(%rbp),%eax
sar    $0x8,%eax
cltq
mov    %rax,-0x178(%rbp)
mov    -0x1c(%rbp),%eax
mov    %eax,-0x31c(%rbp)
mov    $0xff,%edi
call   1030 <UINT8_C@plt>
mov    %eax,%ecx
mov    -0x31c(%rbp),%eax
and    %ecx,%eax
cltq
mov    %rax,-0x180(%rbp)
mov    -0x1c(%rbp),%eax
sar    $0x8,%eax
mov    %eax,-0x184(%rbp)
mov    -0x184(%rbp),%eax
mov    %eax,-0x318(%rbp)
mov    $0xff,%edi
call   1030 <UINT8_C@plt>
mov    %eax,%ecx
mov    -0x318(%rbp),%eax
and    %ecx,%eax
cltq
mov    %rax,-0x190(%rbp)
mov    -0x184(%rbp),%eax
sar    $0x8,%eax
mov    %eax,-0x194(%rbp)
mov    -0x194(%rbp),%eax
mov    %eax,-0x314(%rbp)
mov    $0xff,%edi
call   1030 <UINT8_C@plt>
mov    %eax,%ecx
mov    -0x314(%rbp),%eax
and    %ecx,%eax
cltq
mov    %rax,-0x1a0(%rbp)
mov    -0x194(%rbp),%eax
sar    $0x8,%eax
mov    %eax,-0x1a4(%rbp)
mov    -0x1a4(%rbp),%eax
mov    %eax,-0x310(%rbp)
mov    $0xff,%edi
call   1030 <UINT8_C@plt>
mov    %eax,%ecx
mov    -0x310(%rbp),%eax
and    %ecx,%eax
cltq
mov    %rax,-0x1b0(%rbp)
mov    -0x1a4(%rbp),%eax
sar    $0x8,%eax
mov    %eax,-0x1b4(%rbp)
mov    -0x1b4(%rbp),%eax
mov    %eax,-0x30c(%rbp)
mov    $0xff,%edi
call   1030 <UINT8_C@plt>
mov    %eax,%ecx
mov    -0x30c(%rbp),%eax
and    %ecx,%eax
cltq
mov    %rax,-0x1c0(%rbp)
mov    -0x1b4(%rbp),%eax
sar    $0x8,%eax
mov    %eax,-0x1c4(%rbp)
mov    -0x1c4(%rbp),%eax
mov    %eax,-0x308(%rbp)
mov    $0xff,%edi
call   1030 <UINT8_C@plt>
mov    %eax,%ecx
mov    -0x308(%rbp),%eax
and    %ecx,%eax
cltq
mov    %rax,-0x1d0(%rbp)
mov    -0x1c4(%rbp),%eax
sar    $0x8,%eax
mov    %eax,-0x1d4(%rbp)
mov    -0x1d4(%rbp),%eax
mov    %eax,-0x304(%rbp)
mov    $0xff,%edi
call   1030 <UINT8_C@plt>
mov    %eax,%ecx
mov    -0x304(%rbp),%eax
and    %ecx,%eax
cltq
mov    %rax,-0x1e0(%rbp)
mov    -0x1d4(%rbp),%eax
sar    $0x8,%eax
cltq
mov    %rax,-0x1e8(%rbp)
mov    -0x18(%rbp),%eax
mov    %eax,-0x300(%rbp)
mov    $0xff,%edi
call   1030 <UINT8_C@plt>
mov    %eax,%ecx
mov    -0x300(%rbp),%eax
and    %ecx,%eax
cltq
mov    %rax,-0x1f0(%rbp)
mov    -0x18(%rbp),%eax
sar    $0x8,%eax
mov    %eax,-0x1f4(%rbp)
mov    -0x1f4(%rbp),%eax
mov    %eax,-0x2fc(%rbp)
mov    $0xff,%edi
call   1030 <UINT8_C@plt>
mov    %eax,%ecx
mov    -0x2fc(%rbp),%eax
and    %ecx,%eax
cltq
mov    %rax,-0x200(%rbp)
mov    -0x1f4(%rbp),%eax
sar    $0x8,%eax
mov    %eax,-0x204(%rbp)
mov    -0x204(%rbp),%eax
mov    %eax,-0x2f8(%rbp)
mov    $0xff,%edi
call   1030 <UINT8_C@plt>
mov    %eax,%ecx
mov    -0x2f8(%rbp),%eax
and    %ecx,%eax
cltq
mov    %rax,-0x210(%rbp)
mov    -0x204(%rbp),%eax
sar    $0x8,%eax
mov    %eax,-0x214(%rbp)
mov    -0x214(%rbp),%eax
mov    %eax,-0x2f4(%rbp)
mov    $0xff,%edi
call   1030 <UINT8_C@plt>
mov    %eax,%ecx
mov    -0x2f4(%rbp),%eax
and    %ecx,%eax
cltq
mov    %rax,-0x220(%rbp)
mov    -0x214(%rbp),%eax
sar    $0x8,%eax
mov    %eax,-0x224(%rbp)
mov    -0x224(%rbp),%eax
mov    %eax,-0x2f0(%rbp)
mov    $0xff,%edi
call   1030 <UINT8_C@plt>
mov    %eax,%ecx
mov    -0x2f0(%rbp),%eax
and    %ecx,%eax
cltq
mov    %rax,-0x230(%rbp)
mov    -0x224(%rbp),%eax
sar    $0x8,%eax
mov    %eax,-0x234(%rbp)
mov    -0x234(%rbp),%eax
mov    %eax,-0x2ec(%rbp)
mov    $0xff,%edi
call   1030 <UINT8_C@plt>
mov    %eax,%ecx
mov    -0x2ec(%rbp),%eax
and    %ecx,%eax
cltq
mov    %rax,-0x240(%rbp)
mov    -0x234(%rbp),%eax
sar    $0x8,%eax
mov    %eax,-0x244(%rbp)
mov    -0x244(%rbp),%eax
mov    %eax,-0x2e8(%rbp)
mov    $0xff,%edi
call   1030 <UINT8_C@plt>
mov    %eax,%ecx
mov    -0x2e8(%rbp),%eax
and    %ecx,%eax
cltq
mov    %rax,-0x250(%rbp)
mov    -0x244(%rbp),%eax
sar    $0x8,%eax
cltq
mov    %rax,-0x258(%rbp)
mov    -0x14(%rbp),%eax
mov    %eax,-0x2e4(%rbp)
mov    $0xff,%edi
call   1030 <UINT8_C@plt>
mov    %eax,%ecx
mov    -0x2e4(%rbp),%eax
and    %ecx,%eax
cltq
mov    %rax,-0x260(%rbp)
mov    -0x14(%rbp),%eax
sar    $0x8,%eax
mov    %eax,-0x264(%rbp)
mov    -0x264(%rbp),%eax
mov    %eax,-0x2e0(%rbp)
mov    $0xff,%edi
call   1030 <UINT8_C@plt>
mov    %eax,%ecx
mov    -0x2e0(%rbp),%eax
and    %ecx,%eax
cltq
mov    %rax,-0x270(%rbp)
mov    -0x264(%rbp),%eax
sar    $0x8,%eax
mov    %eax,-0x274(%rbp)
mov    -0x274(%rbp),%eax
mov    %eax,-0x2dc(%rbp)
mov    $0xff,%edi
call   1030 <UINT8_C@plt>
mov    %eax,%ecx
mov    -0x2dc(%rbp),%eax
and    %ecx,%eax
cltq
mov    %rax,-0x280(%rbp)
mov    -0x274(%rbp),%eax
sar    $0x8,%eax
mov    %eax,-0x284(%rbp)
mov    -0x284(%rbp),%eax
mov    %eax,-0x2d8(%rbp)
mov    $0xff,%edi
call   1030 <UINT8_C@plt>
mov    %eax,%ecx
mov    -0x2d8(%rbp),%eax
and    %ecx,%eax
cltq
mov    %rax,-0x290(%rbp)
mov    -0x284(%rbp),%eax
sar    $0x8,%eax
mov    %eax,-0x294(%rbp)
mov    -0x294(%rbp),%eax
mov    %eax,-0x2d4(%rbp)
mov    $0xff,%edi
call   1030 <UINT8_C@plt>
mov    %eax,%ecx
mov    -0x2d4(%rbp),%eax
and    %ecx,%eax
cltq
mov    %rax,-0x2a0(%rbp)
mov    -0x294(%rbp),%eax
sar    $0x8,%eax
mov    %eax,-0x2a4(%rbp)
mov    -0x2a4(%rbp),%eax
mov    %eax,-0x2d0(%rbp)
mov    $0xff,%edi
call   1030 <UINT8_C@plt>
mov    %eax,%ecx
mov    -0x2d0(%rbp),%eax
and    %ecx,%eax
cltq
mov    %rax,-0x2b0(%rbp)
mov    -0x2a4(%rbp),%eax
sar    $0x8,%eax
mov    %eax,-0x2b4(%rbp)
mov    -0x2b4(%rbp),%eax
mov    %eax,-0x2cc(%rbp)
mov    $0xff,%edi
call   1030 <UINT8_C@plt>
mov    %eax,%ecx
mov    -0x2cc(%rbp),%eax
and    %ecx,%eax
cltq
mov    %rax,-0x2c0(%rbp)
mov    -0x2b4(%rbp),%eax
sar    $0x8,%eax
cltq
mov    %rax,-0x2c8(%rbp)
mov    -0x30(%rbp),%rcx
mov    -0x8(%rbp),%rax
mov    %rcx,(%rax)
mov    -0x40(%rbp),%rcx
mov    -0x8(%rbp),%rax
mov    %rcx,0x8(%rax)
mov    -0x50(%rbp),%rcx
mov    -0x8(%rbp),%rax
mov    %rcx,0x10(%rax)
mov    -0x60(%rbp),%rcx
mov    -0x8(%rbp),%rax
mov    %rcx,0x18(%rax)
mov    -0x70(%rbp),%rcx
mov    -0x8(%rbp),%rax
mov    %rcx,0x20(%rax)
mov    -0x80(%rbp),%rcx
mov    -0x8(%rbp),%rax
mov    %rcx,0x28(%rax)
mov    -0x90(%rbp),%rcx
mov    -0x8(%rbp),%rax
mov    %rcx,0x30(%rax)
mov    -0x98(%rbp),%rcx
mov    -0x8(%rbp),%rax
mov    %rcx,0x38(%rax)
mov    -0xa0(%rbp),%rcx
mov    -0x8(%rbp),%rax
mov    %rcx,0x40(%rax)
mov    -0xb0(%rbp),%rcx
mov    -0x8(%rbp),%rax
mov    %rcx,0x48(%rax)
mov    -0xc0(%rbp),%rcx
mov    -0x8(%rbp),%rax
mov    %rcx,0x50(%rax)
mov    -0xd0(%rbp),%rcx
mov    -0x8(%rbp),%rax
mov    %rcx,0x58(%rax)
mov    -0xe0(%rbp),%rcx
mov    -0x8(%rbp),%rax
mov    %rcx,0x60(%rax)
mov    -0xf0(%rbp),%rcx
mov    -0x8(%rbp),%rax
mov    %rcx,0x68(%rax)
mov    -0x100(%rbp),%rcx
mov    -0x8(%rbp),%rax
mov    %rcx,0x70(%rax)
mov    -0x108(%rbp),%rcx
mov    -0x8(%rbp),%rax
mov    %rcx,0x78(%rax)
mov    -0x110(%rbp),%rcx
mov    -0x8(%rbp),%rax
mov    %rcx,0x80(%rax)
mov    -0x120(%rbp),%rcx
mov    -0x8(%rbp),%rax
mov    %rcx,0x88(%rax)
mov    -0x130(%rbp),%rcx
mov    -0x8(%rbp),%rax
mov    %rcx,0x90(%rax)
mov    -0x140(%rbp),%rcx
mov    -0x8(%rbp),%rax
mov    %rcx,0x98(%rax)
mov    -0x150(%rbp),%rcx
mov    -0x8(%rbp),%rax
mov    %rcx,0xa0(%rax)
mov    -0x160(%rbp),%rcx
mov    -0x8(%rbp),%rax
mov    %rcx,0xa8(%rax)
mov    -0x170(%rbp),%rcx
mov    -0x8(%rbp),%rax
mov    %rcx,0xb0(%rax)
mov    -0x178(%rbp),%rcx
mov    -0x8(%rbp),%rax
mov    %rcx,0xb8(%rax)
mov    -0x180(%rbp),%rcx
mov    -0x8(%rbp),%rax
mov    %rcx,0xc0(%rax)
mov    -0x190(%rbp),%rcx
mov    -0x8(%rbp),%rax
mov    %rcx,0xc8(%rax)
mov    -0x1a0(%rbp),%rcx
mov    -0x8(%rbp),%rax
mov    %rcx,0xd0(%rax)
mov    -0x1b0(%rbp),%rcx
mov    -0x8(%rbp),%rax
mov    %rcx,0xd8(%rax)
mov    -0x1c0(%rbp),%rcx
mov    -0x8(%rbp),%rax
mov    %rcx,0xe0(%rax)
mov    -0x1d0(%rbp),%rcx
mov    -0x8(%rbp),%rax
mov    %rcx,0xe8(%rax)
mov    -0x1e0(%rbp),%rcx
mov    -0x8(%rbp),%rax
mov    %rcx,0xf0(%rax)
mov    -0x1e8(%rbp),%rcx
mov    -0x8(%rbp),%rax
mov    %rcx,0xf8(%rax)
mov    -0x1f0(%rbp),%rcx
mov    -0x8(%rbp),%rax
mov    %rcx,0x100(%rax)
mov    -0x200(%rbp),%rcx
mov    -0x8(%rbp),%rax
mov    %rcx,0x108(%rax)
mov    -0x210(%rbp),%rcx
mov    -0x8(%rbp),%rax
mov    %rcx,0x110(%rax)
mov    -0x220(%rbp),%rcx
mov    -0x8(%rbp),%rax
mov    %rcx,0x118(%rax)
mov    -0x230(%rbp),%rcx
mov    -0x8(%rbp),%rax
mov    %rcx,0x120(%rax)
mov    -0x240(%rbp),%rcx
mov    -0x8(%rbp),%rax
mov    %rcx,0x128(%rax)
mov    -0x250(%rbp),%rcx
mov    -0x8(%rbp),%rax
mov    %rcx,0x130(%rax)
mov    -0x258(%rbp),%rcx
mov    -0x8(%rbp),%rax
mov    %rcx,0x138(%rax)
mov    -0x260(%rbp),%rcx
mov    -0x8(%rbp),%rax
mov    %rcx,0x140(%rax)
mov    -0x270(%rbp),%rcx
mov    -0x8(%rbp),%rax
mov    %rcx,0x148(%rax)
mov    -0x280(%rbp),%rcx
mov    -0x8(%rbp),%rax
mov    %rcx,0x150(%rax)
mov    -0x290(%rbp),%rcx
mov    -0x8(%rbp),%rax
mov    %rcx,0x158(%rax)
mov    -0x2a0(%rbp),%rcx
mov    -0x8(%rbp),%rax
mov    %rcx,0x160(%rax)
mov    -0x2b0(%rbp),%rcx
mov    -0x8(%rbp),%rax
mov    %rcx,0x168(%rax)
mov    -0x2c0(%rbp),%rcx
mov    -0x8(%rbp),%rax
mov    %rcx,0x170(%rax)
mov    -0x2c8(%rbp),%rcx
mov    -0x8(%rbp),%rax
mov    %rcx,0x178(%rax)
add    $0x370,%rsp
pop    %rbp
ret

x86 assembly (clang, -O2):
<fiat_p384_to_bytes>:
push   %rbp
push   %r15
push   %r14
push   %r13
push   %r12
push   %rbx
sub    $0x158,%rsp
mov    %rdi,%r13
mov    0x14(%rsi),%eax
mov    %eax,0x14(%rsp)
mov    0x10(%rsi),%eax
mov    %eax,0x8(%rsp)
mov    0xc(%rsi),%eax
mov    %eax,(%rsp)
mov    0x8(%rsi),%ebx
mov    (%rsi),%r14d
mov    0x4(%rsi),%r15d
mov    $0xff,%edi
call   1030 <UINT8_C@plt>
and    %r14d,%eax
cltq
mov    %rax,0x150(%rsp)
mov    %r14d,%r12d
sar    $0x8,%r12d
mov    $0xff,%edi
call   1030 <UINT8_C@plt>
and    %r12d,%eax
cltq
mov    %rax,0x148(%rsp)
mov    %r14d,%ebp
sar    $0x10,%ebp
mov    $0xff,%edi
call   1030 <UINT8_C@plt>
and    %ebp,%eax
cltq
mov    %rax,0x140(%rsp)
mov    %r14d,%ebp
sar    $0x18,%ebp
mov    $0xff,%edi
call   1030 <UINT8_C@plt>
and    %ebp,%eax
cltq
mov    %rax,0x138(%rsp)
sar    $0x1f,%r14d
mov    $0xff,%edi
call   1030 <UINT8_C@plt>
and    %r14d,%eax
cltq
mov    %rax,0x130(%rsp)
mov    $0xff,%edi
call   1030 <UINT8_C@plt>
and    %r14d,%eax
cltq
mov    %rax,0x128(%rsp)
mov    $0xff,%edi
call   1030 <UINT8_C@plt>
and    %r14d,%eax
cltq
mov    %rax,0x120(%rsp)
movslq %r14d,%rax
mov    %rax,0x118(%rsp)
mov    $0xff,%edi
call   1030 <UINT8_C@plt>
and    %r15d,%eax
cltq
mov    %rax,0x110(%rsp)
mov    %r15d,%ebp
sar    $0x8,%ebp
mov    $0xff,%edi
call   1030 <UINT8_C@plt>
and    %ebp,%eax
cltq
mov    %rax,0x108(%rsp)
mov    %r15d,%ebp
sar    $0x10,%ebp
mov    $0xff,%edi
call   1030 <UINT8_C@plt>
and    %ebp,%eax
cltq
mov    %rax,0x100(%rsp)
mov    %r15d,%ebp
sar    $0x18,%ebp
mov    $0xff,%edi
call   1030 <UINT8_C@plt>
and    %ebp,%eax
cltq
mov    %rax,0xf8(%rsp)
sar    $0x1f,%r15d
mov    $0xff,%edi
call   1030 <UINT8_C@plt>
and    %r15d,%eax
cltq
mov    %rax,0xf0(%rsp)
mov    $0xff,%edi
call   1030 <UINT8_C@plt>
and    %r15d,%eax
cltq
mov    %rax,0xe8(%rsp)
mov    $0xff,%edi
call   1030 <UINT8_C@plt>
and    %r15d,%eax
cltq
mov    %rax,0xe0(%rsp)
movslq %r15d,%rax
mov    %rax,0xd8(%rsp)
mov    $0xff,%edi
call   1030 <UINT8_C@plt>
and    %ebx,%eax
cltq
mov    %rax,0xd0(%rsp)
mov    %ebx,%ebp
sar    $0x8,%ebp
mov    $0xff,%edi
call   1030 <UINT8_C@plt>
and    %ebp,%eax
cltq
mov    %rax,0xc8(%rsp)
mov    %ebx,%ebp
sar    $0x10,%ebp
mov    $0xff,%edi
call   1030 <UINT8_C@plt>
and    %ebp,%eax
cltq
mov    %rax,0xc0(%rsp)
mov    %ebx,%ebp
sar    $0x18,%ebp
mov    $0xff,%edi
call   1030 <UINT8_C@plt>
and    %ebp,%eax
cltq
mov    %rax,0xb8(%rsp)
sar    $0x1f,%ebx
mov    $0xff,%edi
call   1030 <UINT8_C@plt>
and    %ebx,%eax
cltq
mov    %rax,0xb0(%rsp)
mov    $0xff,%edi
call   1030 <UINT8_C@plt>
and    %ebx,%eax
cltq
mov    %rax,0xa8(%rsp)
mov    $0xff,%edi
call   1030 <UINT8_C@plt>
and    %ebx,%eax
cltq
mov    %rax,0xa0(%rsp)
movslq %ebx,%rax
mov    %rax,0x98(%rsp)
mov    $0xff,%edi
call   1030 <UINT8_C@plt>
mov    (%rsp),%ebx
and    %ebx,%eax
cltq
mov    %rax,0x90(%rsp)
mov    %ebx,%ebp
sar    $0x8,%ebp
mov    $0xff,%edi
call   1030 <UINT8_C@plt>
and    %ebp,%eax
cltq
mov    %rax,0x88(%rsp)
mov    %ebx,%ebp
sar    $0x10,%ebp
mov    $0xff,%edi
call   1030 <UINT8_C@plt>
and    %ebp,%eax
cltq
mov    %rax,0x80(%rsp)
mov    %ebx,%ebp
sar    $0x18,%ebp
mov    $0xff,%edi
call   1030 <UINT8_C@plt>
and    %ebp,%eax
cltq
mov    %rax,0x78(%rsp)
sar    $0x1f,%ebx
mov    $0xff,%edi
call   1030 <UINT8_C@plt>
and    %ebx,%eax
cltq
mov    %rax,(%rsp)
mov    $0xff,%edi
call   1030 <UINT8_C@plt>
and    %ebx,%eax
cltq
mov    %rax,0x70(%rsp)
mov    $0xff,%edi
call   1030 <UINT8_C@plt>
and    %ebx,%eax
cltq
mov    %rax,0x68(%rsp)
movslq %ebx,%rax
mov    %rax,0x60(%rsp)
mov    $0xff,%edi
call   1030 <UINT8_C@plt>
mov    0x8(%rsp),%ebx
and    %ebx,%eax
cltq
mov    %rax,0x58(%rsp)
mov    %ebx,%ebp
sar    $0x8,%ebp
mov    $0xff,%edi
call   1030 <UINT8_C@plt>
and    %ebp,%eax
cltq
mov    %rax,0x50(%rsp)
mov    %ebx,%ebp
sar    $0x10,%ebp
mov    $0xff,%edi
call   1030 <UINT8_C@plt>
and    %ebp,%eax
cltq
mov    %rax,0x48(%rsp)
mov    %ebx,%ebp
sar    $0x18,%ebp
mov    $0xff,%edi
call   1030 <UINT8_C@plt>
and    %ebp,%eax
cltq
mov    %rax,0x40(%rsp)
sar    $0x1f,%ebx
mov    $0xff,%edi
call   1030 <UINT8_C@plt>
and    %ebx,%eax
cltq
mov    %rax,0x8(%rsp)
mov    $0xff,%edi
call   1030 <UINT8_C@plt>
and    %ebx,%eax
cltq
mov    %rax,0x38(%rsp)
mov    $0xff,%edi
call   1030 <UINT8_C@plt>
and    %ebx,%eax
cltq
mov    %rax,0x30(%rsp)
movslq %ebx,%rax
mov    %rax,0x28(%rsp)
mov    $0xff,%edi
call   1030 <UINT8_C@plt>
mov    0x14(%rsp),%r15d
and    %r15d,%eax
cltq
mov    %rax,0x20(%rsp)
mov    %r15d,%ebp
sar    $0x8,%ebp
mov    $0xff,%edi
call   1030 <UINT8_C@plt>
and    %ebp,%eax
cltq
mov    %rax,0x18(%rsp)
mov    %r15d,%ebp
sar    $0x10,%ebp
mov    $0xff,%edi
call   1030 <UINT8_C@plt>
and    %ebp,%eax
movslq %eax,%r14
mov    %r15d,%ebp
sar    $0x18,%ebp
mov    $0xff,%edi
call   1030 <UINT8_C@plt>
and    %ebp,%eax
movslq %eax,%rbx
sar    $0x1f,%r15d
mov    $0xff,%edi
call   1030 <UINT8_C@plt>
and    %r15d,%eax
movslq %eax,%rbp
mov    $0xff,%edi
call   1030 <UINT8_C@plt>
and    %r15d,%eax
movslq %eax,%r12
mov    $0xff,%edi
call   1030 <UINT8_C@plt>
mov    0x150(%rsp),%rcx
mov    %rcx,0x0(%r13)
mov    0x148(%rsp),%rcx
mov    %rcx,0x8(%r13)
mov    0x140(%rsp),%rcx
mov    %rcx,0x10(%r13)
mov    0x138(%rsp),%rcx
mov    %rcx,0x18(%r13)
mov    0x130(%rsp),%rcx
mov    %rcx,0x20(%r13)
mov    0x128(%rsp),%rcx
mov    %rcx,0x28(%r13)
mov    0x120(%rsp),%rcx
mov    %rcx,0x30(%r13)
mov    0x118(%rsp),%rcx
mov    %rcx,0x38(%r13)
mov    0x110(%rsp),%rcx
mov    %rcx,0x40(%r13)
mov    0x108(%rsp),%rcx
mov    %rcx,0x48(%r13)
mov    0x100(%rsp),%rcx
mov    %rcx,0x50(%r13)
mov    0xf8(%rsp),%rcx
mov    %rcx,0x58(%r13)
mov    0xf0(%rsp),%rcx
mov    %rcx,0x60(%r13)
mov    0xe8(%rsp),%rcx
mov    %rcx,0x68(%r13)
mov    0xe0(%rsp),%rcx
mov    %rcx,0x70(%r13)
mov    0xd8(%rsp),%rcx
mov    %rcx,0x78(%r13)
mov    0xd0(%rsp),%rcx
mov    %rcx,0x80(%r13)
mov    0xc8(%rsp),%rcx
mov    %rcx,0x88(%r13)
mov    0xc0(%rsp),%rcx
mov    %rcx,0x90(%r13)
mov    0xb8(%rsp),%rcx
mov    %rcx,0x98(%r13)
mov    0xb0(%rsp),%rcx
mov    %rcx,0xa0(%r13)
mov    0xa8(%rsp),%rcx
mov    %rcx,0xa8(%r13)
mov    0xa0(%rsp),%rcx
mov    %rcx,0xb0(%r13)
mov    0x98(%rsp),%rcx
mov    %rcx,0xb8(%r13)
mov    0x90(%rsp),%rcx
mov    %rcx,0xc0(%r13)
mov    0x88(%rsp),%rcx
mov    %rcx,0xc8(%r13)
mov    0x80(%rsp),%rcx
mov    %rcx,0xd0(%r13)
mov    0x78(%rsp),%rcx
mov    %rcx,0xd8(%r13)
mov    (%rsp),%rcx
mov    %rcx,0xe0(%r13)
mov    0x70(%rsp),%rcx
mov    %rcx,0xe8(%r13)
mov    0x68(%rsp),%rcx
mov    %rcx,0xf0(%r13)
mov    0x60(%rsp),%rcx
mov    %rcx,0xf8(%r13)
mov    0x58(%rsp),%rcx
mov    %rcx,0x100(%r13)
mov    0x50(%rsp),%rcx
mov    %rcx,0x108(%r13)
mov    0x48(%rsp),%rcx
mov    %rcx,0x110(%r13)
mov    0x40(%rsp),%rcx
mov    %rcx,0x118(%r13)
mov    0x8(%rsp),%rcx
mov    %rcx,0x120(%r13)
mov    0x38(%rsp),%rcx
mov    %rcx,0x128(%r13)
mov    0x30(%rsp),%rcx
mov    %rcx,0x130(%r13)
mov    0x28(%rsp),%rcx
mov    %rcx,0x138(%r13)
mov    0x20(%rsp),%rcx
mov    %rcx,0x140(%r13)
mov    0x18(%rsp),%rcx
mov    %rcx,0x148(%r13)
mov    %r14,0x150(%r13)
mov    %rbx,0x158(%r13)
mov    %rbp,0x160(%r13)
mov    %r12,0x168(%r13)
and    %r15d,%eax
cltq
mov    %rax,0x170(%r13)
movslq %r15d,%rax
mov    %rax,0x178(%r13)
add    $0x158,%rsp
pop    %rbx
pop    %r12
pop    %r13
pop    %r14
pop    %r15
pop    %rbp
ret

LLVM IR (-O0):
define void @fiat_p384_to_bytes(i64* %0, i32* %1) {
%3 = alloca i64*
%4 = alloca i32*
%5 = alloca i32
%6 = alloca i32
%7 = alloca i32
%8 = alloca i32
%9 = alloca i32
%10 = alloca i32
%11 = alloca i64
%12 = alloca i32
%13 = alloca i64
%14 = alloca i32
%15 = alloca i64
%16 = alloca i32
%17 = alloca i64
%18 = alloca i32
%19 = alloca i64
%20 = alloca i32
%21 = alloca i64
%22 = alloca i32
%23 = alloca i64
%24 = alloca i64
%25 = alloca i64
%26 = alloca i32
%27 = alloca i64
%28 = alloca i32
%29 = alloca i64
%30 = alloca i32
%31 = alloca i64
%32 = alloca i32
%33 = alloca i64
%34 = alloca i32
%35 = alloca i64
%36 = alloca i32
%37 = alloca i64
%38 = alloca i64
%39 = alloca i64
%40 = alloca i32
%41 = alloca i64
%42 = alloca i32
%43 = alloca i64
%44 = alloca i32
%45 = alloca i64
%46 = alloca i32
%47 = alloca i64
%48 = alloca i32
%49 = alloca i64
%50 = alloca i32
%51 = alloca i64
%52 = alloca i64
%53 = alloca i64
%54 = alloca i32
%55 = alloca i64
%56 = alloca i32
%57 = alloca i64
%58 = alloca i32
%59 = alloca i64
%60 = alloca i32
%61 = alloca i64
%62 = alloca i32
%63 = alloca i64
%64 = alloca i32
%65 = alloca i64
%66 = alloca i64
%67 = alloca i64
%68 = alloca i32
%69 = alloca i64
%70 = alloca i32
%71 = alloca i64
%72 = alloca i32
%73 = alloca i64
%74 = alloca i32
%75 = alloca i64
%76 = alloca i32
%77 = alloca i64
%78 = alloca i32
%79 = alloca i64
%80 = alloca i64
%81 = alloca i64
%82 = alloca i32
%83 = alloca i64
%84 = alloca i32
%85 = alloca i64
%86 = alloca i32
%87 = alloca i64
%88 = alloca i32
%89 = alloca i64
%90 = alloca i32
%91 = alloca i64
%92 = alloca i32
%93 = alloca i64
%94 = alloca i64
store i64* %0, i64** %3
store i32* %1, i32** %4
%95 = load i32*, i32** %4
%96 = getelementptr inbounds i32, i32* %95, i64 5
%97 = load i32, i32* %96
store i32 %97, i32* %5
%98 = load i32*, i32** %4
%99 = getelementptr inbounds i32, i32* %98, i64 4
%100 = load i32, i32* %99
store i32 %100, i32* %6
%101 = load i32*, i32** %4
%102 = getelementptr inbounds i32, i32* %101, i64 3
%103 = load i32, i32* %102
store i32 %103, i32* %7
%104 = load i32*, i32** %4
%105 = getelementptr inbounds i32, i32* %104, i64 2
%106 = load i32, i32* %105
store i32 %106, i32* %8
%107 = load i32*, i32** %4
%108 = getelementptr inbounds i32, i32* %107, i64 1
%109 = load i32, i32* %108
store i32 %109, i32* %9
%110 = load i32*, i32** %4
%111 = getelementptr inbounds i32, i32* %110, i64 0
%112 = load i32, i32* %111
store i32 %112, i32* %10
%113 = load i32, i32* %10
%114 = call i32 @UINT8_C(i32 255)
%115 = and i32 %113, %114
%116 = sext i32 %115 to i64
store i64 %116, i64* %11
%117 = load i32, i32* %10
%118 = ashr i32 %117, 8
store i32 %118, i32* %12
%119 = load i32, i32* %12
%120 = call i32 @UINT8_C(i32 255)
%121 = and i32 %119, %120
%122 = sext i32 %121 to i64
store i64 %122, i64* %13
%123 = load i32, i32* %12
%124 = ashr i32 %123, 8
store i32 %124, i32* %14
%125 = load i32, i32* %14
%126 = call i32 @UINT8_C(i32 255)
%127 = and i32 %125, %126
%128 = sext i32 %127 to i64
store i64 %128, i64* %15
%129 = load i32, i32* %14
%130 = ashr i32 %129, 8
store i32 %130, i32* %16
%131 = load i32, i32* %16
%132 = call i32 @UINT8_C(i32 255)
%133 = and i32 %131, %132
%134 = sext i32 %133 to i64
store i64 %134, i64* %17
%135 = load i32, i32* %16
%136 = ashr i32 %135, 8
store i32 %136, i32* %18
%137 = load i32, i32* %18
%138 = call i32 @UINT8_C(i32 255)
%139 = and i32 %137, %138
%140 = sext i32 %139 to i64
store i64 %140, i64* %19
%141 = load i32, i32* %18
%142 = ashr i32 %141, 8
store i32 %142, i32* %20
%143 = load i32, i32* %20
%144 = call i32 @UINT8_C(i32 255)
%145 = and i32 %143, %144
%146 = sext i32 %145 to i64
store i64 %146, i64* %21
%147 = load i32, i32* %20
%148 = ashr i32 %147, 8
store i32 %148, i32* %22
%149 = load i32, i32* %22
%150 = call i32 @UINT8_C(i32 255)
%151 = and i32 %149, %150
%152 = sext i32 %151 to i64
store i64 %152, i64* %23
%153 = load i32, i32* %22
%154 = ashr i32 %153, 8
%155 = sext i32 %154 to i64
store i64 %155, i64* %24
%156 = load i32, i32* %9
%157 = call i32 @UINT8_C(i32 255)
%158 = and i32 %156, %157
%159 = sext i32 %158 to i64
store i64 %159, i64* %25
%160 = load i32, i32* %9
%161 = ashr i32 %160, 8
store i32 %161, i32* %26
%162 = load i32, i32* %26
%163 = call i32 @UINT8_C(i32 255)
%164 = and i32 %162, %163
%165 = sext i32 %164 to i64
store i64 %165, i64* %27
%166 = load i32, i32* %26
%167 = ashr i32 %166, 8
store i32 %167, i32* %28
%168 = load i32, i32* %28
%169 = call i32 @UINT8_C(i32 255)
%170 = and i32 %168, %169
%171 = sext i32 %170 to i64
store i64 %171, i64* %29
%172 = load i32, i32* %28
%173 = ashr i32 %172, 8
store i32 %173, i32* %30
%174 = load i32, i32* %30
%175 = call i32 @UINT8_C(i32 255)
%176 = and i32 %174, %175
%177 = sext i32 %176 to i64
store i64 %177, i64* %31
%178 = load i32, i32* %30
%179 = ashr i32 %178, 8
store i32 %179, i32* %32
%180 = load i32, i32* %32
%181 = call i32 @UINT8_C(i32 255)
%182 = and i32 %180, %181
%183 = sext i32 %182 to i64
store i64 %183, i64* %33
%184 = load i32, i32* %32
%185 = ashr i32 %184, 8
store i32 %185, i32* %34
%186 = load i32, i32* %34
%187 = call i32 @UINT8_C(i32 255)
%188 = and i32 %186, %187
%189 = sext i32 %188 to i64
store i64 %189, i64* %35
%190 = load i32, i32* %34
%191 = ashr i32 %190, 8
store i32 %191, i32* %36
%192 = load i32, i32* %36
%193 = call i32 @UINT8_C(i32 255)
%194 = and i32 %192, %193
%195 = sext i32 %194 to i64
store i64 %195, i64* %37
%196 = load i32, i32* %36
%197 = ashr i32 %196, 8
%198 = sext i32 %197 to i64
store i64 %198, i64* %38
%199 = load i32, i32* %8
%200 = call i32 @UINT8_C(i32 255)
%201 = and i32 %199, %200
%202 = sext i32 %201 to i64
store i64 %202, i64* %39
%203 = load i32, i32* %8
%204 = ashr i32 %203, 8
store i32 %204, i32* %40
%205 = load i32, i32* %40
%206 = call i32 @UINT8_C(i32 255)
%207 = and i32 %205, %206
%208 = sext i32 %207 to i64
store i64 %208, i64* %41
%209 = load i32, i32* %40
%210 = ashr i32 %209, 8
store i32 %210, i32* %42
%211 = load i32, i32* %42
%212 = call i32 @UINT8_C(i32 255)
%213 = and i32 %211, %212
%214 = sext i32 %213 to i64
store i64 %214, i64* %43
%215 = load i32, i32* %42
%216 = ashr i32 %215, 8
store i32 %216, i32* %44
%217 = load i32, i32* %44
%218 = call i32 @UINT8_C(i32 255)
%219 = and i32 %217, %218
%220 = sext i32 %219 to i64
store i64 %220, i64* %45
%221 = load i32, i32* %44
%222 = ashr i32 %221, 8
store i32 %222, i32* %46
%223 = load i32, i32* %46
%224 = call i32 @UINT8_C(i32 255)
%225 = and i32 %223, %224
%226 = sext i32 %225 to i64
store i64 %226, i64* %47
%227 = load i32, i32* %46
%228 = ashr i32 %227, 8
store i32 %228, i32* %48
%229 = load i32, i32* %48
%230 = call i32 @UINT8_C(i32 255)
%231 = and i32 %229, %230
%232 = sext i32 %231 to i64
store i64 %232, i64* %49
%233 = load i32, i32* %48
%234 = ashr i32 %233, 8
store i32 %234, i32* %50
%235 = load i32, i32* %50
%236 = call i32 @UINT8_C(i32 255)
%237 = and i32 %235, %236
%238 = sext i32 %237 to i64
store i64 %238, i64* %51
%239 = load i32, i32* %50
%240 = ashr i32 %239, 8
%241 = sext i32 %240 to i64
store i64 %241, i64* %52
%242 = load i32, i32* %7
%243 = call i32 @UINT8_C(i32 255)
%244 = and i32 %242, %243
%245 = sext i32 %244 to i64
store i64 %245, i64* %53
%246 = load i32, i32* %7
%247 = ashr i32 %246, 8
store i32 %247, i32* %54
%248 = load i32, i32* %54
%249 = call i32 @UINT8_C(i32 255)
%250 = and i32 %248, %249
%251 = sext i32 %250 to i64
store i64 %251, i64* %55
%252 = load i32, i32* %54
%253 = ashr i32 %252, 8
store i32 %253, i32* %56
%254 = load i32, i32* %56
%255 = call i32 @UINT8_C(i32 255)
%256 = and i32 %254, %255
%257 = sext i32 %256 to i64
store i64 %257, i64* %57
%258 = load i32, i32* %56
%259 = ashr i32 %258, 8
store i32 %259, i32* %58
%260 = load i32, i32* %58
%261 = call i32 @UINT8_C(i32 255)
%262 = and i32 %260, %261
%263 = sext i32 %262 to i64
store i64 %263, i64* %59
%264 = load i32, i32* %58
%265 = ashr i32 %264, 8
store i32 %265, i32* %60
%266 = load i32, i32* %60
%267 = call i32 @UINT8_C(i32 255)
%268 = and i32 %266, %267
%269 = sext i32 %268 to i64
store i64 %269, i64* %61
%270 = load i32, i32* %60
%271 = ashr i32 %270, 8
store i32 %271, i32* %62
%272 = load i32, i32* %62
%273 = call i32 @UINT8_C(i32 255)
%274 = and i32 %272, %273
%275 = sext i32 %274 to i64
store i64 %275, i64* %63
%276 = load i32, i32* %62
%277 = ashr i32 %276, 8
store i32 %277, i32* %64
%278 = load i32, i32* %64
%279 = call i32 @UINT8_C(i32 255)
%280 = and i32 %278, %279
%281 = sext i32 %280 to i64
store i64 %281, i64* %65
%282 = load i32, i32* %64
%283 = ashr i32 %282, 8
%284 = sext i32 %283 to i64
store i64 %284, i64* %66
%285 = load i32, i32* %6
%286 = call i32 @UINT8_C(i32 255)
%287 = and i32 %285, %286
%288 = sext i32 %287 to i64
store i64 %288, i64* %67
%289 = load i32, i32* %6
%290 = ashr i32 %289, 8
store i32 %290, i32* %68
%291 = load i32, i32* %68
%292 = call i32 @UINT8_C(i32 255)
%293 = and i32 %291, %292
%294 = sext i32 %293 to i64
store i64 %294, i64* %69
%295 = load i32, i32* %68
%296 = ashr i32 %295, 8
store i32 %296, i32* %70
%297 = load i32, i32* %70
%298 = call i32 @UINT8_C(i32 255)
%299 = and i32 %297, %298
%300 = sext i32 %299 to i64
store i64 %300, i64* %71
%301 = load i32, i32* %70
%302 = ashr i32 %301, 8
store i32 %302, i32* %72
%303 = load i32, i32* %72
%304 = call i32 @UINT8_C(i32 255)
%305 = and i32 %303, %304
%306 = sext i32 %305 to i64
store i64 %306, i64* %73
%307 = load i32, i32* %72
%308 = ashr i32 %307, 8
store i32 %308, i32* %74
%309 = load i32, i32* %74
%310 = call i32 @UINT8_C(i32 255)
%311 = and i32 %309, %310
%312 = sext i32 %311 to i64
store i64 %312, i64* %75
%313 = load i32, i32* %74
%314 = ashr i32 %313, 8
store i32 %314, i32* %76
%315 = load i32, i32* %76
%316 = call i32 @UINT8_C(i32 255)
%317 = and i32 %315, %316
%318 = sext i32 %317 to i64
store i64 %318, i64* %77
%319 = load i32, i32* %76
%320 = ashr i32 %319, 8
store i32 %320, i32* %78
%321 = load i32, i32* %78
%322 = call i32 @UINT8_C(i32 255)
%323 = and i32 %321, %322
%324 = sext i32 %323 to i64
store i64 %324, i64* %79
%325 = load i32, i32* %78
%326 = ashr i32 %325, 8
%327 = sext i32 %326 to i64
store i64 %327, i64* %80
%328 = load i32, i32* %5
%329 = call i32 @UINT8_C(i32 255)
%330 = and i32 %328, %329
%331 = sext i32 %330 to i64
store i64 %331, i64* %81
%332 = load i32, i32* %5
%333 = ashr i32 %332, 8
store i32 %333, i32* %82
%334 = load i32, i32* %82
%335 = call i32 @UINT8_C(i32 255)
%336 = and i32 %334, %335
%337 = sext i32 %336 to i64
store i64 %337, i64* %83
%338 = load i32, i32* %82
%339 = ashr i32 %338, 8
store i32 %339, i32* %84
%340 = load i32, i32* %84
%341 = call i32 @UINT8_C(i32 255)
%342 = and i32 %340, %341
%343 = sext i32 %342 to i64
store i64 %343, i64* %85
%344 = load i32, i32* %84
%345 = ashr i32 %344, 8
store i32 %345, i32* %86
%346 = load i32, i32* %86
%347 = call i32 @UINT8_C(i32 255)
%348 = and i32 %346, %347
%349 = sext i32 %348 to i64
store i64 %349, i64* %87
%350 = load i32, i32* %86
%351 = ashr i32 %350, 8
store i32 %351, i32* %88
%352 = load i32, i32* %88
%353 = call i32 @UINT8_C(i32 255)
%354 = and i32 %352, %353
%355 = sext i32 %354 to i64
store i64 %355, i64* %89
%356 = load i32, i32* %88
%357 = ashr i32 %356, 8
store i32 %357, i32* %90
%358 = load i32, i32* %90
%359 = call i32 @UINT8_C(i32 255)
%360 = and i32 %358, %359
%361 = sext i32 %360 to i64
store i64 %361, i64* %91
%362 = load i32, i32* %90
%363 = ashr i32 %362, 8
store i32 %363, i32* %92
%364 = load i32, i32* %92
%365 = call i32 @UINT8_C(i32 255)
%366 = and i32 %364, %365
%367 = sext i32 %366 to i64
store i64 %367, i64* %93
%368 = load i32, i32* %92
%369 = ashr i32 %368, 8
%370 = sext i32 %369 to i64
store i64 %370, i64* %94
%371 = load i64, i64* %11
%372 = load i64*, i64** %3
%373 = getelementptr inbounds i64, i64* %372, i64 0
store i64 %371, i64* %373
%374 = load i64, i64* %13
%375 = load i64*, i64** %3
%376 = getelementptr inbounds i64, i64* %375, i64 1
store i64 %374, i64* %376
%377 = load i64, i64* %15
%378 = load i64*, i64** %3
%379 = getelementptr inbounds i64, i64* %378, i64 2
store i64 %377, i64* %379
%380 = load i64, i64* %17
%381 = load i64*, i64** %3
%382 = getelementptr inbounds i64, i64* %381, i64 3
store i64 %380, i64* %382
%383 = load i64, i64* %19
%384 = load i64*, i64** %3
%385 = getelementptr inbounds i64, i64* %384, i64 4
store i64 %383, i64* %385
%386 = load i64, i64* %21
%387 = load i64*, i64** %3
%388 = getelementptr inbounds i64, i64* %387, i64 5
store i64 %386, i64* %388
%389 = load i64, i64* %23
%390 = load i64*, i64** %3
%391 = getelementptr inbounds i64, i64* %390, i64 6
store i64 %389, i64* %391
%392 = load i64, i64* %24
%393 = load i64*, i64** %3
%394 = getelementptr inbounds i64, i64* %393, i64 7
store i64 %392, i64* %394
%395 = load i64, i64* %25
%396 = load i64*, i64** %3
%397 = getelementptr inbounds i64, i64* %396, i64 8
store i64 %395, i64* %397
%398 = load i64, i64* %27
%399 = load i64*, i64** %3
%400 = getelementptr inbounds i64, i64* %399, i64 9
store i64 %398, i64* %400
%401 = load i64, i64* %29
%402 = load i64*, i64** %3
%403 = getelementptr inbounds i64, i64* %402, i64 10
store i64 %401, i64* %403
%404 = load i64, i64* %31
%405 = load i64*, i64** %3
%406 = getelementptr inbounds i64, i64* %405, i64 11
store i64 %404, i64* %406
%407 = load i64, i64* %33
%408 = load i64*, i64** %3
%409 = getelementptr inbounds i64, i64* %408, i64 12
store i64 %407, i64* %409
%410 = load i64, i64* %35
%411 = load i64*, i64** %3
%412 = getelementptr inbounds i64, i64* %411, i64 13
store i64 %410, i64* %412
%413 = load i64, i64* %37
%414 = load i64*, i64** %3
%415 = getelementptr inbounds i64, i64* %414, i64 14
store i64 %413, i64* %415
%416 = load i64, i64* %38
%417 = load i64*, i64** %3
%418 = getelementptr inbounds i64, i64* %417, i64 15
store i64 %416, i64* %418
%419 = load i64, i64* %39
%420 = load i64*, i64** %3
%421 = getelementptr inbounds i64, i64* %420, i64 16
store i64 %419, i64* %421
%422 = load i64, i64* %41
%423 = load i64*, i64** %3
%424 = getelementptr inbounds i64, i64* %423, i64 17
store i64 %422, i64* %424
%425 = load i64, i64* %43
%426 = load i64*, i64** %3
%427 = getelementptr inbounds i64, i64* %426, i64 18
store i64 %425, i64* %427
%428 = load i64, i64* %45
%429 = load i64*, i64** %3
%430 = getelementptr inbounds i64, i64* %429, i64 19
store i64 %428, i64* %430
%431 = load i64, i64* %47
%432 = load i64*, i64** %3
%433 = getelementptr inbounds i64, i64* %432, i64 20
store i64 %431, i64* %433
%434 = load i64, i64* %49
%435 = load i64*, i64** %3
%436 = getelementptr inbounds i64, i64* %435, i64 21
store i64 %434, i64* %436
%437 = load i64, i64* %51
%438 = load i64*, i64** %3
%439 = getelementptr inbounds i64, i64* %438, i64 22
store i64 %437, i64* %439
%440 = load i64, i64* %52
%441 = load i64*, i64** %3
%442 = getelementptr inbounds i64, i64* %441, i64 23
store i64 %440, i64* %442
%443 = load i64, i64* %53
%444 = load i64*, i64** %3
%445 = getelementptr inbounds i64, i64* %444, i64 24
store i64 %443, i64* %445
%446 = load i64, i64* %55
%447 = load i64*, i64** %3
%448 = getelementptr inbounds i64, i64* %447, i64 25
store i64 %446, i64* %448
%449 = load i64, i64* %57
%450 = load i64*, i64** %3
%451 = getelementptr inbounds i64, i64* %450, i64 26
store i64 %449, i64* %451
%452 = load i64, i64* %59
%453 = load i64*, i64** %3
%454 = getelementptr inbounds i64, i64* %453, i64 27
store i64 %452, i64* %454
%455 = load i64, i64* %61
%456 = load i64*, i64** %3
%457 = getelementptr inbounds i64, i64* %456, i64 28
store i64 %455, i64* %457
%458 = load i64, i64* %63
%459 = load i64*, i64** %3
%460 = getelementptr inbounds i64, i64* %459, i64 29
store i64 %458, i64* %460
%461 = load i64, i64* %65
%462 = load i64*, i64** %3
%463 = getelementptr inbounds i64, i64* %462, i64 30
store i64 %461, i64* %463
%464 = load i64, i64* %66
%465 = load i64*, i64** %3
%466 = getelementptr inbounds i64, i64* %465, i64 31
store i64 %464, i64* %466
%467 = load i64, i64* %67
%468 = load i64*, i64** %3
%469 = getelementptr inbounds i64, i64* %468, i64 32
store i64 %467, i64* %469
%470 = load i64, i64* %69
%471 = load i64*, i64** %3
%472 = getelementptr inbounds i64, i64* %471, i64 33
store i64 %470, i64* %472
%473 = load i64, i64* %71
%474 = load i64*, i64** %3
%475 = getelementptr inbounds i64, i64* %474, i64 34
store i64 %473, i64* %475
%476 = load i64, i64* %73
%477 = load i64*, i64** %3
%478 = getelementptr inbounds i64, i64* %477, i64 35
store i64 %476, i64* %478
%479 = load i64, i64* %75
%480 = load i64*, i64** %3
%481 = getelementptr inbounds i64, i64* %480, i64 36
store i64 %479, i64* %481
%482 = load i64, i64* %77
%483 = load i64*, i64** %3
%484 = getelementptr inbounds i64, i64* %483, i64 37
store i64 %482, i64* %484
%485 = load i64, i64* %79
%486 = load i64*, i64** %3
%487 = getelementptr inbounds i64, i64* %486, i64 38
store i64 %485, i64* %487
%488 = load i64, i64* %80
%489 = load i64*, i64** %3
%490 = getelementptr inbounds i64, i64* %489, i64 39
store i64 %488, i64* %490
%491 = load i64, i64* %81
%492 = load i64*, i64** %3
%493 = getelementptr inbounds i64, i64* %492, i64 40
store i64 %491, i64* %493
%494 = load i64, i64* %83
%495 = load i64*, i64** %3
%496 = getelementptr inbounds i64, i64* %495, i64 41
store i64 %494, i64* %496
%497 = load i64, i64* %85
%498 = load i64*, i64** %3
%499 = getelementptr inbounds i64, i64* %498, i64 42
store i64 %497, i64* %499
%500 = load i64, i64* %87
%501 = load i64*, i64** %3
%502 = getelementptr inbounds i64, i64* %501, i64 43
store i64 %500, i64* %502
%503 = load i64, i64* %89
%504 = load i64*, i64** %3
%505 = getelementptr inbounds i64, i64* %504, i64 44
store i64 %503, i64* %505
%506 = load i64, i64* %91
%507 = load i64*, i64** %3
%508 = getelementptr inbounds i64, i64* %507, i64 45
store i64 %506, i64* %508
%509 = load i64, i64* %93
%510 = load i64*, i64** %3
%511 = getelementptr inbounds i64, i64* %510, i64 46
store i64 %509, i64* %511
%512 = load i64, i64* %94
%513 = load i64*, i64** %3
%514 = getelementptr inbounds i64, i64* %513, i64 47
store i64 %512, i64* %514
ret void
}

LLVM IR (-O2):
define void @fiat_p384_to_bytes(i64* writeonly %0, i32* nocapture %1) {
%3 = getelementptr inbounds i32, i32* %1, i64 5
%4 = load i32, i32* %3
%5 = getelementptr inbounds i32, i32* %1, i64 4
%6 = load i32, i32* %5
%7 = getelementptr inbounds i32, i32* %1, i64 3
%8 = load i32, i32* %7
%9 = getelementptr inbounds i32, i32* %1, i64 2
%10 = load i32, i32* %9
%11 = getelementptr inbounds i32, i32* %1, i64 1
%12 = load i32, i32* %11
%13 = load i32, i32* %1
%14 = tail call i32 @UINT8_C(i32 255)
%15 = and i32 %14, %13
%16 = sext i32 %15 to i64
%17 = ashr i32 %13, 8
%18 = tail call i32 @UINT8_C(i32 255)
%19 = and i32 %18, %17
%20 = sext i32 %19 to i64
%21 = ashr i32 %13, 16
%22 = tail call i32 @UINT8_C(i32 255)
%23 = and i32 %22, %21
%24 = sext i32 %23 to i64
%25 = ashr i32 %13, 24
%26 = tail call i32 @UINT8_C(i32 255)
%27 = and i32 %26, %25
%28 = sext i32 %27 to i64
%29 = ashr i32 %13, 31
%30 = tail call i32 @UINT8_C(i32 255)
%31 = and i32 %30, %29
%32 = sext i32 %31 to i64
%33 = tail call i32 @UINT8_C(i32 255)
%34 = and i32 %33, %29
%35 = sext i32 %34 to i64
%36 = tail call i32 @UINT8_C(i32 255)
%37 = and i32 %36, %29
%38 = sext i32 %37 to i64
%39 = sext i32 %29 to i64
%40 = tail call i32 @UINT8_C(i32 255)
%41 = and i32 %40, %12
%42 = sext i32 %41 to i64
%43 = ashr i32 %12, 8
%44 = tail call i32 @UINT8_C(i32 255)
%45 = and i32 %44, %43
%46 = sext i32 %45 to i64
%47 = ashr i32 %12, 16
%48 = tail call i32 @UINT8_C(i32 255)
%49 = and i32 %48, %47
%50 = sext i32 %49 to i64
%51 = ashr i32 %12, 24
%52 = tail call i32 @UINT8_C(i32 255)
%53 = and i32 %52, %51
%54 = sext i32 %53 to i64
%55 = ashr i32 %12, 31
%56 = tail call i32 @UINT8_C(i32 255)
%57 = and i32 %56, %55
%58 = sext i32 %57 to i64
%59 = tail call i32 @UINT8_C(i32 255)
%60 = and i32 %59, %55
%61 = sext i32 %60 to i64
%62 = tail call i32 @UINT8_C(i32 255)
%63 = and i32 %62, %55
%64 = sext i32 %63 to i64
%65 = sext i32 %55 to i64
%66 = tail call i32 @UINT8_C(i32 255)
%67 = and i32 %66, %10
%68 = sext i32 %67 to i64
%69 = ashr i32 %10, 8
%70 = tail call i32 @UINT8_C(i32 255)
%71 = and i32 %70, %69
%72 = sext i32 %71 to i64
%73 = ashr i32 %10, 16
%74 = tail call i32 @UINT8_C(i32 255)
%75 = and i32 %74, %73
%76 = sext i32 %75 to i64
%77 = ashr i32 %10, 24
%78 = tail call i32 @UINT8_C(i32 255)
%79 = and i32 %78, %77
%80 = sext i32 %79 to i64
%81 = ashr i32 %10, 31
%82 = tail call i32 @UINT8_C(i32 255)
%83 = and i32 %82, %81
%84 = sext i32 %83 to i64
%85 = tail call i32 @UINT8_C(i32 255)
%86 = and i32 %85, %81
%87 = sext i32 %86 to i64
%88 = tail call i32 @UINT8_C(i32 255)
%89 = and i32 %88, %81
%90 = sext i32 %89 to i64
%91 = sext i32 %81 to i64
%92 = tail call i32 @UINT8_C(i32 255)
%93 = and i32 %92, %8
%94 = sext i32 %93 to i64
%95 = ashr i32 %8, 8
%96 = tail call i32 @UINT8_C(i32 255)
%97 = and i32 %96, %95
%98 = sext i32 %97 to i64
%99 = ashr i32 %8, 16
%100 = tail call i32 @UINT8_C(i32 255)
%101 = and i32 %100, %99
%102 = sext i32 %101 to i64
%103 = ashr i32 %8, 24
%104 = tail call i32 @UINT8_C(i32 255)
%105 = and i32 %104, %103
%106 = sext i32 %105 to i64
%107 = ashr i32 %8, 31
%108 = tail call i32 @UINT8_C(i32 255)
%109 = and i32 %108, %107
%110 = sext i32 %109 to i64
%111 = tail call i32 @UINT8_C(i32 255)
%112 = and i32 %111, %107
%113 = sext i32 %112 to i64
%114 = tail call i32 @UINT8_C(i32 255)
%115 = and i32 %114, %107
%116 = sext i32 %115 to i64
%117 = sext i32 %107 to i64
%118 = tail call i32 @UINT8_C(i32 255)
%119 = and i32 %118, %6
%120 = sext i32 %119 to i64
%121 = ashr i32 %6, 8
%122 = tail call i32 @UINT8_C(i32 255)
%123 = and i32 %122, %121
%124 = sext i32 %123 to i64
%125 = ashr i32 %6, 16
%126 = tail call i32 @UINT8_C(i32 255)
%127 = and i32 %126, %125
%128 = sext i32 %127 to i64
%129 = ashr i32 %6, 24
%130 = tail call i32 @UINT8_C(i32 255)
%131 = and i32 %130, %129
%132 = sext i32 %131 to i64
%133 = ashr i32 %6, 31
%134 = tail call i32 @UINT8_C(i32 255)
%135 = and i32 %134, %133
%136 = sext i32 %135 to i64
%137 = tail call i32 @UINT8_C(i32 255)
%138 = and i32 %137, %133
%139 = sext i32 %138 to i64
%140 = tail call i32 @UINT8_C(i32 255)
%141 = and i32 %140, %133
%142 = sext i32 %141 to i64
%143 = sext i32 %133 to i64
%144 = tail call i32 @UINT8_C(i32 255)
%145 = and i32 %144, %4
%146 = sext i32 %145 to i64
%147 = ashr i32 %4, 8
%148 = tail call i32 @UINT8_C(i32 255)
%149 = and i32 %148, %147
%150 = sext i32 %149 to i64
%151 = ashr i32 %4, 16
%152 = tail call i32 @UINT8_C(i32 255)
%153 = and i32 %152, %151
%154 = sext i32 %153 to i64
%155 = ashr i32 %4, 24
%156 = tail call i32 @UINT8_C(i32 255)
%157 = and i32 %156, %155
%158 = sext i32 %157 to i64
%159 = ashr i32 %4, 31
%160 = tail call i32 @UINT8_C(i32 255)
%161 = and i32 %160, %159
%162 = sext i32 %161 to i64
%163 = tail call i32 @UINT8_C(i32 255)
%164 = and i32 %163, %159
%165 = sext i32 %164 to i64
%166 = tail call i32 @UINT8_C(i32 255)
%167 = and i32 %166, %159
%168 = sext i32 %167 to i64
%169 = sext i32 %159 to i64
store i64 %16, i64* %0
%170 = getelementptr inbounds i64, i64* %0, i64 1
store i64 %20, i64* %170
%171 = getelementptr inbounds i64, i64* %0, i64 2
store i64 %24, i64* %171
%172 = getelementptr inbounds i64, i64* %0, i64 3
store i64 %28, i64* %172
%173 = getelementptr inbounds i64, i64* %0, i64 4
store i64 %32, i64* %173
%174 = getelementptr inbounds i64, i64* %0, i64 5
store i64 %35, i64* %174
%175 = getelementptr inbounds i64, i64* %0, i64 6
store i64 %38, i64* %175
%176 = getelementptr inbounds i64, i64* %0, i64 7
store i64 %39, i64* %176
%177 = getelementptr inbounds i64, i64* %0, i64 8
store i64 %42, i64* %177
%178 = getelementptr inbounds i64, i64* %0, i64 9
store i64 %46, i64* %178
%179 = getelementptr inbounds i64, i64* %0, i64 10
store i64 %50, i64* %179
%180 = getelementptr inbounds i64, i64* %0, i64 11
store i64 %54, i64* %180
%181 = getelementptr inbounds i64, i64* %0, i64 12
store i64 %58, i64* %181
%182 = getelementptr inbounds i64, i64* %0, i64 13
store i64 %61, i64* %182
%183 = getelementptr inbounds i64, i64* %0, i64 14
store i64 %64, i64* %183
%184 = getelementptr inbounds i64, i64* %0, i64 15
store i64 %65, i64* %184
%185 = getelementptr inbounds i64, i64* %0, i64 16
store i64 %68, i64* %185
%186 = getelementptr inbounds i64, i64* %0, i64 17
store i64 %72, i64* %186
%187 = getelementptr inbounds i64, i64* %0, i64 18
store i64 %76, i64* %187
%188 = getelementptr inbounds i64, i64* %0, i64 19
store i64 %80, i64* %188
%189 = getelementptr inbounds i64, i64* %0, i64 20
store i64 %84, i64* %189
%190 = getelementptr inbounds i64, i64* %0, i64 21
store i64 %87, i64* %190
%191 = getelementptr inbounds i64, i64* %0, i64 22
store i64 %90, i64* %191
%192 = getelementptr inbounds i64, i64* %0, i64 23
store i64 %91, i64* %192
%193 = getelementptr inbounds i64, i64* %0, i64 24
store i64 %94, i64* %193
%194 = getelementptr inbounds i64, i64* %0, i64 25
store i64 %98, i64* %194
%195 = getelementptr inbounds i64, i64* %0, i64 26
store i64 %102, i64* %195
%196 = getelementptr inbounds i64, i64* %0, i64 27
store i64 %106, i64* %196
%197 = getelementptr inbounds i64, i64* %0, i64 28
store i64 %110, i64* %197
%198 = getelementptr inbounds i64, i64* %0, i64 29
store i64 %113, i64* %198
%199 = getelementptr inbounds i64, i64* %0, i64 30
store i64 %116, i64* %199
%200 = getelementptr inbounds i64, i64* %0, i64 31
store i64 %117, i64* %200
%201 = getelementptr inbounds i64, i64* %0, i64 32
store i64 %120, i64* %201
%202 = getelementptr inbounds i64, i64* %0, i64 33
store i64 %124, i64* %202
%203 = getelementptr inbounds i64, i64* %0, i64 34
store i64 %128, i64* %203
%204 = getelementptr inbounds i64, i64* %0, i64 35
store i64 %132, i64* %204
%205 = getelementptr inbounds i64, i64* %0, i64 36
store i64 %136, i64* %205
%206 = getelementptr inbounds i64, i64* %0, i64 37
store i64 %139, i64* %206
%207 = getelementptr inbounds i64, i64* %0, i64 38
store i64 %142, i64* %207
%208 = getelementptr inbounds i64, i64* %0, i64 39
store i64 %143, i64* %208
%209 = getelementptr inbounds i64, i64* %0, i64 40
store i64 %146, i64* %209
%210 = getelementptr inbounds i64, i64* %0, i64 41
store i64 %150, i64* %210
%211 = getelementptr inbounds i64, i64* %0, i64 42
store i64 %154, i64* %211
%212 = getelementptr inbounds i64, i64* %0, i64 43
store i64 %158, i64* %212
%213 = getelementptr inbounds i64, i64* %0, i64 44
store i64 %162, i64* %213
%214 = getelementptr inbounds i64, i64* %0, i64 45
store i64 %165, i64* %214
%215 = getelementptr inbounds i64, i64* %0, i64 46
store i64 %168, i64* %215
%216 = getelementptr inbounds i64, i64* %0, i64 47
store i64 %169, i64* %216
ret void
}