double d2ecdnsdnt_(nu, nd, ssp, tsp)
double *nu, *nd;
const int *ssp, *tsp;
{
  double ret_val;
  static double n;
  extern double decdrho_p__(), decdrho_u__();
  static double dxins, dxint;
  extern double ecorltn_p__(), ecorltn_u__();
  static double dxidnsdnt;
  extern double d2xidnudnd_();
  static double xd;
  extern double dxidnd_(), d2ecdrho2_p__();
  static double xu;
  extern double d2ecdrho2_u__(), dxidnu_(), d2xidnd2_(), d2xidnu2_(),
      xi_vasi__();
  if (*nu <= 0.) {
    *nu = 1e-99;
  }
  if (*nd <= 0.) {
    *nd = 1e-99;
  }
  ret_val = (float)0.;
  n = *nu + *nd;
  if (n == 0.) {
    return ret_val;
  }
  xu = *nu / n;
  xd = *nd / n;
  if (*ssp == 1) {
    dxins = dxidnu_(nu, nd);
    if (*tsp == 1) {
      dxint = dxidnu_(nu, nd);
      dxidnsdnt = d2xidnu2_(nu, nd);
    } else {
      dxint = dxidnd_(nu, nd);
      dxidnsdnt = d2xidnudnd_(nu, nd);
    }
  } else {
    dxins = dxidnd_(nu, nd);
    if (*tsp == 1) {
      dxint = dxidnu_(nu, nd);
      dxidnsdnt = d2xidnudnd_(nu, nd);
    } else {
      dxint = dxidnd_(nu, nd);
      dxidnsdnt = d2xidnd2_(nu, nd);
    }
  }
  ret_val = d2ecdrho2_u__(&n) +
            xi_vasi__(nu, nd) * (d2ecdrho2_p__(&n) - d2ecdrho2_u__(&n)) +
            (dxins + dxint) * (decdrho_p__(&n) - decdrho_u__(&n)) +
            dxidnsdnt * n * (ecorltn_p__(&n) - ecorltn_u__(&n));
  return ret_val;
}


x86 assembly (clang, -O0):
<d2ecdnsdnt_>:
push   %rbp
mov    %rsp,%rbp
sub    $0x80,%rsp
mov    %rdi,-0x10(%rbp)
mov    %rsi,-0x18(%rbp)
mov    %rdx,-0x20(%rbp)
mov    %rcx,-0x28(%rbp)
mov    -0x10(%rbp),%rax
xorps  %xmm0,%xmm0
ucomisd (%rax),%xmm0
jb     11fc <d2ecdnsdnt_+0x3c>
mov    -0x10(%rbp),%rax
movsd  0xe08(%rip),%xmm0
movsd  %xmm0,(%rax)
mov    -0x18(%rbp),%rax
xorps  %xmm0,%xmm0
ucomisd (%rax),%xmm0
jb     121d <d2ecdnsdnt_+0x5d>
mov    -0x18(%rbp),%rax
movsd  0xde7(%rip),%xmm0
movsd  %xmm0,(%rax)
xorps  %xmm0,%xmm0
movsd  %xmm0,-0x30(%rbp)
mov    -0x10(%rbp),%rax
movsd  (%rax),%xmm0
mov    -0x18(%rbp),%rax
addsd  (%rax),%xmm0
movsd  %xmm0,0x2e4b(%rip)
movsd  0x2e43(%rip),%xmm0
xorps  %xmm1,%xmm1
ucomisd %xmm1,%xmm0
jne    1267 <d2ecdnsdnt_+0xa7>
jp     1267 <d2ecdnsdnt_+0xa7>
movsd  -0x30(%rbp),%xmm0
movsd  %xmm0,-0x8(%rbp)
jmp    14df <d2ecdnsdnt_+0x31f>
mov    -0x10(%rbp),%rax
movsd  (%rax),%xmm0
divsd  0x2e11(%rip),%xmm0
movsd  %xmm0,0x2e31(%rip)
mov    -0x18(%rbp),%rax
movsd  (%rax),%xmm0
divsd  0x2df9(%rip),%xmm0
movsd  %xmm0,0x2e11(%rip)
mov    -0x20(%rbp),%rax
cmpl   $0x1,(%rax)
jne    132e <d2ecdnsdnt_+0x16e>
mov    -0x10(%rbp),%rdi
mov    -0x18(%rbp),%rsi
mov    $0x0,%al
call   1050 <dxidnu_@plt>
movsd  %xmm0,0x2dd5(%rip)
mov    -0x28(%rbp),%rax
cmpl   $0x1,(%rax)
jne    12fb <d2ecdnsdnt_+0x13b>
mov    -0x10(%rbp),%rdi
mov    -0x18(%rbp),%rsi
mov    $0x0,%al
call   1050 <dxidnu_@plt>
movsd  %xmm0,0x2db9(%rip)
mov    -0x10(%rbp),%rdi
mov    -0x18(%rbp),%rsi
mov    $0x0,%al
call   10b0 <d2xidnu2_@plt>
movsd  %xmm0,0x2daa(%rip)
jmp    1329 <d2ecdnsdnt_+0x169>
mov    -0x10(%rbp),%rdi
mov    -0x18(%rbp),%rsi
mov    $0x0,%al
call   1090 <dxidnd_@plt>
movsd  %xmm0,0x2d86(%rip)
mov    -0x10(%rbp),%rdi
mov    -0x18(%rbp),%rsi
mov    $0x0,%al
call   10d0 <d2xidnudnd_@plt>
movsd  %xmm0,0x2d77(%rip)
jmp    13b8 <d2ecdnsdnt_+0x1f8>
mov    -0x10(%rbp),%rdi
mov    -0x18(%rbp),%rsi
mov    $0x0,%al
call   1090 <dxidnd_@plt>
movsd  %xmm0,0x2d4b(%rip)
mov    -0x28(%rbp),%rax
cmpl   $0x1,(%rax)
jne    1385 <d2ecdnsdnt_+0x1c5>
mov    -0x10(%rbp),%rdi
mov    -0x18(%rbp),%rsi
mov    $0x0,%al
call   1050 <dxidnu_@plt>
movsd  %xmm0,0x2d2f(%rip)
mov    -0x10(%rbp),%rdi
mov    -0x18(%rbp),%rsi
mov    $0x0,%al
call   10d0 <d2xidnudnd_@plt>
movsd  %xmm0,0x2d20(%rip)
jmp    13b3 <d2ecdnsdnt_+0x1f3>
mov    -0x10(%rbp),%rdi
mov    -0x18(%rbp),%rsi
mov    $0x0,%al
call   1090 <dxidnd_@plt>
movsd  %xmm0,0x2cfc(%rip)
mov    -0x10(%rbp),%rdi
mov    -0x18(%rbp),%rsi
mov    $0x0,%al
call   1040 <d2xidnd2_@plt>
movsd  %xmm0,0x2ced(%rip)
jmp    13b8 <d2ecdnsdnt_+0x1f8>
lea    0x2cc9(%rip),%rdi
mov    $0x0,%al
call   10c0 <d2ecdrho2_u__@plt>
movsd  %xmm0,-0x70(%rbp)
mov    -0x10(%rbp),%rdi
mov    -0x18(%rbp),%rsi
mov    $0x0,%al
call   1070 <xi_vasi__@plt>
movsd  %xmm0,-0x68(%rbp)
lea    0x2ca2(%rip),%rdi
mov    $0x0,%al
call   1030 <d2ecdrho2_p__@plt>
movsd  %xmm0,-0x78(%rbp)
lea    0x2c8f(%rip),%rdi
mov    $0x0,%al
call   10c0 <d2ecdrho2_u__@plt>
movsd  -0x78(%rbp),%xmm2
movsd  -0x70(%rbp),%xmm1
movaps %xmm0,%xmm3
movsd  -0x68(%rbp),%xmm0
subsd  %xmm3,%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x58(%rbp)
movsd  0x2c65(%rip),%xmm0
addsd  0x2c65(%rip),%xmm0
movsd  %xmm0,-0x50(%rbp)
lea    0x2c49(%rip),%rdi
mov    $0x0,%al
call   1060 <decdrho_p__@plt>
movsd  %xmm0,-0x60(%rbp)
lea    0x2c36(%rip),%rdi
mov    $0x0,%al
call   1080 <decdrho_u__@plt>
movsd  -0x60(%rbp),%xmm2
movsd  -0x58(%rbp),%xmm1
movaps %xmm0,%xmm3
movsd  -0x50(%rbp),%xmm0
subsd  %xmm3,%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x40(%rbp)
movsd  0x2c1c(%rip),%xmm0
mulsd  0x2bfc(%rip),%xmm0
movsd  %xmm0,-0x38(%rbp)
lea    0x2bf0(%rip),%rdi
mov    $0x0,%al
call   10e0 <ecorltn_p__@plt>
movsd  %xmm0,-0x48(%rbp)
lea    0x2bdd(%rip),%rdi
mov    $0x0,%al
call   10a0 <ecorltn_u__@plt>
movsd  -0x48(%rbp),%xmm2
movsd  -0x40(%rbp),%xmm1
movaps %xmm0,%xmm3
movsd  -0x38(%rbp),%xmm0
subsd  %xmm3,%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x30(%rbp)
movsd  -0x30(%rbp),%xmm0
movsd  %xmm0,-0x8(%rbp)
movsd  -0x8(%rbp),%xmm0
add    $0x80,%rsp
pop    %rbp
ret

