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 64F4F257FF8; Mon, 13 Feb 2023 20:06:00 +0300 (MSK) DKIM-Filter: OpenDKIM Filter v2.11.0 dev.tarantool.org 64F4F257FF8 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=tarantool.org; s=dev; t=1676307960; bh=ebDhl4q5J2ZJG2HzR5ZKOdB176DBYtPLa7IwB5BZQgk=; h=To:Date:In-Reply-To:References:Subject:List-Id:List-Unsubscribe: List-Archive:List-Post:List-Help:List-Subscribe:From:Reply-To:Cc: From; b=oSPaeuDN8/Dua69Z4s5OWYl/H9MNgyD7WwzgD0SAFjPgC8/Q+diWiDTJvSVXJGYro +x8Yi0qOIVu/JzsAEo01P/8EYjKvpu4SUfizIyy5jPvbJe6Tjcb/G6fmAp8LD/wgIT SOlIgbp55DZSrxl61dlKLEM/T+w74dr/5iK4qJiY= Received: from smtp46.i.mail.ru (smtp46.i.mail.ru [95.163.41.84]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by dev.tarantool.org (Postfix) with ESMTPS id 08B7C257FF9 for ; Mon, 13 Feb 2023 20:03:32 +0300 (MSK) DKIM-Filter: OpenDKIM Filter v2.11.0 dev.tarantool.org 08B7C257FF9 Received: by smtp46.i.mail.ru with esmtpa (envelope-from ) id 1pRcEl-00Ft6R-0N; Mon, 13 Feb 2023 20:03:31 +0300 To: Sergey Kaplun , Maxim Kokryashkin Date: Mon, 13 Feb 2023 17:02:47 +0000 Message-Id: X-Mailer: git-send-email 2.30.2 In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Mailru-Src: smtp X-4EC0790: 10 X-7564579A: 646B95376F6C166E X-77F55803: 4F1203BC0FB41BD9D95CB639AA8C08F8F243B0CF85050B97ED6B8F53A5332E2F182A05F53808504065E9F9133C425C5B55C639FB216E3735054FF26BA2AAF27F29E7E9DE7D9609C9 X-7FA49CB5: FF5795518A3D127A4AD6D5ED66289B5278DA827A17800CE7A20935EE237A17ECEA1F7E6F0F101C67BD4B6F7A4D31EC0BCC500DACC3FED6E28638F802B75D45FF8AA50765F79006372E000E903B06FBD58638F802B75D45FF36EB9D2243A4F8B5A6FCA7DBDB1FC311F39EFFDF887939037866D6147AF826D8478BDE790893AB802F534A819B2DF190117882F4460429724CE54428C33FAD305F5C1EE8F4F765FCE1488AC3D4DED311A471835C12D1D9774AD6D5ED66289B52BA9C0B312567BB23117882F4460429728776938767073520CCD848CCB6FE560C6FD1C55BDD38FC3FD2E47CDBA5A96583BA9C0B312567BB2376E601842F6C81A19E625A9149C048EE9647ADFADE5905B18F49F126DDB898E8D8FC6C240DEA7642DBF02ECDB25306B2B78CF848AE20165D0A6AB1C7CE11FEE36089696B24BB1D19C0837EA9F3D19764C4224003CC836476E2F48590F00D11D6E2021AF6380DFAD1A18204E546F3947CB11811A4A51E3B096D1867E19FE1407959CC434672EE6371089D37D7C0E48F6C8AA50765F7900637FB177F6A8366F17BEFF80C71ABB335746BA297DBC24807EABDAD6C7F3747799A X-C1DE0DAB: 0D63561A33F958A58C7D7651CC7ECA65A59A189A3A238BDCD532CED00A8A2ACD4EAF44D9B582CE87C8A4C02DF684249CC203C45FEA855C8F X-C8649E89: 4E36BF7865823D7055A7F0CF078B5EC49A30900B95165D34F6CC1FD33669633613152FC2B0B76C2CE62550DA94DEAE7C2C05DCCE37B7FBFC1EBBBCAC21FBA9281D7E09C32AA3244C9720D5C091EE005B9CA906FFE8DB510569B6CAE0477E908D927AC6DF5659F194 X-D57D3AED: 3ZO7eAau8CL7WIMRKs4sN3D3tLDjz0dLbV79QFUyzQ2Ujvy7cMT6pYYqY16iZVKkSc3dCLJ7zSJH7+u4VD18S7Vl4ZUrpaVfd2+vE6kuoey4m4VkSEu530nj6fImhcD4MUrOEAnl0W826KZ9Q+tr5ycPtXkTV4k65bRjmOUUP8cvGozZ33TWg5HZplvhhXbhDGzqmQDTd6OAevLeAnq3Ra9uf7zvY2zzsIhlcp/Y7m53TZgf2aB4JOg4gkr2biojgB/I+mAIlFG+y3V1LqJVBg== X-Mailru-Sender: 2FEBA92C8E508479FE7B9A1DF348D531626392C2CE6982C686C2B1A9490F3BAB307B5A32C6BFE1642326FE6F2A341ACE0FB9F97486540B4CD9E8847AB8CFED4D9ABF8A61C016C2CFB0DAF586E7D11B3E67EA787935ED9F1B X-Mras: Ok Subject: [Tarantool-patches] [PATCH luajit 5/7] test: add skipcond for all JIT-related tests 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: Igor Munkin via Tarantool-patches Reply-To: Igor Munkin Cc: tarantool-patches@dev.tarantool.org Errors-To: tarantool-patches-bounces@dev.tarantool.org Sender: "Tarantool-patches" This patch adjusts all tests for JIT engine to avoid failures when JIT is disabled, so skipcond with the result of as a condition is added to handle this. Part of tarantool/tarantool#8252 Signed-off-by: Igor Munkin --- .../bc-jit-unpatching.test.lua | 6 +++-- .../fix-fold-simplify-conv-sext.test.lua | 7 ++--- .../fix-slot-check-for-mm-record.test.lua | 4 ++- .../gh-4199-gc64-fuse.test.lua | 1 + .../gh-4427-ffi-sandwich.test.lua | 1 + ...gh-4476-fix-string-find-recording.test.lua | 4 ++- .../gh-6065-jit-library-smoke-tests.test.lua | 4 ++- ...8-fix-side-exit-patching-on-arm64.test.lua | 5 +++- test/tarantool-tests/gh-6189-cur_L.test.lua | 7 +++-- ...ytecode-allocator-for-comparisons.test.lua | 5 +++- .../gh-6371-string-char-no-arg.test.lua | 5 ++-- ...6782-stitching-in-vmevent-handler.test.lua | 6 +++-- .../gh-6976-narrowing-of-unary-minus.test.lua | 5 +++- ...4-add-proto-trace-sysprof-default.test.lua | 1 + .../lj-350-sload-typecheck.test.lua | 8 +++--- .../lj-356-ir-khash-non-string-obj.test.lua | 11 +++++--- .../lj-357-arm64-hrefk.test.lua | 6 +++-- .../lj-375-ir-bufput-signed-char.test.lua | 4 ++- .../lj-408-tonumber-cdata-record.test.lua | 11 ++++---- .../lj-416-xor-before-jcc.test.lua | 6 +++-- .../lj-430-maxirconst.test.lua | 1 + ...lj-505-fold-no-strref-for-ptrdiff.test.lua | 4 ++- .../lj-524-fold-conv-respect-src-irt.test.lua | 6 +++-- .../lj-556-fix-loop-realignment.test.lua | 4 ++- ...j-584-bad-renames-for-sunk-values.test.lua | 4 ++- .../lj-603-err-snap-restore.test.lua | 1 + ...lj-672-cdata-allocation-recording.test.lua | 1 + .../lj-864-varg-rec-base-offset.test.lua | 6 +++-- .../lj-flush-on-trace.test.lua | 1 + .../misclib-getmetrics-capi.test.lua | 1 + .../misclib-getmetrics-lapi.test.lua | 1 + .../misclib-memprof-lapi.test.lua | 26 +++++++++---------- .../misclib-sysprof-lapi.test.lua | 7 ++--- 33 files changed, 112 insertions(+), 58 deletions(-) diff --git a/test/tarantool-tests/bc-jit-unpatching.test.lua b/test/tarantool-tests/bc-jit-unpatching.test.lua index 71247f0c..2c3b7c9a 100644 --- a/test/tarantool-tests/bc-jit-unpatching.test.lua +++ b/test/tarantool-tests/bc-jit-unpatching.test.lua @@ -1,9 +1,11 @@ local tap = require('tap') -local utils = require('utils') +local test = tap.test('bc-jit-unpatching'):skipcond({ + ['Test requires JIT enabled'] = not jit.status(), +}) -local test = tap.test('bc-jit-unpatching') test:plan(1) +local utils = require('utils') -- Function with up-recursion. local function f(n) return n < 2 and n or f(n - 1) + f(n - 2) diff --git a/test/tarantool-tests/fix-fold-simplify-conv-sext.test.lua b/test/tarantool-tests/fix-fold-simplify-conv-sext.test.lua index 07e22c36..60eb3e7c 100644 --- a/test/tarantool-tests/fix-fold-simplify-conv-sext.test.lua +++ b/test/tarantool-tests/fix-fold-simplify-conv-sext.test.lua @@ -1,12 +1,13 @@ local tap = require('tap') -local ffi = require('ffi') - -local test = tap.test('fix-fold-simplify-conv-sext') +local test = tap.test('fix-fold-simplify-conv-sext'):skipcond({ + ['Test requires JIT enabled'] = not jit.status(), +}) local NSAMPLES = 4 local NTEST = NSAMPLES * 2 - 1 test:plan(NTEST) +local ffi = require('ffi') local samples = ffi.new('int [?]', NSAMPLES) -- Prepare data. diff --git a/test/tarantool-tests/fix-slot-check-for-mm-record.test.lua b/test/tarantool-tests/fix-slot-check-for-mm-record.test.lua index 8df72ec4..6161747f 100644 --- a/test/tarantool-tests/fix-slot-check-for-mm-record.test.lua +++ b/test/tarantool-tests/fix-slot-check-for-mm-record.test.lua @@ -1,7 +1,9 @@ -- luacheck: globals a0 a1 local tap = require('tap') +local test = tap.test('fix-slot-check-for-mm-record'):skipcond({ + ['Test requires JIT enabled'] = not jit.status(), +}) -local test = tap.test('fix-slot-check-for-mm-record') test:plan(1) -- Before the patch, JIT compiler doesn't check slots overflow diff --git a/test/tarantool-tests/gh-4199-gc64-fuse.test.lua b/test/tarantool-tests/gh-4199-gc64-fuse.test.lua index 65f9faac..4513d43b 100644 --- a/test/tarantool-tests/gh-4199-gc64-fuse.test.lua +++ b/test/tarantool-tests/gh-4199-gc64-fuse.test.lua @@ -1,5 +1,6 @@ local tap = require('tap') local test = tap.test('gh-4199-gc64-fuse'):skipcond({ + ['Test requires JIT enabled'] = not jit.status(), ['Test requires GC64 mode enabled'] = not require('ffi').abi('gc64'), }) diff --git a/test/tarantool-tests/gh-4427-ffi-sandwich.test.lua b/test/tarantool-tests/gh-4427-ffi-sandwich.test.lua index 2d6c3b06..ff3eaf01 100644 --- a/test/tarantool-tests/gh-4427-ffi-sandwich.test.lua +++ b/test/tarantool-tests/gh-4427-ffi-sandwich.test.lua @@ -1,5 +1,6 @@ local tap = require('tap') local test = tap.test('gh-4427-ffi-sandwich'):skipcond({ + ['Test requires JIT enabled'] = not jit.status(), ['Disabled on *BSD due to #4819'] = jit.os == 'BSD', }) diff --git a/test/tarantool-tests/gh-4476-fix-string-find-recording.test.lua b/test/tarantool-tests/gh-4476-fix-string-find-recording.test.lua index f48af173..0758b38f 100644 --- a/test/tarantool-tests/gh-4476-fix-string-find-recording.test.lua +++ b/test/tarantool-tests/gh-4476-fix-string-find-recording.test.lua @@ -1,6 +1,8 @@ local tap = require('tap') +local test = tap.test("gh-4476-fix-string-find-recording"):skipcond({ + ['Test requires JIT enabled'] = not jit.status(), +}) -local test = tap.test("gh-4476-fix-string-find-recording") test:plan(1) local err = [[module 'kit.1.10.3-136' not found: diff --git a/test/tarantool-tests/gh-6065-jit-library-smoke-tests.test.lua b/test/tarantool-tests/gh-6065-jit-library-smoke-tests.test.lua index 7110e351..5d7fd7e2 100644 --- a/test/tarantool-tests/gh-6065-jit-library-smoke-tests.test.lua +++ b/test/tarantool-tests/gh-6065-jit-library-smoke-tests.test.lua @@ -1,6 +1,8 @@ local tap = require('tap') +local test = tap.test('gh-6065-jit-library-smoke-tests'):skipcond({ + ['Test requires JIT enabled'] = not jit.status(), +}) -local test = tap.test('gh-6065-jit-library-smoke-tests') test:plan(1) -- Just check whether LuaJIT is built with JIT support. Otherwise, diff --git a/test/tarantool-tests/gh-6098-fix-side-exit-patching-on-arm64.test.lua b/test/tarantool-tests/gh-6098-fix-side-exit-patching-on-arm64.test.lua index 4dcf3e22..cfcc6adb 100644 --- a/test/tarantool-tests/gh-6098-fix-side-exit-patching-on-arm64.test.lua +++ b/test/tarantool-tests/gh-6098-fix-side-exit-patching-on-arm64.test.lua @@ -1,5 +1,8 @@ local tap = require('tap') -local test = tap.test('gh-6098-fix-side-exit-patching-on-arm64') +local test = tap.test('gh-6098-fix-side-exit-patching-on-arm64'):skipcond({ + ['Test requires JIT enabled'] = not jit.status(), +}) + test:plan(1) -- The function to be tested for side exit patching: diff --git a/test/tarantool-tests/gh-6189-cur_L.test.lua b/test/tarantool-tests/gh-6189-cur_L.test.lua index 7f2184ec..a5096a7c 100644 --- a/test/tarantool-tests/gh-6189-cur_L.test.lua +++ b/test/tarantool-tests/gh-6189-cur_L.test.lua @@ -1,9 +1,12 @@ -local libcur_L = require('libcur_L') local tap = require('tap') +local test = tap.test('gh-6189-cur_L'):skipcond({ + ['Test requires JIT enabled'] = not jit.status(), +}) -local test = tap.test('gh-6189-cur_L') test:plan(1) +local libcur_L = require('libcur_L') + local function cbool(cond) if cond then return 1 diff --git a/test/tarantool-tests/gh-6227-bytecode-allocator-for-comparisons.test.lua b/test/tarantool-tests/gh-6227-bytecode-allocator-for-comparisons.test.lua index 9788923a..da399bcf 100644 --- a/test/tarantool-tests/gh-6227-bytecode-allocator-for-comparisons.test.lua +++ b/test/tarantool-tests/gh-6227-bytecode-allocator-for-comparisons.test.lua @@ -1,5 +1,8 @@ local tap = require('tap') -local test = tap.test('gh-6227-bytecode-allocator-for-comparisons') +local test = tap.test('gh-6227-bytecode-allocator-for-comparisons'):skipcond({ + ['Test requires JIT enabled'] = not jit.status(), +}) + test:plan(1) -- Test file to demonstrate assertion failure during recording diff --git a/test/tarantool-tests/gh-6371-string-char-no-arg.test.lua b/test/tarantool-tests/gh-6371-string-char-no-arg.test.lua index ec871d19..90121860 100644 --- a/test/tarantool-tests/gh-6371-string-char-no-arg.test.lua +++ b/test/tarantool-tests/gh-6371-string-char-no-arg.test.lua @@ -1,10 +1,11 @@ local tap = require('tap') - -- Test file to demonstrate assertion after `string.char()` -- recording. -- See also, https://github.com/tarantool/tarantool/issues/6371. +local test = tap.test('gh-6371-string-char-no-arg'):skipcond({ + ['Test requires JIT enabled'] = not jit.status(), +}) -local test = tap.test('gh-6371-string-char-no-arg') -- XXX: Number of loop iterations. -- * 1 -- instruction becomes hot. -- * 2 -- recording of the loop body. diff --git a/test/tarantool-tests/gh-6782-stitching-in-vmevent-handler.test.lua b/test/tarantool-tests/gh-6782-stitching-in-vmevent-handler.test.lua index 6087e5ae..385e7648 100644 --- a/test/tarantool-tests/gh-6782-stitching-in-vmevent-handler.test.lua +++ b/test/tarantool-tests/gh-6782-stitching-in-vmevent-handler.test.lua @@ -1,9 +1,11 @@ local tap = require('tap') - -- Test file to demonstrate incorrect stitching behaviour -- in vmevent handler. -- See also https://github.com/tarantool/tarantool/issues/6782. -local test = tap.test('gh-6782-stitching-in-vmevent-handler') +local test = tap.test('gh-6782-stitching-in-vmevent-handler'):skipcond({ + ['Test requires JIT enabled'] = not jit.status(), +}) + test:plan(1) -- Just dump bytecodes is enough. diff --git a/test/tarantool-tests/gh-6976-narrowing-of-unary-minus.test.lua b/test/tarantool-tests/gh-6976-narrowing-of-unary-minus.test.lua index b4792f59..40387cca 100644 --- a/test/tarantool-tests/gh-6976-narrowing-of-unary-minus.test.lua +++ b/test/tarantool-tests/gh-6976-narrowing-of-unary-minus.test.lua @@ -1,5 +1,8 @@ local tap = require('tap') -local test = tap.test('gh-6976-narrowing-of-unary-minus') +local test = tap.test('gh-6976-narrowing-of-unary-minus'):skipcond({ + ['Test requires JIT enabled'] = not jit.status(), +}) + test:plan(2) jit.opt.start('hotloop=1') diff --git a/test/tarantool-tests/gh-7264-add-proto-trace-sysprof-default.test.lua b/test/tarantool-tests/gh-7264-add-proto-trace-sysprof-default.test.lua index f139b6b5..bc8f3d94 100644 --- a/test/tarantool-tests/gh-7264-add-proto-trace-sysprof-default.test.lua +++ b/test/tarantool-tests/gh-7264-add-proto-trace-sysprof-default.test.lua @@ -1,5 +1,6 @@ local tap = require('tap') local test = tap.test('gh-7264-add-proto-trace-sysprof-default'):skipcond({ + ['Test requires JIT enabled'] = not jit.status(), ['Sysprof is implemented for x86_64 only'] = jit.arch ~= 'x86' and jit.arch ~= 'x64', ['Sysprof is implemented for Linux only'] = jit.os ~= 'Linux', }) diff --git a/test/tarantool-tests/lj-350-sload-typecheck.test.lua b/test/tarantool-tests/lj-350-sload-typecheck.test.lua index 33794943..5b25864d 100644 --- a/test/tarantool-tests/lj-350-sload-typecheck.test.lua +++ b/test/tarantool-tests/lj-350-sload-typecheck.test.lua @@ -1,13 +1,15 @@ local tap = require('tap') -local traceinfo = require('jit.util').traceinfo - -- Test file to demonstrate the incorrect GC64 JIT asembling -- `IR_SLOAD`. -- See also https://github.com/LuaJIT/LuaJIT/pull/350. -local test = tap.test('lj-350-sload-typecheck') +local test = tap.test('lj-350-sload-typecheck'):skipcond({ + ['Test requires JIT enabled'] = not jit.status(), +}) test:plan(1) +local traceinfo = require('jit.util').traceinfo + -- Contains only IR_SLOAD after recording. local function sload(arg) return arg diff --git a/test/tarantool-tests/lj-356-ir-khash-non-string-obj.test.lua b/test/tarantool-tests/lj-356-ir-khash-non-string-obj.test.lua index 7f304183..9977205d 100644 --- a/test/tarantool-tests/lj-356-ir-khash-non-string-obj.test.lua +++ b/test/tarantool-tests/lj-356-ir-khash-non-string-obj.test.lua @@ -1,17 +1,20 @@ local tap = require('tap') -local traceinfo = require('jit.util').traceinfo -local table_new = require('table.new') - -- Test file to demonstrate the incorrect GC64 JIT behaviour -- of an `IR_HREF` for the on-trace-constant key lookup. -- See also https://github.com/LuaJIT/LuaJIT/pull/356. -local test = tap.test('lj-356-ir-khash-non-string-obj') +local test = tap.test('lj-356-ir-khash-non-string-obj'):skipcond({ + ['Test requires JIT enabled'] = not jit.status(), +}) + local N_ITERATIONS = 4 -- Amount of iteration for trace compilation and execution and -- additional check, that there is no new trace compiled. test:plan(N_ITERATIONS + 1) +local traceinfo = require('jit.util').traceinfo +local table_new = require('table.new') + -- To reproduce the issue we need to compile a trace with -- `IR_HREF`, with a lookup of constant hash key GC value. To -- prevent an `IR_HREFK` to be emitted instead, we need a table diff --git a/test/tarantool-tests/lj-357-arm64-hrefk.test.lua b/test/tarantool-tests/lj-357-arm64-hrefk.test.lua index 8af9143a..d7e9c85e 100644 --- a/test/tarantool-tests/lj-357-arm64-hrefk.test.lua +++ b/test/tarantool-tests/lj-357-arm64-hrefk.test.lua @@ -1,9 +1,11 @@ local tap = require('tap') - -- Test file to demonstrate the incorrect JIT behaviour for HREFK -- IR compilation on arm64. -- See also https://github.com/LuaJIT/LuaJIT/issues/357. -local test = tap.test('lj-357-arm64-hrefk') +local test = tap.test('lj-357-arm64-hrefk'):skipcond({ + ['Test requires JIT enabled'] = not jit.status(), +}) + test:plan(2) jit.opt.start('hotloop=1', 'hotexit=1') diff --git a/test/tarantool-tests/lj-375-ir-bufput-signed-char.test.lua b/test/tarantool-tests/lj-375-ir-bufput-signed-char.test.lua index 7c8df948..f600d898 100644 --- a/test/tarantool-tests/lj-375-ir-bufput-signed-char.test.lua +++ b/test/tarantool-tests/lj-375-ir-bufput-signed-char.test.lua @@ -1,6 +1,8 @@ local tap = require('tap') +local test = tap.test('lj-375-ir-bufput-signed-char'):skipcond({ + ['Test requires JIT enabled'] = not jit.status(), +}) -local test = tap.test('lj-375-ir-bufput-signed-char') -- XXX: Number of loop iterations. -- 1 -- instruction becomes hot -- 2, 3 -- trace is recorded (considering loop recording diff --git a/test/tarantool-tests/lj-408-tonumber-cdata-record.test.lua b/test/tarantool-tests/lj-408-tonumber-cdata-record.test.lua index a8235e93..bdd0aaaa 100644 --- a/test/tarantool-tests/lj-408-tonumber-cdata-record.test.lua +++ b/test/tarantool-tests/lj-408-tonumber-cdata-record.test.lua @@ -1,18 +1,19 @@ -local ffi = require('ffi') local tap = require('tap') - -- Test file to demonstrate the incorrect JIT recording for -- `tonumber()` function with cdata argument for failed -- conversions. -- See also https://github.com/LuaJIT/LuaJIT/issues/408, -- https://github.com/LuaJIT/LuaJIT/pull/412, -- https://github.com/tarantool/tarantool/issues/7655. -local test = tap.test('lj-408-tonumber-cdata-record') - -local NULL = ffi.cast('void *', 0) +local test = tap.test('lj-408-tonumber-cdata-record'):skipcond({ + ['Test requires JIT enabled'] = not jit.status(), +}) test:plan(4) +local ffi = require('ffi') +local NULL = ffi.cast('void *', 0) + local function check(x) -- Don't use a tail call to avoid "leaving loop in root trace" -- error, so the trace will be compiled. diff --git a/test/tarantool-tests/lj-416-xor-before-jcc.test.lua b/test/tarantool-tests/lj-416-xor-before-jcc.test.lua index f9a2a869..861114e8 100644 --- a/test/tarantool-tests/lj-416-xor-before-jcc.test.lua +++ b/test/tarantool-tests/lj-416-xor-before-jcc.test.lua @@ -1,7 +1,8 @@ -local ffi = require('ffi') local tap = require('tap') +local test = tap.test('lj-416-xor-before-jcc'):skipcond({ + ['Test requires JIT enabled'] = not jit.status(), +}) -local test = tap.test('lj-416-xor-before-jcc') test:plan(1) -- To reproduce this issue, we need: @@ -30,6 +31,7 @@ test:plan(1) -- ucomisd and the jnb, thereby causing the jnb to do the wrong -- thing. +local ffi = require('ffi') ffi.cdef[[ int test_xor_func(int a, int b, int c, int d, int e, int f, void * g, int h); ]] diff --git a/test/tarantool-tests/lj-430-maxirconst.test.lua b/test/tarantool-tests/lj-430-maxirconst.test.lua index 633ab676..531acd7d 100644 --- a/test/tarantool-tests/lj-430-maxirconst.test.lua +++ b/test/tarantool-tests/lj-430-maxirconst.test.lua @@ -1,5 +1,6 @@ local tap = require('tap') local test = tap.test('lj-430-maxirconst'):skipcond({ + ['Test requires JIT enabled'] = not jit.status(), ['Disabled on *BSD due to #4819'] = jit.os == 'BSD', }) diff --git a/test/tarantool-tests/lj-505-fold-no-strref-for-ptrdiff.test.lua b/test/tarantool-tests/lj-505-fold-no-strref-for-ptrdiff.test.lua index 2866fb12..fec08b30 100644 --- a/test/tarantool-tests/lj-505-fold-no-strref-for-ptrdiff.test.lua +++ b/test/tarantool-tests/lj-505-fold-no-strref-for-ptrdiff.test.lua @@ -1,6 +1,8 @@ local tap = require('tap') +local test = tap.test("lj-505-fold-icorrect-behavior"):skipcond({ + ['Test requires JIT enabled'] = not jit.status(), +}) -local test = tap.test("lj-505-fold-icorrect-behavior") test:plan(1) -- Test file to demonstrate Lua fold machinery icorrect behavior, details: diff --git a/test/tarantool-tests/lj-524-fold-conv-respect-src-irt.test.lua b/test/tarantool-tests/lj-524-fold-conv-respect-src-irt.test.lua index cd0f0f04..b2ccae63 100644 --- a/test/tarantool-tests/lj-524-fold-conv-respect-src-irt.test.lua +++ b/test/tarantool-tests/lj-524-fold-conv-respect-src-irt.test.lua @@ -1,9 +1,11 @@ local tap = require('tap') -local ffi = require('ffi') +local test = tap.test("or-524-fold-icorrect-behavior"):skipcond({ + ['Test requires JIT enabled'] = not jit.status(), +}) -local test = tap.test("or-524-fold-icorrect-behavior") test:plan(1) +local ffi = require('ffi') -- Test file to demonstrate LuaJIT folding machinery incorrect behaviour, -- details: -- https://github.com/LuaJIT/LuaJIT/issues/524 diff --git a/test/tarantool-tests/lj-556-fix-loop-realignment.test.lua b/test/tarantool-tests/lj-556-fix-loop-realignment.test.lua index 6015f55f..b94bd3e9 100644 --- a/test/tarantool-tests/lj-556-fix-loop-realignment.test.lua +++ b/test/tarantool-tests/lj-556-fix-loop-realignment.test.lua @@ -1,6 +1,8 @@ local tap = require('tap') +local test = tap.test('lj-556-fix-loop-realignment'):skipcond({ + ['Test requires JIT enabled'] = not jit.status(), +}) -local test = tap.test('lj-556-fix-loop-realignment') test:plan(1) -- Test file to demonstrate JIT misbehaviour for loop realignment diff --git a/test/tarantool-tests/lj-584-bad-renames-for-sunk-values.test.lua b/test/tarantool-tests/lj-584-bad-renames-for-sunk-values.test.lua index f037c898..e0c3e577 100644 --- a/test/tarantool-tests/lj-584-bad-renames-for-sunk-values.test.lua +++ b/test/tarantool-tests/lj-584-bad-renames-for-sunk-values.test.lua @@ -1,6 +1,8 @@ local tap = require('tap') +local test = tap.test('lj-584-bad-renames-for-sunk-values'):skipcond({ + ['Test requires JIT enabled'] = not jit.status(), +}) -local test = tap.test('lj-584-bad-renames-for-sunk-values') test:plan(1) -- Test file to demonstrate LuaJIT assembler misbehaviour. diff --git a/test/tarantool-tests/lj-603-err-snap-restore.test.lua b/test/tarantool-tests/lj-603-err-snap-restore.test.lua index c67da00e..28aaf7f5 100644 --- a/test/tarantool-tests/lj-603-err-snap-restore.test.lua +++ b/test/tarantool-tests/lj-603-err-snap-restore.test.lua @@ -3,6 +3,7 @@ local tap = require('tap') -- is raised on restoration from the snapshot. -- See also https://github.com/LuaJIT/LuaJIT/issues/603. local test = tap.test('lj-603-err-snap-restore'):skipcond({ + ['Test requires JIT enabled'] = not jit.status(), ['Disabled on *BSD due to #4819'] = jit.os == 'BSD', -- XXX: The different amount of stack slots is in-use for -- Tarantool at start, so just skip test for it. diff --git a/test/tarantool-tests/lj-672-cdata-allocation-recording.test.lua b/test/tarantool-tests/lj-672-cdata-allocation-recording.test.lua index 2165afe3..1d6b19ba 100644 --- a/test/tarantool-tests/lj-672-cdata-allocation-recording.test.lua +++ b/test/tarantool-tests/lj-672-cdata-allocation-recording.test.lua @@ -1,5 +1,6 @@ local tap = require('tap') local test = tap.test('lj-672-cdata-allocation-recording'):skipcond({ + ['Test requires JIT enabled'] = not jit.status(), ['Disabled on *BSD due to #4819'] = jit.os == 'BSD', }) diff --git a/test/tarantool-tests/lj-864-varg-rec-base-offset.test.lua b/test/tarantool-tests/lj-864-varg-rec-base-offset.test.lua index d74c3c2b..d41e33ff 100644 --- a/test/tarantool-tests/lj-864-varg-rec-base-offset.test.lua +++ b/test/tarantool-tests/lj-864-varg-rec-base-offset.test.lua @@ -1,10 +1,12 @@ local tap = require('tap') - -- Test file to demonstrate LuaJIT misbehaviour during recording -- BC_VARG with nvarargs >= nresults in GC64 mode. -- See also https://github.com/LuaJIT/LuaJIT/issues/864, -- https://github.com/tarantool/tarantool/issues/7172. -local test = tap.test('lj-864-varg-rec-base-offset') +local test = tap.test('lj-864-varg-rec-base-offset'):skipcond({ + ['Test requires JIT enabled'] = not jit.status(), +}) + test:plan(1) jit.opt.start('hotloop=1') diff --git a/test/tarantool-tests/lj-flush-on-trace.test.lua b/test/tarantool-tests/lj-flush-on-trace.test.lua index 60a0ccbd..e157622a 100644 --- a/test/tarantool-tests/lj-flush-on-trace.test.lua +++ b/test/tarantool-tests/lj-flush-on-trace.test.lua @@ -1,5 +1,6 @@ local tap = require('tap') local test = tap.test('lj-flush-on-trace'):skipcond({ + ['Test requires JIT enabled'] = not jit.status(), ['Disabled on *BSD due to #4819'] = jit.os == 'BSD', }) diff --git a/test/tarantool-tests/misclib-getmetrics-capi.test.lua b/test/tarantool-tests/misclib-getmetrics-capi.test.lua index a41a1c7a..c8879f57 100644 --- a/test/tarantool-tests/misclib-getmetrics-capi.test.lua +++ b/test/tarantool-tests/misclib-getmetrics-capi.test.lua @@ -1,5 +1,6 @@ local tap = require('tap') local test = tap.test("clib-misc-getmetrics"):skipcond({ + ['Test requires JIT enabled'] = not jit.status(), ['Disabled on *BSD due to #4819'] = jit.os == 'BSD', }) diff --git a/test/tarantool-tests/misclib-getmetrics-lapi.test.lua b/test/tarantool-tests/misclib-getmetrics-lapi.test.lua index e5ee7902..b1f86cea 100644 --- a/test/tarantool-tests/misclib-getmetrics-lapi.test.lua +++ b/test/tarantool-tests/misclib-getmetrics-lapi.test.lua @@ -4,6 +4,7 @@ local tap = require('tap') local test = tap.test("lib-misc-getmetrics"):skipcond({ + ['Test requires JIT enabled'] = not jit.status(), ['Disabled on *BSD due to #4819'] = jit.os == 'BSD', }) diff --git a/test/tarantool-tests/misclib-memprof-lapi.test.lua b/test/tarantool-tests/misclib-memprof-lapi.test.lua index accb1ee1..e2701c13 100644 --- a/test/tarantool-tests/misclib-memprof-lapi.test.lua +++ b/test/tarantool-tests/misclib-memprof-lapi.test.lua @@ -1,8 +1,6 @@ -- XXX: This comment is a reminder to reimplement memprof tests -- assertions to make them more indepentent to the changes made. --- Now I just leave this 5 lines comment to preserve line numbers. --- TODO: This line will be removed in the next patch. --- TODO: This line will be removed in the next patch. +-- Now I just leave this 3 lines comment to preserve line numbers. local tap = require("tap") local test = tap.test("misc-memprof-lapi"):skipcond({ ["Memprof is implemented for x86_64 only"] = jit.arch ~= "x86" and @@ -18,8 +16,10 @@ local jit_opt_default = { "minstitch=0", } -jit.off() -jit.flush() +-- XXX: Run JIT tuning functions in a safe frame to avoid errors +-- thrown when LuaJIT is compiled with JIT engine disabled. +pcall(jit.off) +pcall(jit.flush) local table_new = require "table.new" @@ -263,16 +263,14 @@ test:test("symtab-enrich-str", function(subtest) ) end) --- Test profiler with enabled JIT. -jit.on() - test:test("jit-output", function(subtest) - -- Disabled on *BSD due to #4819. - if jit.os == 'BSD' then - subtest:plan(1) - subtest:skip('Disabled due to #4819') - return - end + subtest:skipcond({ + ['Test requires JIT enabled'] = not jit.status(), + ['Disabled on *BSD due to #4819'] = jit.os == 'BSD', + }) + + -- Test profiler with enabled JIT. + jit.on() subtest:plan(4) diff --git a/test/tarantool-tests/misclib-sysprof-lapi.test.lua b/test/tarantool-tests/misclib-sysprof-lapi.test.lua index 8dc36592..dcde81b9 100644 --- a/test/tarantool-tests/misclib-sysprof-lapi.test.lua +++ b/test/tarantool-tests/misclib-sysprof-lapi.test.lua @@ -6,8 +6,10 @@ local test = tap.test("misc-sysprof-lapi"):skipcond({ test:plan(19) -jit.off() -jit.flush() +-- XXX: Run JIT tuning functions in a safe frame to avoid errors +-- thrown when LuaJIT is compiled with JIT engine disabled. +pcall(jit.off) +pcall(jit.flush) local bufread = require("utils.bufread") local symtab = require("utils.symtab") @@ -125,5 +127,4 @@ check_mode("C", 100) os.remove(TMP_BINFILE) -jit.on() os.exit(test:check() and 0 or 1) -- 2.30.2