#define NULL ((void *)0)
typedef unsigned long size_t; // Customize by platform.
typedef long intptr_t;
typedef unsigned long uintptr_t;
typedef long scalar_t__; // Either arithmetic or pointer type.
/* By default, we understand bool (as a convenience). */
typedef int bool;
#define false 0
#define true 1

/* Forward declarations */

/* Type definitions */

/* Variables and functions */
int /*<<< orphan*/ printf(char *, ...);
int truncf(double);
main() {
  double x_8 = 0.71428571;
  double y_8 = 0.33333333;
  double u_8 = 0.71425100;
  double v_8 = 98765.900;
  double w_8 = 0.111111e-4;
  double x_5, y_5, u_5, v_5, w_5, oper8, oper5, ErrorA, ErrorR;
  x_5 = truncf(x_8 * 1e5) * 1e-5;
  y_5 = truncf(y_8 * 1e5) * 1e-5;
  u_5 = truncf(u_8 * 1e5) * 1e-5;
  v_5 = truncf(v_8 * 1e5) * 1e-5;
  w_5 = truncf(w_8 * 1e5) * 1e-5;
  oper5 = truncf((x_5 + y_5) * 1e5) * 1e-5;
  oper8 = x_8 + y_8;
  ErrorA = (oper8 - oper5);
  ErrorR = ErrorA / oper8;
  printf("-------------\n");
  printf("Operacion 1 - x+y\n");
  printf("-------------\n");
  printf("Valor de x_8: %0.7f\n", x_8);
  printf("Valor de y_8:: %0.7f\n", y_8);
  printf("Valor de x_5: %0.5f\n", x_5);
  printf("Valor de y_5:: %0.5f\n", y_5);
  printf("Valor a 8 de x+y: %0.7f\n", oper8);
  printf("Aritmetica maquina de x+y: %0.5f\n", oper5);
  printf("Error A: %0.7f\n", ErrorA);
  printf("Error R: %0.7f\n", ErrorR);
  printf("-------------\n");
  printf("\n");
  printf("\n");
  oper5 = truncf((x_5 * y_5) * 1e5) * 1e-5;
  oper8 = x_8 * y_8;
  ErrorA = (oper8 - oper5);
  ErrorR = ErrorA / oper8;
  printf("-------------\n");
  printf("Operacion 3 - x*y\n");
  printf("-------------\n");
  printf("Valor de x_8: %0.7f\n", x_8);
  printf("Valor de y_8:: %0.7f\n", y_8);
  printf("Valor de x_5: %0.5f\n", x_5);
  printf("Valor de y_5:: %0.5f\n", y_5);
  printf("Valor a 8 de x*y: %0.7f\n", oper8);
  printf("Aritmetica maquina de x*y: %0.5f\n", oper5);
  printf("Error A: %0.7f\n", ErrorA);
  printf("Error R: %0.7f\n", ErrorR);
  printf("-------------\n");
  printf("\n");
  printf("\n");
  oper5 = truncf((x_5 - u_5) * 1e5) * 1e-5;
  oper8 = x_8 - u_8;
  ErrorA = (oper8 - oper5);
  ErrorR = ErrorA / oper8;
  printf("-------------\n");
  printf("Operacion 5 - x-u\n");
  printf("-------------\n");
  printf("Valor de x_8: %0.7f\n", x_8);
  printf("Valor de u_8:: %0.7f\n", u_8);
  printf("Valor de x_5: %0.5f\n", x_5);
  printf("Valor de u_5:: %0.5f\n", u_5);
  printf("Valor a 8 de x-u: %0.7f\n", oper8);
  printf("Aritmetica maquina de x-u: %0.5f\n", oper5);
  printf("Error A: %0.7f\n", ErrorA);
  printf("Error R: %0.7f\n", ErrorR);
  printf("-------------\n");
  printf("\n");
  printf("\n");
  oper5 = truncf(((x_5 - u_5) * v_5) * 1e5) * 1e-5;
  oper8 = (x_8 - u_8) * v_8;
  ErrorA = (oper8 - oper5);
  ErrorR = ErrorA / oper8;
  printf("-------------\n");
  printf("Operacion 7 - (x-u)*v \n");
  printf("-------------\n");
  printf("Valor de x_8: %0.7f\n", x_8);
  printf("Valor de u_8:: %0.7f\n", u_8);
  printf("Valor de v_8:: %0.7f\n", v_8);
  printf("Valor de x_5: %0.5f\n", x_5);
  printf("Valor de u_5:: %0.5f\n", u_5);
  printf("Valor de v_5:: %0.5f\n", v_5);
  printf("Valor a 8 de (x-u)/v: %0.7f\n", oper8);
  printf("Aritmetica maquina de (x-u)*v: %0.5f\n", oper5);
  printf("Error A: %0.7f\n", ErrorA);
  printf("Error R: %0.7f\n", ErrorR);
  printf("-------------\n");
  printf("\n");
  printf("\n");
}


