// 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_str_xoxr_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, exprtk::details::range_pack<double>)
inline expression_node_ptr synthesize_str_xoxr_expression_impl(const details::operator_type& opr,
                                                                        T0 s0, T1 s1,
                                                                        range_t rp1)
         {
            switch (opr)
            {
               #define case_stmt(op0, op1)                                                                      \
               case op0 : return node_allocator_->                                                              \
                             allocate_ttt<typename details::str_xoxr_node<Type,T0,T1,range_t,op1<Type> >,T0,T1> \
                                (s0, s1, rp1);                                                                  \

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

// Assembly:
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x290, %rsp            # imm = 0x290
movq %rcx, %r12
leaq 0x2c0(%rsp), %r14
movl (%rsi), %eax
xorl %r13d, %r13d
leal -0xe(%rax), %ecx
cmpl $0x7, %ecx
ja 0x25a707
leaq 0x77bfb(%rip), %rax     # 0x2d22a8
movslq (%rax,%rcx,4), %rcx
addq %rax, %rcx
jmpq *%rcx
movq 0x8(%rdi), %r13
leaq 0x150(%rsp), %r15
movq %r15, %rdi
movq %rdx, %rsi
callq 0x1182f0
leaq 0x270(%rsp), %rbx
movq %rbx, %rdi
movq %r12, %rsi
callq 0x1182f0
leaq 0x150(%rsp), %r15
pushq $0xa
popq %rcx
movq %rsp, %rdi
movq %r14, %rsi
rep  movsq (%rsi), %es:(%rdi)
movq %r13, %rdi
movq %r15, %rsi
movq %rbx, %rdx
callq 0x25aada
jmp 0x25a996
cmpl $0x57, %eax
je 0x25a94a
cmpl $0x58, %eax
je 0x25a902
cmpl $0x59, %eax
jne 0x25a9a9
movq 0x8(%rdi), %r13
leaq 0x50(%rsp), %r15
movq %r15, %rdi
movq %rdx, %rsi
callq 0x1182f0
leaq 0x170(%rsp), %rbx
movq %rbx, %rdi
movq %r12, %rsi
callq 0x1182f0
leaq 0x50(%rsp), %r15
pushq $0xa
popq %rcx
movq %rsp, %rdi
movq %r14, %rsi
rep  movsq (%rsi), %es:(%rdi)
movq %r13, %rdi
movq %r15, %rsi
movq %rbx, %rdx
callq 0x25b0fa
jmp 0x25a996
movq 0x8(%rdi), %r13
leaq 0xf0(%rsp), %r15
movq %r15, %rdi
movq %rdx, %rsi
callq 0x1182f0
leaq 0x210(%rsp), %rbx
movq %rbx, %rdi
movq %r12, %rsi
callq 0x1182f0
leaq 0xf0(%rsp), %r15
pushq $0xa
popq %rcx
movq %rsp, %rdi
movq %r14, %rsi
rep  movsq (%rsi), %es:(%rdi)
movq %r13, %rdi
movq %r15, %rsi
movq %rbx, %rdx
callq 0x25ad26
jmp 0x25a996
movq 0x8(%rdi), %r13
leaq 0xb0(%rsp), %r15
movq %r15, %rdi
movq %rdx, %rsi
callq 0x1182f0
leaq 0x1d0(%rsp), %rbx
movq %rbx, %rdi
movq %r12, %rsi
callq 0x1182f0
leaq 0xb0(%rsp), %r15
pushq $0xa
popq %rcx
movq %rsp, %rdi
movq %r14, %rsi
rep  movsq (%rsi), %es:(%rdi)
movq %r13, %rdi
movq %r15, %rsi
movq %rbx, %rdx
callq 0x25aeae
jmp 0x25a996
movq 0x8(%rdi), %r13
leaq 0xd0(%rsp), %r15
movq %r15, %rdi
movq %rdx, %rsi
callq 0x1182f0
leaq 0x1f0(%rsp), %rbx
movq %rbx, %rdi
movq %r12, %rsi
callq 0x1182f0
leaq 0xd0(%rsp), %r15
pushq $0xa
popq %rcx
movq %rsp, %rdi
movq %r14, %rsi
rep  movsq (%rsi), %es:(%rdi)
movq %r13, %rdi
movq %r15, %rsi
movq %rbx, %rdx
callq 0x25adea
jmp 0x25a996
movq 0x8(%rdi), %r13
leaq 0x130(%rsp), %r15
movq %r15, %rdi
movq %rdx, %rsi
callq 0x1182f0
leaq 0x250(%rsp), %rbx
movq %rbx, %rdi
movq %r12, %rsi
callq 0x1182f0
leaq 0x130(%rsp), %r15
pushq $0xa
popq %rcx
movq %rsp, %rdi
movq %r14, %rsi
rep  movsq (%rsi), %es:(%rdi)
movq %r13, %rdi
movq %r15, %rsi
movq %rbx, %rdx
callq 0x25ab9e
jmp 0x25a996
movq 0x8(%rdi), %r13
leaq 0x110(%rsp), %r15
movq %r15, %rdi
movq %rdx, %rsi
callq 0x1182f0
leaq 0x230(%rsp), %rbx
movq %rbx, %rdi
movq %r12, %rsi
callq 0x1182f0
leaq 0x110(%rsp), %r15
pushq $0xa
popq %rcx
movq %rsp, %rdi
movq %r14, %rsi
rep  movsq (%rsi), %es:(%rdi)
movq %r13, %rdi
movq %r15, %rsi
movq %rbx, %rdx
callq 0x25ac62
jmp 0x25a996
movq 0x8(%rdi), %r13
leaq 0x70(%rsp), %r15
movq %r15, %rdi
movq %rdx, %rsi
callq 0x1182f0
leaq 0x190(%rsp), %rbx
movq %rbx, %rdi
movq %r12, %rsi
callq 0x1182f0
leaq 0x70(%rsp), %r15
pushq $0xa
popq %rcx
movq %rsp, %rdi
movq %r14, %rsi
rep  movsq (%rsi), %es:(%rdi)
movq %r13, %rdi
movq %r15, %rsi
movq %rbx, %rdx
callq 0x25b036
jmp 0x25a996
movq 0x8(%rdi), %r13
leaq 0x90(%rsp), %r15
movq %r15, %rdi
movq %rdx, %rsi
callq 0x1182f0
leaq 0x1b0(%rsp), %rbx
movq %rbx, %rdi
movq %r12, %rsi
callq 0x1182f0
leaq 0x90(%rsp), %r15
pushq $0xa
popq %rcx
movq %rsp, %rdi
movq %r14, %rsi
rep  movsq (%rsi), %es:(%rdi)
movq %r13, %rdi
movq %r15, %rsi
movq %rbx, %rdx
callq 0x25af72
movq %rax, %r13
movq %rbx, %rdi
callq 0x118648
movq %r15, %rdi
callq 0x118648
movq %r13, %rax
addq $0x290, %rsp            # imm = 0x290
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
retq
movq %rax, %rbx
leaq 0x1b0(%rsp), %rdi
callq 0x118648
leaq 0x90(%rsp), %r15
jmp 0x25aac9
movq %rax, %rbx
leaq 0x190(%rsp), %rdi
callq 0x118648
leaq 0x70(%rsp), %r15
jmp 0x25aac9
movq %rax, %rbx
leaq 0x170(%rsp), %rdi
callq 0x118648
leaq 0x50(%rsp), %r15
jmp 0x25aac9
jmp 0x25aac6
jmp 0x25aac6
jmp 0x25aac6
movq %rax, %rbx
leaq 0x230(%rsp), %rdi
callq 0x118648
leaq 0x110(%rsp), %r15
jmp 0x25aac9
movq %rax, %rbx
leaq 0x250(%rsp), %rdi
callq 0x118648
leaq 0x130(%rsp), %r15
jmp 0x25aac9
movq %rax, %rbx
leaq 0x1f0(%rsp), %rdi
callq 0x118648
leaq 0xd0(%rsp), %r15
jmp 0x25aac9
movq %rax, %rbx
leaq 0x1d0(%rsp), %rdi
callq 0x118648
leaq 0xb0(%rsp), %r15
jmp 0x25aac9
movq %rax, %rbx
leaq 0x210(%rsp), %rdi
callq 0x118648
leaq 0xf0(%rsp), %r15
jmp 0x25aac9
movq %rax, %rbx
leaq 0x270(%rsp), %rdi
callq 0x118648
leaq 0x150(%rsp), %r15
jmp 0x25aac9
jmp 0x25aac6
jmp 0x25aac6
jmp 0x25aac6
jmp 0x25aac6
jmp 0x25aac6
movq %rax, %rbx
movq %r15, %rdi
callq 0x118648
movq %rbx, %rdi
callq 0x118360
nop