#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*/ acos(double);
int /*<<< orphan*/ acosh(double);
int /*<<< orphan*/ asin(double);
int /*<<< orphan*/ asinh(double);
int /*<<< orphan*/ atan(double);
int /*<<< orphan*/ atan2(double, double);
int /*<<< orphan*/ atanh(double);
int /*<<< orphan*/ cbrt(double);
int /*<<< orphan*/ ceil(double);
int /*<<< orphan*/ copysign(double, double);
int /*<<< orphan*/ cos(double);
int /*<<< orphan*/ cosh(double);
int /*<<< orphan*/ erf(double);
int /*<<< orphan*/ erfc(double);
int /*<<< orphan*/ exp(double);
int /*<<< orphan*/ exp2(double);
int /*<<< orphan*/ expm1(double);
int /*<<< orphan*/ fabs(double);
int /*<<< orphan*/ fdim(double, double);
int /*<<< orphan*/ floor(double);
int /*<<< orphan*/ fma(double, double, double);
int /*<<< orphan*/ fmax(double, double);
int /*<<< orphan*/ fmin(double, double);
int /*<<< orphan*/ fmod(double, double);
int /*<<< orphan*/ frexp(double, int *);
int /*<<< orphan*/ hypot(double, double);
int /*<<< orphan*/ ilogb(double);
int /*<<< orphan*/ ldexp(double, int);
int /*<<< orphan*/ lgamma(double);
int /*<<< orphan*/ llrint(double);
int /*<<< orphan*/ llround(double);
int /*<<< orphan*/ log(double);
int /*<<< orphan*/ log10(double);
int /*<<< orphan*/ log1p(double);
int /*<<< orphan*/ log2(double);
int /*<<< orphan*/ logb(double);
int /*<<< orphan*/ lrint(double);
int /*<<< orphan*/ lround(double);
int /*<<< orphan*/ modf(double, double *);
int /*<<< orphan*/ nan(char *);
int /*<<< orphan*/ nearbyint(double);
int /*<<< orphan*/ nextafter(double, double);
int /*<<< orphan*/ nexttoward(double, long double);
int /*<<< orphan*/ pow(double, double);
int /*<<< orphan*/ remainder(double, double);
int /*<<< orphan*/ remquo(double, double, int *);
int /*<<< orphan*/ rint(double);
int /*<<< orphan*/ round(double);
int /*<<< orphan*/ scalbln(double, long);
int /*<<< orphan*/ scalbn(double, int);
int /*<<< orphan*/ sin(double);
int /*<<< orphan*/ sincos(double, double *, double *);
int /*<<< orphan*/ sinh(double);
int /*<<< orphan*/ sqrt(double);
int /*<<< orphan*/ tan(double);
int /*<<< orphan*/ tanh(double);
int /*<<< orphan*/ tgamma(double);
int /*<<< orphan*/ trunc(double);
void math(double d, int *ex, double *dp) {
  acos(d);
  acosh(d);
  asin(d);
  asinh(d);
  atan(d);
  atanh(d);
  atan2(d, d);
  cbrt(d);
  ceil(d);
  copysign(d, d);
  cos(d);
  cosh(d);
  erf(d);
  erfc(d);
  exp(d);
  exp2(d);
  expm1(d);
  fabs(d);
  fdim(d, d);
  floor(d);
  fma(d, d, d);
  fmax(d, d);
  fmin(d, d);
  fmod(d, d);
  frexp(d, ex);
  hypot(d, d);
  ilogb(d);
  ldexp(d, *ex);
  lgamma(d);
  llrint(d);
  llround(d);
  log(d);
  log10(d);
  log1p(d);
  log2(d);
  logb(d);
  lrint(d);
  lround(d);
  modf(d, dp);
  nan("");
  nearbyint(d);
  nextafter(d, d);
  nexttoward(d, 20.0L);
  pow(d, d);
  remainder(d, d);
  remquo(d, d, ex);
  rint(d);
  round(d);
  scalbln(d, 100L);
  scalbn(d, 100);
  sin(d);
  sinh(d);
  sincos(d, dp, dp);
  sqrt(d);
  tan(d);
  tanh(d);
  tgamma(d);
  trunc(d);
}


x86 assembly (clang, -O0):
<math>:
push   %rbp
mov    %rsp,%rbp
sub    $0x30,%rsp
movsd  %xmm0,-0x8(%rbp)
mov    %rdi,-0x10(%rbp)
mov    %rsi,-0x18(%rbp)
movsd  -0x8(%rbp),%xmm0
call   2160 <acos@plt>
movsd  -0x8(%rbp),%xmm0
call   2150 <acosh@plt>
movsd  -0x8(%rbp),%xmm0
call   2210 <asin@plt>
movsd  -0x8(%rbp),%xmm0
call   2380 <asinh@plt>
movsd  -0x8(%rbp),%xmm0
call   21f0 <atan@plt>
movsd  -0x8(%rbp),%xmm0
call   2100 <atanh@plt>
movsd  -0x8(%rbp),%xmm0
movsd  -0x8(%rbp),%xmm1
call   20e0 <atan2@plt>
movsd  -0x8(%rbp),%xmm0
call   22b0 <cbrt@plt>
movsd  -0x8(%rbp),%xmm0
call   20d0 <ceil@plt>
movsd  -0x8(%rbp),%xmm0
movsd  -0x8(%rbp),%xmm1
call   22a0 <copysign@plt>
movsd  -0x8(%rbp),%xmm0
call   22f0 <cos@plt>
movsd  -0x8(%rbp),%xmm0
call   2110 <cosh@plt>
movsd  -0x8(%rbp),%xmm0
call   2390 <erf@plt>
movsd  -0x8(%rbp),%xmm0
call   23a0 <erfc@plt>
movsd  -0x8(%rbp),%xmm0
call   2260 <exp@plt>
movsd  -0x8(%rbp),%xmm0
call   2130 <exp2@plt>
movsd  -0x8(%rbp),%xmm0
call   2350 <expm1@plt>
movsd  -0x8(%rbp),%xmm0
call   21b0 <fabs@plt>
movsd  -0x8(%rbp),%xmm0
movsd  -0x8(%rbp),%xmm1
call   2250 <fdim@plt>
movsd  -0x8(%rbp),%xmm0
call   23c0 <floor@plt>
movsd  -0x8(%rbp),%xmm0
movsd  -0x8(%rbp),%xmm1
movsd  -0x8(%rbp),%xmm2
call   2300 <fma@plt>
movsd  -0x8(%rbp),%xmm0
movsd  -0x8(%rbp),%xmm1
call   2310 <fmax@plt>
movsd  -0x8(%rbp),%xmm0
movsd  -0x8(%rbp),%xmm1
call   2200 <fmin@plt>
movsd  -0x8(%rbp),%xmm0
movsd  -0x8(%rbp),%xmm1
call   2120 <fmod@plt>
movsd  -0x8(%rbp),%xmm0
mov    -0x10(%rbp),%rdi
call   2190 <frexp@plt>
movsd  -0x8(%rbp),%xmm0
movsd  -0x8(%rbp),%xmm1
call   2240 <hypot@plt>
movsd  -0x8(%rbp),%xmm0
call   21a0 <ilogb@plt>
movsd  -0x8(%rbp),%xmm0
mov    -0x10(%rbp),%rax
mov    (%rax),%edi
call   2050 <ldexp@plt>
movsd  -0x8(%rbp),%xmm0
call   2270 <lgamma@plt>
movsd  -0x8(%rbp),%xmm0
call   2070 <llrint@plt>
movsd  -0x8(%rbp),%xmm0
call   2170 <llround@plt>
movsd  -0x8(%rbp),%xmm0
call   2320 <log@plt>
movsd  -0x8(%rbp),%xmm0
call   2360 <log10@plt>
movsd  -0x8(%rbp),%xmm0
call   23b0 <log1p@plt>
movsd  -0x8(%rbp),%xmm0
call   2090 <log2@plt>
movsd  -0x8(%rbp),%xmm0
call   20c0 <logb@plt>
movsd  -0x8(%rbp),%xmm0
call   21e0 <lrint@plt>
movsd  -0x8(%rbp),%xmm0
call   20a0 <lround@plt>
movsd  -0x8(%rbp),%xmm0
mov    -0x18(%rbp),%rdi
call   2140 <modf@plt>
lea    0x987(%rip),%rdi
call   2060 <nan@plt>
movsd  -0x8(%rbp),%xmm0
call   22d0 <nearbyint@plt>
movsd  -0x8(%rbp),%xmm0
movsd  -0x8(%rbp),%xmm1
call   22c0 <nextafter@plt>
movsd  -0x8(%rbp),%xmm0
mov    %rsp,%rax
flds   0x957(%rip)
fstpt  (%rax)
call   2040 <nexttoward@plt>
movsd  -0x8(%rbp),%xmm0
movsd  -0x8(%rbp),%xmm1
call   2330 <pow@plt>
movsd  -0x8(%rbp),%xmm0
movsd  -0x8(%rbp),%xmm1
call   2220 <remainder@plt>
movsd  -0x8(%rbp),%xmm0
movsd  -0x8(%rbp),%xmm1
mov    -0x10(%rbp),%rdi
call   22e0 <remquo@plt>
movsd  -0x8(%rbp),%xmm0
call   21d0 <rint@plt>
movsd  -0x8(%rbp),%xmm0
call   2340 <round@plt>
movsd  -0x8(%rbp),%xmm0
mov    $0x64,%edi
call   2180 <scalbln@plt>
movsd  -0x8(%rbp),%xmm0
mov    $0x64,%edi
call   2230 <scalbn@plt>
movsd  -0x8(%rbp),%xmm0
call   21c0 <sin@plt>
movsd  -0x8(%rbp),%xmm0
call   2080 <sinh@plt>
movsd  -0x8(%rbp),%xmm0
mov    -0x18(%rbp),%rdi
mov    -0x18(%rbp),%rsi
call   20b0 <sincos@plt>
movsd  -0x8(%rbp),%xmm0
call   2370 <sqrt@plt>
movsd  -0x8(%rbp),%xmm0
call   2290 <tan@plt>
movsd  -0x8(%rbp),%xmm0
call   20f0 <tanh@plt>
movsd  -0x8(%rbp),%xmm0
call   2030 <tgamma@plt>
movsd  -0x8(%rbp),%xmm0
call   2280 <trunc@plt>
add    $0x30,%rsp
pop    %rbp
ret