x86 assembly (clang, -O0):
<main>:
push   %rbp
mov    %rsp,%rbp
sub    $0x70,%rsp
movsd  0xf00(%rip),%xmm0
movsd  %xmm0,-0x8(%rbp)
movsd  0xeeb(%rip),%xmm0
movsd  %xmm0,-0x10(%rbp)
movsd  0xed6(%rip),%xmm0
movsd  %xmm0,-0x18(%rbp)
movsd  0xec1(%rip),%xmm0
movsd  %xmm0,-0x20(%rbp)
movsd  0xeac(%rip),%xmm0
movsd  %xmm0,-0x28(%rbp)
movsd  0xe97(%rip),%xmm0
mulsd  -0x8(%rbp),%xmm0
call   1040 <truncf@plt>
cvtsi2sd %eax,%xmm0
movsd  0xe79(%rip),%xmm1
mulsd  %xmm1,%xmm0
movsd  %xmm0,-0x30(%rbp)
movsd  0xe70(%rip),%xmm0
mulsd  -0x10(%rbp),%xmm0
call   1040 <truncf@plt>
cvtsi2sd %eax,%xmm0
movsd  0xe52(%rip),%xmm1
mulsd  %xmm1,%xmm0
movsd  %xmm0,-0x38(%rbp)
movsd  0xe49(%rip),%xmm0
mulsd  -0x18(%rbp),%xmm0
call   1040 <truncf@plt>
cvtsi2sd %eax,%xmm0
movsd  0xe2b(%rip),%xmm1
mulsd  %xmm1,%xmm0
movsd  %xmm0,-0x40(%rbp)
movsd  0xe22(%rip),%xmm0
mulsd  -0x20(%rbp),%xmm0
call   1040 <truncf@plt>
cvtsi2sd %eax,%xmm0
movsd  0xe04(%rip),%xmm1
mulsd  %xmm1,%xmm0
movsd  %xmm0,-0x48(%rbp)
movsd  0xdfb(%rip),%xmm0
mulsd  -0x28(%rbp),%xmm0
call   1040 <truncf@plt>
cvtsi2sd %eax,%xmm0
movsd  0xddd(%rip),%xmm1
mulsd  %xmm1,%xmm0
movsd  %xmm0,-0x50(%rbp)
movsd  -0x30(%rbp),%xmm0
addsd  -0x38(%rbp),%xmm0
movsd  0xdca(%rip),%xmm1
mulsd  %xmm1,%xmm0
call   1040 <truncf@plt>
cvtsi2sd %eax,%xmm0
movsd  0xdad(%rip),%xmm1
mulsd  %xmm1,%xmm0
movsd  %xmm0,-0x60(%rbp)
movsd  -0x8(%rbp),%xmm0
addsd  -0x10(%rbp),%xmm0
movsd  %xmm0,-0x58(%rbp)
movsd  -0x58(%rbp),%xmm0
subsd  -0x60(%rbp),%xmm0
movsd  %xmm0,-0x68(%rbp)
movsd  -0x68(%rbp),%xmm0
divsd  -0x58(%rbp),%xmm0
movsd  %xmm0,-0x70(%rbp)
lea    0xda8(%rip),%rdi
mov    $0x0,%al
call   1030 <printf@plt>
lea    0xda9(%rip),%rdi
mov    $0x0,%al
call   1030 <printf@plt>
lea    0xd8c(%rip),%rdi
mov    $0x0,%al
call   1030 <printf@plt>
movsd  -0x8(%rbp),%xmm0
lea    0xd9b(%rip),%rdi
mov    $0x1,%al
call   1030 <printf@plt>
movsd  -0x10(%rbp),%xmm0
lea    0xd9d(%rip),%rdi
mov    $0x1,%al
call   1030 <printf@plt>
movsd  -0x30(%rbp),%xmm0
lea    0xda0(%rip),%rdi
mov    $0x1,%al
call   1030 <printf@plt>
movsd  -0x38(%rbp),%xmm0
lea    0xda2(%rip),%rdi
mov    $0x1,%al
call   1030 <printf@plt>
movsd  -0x58(%rbp),%xmm0
lea    0xda5(%rip),%rdi
mov    $0x1,%al
call   1030 <printf@plt>
movsd  -0x60(%rbp),%xmm0
lea    0xdab(%rip),%rdi
mov    $0x1,%al
call   1030 <printf@plt>
movsd  -0x68(%rbp),%xmm0
lea    0xdba(%rip),%rdi
mov    $0x1,%al
call   1030 <printf@plt>
movsd  -0x70(%rbp),%xmm0
lea    0xdb7(%rip),%rdi
mov    $0x1,%al
call   1030 <printf@plt>
lea    0xce6(%rip),%rdi
mov    $0x0,%al
call   1030 <printf@plt>
lea    0xe89(%rip),%rdi
mov    $0x0,%al
call   1030 <printf@plt>
lea    0xe7b(%rip),%rdi
mov    $0x0,%al
call   1030 <printf@plt>
movsd  -0x30(%rbp),%xmm0
mulsd  -0x38(%rbp),%xmm0
movsd  0xc81(%rip),%xmm1
mulsd  %xmm1,%xmm0
call   1040 <truncf@plt>
cvtsi2sd %eax,%xmm0
movsd  0xc64(%rip),%xmm1
mulsd  %xmm1,%xmm0
movsd  %xmm0,-0x60(%rbp)
movsd  -0x8(%rbp),%xmm0
mulsd  -0x10(%rbp),%xmm0
movsd  %xmm0,-0x58(%rbp)
movsd  -0x58(%rbp),%xmm0
subsd  -0x60(%rbp),%xmm0
movsd  %xmm0,-0x68(%rbp)
movsd  -0x68(%rbp),%xmm0
divsd  -0x58(%rbp),%xmm0
movsd  %xmm0,-0x70(%rbp)
lea    0xc5f(%rip),%rdi
mov    $0x0,%al
call   1030 <printf@plt>
lea    0xd24(%rip),%rdi
mov    $0x0,%al
call   1030 <printf@plt>
lea    0xc43(%rip),%rdi
mov    $0x0,%al
call   1030 <printf@plt>
movsd  -0x8(%rbp),%xmm0
lea    0xc52(%rip),%rdi
mov    $0x1,%al
call   1030 <printf@plt>
movsd  -0x10(%rbp),%xmm0
lea    0xc54(%rip),%rdi
mov    $0x1,%al
call   1030 <printf@plt>
movsd  -0x30(%rbp),%xmm0
lea    0xc57(%rip),%rdi
mov    $0x1,%al
call   1030 <printf@plt>
movsd  -0x38(%rbp),%xmm0
lea    0xc59(%rip),%rdi
mov    $0x1,%al
call   1030 <printf@plt>
movsd  -0x58(%rbp),%xmm0
lea    0xcca(%rip),%rdi
mov    $0x1,%al
call   1030 <printf@plt>
movsd  -0x60(%rbp),%xmm0
lea    0xcd0(%rip),%rdi
mov    $0x1,%al
call   1030 <printf@plt>
movsd  -0x68(%rbp),%xmm0
lea    0xc71(%rip),%rdi
mov    $0x1,%al
call   1030 <printf@plt>
movsd  -0x70(%rbp),%xmm0
lea    0xc6e(%rip),%rdi
mov    $0x1,%al
call   1030 <printf@plt>
lea    0xb9d(%rip),%rdi
mov    $0x0,%al
call   1030 <printf@plt>
lea    0xd40(%rip),%rdi
mov    $0x0,%al
call   1030 <printf@plt>
lea    0xd32(%rip),%rdi
mov    $0x0,%al
call   1030 <printf@plt>
movsd  -0x30(%rbp),%xmm0
subsd  -0x40(%rbp),%xmm0
movsd  0xb38(%rip),%xmm1
mulsd  %xmm1,%xmm0
call   1040 <truncf@plt>
cvtsi2sd %eax,%xmm0
movsd  0xb1b(%rip),%xmm1
mulsd  %xmm1,%xmm0
movsd  %xmm0,-0x60(%rbp)
movsd  -0x8(%rbp),%xmm0
subsd  -0x18(%rbp),%xmm0
movsd  %xmm0,-0x58(%rbp)
movsd  -0x58(%rbp),%xmm0
subsd  -0x60(%rbp),%xmm0
movsd  %xmm0,-0x68(%rbp)
movsd  -0x68(%rbp),%xmm0
divsd  -0x58(%rbp),%xmm0
movsd  %xmm0,-0x70(%rbp)
lea    0xb16(%rip),%rdi
mov    $0x0,%al
call   1030 <printf@plt>
lea    0xc29(%rip),%rdi
mov    $0x0,%al
call   1030 <printf@plt>
lea    0xafa(%rip),%rdi
mov    $0x0,%al
call   1030 <printf@plt>
movsd  -0x8(%rbp),%xmm0
lea    0xb09(%rip),%rdi
mov    $0x1,%al
call   1030 <printf@plt>
movsd  -0x18(%rbp),%xmm0
lea    0xc08(%rip),%rdi
mov    $0x1,%al
call   1030 <printf@plt>
movsd  -0x30(%rbp),%xmm0
lea    0xb0e(%rip),%rdi
mov    $0x1,%al
call   1030 <printf@plt>
movsd  -0x40(%rbp),%xmm0
lea    0xbf8(%rip),%rdi
mov    $0x1,%al
call   1030 <printf@plt>
movsd  -0x58(%rbp),%xmm0
lea    0xbfb(%rip),%rdi
mov    $0x1,%al
call   1030 <printf@plt>
movsd  -0x60(%rbp),%xmm0
lea    0xc01(%rip),%rdi
mov    $0x1,%al
call   1030 <printf@plt>
movsd  -0x68(%rbp),%xmm0
lea    0xb28(%rip),%rdi
mov    $0x1,%al
call   1030 <printf@plt>
movsd  -0x70(%rbp),%xmm0
lea    0xb25(%rip),%rdi
mov    $0x1,%al
call   1030 <printf@plt>
lea    0xa54(%rip),%rdi
mov    $0x0,%al
call   1030 <printf@plt>
lea    0xbf7(%rip),%rdi
mov    $0x0,%al
call   1030 <printf@plt>
lea    0xbe9(%rip),%rdi
mov    $0x0,%al
call   1030 <printf@plt>
movsd  -0x30(%rbp),%xmm0
subsd  -0x40(%rbp),%xmm0
mulsd  -0x48(%rbp),%xmm0
movsd  0x9ea(%rip),%xmm1
mulsd  %xmm1,%xmm0
call   1040 <truncf@plt>
cvtsi2sd %eax,%xmm0
movsd  0x9cd(%rip),%xmm1
mulsd  %xmm1,%xmm0
movsd  %xmm0,-0x60(%rbp)
movsd  -0x8(%rbp),%xmm0
subsd  -0x18(%rbp),%xmm0
mulsd  -0x20(%rbp),%xmm0
movsd  %xmm0,-0x58(%rbp)
movsd  -0x58(%rbp),%xmm0
subsd  -0x60(%rbp),%xmm0
movsd  %xmm0,-0x68(%rbp)
movsd  -0x68(%rbp),%xmm0
divsd  -0x58(%rbp),%xmm0
movsd  %xmm0,-0x70(%rbp)
lea    0x9c3(%rip),%rdi
mov    $0x0,%al
call   1030 <printf@plt>
lea    0xb50(%rip),%rdi
mov    $0x0,%al
call   1030 <printf@plt>
lea    0x9a7(%rip),%rdi
mov    $0x0,%al
call   1030 <printf@plt>
movsd  -0x8(%rbp),%xmm0
lea    0x9b6(%rip),%rdi
mov    $0x1,%al
call   1030 <printf@plt>
movsd  -0x18(%rbp),%xmm0
lea    0xab5(%rip),%rdi
mov    $0x1,%al
call   1030 <printf@plt>
movsd  -0x20(%rbp),%xmm0
lea    0xb21(%rip),%rdi
mov    $0x1,%al
call   1030 <printf@plt>
movsd  -0x30(%rbp),%xmm0
lea    0x9a8(%rip),%rdi
mov    $0x1,%al
call   1030 <printf@plt>
movsd  -0x40(%rbp),%xmm0
lea    0xa92(%rip),%rdi
mov    $0x1,%al
call   1030 <printf@plt>
movsd  -0x48(%rbp),%xmm0
lea    0xafe(%rip),%rdi
mov    $0x1,%al
call   1030 <printf@plt>
movsd  -0x58(%rbp),%xmm0
lea    0xb01(%rip),%rdi
mov    $0x1,%al
call   1030 <printf@plt>
movsd  -0x60(%rbp),%xmm0
lea    0xb0b(%rip),%rdi
mov    $0x1,%al
call   1030 <printf@plt>
movsd  -0x68(%rbp),%xmm0
lea    0x9af(%rip),%rdi
mov    $0x1,%al
call   1030 <printf@plt>
movsd  -0x70(%rbp),%xmm0
lea    0x9ac(%rip),%rdi
mov    $0x1,%al
call   1030 <printf@plt>
lea    0x8db(%rip),%rdi
mov    $0x0,%al
call   1030 <printf@plt>
lea    0xa7e(%rip),%rdi
mov    $0x0,%al
call   1030 <printf@plt>
lea    0xa70(%rip),%rdi
mov    $0x0,%al
call   1030 <printf@plt>
xor    %eax,%eax
add    $0x70,%rsp
pop    %rbp
ret

