// File: /workspace/github_cpp_makefile_star2_O1/sus304[P]ForRocket/./lib/boost/fusion/algorithm/iteration/detail/for_each.hpp
// Function: void boost::fusion::detail::for_each_unrolled<4>::call<boost::fusion::vector_iterator<boost::numeric::odeint::detail::generic_rk_algorithm<4ul, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations>::stage_vector const, 0>, boost::numeric::odeint::detail::generic_rk_algorithm<4ul, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations>::calculate_stage<forrocket::Dynamics3dofParachute, std::array<double, 14ul>, std::array<double, 14ul>, std::array<double, 14ul>, boost::numeric::odeint::state_wrapper<std::array<double, 14ul>, void>, std::array<double, 14ul>, double>>(boost::fusion::vector_iterator<boost::numeric::odeint::detail::generic_rk_algorithm<4ul, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations>::stage_vector const, 0> const&, boost::numeric::odeint::detail::generic_rk_algorithm<4ul, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations>::calculate_stage<forrocket::Dynamics3dofParachute, std::array<double, 14ul>, std::array<double, 14ul>, std::array<double, 14ul>, boost::numeric::odeint::state_wrapper<std::array<double, 14ul>, void>, std::array<double, 14ul>, double>&)
BOOST_CXX14_CONSTEXPR BOOST_FUSION_GPU_ENABLED
        static void call(I0 const& i0, F& f)
        {
            f(*i0);
            typedef typename result_of::next<I0>::type I1;
            I1 i1(fusion::next(i0));
            f(*i1);
            typedef typename result_of::next<I1>::type I2;
            I2 i2(fusion::next(i1));
            f(*i2);
            typedef typename result_of::next<I2>::type I3;
            I3 i3(fusion::next(i2));
            f(*i3);
            for_each_unrolled<N-4>::call(fusion::next(i3), f);
        }

// Assembly:
pushq %r14
pushq %rbx
pushq %rax
movq %rsi, %rbx
movq (%rdi), %r14
movq 0x10(%rsi), %rax
movq 0x18(%rsi), %rsi
movq 0x28(%rbx), %rcx
movsd 0x40(%rbx), %xmm0
mulsd 0x8(%r14), %xmm0
xorl %edx, %edx
movsd (%rcx,%rdx,8), %xmm1
mulsd %xmm0, %xmm1
addsd (%rax,%rdx,8), %xmm1
movsd %xmm1, (%rsi,%rdx,8)
incq %rdx
cmpq $0xe, %rdx
jne 0x3189b
movq 0x8(%rbx), %rdi
movsd 0x10(%r14), %xmm0
mulsd 0x40(%rbx), %xmm0
movq 0x30(%rbx), %rdx
addsd 0x38(%rbx), %xmm0
movq (%rdi), %rax
callq *(%rax)
movq 0x10(%rbx), %rax
movq 0x18(%rbx), %rsi
movq 0x28(%rbx), %rcx
movq 0x30(%rbx), %rdx
movsd 0x40(%rbx), %xmm0
movsd 0x18(%r14), %xmm1
mulsd %xmm0, %xmm1
mulsd 0x20(%r14), %xmm0
xorl %edi, %edi
movsd (%rcx,%rdi,8), %xmm2
mulsd %xmm1, %xmm2
addsd (%rax,%rdi,8), %xmm2
movsd (%rdx,%rdi,8), %xmm3
mulsd %xmm0, %xmm3
addsd %xmm2, %xmm3
movsd %xmm3, (%rsi,%rdi,8)
incq %rdi
cmpq $0xe, %rdi
jne 0x318fb
movq 0x8(%rbx), %rdi
movsd 0x28(%r14), %xmm0
mulsd 0x40(%rbx), %xmm0
addq $0x70, %rdx
addsd 0x38(%rbx), %xmm0
movq (%rdi), %rax
callq *(%rax)
movq 0x10(%rbx), %rax
movq 0x18(%rbx), %rsi
movq 0x28(%rbx), %rcx
movq 0x30(%rbx), %rdx
movsd 0x40(%rbx), %xmm0
movsd 0x30(%r14), %xmm1
mulsd %xmm0, %xmm1
movsd 0x38(%r14), %xmm2
mulsd %xmm0, %xmm2
mulsd 0x40(%r14), %xmm0
xorl %edi, %edi
movsd (%rcx,%rdi,8), %xmm3
mulsd %xmm1, %xmm3
addsd (%rax,%rdi,8), %xmm3
movsd (%rdx,%rdi,8), %xmm4
mulsd %xmm2, %xmm4
addsd %xmm3, %xmm4
movsd 0x70(%rdx,%rdi,8), %xmm3
mulsd %xmm0, %xmm3
addsd %xmm4, %xmm3
movsd %xmm3, (%rsi,%rdi,8)
incq %rdi
cmpq $0xe, %rdi
jne 0x31972
movq 0x8(%rbx), %rdi
movsd 0x48(%r14), %xmm0
mulsd 0x40(%rbx), %xmm0
addq $0xe0, %rdx
addsd 0x38(%rbx), %xmm0
movq (%rdi), %rax
callq *(%rax)
movq 0x10(%rbx), %rax
movq 0x20(%rbx), %rcx
movq 0x28(%rbx), %rdx
movq 0x30(%rbx), %rsi
movsd 0x40(%rbx), %xmm0
movsd 0x50(%r14), %xmm1
mulsd %xmm0, %xmm1
movsd 0x58(%r14), %xmm2
mulsd %xmm0, %xmm2
movsd 0x60(%r14), %xmm3
mulsd %xmm0, %xmm3
mulsd 0x68(%r14), %xmm0
xorl %edi, %edi
movsd (%rdx,%rdi,8), %xmm4
mulsd %xmm1, %xmm4
addsd (%rax,%rdi,8), %xmm4
movsd (%rsi,%rdi,8), %xmm5
mulsd %xmm2, %xmm5
addsd %xmm4, %xmm5
movsd 0x70(%rsi,%rdi,8), %xmm4
mulsd %xmm3, %xmm4
addsd %xmm5, %xmm4
movsd 0xe0(%rsi,%rdi,8), %xmm5
mulsd %xmm0, %xmm5
addsd %xmm4, %xmm5
movsd %xmm5, (%rcx,%rdi,8)
incq %rdi
cmpq $0xe, %rdi
jne 0x31a04
addq $0x8, %rsp
popq %rbx
popq %r14
retq