x86 assembly (clang, -O2):
<math>:
push   %r14
push   %rbx
sub    $0x18,%rsp
mov    %rsi,%r14
mov    %rdi,%rbx
movsd  %xmm0,0x10(%rsp)
call   2160 <acos@plt>
movsd  0x10(%rsp),%xmm0
call   2150 <acosh@plt>
movsd  0x10(%rsp),%xmm0
call   2210 <asin@plt>
movsd  0x10(%rsp),%xmm0
call   2380 <asinh@plt>
movsd  0x10(%rsp),%xmm0
call   21f0 <atan@plt>
movsd  0x10(%rsp),%xmm0
call   2100 <atanh@plt>
movsd  0x10(%rsp),%xmm0
movaps %xmm0,%xmm1
call   20e0 <atan2@plt>
movsd  0x10(%rsp),%xmm0
call   22b0 <cbrt@plt>
movsd  0x10(%rsp),%xmm0
call   20d0 <ceil@plt>
movsd  0x10(%rsp),%xmm0
movaps %xmm0,%xmm1
call   22a0 <copysign@plt>
movsd  0x10(%rsp),%xmm0
call   22f0 <cos@plt>
movsd  0x10(%rsp),%xmm0
call   2110 <cosh@plt>
movsd  0x10(%rsp),%xmm0
call   2390 <erf@plt>
movsd  0x10(%rsp),%xmm0
call   23a0 <erfc@plt>
movsd  0x10(%rsp),%xmm0
call   2260 <exp@plt>
movsd  0x10(%rsp),%xmm0
call   2130 <exp2@plt>
movsd  0x10(%rsp),%xmm0
call   2350 <expm1@plt>
movsd  0x10(%rsp),%xmm0
call   21b0 <fabs@plt>
movsd  0x10(%rsp),%xmm0
movaps %xmm0,%xmm1
call   2250 <fdim@plt>
movsd  0x10(%rsp),%xmm0
call   23c0 <floor@plt>
movsd  0x10(%rsp),%xmm0
movaps %xmm0,%xmm1
movaps %xmm0,%xmm2
call   2300 <fma@plt>
movsd  0x10(%rsp),%xmm0
movaps %xmm0,%xmm1
call   2310 <fmax@plt>
movsd  0x10(%rsp),%xmm0
movaps %xmm0,%xmm1
call   2200 <fmin@plt>
movsd  0x10(%rsp),%xmm0
movaps %xmm0,%xmm1
call   2120 <fmod@plt>
movsd  0x10(%rsp),%xmm0
mov    %rbx,%rdi
call   2190 <frexp@plt>
movsd  0x10(%rsp),%xmm0
movaps %xmm0,%xmm1
call   2240 <hypot@plt>
movsd  0x10(%rsp),%xmm0
call   21a0 <ilogb@plt>
mov    (%rbx),%edi
movsd  0x10(%rsp),%xmm0
call   2050 <ldexp@plt>
movsd  0x10(%rsp),%xmm0
call   2270 <lgamma@plt>
movsd  0x10(%rsp),%xmm0
call   2070 <llrint@plt>
movsd  0x10(%rsp),%xmm0
call   2170 <llround@plt>
movsd  0x10(%rsp),%xmm0
call   2320 <log@plt>
movsd  0x10(%rsp),%xmm0
call   2360 <log10@plt>
movsd  0x10(%rsp),%xmm0
call   23b0 <log1p@plt>
movsd  0x10(%rsp),%xmm0
call   2090 <log2@plt>
movsd  0x10(%rsp),%xmm0
call   20c0 <logb@plt>
movsd  0x10(%rsp),%xmm0
call   21e0 <lrint@plt>
movsd  0x10(%rsp),%xmm0
call   20a0 <lround@plt>
movsd  0x10(%rsp),%xmm0
mov    %r14,%rdi
call   2140 <modf@plt>
lea    0x980(%rip),%rdi
call   2060 <nan@plt>
movsd  0x10(%rsp),%xmm0
call   22d0 <nearbyint@plt>
movsd  0x10(%rsp),%xmm0
movaps %xmm0,%xmm1
call   22c0 <nextafter@plt>
flds   0x958(%rip)
fstpt  (%rsp)
movsd  0x10(%rsp),%xmm0
call   2040 <nexttoward@plt>
movsd  0x10(%rsp),%xmm0
movaps %xmm0,%xmm1
call   2330 <pow@plt>
movsd  0x10(%rsp),%xmm0
movaps %xmm0,%xmm1
call   2220 <remainder@plt>
movsd  0x10(%rsp),%xmm0
movaps %xmm0,%xmm1
mov    %rbx,%rdi
call   22e0 <remquo@plt>
movsd  0x10(%rsp),%xmm0
call   21d0 <rint@plt>
movsd  0x10(%rsp),%xmm0
call   2340 <round@plt>
mov    $0x64,%edi
movsd  0x10(%rsp),%xmm0
call   2180 <scalbln@plt>
movsd  0x10(%rsp),%xmm0
mov    $0x64,%edi
call   2230 <scalbn@plt>
movsd  0x10(%rsp),%xmm0
call   21c0 <sin@plt>
movsd  0x10(%rsp),%xmm0
call   2080 <sinh@plt>
movsd  0x10(%rsp),%xmm0
mov    %r14,%rdi
mov    %r14,%rsi
call   20b0 <sincos@plt>
movsd  0x10(%rsp),%xmm0
call   2370 <sqrt@plt>
movsd  0x10(%rsp),%xmm0
call   2290 <tan@plt>
movsd  0x10(%rsp),%xmm0
call   20f0 <tanh@plt>
movsd  0x10(%rsp),%xmm0
call   2030 <tgamma@plt>
movsd  0x10(%rsp),%xmm0
add    $0x18,%rsp
pop    %rbx
pop    %r14
jmp    2280 <trunc@plt>