x86 assembly (clang, -O2):
<main>:
push   %rbp
push   %r15
push   %r14
push   %r13
push   %r12
push   %rbx
sub    $0x38,%rsp
movsd  0xeaa(%rip),%xmm0
call   1060 <truncf@plt>
xorps  %xmm0,%xmm0
cvtsi2sd %eax,%xmm0
mulsd  0xe9e(%rip),%xmm0
movsd  %xmm0,0x18(%rsp)
movsd  0xe98(%rip),%xmm0
call   1060 <truncf@plt>
xorps  %xmm0,%xmm0
cvtsi2sd %eax,%xmm0
mulsd  0xe7c(%rip),%xmm0
movsd  %xmm0,(%rsp)
movsd  0xe7f(%rip),%xmm0
call   1060 <truncf@plt>
xorps  %xmm0,%xmm0
cvtsi2sd %eax,%xmm0
mulsd  0xe5b(%rip),%xmm0
movsd  %xmm0,0x28(%rsp)
movsd  0xe65(%rip),%xmm0
call   1060 <truncf@plt>
xorps  %xmm0,%xmm0
cvtsi2sd %eax,%xmm0
mulsd  0xe39(%rip),%xmm0
movsd  %xmm0,0x30(%rsp)
movsd  0xe4b(%rip),%xmm0
call   1060 <truncf@plt>
movsd  0x18(%rsp),%xmm0
addsd  (%rsp),%xmm0
mulsd  0xe3b(%rip),%xmm0
call   1060 <truncf@plt>
cvtsi2sd %eax,%xmm1
mulsd  0xe02(%rip),%xmm1
movsd  %xmm1,0x20(%rsp)
movsd  0xe24(%rip),%xmm2
movapd %xmm2,%xmm0
subsd  %xmm1,%xmm0
movsd  %xmm0,0x8(%rsp)
divsd  %xmm2,%xmm0
movsd  %xmm0,0x10(%rsp)
lea    0x1054(%rip),%rbx
mov    %rbx,%rdi
call   1040 <puts@plt>
lea    0xff8(%rip),%rdi
call   1040 <puts@plt>
mov    %rbx,%rdi
call   1040 <puts@plt>
lea    0xe22(%rip),%r15
movsd  0xde2(%rip),%xmm0
mov    %r15,%rdi
mov    $0x1,%al
call   1050 <printf@plt>
lea    0xe1e(%rip),%rdi
movsd  0xdd1(%rip),%xmm0
mov    $0x1,%al
call   1050 <printf@plt>
lea    0xe1e(%rip),%r13
mov    %r13,%rdi
movsd  0x18(%rsp),%xmm0
mov    $0x1,%al
call   1050 <printf@plt>
lea    0xe1c(%rip),%r14
mov    %r14,%rdi
movsd  (%rsp),%xmm0
mov    $0x1,%al
call   1050 <printf@plt>
lea    0xe1c(%rip),%rdi
movsd  0xd7e(%rip),%xmm0
mov    $0x1,%al
call   1050 <printf@plt>
lea    0xe1f(%rip),%rdi
movsd  0x20(%rsp),%xmm0
mov    $0x1,%al
call   1050 <printf@plt>
lea    0xe2d(%rip),%r12
mov    %r12,%rdi
movsd  0x8(%rsp),%xmm0
mov    $0x1,%al
call   1050 <printf@plt>
lea    0xe26(%rip),%rbp
mov    %rbp,%rdi
movsd  0x10(%rsp),%xmm0
mov    $0x1,%al
call   1050 <printf@plt>
mov    %rbx,%rdi
call   1040 <puts@plt>
mov    $0xa,%edi
call   1030 <putchar@plt>
mov    $0xa,%edi
call   1030 <putchar@plt>
movsd  0x18(%rsp),%xmm0
mulsd  (%rsp),%xmm0
mulsd  0xcfe(%rip),%xmm0
call   1060 <truncf@plt>
xorps  %xmm0,%xmm0
cvtsi2sd %eax,%xmm0
mulsd  0xcc2(%rip),%xmm0
movsd  %xmm0,0x20(%rsp)
movsd  0xcfc(%rip),%xmm2
movapd %xmm2,%xmm1
subsd  %xmm0,%xmm1
movsd  %xmm1,0x8(%rsp)
movapd %xmm1,%xmm0
divsd  %xmm2,%xmm0
movsd  %xmm0,0x10(%rsp)
mov    %rbx,%rdi
call   1040 <puts@plt>
lea    0xecd(%rip),%rdi
call   1040 <puts@plt>
mov    %rbx,%rdi
call   1040 <puts@plt>
mov    %r15,%rdi
movsd  0xca9(%rip),%xmm0
mov    $0x1,%al
call   1050 <printf@plt>
lea    0xce8(%rip),%rdi
movsd  0xc9b(%rip),%xmm0
mov    $0x1,%al
call   1050 <printf@plt>
mov    %r13,%rdi
movsd  0x18(%rsp),%xmm0
mov    $0x1,%al
call   1050 <printf@plt>
mov    %r14,%rdi
movsd  (%rsp),%xmm0
mov    $0x1,%al
call   1050 <printf@plt>
lea    0xd4f(%rip),%rdi
movsd  0xc6e(%rip),%xmm0
mov    $0x1,%al
call   1050 <printf@plt>
lea    0xd52(%rip),%rdi
movsd  0x20(%rsp),%xmm0
mov    $0x1,%al
call   1050 <printf@plt>
mov    %r12,%rdi
mov    %r12,%r14
movsd  0x8(%rsp),%xmm0
mov    $0x1,%al
call   1050 <printf@plt>
mov    %rbp,%rdi
mov    %rbp,%r12
movsd  0x10(%rsp),%xmm0
mov    $0x1,%al
call   1050 <printf@plt>
mov    %rbx,%rdi
call   1040 <puts@plt>
mov    $0xa,%edi
call   1030 <putchar@plt>
mov    $0xa,%edi
call   1030 <putchar@plt>
movsd  0x18(%rsp),%xmm0
subsd  0x28(%rsp),%xmm0
movsd  %xmm0,(%rsp)
mulsd  0xbd8(%rip),%xmm0
call   1060 <truncf@plt>
xorps  %xmm0,%xmm0
cvtsi2sd %eax,%xmm0
mulsd  0xb9c(%rip),%xmm0
movsd  %xmm0,0x20(%rsp)
movsd  0xbde(%rip),%xmm2
movapd %xmm2,%xmm1
subsd  %xmm0,%xmm1
movsd  %xmm1,0x8(%rsp)
movapd %xmm1,%xmm0
divsd  %xmm2,%xmm0
movsd  %xmm0,0x10(%rsp)
mov    %rbx,%rdi
call   1040 <puts@plt>
lea    0xdb9(%rip),%rdi
call   1040 <puts@plt>
mov    %rbx,%rdi
call   1040 <puts@plt>
mov    %r15,%rdi
movsd  0xb83(%rip),%xmm0
mov    $0x1,%al
call   1050 <printf@plt>
lea    0xc99(%rip),%rbp
movsd  0xb8d(%rip),%xmm0
mov    %rbp,%rdi
mov    $0x1,%al
call   1050 <printf@plt>
mov    %r13,%rdi
movsd  0x18(%rsp),%xmm0
mov    $0x1,%al
call   1050 <printf@plt>
lea    0xc86(%rip),%r13
mov    %r13,%rdi
movsd  0x28(%rsp),%xmm0
mov    $0x1,%al
call   1050 <printf@plt>
lea    0xc85(%rip),%rdi
movsd  0xb45(%rip),%xmm0
mov    $0x1,%al
call   1050 <printf@plt>
lea    0xc88(%rip),%rdi
movsd  0x20(%rsp),%xmm0
mov    $0x1,%al
call   1050 <printf@plt>
mov    %r14,%rdi
movsd  0x8(%rsp),%xmm0
mov    $0x1,%al
call   1050 <printf@plt>
mov    %r12,%rdi
movsd  0x10(%rsp),%xmm0
mov    $0x1,%al
call   1050 <printf@plt>
mov    %rbx,%rdi
call   1040 <puts@plt>
mov    $0xa,%edi
call   1030 <putchar@plt>
mov    $0xa,%edi
call   1030 <putchar@plt>
movsd  (%rsp),%xmm0
mulsd  0x30(%rsp),%xmm0
mulsd  0xab3(%rip),%xmm0
call   1060 <truncf@plt>
xorps  %xmm0,%xmm0
cvtsi2sd %eax,%xmm0
mulsd  0xa77(%rip),%xmm0
movsd  %xmm0,0x8(%rsp)
movsd  0xac9(%rip),%xmm2
movapd %xmm2,%xmm1
subsd  %xmm0,%xmm1
movsd  %xmm1,0x10(%rsp)
movapd %xmm1,%xmm0
divsd  %xmm2,%xmm0
movsd  %xmm0,(%rsp)
mov    %rbx,%rdi
call   1040 <puts@plt>
lea    0xca7(%rip),%rdi
call   1040 <puts@plt>
mov    %rbx,%rdi
call   1040 <puts@plt>
mov    %r15,%rdi
movsd  0xa5f(%rip),%xmm0
mov    $0x1,%al
call   1050 <printf@plt>
mov    %rbp,%rdi
movsd  0xa6d(%rip),%xmm0
mov    $0x1,%al
call   1050 <printf@plt>
lea    0xbca(%rip),%rdi
movsd  0xa67(%rip),%xmm0
mov    $0x1,%al
call   1050 <printf@plt>
lea    0xa8c(%rip),%rdi
movsd  0x18(%rsp),%xmm0
mov    $0x1,%al
call   1050 <printf@plt>
mov    %r13,%rdi
movsd  0x28(%rsp),%xmm0
mov    $0x1,%al
call   1050 <printf@plt>
lea    0xba6(%rip),%rdi
movsd  0x30(%rsp),%xmm0
mov    $0x1,%al
call   1050 <printf@plt>
lea    0xba8(%rip),%rdi
movsd  0xa11(%rip),%xmm0
mov    $0x1,%al
call   1050 <printf@plt>
lea    0xbaf(%rip),%rdi
movsd  0x8(%rsp),%xmm0
mov    $0x1,%al
call   1050 <printf@plt>
mov    %r14,%rdi
movsd  0x10(%rsp),%xmm0
mov    $0x1,%al
call   1050 <printf@plt>
mov    %r12,%rdi
movsd  (%rsp),%xmm0
mov    $0x1,%al
call   1050 <printf@plt>
mov    %rbx,%rdi
call   1040 <puts@plt>
mov    $0xa,%edi
call   1030 <putchar@plt>
mov    $0xa,%edi
call   1030 <putchar@plt>
xor    %eax,%eax
add    $0x38,%rsp
pop    %rbx
pop    %r12
pop    %r13
pop    %r14
pop    %r15
pop    %rbp
ret

