// File: /workspace/github_c_makefile_star2_O0/azhai[P]mlite/mlite.c
// Function: keyword
int keyword(char *s) {
	switch (*s) {
	case '<':	if (!strcmp(s, "<<")) return TOK_TO;
			return UNDEFINED;
	case '>':	if (!strcmp(s, ">>")) return TOK_FROM;
			return UNDEFINED;
	case 'a':	if (!strcmp(s, "also")) return TOK_ALSO;
			if (!strcmp(s, "and")) return TOK_AND;
			return UNDEFINED;
	case 'c':	if (!strcmp(s, "case")) return TOK_CASE;
			if (!strcmp(s, "compile")) return TOK_COMPILE;
			return UNDEFINED;
	case 'e':	if (!strcmp(s, "else")) return TOK_ELSE;
			if (!strcmp(s, "end")) return TOK_END;
			if (!strcmp(s, "eval")) return TOK_EVAL;
			if (!strcmp(s, "exception")) return TOK_EXCEPTION;
			return UNDEFINED;
	case 'f':	if (!strcmp(s, "fn")) return TOK_FN;
			if (!strcmp(s, "fun")) return TOK_FUN;
			return UNDEFINED;
	case 'h':	if (!strcmp(s, "handle")) return TOK_HANDLE;
			return UNDEFINED;
	case 'i':	if (!strcmp(s, "if")) return TOK_IF;
			if (!strcmp(s, "in")) return TOK_IN;
			if (!strcmp(s, "infix")) return TOK_INFIX;
			if (!strcmp(s, "infixr")) return TOK_INFIXR;
			return UNDEFINED;
	case 'l':	if (!strcmp(s, "let")) return TOK_LET;
			if (!strcmp(s, "local")) return TOK_LOCAL;
			return UNDEFINED;
	case 'n':	if (!strcmp(s, "nonfix")) return TOK_NONFIX;
			return UNDEFINED;
	case 'o':	if (!strcmp(s, "of")) return TOK_OF;
			if (!strcmp(s, "op")) return TOK_OP;
			if (!strcmp(s, "or")) return TOK_OR;
			return UNDEFINED;
	case 'r':	if (!strcmp(s, "raise")) return TOK_RAISE;
			return UNDEFINED;
	case 't':	if (!strcmp(s, "then")) return TOK_THEN;
			if (!strcmp(s, "type")) return TOK_TYPE;
			return UNDEFINED;
	case 'v':	if (!strcmp(s, "val")) return TOK_VAL;
			return UNDEFINED;
	case 'w':	if (!strcmp(s, "where")) return TOK_WHERE;
			return UNDEFINED;
	default:	return UNDEFINED;
	}
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x20, %rsp
movq %rdi, -0x10(%rbp)
movq -0x10(%rbp), %rax
movsbl (%rax), %eax
addl $-0x3c, %eax
movl %eax, %ecx
movq %rcx, -0x18(%rbp)
subl $0x3b, %eax
ja 0xcb84
movq -0x18(%rbp), %rax
leaq 0x138c4(%rip), %rcx     # 0x20004
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
movq -0x10(%rbp), %rdi
leaq 0x14013(%rip), %rsi     # 0x20767
callq 0x3120
cmpl $0x0, %eax
jne 0xc76a
movl $0xffffff93, -0x4(%rbp) # imm = 0xFFFFFF93
jmp 0xcb8b
movl $0xfffffffb, -0x4(%rbp) # imm = 0xFFFFFFFB
jmp 0xcb8b
movq -0x10(%rbp), %rdi
leaq 0x13fe9(%rip), %rsi     # 0x2076a
callq 0x3120
cmpl $0x0, %eax
jne 0xc797
movl $0xffffff94, -0x4(%rbp) # imm = 0xFFFFFF94
jmp 0xcb8b
movl $0xfffffffb, -0x4(%rbp) # imm = 0xFFFFFFFB
jmp 0xcb8b
movq -0x10(%rbp), %rdi
leaq 0x13fbf(%rip), %rsi     # 0x2076d
callq 0x3120
cmpl $0x0, %eax
jne 0xc7c4
movl $0xffffff38, -0x4(%rbp) # imm = 0xFFFFFF38
jmp 0xcb8b
movq -0x10(%rbp), %rdi
leaq 0x13fa3(%rip), %rsi     # 0x20772
callq 0x3120
cmpl $0x0, %eax
jne 0xc7e5
movl $0xffffff37, -0x4(%rbp) # imm = 0xFFFFFF37
jmp 0xcb8b
movl $0xfffffffb, -0x4(%rbp) # imm = 0xFFFFFFFB
jmp 0xcb8b
movq -0x10(%rbp), %rdi
leaq 0x14365(%rip), %rsi     # 0x20b61
callq 0x3120
cmpl $0x0, %eax
jne 0xc812
movl $0xffffff35, -0x4(%rbp) # imm = 0xFFFFFF35
jmp 0xcb8b
movq -0x10(%rbp), %rdi
leaq 0x13f59(%rip), %rsi     # 0x20776
callq 0x3120
cmpl $0x0, %eax
jne 0xc833
movl $0xffffff34, -0x4(%rbp) # imm = 0xFFFFFF34
jmp 0xcb8b
movl $0xfffffffb, -0x4(%rbp) # imm = 0xFFFFFFFB
jmp 0xcb8b
movq -0x10(%rbp), %rdi
leaq 0x13f34(%rip), %rsi     # 0x2077e
callq 0x3120
cmpl $0x0, %eax
jne 0xc860
movl $0xffffff33, -0x4(%rbp) # imm = 0xFFFFFF33
jmp 0xcb8b
movq -0x10(%rbp), %rdi
leaq 0x13f18(%rip), %rsi     # 0x20783
callq 0x3120
cmpl $0x0, %eax
jne 0xc881
movl $0xffffff32, -0x4(%rbp) # imm = 0xFFFFFF32
jmp 0xcb8b
movq -0x10(%rbp), %rdi
leaq 0x13efb(%rip), %rsi     # 0x20787
callq 0x3120
cmpl $0x0, %eax
jne 0xc8a2
movl $0xffffff31, -0x4(%rbp) # imm = 0xFFFFFF31
jmp 0xcb8b
movq -0x10(%rbp), %rdi
leaq 0x1498d(%rip), %rsi     # 0x2123a
callq 0x3120
cmpl $0x0, %eax
jne 0xc8c3
movl $0xffffff30, -0x4(%rbp) # imm = 0xFFFFFF30
jmp 0xcb8b
movl $0xfffffffb, -0x4(%rbp) # imm = 0xFFFFFFFB
jmp 0xcb8b
movq -0x10(%rbp), %rdi
leaq 0x13de2(%rip), %rsi     # 0x206bc
callq 0x3120
cmpl $0x0, %eax
jne 0xc8f0
movl $0xffffff2f, -0x4(%rbp) # imm = 0xFFFFFF2F
jmp 0xcb8b
movq -0x10(%rbp), %rdi
leaq 0x13e91(%rip), %rsi     # 0x2078c
callq 0x3120
cmpl $0x0, %eax
jne 0xc911
movl $0xffffff2e, -0x4(%rbp) # imm = 0xFFFFFF2E
jmp 0xcb8b
movl $0xfffffffb, -0x4(%rbp) # imm = 0xFFFFFFFB
jmp 0xcb8b
movq -0x10(%rbp), %rdi
leaq 0x13e68(%rip), %rsi     # 0x20790
callq 0x3120
cmpl $0x0, %eax
jne 0xc93e
movl $0xffffff2d, -0x4(%rbp) # imm = 0xFFFFFF2D
jmp 0xcb8b
movl $0xfffffffb, -0x4(%rbp) # imm = 0xFFFFFFFB
jmp 0xcb8b
movq -0x10(%rbp), %rdi
leaq 0x13e42(%rip), %rsi     # 0x20797
callq 0x3120
cmpl $0x0, %eax
jne 0xc96b
movl $0xffffff2c, -0x4(%rbp) # imm = 0xFFFFFF2C
jmp 0xcb8b
movq -0x10(%rbp), %rdi
leaq 0x14bec(%rip), %rsi     # 0x21562
callq 0x3120
cmpl $0x0, %eax
jne 0xc98c
movl $0xffffff2b, -0x4(%rbp) # imm = 0xFFFFFF2B
jmp 0xcb8b
movq -0x10(%rbp), %rdi
leaq 0x13e03(%rip), %rsi     # 0x2079a
callq 0x3120
cmpl $0x0, %eax
jne 0xc9ad
movl $0xffffff2a, -0x4(%rbp) # imm = 0xFFFFFF2A
jmp 0xcb8b
movq -0x10(%rbp), %rdi
leaq 0x13de8(%rip), %rsi     # 0x207a0
callq 0x3120
cmpl $0x0, %eax
jne 0xc9ce
movl $0xffffff29, -0x4(%rbp) # imm = 0xFFFFFF29
jmp 0xcb8b
movl $0xfffffffb, -0x4(%rbp) # imm = 0xFFFFFFFB
jmp 0xcb8b
movq -0x10(%rbp), %rdi
leaq 0x13dc2(%rip), %rsi     # 0x207a7
callq 0x3120
cmpl $0x0, %eax
jne 0xc9fb
movl $0xffffff28, -0x4(%rbp) # imm = 0xFFFFFF28
jmp 0xcb8b
movq -0x10(%rbp), %rdi
leaq 0x13da5(%rip), %rsi     # 0x207ab
callq 0x3120
cmpl $0x0, %eax
jne 0xca1c
movl $0xffffff27, -0x4(%rbp) # imm = 0xFFFFFF27
jmp 0xcb8b
movl $0xfffffffb, -0x4(%rbp) # imm = 0xFFFFFFFB
jmp 0xcb8b
movq -0x10(%rbp), %rdi
leaq 0x13d7e(%rip), %rsi     # 0x207b1
callq 0x3120
cmpl $0x0, %eax
jne 0xca49
movl $0xffffff26, -0x4(%rbp) # imm = 0xFFFFFF26
jmp 0xcb8b
movl $0xfffffffb, -0x4(%rbp) # imm = 0xFFFFFFFB
jmp 0xcb8b
movq -0x10(%rbp), %rdi
leaq 0x146d1(%rip), %rsi     # 0x21131
callq 0x3120
cmpl $0x0, %eax
jne 0xca76
movl $0xffffff25, -0x4(%rbp) # imm = 0xFFFFFF25
jmp 0xcb8b
movq -0x10(%rbp), %rdi
leaq 0x13d37(%rip), %rsi     # 0x207b8
callq 0x3120
cmpl $0x0, %eax
jne 0xca97
movl $0xffffff24, -0x4(%rbp) # imm = 0xFFFFFF24
jmp 0xcb8b
movq -0x10(%rbp), %rdi
leaq 0x1469d(%rip), %rsi     # 0x2113f
callq 0x3120
cmpl $0x0, %eax
jne 0xcab8
movl $0xffffff23, -0x4(%rbp) # imm = 0xFFFFFF23
jmp 0xcb8b
movl $0xfffffffb, -0x4(%rbp) # imm = 0xFFFFFFFB
jmp 0xcb8b
movq -0x10(%rbp), %rdi
leaq 0x14acc(%rip), %rsi     # 0x2159b
callq 0x3120
cmpl $0x0, %eax
jne 0xcae5
movl $0xffffff22, -0x4(%rbp) # imm = 0xFFFFFF22
jmp 0xcb8b
movl $0xfffffffb, -0x4(%rbp) # imm = 0xFFFFFFFB
jmp 0xcb8b
movq -0x10(%rbp), %rdi
leaq 0x13cbf(%rip), %rsi     # 0x207bb
callq 0x3120
cmpl $0x0, %eax
jne 0xcb0f
movl $0xffffff20, -0x4(%rbp) # imm = 0xFFFFFF20
jmp 0xcb8b
movq -0x10(%rbp), %rdi
leaq 0x14a67(%rip), %rsi     # 0x21581
callq 0x3120
cmpl $0x0, %eax
jne 0xcb2d
movl $0xffffff1f, -0x4(%rbp) # imm = 0xFFFFFF1F
jmp 0xcb8b
movl $0xfffffffb, -0x4(%rbp) # imm = 0xFFFFFFFB
jmp 0xcb8b
movq -0x10(%rbp), %rdi
leaq 0x13c47(%rip), %rsi     # 0x20788
callq 0x3120
cmpl $0x0, %eax
jne 0xcb54
movl $0xffffff1e, -0x4(%rbp) # imm = 0xFFFFFF1E
jmp 0xcb8b
movl $0xfffffffb, -0x4(%rbp) # imm = 0xFFFFFFFB
jmp 0xcb8b
movq -0x10(%rbp), %rdi
leaq 0x13c58(%rip), %rsi     # 0x207c0
callq 0x3120
cmpl $0x0, %eax
jne 0xcb7b
movl $0xffffff1d, -0x4(%rbp) # imm = 0xFFFFFF1D
jmp 0xcb8b
movl $0xfffffffb, -0x4(%rbp) # imm = 0xFFFFFFFB
jmp 0xcb8b
movl $0xfffffffb, -0x4(%rbp) # imm = 0xFFFFFFFB
movl -0x4(%rbp), %eax
addq $0x20, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)