// File: /workspace/github_cpp_makefile_star2_O3/mouda[P]LTE_random_access-simulate/specialfunctions.cpp
// Function: alglib_impl::bessel_besselasympt0(double, double*, double*, alglib_impl::ae_state*)
static void bessel_besselasympt0(double x,
     double* pzero,
     double* qzero,
     ae_state *_state)
{
    double xsq;
    double p2;
    double q2;
    double p3;
    double q3;

    *pzero = 0;
    *qzero = 0;

    xsq = 64.0/(x*x);
    p2 = 0.0;
    p2 = 2485.271928957404011288128951+xsq*p2;
    p2 = 153982.6532623911470917825993+xsq*p2;
    p2 = 2016135.283049983642487182349+xsq*p2;
    p2 = 8413041.456550439208464315611+xsq*p2;
    p2 = 12332384.76817638145232406055+xsq*p2;
    p2 = 5393485.083869438325262122897+xsq*p2;
    q2 = 1.0;
    q2 = 2615.700736920839685159081813+xsq*q2;
    q2 = 156001.7276940030940592769933+xsq*q2;
    q2 = 2025066.801570134013891035236+xsq*q2;
    q2 = 8426449.050629797331554404810+xsq*q2;
    q2 = 12338310.22786324960844856182+xsq*q2;
    q2 = 5393485.083869438325560444960+xsq*q2;
    p3 = -0.0;
    p3 = -4.887199395841261531199129300+xsq*p3;
    p3 = -226.2630641933704113967255053+xsq*p3;
    p3 = -2365.956170779108192723612816+xsq*p3;
    p3 = -8239.066313485606568803548860+xsq*p3;
    p3 = -10381.41698748464093880530341+xsq*p3;
    p3 = -3984.617357595222463506790588+xsq*p3;
    q3 = 1.0;
    q3 = 408.7714673983499223402830260+xsq*q3;
    q3 = 15704.89191515395519392882766+xsq*q3;
    q3 = 156021.3206679291652539287109+xsq*q3;
    q3 = 533291.3634216897168722255057+xsq*q3;
    q3 = 666745.4239319826986004038103+xsq*q3;
    q3 = 255015.5108860942382983170882+xsq*q3;
    *pzero = p2/q2;
    *qzero = 8*p3/q3/x;
}

// Assembly:
movapd %xmm0, %xmm1
mulsd %xmm0, %xmm1
movsd 0x2184d(%rip), %xmm2    # 0x345f8
divsd %xmm1, %xmm2
xorpd %xmm1, %xmm1
mulsd %xmm2, %xmm1
addsd 0x21d81(%rip), %xmm1    # 0x34b40
movsd 0x21d81(%rip), %xmm4    # 0x34b48
movsd 0x21d81(%rip), %xmm3    # 0x34b50
mulsd %xmm2, %xmm3
addsd 0x21d7d(%rip), %xmm3    # 0x34b58
addsd %xmm2, %xmm4
mulsd %xmm2, %xmm3
addsd 0x21d75(%rip), %xmm3    # 0x34b60
unpcklpd %xmm4, %xmm1            # xmm1 = xmm1[0],xmm4[0]
mulsd %xmm2, %xmm3
addsd 0x21d6d(%rip), %xmm3    # 0x34b68
mulsd %xmm2, %xmm3
addsd 0x21d69(%rip), %xmm3    # 0x34b70
mulsd %xmm2, %xmm3
addsd 0x21d65(%rip), %xmm3    # 0x34b78
mulsd %xmm2, %xmm3
movsd 0x21d69(%rip), %xmm4    # 0x34b88
addsd %xmm2, %xmm4
mulsd %xmm2, %xmm4
addsd 0x21d61(%rip), %xmm4    # 0x34b90
mulsd %xmm2, %xmm4
movapd %xmm2, %xmm5
unpcklpd %xmm2, %xmm5            # xmm5 = xmm5[0],xmm2[0]
mulpd %xmm5, %xmm1
addpd 0x227e9(%rip), %xmm1    # 0x35630
addsd 0x21d49(%rip), %xmm4    # 0x34b98
mulsd %xmm2, %xmm4
mulpd %xmm5, %xmm1
addpd 0x227e1(%rip), %xmm1    # 0x35640
mulpd %xmm5, %xmm1
addpd 0x227e5(%rip), %xmm1    # 0x35650
mulpd %xmm5, %xmm1
addpd 0x227e9(%rip), %xmm1    # 0x35660
addsd 0x21d21(%rip), %xmm4    # 0x34ba0
mulsd %xmm2, %xmm4
mulpd %xmm5, %xmm1
addpd 0x227e1(%rip), %xmm1    # 0x35670
addsd 0x21ce9(%rip), %xmm3    # 0x34b80
addsd 0x21d09(%rip), %xmm4    # 0x34ba8
mulsd %xmm2, %xmm4
addsd 0x21d05(%rip), %xmm4    # 0x34bb0
movapd %xmm1, %xmm2
unpckhpd %xmm1, %xmm2            # xmm2 = xmm2[1],xmm1[1]
divsd %xmm2, %xmm1
mulsd 0x207b9(%rip), %xmm3    # 0x33678
movsd %xmm1, (%rdi)
divsd %xmm4, %xmm3
divsd %xmm0, %xmm3
movsd %xmm3, (%rsi)
retq