mirror of
https://github.com/LuaJIT/LuaJIT.git
synced 2025-02-07 15:14:08 +00:00
Fix BC_UCLO/BC_JMP join optimization in Lua parser.
This commit is contained in:
parent
4d9e8e245a
commit
999f57de83
@ -685,10 +685,12 @@ static BCPos bcemit_jmp(FuncState *fs)
|
||||
BCPos j = fs->pc - 1;
|
||||
BCIns *ip = &fs->bcbase[j].ins;
|
||||
fs->jpc = NO_JMP;
|
||||
if ((int32_t)j >= (int32_t)fs->lasttarget && bc_op(*ip) == BC_UCLO)
|
||||
if ((int32_t)j >= (int32_t)fs->lasttarget && bc_op(*ip) == BC_UCLO) {
|
||||
setbc_j(ip, NO_JMP);
|
||||
else
|
||||
fs->lasttarget = j+1;
|
||||
} else {
|
||||
j = bcemit_AJ(fs, BC_JMP, fs->freereg, NO_JMP);
|
||||
}
|
||||
jmp_append(fs, &j, jpc);
|
||||
return j;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user