From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from [87.239.111.99] (localhost [127.0.0.1]) by dev.tarantool.org (Postfix) with ESMTP id EFBACF1A9A8; Fri, 10 Jan 2025 16:08:22 +0300 (MSK) DKIM-Filter: OpenDKIM Filter v2.11.0 dev.tarantool.org EFBACF1A9A8 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=tarantool.org; s=dev; t=1736514503; bh=dCDCZ5HfupFu63hqySORgpKFSCEOYJ/+GbpKThMkMMc=; h=To:Date:Subject:List-Id:List-Unsubscribe:List-Archive:List-Post: List-Help:List-Subscribe:From:Reply-To:Cc:From; b=HQ1XxbPiUxS+4bxfU50no9/DAUEzRhZ3IW6AsAdq5v/xM+VXEAfvx5nTzynGHWw25 dLMYJK/aoSzTF61drR8vIaCQGu/N/9ZHAQ2FAF6VHApRSyJEmWkw3e/UZpukbnmZcu PtGPTAFf/AZJ+/RhiI7JRujP+7KU6yHUvE9D8vyc= Received: from send175.i.mail.ru (send175.i.mail.ru [95.163.59.14]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by dev.tarantool.org (Postfix) with ESMTPS id CEED4F1A99F for ; Fri, 10 Jan 2025 16:08:21 +0300 (MSK) DKIM-Filter: OpenDKIM Filter v2.11.0 dev.tarantool.org CEED4F1A99F Received: by exim-smtp-bcf9586c5-mw6cv with esmtpa (envelope-from ) id 1tWEkO-00000000Ued-3giv; Fri, 10 Jan 2025 16:08:21 +0300 To: Sergey Bronnikov Date: Fri, 10 Jan 2025 16:07:43 +0300 Message-ID: X-Mailer: git-send-email 2.47.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Mailru-Src: smtp X-7564579A: B8F34718100C35BD X-77F55803: 4F1203BC0FB41BD97C62A2C8925CC647404788BFDB7838E742B8BAB015971D55182A05F538085040C58EC1AA20E307C93DE06ABAFEAF6705FE018EB215CAE339D3E5D342215B9A648CF6EBAD94FE6CB9 X-7FA49CB5: FF5795518A3D127A4AD6D5ED66289B5278DA827A17800CE7CA8E915ACC910FBDEA1F7E6F0F101C67BD4B6F7A4D31EC0BCC500DACC3FED6E28638F802B75D45FF8AA50765F7900637CF19945FAF91394A8638F802B75D45FF36EB9D2243A4F8B5A6FCA7DBDB1FC311F39EFFDF887939037866D6147AF826D8329F6958BDFD708F3BDF672ABC45C8FE7946E3D467B3ED51CC7F00164DA146DAFE8445B8C89999728AA50765F7900637DCE3DBD6F8E38AFD389733CBF5DBD5E9C8A9BA7A39EFB766F5D81C698A659EA7CC7F00164DA146DA9985D098DBDEAEC8FA486DC37A503D0BF6B57BC7E6449061A352F6E88A58FB86F5D81C698A659EA7E827F84554CEF5019E625A9149C048EE9ECD01F8117BC8BEE2021AF6380DFAD18AA50765F790063735872C767BF85DA227C277FBC8AE2E8B851EDB9C5A93305EEFF80C71ABB335746BA297DBC24807EABDAD6C7F3747799A X-C1DE0DAB: 0D63561A33F958A5FD732B11247354035002B1117B3ED69684C64DDD2EAEE048CA7E60A991436CA2823CB91A9FED034534781492E4B8EEAD05E80F4396618BB2C79554A2A72441328621D336A7BC284946AD531847A6065A535571D14F44ED41 X-C8649E89: 1C3962B70DF3F0ADE00A9FD3E00BEEDF77DD89D51EBB7742D3581295AF09D3DF87807E0823442EA2ED31085941D9CD0AF7F820E7B07EA4CFA3C1652BF855B9A51A668643F6C5BB25A5F77A42542DACE95568C61470F13E849F3638D7DAB8774B6BAACDEF235ECA6E8DEF4BFCEDE9DF2CD7101C3931F3FA3CBF4CB53A032D17F65F4332CA8FE04980913E6812662D5F2A5EAB5682573093F7837F15F2B5E4A70B33F2C28C22F508233FCF178C6DD14203 X-D57D3AED: 3ZO7eAau8CL7WIMRKs4sN3D3tLDjz0dLbV79QFUyzQ2Ujvy7cMT6pYYqY16iZVKkSc3dCLJ7zSJH7+u4VD18S7Vl4ZUrpaVfd2+vE6kuoey4m4VkSEu530nj6fImhcD4MUrOEAnl0W826KZ9Q+tr5ycPtXkTV4k65bRjmOUUP8cvGozZ33TWg5HZplvhhXbhDGzqmQDTd6OAevLeAnq3Ra9uf7zvY2zzsIhlcp/Y7m53TZgf2aB4JOg4gkr2biojXhNIkWce4y3QkaY8dgWecw== X-DA7885C5: 6238D5BA370799CBF255D290C0D534F9CB94B635940DB784EA5E95A074967D5E85D9A7131FCD11995B1A4C17EAA7BC4BEF2421ABFA55128DAF83EF9164C44C7E X-Mailru-Sender: 689FA8AB762F739381B31377CF4CA219F26BE75CB4E889FFDFCB6B24D75F5A4E03CB965C7EF5D453E49D44BB4BD9522A059A1ED8796F048DB274557F927329BE89D5A3BC2B10C37545BD1C3CC395C826B4A721A3011E896F X-Mras: Ok Subject: [Tarantool-patches] [PATCH luajit 0/4] Fixes for load fusing optimization X-BeenThere: tarantool-patches@dev.tarantool.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: Tarantool development patches List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , From: Sergey Kaplun via Tarantool-patches Reply-To: Sergey Kaplun Cc: tarantool-patches@dev.tarantool.org Errors-To: tarantool-patches-bounces@dev.tarantool.org Sender: "Tarantool-patches" The patch set fixes load fusing optimization by preventing it across: * `table.clear()` (1st, 2nd, 4th commits) * `IR_NEWREF` (3rd commit) Branch: https://github.com/tarantool/luajit/tree/skaplun/lj-1117-loads-fusion Related issues: * https://github.com/LuaJIT/LuaJIT/issues/1117 * https://github.com/tarantool/tarantool/issues/10709 Mike Pall (4): x86/x64: Don't fuse loads across table.clear. Improve last commit. x86/x64: Don't fuse loads across IR_NEWREF. Fix last commit. src/lj_asm_x86.h | 16 +++--- .../lj-1117-fuse-across-newref.test.lua | 52 +++++++++++++++++++ .../lj-1117-fuse-across-table-clear.test.lua | 36 +++++++++++++ 3 files changed, 97 insertions(+), 7 deletions(-) create mode 100644 test/tarantool-tests/lj-1117-fuse-across-newref.test.lua create mode 100644 test/tarantool-tests/lj-1117-fuse-across-table-clear.test.lua -- 2.47.1