The branch is missed, I suppose this branch [1] is correct.
1.
https://github.com/tarantool/luajit/tree/skaplun/lj-1057-arm64-stp-fusing-across-tbar
The first 2 patches are required to avoid conflicts with the last one patch. The last patch fixes incorrect fusion of instructions across IR, which leads to incorrect label target. Related issues: * https://github.com/tarantool/tarantool/issues/11691 * https://github.com/LuaJIT/LuaJIT/issues/1057 Mike Pall (3): ARM64: Improve generation of immediates. ARM64: More improvements to the generation of immediates. ARM64: Prevent STP fusion for conditional code emitted by TBAR. src/lj_asm.c | 3 + src/lj_asm_arm64.h | 26 +++--- src/lj_emit_arm64.h | 66 ++++++++-------- ...1057-arm64-stp-fusing-across-tbar.test.lua | 79 +++++++++++++++++++ 4 files changed, 126 insertions(+), 48 deletions(-) create mode 100644 test/tarantool-tests/lj-1057-arm64-stp-fusing-across-tbar.test.lua