// File: /workspace/github_c_makefile_star2_O0/zenkj[P]luajit-arm64/src/host/minilua.c
// Function: llex
static int llex(LexState*ls,SemInfo*seminfo){
luaZ_resetbuffer(ls->buff);
for(;;){
switch(ls->current){
case'\n':
case'\r':{
inclinenumber(ls);
continue;
}
case'-':{
next(ls);
if(ls->current!='-')return'-';
next(ls);
if(ls->current=='['){
int sep=skip_sep(ls);
luaZ_resetbuffer(ls->buff);
if(sep>=0){
read_long_string(ls,NULL,sep);
luaZ_resetbuffer(ls->buff);
continue;
}
}
while(!currIsNewline(ls)&&ls->current!=(-1))
next(ls);
continue;
}
case'[':{
int sep=skip_sep(ls);
if(sep>=0){
read_long_string(ls,seminfo,sep);
return TK_STRING;
}
else if(sep==-1)return'[';
else luaX_lexerror(ls,"invalid long string delimiter",TK_STRING);
}
case'=':{
next(ls);
if(ls->current!='=')return'=';
else{next(ls);return TK_EQ;}
}
case'<':{
next(ls);
if(ls->current!='=')return'<';
else{next(ls);return TK_LE;}
}
case'>':{
next(ls);
if(ls->current!='=')return'>';
else{next(ls);return TK_GE;}
}
case'~':{
next(ls);
if(ls->current!='=')return'~';
else{next(ls);return TK_NE;}
}
case'"':
case'\'':{
read_string(ls,ls->current,seminfo);
return TK_STRING;
}
case'.':{
save_and_next(ls);
if(check_next(ls,".")){
if(check_next(ls,"."))
return TK_DOTS;
else return TK_CONCAT;
}
else if(!isdigit(ls->current))return'.';
else{
read_numeral(ls,seminfo);
return TK_NUMBER;
}
}
case(-1):{
return TK_EOS;
}
default:{
if(isspace(ls->current)){
next(ls);
continue;
}
else if(isdigit(ls->current)){
read_numeral(ls,seminfo);
return TK_NUMBER;
}
else if(isalpha(ls->current)||ls->current=='_'){
TString*ts;
do{
save_and_next(ls);
}while(isalnum(ls->current)||ls->current=='_');
ts=luaX_newstring(ls,luaZ_buffer(ls->buff),
luaZ_bufflen(ls->buff));
if(ts->tsv.reserved>0)
return ts->tsv.reserved-1+257;
else{
seminfo->ts=ts;
return TK_NAME;
}
}
else{
int c=ls->current;
next(ls);
return c;
}
}
}
}
}