LLVM IR (-O0):
@.str = [15 x i8] c"-------------\0A\00"
@.str.1 = [19 x i8] c"Operacion 1 - x+y\0A\00"
@.str.2 = [21 x i8] c"Valor de x_8: %0.7f\0A\00"
@.str.3 = [22 x i8] c"Valor de y_8:: %0.7f\0A\00"
@.str.4 = [21 x i8] c"Valor de x_5: %0.5f\0A\00"
@.str.5 = [22 x i8] c"Valor de y_5:: %0.5f\0A\00"
@.str.6 = [25 x i8] c"Valor a 8 de x+y: %0.7f\0A\00"
@.str.7 = [34 x i8] c"Aritmetica maquina de x+y: %0.5f\0A\00"
@.str.8 = [16 x i8] c"Error A: %0.7f\0A\00"
@.str.9 = [16 x i8] c"Error R: %0.7f\0A\00"
@.str.10 = [2 x i8] c"\0A\00"
@.str.11 = [19 x i8] c"Operacion 3 - x*y\0A\00"
@.str.12 = [25 x i8] c"Valor a 8 de x*y: %0.7f\0A\00"
@.str.13 = [34 x i8] c"Aritmetica maquina de x*y: %0.5f\0A\00"
@.str.14 = [19 x i8] c"Operacion 5 - x-u\0A\00"
@.str.15 = [22 x i8] c"Valor de u_8:: %0.7f\0A\00"
@.str.16 = [22 x i8] c"Valor de u_5:: %0.5f\0A\00"
@.str.17 = [25 x i8] c"Valor a 8 de x-u: %0.7f\0A\00"
@.str.18 = [34 x i8] c"Aritmetica maquina de x-u: %0.5f\0A\00"
@.str.19 = [24 x i8] c"Operacion 7 - (x-u)*v \0A\00"
@.str.20 = [22 x i8] c"Valor de v_8:: %0.7f\0A\00"
@.str.21 = [22 x i8] c"Valor de v_5:: %0.5f\0A\00"
@.str.22 = [29 x i8] c"Valor a 8 de (x-u)/v: %0.7f\0A\00"
@.str.23 = [38 x i8] c"Aritmetica maquina de (x-u)*v: %0.5f\0A\00"
define i32 @main() {
%1 = alloca double
%2 = alloca double
%3 = alloca double
%4 = alloca double
%5 = alloca double
%6 = alloca double
%7 = alloca double
%8 = alloca double
%9 = alloca double
%10 = alloca double
%11 = alloca double
%12 = alloca double
%13 = alloca double
%14 = alloca double
store double 0x3FE6DB6DB48E678C, double* %1
store double 0x3FD5555551C112DA, double* %2
store double 7.142510e-01, double* %3
store double 0x40F81CDE66666666, double* %4
store double 1.111110e-05, double* %5
%15 = load double, double* %1
%16 = fmul double %15, 1.000000e+05
%17 = call i32 @truncf(double %16)
%18 = sitofp i32 %17 to double
%19 = fmul double %18, 1.000000e-05
store double %19, double* %6
%20 = load double, double* %2
%21 = fmul double %20, 1.000000e+05
%22 = call i32 @truncf(double %21)
%23 = sitofp i32 %22 to double
%24 = fmul double %23, 1.000000e-05
store double %24, double* %7
%25 = load double, double* %3
%26 = fmul double %25, 1.000000e+05
%27 = call i32 @truncf(double %26)
%28 = sitofp i32 %27 to double
%29 = fmul double %28, 1.000000e-05
store double %29, double* %8
%30 = load double, double* %4
%31 = fmul double %30, 1.000000e+05
%32 = call i32 @truncf(double %31)
%33 = sitofp i32 %32 to double
%34 = fmul double %33, 1.000000e-05
store double %34, double* %9
%35 = load double, double* %5
%36 = fmul double %35, 1.000000e+05
%37 = call i32 @truncf(double %36)
%38 = sitofp i32 %37 to double
%39 = fmul double %38, 1.000000e-05
store double %39, double* %10
%40 = load double, double* %6
%41 = load double, double* %7
%42 = fadd double %40, %41
%43 = fmul double %42, 1.000000e+05
%44 = call i32 @truncf(double %43)
%45 = sitofp i32 %44 to double
%46 = fmul double %45, 1.000000e-05
store double %46, double* %12
%47 = load double, double* %1
%48 = load double, double* %2
%49 = fadd double %47, %48
store double %49, double* %11
%50 = load double, double* %11
%51 = load double, double* %12
%52 = fsub double %50, %51
store double %52, double* %13
%53 = load double, double* %13
%54 = load double, double* %11
%55 = fdiv double %53, %54
store double %55, double* %14
%56 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([15 x i8], [15 x i8]* @.str, i64 0, i64 0))
%57 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([19 x i8], [19 x i8]* @.str.1, i64 0, i64 0))
%58 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([15 x i8], [15 x i8]* @.str, i64 0, i64 0))
%59 = load double, double* %1
%60 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([21 x i8], [21 x i8]* @.str.2, i64 0, i64 0), double %59)
%61 = load double, double* %2
%62 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([22 x i8], [22 x i8]* @.str.3, i64 0, i64 0), double %61)
%63 = load double, double* %6
%64 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([21 x i8], [21 x i8]* @.str.4, i64 0, i64 0), double %63)
%65 = load double, double* %7
%66 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([22 x i8], [22 x i8]* @.str.5, i64 0, i64 0), double %65)
%67 = load double, double* %11
%68 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([25 x i8], [25 x i8]* @.str.6, i64 0, i64 0), double %67)
%69 = load double, double* %12
%70 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([34 x i8], [34 x i8]* @.str.7, i64 0, i64 0), double %69)
%71 = load double, double* %13
%72 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([16 x i8], [16 x i8]* @.str.8, i64 0, i64 0), double %71)
%73 = load double, double* %14
%74 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([16 x i8], [16 x i8]* @.str.9, i64 0, i64 0), double %73)
%75 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([15 x i8], [15 x i8]* @.str, i64 0, i64 0))
%76 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.10, i64 0, i64 0))
%77 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.10, i64 0, i64 0))
%78 = load double, double* %6
%79 = load double, double* %7
%80 = fmul double %78, %79
%81 = fmul double %80, 1.000000e+05
%82 = call i32 @truncf(double %81)
%83 = sitofp i32 %82 to double
%84 = fmul double %83, 1.000000e-05
store double %84, double* %12
%85 = load double, double* %1
%86 = load double, double* %2
%87 = fmul double %85, %86
store double %87, double* %11
%88 = load double, double* %11
%89 = load double, double* %12
%90 = fsub double %88, %89
store double %90, double* %13
%91 = load double, double* %13
%92 = load double, double* %11
%93 = fdiv double %91, %92
store double %93, double* %14
%94 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([15 x i8], [15 x i8]* @.str, i64 0, i64 0))
%95 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([19 x i8], [19 x i8]* @.str.11, i64 0, i64 0))
%96 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([15 x i8], [15 x i8]* @.str, i64 0, i64 0))
%97 = load double, double* %1
%98 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([21 x i8], [21 x i8]* @.str.2, i64 0, i64 0), double %97)
%99 = load double, double* %2
%100 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([22 x i8], [22 x i8]* @.str.3, i64 0, i64 0), double %99)
%101 = load double, double* %6
%102 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([21 x i8], [21 x i8]* @.str.4, i64 0, i64 0), double %101)
%103 = load double, double* %7
%104 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([22 x i8], [22 x i8]* @.str.5, i64 0, i64 0), double %103)
%105 = load double, double* %11
%106 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([25 x i8], [25 x i8]* @.str.12, i64 0, i64 0), double %105)
%107 = load double, double* %12
%108 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([34 x i8], [34 x i8]* @.str.13, i64 0, i64 0), double %107)
%109 = load double, double* %13
%110 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([16 x i8], [16 x i8]* @.str.8, i64 0, i64 0), double %109)
%111 = load double, double* %14
%112 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([16 x i8], [16 x i8]* @.str.9, i64 0, i64 0), double %111)
%113 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([15 x i8], [15 x i8]* @.str, i64 0, i64 0))
%114 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.10, i64 0, i64 0))
%115 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.10, i64 0, i64 0))
%116 = load double, double* %6
%117 = load double, double* %8
%118 = fsub double %116, %117
%119 = fmul double %118, 1.000000e+05
%120 = call i32 @truncf(double %119)
%121 = sitofp i32 %120 to double
%122 = fmul double %121, 1.000000e-05
store double %122, double* %12
%123 = load double, double* %1
%124 = load double, double* %3
%125 = fsub double %123, %124
store double %125, double* %11
%126 = load double, double* %11
%127 = load double, double* %12
%128 = fsub double %126, %127
store double %128, double* %13
%129 = load double, double* %13
%130 = load double, double* %11
%131 = fdiv double %129, %130
store double %131, double* %14
%132 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([15 x i8], [15 x i8]* @.str, i64 0, i64 0))
%133 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([19 x i8], [19 x i8]* @.str.14, i64 0, i64 0))
%134 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([15 x i8], [15 x i8]* @.str, i64 0, i64 0))
%135 = load double, double* %1
%136 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([21 x i8], [21 x i8]* @.str.2, i64 0, i64 0), double %135)
%137 = load double, double* %3
%138 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([22 x i8], [22 x i8]* @.str.15, i64 0, i64 0), double %137)
%139 = load double, double* %6
%140 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([21 x i8], [21 x i8]* @.str.4, i64 0, i64 0), double %139)
%141 = load double, double* %8
%142 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([22 x i8], [22 x i8]* @.str.16, i64 0, i64 0), double %141)
%143 = load double, double* %11
%144 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([25 x i8], [25 x i8]* @.str.17, i64 0, i64 0), double %143)
%145 = load double, double* %12
%146 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([34 x i8], [34 x i8]* @.str.18, i64 0, i64 0), double %145)
%147 = load double, double* %13
%148 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([16 x i8], [16 x i8]* @.str.8, i64 0, i64 0), double %147)
%149 = load double, double* %14
%150 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([16 x i8], [16 x i8]* @.str.9, i64 0, i64 0), double %149)
%151 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([15 x i8], [15 x i8]* @.str, i64 0, i64 0))
%152 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.10, i64 0, i64 0))
%153 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.10, i64 0, i64 0))
%154 = load double, double* %6
%155 = load double, double* %8
%156 = fsub double %154, %155
%157 = load double, double* %9
%158 = fmul double %156, %157
%159 = fmul double %158, 1.000000e+05
%160 = call i32 @truncf(double %159)
%161 = sitofp i32 %160 to double
%162 = fmul double %161, 1.000000e-05
store double %162, double* %12
%163 = load double, double* %1
%164 = load double, double* %3
%165 = fsub double %163, %164
%166 = load double, double* %4
%167 = fmul double %165, %166
store double %167, double* %11
%168 = load double, double* %11
%169 = load double, double* %12
%170 = fsub double %168, %169
store double %170, double* %13
%171 = load double, double* %13
%172 = load double, double* %11
%173 = fdiv double %171, %172
store double %173, double* %14
%174 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([15 x i8], [15 x i8]* @.str, i64 0, i64 0))
%175 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([24 x i8], [24 x i8]* @.str.19, i64 0, i64 0))
%176 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([15 x i8], [15 x i8]* @.str, i64 0, i64 0))
%177 = load double, double* %1
%178 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([21 x i8], [21 x i8]* @.str.2, i64 0, i64 0), double %177)
%179 = load double, double* %3
%180 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([22 x i8], [22 x i8]* @.str.15, i64 0, i64 0), double %179)
%181 = load double, double* %4
%182 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([22 x i8], [22 x i8]* @.str.20, i64 0, i64 0), double %181)
%183 = load double, double* %6
%184 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([21 x i8], [21 x i8]* @.str.4, i64 0, i64 0), double %183)
%185 = load double, double* %8
%186 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([22 x i8], [22 x i8]* @.str.16, i64 0, i64 0), double %185)
%187 = load double, double* %9
%188 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([22 x i8], [22 x i8]* @.str.21, i64 0, i64 0), double %187)
%189 = load double, double* %11
%190 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([29 x i8], [29 x i8]* @.str.22, i64 0, i64 0), double %189)
%191 = load double, double* %12
%192 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([38 x i8], [38 x i8]* @.str.23, i64 0, i64 0), double %191)
%193 = load double, double* %13
%194 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([16 x i8], [16 x i8]* @.str.8, i64 0, i64 0), double %193)
%195 = load double, double* %14
%196 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([16 x i8], [16 x i8]* @.str.9, i64 0, i64 0), double %195)
%197 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([15 x i8], [15 x i8]* @.str, i64 0, i64 0))
%198 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.10, i64 0, i64 0))
%199 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.10, i64 0, i64 0))
ret i32 0
}