x86 assembly (clang, -O2):
<d2ecdnsdnt_>:
push   %r15
push   %r14
push   %rbx
sub    $0x20,%rsp
mov    %rcx,%r15
mov    %rsi,%r14
mov    %rdi,%rbx
movsd  (%rdi),%xmm0
xorpd  %xmm2,%xmm2
ucomisd %xmm0,%xmm2
jb     11f5 <d2ecdnsdnt_+0x35>
movabs $0x2b617f7d4ed8c33e,%rax
7f 61 2b
mov    %rax,(%rbx)
movsd  0xe0b(%rip),%xmm0
movsd  (%r14),%xmm1
ucomisd %xmm1,%xmm2
jb     1219 <d2ecdnsdnt_+0x59>
movabs $0x2b617f7d4ed8c33e,%rax
7f 61 2b
mov    %rax,(%r14)
movsd  (%rbx),%xmm0
movsd  0xde7(%rip),%xmm1
addsd  %xmm0,%xmm1
movsd  %xmm1,0x2e63(%rip)
xorpd  %xmm0,%xmm0
ucomisd %xmm0,%xmm1
jne    123a <d2ecdnsdnt_+0x7a>
jp     123a <d2ecdnsdnt_+0x7a>
xorpd  %xmm0,%xmm0
jmp    13ec <d2ecdnsdnt_+0x22c>
cmpl   $0x1,(%rdx)
jne    127e <d2ecdnsdnt_+0xbe>
mov    %rbx,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   1050 <dxidnu_@plt>
movsd  %xmm0,0x2e3c(%rip)
cmpl   $0x1,(%r15)
jne    12a8 <d2ecdnsdnt_+0xe8>
mov    %rbx,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   1050 <dxidnu_@plt>
movsd  %xmm0,0x2e29(%rip)
mov    %rbx,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10b0 <d2xidnu2_@plt>
jmp    12ee <d2ecdnsdnt_+0x12e>
mov    %rbx,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   1090 <dxidnd_@plt>
movsd  %xmm0,0x2dfd(%rip)
cmpl   $0x1,(%r15)
jne    12cc <d2ecdnsdnt_+0x10c>
mov    %rbx,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   1050 <dxidnu_@plt>
jmp    12b5 <d2ecdnsdnt_+0xf5>
mov    %rbx,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   1090 <dxidnd_@plt>
movsd  %xmm0,0x2ddb(%rip)
mov    %rbx,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   10d0 <d2xidnudnd_@plt>
jmp    12ee <d2ecdnsdnt_+0x12e>
mov    %rbx,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   1090 <dxidnd_@plt>
movsd  %xmm0,0x2db7(%rip)
mov    %rbx,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   1040 <d2xidnd2_@plt>
movsd  %xmm0,0x2daa(%rip)
lea    0x2d8b(%rip),%r15
mov    %r15,%rdi
xor    %eax,%eax
call   10c0 <d2ecdrho2_u__@plt>
movsd  %xmm0,0x10(%rsp)
mov    %rbx,%rdi
mov    %r14,%rsi
xor    %eax,%eax
call   1070 <xi_vasi__@plt>
movsd  %xmm0,0x8(%rsp)
mov    %r15,%rdi
xor    %eax,%eax
call   1030 <d2ecdrho2_p__@plt>
movsd  %xmm0,0x18(%rsp)
mov    %r15,%rdi
xor    %eax,%eax
call   10c0 <d2ecdrho2_u__@plt>
movsd  0x18(%rsp),%xmm1
subsd  %xmm0,%xmm1
mulsd  0x8(%rsp),%xmm1
addsd  0x10(%rsp),%xmm1
movsd  %xmm1,0x18(%rsp)
movsd  0x2d32(%rip),%xmm0
addsd  0x2d32(%rip),%xmm0
movsd  %xmm0,0x8(%rsp)
mov    %r15,%rdi
xor    %eax,%eax
call   1060 <decdrho_p__@plt>
movsd  %xmm0,0x10(%rsp)
mov    %r15,%rdi
xor    %eax,%eax
call   1080 <decdrho_u__@plt>
movsd  0x10(%rsp),%xmm1
subsd  %xmm0,%xmm1
mulsd  0x8(%rsp),%xmm1
addsd  0x18(%rsp),%xmm1
movsd  %xmm1,0x10(%rsp)
movsd  0x2cf6(%rip),%xmm0
mulsd  0x2cd6(%rip),%xmm0
movsd  %xmm0,0x18(%rsp)
mov    %r15,%rdi
xor    %eax,%eax
call   10e0 <ecorltn_p__@plt>
movsd  %xmm0,0x8(%rsp)
mov    %r15,%rdi
xor    %eax,%eax
call   10a0 <ecorltn_u__@plt>
movsd  0x8(%rsp),%xmm1
subsd  %xmm0,%xmm1
mulsd  0x18(%rsp),%xmm1
addsd  0x10(%rsp),%xmm1
movapd %xmm1,%xmm0
add    $0x20,%rsp
pop    %rbx
pop    %r14
pop    %r15
ret

LLVM IR (-O0):
@d2ecdnsdnt_.n = internal global double 0.000000e+00
@d2ecdnsdnt_.dxins = internal global double 0.000000e+00
@d2ecdnsdnt_.dxint = internal global double 0.000000e+00
@d2ecdnsdnt_.dxidnsdnt = internal global double 0.000000e+00
@d2ecdnsdnt_.xd = internal global double 0.000000e+00
@d2ecdnsdnt_.xu = internal global double 0.000000e+00
define double @d2ecdnsdnt_(double* %0, double* %1, i32* %2, i32* %3) {
%5 = alloca double
%6 = alloca double*
%7 = alloca double*
%8 = alloca i32*
%9 = alloca i32*
%10 = alloca double
store double* %0, double** %6
store double* %1, double** %7
store i32* %2, i32** %8
store i32* %3, i32** %9
%11 = load double*, double** %6
%12 = load double, double* %11
%13 = fcmp ole double %12, 0.000000e+00
br i1 %13, label %14, label %16
14: ; preds = %4
%15 = load double*, double** %6
store double 1.000000e-99, double* %15
br label %16
16: ; preds = %14, %4
%17 = load double*, double** %7
%18 = load double, double* %17
%19 = fcmp ole double %18, 0.000000e+00
br i1 %19, label %20, label %22
20: ; preds = %16
%21 = load double*, double** %7
store double 1.000000e-99, double* %21
br label %22
22: ; preds = %20, %16
store double 0.000000e+00, double* %10
%23 = load double*, double** %6
%24 = load double, double* %23
%25 = load double*, double** %7
%26 = load double, double* %25
%27 = fadd double %24, %26
store double %27, double* @d2ecdnsdnt_.n
%28 = load double, double* @d2ecdnsdnt_.n
%29 = fcmp oeq double %28, 0.000000e+00
br i1 %29, label %30, label %32
30: ; preds = %22
%31 = load double, double* %10
store double %31, double* %5
br label %112
32: ; preds = %22
%33 = load double*, double** %6
%34 = load double, double* %33
%35 = load double, double* @d2ecdnsdnt_.n
%36 = fdiv double %34, %35
store double %36, double* @d2ecdnsdnt_.xu
%37 = load double*, double** %7
%38 = load double, double* %37
%39 = load double, double* @d2ecdnsdnt_.n
%40 = fdiv double %38, %39
store double %40, double* @d2ecdnsdnt_.xd
%41 = load i32*, i32** %8
%42 = load i32, i32* %41
%43 = icmp eq i32 %42, 1
br i1 %43, label %44, label %66
44: ; preds = %32
%45 = load double*, double** %6
%46 = load double*, double** %7
%47 = call double (double*, double*, ...) bitcast (double (...)* @dxidnu_ to double (double*, double*, ...)*)(double* %45, double* %46)
store double %47, double* @d2ecdnsdnt_.dxins
%48 = load i32*, i32** %9
%49 = load i32, i32* %48
%50 = icmp eq i32 %49, 1
br i1 %50, label %51, label %58
51: ; preds = %44
%52 = load double*, double** %6
%53 = load double*, double** %7
%54 = call double (double*, double*, ...) bitcast (double (...)* @dxidnu_ to double (double*, double*, ...)*)(double* %52, double* %53)
store double %54, double* @d2ecdnsdnt_.dxint
%55 = load double*, double** %6
%56 = load double*, double** %7
%57 = call double (double*, double*, ...) bitcast (double (...)* @d2xidnu2_ to double (double*, double*, ...)*)(double* %55, double* %56)
store double %57, double* @d2ecdnsdnt_.dxidnsdnt
br label %65
58: ; preds = %44
%59 = load double*, double** %6
%60 = load double*, double** %7
%61 = call double (double*, double*, ...) bitcast (double (...)* @dxidnd_ to double (double*, double*, ...)*)(double* %59, double* %60)
store double %61, double* @d2ecdnsdnt_.dxint
%62 = load double*, double** %6
%63 = load double*, double** %7
%64 = call double (double*, double*, ...) bitcast (double (...)* @d2xidnudnd_ to double (double*, double*, ...)*)(double* %62, double* %63)
store double %64, double* @d2ecdnsdnt_.dxidnsdnt
br label %65
65: ; preds = %58, %51
br label %88
66: ; preds = %32
%67 = load double*, double** %6
%68 = load double*, double** %7
%69 = call double (double*, double*, ...) bitcast (double (...)* @dxidnd_ to double (double*, double*, ...)*)(double* %67, double* %68)
store double %69, double* @d2ecdnsdnt_.dxins
%70 = load i32*, i32** %9
%71 = load i32, i32* %70
%72 = icmp eq i32 %71, 1
br i1 %72, label %73, label %80
73: ; preds = %66
%74 = load double*, double** %6
%75 = load double*, double** %7
%76 = call double (double*, double*, ...) bitcast (double (...)* @dxidnu_ to double (double*, double*, ...)*)(double* %74, double* %75)
store double %76, double* @d2ecdnsdnt_.dxint
%77 = load double*, double** %6
%78 = load double*, double** %7
%79 = call double (double*, double*, ...) bitcast (double (...)* @d2xidnudnd_ to double (double*, double*, ...)*)(double* %77, double* %78)
store double %79, double* @d2ecdnsdnt_.dxidnsdnt
br label %87
80: ; preds = %66
%81 = load double*, double** %6
%82 = load double*, double** %7
%83 = call double (double*, double*, ...) bitcast (double (...)* @dxidnd_ to double (double*, double*, ...)*)(double* %81, double* %82)
store double %83, double* @d2ecdnsdnt_.dxint
%84 = load double*, double** %6
%85 = load double*, double** %7
%86 = call double (double*, double*, ...) bitcast (double (...)* @d2xidnd2_ to double (double*, double*, ...)*)(double* %84, double* %85)
store double %86, double* @d2ecdnsdnt_.dxidnsdnt
br label %87
87: ; preds = %80, %73
br label %88
88: ; preds = %87, %65
%89 = call double (double*, ...) bitcast (double (...)* @d2ecdrho2_u__ to double (double*, ...)*)(double* @d2ecdnsdnt_.n)
%90 = load double*, double** %6
%91 = load double*, double** %7
%92 = call double (double*, double*, ...) bitcast (double (...)* @xi_vasi__ to double (double*, double*, ...)*)(double* %90, double* %91)
%93 = call double (double*, ...) bitcast (double (...)* @d2ecdrho2_p__ to double (double*, ...)*)(double* @d2ecdnsdnt_.n)
%94 = call double (double*, ...) bitcast (double (...)* @d2ecdrho2_u__ to double (double*, ...)*)(double* @d2ecdnsdnt_.n)
%95 = fsub double %93, %94
%96 = call double @llvm.fmuladd.f64(double %92, double %95, double %89)
%97 = load double, double* @d2ecdnsdnt_.dxins
%98 = load double, double* @d2ecdnsdnt_.dxint
%99 = fadd double %97, %98
%100 = call double (double*, ...) bitcast (double (...)* @decdrho_p__ to double (double*, ...)*)(double* @d2ecdnsdnt_.n)
%101 = call double (double*, ...) bitcast (double (...)* @decdrho_u__ to double (double*, ...)*)(double* @d2ecdnsdnt_.n)
%102 = fsub double %100, %101
%103 = call double @llvm.fmuladd.f64(double %99, double %102, double %96)
%104 = load double, double* @d2ecdnsdnt_.dxidnsdnt
%105 = load double, double* @d2ecdnsdnt_.n
%106 = fmul double %104, %105
%107 = call double (double*, ...) bitcast (double (...)* @ecorltn_p__ to double (double*, ...)*)(double* @d2ecdnsdnt_.n)
%108 = call double (double*, ...) bitcast (double (...)* @ecorltn_u__ to double (double*, ...)*)(double* @d2ecdnsdnt_.n)
%109 = fsub double %107, %108
%110 = call double @llvm.fmuladd.f64(double %106, double %109, double %103)
store double %110, double* %10
%111 = load double, double* %10
store double %111, double* %5
br label %112
112: ; preds = %88, %30
%113 = load double, double* %5
ret double %113
}

LLVM IR (-O2):
@d2ecdnsdnt_.n = internal global double 0.000000e+00
@d2ecdnsdnt_.dxins = internal unnamed_addr global double 0.000000e+00
@d2ecdnsdnt_.dxint = internal unnamed_addr global double 0.000000e+00
@d2ecdnsdnt_.dxidnsdnt = internal unnamed_addr global double 0.000000e+00
define double @d2ecdnsdnt_(double* %0, double* %1, i32* nocapture %2, i32* nocapture %3) {
%5 = load double, double* %0
%6 = fcmp ugt double %5, 0.000000e+00
br i1 %6, label %8, label %7
7: ; preds = %4
store double 1.000000e-99, double* %0
br label %8
8: ; preds = %7, %4
%9 = phi double [ 1.000000e-99, %7 ], [ %5, %4 ]
%10 = load double, double* %1
%11 = fcmp ugt double %10, 0.000000e+00
br i1 %11, label %14, label %12
12: ; preds = %8
store double 1.000000e-99, double* %1
%13 = load double, double* %0
br label %14
14: ; preds = %12, %8
%15 = phi double [ 1.000000e-99, %12 ], [ %10, %8 ]
%16 = phi double [ %13, %12 ], [ %9, %8 ]
%17 = fadd double %16, %15
store double %17, double* @d2ecdnsdnt_.n
%18 = fcmp oeq double %17, 0.000000e+00
br i1 %18, label %64, label %19
19: ; preds = %14
%20 = load i32, i32* %2
%21 = icmp eq i32 %20, 1
br i1 %21, label %22, label %32
22: ; preds = %19
%23 = tail call double (double*, double*, ...) bitcast (double (...)* @dxidnu_ to double (double*, double*, ...)*)(double* %0, double* %1)
store double %23, double* @d2ecdnsdnt_.dxins
%24 = load i32, i32* %3
%25 = icmp eq i32 %24, 1
br i1 %25, label %26, label %29
26: ; preds = %22
%27 = tail call double (double*, double*, ...) bitcast (double (...)* @dxidnu_ to double (double*, double*, ...)*)(double* %0, double* %1)
store double %27, double* @d2ecdnsdnt_.dxint
%28 = tail call double (double*, double*, ...) bitcast (double (...)* @d2xidnu2_ to double (double*, double*, ...)*)(double* %0, double* %1)
br label %42
29: ; preds = %22
%30 = tail call double (double*, double*, ...) bitcast (double (...)* @dxidnd_ to double (double*, double*, ...)*)(double* %0, double* %1)
store double %30, double* @d2ecdnsdnt_.dxint
%31 = tail call double (double*, double*, ...) bitcast (double (...)* @d2xidnudnd_ to double (double*, double*, ...)*)(double* %0, double* %1)
br label %42
32: ; preds = %19
%33 = tail call double (double*, double*, ...) bitcast (double (...)* @dxidnd_ to double (double*, double*, ...)*)(double* %0, double* %1)
store double %33, double* @d2ecdnsdnt_.dxins
%34 = load i32, i32* %3
%35 = icmp eq i32 %34, 1
br i1 %35, label %36, label %39
36: ; preds = %32
%37 = tail call double (double*, double*, ...) bitcast (double (...)* @dxidnu_ to double (double*, double*, ...)*)(double* %0, double* %1)
store double %37, double* @d2ecdnsdnt_.dxint
%38 = tail call double (double*, double*, ...) bitcast (double (...)* @d2xidnudnd_ to double (double*, double*, ...)*)(double* %0, double* %1)
br label %42
39: ; preds = %32
%40 = tail call double (double*, double*, ...) bitcast (double (...)* @dxidnd_ to double (double*, double*, ...)*)(double* %0, double* %1)
store double %40, double* @d2ecdnsdnt_.dxint
%41 = tail call double (double*, double*, ...) bitcast (double (...)* @d2xidnd2_ to double (double*, double*, ...)*)(double* %0, double* %1)
br label %42
42: ; preds = %36, %39, %26, %29
%43 = phi double [ %38, %36 ], [ %41, %39 ], [ %28, %26 ], [ %31, %29 ]
store double %43, double* @d2ecdnsdnt_.dxidnsdnt
%44 = tail call double (double*, ...) bitcast (double (...)* @d2ecdrho2_u__ to double (double*, ...)*)(double* @d2ecdnsdnt_.n)
%45 = tail call double (double*, double*, ...) bitcast (double (...)* @xi_vasi__ to double (double*, double*, ...)*)(double* %0, double* %1)
%46 = tail call double (double*, ...) bitcast (double (...)* @d2ecdrho2_p__ to double (double*, ...)*)(double* @d2ecdnsdnt_.n)
%47 = tail call double (double*, ...) bitcast (double (...)* @d2ecdrho2_u__ to double (double*, ...)*)(double* @d2ecdnsdnt_.n)
%48 = fsub double %46, %47
%49 = tail call double @llvm.fmuladd.f64(double %45, double %48, double %44)
%50 = load double, double* @d2ecdnsdnt_.dxins
%51 = load double, double* @d2ecdnsdnt_.dxint
%52 = fadd double %50, %51
%53 = tail call double (double*, ...) bitcast (double (...)* @decdrho_p__ to double (double*, ...)*)(double* @d2ecdnsdnt_.n)
%54 = tail call double (double*, ...) bitcast (double (...)* @decdrho_u__ to double (double*, ...)*)(double* @d2ecdnsdnt_.n)
%55 = fsub double %53, %54
%56 = tail call double @llvm.fmuladd.f64(double %52, double %55, double %49)
%57 = load double, double* @d2ecdnsdnt_.dxidnsdnt
%58 = load double, double* @d2ecdnsdnt_.n
%59 = fmul double %57, %58
%60 = tail call double (double*, ...) bitcast (double (...)* @ecorltn_p__ to double (double*, ...)*)(double* @d2ecdnsdnt_.n)
%61 = tail call double (double*, ...) bitcast (double (...)* @ecorltn_u__ to double (double*, ...)*)(double* @d2ecdnsdnt_.n)
%62 = fsub double %60, %61
%63 = tail call double @llvm.fmuladd.f64(double %59, double %62, double %56)
br label %64
64: ; preds = %14, %42
%65 = phi double [ %63, %42 ], [ 0.000000e+00, %14 ]
ret double %65
}