// File: /workspace/github_c_makefile_star2_O0/stetre[P]moonfreetype/src/flags.c
// Function: checkloadflags
static FT_Int32 checkloadflags(lua_State *L, int arg) 
    {
    const char *s;
    FT_Int32 flags = 0; // = FT_LOAD_DEFAULT
    
    while(lua_isstring(L, arg))
        {
        s = lua_tostring(L, arg++);
#define CASE(CODE,str) if((strcmp(s, str)==0)) do { flags |= CODE; goto done; } while(0)
        CASE(FT_LOAD_DEFAULT,"default");
        CASE(FT_LOAD_NO_SCALE,"no scale");
        CASE(FT_LOAD_NO_HINTING,"no hinting");
        CASE(FT_LOAD_RENDER,"render");
        CASE(FT_LOAD_NO_BITMAP,"no bitmap");
        CASE(FT_LOAD_VERTICAL_LAYOUT,"vertical layout");
        CASE(FT_LOAD_FORCE_AUTOHINT,"force autohint");
        CASE(FT_LOAD_CROP_BITMAP,"crop bitmap");
        CASE(FT_LOAD_PEDANTIC,"pedantic");
        CASE(FT_LOAD_IGNORE_GLOBAL_ADVANCE_WIDTH,"ignore global advance width");
        CASE(FT_LOAD_NO_RECURSE,"no recurse");
        CASE(FT_LOAD_IGNORE_TRANSFORM,"ignore transform");
        CASE(FT_LOAD_MONOCHROME,"monochrome");
        CASE(FT_LOAD_LINEAR_DESIGN,"linear design");
        CASE(FT_LOAD_NO_AUTOHINT,"no autohint");
        CASE(FT_LOAD_COLOR,"color");
        CASE(FT_LOAD_COMPUTE_METRICS,"compute metrics");
        CASE(FT_ADVANCE_FLAG_FAST_ONLY, "fast only");
        CASE(FT_LOAD_TARGET_NORMAL,"target normal");
        CASE(FT_LOAD_TARGET_LIGHT,"target light");
        CASE(FT_LOAD_TARGET_MONO,"target mono");
        CASE(FT_LOAD_TARGET_LCD,"target lcd");
        CASE(FT_LOAD_TARGET_LCD_V,"target lcd v");
#undef CASE
        return (FT_Int32)luaL_argerror(L, --arg, badvalue(L,s));
        done: ;
        }

    return flags;
    }

