// File: /workspace/github_c_makefile_star2_O1/genometools[P]genometools/src/external/lpeg-0.10.2/lpeg.c
// Function: locale_l
static int locale_l (lua_State *L) {
  if (lua_isnoneornil(L, 1)) {
    lua_settop(L, 0);
    lua_createtable(L, 0, 12);
  }
  else {
    luaL_checktype(L, 1, LUA_TTABLE);
    lua_settop(L, 1);
  }
  createcat(L, "alnum", isalnum);
  createcat(L, "alpha", isalpha);
  createcat(L, "cntrl", iscntrl);
  createcat(L, "digit", isdigit);
  createcat(L, "graph", isgraph);
  createcat(L, "lower", islower);
  createcat(L, "print", isprint);
  createcat(L, "punct", ispunct);
  createcat(L, "space", isspace);
  createcat(L, "upper", isupper);
  createcat(L, "xdigit", isxdigit);
  return 1;
}

// Assembly:
pushq %rbp
pushq %r14
pushq %rbx
movq %rdi, %rbx
movl $0x1, %esi
callq 0x22d7b8
movq %rbx, %rdi
testl %eax, %eax
jle 0x249325
movl $0x1, %esi
movl $0x5, %edx
callq 0x230e68
movq %rbx, %rdi
movl $0x1, %esi
callq 0x22d42e
jmp 0x24933b
xorl %esi, %esi
callq 0x22d42e
movq %rbx, %rdi
xorl %esi, %esi
movl $0xc, %edx
callq 0x22e8fc
movl $0x5, %esi
movq %rbx, %rdi
callq 0x245fcd
movb $0x2, (%rax)
movw $0x0, 0x2(%rax)
leaq 0x8(%rax), %r14
xorps %xmm0, %xmm0
movups %xmm0, 0x8(%rax)
movups %xmm0, 0x18(%rax)
xorl %ebp, %ebp
movl %ebp, %edi
callq 0x17820
testl %eax, %eax
je 0x249382
movl %ebp, %ecx
andb $0x7, %cl
movl $0x1, %eax
shll %cl, %eax
movl %ebp, %ecx
shrl $0x3, %ecx
orb %al, (%r14,%rcx)
incl %ebp
cmpl $0x7f, %ebp
jne 0x249362
leaq 0x18a36a(%rip), %rdx    # 0x3d36fa
movq %rbx, %rdi
movl $0xfffffffe, %esi       # imm = 0xFFFFFFFE
callq 0x22ec93
movl $0x5, %esi
movq %rbx, %rdi
callq 0x245fcd
movb $0x2, (%rax)
movw $0x0, 0x2(%rax)
leaq 0x8(%rax), %r14
xorps %xmm0, %xmm0
movups %xmm0, 0x8(%rax)
movups %xmm0, 0x18(%rax)
xorl %ebp, %ebp
movl %ebp, %edi
callq 0x17c70
testl %eax, %eax
je 0x2493e4
movl %ebp, %ecx
andb $0x7, %cl
movl $0x1, %eax
shll %cl, %eax
movl %ebp, %ecx
shrl $0x3, %ecx
orb %al, (%r14,%rcx)
incl %ebp
cmpl $0x7f, %ebp
jne 0x2493c4
leaq 0x19f769(%rip), %rdx    # 0x3e8b5b
movq %rbx, %rdi
movl $0xfffffffe, %esi       # imm = 0xFFFFFFFE
callq 0x22ec93
movl $0x5, %esi
movq %rbx, %rdi
callq 0x245fcd
movb $0x2, (%rax)
movw $0x0, 0x2(%rax)
leaq 0x8(%rax), %r14
xorps %xmm0, %xmm0
movups %xmm0, 0x8(%rax)
movups %xmm0, 0x18(%rax)
xorl %ebp, %ebp
movl %ebp, %edi
callq 0x17b20
testl %eax, %eax
je 0x249446
movl %ebp, %ecx
andb $0x7, %cl
movl $0x1, %eax
shll %cl, %eax
movl %ebp, %ecx
shrl $0x3, %ecx
orb %al, (%r14,%rcx)
incl %ebp
cmpl $0x7f, %ebp
jne 0x249426
leaq 0x18a2ac(%rip), %rdx    # 0x3d3700
movq %rbx, %rdi
movl $0xfffffffe, %esi       # imm = 0xFFFFFFFE
callq 0x22ec93
movl $0x5, %esi
movq %rbx, %rdi
callq 0x245fcd
movb $0x2, (%rax)
movw $0x0, 0x2(%rax)
leaq 0x8(%rax), %rdx
xorps %xmm0, %xmm0
movups %xmm0, 0x8(%rax)
movups %xmm0, 0x18(%rax)
movl $0xffffffc6, %eax       # imm = 0xFFFFFFC6
cmpl $-0xa, %eax
jb 0x2494a6
leal 0x3a(%rax), %esi
movl %esi, %ecx
andb $0x7, %cl
movl $0x1, %edi
shll %cl, %edi
shrl $0x3, %esi
orb %dil, (%rdx,%rsi)
incl %eax
cmpl $0x45, %eax
jne 0x24948b
leaq 0x18a259(%rip), %rdx    # 0x3d370d
movq %rbx, %rdi
movl $0xfffffffe, %esi       # imm = 0xFFFFFFFE
callq 0x22ec93
movl $0x5, %esi
movq %rbx, %rdi
callq 0x245fcd
movb $0x2, (%rax)
movw $0x0, 0x2(%rax)
leaq 0x8(%rax), %r14
xorps %xmm0, %xmm0
movups %xmm0, 0x8(%rax)
movups %xmm0, 0x18(%rax)
xorl %ebp, %ebp
movl %ebp, %edi
callq 0x17760
testl %eax, %eax
je 0x249508
movl %ebp, %ecx
andb $0x7, %cl
movl $0x1, %eax
shll %cl, %eax
movl %ebp, %ecx
shrl $0x3, %ecx
orb %al, (%r14,%rcx)
incl %ebp
cmpl $0x7f, %ebp
jne 0x2494e8
leaq 0x16fe4f(%rip), %rdx    # 0x3b9365
movq %rbx, %rdi
movl $0xfffffffe, %esi       # imm = 0xFFFFFFFE
callq 0x22ec93
movl $0x5, %esi
movq %rbx, %rdi
callq 0x245fcd
movb $0x2, (%rax)
movw $0x0, 0x2(%rax)
leaq 0x8(%rax), %r14
xorps %xmm0, %xmm0
movups %xmm0, 0x8(%rax)
movups %xmm0, 0x18(%rax)
xorl %ebp, %ebp
movl %ebp, %edi
callq 0x179b0
testl %eax, %eax
je 0x24956a
movl %ebp, %ecx
andb $0x7, %cl
movl $0x1, %eax
shll %cl, %eax
movl %ebp, %ecx
shrl $0x3, %ecx
orb %al, (%r14,%rcx)
incl %ebp
cmpl $0x7f, %ebp
jne 0x24954a
leaq 0x188e03(%rip), %rdx    # 0x3d237b
movq %rbx, %rdi
movl $0xfffffffe, %esi       # imm = 0xFFFFFFFE
callq 0x22ec93
movl $0x5, %esi
movq %rbx, %rdi
callq 0x245fcd
movb $0x2, (%rax)
movw $0x0, 0x2(%rax)
leaq 0x8(%rax), %r14
xorps %xmm0, %xmm0
movups %xmm0, 0x8(%rax)
movups %xmm0, 0x18(%rax)
xorl %ebp, %ebp
movl %ebp, %edi
callq 0x17dd0
testl %eax, %eax
je 0x2495cc
movl %ebp, %ecx
andb $0x7, %cl
movl $0x1, %eax
shll %cl, %eax
movl %ebp, %ecx
shrl $0x3, %ecx
orb %al, (%r14,%rcx)
incl %ebp
cmpl $0x7f, %ebp
jne 0x2495ac
leaq 0x11daae(%rip), %rdx    # 0x367088
movq %rbx, %rdi
movl $0xfffffffe, %esi       # imm = 0xFFFFFFFE
callq 0x22ec93
movl $0x5, %esi
movq %rbx, %rdi
callq 0x245fcd
movb $0x2, (%rax)
movw $0x0, 0x2(%rax)
leaq 0x8(%rax), %r14
xorps %xmm0, %xmm0
movups %xmm0, 0x8(%rax)
movups %xmm0, 0x18(%rax)
xorl %ebp, %ebp
movl %ebp, %edi
callq 0x17f70
testl %eax, %eax
je 0x24962e
movl %ebp, %ecx
andb $0x7, %cl
movl $0x1, %eax
shll %cl, %eax
movl %ebp, %ecx
shrl $0x3, %ecx
orb %al, (%r14,%rcx)
incl %ebp
cmpl $0x7f, %ebp
jne 0x24960e
leaq 0x18a0ca(%rip), %rdx    # 0x3d3706
movq %rbx, %rdi
movl $0xfffffffe, %esi       # imm = 0xFFFFFFFE
callq 0x22ec93
movl $0x5, %esi
movq %rbx, %rdi
callq 0x245fcd
movb $0x2, (%rax)
movw $0x0, 0x2(%rax)
leaq 0x8(%rax), %r14
xorps %xmm0, %xmm0
movups %xmm0, 0x8(%rax)
movups %xmm0, 0x18(%rax)
xorl %ebp, %ebp
movl %ebp, %edi
callq 0x17090
testl %eax, %eax
je 0x249690
movl %ebp, %ecx
andb $0x7, %cl
movl $0x1, %eax
shll %cl, %eax
movl %ebp, %ecx
shrl $0x3, %ecx
orb %al, (%r14,%rcx)
incl %ebp
cmpl $0x7f, %ebp
jne 0x249670
leaq 0x14ca7a(%rip), %rdx    # 0x396118
movq %rbx, %rdi
movl $0xfffffffe, %esi       # imm = 0xFFFFFFFE
callq 0x22ec93
movl $0x5, %esi
movq %rbx, %rdi
callq 0x245fcd
movb $0x2, (%rax)
movw $0x0, 0x2(%rax)
leaq 0x8(%rax), %r14
xorps %xmm0, %xmm0
movups %xmm0, 0x8(%rax)
movups %xmm0, 0x18(%rax)
xorl %ebp, %ebp
movl %ebp, %edi
callq 0x17560
testl %eax, %eax
je 0x2496f2
movl %ebp, %ecx
andb $0x7, %cl
movl $0x1, %eax
shll %cl, %eax
movl %ebp, %ecx
shrl $0x3, %ecx
orb %al, (%r14,%rcx)
incl %ebp
cmpl $0x7f, %ebp
jne 0x2496d2
leaq 0x1a5a3c(%rip), %rdx    # 0x3ef13c
movq %rbx, %rdi
movl $0xfffffffe, %esi       # imm = 0xFFFFFFFE
callq 0x22ec93
movl $0x5, %esi
movq %rbx, %rdi
callq 0x245fcd
movb $0x2, (%rax)
movw $0x0, 0x2(%rax)
leaq 0x8(%rax), %r14
xorps %xmm0, %xmm0
movups %xmm0, 0x8(%rax)
movups %xmm0, 0x18(%rax)
xorl %ebp, %ebp
movl %ebp, %edi
callq 0x171b0
testl %eax, %eax
je 0x249754
movl %ebp, %ecx
andb $0x7, %cl
movl $0x1, %eax
shll %cl, %eax
movl %ebp, %ecx
shrl $0x3, %ecx
orb %al, (%r14,%rcx)
incl %ebp
cmpl $0x7f, %ebp
jne 0x249734
leaq 0x189faa(%rip), %rdx    # 0x3d370c
movq %rbx, %rdi
movl $0xfffffffe, %esi       # imm = 0xFFFFFFFE
callq 0x22ec93
movl $0x1, %eax
popq %rbx
popq %r14
popq %rbp
retq