// File: /workspace/github_c_makefile_star2_O3/anuwu[P]ERPLAG-Compiler/lexer.c
// Function: keywordToTokenID
tokenID keywordToTokenID (char *str)
{
	tokenID id ;
	if (strcmp(str,"integer")==0)
		id = TK_INTEGER ;
	else if (strcmp(str, "real")==0)
		id = TK_REAL ;
	else if (strcmp(str, "boolean")==0)
		id = TK_BOOLEAN ;
	else if (strcmp(str, "of")==0)
		id = TK_OF ;
	else if (strcmp(str, "array")==0)
		id = TK_ARRAY ;
	else if (strcmp(str, "start")==0)
		id = TK_START ;
	else if (strcmp(str, "end")==0)
		id = TK_END ;
	else if (strcmp(str, "declare")==0)
		id = TK_DECLARE ;
	else if (strcmp(str, "module")==0)
		id = TK_MODULE ;
	else if (strcmp(str, "driver")==0)
		id = TK_DRIVER ;
	else if (strcmp(str, "program")==0)
		id = TK_PROGRAM ;
	else if (strcmp(str, "get_value")==0)
		id = TK_GET_VALUE ;
	else if (strcmp(str, "print")==0)
		id = TK_PRINT ;
	else if (strcmp(str, "use")==0)
		id = TK_USE ;
	else if (strcmp(str, "with")==0)
		id = TK_WITH ;
	else if (strcmp(str, "parameters")==0)
		id = TK_PARAMETERS ;
	else if (strcmp(str, "true")==0)
		id = TK_TRUE ;
	else if (strcmp(str, "false")==0)
		id = TK_FALSE ;
	else if (strcmp(str, "takes")==0)
		id = TK_TAKES ;
	else if (strcmp(str, "input")==0)
		id = TK_INPUT ;
	else if (strcmp(str, "returns")==0)
		id = TK_RETURNS ;
	else if (strcmp(str, "AND")==0)
		id = TK_AND ;
	else if (strcmp(str, "OR")==0)
		id = TK_OR ;
	else if (strcmp(str, "for")==0)
		id = TK_FOR ;
	else if (strcmp(str, "in")==0)
		id = TK_IN ;
	else if (strcmp(str, "switch")==0)
		id = TK_SWITCH ;
	else if (strcmp(str, "case")==0)
		id = TK_CASE ;
	else if (strcmp(str, "break")==0)
		id = TK_BREAK ;
	else if (strcmp(str, "default")==0)
		id = TK_DEFAULT ;
	else if (strcmp(str, "while")==0)
		id = TK_WHILE ;
	else
		return (tokenID)-1 ;
 
	
	return id ;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %r14
pushq %rbx
movq %rdi, %rbx
leaq 0x9e93(%rip), %rsi      # 0x10e18
callq 0x10f0
testl %eax, %eax
je 0x71ad
leaq 0x9e87(%rip), %rsi      # 0x10e20
movq %rbx, %rdi
callq 0x10f0
testl %eax, %eax
je 0x71b7
leaq 0x9e75(%rip), %rsi      # 0x10e25
movq %rbx, %rdi
callq 0x10f0
testl %eax, %eax
je 0x71c1
movb (%rbx), %r14b
cmpb $0x6f, %r14b
jne 0x6fd9
cmpb $0x66, 0x1(%rbx)
jne 0x6fd9
cmpb $0x0, 0x2(%rbx)
je 0x71e9
leaq 0x8deb(%rip), %rsi      # 0xfdcb
movq %rbx, %rdi
callq 0x10f0
testl %eax, %eax
je 0x71cb
leaq 0x9e36(%rip), %rsi      # 0x10e2d
movq %rbx, %rdi
callq 0x10f0
testl %eax, %eax
je 0x71d5
leaq 0x9e25(%rip), %rsi      # 0x10e33
movq %rbx, %rdi
callq 0x10f0
testl %eax, %eax
je 0x71df
leaq 0x9e12(%rip), %rsi      # 0x10e37
movq %rbx, %rdi
callq 0x10f0
testl %eax, %eax
je 0x71f3
leaq 0x9e03(%rip), %rsi      # 0x10e3f
movq %rbx, %rdi
callq 0x10f0
testl %eax, %eax
je 0x71fd
leaq 0x9df3(%rip), %rsi      # 0x10e46
movq %rbx, %rdi
callq 0x10f0
testl %eax, %eax
je 0x7207
leaq 0x9de3(%rip), %rsi      # 0x10e4d
movq %rbx, %rdi
callq 0x10f0
testl %eax, %eax
je 0x7211
leaq 0x8580(%rip), %rsi      # 0xf601
movq %rbx, %rdi
callq 0x10f0
testl %eax, %eax
je 0x721b
leaq 0x9dbd(%rip), %rsi      # 0x10e55
movq %rbx, %rdi
callq 0x10f0
testl %eax, %eax
je 0x7225
leaq 0x9dac(%rip), %rsi      # 0x10e5b
movq %rbx, %rdi
callq 0x10f0
testl %eax, %eax
je 0x722f
leaq 0x9d99(%rip), %rsi      # 0x10e5f
movq %rbx, %rdi
callq 0x10f0
testl %eax, %eax
je 0x7239
leaq 0x9d87(%rip), %rsi      # 0x10e64
movq %rbx, %rdi
callq 0x10f0
testl %eax, %eax
je 0x7243
leaq 0x9d7b(%rip), %rsi      # 0x10e6f
movq %rbx, %rdi
callq 0x10f0
testl %eax, %eax
je 0x724d
leaq 0x9d69(%rip), %rsi      # 0x10e74
movq %rbx, %rdi
callq 0x10f0
testl %eax, %eax
je 0x7257
leaq 0x9d58(%rip), %rsi      # 0x10e7a
movq %rbx, %rdi
callq 0x10f0
testl %eax, %eax
je 0x7261
leaq 0x9d47(%rip), %rsi      # 0x10e80
movq %rbx, %rdi
callq 0x10f0
testl %eax, %eax
je 0x726b
leaq 0x9d36(%rip), %rsi      # 0x10e86
movq %rbx, %rdi
callq 0x10f0
testl %eax, %eax
je 0x7275
leaq 0xa0f5(%rip), %rsi      # 0x1125c
movq %rbx, %rdi
callq 0x10f0
testl %eax, %eax
je 0x727f
cmpb $0x4f, %r14b
jne 0x7289
cmpb $0x52, 0x1(%rbx)
jne 0x7191
cmpb $0x0, 0x2(%rbx)
je 0x732f
leaq 0x9cf6(%rip), %rsi      # 0x10e8e
movq %rbx, %rdi
callq 0x10f0
testl %eax, %eax
jne 0x72b2
jmp 0x731a
movl $0x37, %eax
jmp 0x7349
movl $0x38, %eax
jmp 0x7349
movl $0x39, %eax
jmp 0x7349
movl $0x3b, %eax
jmp 0x7349
movl $0x3c, %eax
jmp 0x7349
movl $0x3d, %eax
jmp 0x7349
movl $0x3a, %eax
jmp 0x7349
movl $0x3e, %eax
jmp 0x7349
movl $0x3f, %eax
jmp 0x7349
movl $0x41, %eax
jmp 0x7349
movl $0x42, %eax
jmp 0x7349
movl $0x43, %eax
jmp 0x7349
movl $0x44, %eax
jmp 0x7349
movl $0x45, %eax
jmp 0x7349
movl $0x46, %eax
jmp 0x7349
movl $0x47, %eax
jmp 0x7349
movl $0x48, %eax
jmp 0x7349
movl $0x49, %eax
jmp 0x7349
movl $0x4a, %eax
jmp 0x7349
movl $0x4c, %eax
jmp 0x7349
movl $0x4d, %eax
jmp 0x7349
movl $0x4e, %eax
jmp 0x7349
leaq 0x9bfe(%rip), %rsi      # 0x10e8e
movq %rbx, %rdi
callq 0x10f0
testl %eax, %eax
je 0x731a
cmpb $0x69, %r14b
jne 0x72b2
cmpb $0x6e, 0x1(%rbx)
jne 0x72b2
cmpb $0x0, 0x2(%rbx)
je 0x7344
leaq 0x8825(%rip), %rsi      # 0xfade
movq %rbx, %rdi
callq 0x10f0
testl %eax, %eax
je 0x7321
leaq 0x86ee(%rip), %rsi      # 0xf9ba
movq %rbx, %rdi
callq 0x10f0
testl %eax, %eax
je 0x7328
leaq 0x9bb3(%rip), %rsi      # 0x10e92
movq %rbx, %rdi
callq 0x10f0
testl %eax, %eax
je 0x7336
leaq 0x9ba6(%rip), %rsi      # 0x10e98
movq %rbx, %rdi
callq 0x10f0
testl %eax, %eax
je 0x733d
leaq 0x9b9b(%rip), %rsi      # 0x10ea0
movq %rbx, %rdi
callq 0x10f0
movl %eax, %ecx
xorl %eax, %eax
negl %ecx
sbbl %eax, %eax
orl $0x56, %eax
jmp 0x7349
movl $0x50, %eax
jmp 0x7349
movl $0x52, %eax
jmp 0x7349
movl $0x53, %eax
jmp 0x7349
movl $0x4f, %eax
jmp 0x7349
movl $0x54, %eax
jmp 0x7349
movl $0x55, %eax
jmp 0x7349
movl $0x51, %eax
popq %rbx
popq %r14
popq %rbp
retq