// File: /workspace/github_c_makefile_star2_O1/orangeduck[P]mpc/tests/regex.c
// Function: test_regex_dotall
void test_regex_dotall(void) {

  mpc_parser_t *re0 = mpc_re_mode("^.*$", MPC_RE_DEFAULT);
  mpc_parser_t *re1 = mpc_re_mode("^.*$", MPC_RE_DOTALL);

  PT_ASSERT(regex_test_pass(re0, "hello", "hello"));
  PT_ASSERT(regex_test_fail(re0, "hello\n", "hello"));
  PT_ASSERT(regex_test_fail(re0, "he\nllo\n", "he"));
  PT_ASSERT(regex_test_pass(re0, "34njaksdklmasd", "34njaksdklmasd"));
  PT_ASSERT(regex_test_fail(re0, "34njaksd\nklmasd", "34njaksd"));

  PT_ASSERT(regex_test_pass(re1, "hello", "hello"));
  PT_ASSERT(regex_test_pass(re1, "hello\n", "hello\n"));
  PT_ASSERT(regex_test_pass(re1, "he\nllo\n", "he\nllo\n"));
  PT_ASSERT(regex_test_pass(re1, "34njaksdklmasd", "34njaksdklmasd"));
  PT_ASSERT(regex_test_pass(re1, "34njaksd\nklmasd", "34njaksd\nklmasd"));

  mpc_delete(re0);
  mpc_delete(re1);

}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
pushq %rax
leaq 0xc79b(%rip), %r14      # 0x11ab6
movq %r14, %rdi
xorl %esi, %esi
callq 0x92bd
movq %rax, %rbx
movq %r14, %rdi
movl $0x2, %esi
callq 0x92bd
movq %rax, (%rsp)
leaq 0xc62c(%rip), %r15      # 0x1196c
leaq -0xb0d(%rip), %r12      # 0x483a
movq 0x12c7a(%rip), %r13     # 0x17fc8
leaq -0xb0a(%rip), %r14      # 0x484b
movq %rbx, %rdi
movq %r15, %rsi
movq %r15, %rdx
movq %r12, %rcx
movq %r13, %r8
movq %r14, %r9
callq 0xaa3c
leaq 0xc748(%rip), %rsi      # 0x11abb
leaq 0xbfdf(%rip), %rbp      # 0x11359
movl %eax, %edi
movq %rbp, %rdx
movl $0x9b, %ecx
callq 0x4050
leaq 0xc61d(%rip), %rsi      # 0x119ad
movq %rbx, %rdi
movq %r15, %rdx
movq %r12, %rcx
movq %r12, %r15
movq %r13, %r8
movq %r13, %r12
movq %r14, %r9
movq %r14, %r13
callq 0xa9c0
leaq 0xc72e(%rip), %rsi      # 0x11ae2
movl %eax, %edi
movq %rbp, %rdx
movl $0x9c, %ecx
callq 0x4050
leaq 0xc741(%rip), %rsi      # 0x11b0b
leaq 0xc4d7(%rip), %rdx      # 0x118a8
movq %rbx, %rdi
movq %rbx, %r14
movq %r15, %rcx
movq %r12, %r8
movq %r13, %r9
callq 0xa9c0
leaq 0xc727(%rip), %rsi      # 0x11b13
movl %eax, %edi
movq %rbp, %rdx
movl $0x9d, %ecx
callq 0x4050
leaq 0xc739(%rip), %rdx      # 0x11b3b
movq %rbx, %rdi
movq %rdx, %rsi
movq %r15, %rcx
movq %r12, %r8
movq %r13, %r9
callq 0xaa3c
leaq 0xc72d(%rip), %rsi      # 0x11b4a
movl %eax, %edi
movq %rbp, %rdx
movl $0x9e, %ecx
callq 0x4050
leaq 0xc750(%rip), %rsi      # 0x11b83
leaq 0xc759(%rip), %rdx      # 0x11b93
movq %rbx, %rdi
movq %r15, %rcx
movq %r12, %r8
movq %r13, %r9
callq 0xa9c0
leaq 0xc74a(%rip), %rsi      # 0x11b9c
movl %eax, %edi
movq %rbp, %rdx
movl $0x9f, %ecx
callq 0x4050
movq (%rsp), %rbx
movq %rbx, %rdi
leaq 0xc4fd(%rip), %rdx      # 0x1196c
movq %rdx, %rsi
movq %r15, %rcx
movq %r12, %r8
movq %r13, %r9
callq 0xaa3c
leaq 0xc74a(%rip), %rsi      # 0x11bd1
movl %eax, %edi
movq %rbp, %rdx
movl $0xa1, %ecx
callq 0x4050
movq %rbx, %rdi
leaq 0xc50d(%rip), %rdx      # 0x119ad
movq %rdx, %rsi
movq %r15, %rcx
movq %r12, %r8
movq %r13, %r9
callq 0xaa3c
leaq 0xc740(%rip), %rsi      # 0x11bf8
movl %eax, %edi
movq %rbp, %rdx
movl $0xa2, %ecx
callq 0x4050
movq %rbx, %rdi
leaq 0xc63a(%rip), %rdx      # 0x11b0b
movq %rdx, %rsi
movq %r15, %rcx
movq %r12, %r8
movq %r13, %r9
callq 0xaa3c
leaq 0xc73a(%rip), %rsi      # 0x11c23
movl %eax, %edi
movq %rbp, %rdx
movl $0xa3, %ecx
callq 0x4050
movq %rbx, %rdi
leaq 0xc639(%rip), %rdx      # 0x11b3b
movq %rdx, %rsi
movq %r15, %rcx
movq %r12, %r8
movq %r13, %r9
callq 0xaa3c
leaq 0xc738(%rip), %rsi      # 0x11c52
movl %eax, %edi
movq %rbp, %rdx
movl $0xa4, %ecx
callq 0x4050
movq %rbx, %rdi
leaq 0xc650(%rip), %rdx      # 0x11b83
movq %rdx, %rsi
movq %r15, %rcx
movq %r12, %r8
movq %r13, %r9
callq 0xaa3c
leaq 0xc740(%rip), %rsi      # 0x11c8b
movl %eax, %edi
movq %rbp, %rdx
movl $0xa5, %ecx
callq 0x4050
movq %r14, %rdi
callq 0x7052
movq %rbx, %rdi
addq $0x8, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
jmp 0x7052