// Assembly:
subq $0x38, %rsp
movq %rdi, 0x28(%rsp)
movl %esi, 0x24(%rsp)
movl $0x0, 0x14(%rsp)
movq 0x28(%rsp), %rdi
movl 0x24(%rsp), %esi
callq 0x7da0
cmpl $0x0, %eax
je 0x11ba9
movq 0x28(%rsp), %rdi
movl 0x24(%rsp), %esi
movl %esi, %eax
addl $0x1, %eax
movl %eax, 0x24(%rsp)
xorl %eax, %eax
movl %eax, %edx
callq 0x7330
movq %rax, 0x18(%rsp)
movq 0x18(%rsp), %rdi
leaq 0xa288(%rip), %rsi      # 0x1ba20
callq 0x7700
cmpl $0x0, %eax
jne 0x117b4
jmp 0x117a4
movl 0x14(%rsp), %eax
orl $0x0, %eax
movl %eax, 0x14(%rsp)
jmp 0x11ba4
movq 0x18(%rsp), %rdi
leaq 0x97e8(%rip), %rsi      # 0x1afa8
callq 0x7700
cmpl $0x0, %eax
jne 0x117de
jmp 0x117cc
movslq 0x14(%rsp), %rax
orq $0x1, %rax
movl %eax, 0x14(%rsp)
jmp 0x11ba4
movq 0x18(%rsp), %rdi
leaq 0x97c7(%rip), %rsi      # 0x1afb1
callq 0x7700
cmpl $0x0, %eax
jne 0x11808
jmp 0x117f6
movslq 0x14(%rsp), %rax
orq $0x2, %rax
movl %eax, 0x14(%rsp)
jmp 0x11ba4
movq 0x18(%rsp), %rdi
leaq 0x9ceb(%rip), %rsi      # 0x1b4ff
callq 0x7700
cmpl $0x0, %eax
jne 0x11832
jmp 0x11820
movslq 0x14(%rsp), %rax
orq $0x4, %rax
movl %eax, 0x14(%rsp)
jmp 0x11ba4
movq 0x18(%rsp), %rdi
leaq 0x977e(%rip), %rsi      # 0x1afbc
callq 0x7700
cmpl $0x0, %eax
jne 0x1185c
jmp 0x1184a
movslq 0x14(%rsp), %rax
orq $0x8, %rax
movl %eax, 0x14(%rsp)
jmp 0x11ba4
movq 0x18(%rsp), %rdi
leaq 0x975e(%rip), %rsi      # 0x1afc6
callq 0x7700
cmpl $0x0, %eax
jne 0x11886
jmp 0x11874
movslq 0x14(%rsp), %rax
orq $0x10, %rax
movl %eax, 0x14(%rsp)
jmp 0x11ba4
movq 0x18(%rsp), %rdi
leaq 0x9744(%rip), %rsi      # 0x1afd6
callq 0x7700
cmpl $0x0, %eax
jne 0x118b0
jmp 0x1189e
movslq 0x14(%rsp), %rax
orq $0x20, %rax
movl %eax, 0x14(%rsp)
jmp 0x11ba4
movq 0x18(%rsp), %rdi
leaq 0x9729(%rip), %rsi      # 0x1afe5
callq 0x7700
cmpl $0x0, %eax
jne 0x118da
jmp 0x118c8
movslq 0x14(%rsp), %rax
orq $0x40, %rax
movl %eax, 0x14(%rsp)
jmp 0x11ba4
movq 0x18(%rsp), %rdi
leaq 0x970b(%rip), %rsi      # 0x1aff1
callq 0x7700
cmpl $0x0, %eax
jne 0x11906
jmp 0x118f2
movslq 0x14(%rsp), %rax
orq $0x80, %rax
movl %eax, 0x14(%rsp)
jmp 0x11ba4
movq 0x18(%rsp), %rdi
leaq 0x96e8(%rip), %rsi      # 0x1affa
callq 0x7700
cmpl $0x0, %eax
jne 0x11932
jmp 0x1191e
movslq 0x14(%rsp), %rax
orq $0x200, %rax            # imm = 0x200
movl %eax, 0x14(%rsp)
jmp 0x11ba4
movq 0x18(%rsp), %rdi
leaq 0x96d8(%rip), %rsi      # 0x1b016
callq 0x7700
cmpl $0x0, %eax
jne 0x1195e
jmp 0x1194a
movslq 0x14(%rsp), %rax
orq $0x400, %rax            # imm = 0x400
movl %eax, 0x14(%rsp)
jmp 0x11ba4
movq 0x18(%rsp), %rdi
leaq 0x96b7(%rip), %rsi      # 0x1b021
callq 0x7700
cmpl $0x0, %eax
jne 0x1198a
jmp 0x11976
movslq 0x14(%rsp), %rax
orq $0x800, %rax            # imm = 0x800
movl %eax, 0x14(%rsp)
jmp 0x11ba4
movq 0x18(%rsp), %rdi
leaq 0x969c(%rip), %rsi      # 0x1b032
callq 0x7700
cmpl $0x0, %eax
jne 0x119b6
jmp 0x119a2
movslq 0x14(%rsp), %rax
orq $0x1000, %rax           # imm = 0x1000
movl %eax, 0x14(%rsp)
jmp 0x11ba4
movq 0x18(%rsp), %rdi
leaq 0x967b(%rip), %rsi      # 0x1b03d
callq 0x7700
cmpl $0x0, %eax
jne 0x119e2
jmp 0x119ce
movslq 0x14(%rsp), %rax
orq $0x2000, %rax           # imm = 0x2000
movl %eax, 0x14(%rsp)
jmp 0x11ba4
movq 0x18(%rsp), %rdi
leaq 0x965d(%rip), %rsi      # 0x1b04b
callq 0x7700
cmpl $0x0, %eax
jne 0x11a0e
jmp 0x119fa
movslq 0x14(%rsp), %rax
orq $0x8000, %rax           # imm = 0x8000
movl %eax, 0x14(%rsp)
jmp 0x11ba4
movq 0x18(%rsp), %rdi
leaq 0x8f4f(%rip), %rsi      # 0x1a969
callq 0x7700
cmpl $0x0, %eax
jne 0x11a3a
jmp 0x11a26
movslq 0x14(%rsp), %rax
orq $0x100000, %rax         # imm = 0x100000
movl %eax, 0x14(%rsp)
jmp 0x11ba4
movq 0x18(%rsp), %rdi
leaq 0x9611(%rip), %rsi      # 0x1b057
callq 0x7700
cmpl $0x0, %eax
jne 0x11a66
jmp 0x11a52
movslq 0x14(%rsp), %rax
orq $0x200000, %rax         # imm = 0x200000
movl %eax, 0x14(%rsp)
jmp 0x11ba4
movq 0x18(%rsp), %rdi
leaq 0x95f5(%rip), %rsi      # 0x1b067
callq 0x7700
cmpl $0x0, %eax
jne 0x11a92
jmp 0x11a7e
movslq 0x14(%rsp), %rax
orq $0x20000000, %rax       # imm = 0x20000000
movl %eax, 0x14(%rsp)
jmp 0x11ba4
movq 0x18(%rsp), %rdi
leaq 0x9604(%rip), %rsi      # 0x1b0a2
callq 0x7700
cmpl $0x0, %eax
jne 0x11aba
jmp 0x11aaa
movl 0x14(%rsp), %eax
orl $0x0, %eax
movl %eax, 0x14(%rsp)
jmp 0x11ba4
movq 0x18(%rsp), %rdi
leaq 0x95ab(%rip), %rsi      # 0x1b071
callq 0x7700
cmpl $0x0, %eax
jne 0x11ae4
jmp 0x11ad2
movl 0x14(%rsp), %eax
orl $0x10000, %eax          # imm = 0x10000
movl %eax, 0x14(%rsp)
jmp 0x11ba4
movq 0x18(%rsp), %rdi
leaq 0x958e(%rip), %rsi      # 0x1b07e
callq 0x7700
cmpl $0x0, %eax
jne 0x11b0e
jmp 0x11afc
movl 0x14(%rsp), %eax
orl $0x20000, %eax          # imm = 0x20000
movl %eax, 0x14(%rsp)
jmp 0x11ba4
movq 0x18(%rsp), %rdi
leaq 0x9570(%rip), %rsi      # 0x1b08a
callq 0x7700
cmpl $0x0, %eax
jne 0x11b35
jmp 0x11b26
movl 0x14(%rsp), %eax
orl $0x30000, %eax          # imm = 0x30000
movl %eax, 0x14(%rsp)
jmp 0x11ba4
movq 0x18(%rsp), %rdi
leaq 0x9554(%rip), %rsi      # 0x1b095
callq 0x7700
cmpl $0x0, %eax
jne 0x11b5c
jmp 0x11b4d
movl 0x14(%rsp), %eax
orl $0x40000, %eax          # imm = 0x40000
movl %eax, 0x14(%rsp)
jmp 0x11ba4
movq 0x28(%rsp), %rax
movq %rax, 0x8(%rsp)
movl 0x24(%rsp), %eax
addl $-0x1, %eax
movl %eax, 0x10(%rsp)
movl %eax, 0x24(%rsp)
movq 0x28(%rsp), %rdi
movq 0x18(%rsp), %rdx
leaq 0x7a16(%rip), %rsi      # 0x1959c
movb $0x0, %al
callq 0x7690
movq 0x8(%rsp), %rdi
movl 0x10(%rsp), %esi
movq %rax, %rdx
callq 0x7260
movl %eax, 0x34(%rsp)
jmp 0x11bb1
jmp 0x11755
movl 0x14(%rsp), %eax
movl %eax, 0x34(%rsp)
movl 0x34(%rsp), %eax
addq $0x38, %rsp
retq
nopw (%rax,%rax)