LLVM IR (-O0):
@.str = [1 x i8] zeroinitializer
define void @math(double %0, i32* %1, double* %2) {
%4 = alloca double
%5 = alloca i32*
%6 = alloca double*
store double %0, double* %4
store i32* %1, i32** %5
store double* %2, double** %6
%7 = load double, double* %4
%8 = call i32 @acos(double %7)
%9 = load double, double* %4
%10 = call i32 @acosh(double %9)
%11 = load double, double* %4
%12 = call i32 @asin(double %11)
%13 = load double, double* %4
%14 = call i32 @asinh(double %13)
%15 = load double, double* %4
%16 = call i32 @atan(double %15)
%17 = load double, double* %4
%18 = call i32 @atanh(double %17)
%19 = load double, double* %4
%20 = load double, double* %4
%21 = call i32 @atan2(double %19, double %20)
%22 = load double, double* %4
%23 = call i32 @cbrt(double %22)
%24 = load double, double* %4
%25 = call i32 @ceil(double %24)
%26 = load double, double* %4
%27 = load double, double* %4
%28 = call i32 @copysign(double %26, double %27)
%29 = load double, double* %4
%30 = call i32 @cos(double %29)
%31 = load double, double* %4
%32 = call i32 @cosh(double %31)
%33 = load double, double* %4
%34 = call i32 @erf(double %33)
%35 = load double, double* %4
%36 = call i32 @erfc(double %35)
%37 = load double, double* %4
%38 = call i32 @exp(double %37)
%39 = load double, double* %4
%40 = call i32 @exp2(double %39)
%41 = load double, double* %4
%42 = call i32 @expm1(double %41)
%43 = load double, double* %4
%44 = call i32 @fabs(double %43)
%45 = load double, double* %4
%46 = load double, double* %4
%47 = call i32 @fdim(double %45, double %46)
%48 = load double, double* %4
%49 = call i32 @floor(double %48)
%50 = load double, double* %4
%51 = load double, double* %4
%52 = load double, double* %4
%53 = call i32 @fma(double %50, double %51, double %52)
%54 = load double, double* %4
%55 = load double, double* %4
%56 = call i32 @fmax(double %54, double %55)
%57 = load double, double* %4
%58 = load double, double* %4
%59 = call i32 @fmin(double %57, double %58)
%60 = load double, double* %4
%61 = load double, double* %4
%62 = call i32 @fmod(double %60, double %61)
%63 = load double, double* %4
%64 = load i32*, i32** %5
%65 = call i32 @frexp(double %63, i32* %64)
%66 = load double, double* %4
%67 = load double, double* %4
%68 = call i32 @hypot(double %66, double %67)
%69 = load double, double* %4
%70 = call i32 @ilogb(double %69)
%71 = load double, double* %4
%72 = load i32*, i32** %5
%73 = load i32, i32* %72
%74 = call i32 @ldexp(double %71, i32 %73)
%75 = load double, double* %4
%76 = call i32 @lgamma(double %75)
%77 = load double, double* %4
%78 = call i32 @llrint(double %77)
%79 = load double, double* %4
%80 = call i32 @llround(double %79)
%81 = load double, double* %4
%82 = call i32 @log(double %81)
%83 = load double, double* %4
%84 = call i32 @log10(double %83)
%85 = load double, double* %4
%86 = call i32 @log1p(double %85)
%87 = load double, double* %4
%88 = call i32 @log2(double %87)
%89 = load double, double* %4
%90 = call i32 @logb(double %89)
%91 = load double, double* %4
%92 = call i32 @lrint(double %91)
%93 = load double, double* %4
%94 = call i32 @lround(double %93)
%95 = load double, double* %4
%96 = load double*, double** %6
%97 = call i32 @modf(double %95, double* %96)
%98 = call i32 @nan(i8* getelementptr inbounds ([1 x i8], [1 x i8]* @.str, i64 0, i64 0))
%99 = load double, double* %4
%100 = call i32 @nearbyint(double %99)
%101 = load double, double* %4
%102 = load double, double* %4
%103 = call i32 @nextafter(double %101, double %102)
%104 = load double, double* %4
%105 = call i32 @nexttoward(double %104, x86_fp80 0xK4003A000000000000000)
%106 = load double, double* %4
%107 = load double, double* %4
%108 = call i32 @pow(double %106, double %107)
%109 = load double, double* %4
%110 = load double, double* %4
%111 = call i32 @remainder(double %109, double %110)
%112 = load double, double* %4
%113 = load double, double* %4
%114 = load i32*, i32** %5
%115 = call i32 @remquo(double %112, double %113, i32* %114)
%116 = load double, double* %4
%117 = call i32 @rint(double %116)
%118 = load double, double* %4
%119 = call i32 @round(double %118)
%120 = load double, double* %4
%121 = call i32 @scalbln(double %120, i64 100)
%122 = load double, double* %4
%123 = call i32 @scalbn(double %122, i32 100)
%124 = load double, double* %4
%125 = call i32 @sin(double %124)
%126 = load double, double* %4
%127 = call i32 @sinh(double %126)
%128 = load double, double* %4
%129 = load double*, double** %6
%130 = load double*, double** %6
%131 = call i32 @sincos(double %128, double* %129, double* %130)
%132 = load double, double* %4
%133 = call i32 @sqrt(double %132)
%134 = load double, double* %4
%135 = call i32 @tan(double %134)
%136 = load double, double* %4
%137 = call i32 @tanh(double %136)
%138 = load double, double* %4
%139 = call i32 @tgamma(double %138)
%140 = load double, double* %4
%141 = call i32 @trunc(double %140)
ret void
}

LLVM IR (-O2):
@.str = [1 x i8] zeroinitializer
define void @math(double %0, i32* %1, double* %2) {
%4 = tail call i32 @acos(double %0)
%5 = tail call i32 @acosh(double %0)
%6 = tail call i32 @asin(double %0)
%7 = tail call i32 @asinh(double %0)
%8 = tail call i32 @atan(double %0)
%9 = tail call i32 @atanh(double %0)
%10 = tail call i32 @atan2(double %0, double %0)
%11 = tail call i32 @cbrt(double %0)
%12 = tail call i32 @ceil(double %0)
%13 = tail call i32 @copysign(double %0, double %0)
%14 = tail call i32 @cos(double %0)
%15 = tail call i32 @cosh(double %0)
%16 = tail call i32 @erf(double %0)
%17 = tail call i32 @erfc(double %0)
%18 = tail call i32 @exp(double %0)
%19 = tail call i32 @exp2(double %0)
%20 = tail call i32 @expm1(double %0)
%21 = tail call i32 @fabs(double %0)
%22 = tail call i32 @fdim(double %0, double %0)
%23 = tail call i32 @floor(double %0)
%24 = tail call i32 @fma(double %0, double %0, double %0)
%25 = tail call i32 @fmax(double %0, double %0)
%26 = tail call i32 @fmin(double %0, double %0)
%27 = tail call i32 @fmod(double %0, double %0)
%28 = tail call i32 @frexp(double %0, i32* %1)
%29 = tail call i32 @hypot(double %0, double %0)
%30 = tail call i32 @ilogb(double %0)
%31 = load i32, i32* %1
%32 = tail call i32 @ldexp(double %0, i32 %31)
%33 = tail call i32 @lgamma(double %0)
%34 = tail call i32 @llrint(double %0)
%35 = tail call i32 @llround(double %0)
%36 = tail call i32 @log(double %0)
%37 = tail call i32 @log10(double %0)
%38 = tail call i32 @log1p(double %0)
%39 = tail call i32 @log2(double %0)
%40 = tail call i32 @logb(double %0)
%41 = tail call i32 @lrint(double %0)
%42 = tail call i32 @lround(double %0)
%43 = tail call i32 @modf(double %0, double* %2)
%44 = tail call i32 @nan(i8* getelementptr inbounds ([1 x i8], [1 x i8]* @.str, i64 0, i64 0))
%45 = tail call i32 @nearbyint(double %0)
%46 = tail call i32 @nextafter(double %0, double %0)
%47 = tail call i32 @nexttoward(double %0, x86_fp80 0xK4003A000000000000000)
%48 = tail call i32 @pow(double %0, double %0)
%49 = tail call i32 @remainder(double %0, double %0)
%50 = tail call i32 @remquo(double %0, double %0, i32* %1)
%51 = tail call i32 @rint(double %0)
%52 = tail call i32 @round(double %0)
%53 = tail call i32 @scalbln(double %0, i64 100)
%54 = tail call i32 @scalbn(double %0, i32 100)
%55 = tail call i32 @sin(double %0)
%56 = tail call i32 @sinh(double %0)
%57 = tail call i32 @sincos(double %0, double* %2, double* %2)
%58 = tail call i32 @sqrt(double %0)
%59 = tail call i32 @tan(double %0)
%60 = tail call i32 @tanh(double %0)
%61 = tail call i32 @tgamma(double %0)
%62 = tail call i32 @trunc(double %0)
ret void
}