// Assembly:
subq $0x78, %rsp
movq %rdi, 0x68(%rsp)
movq %rsi, 0x60(%rsp)
movq 0x68(%rsp), %rax
movq 0x48(%rax), %rax
movq $0x0, 0x8(%rax)
movq 0x68(%rsp), %rax
movl (%rax), %eax
movl %eax, 0x48(%rsp)
subl $-0x1, %eax
je 0x130ea
jmp 0x12995
movl 0x48(%rsp), %eax
subl $0xa, %eax
je 0x12a39
jmp 0x129a4
movl 0x48(%rsp), %eax
subl $0xd, %eax
je 0x12a39
jmp 0x129b3
movl 0x48(%rsp), %eax
subl $0x22, %eax
je 0x12fcf
jmp 0x129c2
movl 0x48(%rsp), %eax
subl $0x27, %eax
je 0x12fcf
jmp 0x129d1
movl 0x48(%rsp), %eax
subl $0x2d, %eax
je 0x12a48
jmp 0x129dc
movl 0x48(%rsp), %eax
subl $0x2e, %eax
je 0x12ff2
jmp 0x129eb
movl 0x48(%rsp), %eax
subl $0x3c, %eax
je 0x12d47
jmp 0x129fa
movl 0x48(%rsp), %eax
subl $0x3d, %eax
je 0x12c6f
jmp 0x12a09
movl 0x48(%rsp), %eax
subl $0x3e, %eax
je 0x12e1f
jmp 0x12a18
movl 0x48(%rsp), %eax
subl $0x5b, %eax
je 0x12c0c
jmp 0x12a27
movl 0x48(%rsp), %eax
subl $0x7e, %eax
je 0x12ef7
jmp 0x130f7
movq 0x68(%rsp), %rdi
callq 0x13370
jmp 0x1297f
movq 0x68(%rsp), %rax
movq 0x40(%rax), %rcx
movq (%rcx), %rax
movq %rax, %rdx
addq $-0x1, %rdx
movq %rdx, (%rcx)
cmpq $0x0, %rax
jbe 0x12a85
movq 0x68(%rsp), %rax
movq 0x40(%rax), %rcx
movq 0x8(%rcx), %rax
movq %rax, %rdx
addq $0x1, %rdx
movq %rdx, 0x8(%rcx)
movzbl (%rax), %eax
movl %eax, 0x44(%rsp)
jmp 0x12a97
movq 0x68(%rsp), %rax
movq 0x40(%rax), %rdi
callq 0x12790
movl %eax, 0x44(%rsp)
movl 0x44(%rsp), %ecx
movq 0x68(%rsp), %rax
movl %ecx, (%rax)
movq 0x68(%rsp), %rax
cmpl $0x2d, (%rax)
je 0x12ab9
movl $0x2d, 0x74(%rsp)
jmp 0x13358
movq 0x68(%rsp), %rax
movq 0x40(%rax), %rcx
movq (%rcx), %rax
movq %rax, %rdx
addq $-0x1, %rdx
movq %rdx, (%rcx)
cmpq $0x0, %rax
jbe 0x12af6
movq 0x68(%rsp), %rax
movq 0x40(%rax), %rcx
movq 0x8(%rcx), %rax
movq %rax, %rdx
addq $0x1, %rdx
movq %rdx, 0x8(%rcx)
movzbl (%rax), %eax
movl %eax, 0x40(%rsp)
jmp 0x12b08
movq 0x68(%rsp), %rax
movq 0x40(%rax), %rdi
callq 0x12790
movl %eax, 0x40(%rsp)
movl 0x40(%rsp), %ecx
movq 0x68(%rsp), %rax
movl %ecx, (%rax)
movq 0x68(%rsp), %rax
cmpl $0x5b, (%rax)
jne 0x12b6d
movq 0x68(%rsp), %rdi
callq 0x13490
movl %eax, 0x5c(%rsp)
movq 0x68(%rsp), %rax
movq 0x48(%rax), %rax
movq $0x0, 0x8(%rax)
cmpl $0x0, 0x5c(%rsp)
jl 0x12b6b
movq 0x68(%rsp), %rdi
movl 0x5c(%rsp), %edx
xorl %eax, %eax
movl %eax, %esi
callq 0x135d0
movq 0x68(%rsp), %rax
movq 0x48(%rax), %rax
movq $0x0, 0x8(%rax)
jmp 0x1297f
jmp 0x12b6d
jmp 0x12b6f
movq 0x68(%rsp), %rcx
xorl %eax, %eax
cmpl $0xa, (%rcx)
movb %al, 0x3f(%rsp)
je 0x12b9e
movq 0x68(%rsp), %rcx
xorl %eax, %eax
cmpl $0xd, (%rcx)
movb %al, 0x3f(%rsp)
je 0x12b9e
movq 0x68(%rsp), %rax
cmpl $-0x1, (%rax)
setne %al
movb %al, 0x3f(%rsp)
movb 0x3f(%rsp), %al
testb $0x1, %al
jne 0x12ba8
jmp 0x12c07
movq 0x68(%rsp), %rax
movq 0x40(%rax), %rcx
movq (%rcx), %rax
movq %rax, %rdx
addq $-0x1, %rdx
movq %rdx, (%rcx)
cmpq $0x0, %rax
jbe 0x12be5
movq 0x68(%rsp), %rax
movq 0x40(%rax), %rcx
movq 0x8(%rcx), %rax
movq %rax, %rdx
addq $0x1, %rdx
movq %rdx, 0x8(%rcx)
movzbl (%rax), %eax
movl %eax, 0x38(%rsp)
jmp 0x12bf7
movq 0x68(%rsp), %rax
movq 0x40(%rax), %rdi
callq 0x12790
movl %eax, 0x38(%rsp)
movl 0x38(%rsp), %ecx
movq 0x68(%rsp), %rax
movl %ecx, (%rax)
jmp 0x12b6f
jmp 0x1297f
movq 0x68(%rsp), %rdi
callq 0x13490
movl %eax, 0x58(%rsp)
cmpl $0x0, 0x58(%rsp)
jl 0x12c41
movq 0x68(%rsp), %rdi
movq 0x60(%rsp), %rsi
movl 0x58(%rsp), %edx
callq 0x135d0
movl $0x11e, 0x74(%rsp)      # imm = 0x11E
jmp 0x13358
cmpl $-0x1, 0x58(%rsp)
jne 0x12c55
movl $0x5b, 0x74(%rsp)
jmp 0x13358
movq 0x68(%rsp), %rdi
leaq 0xffb5(%rip), %rsi      # 0x22c16
movl $0x11e, %edx            # imm = 0x11E
callq 0x138d0
jmp 0x12c6d
jmp 0x12c6f
movq 0x68(%rsp), %rax
movq 0x40(%rax), %rcx
movq (%rcx), %rax
movq %rax, %rdx
addq $-0x1, %rdx
movq %rdx, (%rcx)
cmpq $0x0, %rax
jbe 0x12cac
movq 0x68(%rsp), %rax
movq 0x40(%rax), %rcx
movq 0x8(%rcx), %rax
movq %rax, %rdx
addq $0x1, %rdx
movq %rdx, 0x8(%rcx)
movzbl (%rax), %eax
movl %eax, 0x34(%rsp)
jmp 0x12cbe
movq 0x68(%rsp), %rax
movq 0x40(%rax), %rdi
callq 0x12790
movl %eax, 0x34(%rsp)
movl 0x34(%rsp), %ecx
movq 0x68(%rsp), %rax
movl %ecx, (%rax)
movq 0x68(%rsp), %rax
cmpl $0x3d, (%rax)
je 0x12ce0
movl $0x3d, 0x74(%rsp)
jmp 0x13358
movq 0x68(%rsp), %rax
movq 0x40(%rax), %rcx
movq (%rcx), %rax
movq %rax, %rdx
addq $-0x1, %rdx
movq %rdx, (%rcx)
cmpq $0x0, %rax
jbe 0x12d1d
movq 0x68(%rsp), %rax
movq 0x40(%rax), %rcx
movq 0x8(%rcx), %rax
movq %rax, %rdx
addq $0x1, %rdx
movq %rdx, 0x8(%rcx)
movzbl (%rax), %eax
movl %eax, 0x30(%rsp)
jmp 0x12d2f
movq 0x68(%rsp), %rax
movq 0x40(%rax), %rdi
callq 0x12790
movl %eax, 0x30(%rsp)
movl 0x30(%rsp), %ecx
movq 0x68(%rsp), %rax
movl %ecx, (%rax)
movl $0x118, 0x74(%rsp)      # imm = 0x118
jmp 0x13358
movq 0x68(%rsp), %rax
movq 0x40(%rax), %rcx
movq (%rcx), %rax
movq %rax, %rdx
addq $-0x1, %rdx
movq %rdx, (%rcx)
cmpq $0x0, %rax
jbe 0x12d84
movq 0x68(%rsp), %rax
movq 0x40(%rax), %rcx
movq 0x8(%rcx), %rax
movq %rax, %rdx
addq $0x1, %rdx
movq %rdx, 0x8(%rcx)
movzbl (%rax), %eax
movl %eax, 0x2c(%rsp)
jmp 0x12d96
movq 0x68(%rsp), %rax
movq 0x40(%rax), %rdi
callq 0x12790
movl %eax, 0x2c(%rsp)
movl 0x2c(%rsp), %ecx
movq 0x68(%rsp), %rax
movl %ecx, (%rax)
movq 0x68(%rsp), %rax
cmpl $0x3d, (%rax)
je 0x12db8
movl $0x3c, 0x74(%rsp)
jmp 0x13358
movq 0x68(%rsp), %rax
movq 0x40(%rax), %rcx
movq (%rcx), %rax
movq %rax, %rdx
addq $-0x1, %rdx
movq %rdx, (%rcx)
cmpq $0x0, %rax
jbe 0x12df5
movq 0x68(%rsp), %rax
movq 0x40(%rax), %rcx
movq 0x8(%rcx), %rax
movq %rax, %rdx
addq $0x1, %rdx
movq %rdx, 0x8(%rcx)
movzbl (%rax), %eax
movl %eax, 0x28(%rsp)
jmp 0x12e07
movq 0x68(%rsp), %rax
movq 0x40(%rax), %rdi
callq 0x12790
movl %eax, 0x28(%rsp)
movl 0x28(%rsp), %ecx
movq 0x68(%rsp), %rax
movl %ecx, (%rax)
movl $0x11a, 0x74(%rsp)      # imm = 0x11A
jmp 0x13358
movq 0x68(%rsp), %rax
movq 0x40(%rax), %rcx
movq (%rcx), %rax
movq %rax, %rdx
addq $-0x1, %rdx
movq %rdx, (%rcx)
cmpq $0x0, %rax
jbe 0x12e5c
movq 0x68(%rsp), %rax
movq 0x40(%rax), %rcx
movq 0x8(%rcx), %rax
movq %rax, %rdx
addq $0x1, %rdx
movq %rdx, 0x8(%rcx)
movzbl (%rax), %eax
movl %eax, 0x24(%rsp)
jmp 0x12e6e
movq 0x68(%rsp), %rax
movq 0x40(%rax), %rdi
callq 0x12790
movl %eax, 0x24(%rsp)
movl 0x24(%rsp), %ecx
movq 0x68(%rsp), %rax
movl %ecx, (%rax)
movq 0x68(%rsp), %rax
cmpl $0x3d, (%rax)
je 0x12e90
movl $0x3e, 0x74(%rsp)
jmp 0x13358
movq 0x68(%rsp), %rax
movq 0x40(%rax), %rcx
movq (%rcx), %rax
movq %rax, %rdx
addq $-0x1, %rdx
movq %rdx, (%rcx)
cmpq $0x0, %rax
jbe 0x12ecd
movq 0x68(%rsp), %rax
movq 0x40(%rax), %rcx
movq 0x8(%rcx), %rax
movq %rax, %rdx
addq $0x1, %rdx
movq %rdx, 0x8(%rcx)
movzbl (%rax), %eax
movl %eax, 0x20(%rsp)
jmp 0x12edf
movq 0x68(%rsp), %rax
movq 0x40(%rax), %rdi
callq 0x12790
movl %eax, 0x20(%rsp)
movl 0x20(%rsp), %ecx
movq 0x68(%rsp), %rax
movl %ecx, (%rax)
movl $0x119, 0x74(%rsp)      # imm = 0x119
jmp 0x13358
movq 0x68(%rsp), %rax
movq 0x40(%rax), %rcx
movq (%rcx), %rax
movq %rax, %rdx
addq $-0x1, %rdx
movq %rdx, (%rcx)
cmpq $0x0, %rax
jbe 0x12f34
movq 0x68(%rsp), %rax
movq 0x40(%rax), %rcx
movq 0x8(%rcx), %rax
movq %rax, %rdx
addq $0x1, %rdx
movq %rdx, 0x8(%rcx)
movzbl (%rax), %eax
movl %eax, 0x1c(%rsp)
jmp 0x12f46
movq 0x68(%rsp), %rax
movq 0x40(%rax), %rdi
callq 0x12790
movl %eax, 0x1c(%rsp)
movl 0x1c(%rsp), %ecx
movq 0x68(%rsp), %rax
movl %ecx, (%rax)
movq 0x68(%rsp), %rax
cmpl $0x3d, (%rax)
je 0x12f68
movl $0x7e, 0x74(%rsp)
jmp 0x13358
movq 0x68(%rsp), %rax
movq 0x40(%rax), %rcx
movq (%rcx), %rax
movq %rax, %rdx
addq $-0x1, %rdx
movq %rdx, (%rcx)
cmpq $0x0, %rax
jbe 0x12fa5
movq 0x68(%rsp), %rax
movq 0x40(%rax), %rcx
movq 0x8(%rcx), %rax
movq %rax, %rdx
addq $0x1, %rdx
movq %rdx, 0x8(%rcx)
movzbl (%rax), %eax
movl %eax, 0x18(%rsp)
jmp 0x12fb7
movq 0x68(%rsp), %rax
movq 0x40(%rax), %rdi
callq 0x12790
movl %eax, 0x18(%rsp)
movl 0x18(%rsp), %ecx
movq 0x68(%rsp), %rax
movl %ecx, (%rax)
movl $0x11b, 0x74(%rsp)      # imm = 0x11B
jmp 0x13358
movq 0x68(%rsp), %rdi
movq 0x68(%rsp), %rax
movl (%rax), %esi
movq 0x60(%rsp), %rdx
callq 0x13990
movl $0x11e, 0x74(%rsp)      # imm = 0x11E
jmp 0x13358
movq 0x68(%rsp), %rdi
movq 0x68(%rsp), %rax
movl (%rax), %esi
callq 0x13ef0
movq 0x68(%rsp), %rax
movq 0x40(%rax), %rcx
movq (%rcx), %rax
movq %rax, %rdx
addq $-0x1, %rdx
movq %rdx, (%rcx)
cmpq $0x0, %rax
jbe 0x13040
movq 0x68(%rsp), %rax
movq 0x40(%rax), %rcx
movq 0x8(%rcx), %rax
movq %rax, %rdx
addq $0x1, %rdx
movq %rdx, 0x8(%rcx)
movzbl (%rax), %eax
movl %eax, 0x14(%rsp)
jmp 0x13052
movq 0x68(%rsp), %rax
movq 0x40(%rax), %rdi
callq 0x12790
movl %eax, 0x14(%rsp)
movl 0x14(%rsp), %ecx
movq 0x68(%rsp), %rax
movl %ecx, (%rax)
movq 0x68(%rsp), %rdi
leaq 0xf79b(%rip), %rsi      # 0x22804
callq 0x14000
cmpl $0x0, %eax
je 0x130a3
movq 0x68(%rsp), %rdi
leaq 0xf785(%rip), %rsi      # 0x22804
callq 0x14000
cmpl $0x0, %eax
je 0x13096
movl $0x117, 0x74(%rsp)      # imm = 0x117
jmp 0x13358
movl $0x116, 0x74(%rsp)      # imm = 0x116
jmp 0x13358
callq 0x32d0
movq (%rax), %rax
movq 0x68(%rsp), %rcx
movslq (%rcx), %rcx
movzwl (%rax,%rcx,2), %eax
andl $0x800, %eax            # imm = 0x800
cmpl $0x0, %eax
jne 0x130ce
movl $0x2e, 0x74(%rsp)
jmp 0x13358
movq 0x68(%rsp), %rdi
movq 0x60(%rsp), %rsi
callq 0x140b0
movl $0x11c, 0x74(%rsp)      # imm = 0x11C
jmp 0x13358
movl $0x11f, 0x74(%rsp)      # imm = 0x11F
jmp 0x13358
callq 0x32d0
movq (%rax), %rax
movq 0x68(%rsp), %rcx
movslq (%rcx), %rcx
movzwl (%rax,%rcx,2), %eax
andl $0x2000, %eax           # imm = 0x2000
cmpl $0x0, %eax
je 0x13174
movq 0x68(%rsp), %rax
movq 0x40(%rax), %rcx
movq (%rcx), %rax
movq %rax, %rdx
addq $-0x1, %rdx
movq %rdx, (%rcx)
cmpq $0x0, %rax
jbe 0x13152
movq 0x68(%rsp), %rax
movq 0x40(%rax), %rcx
movq 0x8(%rcx), %rax
movq %rax, %rdx
addq $0x1, %rdx
movq %rdx, 0x8(%rcx)
movzbl (%rax), %eax
movl %eax, 0x10(%rsp)
jmp 0x13164
movq 0x68(%rsp), %rax
movq 0x40(%rax), %rdi
callq 0x12790
movl %eax, 0x10(%rsp)
movl 0x10(%rsp), %ecx
movq 0x68(%rsp), %rax
movl %ecx, (%rax)
jmp 0x1297f
callq 0x32d0
movq (%rax), %rax
movq 0x68(%rsp), %rcx
movslq (%rcx), %rcx
movzwl (%rax,%rcx,2), %eax
andl $0x800, %eax            # imm = 0x800
cmpl $0x0, %eax
je 0x131ae
movq 0x68(%rsp), %rdi
movq 0x60(%rsp), %rsi
callq 0x140b0
movl $0x11c, 0x74(%rsp)      # imm = 0x11C
jmp 0x13358
callq 0x32d0
movq (%rax), %rax
movq 0x68(%rsp), %rcx
movslq (%rcx), %rcx
movzwl (%rax,%rcx,2), %eax
andl $0x400, %eax            # imm = 0x400
cmpl $0x0, %eax
jne 0x131da
movq 0x68(%rsp), %rax
cmpl $0x5f, (%rax)
jne 0x132eb
jmp 0x131dc
movq 0x68(%rsp), %rdi
movq 0x68(%rsp), %rax
movl (%rax), %esi
callq 0x13ef0
movq 0x68(%rsp), %rax
movq 0x40(%rax), %rcx
movq (%rcx), %rax
movq %rax, %rdx
addq $-0x1, %rdx
movq %rdx, (%rcx)
cmpq $0x0, %rax
jbe 0x1322a
movq 0x68(%rsp), %rax
movq 0x40(%rax), %rcx
movq 0x8(%rcx), %rax
movq %rax, %rdx
addq $0x1, %rdx
movq %rdx, 0x8(%rcx)
movzbl (%rax), %eax
movl %eax, 0xc(%rsp)
jmp 0x1323c
movq 0x68(%rsp), %rax
movq 0x40(%rax), %rdi
callq 0x12790
movl %eax, 0xc(%rsp)
movl 0xc(%rsp), %ecx
movq 0x68(%rsp), %rax
movl %ecx, (%rax)
callq 0x32d0
movq (%rax), %rax
movq 0x68(%rsp), %rcx
movslq (%rcx), %rcx
movzwl (%rax,%rcx,2), %ecx
andl $0x8, %ecx
movb $0x1, %al
cmpl $0x0, %ecx
movb %al, 0xb(%rsp)
jne 0x13278
movq 0x68(%rsp), %rax
cmpl $0x5f, (%rax)
sete %al
movb %al, 0xb(%rsp)
movb 0xb(%rsp), %al
testb $0x1, %al
jne 0x131dc
movq 0x68(%rsp), %rdi
movq 0x68(%rsp), %rax
movq 0x48(%rax), %rax
movq (%rax), %rsi
movq 0x68(%rsp), %rax
movq 0x48(%rax), %rax
movq 0x8(%rax), %rdx
callq 0x142a0
movq %rax, 0x50(%rsp)
movq 0x50(%rsp), %rax
movzbl 0xa(%rax), %eax
cmpl $0x0, %eax
jle 0x132d4
movq 0x50(%rsp), %rax
movzbl 0xa(%rax), %eax
subl $0x1, %eax
addl $0x101, %eax            # imm = 0x101
movl %eax, 0x74(%rsp)
jmp 0x13358
movq 0x50(%rsp), %rcx
movq 0x60(%rsp), %rax
movq %rcx, (%rax)
movl $0x11d, 0x74(%rsp)      # imm = 0x11D
jmp 0x13358
movq 0x68(%rsp), %rax
movl (%rax), %eax
movl %eax, 0x4c(%rsp)
movq 0x68(%rsp), %rax
movq 0x40(%rax), %rcx
movq (%rcx), %rax
movq %rax, %rdx
addq $-0x1, %rdx
movq %rdx, (%rcx)
cmpq $0x0, %rax
jbe 0x13333
movq 0x68(%rsp), %rax
movq 0x40(%rax), %rcx
movq 0x8(%rcx), %rax
movq %rax, %rdx
addq $0x1, %rdx
movq %rdx, 0x8(%rcx)
movzbl (%rax), %eax
movl %eax, 0x4(%rsp)
jmp 0x13345
movq 0x68(%rsp), %rax
movq 0x40(%rax), %rdi
callq 0x12790
movl %eax, 0x4(%rsp)
movl 0x4(%rsp), %ecx
movq 0x68(%rsp), %rax
movl %ecx, (%rax)
movl 0x4c(%rsp), %eax
movl %eax, 0x74(%rsp)
movl 0x74(%rsp), %eax
addq $0x78, %rsp
retq
nopw %cs:(%rax,%rax)