// File: /workspace/github_c_makefile_star2_O0/generot[P]VM-0/src/lang/util.cc
// Function: match_comp(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>)
opcode match_comp(string strrep) {
    string comps[] = { ">", "<", ">=", "<=", "==", "!=" };

    for(int i = 0; i < 6; i++) {
        if(strrep == comps[i])
            return opcode(OPC_GT + i);
    }

    return OPC_INVALID;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x190, %rsp            # imm = 0x190
movq %rdi, -0x118(%rbp)
movq %rdi, -0x10(%rbp)
movb $0x1, -0xf2(%rbp)
leaq -0xd0(%rbp), %rax
movq %rax, -0x110(%rbp)
movq %rax, -0xd8(%rbp)
leaq -0xd9(%rbp), %rdi
movq %rdi, -0x108(%rbp)
callq 0x56e0
movq -0x110(%rbp), %rdi
movq -0x108(%rbp), %rdx
leaq 0x332d7(%rip), %rsi     # 0x391a1
callq 0x6b50
jmp 0x5ed1
leaq -0xb0(%rbp), %rax
movq %rax, -0x128(%rbp)
movq %rax, -0xd8(%rbp)
leaq -0xed(%rbp), %rdi
movq %rdi, -0x120(%rbp)
callq 0x56e0
movq -0x128(%rbp), %rdi
movq -0x120(%rbp), %rdx
leaq 0x33295(%rip), %rsi     # 0x391a3
callq 0x6b50
jmp 0x5f15
leaq -0x90(%rbp), %rax
movq %rax, -0x138(%rbp)
movq %rax, -0xd8(%rbp)
leaq -0xee(%rbp), %rdi
movq %rdi, -0x130(%rbp)
callq 0x56e0
movq -0x138(%rbp), %rdi
movq -0x130(%rbp), %rdx
leaq 0x33253(%rip), %rsi     # 0x391a5
callq 0x6b50
jmp 0x5f59
leaq -0x70(%rbp), %rax
movq %rax, -0x148(%rbp)
movq %rax, -0xd8(%rbp)
leaq -0xef(%rbp), %rdi
movq %rdi, -0x140(%rbp)
callq 0x56e0
movq -0x148(%rbp), %rdi
movq -0x140(%rbp), %rdx
leaq 0x33215(%rip), %rsi     # 0x391a8
callq 0x6b50
jmp 0x5f9a
leaq -0x50(%rbp), %rax
movq %rax, -0x158(%rbp)
movq %rax, -0xd8(%rbp)
leaq -0xf0(%rbp), %rdi
movq %rdi, -0x150(%rbp)
callq 0x56e0
movq -0x158(%rbp), %rdi
movq -0x150(%rbp), %rdx
leaq 0x331d7(%rip), %rsi     # 0x391ab
callq 0x6b50
jmp 0x5fdb
leaq -0x30(%rbp), %rax
movq %rax, -0x168(%rbp)
movq %rax, -0xd8(%rbp)
leaq -0xf1(%rbp), %rdi
movq %rdi, -0x160(%rbp)
callq 0x56e0
movq -0x168(%rbp), %rdi
movq -0x160(%rbp), %rdx
leaq 0x33199(%rip), %rsi     # 0x391ae
callq 0x6b50
jmp 0x601c
movb $0x0, -0xf2(%rbp)
leaq -0xf1(%rbp), %rdi
callq 0x5460
leaq -0xf0(%rbp), %rdi
callq 0x5460
leaq -0xef(%rbp), %rdi
callq 0x5460
leaq -0xee(%rbp), %rdi
callq 0x5460
leaq -0xed(%rbp), %rdi
callq 0x5460
leaq -0xd9(%rbp), %rdi
callq 0x5460
movl $0x0, -0xf8(%rbp)
cmpl $0x6, -0xf8(%rbp)
jge 0x61f8
movq -0x118(%rbp), %rdi
movslq -0xf8(%rbp), %rax
leaq -0xd0(%rbp), %rsi
shlq $0x5, %rax
addq %rax, %rsi
callq 0x6d10
testb $0x1, %al
jne 0x60ac
jmp 0x61e2
movl -0xf8(%rbp), %eax
addl $0x1a, %eax
movl %eax, -0x4(%rbp)
movl $0x1, -0xfc(%rbp)
jmp 0x6209
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xe8(%rbp)
movl %eax, -0xec(%rbp)
jmp 0x617c
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xe8(%rbp)
movl %eax, -0xec(%rbp)
jmp 0x6170
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xe8(%rbp)
movl %eax, -0xec(%rbp)
jmp 0x6164
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xe8(%rbp)
movl %eax, -0xec(%rbp)
jmp 0x6158
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xe8(%rbp)
movl %eax, -0xec(%rbp)
jmp 0x614c
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xe8(%rbp)
movl %eax, -0xec(%rbp)
leaq -0xf1(%rbp), %rdi
callq 0x5460
leaq -0xf0(%rbp), %rdi
callq 0x5460
leaq -0xef(%rbp), %rdi
callq 0x5460
leaq -0xee(%rbp), %rdi
callq 0x5460
leaq -0xed(%rbp), %rdi
callq 0x5460
leaq -0xd9(%rbp), %rdi
callq 0x5460
testb $0x1, -0xf2(%rbp)
jne 0x6193
jmp 0x61e0
movq -0xd8(%rbp), %rax
leaq -0xd0(%rbp), %rcx
cmpq %rax, %rcx
movq %rax, -0x170(%rbp)
je 0x61de
movq -0x170(%rbp), %rdi
addq $-0x20, %rdi
movq %rdi, -0x178(%rbp)
callq 0x5260
movq -0x178(%rbp), %rax
leaq -0xd0(%rbp), %rcx
cmpq %rcx, %rax
movq %rax, -0x170(%rbp)
jne 0x61ad
jmp 0x61e0
jmp 0x6261
jmp 0x61e4
movl -0xf8(%rbp), %eax
addl $0x1, %eax
movl %eax, -0xf8(%rbp)
jmp 0x6075
movl $0x26, -0x4(%rbp)
movl $0x1, -0xfc(%rbp)
leaq -0xd0(%rbp), %rax
movq %rax, -0x188(%rbp)
addq $0xc0, %rax
movq %rax, -0x180(%rbp)
movq -0x180(%rbp), %rdi
addq $-0x20, %rdi
movq %rdi, -0x190(%rbp)
callq 0x5260
movq -0x188(%rbp), %rcx
movq -0x190(%rbp), %rax
cmpq %rcx, %rax
movq %rax, -0x180(%rbp)
jne 0x6224
movl -0x4(%rbp), %eax
addq $0x190, %rsp            # imm = 0x190
popq %rbp
retq
movq -0xe8(%rbp), %rdi
callq 0x56d0
nopl (%rax)