// File: /workspace/github_cpp_makefile_star2_O3/ArashPartow[P]exprtk/./exprtk.hpp
// Function: exprtk::rtl::vecops::all_true<double>::operator()(unsigned long const&, exprtk::type_store<double>::parameter_list)
inline T operator() (const std::size_t& ps_index, parameter_list_t parameters) exprtk_override
      {
         if (2 == ps_index)
         {
            for (std::size_t i = 0; i < parameters.size(); ++i)
            {
               if (scalar_t(parameters[i])() == T(0))
               {
                  return T(0);
               }
            }
         }
         else
         {
            const vector_t vec(parameters[0]);

            std::size_t r0 = 0;
            std::size_t r1 = vec.size() - 1;

            if (
                 (1 == ps_index) &&
                 !helper::load_vector_range<T>::process(parameters, r0, r1, 1, 2, 0)
               )
            {
               return std::numeric_limits<T>::quiet_NaN();
            }

            for (std::size_t i = r0; i <= r1; ++i)
            {
               if (vec[i] == T(0))
               {
                  return T(0);
               }
            }
         }

         return T(1);
      }

// Assembly:
pushq %r15
pushq %r14
pushq %r12
pushq %rbx
subq $0x18, %rsp
movq %rdx, %rbx
movq (%rsi), %rcx
cmpq $0x2, %rcx
jne 0x378e68
movq (%rbx), %rax
movq 0x8(%rbx), %rdx
movsd 0x10200(%rip), %xmm0    # 0x389020
subq %rax, %rdx
je 0x378fb7
sarq $0x3, %rdx
movabsq $-0x5555555555555555, %rcx # imm = 0xAAAAAAAAAAAAAAAB
imulq %rdx, %rcx
cmpq $0x1, %rcx
adcq $0x0, %rcx
xorpd %xmm2, %xmm2
movq (%rax), %rdx
movsd (%rdx), %xmm1
ucomisd %xmm2, %xmm1
jne 0x378e5a
jnp 0x378fbb
addq $0x18, %rax
decq %rcx
jne 0x378e47
jmp 0x378fb7
movq (%rbx), %rax
movq (%rax), %r14
cmpq $0x1, %rcx
jne 0x378f8c
movq 0x8(%rbx), %rcx
subq %rax, %rcx
sarq $0x3, %rcx
movabsq $-0x5555555555555555, %rdx # imm = 0xAAAAAAAAAAAAAAAB
imulq %rcx, %rdx
movsd 0x1036f(%rip), %xmm2    # 0x389208
cmpq $0x3, %rdx
jb 0x378fbb
movq 0x18(%rax), %r12
movsd (%r12), %xmm0
xorpd %xmm1, %xmm1
ucomisd %xmm0, %xmm1
ja 0x378fbb
movsd 0x1015d(%rip), %xmm1    # 0x389020
callq 0x11e460
ucomisd 0x10320(%rip), %xmm0    # 0x3891f0
jne 0x378fcb
jp 0x378fcb
movq (%rbx), %rax
movq 0x30(%rax), %r15
movsd (%r15), %xmm0
xorpd %xmm1, %xmm1
ucomisd %xmm0, %xmm1
ja 0x378fcb
movsd (%r12), %xmm1
movaps %xmm1, (%rsp)
movsd 0x10118(%rip), %xmm1    # 0x389020
callq 0x11e460
ucomisd 0x102db(%rip), %xmm0    # 0x3891f0
jne 0x378fcb
jp 0x378fcb
movapd (%rsp), %xmm0
cvttsd2si %xmm0, %rcx
movq %rcx, %rdx
sarq $0x3f, %rdx
subsd 0x10346(%rip), %xmm0    # 0x389280
cvttsd2si %xmm0, %rax
andq %rdx, %rax
orq %rcx, %rax
movsd (%r15), %xmm0
cvttsd2si %xmm0, %rdx
movq %rdx, %rsi
subsd 0x10326(%rip), %xmm0    # 0x389280
cvttsd2si %xmm0, %rcx
sarq $0x3f, %rsi
andq %rsi, %rcx
orq %rdx, %rcx
cmpq %rcx, %rax
movsd 0x10294(%rip), %xmm2    # 0x389208
ja 0x378fbb
movq (%rbx), %rdx
movq 0x8(%rdx), %rdx
decq %rdx
cmpq %rax, %rdx
jb 0x378fbb
cmpq %rcx, %rdx
jae 0x378f95
jmp 0x378fbb
movq 0x8(%rax), %rcx
decq %rcx
xorl %eax, %eax
movsd 0x10083(%rip), %xmm0    # 0x389020
xorpd %xmm2, %xmm2
movsd (%r14,%rax,8), %xmm1
ucomisd %xmm2, %xmm1
jne 0x378faf
jnp 0x378fbb
incq %rax
cmpq %rcx, %rax
jbe 0x378fa1
movapd %xmm0, %xmm2
movapd %xmm2, %xmm0
addq $0x18, %rsp
popq %rbx
popq %r12
popq %r14
popq %r15
retq
movsd 0x10235(%rip), %xmm2    # 0x389208
jmp 0x378fbb
nop