#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 uint32_t;

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


x86 assembly (clang, -O0):
<fiat_p384_to_bytes>:
push   %rbp
mov    %rsp,%rbp
sub    $0x310,%rsp
mov    %rdi,-0x8(%rbp)
mov    %rsi,-0x10(%rbp)
mov    -0x10(%rbp),%rax
mov    0x2c(%rax),%eax
mov    %eax,-0x14(%rbp)
mov    -0x10(%rbp),%rax
mov    0x28(%rax),%eax
mov    %eax,-0x18(%rbp)
mov    -0x10(%rbp),%rax
mov    0x24(%rax),%eax
mov    %eax,-0x1c(%rbp)
mov    -0x10(%rbp),%rax
mov    0x20(%rax),%eax
mov    %eax,-0x20(%rbp)
mov    -0x10(%rbp),%rax
mov    0x1c(%rax),%eax
mov    %eax,-0x24(%rbp)
mov    -0x10(%rbp),%rax
mov    0x18(%rax),%eax
mov    %eax,-0x28(%rbp)
mov    -0x10(%rbp),%rax
mov    0x14(%rax),%eax
mov    %eax,-0x2c(%rbp)
mov    -0x10(%rbp),%rax
mov    0x10(%rax),%eax
mov    %eax,-0x30(%rbp)
mov    -0x10(%rbp),%rax
mov    0xc(%rax),%eax
mov    %eax,-0x34(%rbp)
mov    -0x10(%rbp),%rax
mov    0x8(%rax),%eax
mov    %eax,-0x38(%rbp)
mov    -0x10(%rbp),%rax
mov    0x4(%rax),%eax
mov    %eax,-0x3c(%rbp)
mov    -0x10(%rbp),%rax
mov    (%rax),%eax
mov    %eax,-0x40(%rbp)
mov    -0x40(%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,-0x48(%rbp)
mov    -0x40(%rbp),%eax
sar    $0x8,%eax
mov    %eax,-0x4c(%rbp)
mov    -0x4c(%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,-0x58(%rbp)
mov    -0x4c(%rbp),%eax
sar    $0x8,%eax
mov    %eax,-0x5c(%rbp)
mov    -0x5c(%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,-0x68(%rbp)
mov    -0x5c(%rbp),%eax
sar    $0x8,%eax
cltq
mov    %rax,-0x70(%rbp)
mov    -0x3c(%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,-0x78(%rbp)
mov    -0x3c(%rbp),%eax
sar    $0x8,%eax
mov    %eax,-0x7c(%rbp)
mov    -0x7c(%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,-0x88(%rbp)
mov    -0x7c(%rbp),%eax
sar    $0x8,%eax
mov    %eax,-0x8c(%rbp)
mov    -0x8c(%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,-0x98(%rbp)
mov    -0x8c(%rbp),%eax
sar    $0x8,%eax
cltq
mov    %rax,-0xa0(%rbp)
mov    -0x38(%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,-0xa8(%rbp)
mov    -0x38(%rbp),%eax
sar    $0x8,%eax
mov    %eax,-0xac(%rbp)
mov    -0xac(%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,-0xb8(%rbp)
mov    -0xac(%rbp),%eax
sar    $0x8,%eax
mov    %eax,-0xbc(%rbp)
mov    -0xbc(%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,-0xc8(%rbp)
mov    -0xbc(%rbp),%eax
sar    $0x8,%eax
cltq
mov    %rax,-0xd0(%rbp)
mov    -0x34(%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,-0xd8(%rbp)
mov    -0x34(%rbp),%eax
sar    $0x8,%eax
mov    %eax,-0xdc(%rbp)
mov    -0xdc(%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,-0xe8(%rbp)
mov    -0xdc(%rbp),%eax
sar    $0x8,%eax
mov    %eax,-0xec(%rbp)
mov    -0xec(%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,-0xf8(%rbp)
mov    -0xec(%rbp),%eax
sar    $0x8,%eax
cltq
mov    %rax,-0x100(%rbp)
mov    -0x30(%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,-0x108(%rbp)
mov    -0x30(%rbp),%eax
sar    $0x8,%eax
mov    %eax,-0x10c(%rbp)
mov    -0x10c(%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,-0x118(%rbp)
mov    -0x10c(%rbp),%eax
sar    $0x8,%eax
mov    %eax,-0x11c(%rbp)
mov    -0x11c(%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,-0x128(%rbp)
mov    -0x11c(%rbp),%eax
sar    $0x8,%eax
cltq
mov    %rax,-0x130(%rbp)
mov    -0x2c(%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,-0x138(%rbp)
mov    -0x2c(%rbp),%eax
sar    $0x8,%eax
mov    %eax,-0x13c(%rbp)
mov    -0x13c(%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,-0x148(%rbp)
mov    -0x13c(%rbp),%eax
sar    $0x8,%eax
mov    %eax,-0x14c(%rbp)
mov    -0x14c(%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,-0x158(%rbp)
mov    -0x14c(%rbp),%eax
sar    $0x8,%eax
cltq
mov    %rax,-0x160(%rbp)
mov    -0x28(%rbp),%eax
mov    %eax,-0x2c8(%rbp)
mov    $0xff,%edi
call   1030 <UINT8_C@plt>
mov    %eax,%ecx
mov    -0x2c8(%rbp),%eax
and    %ecx,%eax
cltq
mov    %rax,-0x168(%rbp)
mov    -0x28(%rbp),%eax
sar    $0x8,%eax
mov    %eax,-0x16c(%rbp)
mov    -0x16c(%rbp),%eax
mov    %eax,-0x2c4(%rbp)
mov    $0xff,%edi
call   1030 <UINT8_C@plt>
mov    %eax,%ecx
mov    -0x2c4(%rbp),%eax
and    %ecx,%eax
cltq
mov    %rax,-0x178(%rbp)
mov    -0x16c(%rbp),%eax
sar    $0x8,%eax
mov    %eax,-0x17c(%rbp)
mov    -0x17c(%rbp),%eax
mov    %eax,-0x2c0(%rbp)
mov    $0xff,%edi
call   1030 <UINT8_C@plt>
mov    %eax,%ecx
mov    -0x2c0(%rbp),%eax
and    %ecx,%eax
cltq
mov    %rax,-0x188(%rbp)
mov    -0x17c(%rbp),%eax
sar    $0x8,%eax
cltq
mov    %rax,-0x190(%rbp)
mov    -0x24(%rbp),%eax
mov    %eax,-0x2bc(%rbp)
mov    $0xff,%edi
call   1030 <UINT8_C@plt>
mov    %eax,%ecx
mov    -0x2bc(%rbp),%eax
and    %ecx,%eax
cltq
mov    %rax,-0x198(%rbp)
mov    -0x24(%rbp),%eax
sar    $0x8,%eax
mov    %eax,-0x19c(%rbp)
mov    -0x19c(%rbp),%eax
mov    %eax,-0x2b8(%rbp)
mov    $0xff,%edi
call   1030 <UINT8_C@plt>
mov    %eax,%ecx
mov    -0x2b8(%rbp),%eax
and    %ecx,%eax
cltq
mov    %rax,-0x1a8(%rbp)
mov    -0x19c(%rbp),%eax
sar    $0x8,%eax
mov    %eax,-0x1ac(%rbp)
mov    -0x1ac(%rbp),%eax
mov    %eax,-0x2b4(%rbp)
mov    $0xff,%edi
call   1030 <UINT8_C@plt>
mov    %eax,%ecx
mov    -0x2b4(%rbp),%eax
and    %ecx,%eax
cltq
mov    %rax,-0x1b8(%rbp)
mov    -0x1ac(%rbp),%eax
sar    $0x8,%eax
cltq
mov    %rax,-0x1c0(%rbp)
mov    -0x20(%rbp),%eax
mov    %eax,-0x2b0(%rbp)
mov    $0xff,%edi
call   1030 <UINT8_C@plt>
mov    %eax,%ecx
mov    -0x2b0(%rbp),%eax
and    %ecx,%eax
cltq
mov    %rax,-0x1c8(%rbp)
mov    -0x20(%rbp),%eax
sar    $0x8,%eax
mov    %eax,-0x1cc(%rbp)
mov    -0x1cc(%rbp),%eax
mov    %eax,-0x2ac(%rbp)
mov    $0xff,%edi
call   1030 <UINT8_C@plt>
mov    %eax,%ecx
mov    -0x2ac(%rbp),%eax
and    %ecx,%eax
cltq
mov    %rax,-0x1d8(%rbp)
mov    -0x1cc(%rbp),%eax
sar    $0x8,%eax
mov    %eax,-0x1dc(%rbp)
mov    -0x1dc(%rbp),%eax
mov    %eax,-0x2a8(%rbp)
mov    $0xff,%edi
call   1030 <UINT8_C@plt>
mov    %eax,%ecx
mov    -0x2a8(%rbp),%eax
and    %ecx,%eax
cltq
mov    %rax,-0x1e8(%rbp)
mov    -0x1dc(%rbp),%eax
sar    $0x8,%eax
cltq
mov    %rax,-0x1f0(%rbp)
mov    -0x1c(%rbp),%eax
mov    %eax,-0x2a4(%rbp)
mov    $0xff,%edi
call   1030 <UINT8_C@plt>
mov    %eax,%ecx
mov    -0x2a4(%rbp),%eax
and    %ecx,%eax
cltq
mov    %rax,-0x1f8(%rbp)
mov    -0x1c(%rbp),%eax
sar    $0x8,%eax
mov    %eax,-0x1fc(%rbp)
mov    -0x1fc(%rbp),%eax
mov    %eax,-0x2a0(%rbp)
mov    $0xff,%edi
call   1030 <UINT8_C@plt>
mov    %eax,%ecx
mov    -0x2a0(%rbp),%eax
and    %ecx,%eax
cltq
mov    %rax,-0x208(%rbp)
mov    -0x1fc(%rbp),%eax
sar    $0x8,%eax
mov    %eax,-0x20c(%rbp)
mov    -0x20c(%rbp),%eax
mov    %eax,-0x29c(%rbp)
mov    $0xff,%edi
call   1030 <UINT8_C@plt>
mov    %eax,%ecx
mov    -0x29c(%rbp),%eax
and    %ecx,%eax
cltq
mov    %rax,-0x218(%rbp)
mov    -0x20c(%rbp),%eax
sar    $0x8,%eax
cltq
mov    %rax,-0x220(%rbp)
mov    -0x18(%rbp),%eax
mov    %eax,-0x298(%rbp)
mov    $0xff,%edi
call   1030 <UINT8_C@plt>
mov    %eax,%ecx
mov    -0x298(%rbp),%eax
and    %ecx,%eax
cltq
mov    %rax,-0x228(%rbp)
mov    -0x18(%rbp),%eax
sar    $0x8,%eax
mov    %eax,-0x22c(%rbp)
mov    -0x22c(%rbp),%eax
mov    %eax,-0x294(%rbp)
mov    $0xff,%edi
call   1030 <UINT8_C@plt>
mov    %eax,%ecx
mov    -0x294(%rbp),%eax
and    %ecx,%eax
cltq
mov    %rax,-0x238(%rbp)
mov    -0x22c(%rbp),%eax
sar    $0x8,%eax
mov    %eax,-0x23c(%rbp)
mov    -0x23c(%rbp),%eax
mov    %eax,-0x290(%rbp)
mov    $0xff,%edi
call   1030 <UINT8_C@plt>
mov    %eax,%ecx
mov    -0x290(%rbp),%eax
and    %ecx,%eax
cltq
mov    %rax,-0x248(%rbp)
mov    -0x23c(%rbp),%eax
sar    $0x8,%eax
cltq
mov    %rax,-0x250(%rbp)
mov    -0x14(%rbp),%eax
mov    %eax,-0x28c(%rbp)
mov    $0xff,%edi
call   1030 <UINT8_C@plt>
mov    %eax,%ecx
mov    -0x28c(%rbp),%eax
and    %ecx,%eax
cltq
mov    %rax,-0x258(%rbp)
mov    -0x14(%rbp),%eax
sar    $0x8,%eax
mov    %eax,-0x25c(%rbp)
mov    -0x25c(%rbp),%eax
mov    %eax,-0x288(%rbp)
mov    $0xff,%edi
call   1030 <UINT8_C@plt>
mov    %eax,%ecx
mov    -0x288(%rbp),%eax
and    %ecx,%eax
cltq
mov    %rax,-0x268(%rbp)
mov    -0x25c(%rbp),%eax
sar    $0x8,%eax
mov    %eax,-0x26c(%rbp)
mov    -0x26c(%rbp),%eax
mov    %eax,-0x284(%rbp)
mov    $0xff,%edi
call   1030 <UINT8_C@plt>
mov    %eax,%ecx
mov    -0x284(%rbp),%eax
and    %ecx,%eax
cltq
mov    %rax,-0x278(%rbp)
mov    -0x26c(%rbp),%eax
sar    $0x8,%eax
cltq
mov    %rax,-0x280(%rbp)
mov    -0x48(%rbp),%rcx
mov    -0x8(%rbp),%rax
mov    %rcx,(%rax)
mov    -0x58(%rbp),%rcx
mov    -0x8(%rbp),%rax
mov    %rcx,0x8(%rax)
mov    -0x68(%rbp),%rcx
mov    -0x8(%rbp),%rax
mov    %rcx,0x10(%rax)
mov    -0x70(%rbp),%rcx
mov    -0x8(%rbp),%rax
mov    %rcx,0x18(%rax)
mov    -0x78(%rbp),%rcx
mov    -0x8(%rbp),%rax
mov    %rcx,0x20(%rax)
mov    -0x88(%rbp),%rcx
mov    -0x8(%rbp),%rax
mov    %rcx,0x28(%rax)
mov    -0x98(%rbp),%rcx
mov    -0x8(%rbp),%rax
mov    %rcx,0x30(%rax)
mov    -0xa0(%rbp),%rcx
mov    -0x8(%rbp),%rax
mov    %rcx,0x38(%rax)
mov    -0xa8(%rbp),%rcx
mov    -0x8(%rbp),%rax
mov    %rcx,0x40(%rax)
mov    -0xb8(%rbp),%rcx
mov    -0x8(%rbp),%rax
mov    %rcx,0x48(%rax)
mov    -0xc8(%rbp),%rcx
mov    -0x8(%rbp),%rax
mov    %rcx,0x50(%rax)
mov    -0xd0(%rbp),%rcx
mov    -0x8(%rbp),%rax
mov    %rcx,0x58(%rax)
mov    -0xd8(%rbp),%rcx
mov    -0x8(%rbp),%rax
mov    %rcx,0x60(%rax)
mov    -0xe8(%rbp),%rcx
mov    -0x8(%rbp),%rax
mov    %rcx,0x68(%rax)
mov    -0xf8(%rbp),%rcx
mov    -0x8(%rbp),%rax
mov    %rcx,0x70(%rax)
mov    -0x100(%rbp),%rcx
mov    -0x8(%rbp),%rax
mov    %rcx,0x78(%rax)
mov    -0x108(%rbp),%rcx
mov    -0x8(%rbp),%rax
mov    %rcx,0x80(%rax)
mov    -0x118(%rbp),%rcx
mov    -0x8(%rbp),%rax
mov    %rcx,0x88(%rax)
mov    -0x128(%rbp),%rcx
mov    -0x8(%rbp),%rax
mov    %rcx,0x90(%rax)
mov    -0x130(%rbp),%rcx
mov    -0x8(%rbp),%rax
mov    %rcx,0x98(%rax)
mov    -0x138(%rbp),%rcx
mov    -0x8(%rbp),%rax
mov    %rcx,0xa0(%rax)
mov    -0x148(%rbp),%rcx
mov    -0x8(%rbp),%rax
mov    %rcx,0xa8(%rax)
mov    -0x158(%rbp),%rcx
mov    -0x8(%rbp),%rax
mov    %rcx,0xb0(%rax)
mov    -0x160(%rbp),%rcx
mov    -0x8(%rbp),%rax
mov    %rcx,0xb8(%rax)
mov    -0x168(%rbp),%rcx
mov    -0x8(%rbp),%rax
mov    %rcx,0xc0(%rax)
mov    -0x178(%rbp),%rcx
mov    -0x8(%rbp),%rax
mov    %rcx,0xc8(%rax)
mov    -0x188(%rbp),%rcx
mov    -0x8(%rbp),%rax
mov    %rcx,0xd0(%rax)
mov    -0x190(%rbp),%rcx
mov    -0x8(%rbp),%rax
mov    %rcx,0xd8(%rax)
mov    -0x198(%rbp),%rcx
mov    -0x8(%rbp),%rax
mov    %rcx,0xe0(%rax)
mov    -0x1a8(%rbp),%rcx
mov    -0x8(%rbp),%rax
mov    %rcx,0xe8(%rax)
mov    -0x1b8(%rbp),%rcx
mov    -0x8(%rbp),%rax
mov    %rcx,0xf0(%rax)
mov    -0x1c0(%rbp),%rcx
mov    -0x8(%rbp),%rax
mov    %rcx,0xf8(%rax)
mov    -0x1c8(%rbp),%rcx
mov    -0x8(%rbp),%rax
mov    %rcx,0x100(%rax)
mov    -0x1d8(%rbp),%rcx
mov    -0x8(%rbp),%rax
mov    %rcx,0x108(%rax)
mov    -0x1e8(%rbp),%rcx
mov    -0x8(%rbp),%rax
mov    %rcx,0x110(%rax)
mov    -0x1f0(%rbp),%rcx
mov    -0x8(%rbp),%rax
mov    %rcx,0x118(%rax)
mov    -0x1f8(%rbp),%rcx
mov    -0x8(%rbp),%rax
mov    %rcx,0x120(%rax)
mov    -0x208(%rbp),%rcx
mov    -0x8(%rbp),%rax
mov    %rcx,0x128(%rax)
mov    -0x218(%rbp),%rcx
mov    -0x8(%rbp),%rax
mov    %rcx,0x130(%rax)
mov    -0x220(%rbp),%rcx
mov    -0x8(%rbp),%rax
mov    %rcx,0x138(%rax)
mov    -0x228(%rbp),%rcx
mov    -0x8(%rbp),%rax
mov    %rcx,0x140(%rax)
mov    -0x238(%rbp),%rcx
mov    -0x8(%rbp),%rax
mov    %rcx,0x148(%rax)
mov    -0x248(%rbp),%rcx
mov    -0x8(%rbp),%rax
mov    %rcx,0x150(%rax)
mov    -0x250(%rbp),%rcx
mov    -0x8(%rbp),%rax
mov    %rcx,0x158(%rax)
mov    -0x258(%rbp),%rcx
mov    -0x8(%rbp),%rax
mov    %rcx,0x160(%rax)
mov    -0x268(%rbp),%rcx
mov    -0x8(%rbp),%rax
mov    %rcx,0x168(%rax)
mov    -0x278(%rbp),%rcx
mov    -0x8(%rbp),%rax
mov    %rcx,0x170(%rax)
mov    -0x280(%rbp),%rcx
mov    -0x8(%rbp),%rax
mov    %rcx,0x178(%rax)
add    $0x310,%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    $0x168,%rsp
mov    %rdi,%r14
mov    0x2c(%rsi),%eax
mov    %eax,0x3c(%rsp)
mov    0x28(%rsi),%eax
mov    %eax,0x38(%rsp)
mov    0x24(%rsi),%eax
mov    %eax,0x30(%rsp)
mov    0x20(%rsi),%eax
mov    %eax,0x28(%rsp)
mov    0x1c(%rsi),%eax
mov    %eax,0x18(%rsp)
mov    0x18(%rsi),%eax
mov    %eax,0x8(%rsp)
mov    0x14(%rsi),%eax
mov    %eax,0x10(%rsp)
mov    0x10(%rsi),%eax
mov    %eax,0x20(%rsp)
mov    0xc(%rsi),%ebx
mov    0x8(%rsi),%r13d
mov    (%rsi),%r15d
mov    0x4(%rsi),%r12d
mov    $0xff,%edi
call   1030 <UINT8_C@plt>
and    %r15d,%eax
cltq
mov    %rax,0x160(%rsp)
mov    %r15d,%ebp
sar    $0x8,%ebp
mov    $0xff,%edi
call   1030 <UINT8_C@plt>
and    %ebp,%eax
cltq
mov    %rax,0x158(%rsp)
mov    %r15d,%ebp
sar    $0x10,%ebp
mov    $0xff,%edi
call   1030 <UINT8_C@plt>
and    %ebp,%eax
cltq
mov    %rax,0x150(%rsp)
sar    $0x18,%r15d
movslq %r15d,%rax
mov    %rax,0x148(%rsp)
mov    $0xff,%edi
call   1030 <UINT8_C@plt>
and    %r12d,%eax
cltq
mov    %rax,0x140(%rsp)
mov    %r12d,%ebp
sar    $0x8,%ebp
mov    $0xff,%edi
call   1030 <UINT8_C@plt>
and    %ebp,%eax
cltq
mov    %rax,0x138(%rsp)
mov    %r12d,%ebp
sar    $0x10,%ebp
mov    $0xff,%edi
call   1030 <UINT8_C@plt>
and    %ebp,%eax
cltq
mov    %rax,0x130(%rsp)
sar    $0x18,%r12d
movslq %r12d,%rax
mov    %rax,0x128(%rsp)
mov    $0xff,%edi
call   1030 <UINT8_C@plt>
and    %r13d,%eax
cltq
mov    %rax,0x120(%rsp)
mov    %r13d,%ebp
sar    $0x8,%ebp
mov    $0xff,%edi
call   1030 <UINT8_C@plt>
and    %ebp,%eax
cltq
mov    %rax,0x118(%rsp)
mov    %r13d,%ebp
sar    $0x10,%ebp
mov    $0xff,%edi
call   1030 <UINT8_C@plt>
and    %ebp,%eax
cltq
mov    %rax,0x110(%rsp)
sar    $0x18,%r13d
movslq %r13d,%rax
mov    %rax,0x108(%rsp)
mov    $0xff,%edi
call   1030 <UINT8_C@plt>
and    %ebx,%eax
cltq
mov    %rax,0x100(%rsp)
mov    %ebx,%ebp
sar    $0x8,%ebp
mov    $0xff,%edi
call   1030 <UINT8_C@plt>
and    %ebp,%eax
cltq
mov    %rax,0xf8(%rsp)
mov    %ebx,%ebp
sar    $0x10,%ebp
mov    $0xff,%edi
call   1030 <UINT8_C@plt>
and    %ebp,%eax
cltq
mov    %rax,0xf0(%rsp)
sar    $0x18,%ebx
movslq %ebx,%rax
mov    %rax,0xe8(%rsp)
mov    $0xff,%edi
call   1030 <UINT8_C@plt>
mov    0x20(%rsp),%ecx
and    %ecx,%eax
cltq
mov    %rax,0xe0(%rsp)
mov    %ecx,%ebp
mov    %ecx,%ebx
sar    $0x8,%ebp
mov    $0xff,%edi
call   1030 <UINT8_C@plt>
and    %ebp,%eax
cltq
mov    %rax,0xd8(%rsp)
mov    %ebx,%ebp
sar    $0x10,%ebp
mov    $0xff,%edi
call   1030 <UINT8_C@plt>
and    %ebp,%eax
cltq
mov    %rax,0xd0(%rsp)
sar    $0x18,%ebx
movslq %ebx,%rax
mov    %rax,0x20(%rsp)
mov    $0xff,%edi
call   1030 <UINT8_C@plt>
mov    0x10(%rsp),%ecx
and    %ecx,%eax
cltq
mov    %rax,0xc8(%rsp)
mov    %ecx,%ebp
mov    %ecx,%ebx
sar    $0x8,%ebp
mov    $0xff,%edi
call   1030 <UINT8_C@plt>
and    %ebp,%eax
cltq
mov    %rax,0xc0(%rsp)
mov    %ebx,%ebp
sar    $0x10,%ebp
mov    $0xff,%edi
call   1030 <UINT8_C@plt>
and    %ebp,%eax
cltq
mov    %rax,0xb8(%rsp)
sar    $0x18,%ebx
movslq %ebx,%rax
mov    %rax,0x10(%rsp)
mov    $0xff,%edi
call   1030 <UINT8_C@plt>
mov    0x8(%rsp),%ecx
and    %ecx,%eax
cltq
mov    %rax,0xb0(%rsp)
mov    %ecx,%ebp
mov    %ecx,%ebx
sar    $0x8,%ebp
mov    $0xff,%edi
call   1030 <UINT8_C@plt>
and    %ebp,%eax
cltq
mov    %rax,0xa8(%rsp)
mov    %ebx,%ebp
sar    $0x10,%ebp
mov    $0xff,%edi
call   1030 <UINT8_C@plt>
and    %ebp,%eax
cltq
mov    %rax,0xa0(%rsp)
sar    $0x18,%ebx
movslq %ebx,%rax
mov    %rax,0x8(%rsp)
mov    $0xff,%edi
call   1030 <UINT8_C@plt>
mov    0x18(%rsp),%ecx
and    %ecx,%eax
cltq
mov    %rax,0x98(%rsp)
mov    %ecx,%ebp
mov    %ecx,%ebx
sar    $0x8,%ebp
mov    $0xff,%edi
call   1030 <UINT8_C@plt>
and    %ebp,%eax
cltq
mov    %rax,0x90(%rsp)
mov    %ebx,%ebp
sar    $0x10,%ebp
mov    $0xff,%edi
call   1030 <UINT8_C@plt>
and    %ebp,%eax
cltq
mov    %rax,0x88(%rsp)
sar    $0x18,%ebx
movslq %ebx,%rax
mov    %rax,0x18(%rsp)
mov    $0xff,%edi
call   1030 <UINT8_C@plt>
mov    0x28(%rsp),%ecx
and    %ecx,%eax
cltq
mov    %rax,0x80(%rsp)
mov    %ecx,%ebp
mov    %ecx,%ebx
sar    $0x8,%ebp
mov    $0xff,%edi
call   1030 <UINT8_C@plt>
and    %ebp,%eax
cltq
mov    %rax,0x78(%rsp)
mov    %ebx,%ebp
sar    $0x10,%ebp
mov    $0xff,%edi
call   1030 <UINT8_C@plt>
and    %ebp,%eax
cltq
mov    %rax,0x70(%rsp)
sar    $0x18,%ebx
movslq %ebx,%rax
mov    %rax,0x28(%rsp)
mov    $0xff,%edi
call   1030 <UINT8_C@plt>
mov    0x30(%rsp),%ecx
and    %ecx,%eax
cltq
mov    %rax,0x68(%rsp)
mov    %ecx,%ebp
mov    %ecx,%ebx
sar    $0x8,%ebp
mov    $0xff,%edi
call   1030 <UINT8_C@plt>
and    %ebp,%eax
cltq
mov    %rax,0x60(%rsp)
mov    %ebx,%ebp
sar    $0x10,%ebp
mov    $0xff,%edi
call   1030 <UINT8_C@plt>
and    %ebp,%eax
cltq
mov    %rax,0x58(%rsp)
sar    $0x18,%ebx
movslq %ebx,%rax
mov    %rax,0x30(%rsp)
mov    $0xff,%edi
call   1030 <UINT8_C@plt>
mov    0x38(%rsp),%ecx
and    %ecx,%eax
cltq
mov    %rax,0x50(%rsp)
mov    %ecx,%ebp
mov    %ecx,%ebx
sar    $0x8,%ebp
mov    $0xff,%edi
call   1030 <UINT8_C@plt>
and    %ebp,%eax
cltq
mov    %rax,0x48(%rsp)
mov    %ebx,%ebp
sar    $0x10,%ebp
mov    $0xff,%edi
call   1030 <UINT8_C@plt>
and    %ebp,%eax
cltq
mov    %rax,0x40(%rsp)
sar    $0x18,%ebx
movslq %ebx,%r12
mov    $0xff,%edi
call   1030 <UINT8_C@plt>
mov    0x3c(%rsp),%r13d
and    %r13d,%eax
movslq %eax,%r15
mov    %r13d,%ebp
sar    $0x8,%ebp
mov    $0xff,%edi
call   1030 <UINT8_C@plt>
and    %ebp,%eax
movslq %eax,%rbx
mov    %r13d,%ebp
sar    $0x10,%ebp
mov    $0xff,%edi
call   1030 <UINT8_C@plt>
and    %ebp,%eax
mov    0x160(%rsp),%rcx
mov    %rcx,(%r14)
mov    0x158(%rsp),%rcx
mov    %rcx,0x8(%r14)
mov    0x150(%rsp),%rcx
mov    %rcx,0x10(%r14)
mov    0x148(%rsp),%rcx
mov    %rcx,0x18(%r14)
mov    0x140(%rsp),%rcx
mov    %rcx,0x20(%r14)
mov    0x138(%rsp),%rcx
mov    %rcx,0x28(%r14)
mov    0x130(%rsp),%rcx
mov    %rcx,0x30(%r14)
mov    0x128(%rsp),%rcx
mov    %rcx,0x38(%r14)
mov    0x120(%rsp),%rcx
mov    %rcx,0x40(%r14)
mov    0x118(%rsp),%rcx
mov    %rcx,0x48(%r14)
mov    0x110(%rsp),%rcx
mov    %rcx,0x50(%r14)
mov    0x108(%rsp),%rcx
mov    %rcx,0x58(%r14)
mov    0x100(%rsp),%rcx
mov    %rcx,0x60(%r14)
mov    0xf8(%rsp),%rcx
mov    %rcx,0x68(%r14)
mov    0xf0(%rsp),%rcx
mov    %rcx,0x70(%r14)
mov    0xe8(%rsp),%rcx
mov    %rcx,0x78(%r14)
mov    0xe0(%rsp),%rcx
mov    %rcx,0x80(%r14)
mov    0xd8(%rsp),%rcx
mov    %rcx,0x88(%r14)
mov    0xd0(%rsp),%rcx
mov    %rcx,0x90(%r14)
mov    0x20(%rsp),%rcx
mov    %rcx,0x98(%r14)
mov    0xc8(%rsp),%rcx
mov    %rcx,0xa0(%r14)
mov    0xc0(%rsp),%rcx
mov    %rcx,0xa8(%r14)
mov    0xb8(%rsp),%rcx
mov    %rcx,0xb0(%r14)
mov    0x10(%rsp),%rcx
mov    %rcx,0xb8(%r14)
mov    0xb0(%rsp),%rcx
mov    %rcx,0xc0(%r14)
mov    0xa8(%rsp),%rcx
mov    %rcx,0xc8(%r14)
mov    0xa0(%rsp),%rcx
mov    %rcx,0xd0(%r14)
mov    0x8(%rsp),%rcx
mov    %rcx,0xd8(%r14)
mov    0x98(%rsp),%rcx
mov    %rcx,0xe0(%r14)
mov    0x90(%rsp),%rcx
mov    %rcx,0xe8(%r14)
mov    0x88(%rsp),%rcx
mov    %rcx,0xf0(%r14)
mov    0x18(%rsp),%rcx
mov    %rcx,0xf8(%r14)
mov    0x80(%rsp),%rcx
mov    %rcx,0x100(%r14)
mov    0x78(%rsp),%rcx
mov    %rcx,0x108(%r14)
mov    0x70(%rsp),%rcx
mov    %rcx,0x110(%r14)
mov    0x28(%rsp),%rcx
mov    %rcx,0x118(%r14)
mov    0x68(%rsp),%rcx
mov    %rcx,0x120(%r14)
mov    0x60(%rsp),%rcx
mov    %rcx,0x128(%r14)
mov    0x58(%rsp),%rcx
mov    %rcx,0x130(%r14)
mov    0x30(%rsp),%rcx
mov    %rcx,0x138(%r14)
mov    0x50(%rsp),%rcx
mov    %rcx,0x140(%r14)
mov    0x48(%rsp),%rcx
mov    %rcx,0x148(%r14)
mov    0x40(%rsp),%rcx
mov    %rcx,0x150(%r14)
mov    %r12,0x158(%r14)
mov    %r15,0x160(%r14)
mov    %rbx,0x168(%r14)
cltq
mov    %rax,0x170(%r14)
sar    $0x18,%r13d
movslq %r13d,%rax
mov    %rax,0x178(%r14)
add    $0x168,%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 i32
%12 = alloca i32
%13 = alloca i32
%14 = alloca i32
%15 = alloca i32
%16 = alloca i32
%17 = alloca i64
%18 = alloca i32
%19 = alloca i64
%20 = alloca i32
%21 = alloca i64
%22 = alloca i64
%23 = alloca i64
%24 = alloca i32
%25 = alloca i64
%26 = alloca i32
%27 = alloca i64
%28 = alloca i64
%29 = alloca i64
%30 = alloca i32
%31 = alloca i64
%32 = alloca i32
%33 = alloca i64
%34 = alloca i64
%35 = alloca i64
%36 = alloca i32
%37 = alloca i64
%38 = alloca i32
%39 = alloca i64
%40 = alloca i64
%41 = alloca i64
%42 = alloca i32
%43 = alloca i64
%44 = alloca i32
%45 = alloca i64
%46 = alloca i64
%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 i64
%59 = alloca i64
%60 = alloca i32
%61 = alloca i64
%62 = alloca i32
%63 = alloca i64
%64 = alloca i64
%65 = alloca i64
%66 = alloca i32
%67 = alloca i64
%68 = alloca i32
%69 = alloca i64
%70 = alloca i64
%71 = alloca i64
%72 = alloca i32
%73 = alloca i64
%74 = alloca i32
%75 = alloca i64
%76 = alloca i64
%77 = alloca i64
%78 = alloca i32
%79 = alloca i64
%80 = alloca i32
%81 = alloca i64
%82 = alloca i64
%83 = alloca i64
%84 = alloca i32
%85 = alloca i64
%86 = alloca i32
%87 = alloca i64
%88 = alloca i64
store i64* %0, i64** %3
store i32* %1, i32** %4
%89 = load i32*, i32** %4
%90 = getelementptr inbounds i32, i32* %89, i64 11
%91 = load i32, i32* %90
store i32 %91, i32* %5
%92 = load i32*, i32** %4
%93 = getelementptr inbounds i32, i32* %92, i64 10
%94 = load i32, i32* %93
store i32 %94, i32* %6
%95 = load i32*, i32** %4
%96 = getelementptr inbounds i32, i32* %95, i64 9
%97 = load i32, i32* %96
store i32 %97, i32* %7
%98 = load i32*, i32** %4
%99 = getelementptr inbounds i32, i32* %98, i64 8
%100 = load i32, i32* %99
store i32 %100, i32* %8
%101 = load i32*, i32** %4
%102 = getelementptr inbounds i32, i32* %101, i64 7
%103 = load i32, i32* %102
store i32 %103, i32* %9
%104 = load i32*, i32** %4
%105 = getelementptr inbounds i32, i32* %104, i64 6
%106 = load i32, i32* %105
store i32 %106, i32* %10
%107 = load i32*, i32** %4
%108 = getelementptr inbounds i32, i32* %107, i64 5
%109 = load i32, i32* %108
store i32 %109, i32* %11
%110 = load i32*, i32** %4
%111 = getelementptr inbounds i32, i32* %110, i64 4
%112 = load i32, i32* %111
store i32 %112, i32* %12
%113 = load i32*, i32** %4
%114 = getelementptr inbounds i32, i32* %113, i64 3
%115 = load i32, i32* %114
store i32 %115, i32* %13
%116 = load i32*, i32** %4
%117 = getelementptr inbounds i32, i32* %116, i64 2
%118 = load i32, i32* %117
store i32 %118, i32* %14
%119 = load i32*, i32** %4
%120 = getelementptr inbounds i32, i32* %119, i64 1
%121 = load i32, i32* %120
store i32 %121, i32* %15
%122 = load i32*, i32** %4
%123 = getelementptr inbounds i32, i32* %122, i64 0
%124 = load i32, i32* %123
store i32 %124, i32* %16
%125 = load i32, i32* %16
%126 = call i32 @UINT8_C(i32 255)
%127 = and i32 %125, %126
%128 = sext i32 %127 to i64
store i64 %128, i64* %17
%129 = load i32, i32* %16
%130 = ashr i32 %129, 8
store i32 %130, i32* %18
%131 = load i32, i32* %18
%132 = call i32 @UINT8_C(i32 255)
%133 = and i32 %131, %132
%134 = sext i32 %133 to i64
store i64 %134, i64* %19
%135 = load i32, i32* %18
%136 = ashr i32 %135, 8
store i32 %136, i32* %20
%137 = load i32, i32* %20
%138 = call i32 @UINT8_C(i32 255)
%139 = and i32 %137, %138
%140 = sext i32 %139 to i64
store i64 %140, i64* %21
%141 = load i32, i32* %20
%142 = ashr i32 %141, 8
%143 = sext i32 %142 to i64
store i64 %143, i64* %22
%144 = load i32, i32* %15
%145 = call i32 @UINT8_C(i32 255)
%146 = and i32 %144, %145
%147 = sext i32 %146 to i64
store i64 %147, i64* %23
%148 = load i32, i32* %15
%149 = ashr i32 %148, 8
store i32 %149, i32* %24
%150 = load i32, i32* %24
%151 = call i32 @UINT8_C(i32 255)
%152 = and i32 %150, %151
%153 = sext i32 %152 to i64
store i64 %153, i64* %25
%154 = load i32, i32* %24
%155 = ashr i32 %154, 8
store i32 %155, i32* %26
%156 = load i32, i32* %26
%157 = call i32 @UINT8_C(i32 255)
%158 = and i32 %156, %157
%159 = sext i32 %158 to i64
store i64 %159, i64* %27
%160 = load i32, i32* %26
%161 = ashr i32 %160, 8
%162 = sext i32 %161 to i64
store i64 %162, i64* %28
%163 = load i32, i32* %14
%164 = call i32 @UINT8_C(i32 255)
%165 = and i32 %163, %164
%166 = sext i32 %165 to i64
store i64 %166, i64* %29
%167 = load i32, i32* %14
%168 = ashr i32 %167, 8
store i32 %168, i32* %30
%169 = load i32, i32* %30
%170 = call i32 @UINT8_C(i32 255)
%171 = and i32 %169, %170
%172 = sext i32 %171 to i64
store i64 %172, i64* %31
%173 = load i32, i32* %30
%174 = ashr i32 %173, 8
store i32 %174, i32* %32
%175 = load i32, i32* %32
%176 = call i32 @UINT8_C(i32 255)
%177 = and i32 %175, %176
%178 = sext i32 %177 to i64
store i64 %178, i64* %33
%179 = load i32, i32* %32
%180 = ashr i32 %179, 8
%181 = sext i32 %180 to i64
store i64 %181, i64* %34
%182 = load i32, i32* %13
%183 = call i32 @UINT8_C(i32 255)
%184 = and i32 %182, %183
%185 = sext i32 %184 to i64
store i64 %185, i64* %35
%186 = load i32, i32* %13
%187 = ashr i32 %186, 8
store i32 %187, i32* %36
%188 = load i32, i32* %36
%189 = call i32 @UINT8_C(i32 255)
%190 = and i32 %188, %189
%191 = sext i32 %190 to i64
store i64 %191, i64* %37
%192 = load i32, i32* %36
%193 = ashr i32 %192, 8
store i32 %193, i32* %38
%194 = load i32, i32* %38
%195 = call i32 @UINT8_C(i32 255)
%196 = and i32 %194, %195
%197 = sext i32 %196 to i64
store i64 %197, i64* %39
%198 = load i32, i32* %38
%199 = ashr i32 %198, 8
%200 = sext i32 %199 to i64
store i64 %200, i64* %40
%201 = load i32, i32* %12
%202 = call i32 @UINT8_C(i32 255)
%203 = and i32 %201, %202
%204 = sext i32 %203 to i64
store i64 %204, i64* %41
%205 = load i32, i32* %12
%206 = ashr i32 %205, 8
store i32 %206, i32* %42
%207 = load i32, i32* %42
%208 = call i32 @UINT8_C(i32 255)
%209 = and i32 %207, %208
%210 = sext i32 %209 to i64
store i64 %210, i64* %43
%211 = load i32, i32* %42
%212 = ashr i32 %211, 8
store i32 %212, i32* %44
%213 = load i32, i32* %44
%214 = call i32 @UINT8_C(i32 255)
%215 = and i32 %213, %214
%216 = sext i32 %215 to i64
store i64 %216, i64* %45
%217 = load i32, i32* %44
%218 = ashr i32 %217, 8
%219 = sext i32 %218 to i64
store i64 %219, i64* %46
%220 = load i32, i32* %11
%221 = call i32 @UINT8_C(i32 255)
%222 = and i32 %220, %221
%223 = sext i32 %222 to i64
store i64 %223, i64* %47
%224 = load i32, i32* %11
%225 = ashr i32 %224, 8
store i32 %225, i32* %48
%226 = load i32, i32* %48
%227 = call i32 @UINT8_C(i32 255)
%228 = and i32 %226, %227
%229 = sext i32 %228 to i64
store i64 %229, i64* %49
%230 = load i32, i32* %48
%231 = ashr i32 %230, 8
store i32 %231, i32* %50
%232 = load i32, i32* %50
%233 = call i32 @UINT8_C(i32 255)
%234 = and i32 %232, %233
%235 = sext i32 %234 to i64
store i64 %235, i64* %51
%236 = load i32, i32* %50
%237 = ashr i32 %236, 8
%238 = sext i32 %237 to i64
store i64 %238, i64* %52
%239 = load i32, i32* %10
%240 = call i32 @UINT8_C(i32 255)
%241 = and i32 %239, %240
%242 = sext i32 %241 to i64
store i64 %242, i64* %53
%243 = load i32, i32* %10
%244 = ashr i32 %243, 8
store i32 %244, i32* %54
%245 = load i32, i32* %54
%246 = call i32 @UINT8_C(i32 255)
%247 = and i32 %245, %246
%248 = sext i32 %247 to i64
store i64 %248, i64* %55
%249 = load i32, i32* %54
%250 = ashr i32 %249, 8
store i32 %250, i32* %56
%251 = load i32, i32* %56
%252 = call i32 @UINT8_C(i32 255)
%253 = and i32 %251, %252
%254 = sext i32 %253 to i64
store i64 %254, i64* %57
%255 = load i32, i32* %56
%256 = ashr i32 %255, 8
%257 = sext i32 %256 to i64
store i64 %257, i64* %58
%258 = load i32, i32* %9
%259 = call i32 @UINT8_C(i32 255)
%260 = and i32 %258, %259
%261 = sext i32 %260 to i64
store i64 %261, i64* %59
%262 = load i32, i32* %9
%263 = ashr i32 %262, 8
store i32 %263, i32* %60
%264 = load i32, i32* %60
%265 = call i32 @UINT8_C(i32 255)
%266 = and i32 %264, %265
%267 = sext i32 %266 to i64
store i64 %267, i64* %61
%268 = load i32, i32* %60
%269 = ashr i32 %268, 8
store i32 %269, i32* %62
%270 = load i32, i32* %62
%271 = call i32 @UINT8_C(i32 255)
%272 = and i32 %270, %271
%273 = sext i32 %272 to i64
store i64 %273, i64* %63
%274 = load i32, i32* %62
%275 = ashr i32 %274, 8
%276 = sext i32 %275 to i64
store i64 %276, i64* %64
%277 = load i32, i32* %8
%278 = call i32 @UINT8_C(i32 255)
%279 = and i32 %277, %278
%280 = sext i32 %279 to i64
store i64 %280, i64* %65
%281 = load i32, i32* %8
%282 = ashr i32 %281, 8
store i32 %282, i32* %66
%283 = load i32, i32* %66
%284 = call i32 @UINT8_C(i32 255)
%285 = and i32 %283, %284
%286 = sext i32 %285 to i64
store i64 %286, i64* %67
%287 = load i32, i32* %66
%288 = ashr i32 %287, 8
store i32 %288, i32* %68
%289 = load i32, i32* %68
%290 = call i32 @UINT8_C(i32 255)
%291 = and i32 %289, %290
%292 = sext i32 %291 to i64
store i64 %292, i64* %69
%293 = load i32, i32* %68
%294 = ashr i32 %293, 8
%295 = sext i32 %294 to i64
store i64 %295, i64* %70
%296 = load i32, i32* %7
%297 = call i32 @UINT8_C(i32 255)
%298 = and i32 %296, %297
%299 = sext i32 %298 to i64
store i64 %299, i64* %71
%300 = load i32, i32* %7
%301 = ashr i32 %300, 8
store i32 %301, i32* %72
%302 = load i32, i32* %72
%303 = call i32 @UINT8_C(i32 255)
%304 = and i32 %302, %303
%305 = sext i32 %304 to i64
store i64 %305, i64* %73
%306 = load i32, i32* %72
%307 = ashr i32 %306, 8
store i32 %307, i32* %74
%308 = load i32, i32* %74
%309 = call i32 @UINT8_C(i32 255)
%310 = and i32 %308, %309
%311 = sext i32 %310 to i64
store i64 %311, i64* %75
%312 = load i32, i32* %74
%313 = ashr i32 %312, 8
%314 = sext i32 %313 to i64
store i64 %314, i64* %76
%315 = load i32, i32* %6
%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* %6
%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
store i32 %326, i32* %80
%327 = load i32, i32* %80
%328 = call i32 @UINT8_C(i32 255)
%329 = and i32 %327, %328
%330 = sext i32 %329 to i64
store i64 %330, i64* %81
%331 = load i32, i32* %80
%332 = ashr i32 %331, 8
%333 = sext i32 %332 to i64
store i64 %333, i64* %82
%334 = load i32, i32* %5
%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* %5
%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
%352 = sext i32 %351 to i64
store i64 %352, i64* %88
%353 = load i64, i64* %17
%354 = load i64*, i64** %3
%355 = getelementptr inbounds i64, i64* %354, i64 0
store i64 %353, i64* %355
%356 = load i64, i64* %19
%357 = load i64*, i64** %3
%358 = getelementptr inbounds i64, i64* %357, i64 1
store i64 %356, i64* %358
%359 = load i64, i64* %21
%360 = load i64*, i64** %3
%361 = getelementptr inbounds i64, i64* %360, i64 2
store i64 %359, i64* %361
%362 = load i64, i64* %22
%363 = load i64*, i64** %3
%364 = getelementptr inbounds i64, i64* %363, i64 3
store i64 %362, i64* %364
%365 = load i64, i64* %23
%366 = load i64*, i64** %3
%367 = getelementptr inbounds i64, i64* %366, i64 4
store i64 %365, i64* %367
%368 = load i64, i64* %25
%369 = load i64*, i64** %3
%370 = getelementptr inbounds i64, i64* %369, i64 5
store i64 %368, i64* %370
%371 = load i64, i64* %27
%372 = load i64*, i64** %3
%373 = getelementptr inbounds i64, i64* %372, i64 6
store i64 %371, i64* %373
%374 = load i64, i64* %28
%375 = load i64*, i64** %3
%376 = getelementptr inbounds i64, i64* %375, i64 7
store i64 %374, i64* %376
%377 = load i64, i64* %29
%378 = load i64*, i64** %3
%379 = getelementptr inbounds i64, i64* %378, i64 8
store i64 %377, i64* %379
%380 = load i64, i64* %31
%381 = load i64*, i64** %3
%382 = getelementptr inbounds i64, i64* %381, i64 9
store i64 %380, i64* %382
%383 = load i64, i64* %33
%384 = load i64*, i64** %3
%385 = getelementptr inbounds i64, i64* %384, i64 10
store i64 %383, i64* %385
%386 = load i64, i64* %34
%387 = load i64*, i64** %3
%388 = getelementptr inbounds i64, i64* %387, i64 11
store i64 %386, i64* %388
%389 = load i64, i64* %35
%390 = load i64*, i64** %3
%391 = getelementptr inbounds i64, i64* %390, i64 12
store i64 %389, i64* %391
%392 = load i64, i64* %37
%393 = load i64*, i64** %3
%394 = getelementptr inbounds i64, i64* %393, i64 13
store i64 %392, i64* %394
%395 = load i64, i64* %39
%396 = load i64*, i64** %3
%397 = getelementptr inbounds i64, i64* %396, i64 14
store i64 %395, i64* %397
%398 = load i64, i64* %40
%399 = load i64*, i64** %3
%400 = getelementptr inbounds i64, i64* %399, i64 15
store i64 %398, i64* %400
%401 = load i64, i64* %41
%402 = load i64*, i64** %3
%403 = getelementptr inbounds i64, i64* %402, i64 16
store i64 %401, i64* %403
%404 = load i64, i64* %43
%405 = load i64*, i64** %3
%406 = getelementptr inbounds i64, i64* %405, i64 17
store i64 %404, i64* %406
%407 = load i64, i64* %45
%408 = load i64*, i64** %3
%409 = getelementptr inbounds i64, i64* %408, i64 18
store i64 %407, i64* %409
%410 = load i64, i64* %46
%411 = load i64*, i64** %3
%412 = getelementptr inbounds i64, i64* %411, i64 19
store i64 %410, i64* %412
%413 = load i64, i64* %47
%414 = load i64*, i64** %3
%415 = getelementptr inbounds i64, i64* %414, i64 20
store i64 %413, i64* %415
%416 = load i64, i64* %49
%417 = load i64*, i64** %3
%418 = getelementptr inbounds i64, i64* %417, i64 21
store i64 %416, i64* %418
%419 = load i64, i64* %51
%420 = load i64*, i64** %3
%421 = getelementptr inbounds i64, i64* %420, i64 22
store i64 %419, i64* %421
%422 = load i64, i64* %52
%423 = load i64*, i64** %3
%424 = getelementptr inbounds i64, i64* %423, i64 23
store i64 %422, i64* %424
%425 = load i64, i64* %53
%426 = load i64*, i64** %3
%427 = getelementptr inbounds i64, i64* %426, i64 24
store i64 %425, i64* %427
%428 = load i64, i64* %55
%429 = load i64*, i64** %3
%430 = getelementptr inbounds i64, i64* %429, i64 25
store i64 %428, i64* %430
%431 = load i64, i64* %57
%432 = load i64*, i64** %3
%433 = getelementptr inbounds i64, i64* %432, i64 26
store i64 %431, i64* %433
%434 = load i64, i64* %58
%435 = load i64*, i64** %3
%436 = getelementptr inbounds i64, i64* %435, i64 27
store i64 %434, i64* %436
%437 = load i64, i64* %59
%438 = load i64*, i64** %3
%439 = getelementptr inbounds i64, i64* %438, i64 28
store i64 %437, i64* %439
%440 = load i64, i64* %61
%441 = load i64*, i64** %3
%442 = getelementptr inbounds i64, i64* %441, i64 29
store i64 %440, i64* %442
%443 = load i64, i64* %63
%444 = load i64*, i64** %3
%445 = getelementptr inbounds i64, i64* %444, i64 30
store i64 %443, i64* %445
%446 = load i64, i64* %64
%447 = load i64*, i64** %3
%448 = getelementptr inbounds i64, i64* %447, i64 31
store i64 %446, i64* %448
%449 = load i64, i64* %65
%450 = load i64*, i64** %3
%451 = getelementptr inbounds i64, i64* %450, i64 32
store i64 %449, i64* %451
%452 = load i64, i64* %67
%453 = load i64*, i64** %3
%454 = getelementptr inbounds i64, i64* %453, i64 33
store i64 %452, i64* %454
%455 = load i64, i64* %69
%456 = load i64*, i64** %3
%457 = getelementptr inbounds i64, i64* %456, i64 34
store i64 %455, i64* %457
%458 = load i64, i64* %70
%459 = load i64*, i64** %3
%460 = getelementptr inbounds i64, i64* %459, i64 35
store i64 %458, i64* %460
%461 = load i64, i64* %71
%462 = load i64*, i64** %3
%463 = getelementptr inbounds i64, i64* %462, i64 36
store i64 %461, i64* %463
%464 = load i64, i64* %73
%465 = load i64*, i64** %3
%466 = getelementptr inbounds i64, i64* %465, i64 37
store i64 %464, i64* %466
%467 = load i64, i64* %75
%468 = load i64*, i64** %3
%469 = getelementptr inbounds i64, i64* %468, i64 38
store i64 %467, i64* %469
%470 = load i64, i64* %76
%471 = load i64*, i64** %3
%472 = getelementptr inbounds i64, i64* %471, i64 39
store i64 %470, i64* %472
%473 = load i64, i64* %77
%474 = load i64*, i64** %3
%475 = getelementptr inbounds i64, i64* %474, i64 40
store i64 %473, i64* %475
%476 = load i64, i64* %79
%477 = load i64*, i64** %3
%478 = getelementptr inbounds i64, i64* %477, i64 41
store i64 %476, i64* %478
%479 = load i64, i64* %81
%480 = load i64*, i64** %3
%481 = getelementptr inbounds i64, i64* %480, i64 42
store i64 %479, i64* %481
%482 = load i64, i64* %82
%483 = load i64*, i64** %3
%484 = getelementptr inbounds i64, i64* %483, i64 43
store i64 %482, i64* %484
%485 = load i64, i64* %83
%486 = load i64*, i64** %3
%487 = getelementptr inbounds i64, i64* %486, i64 44
store i64 %485, i64* %487
%488 = load i64, i64* %85
%489 = load i64*, i64** %3
%490 = getelementptr inbounds i64, i64* %489, i64 45
store i64 %488, i64* %490
%491 = load i64, i64* %87
%492 = load i64*, i64** %3
%493 = getelementptr inbounds i64, i64* %492, i64 46
store i64 %491, i64* %493
%494 = load i64, i64* %88
%495 = load i64*, i64** %3
%496 = getelementptr inbounds i64, i64* %495, i64 47
store i64 %494, i64* %496
ret void
}

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