// File: /workspace/github_cpp_makefile_star2_O2/ArashPartow[P]exprtk/./exprtk.hpp
// Function: exprtk::details::expression_node<double>* exprtk::parser<double>::expression_generator<double>::synthesize_sos_expression_impl<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const>(exprtk::details::operator_type const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const)
inline expression_node_ptr synthesize_sos_expression_impl(const details::operator_type& opr, T0 s0, T1 s1)
         {
            switch (opr)
            {
               #define case_stmt(op0, op1)                                                                 \
               case op0 : return node_allocator_->                                                         \
                             allocate_tt<typename details::sos_node<Type,T0,T1,op1<Type> >,T0,T1>(s0, s1); \

               string_opr_switch_statements
               #undef case_stmt
               default : return error_node();
            }
         }

// Assembly:
pushq %r15
pushq %r14
pushq %r12
pushq %rbx
subq $0x248, %rsp            # imm = 0x248
movq %rcx, %r15
movl (%rsi), %eax
xorl %r12d, %r12d
leal -0xe(%rax), %ecx
cmpl $0x7, %ecx
ja 0x2584d1
leaq 0x79de5(%rip), %rax     # 0x2d2268
movslq (%rax,%rcx,4), %rcx
addq %rax, %rcx
jmpq *%rcx
movq 0x8(%rdi), %r12
leaq 0x108(%rsp), %rbx
movq %rbx, %rdi
movq %rdx, %rsi
callq 0x1182f0
leaq 0x228(%rsp), %r14
movq %r14, %rdi
movq %r15, %rsi
callq 0x1182f0
leaq 0x108(%rsp), %rbx
movq %r12, %rdi
movq %rbx, %rsi
movq %r14, %rdx
callq 0x258968
jmp 0x2586f1
cmpl $0x57, %eax
je 0x2586b7
cmpl $0x58, %eax
je 0x25867b
cmpl $0x59, %eax
jne 0x258704
movq 0x8(%rdi), %r12
leaq 0x8(%rsp), %rbx
movq %rbx, %rdi
movq %rdx, %rsi
callq 0x1182f0
leaq 0x128(%rsp), %r14
movq %r14, %rdi
movq %r15, %rsi
callq 0x1182f0
leaq 0x8(%rsp), %rbx
movq %r12, %rdi
movq %rbx, %rsi
movq %r14, %rdx
callq 0x258e78
jmp 0x2586f1
movq 0x8(%rdi), %r12
leaq 0xa8(%rsp), %rbx
movq %rbx, %rdi
movq %rdx, %rsi
callq 0x1182f0
leaq 0x1c8(%rsp), %r14
movq %r14, %rdi
movq %r15, %rsi
callq 0x1182f0
leaq 0xa8(%rsp), %rbx
movq %r12, %rdi
movq %rbx, %rsi
movq %r14, %rdx
callq 0x258b4e
jmp 0x2586f1
movq 0x8(%rdi), %r12
leaq 0x68(%rsp), %rbx
movq %rbx, %rdi
movq %rdx, %rsi
callq 0x1182f0
leaq 0x188(%rsp), %r14
movq %r14, %rdi
movq %r15, %rsi
callq 0x1182f0
leaq 0x68(%rsp), %rbx
movq %r12, %rdi
movq %rbx, %rsi
movq %r14, %rdx
callq 0x258c92
jmp 0x2586f1
movq 0x8(%rdi), %r12
leaq 0x88(%rsp), %rbx
movq %rbx, %rdi
movq %rdx, %rsi
callq 0x1182f0
leaq 0x1a8(%rsp), %r14
movq %r14, %rdi
movq %r15, %rsi
callq 0x1182f0
leaq 0x88(%rsp), %rbx
movq %r12, %rdi
movq %rbx, %rsi
movq %r14, %rdx
callq 0x258bf0
jmp 0x2586f1
movq 0x8(%rdi), %r12
leaq 0xe8(%rsp), %rbx
movq %rbx, %rdi
movq %rdx, %rsi
callq 0x1182f0
leaq 0x208(%rsp), %r14
movq %r14, %rdi
movq %r15, %rsi
callq 0x1182f0
leaq 0xe8(%rsp), %rbx
movq %r12, %rdi
movq %rbx, %rsi
movq %r14, %rdx
callq 0x258a0a
jmp 0x2586f1
movq 0x8(%rdi), %r12
leaq 0xc8(%rsp), %rbx
movq %rbx, %rdi
movq %rdx, %rsi
callq 0x1182f0
leaq 0x1e8(%rsp), %r14
movq %r14, %rdi
movq %r15, %rsi
callq 0x1182f0
leaq 0xc8(%rsp), %rbx
movq %r12, %rdi
movq %rbx, %rsi
movq %r14, %rdx
callq 0x258aac
jmp 0x2586f1
movq 0x8(%rdi), %r12
leaq 0x28(%rsp), %rbx
movq %rbx, %rdi
movq %rdx, %rsi
callq 0x1182f0
leaq 0x148(%rsp), %r14
movq %r14, %rdi
movq %r15, %rsi
callq 0x1182f0
leaq 0x28(%rsp), %rbx
movq %r12, %rdi
movq %rbx, %rsi
movq %r14, %rdx
callq 0x258dd6
jmp 0x2586f1
movq 0x8(%rdi), %r12
leaq 0x48(%rsp), %rbx
movq %rbx, %rdi
movq %rdx, %rsi
callq 0x1182f0
leaq 0x168(%rsp), %r14
movq %r14, %rdi
movq %r15, %rsi
callq 0x1182f0
leaq 0x48(%rsp), %rbx
movq %r12, %rdi
movq %rbx, %rsi
movq %r14, %rdx
callq 0x258d34
movq %rax, %r12
movq %r14, %rdi
callq 0x118648
movq %rbx, %rdi
callq 0x118648
movq %r12, %rax
addq $0x248, %rsp            # imm = 0x248
popq %rbx
popq %r12
popq %r14
popq %r15
retq
movq %rax, %r14
leaq 0x168(%rsp), %rdi
callq 0x118648
leaq 0x48(%rsp), %rbx
jmp 0x25881c
movq %rax, %r14
leaq 0x148(%rsp), %rdi
callq 0x118648
leaq 0x28(%rsp), %rbx
jmp 0x25881c
movq %rax, %r14
leaq 0x128(%rsp), %rdi
callq 0x118648
leaq 0x8(%rsp), %rbx
jmp 0x25881c
jmp 0x258819
jmp 0x258819
jmp 0x258819
movq %rax, %r14
leaq 0x1e8(%rsp), %rdi
callq 0x118648
leaq 0xc8(%rsp), %rbx
jmp 0x25881c
movq %rax, %r14
leaq 0x208(%rsp), %rdi
callq 0x118648
leaq 0xe8(%rsp), %rbx
jmp 0x25881c
movq %rax, %r14
leaq 0x1a8(%rsp), %rdi
callq 0x118648
leaq 0x88(%rsp), %rbx
jmp 0x25881c
movq %rax, %r14
leaq 0x188(%rsp), %rdi
callq 0x118648
leaq 0x68(%rsp), %rbx
jmp 0x25881c
movq %rax, %r14
leaq 0x1c8(%rsp), %rdi
callq 0x118648
leaq 0xa8(%rsp), %rbx
jmp 0x25881c
movq %rax, %r14
leaq 0x228(%rsp), %rdi
callq 0x118648
leaq 0x108(%rsp), %rbx
jmp 0x25881c
jmp 0x258819
jmp 0x258819
jmp 0x258819
jmp 0x258819
jmp 0x258819
movq %rax, %r14
movq %rbx, %rdi
callq 0x118648
movq %r14, %rdi
callq 0x118360