LLVM IR (-O2):
@.str.2 = [21 x i8] c"Valor de x_8: %0.7f\0A\00"
@.str.3 = [22 x i8] c"Valor de y_8:: %0.7f\0A\00"
@.str.4 = [21 x i8] c"Valor de x_5: %0.5f\0A\00"
@.str.5 = [22 x i8] c"Valor de y_5:: %0.5f\0A\00"
@.str.6 = [25 x i8] c"Valor a 8 de x+y: %0.7f\0A\00"
@.str.7 = [34 x i8] c"Aritmetica maquina de x+y: %0.5f\0A\00"
@.str.8 = [16 x i8] c"Error A: %0.7f\0A\00"
@.str.9 = [16 x i8] c"Error R: %0.7f\0A\00"
@.str.12 = [25 x i8] c"Valor a 8 de x*y: %0.7f\0A\00"
@.str.13 = [34 x i8] c"Aritmetica maquina de x*y: %0.5f\0A\00"
@.str.15 = [22 x i8] c"Valor de u_8:: %0.7f\0A\00"
@.str.16 = [22 x i8] c"Valor de u_5:: %0.5f\0A\00"
@.str.17 = [25 x i8] c"Valor a 8 de x-u: %0.7f\0A\00"
@.str.18 = [34 x i8] c"Aritmetica maquina de x-u: %0.5f\0A\00"
@.str.20 = [22 x i8] c"Valor de v_8:: %0.7f\0A\00"
@.str.21 = [22 x i8] c"Valor de v_5:: %0.5f\0A\00"
@.str.22 = [29 x i8] c"Valor a 8 de (x-u)/v: %0.7f\0A\00"
@.str.23 = [38 x i8] c"Aritmetica maquina de (x-u)*v: %0.5f\0A\00"
@str.24 = [18 x i8] c"Operacion 1 - x+y\00"
@str.28 = [18 x i8] c"Operacion 3 - x*y\00"
@str.32 = [18 x i8] c"Operacion 5 - x-u\00"
@str.36 = [23 x i8] c"Operacion 7 - (x-u)*v \00"
@str.38 = [14 x i8] c"-------------\00"
define i32 @main() {
%1 = tail call i32 @truncf(double 0x40F1704922D0E560)
%2 = sitofp i32 %1 to double
%3 = fmul double %2, 1.000000e-05
%4 = tail call i32 @truncf(double 0x40E046AAA7EF9DB2)
%5 = sitofp i32 %4 to double
%6 = fmul double %5, 1.000000e-05
%7 = tail call i32 @truncf(double 0x40F1701199999999)
%8 = sitofp i32 %7 to double
%9 = fmul double %8, 1.000000e-05
%10 = tail call i32 @truncf(double 9.876590e+09)
%11 = sitofp i32 %10 to double
%12 = fmul double %11, 1.000000e-05
%13 = tail call i32 @truncf(double 1.111110e+00)
%14 = fadd double %3, %6
%15 = fmul double %14, 1.000000e+05
%16 = tail call i32 @truncf(double %15)
%17 = sitofp i32 %16 to double
%18 = fmul double %17, 1.000000e-05
%19 = fsub double 0x3FF0C30C2EB7787C, %18
%20 = fdiv double %19, 0x3FF0C30C2EB7787C
%21 = tail call i32 @puts(i8* dereferenceable(1) getelementptr inbounds ([14 x i8], [14 x i8]* @str.38, i64 0, i64 0))
%22 = tail call i32 @puts(i8* dereferenceable(1) getelementptr inbounds ([18 x i8], [18 x i8]* @str.24, i64 0, i64 0))
%23 = tail call i32 @puts(i8* dereferenceable(1) getelementptr inbounds ([14 x i8], [14 x i8]* @str.38, i64 0, i64 0))
%24 = tail call i32 (i8*, ...) @printf(i8* dereferenceable(1) getelementptr inbounds ([21 x i8], [21 x i8]* @.str.2, i64 0, i64 0), double 0x3FE6DB6DB48E678C)
%25 = tail call i32 (i8*, ...) @printf(i8* dereferenceable(1) getelementptr inbounds ([22 x i8], [22 x i8]* @.str.3, i64 0, i64 0), double 0x3FD5555551C112DA)
%26 = tail call i32 (i8*, ...) @printf(i8* dereferenceable(1) getelementptr inbounds ([21 x i8], [21 x i8]* @.str.4, i64 0, i64 0), double %3)
%27 = tail call i32 (i8*, ...) @printf(i8* dereferenceable(1) getelementptr inbounds ([22 x i8], [22 x i8]* @.str.5, i64 0, i64 0), double %6)
%28 = tail call i32 (i8*, ...) @printf(i8* dereferenceable(1) getelementptr inbounds ([25 x i8], [25 x i8]* @.str.6, i64 0, i64 0), double 0x3FF0C30C2EB7787C)
%29 = tail call i32 (i8*, ...) @printf(i8* dereferenceable(1) getelementptr inbounds ([34 x i8], [34 x i8]* @.str.7, i64 0, i64 0), double %18)
%30 = tail call i32 (i8*, ...) @printf(i8* dereferenceable(1) getelementptr inbounds ([16 x i8], [16 x i8]* @.str.8, i64 0, i64 0), double %19)
%31 = tail call i32 (i8*, ...) @printf(i8* dereferenceable(1) getelementptr inbounds ([16 x i8], [16 x i8]* @.str.9, i64 0, i64 0), double %20)
%32 = tail call i32 @puts(i8* dereferenceable(1) getelementptr inbounds ([14 x i8], [14 x i8]* @str.38, i64 0, i64 0))
%33 = tail call i32 @putchar(i32 10)
%34 = tail call i32 @putchar(i32 10)
%35 = fmul double %3, %6
%36 = fmul double %35, 1.000000e+05
%37 = tail call i32 @truncf(double %36)
%38 = sitofp i32 %37 to double
%39 = fmul double %38, 1.000000e-05
%40 = fsub double 0x3FCE79E7964B98CE, %39
%41 = fdiv double %40, 0x3FCE79E7964B98CE
%42 = tail call i32 @puts(i8* dereferenceable(1) getelementptr inbounds ([14 x i8], [14 x i8]* @str.38, i64 0, i64 0))
%43 = tail call i32 @puts(i8* dereferenceable(1) getelementptr inbounds ([18 x i8], [18 x i8]* @str.28, i64 0, i64 0))
%44 = tail call i32 @puts(i8* dereferenceable(1) getelementptr inbounds ([14 x i8], [14 x i8]* @str.38, i64 0, i64 0))
%45 = tail call i32 (i8*, ...) @printf(i8* dereferenceable(1) getelementptr inbounds ([21 x i8], [21 x i8]* @.str.2, i64 0, i64 0), double 0x3FE6DB6DB48E678C)
%46 = tail call i32 (i8*, ...) @printf(i8* dereferenceable(1) getelementptr inbounds ([22 x i8], [22 x i8]* @.str.3, i64 0, i64 0), double 0x3FD5555551C112DA)
%47 = tail call i32 (i8*, ...) @printf(i8* dereferenceable(1) getelementptr inbounds ([21 x i8], [21 x i8]* @.str.4, i64 0, i64 0), double %3)
%48 = tail call i32 (i8*, ...) @printf(i8* dereferenceable(1) getelementptr inbounds ([22 x i8], [22 x i8]* @.str.5, i64 0, i64 0), double %6)
%49 = tail call i32 (i8*, ...) @printf(i8* dereferenceable(1) getelementptr inbounds ([25 x i8], [25 x i8]* @.str.12, i64 0, i64 0), double 0x3FCE79E7964B98CE)
%50 = tail call i32 (i8*, ...) @printf(i8* dereferenceable(1) getelementptr inbounds ([34 x i8], [34 x i8]* @.str.13, i64 0, i64 0), double %39)
%51 = tail call i32 (i8*, ...) @printf(i8* dereferenceable(1) getelementptr inbounds ([16 x i8], [16 x i8]* @.str.8, i64 0, i64 0), double %40)
%52 = tail call i32 (i8*, ...) @printf(i8* dereferenceable(1) getelementptr inbounds ([16 x i8], [16 x i8]* @.str.9, i64 0, i64 0), double %41)
%53 = tail call i32 @puts(i8* dereferenceable(1) getelementptr inbounds ([14 x i8], [14 x i8]* @str.38, i64 0, i64 0))
%54 = tail call i32 @putchar(i32 10)
%55 = tail call i32 @putchar(i32 10)
%56 = fsub double %3, %9
%57 = fmul double %56, 1.000000e+05
%58 = tail call i32 @truncf(double %57)
%59 = sitofp i32 %58 to double
%60 = fmul double %59, 1.000000e-05
%61 = fsub double 0x3F0232B284CD0000, %60
%62 = fdiv double %61, 0x3F0232B284CD0000
%63 = tail call i32 @puts(i8* dereferenceable(1) getelementptr inbounds ([14 x i8], [14 x i8]* @str.38, i64 0, i64 0))
%64 = tail call i32 @puts(i8* dereferenceable(1) getelementptr inbounds ([18 x i8], [18 x i8]* @str.32, i64 0, i64 0))
%65 = tail call i32 @puts(i8* dereferenceable(1) getelementptr inbounds ([14 x i8], [14 x i8]* @str.38, i64 0, i64 0))
%66 = tail call i32 (i8*, ...) @printf(i8* dereferenceable(1) getelementptr inbounds ([21 x i8], [21 x i8]* @.str.2, i64 0, i64 0), double 0x3FE6DB6DB48E678C)
%67 = tail call i32 (i8*, ...) @printf(i8* dereferenceable(1) getelementptr inbounds ([22 x i8], [22 x i8]* @.str.15, i64 0, i64 0), double 7.142510e-01)
%68 = tail call i32 (i8*, ...) @printf(i8* dereferenceable(1) getelementptr inbounds ([21 x i8], [21 x i8]* @.str.4, i64 0, i64 0), double %3)
%69 = tail call i32 (i8*, ...) @printf(i8* dereferenceable(1) getelementptr inbounds ([22 x i8], [22 x i8]* @.str.16, i64 0, i64 0), double %9)
%70 = tail call i32 (i8*, ...) @printf(i8* dereferenceable(1) getelementptr inbounds ([25 x i8], [25 x i8]* @.str.17, i64 0, i64 0), double 0x3F0232B284CD0000)
%71 = tail call i32 (i8*, ...) @printf(i8* dereferenceable(1) getelementptr inbounds ([34 x i8], [34 x i8]* @.str.18, i64 0, i64 0), double %60)
%72 = tail call i32 (i8*, ...) @printf(i8* dereferenceable(1) getelementptr inbounds ([16 x i8], [16 x i8]* @.str.8, i64 0, i64 0), double %61)
%73 = tail call i32 (i8*, ...) @printf(i8* dereferenceable(1) getelementptr inbounds ([16 x i8], [16 x i8]* @.str.9, i64 0, i64 0), double %62)
%74 = tail call i32 @puts(i8* dereferenceable(1) getelementptr inbounds ([14 x i8], [14 x i8]* @str.38, i64 0, i64 0))
%75 = tail call i32 @putchar(i32 10)
%76 = tail call i32 @putchar(i32 10)
%77 = fmul double %56, %12
%78 = fmul double %77, 1.000000e+05
%79 = tail call i32 @truncf(double %78)
%80 = sitofp i32 %79 to double
%81 = fmul double %80, 1.000000e-05
%82 = fsub double 0x400B6CE173808314, %81
%83 = fdiv double %82, 0x400B6CE173808314
%84 = tail call i32 @puts(i8* dereferenceable(1) getelementptr inbounds ([14 x i8], [14 x i8]* @str.38, i64 0, i64 0))
%85 = tail call i32 @puts(i8* dereferenceable(1) getelementptr inbounds ([23 x i8], [23 x i8]* @str.36, i64 0, i64 0))
%86 = tail call i32 @puts(i8* dereferenceable(1) getelementptr inbounds ([14 x i8], [14 x i8]* @str.38, i64 0, i64 0))
%87 = tail call i32 (i8*, ...) @printf(i8* dereferenceable(1) getelementptr inbounds ([21 x i8], [21 x i8]* @.str.2, i64 0, i64 0), double 0x3FE6DB6DB48E678C)
%88 = tail call i32 (i8*, ...) @printf(i8* dereferenceable(1) getelementptr inbounds ([22 x i8], [22 x i8]* @.str.15, i64 0, i64 0), double 7.142510e-01)
%89 = tail call i32 (i8*, ...) @printf(i8* dereferenceable(1) getelementptr inbounds ([22 x i8], [22 x i8]* @.str.20, i64 0, i64 0), double 0x40F81CDE66666666)
%90 = tail call i32 (i8*, ...) @printf(i8* dereferenceable(1) getelementptr inbounds ([21 x i8], [21 x i8]* @.str.4, i64 0, i64 0), double %3)
%91 = tail call i32 (i8*, ...) @printf(i8* dereferenceable(1) getelementptr inbounds ([22 x i8], [22 x i8]* @.str.16, i64 0, i64 0), double %9)
%92 = tail call i32 (i8*, ...) @printf(i8* dereferenceable(1) getelementptr inbounds ([22 x i8], [22 x i8]* @.str.21, i64 0, i64 0), double %12)
%93 = tail call i32 (i8*, ...) @printf(i8* dereferenceable(1) getelementptr inbounds ([29 x i8], [29 x i8]* @.str.22, i64 0, i64 0), double 0x400B6CE173808314)
%94 = tail call i32 (i8*, ...) @printf(i8* dereferenceable(1) getelementptr inbounds ([38 x i8], [38 x i8]* @.str.23, i64 0, i64 0), double %81)
%95 = tail call i32 (i8*, ...) @printf(i8* dereferenceable(1) getelementptr inbounds ([16 x i8], [16 x i8]* @.str.8, i64 0, i64 0), double %82)
%96 = tail call i32 (i8*, ...) @printf(i8* dereferenceable(1) getelementptr inbounds ([16 x i8], [16 x i8]* @.str.9, i64 0, i64 0), double %83)
%97 = tail call i32 @puts(i8* dereferenceable(1) getelementptr inbounds ([14 x i8], [14 x i8]* @str.38, i64 0, i64 0))
%98 = tail call i32 @putchar(i32 10)
%99 = tail call i32 @putchar(i32 10)
ret i32 0
}