fast path for ind integer checking
This commit is contained in:
parent
4b67de5f83
commit
adc4506ac8
3
src/vm.c
3
src/vm.c
@ -485,10 +485,11 @@ NOINLINE Block* compileAll(B bcq, B objs, B allBlocks, B allBodies, B indices, B
|
||||
for (i32 i = 0; i < 2; i++) {
|
||||
B ind = IGetU(indices,i);
|
||||
if (isAtm(ind) || RNK(ind)!=1 || IA(ind)!=bcIA) thrM("VM compiler: Bad indices");
|
||||
SGetU(ind)
|
||||
if (!elInt(TI(ind,elType))) { SGetU(ind)
|
||||
for (usz j = 0; j < bcIA; j++) o2i(GetU(ind,j));
|
||||
}
|
||||
}
|
||||
}
|
||||
TALLOC(bool,bDone,bIA);
|
||||
for (usz i = 0; i < bIA; i++) bDone[i] = false;
|
||||
Block* ret = compileBlock(IGetU(allBlocks, 0), comp, bDone, bc, bcIA, allBlocks, allBodies, nameList, sc, 0, 0, nsResult);
|
||||
|
||||
Loading…
Reference in New Issue
Block a user