// File: /workspace/github_c_makefile_star2_O1/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 0x246779
movq %rax, %r13
movq %rbx, %rdi
movl $0x1, %esi
callq 0x22ea28
movq %rbx, %rdi
callq 0x24791c
movl %eax, %r15d
movl $0x5b, %edi
callq 0x17a20
testl %r15d, %r15d
jle 0x24919f
negl %r15d
leaq 0x18a4ec(%rip), %r12    # 0x3d3609
leaq 0x18a4eb(%rip), %rbp    # 0x3d360f
movq %r12, %rdi
movl %r14d, %esi
xorl %eax, %eax
callq 0x17070
movq %rbx, %rdi
movl $0xffffffff, %esi       # imm = 0xFFFFFFFF
movl %r14d, %edx
callq 0x22e852
movq %rbx, %rdi
movl $0xffffffff, %esi       # imm = 0xFFFFFFFF
callq 0x22d88c
movq %rbx, %rdi
movl $0xffffffff, %esi       # imm = 0xFFFFFFFF
testl %eax, %eax
je 0x249163
xorl %edx, %edx
callq 0x22db9e
jmp 0x249172
callq 0x22d7b8
movq %rbx, %rdi
movl %eax, %esi
callq 0x22d7d3
movq %rbp, %rdi
movq %rax, %rsi
xorl %eax, %eax
callq 0x17070
movq %rbx, %rdi
movl $0xfffffffe, %esi       # imm = 0xFFFFFFFE
callq 0x22d42e
leal (%r15,%r14), %eax
incl %eax
movl %r14d, %ecx
incl %ecx
movl %ecx, %r14d
cmpl $0x1, %eax
jne 0x249124
leaq 0x188364(%rip), %rdi    # 0x3d150a
callq 0x17bd0
leaq 0x189b5e(%rip), %rbp    # 0x3d2d10
leaq 0x18a4e4(%rip), %r14    # 0x3d369d
leaq 0x189ab0(%rip), %r15    # 0x3d2c70
leaq 0x189ba9(%rip), %r12    # 0x3d2d70
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 0x24928e
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 0x188fbd(%rip), %rdi    # 0x3d21d1
xorl %eax, %eax
callq 0x17070
movzbl 0x1(%rbx), %esi
shrl $0x4, %esi
movswl 0x2(%rbx), %edx
leaq 0x18a480(%rip), %rdi    # 0x3d36ad
xorl %eax, %eax
callq 0x17070
jmp 0x24928e
movzbl 0x1(%rbx), %esi
leaq 0x12a725(%rip), %rdi    # 0x373966
jmp 0x24927c
leaq 0x8(%rbx), %rdi
callq 0x24aa2e
jmp 0x249283
movq %r13, %rdi
movq %rbx, %rsi
callq 0x24a9d7
movzbl 0x1(%rbx), %esi
leaq 0x13733d(%rip), %rdi    # 0x3805a1
jmp 0x2492d5
leaq 0x8(%rbx), %rdi
callq 0x24aa2e
jmp 0x24928e
movzbl 0x1(%rbx), %esi
leaq 0x18a42c(%rip), %rdi    # 0x3d36a8
xorl %eax, %eax
callq 0x17070
movq %r13, %rdi
movq %rbx, %rsi
callq 0x24a9d7
movl $0xa, %edi
callq 0x17a20
movzbl (%rbx), %ecx
movl $0x5, %eax
leal -0x2(%rcx), %edx
cmpl $0x2, %edx
jb 0x2492c1
cmpl $0x11, %ecx
je 0x2492b9
cmpl $0x6, %ecx
je 0x2492de
movl $0x1, %eax
jmp 0x2492c1
movzbl 0x1(%rbx), %eax
addq $0x2, %rax
leaq (%rbx,%rax,8), %rbx
jmp 0x2491ca
movswl 0x2(%rbx), %esi
leaq 0x18a3ed(%rip), %rdi    # 0x3d36c2
xorl %eax, %eax
callq 0x17070
jmp 0x24928e
xorl %eax, %eax
addq $0x8, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq