From f8fbfa4f7f9cef02bcd6fb4ba48aa7b3a4882df2 Mon Sep 17 00:00:00 2001
From: Igor Munkin <imun@tarantool.org>
Date: Wed, 20 Dec 2023 14:08:54 +0000
Subject: [PATCH] luajit: bump new version

* FFI: Fix dangling reference to CType in carith_checkarg().
* FFI: Fix dangling reference to CType. Improve checks.
* FFI: Fix dangling reference to CType.
* FFI: Ensure returned string is alive in ffi.typeinfo().
* FFI: Fix missing cts->L initialization in argv2ctype().
* Abstract out on-demand loading of FFI library.
* test: fix flaky finalizer error handler tests
* test: adjust lua-Harness test error assertion
* Fix snapshot PC when linking to BC_JLOOP that was a BC_RET*.
* snap: check J->pc is within its proto bytecode
* Fix HREFK forwarding vs. table.clear().
* Fix FOLD rule for BUFHDR append.
* Prevent CSE of a REF_BASE operand across IR_RETF.
* test: rewrite sysprof test using managed execution
* test: disable buffering for the C test engine

Part of #9145

NO_DOC=LuaJIT submodule bump
NO_TEST=LuaJIT submodule bump
---
 changelogs/unreleased/gh-9145-luajit-fixes.md | 13 +++++++++++++
 third_party/luajit                            |  2 +-
 2 files changed, 14 insertions(+), 1 deletion(-)
 create mode 100644 changelogs/unreleased/gh-9145-luajit-fixes.md

diff --git a/changelogs/unreleased/gh-9145-luajit-fixes.md b/changelogs/unreleased/gh-9145-luajit-fixes.md
new file mode 100644
index 0000000000..92178a25cc
--- /dev/null
+++ b/changelogs/unreleased/gh-9145-luajit-fixes.md
@@ -0,0 +1,13 @@
+## bugfix/luajit
+
+Backported patches from the vanilla LuaJIT trunk (gh-9145). The following issues
+were fixed as part of this activity:
+
+* Fixed CSE of a `REF_BASE` operand across `IR_RETF`.
+* Fixed the fold rule for `BUFHDR APPEND`.
+* Fixed HREFK, ALOAD, HLOAD, forwarding vs. `table.clear()`.
+* Fixed snapshot PC when linking to `BC_JLOOP` that was a `BC_RET*`.
+* Fixed dangling references to CType.
+* Ensured returned string is alive in `ffi.typeinfo()`.
+* Fixed the missing initialization of the internal structure, leading to a
+  crash when recording a trace with an allocation of cdata.
diff --git a/third_party/luajit b/third_party/luajit
index 8772dee8b6..10396abf24 160000
--- a/third_party/luajit
+++ b/third_party/luajit
@@ -1 +1 @@
-Subproject commit 8772dee8b69a2cebcb752c163c58f2b98a6c1824
+Subproject commit 10396abf24c39c8c4318e7e312bae1f44cb65ac3
-- 
GitLab