// File: /workspace/github_c_makefile_star2_O3/genometools[P]genometools/src/external/lpeg-0.10.2/lpeg.c
// Function: printpat_l
static int printpat_l (lua_State *L) {
  Instruction *p = getpatt(L, 1, NULL);
  int n, i;
  lua_getfenv(L, 1);
  n = ktablelen(L, -1);
  printf("[");
  for (i = 1; i <= n; i++) {
    printf("%d = ", i);
    lua_rawgeti(L, -1, i);
    if (lua_isstring(L, -1))
      printf("%s  ", lua_tostring(L, -1));
    else
      printf("%s  ", lua_typename(L, lua_type(L, -1)));
    lua_pop(L, 1);
  }
  printf("]\n");
  printpatt(p);
  return 0;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
pushq %rax
movq %rdi, %rbx
movl $0x1, %r14d
movl $0x1, %esi
xorl %edx, %edx
callq 0x23dd8d
movq %rax, %r13
movq %rbx, %rdi
movl $0x1, %esi
callq 0x224d0c
movq %rbx, %rdi
callq 0x23ef17
movl %eax, %r15d
movl $0x5b, %edi
callq 0x17a20
testl %r15d, %r15d
jle 0x240500
negl %r15d
leaq 0x189a6b(%rip), %r12    # 0x3c9ee9
leaq 0x189a6a(%rip), %rbp    # 0x3c9eef
movq %r12, %rdi
movl %r14d, %esi
xorl %eax, %eax
callq 0x17070
movq %rbx, %rdi
movl $0xffffffff, %esi       # imm = 0xFFFFFFFF
movl %r14d, %edx
callq 0x224b36
movq %rbx, %rdi
movl $0xffffffff, %esi       # imm = 0xFFFFFFFF
callq 0x223b1f
movq %rbx, %rdi
movl $0xffffffff, %esi       # imm = 0xFFFFFFFF
testl %eax, %eax
je 0x2404c4
xorl %edx, %edx
callq 0x223ea8
jmp 0x2404d3
callq 0x223a4b
movq %rbx, %rdi
movl %eax, %esi
callq 0x223a66
movq %rbp, %rdi
movq %rax, %rsi
xorl %eax, %eax
callq 0x17070
movq %rbx, %rdi
movl $0xfffffffe, %esi       # imm = 0xFFFFFFFE
callq 0x2235b9
leal (%r15,%r14), %eax
incl %eax
movl %r14d, %ecx
incl %ecx
movl %ecx, %r14d
cmpl $0x1, %eax
jne 0x240485
leaq 0x1878db(%rip), %rdi    # 0x3c7de2
callq 0x17bd0
leaq 0x1890dd(%rip), %rbp    # 0x3c95f0
leaq 0x189a63(%rip), %r14    # 0x3c9f7d
leaq 0x18902f(%rip), %r15    # 0x3c9550
leaq 0x189128(%rip), %r12    # 0x3c9650
movq %r13, %rbx
movq %rbx, %rsi
subq %r13, %rsi
sarq $0x3, %rsi
movzbl (%rbx), %eax
movslq (%rbp,%rax,4), %rdx
addq %rbp, %rdx
movq %r14, %rdi
xorl %eax, %eax
callq 0x17070
movzbl (%rbx), %eax
cmpq $0x17, %rax
ja 0x2405ef
movslq (%r15,%rax,4), %rax
addq %r15, %rax
jmpq *%rax
movzbl 0x1(%rbx), %eax
andl $0xf, %eax
movslq (%r12,%rax,4), %rsi
addq %r12, %rsi
leaq 0x188534(%rip), %rdi    # 0x3c8aa9
xorl %eax, %eax
callq 0x17070
movzbl 0x1(%rbx), %esi
shrl $0x4, %esi
movswl 0x2(%rbx), %edx
leaq 0x1899ff(%rip), %rdi    # 0x3c9f8d
xorl %eax, %eax
callq 0x17070
jmp 0x2405ef
movzbl 0x1(%rbx), %esi
leaq 0x12a174(%rip), %rdi    # 0x36a716
jmp 0x2405dd
leaq 0x8(%rbx), %rdi
callq 0x241d73
jmp 0x2405e4
movq %r13, %rdi
movq %rbx, %rsi
callq 0x241d1c
movzbl 0x1(%rbx), %esi
leaq 0x136d4c(%rip), %rdi    # 0x377311
jmp 0x240636
leaq 0x8(%rbx), %rdi
callq 0x241d73
jmp 0x2405ef
movzbl 0x1(%rbx), %esi
leaq 0x1899ab(%rip), %rdi    # 0x3c9f88
xorl %eax, %eax
callq 0x17070
movq %r13, %rdi
movq %rbx, %rsi
callq 0x241d1c
movl $0xa, %edi
callq 0x17a20
movzbl (%rbx), %ecx
movl $0x5, %eax
leal -0x2(%rcx), %edx
cmpl $0x2, %edx
jb 0x240622
cmpl $0x11, %ecx
je 0x24061a
cmpl $0x6, %ecx
je 0x24063f
movl $0x1, %eax
jmp 0x240622
movzbl 0x1(%rbx), %eax
addq $0x2, %rax
leaq (%rbx,%rax,8), %rbx
jmp 0x24052b
movswl 0x2(%rbx), %esi
leaq 0x18996c(%rip), %rdi    # 0x3c9fa2
xorl %eax, %eax
callq 0x17070
jmp 0x2405ef
xorl %eax, %eax
addq $0x8, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq