Ran
|
Files
89
|
Run time
3s
|
Badge
Embed ▾
README BADGES
|
push
github
Fix maxslots when recording BC_TSETM. Analyzed by Sergey Kaplun. (cherry-picked from commit 0cc5fdfbc) Recording of the `BC_TSETM` bytecode may keep the JIT maxslot too optimistic. In that case, the slot above the top of the Lua stack may be considered used. When any VM event handler is called before the recording of the next instruction, this leads to an assertion failure in `rec_check_slots()`. This patch sets the `ra` as a maxslot, as far as the `ra` - 1 contains a table, which is always the highest slot after this bytecode. Also, it adds an assertion that we check slots below the top of the Lua stack. Sergey Kaplun: * added the description and the test for the problem Part of tarantool/tarantool#8825
5335 of 5969 branches covered (0.0%)
Branch coverage included in aggregate %.
20473 of 23288 relevant lines covered (87.91%)
1286791.12 hits per line
Coverage | ∆ | File | Lines | Relevant | Covered | Missed | Hits/Line | Branch Hits | Branch Misses |
---|