From: Sergey Kaplun via Tarantool-patches <tarantool-patches@dev.tarantool.org> To: Maxim Kokryashkin <m.kokryashkin@tarantool.org>, Sergey Bronnikov <sergeyb@tarantool.org> Cc: tarantool-patches@dev.tarantool.org Subject: [Tarantool-patches] [PATCH luajit] test: add test for conversions folding Date: Thu, 16 Nov 2023 16:44:56 +0300 [thread overview] Message-ID: <20231116134456.5898-1-skaplun@tarantool.org> (raw) This patch adds the test for commit 1a401622fe83ae695226c94df3416e312315d659 ("Fix assertions."). This patch removes incorrect assertions in the fold optimizations for conversions from numbers to different integer types. Although the issue affects only branch 2.0, there is no need to fix it. Nevertheless, the test is required to avoid regressions in the future. Part of tarantool/tarantool#9145 --- Branch: https://github.com/tarantool/luajit/tree/skaplun/lj-833-fold-conv-from-num Tarantool PR: https://github.com/tarantool/tarantool/pull/9375 Related issues: * https://github.com/LuaJIT/LuaJIT/issues/833 * https://github.com/tarantool/tarantool/issues/9145 .../lj-833-fold-conv-from-num.test.lua | 33 +++++++++++++++++++ 1 file changed, 33 insertions(+) create mode 100644 test/tarantool-tests/lj-833-fold-conv-from-num.test.lua diff --git a/test/tarantool-tests/lj-833-fold-conv-from-num.test.lua b/test/tarantool-tests/lj-833-fold-conv-from-num.test.lua new file mode 100644 index 00000000..9e2059bd --- /dev/null +++ b/test/tarantool-tests/lj-833-fold-conv-from-num.test.lua @@ -0,0 +1,33 @@ +local tap = require('tap') + +-- XXX: Test the behaviour of fold optimizations from numbers to +-- different integer types. The test itself doesn't fail before +-- the commit since these changes relate only to version 2.0. + +local test = tap.test('lj-833-fold-conv-from-num'):skipcond({ + ['Test requires JIT enabled'] = not jit.status(), +}) + +local ffi = require('ffi') + +test:plan(3) + +local arr_i64 = ffi.new('int64_t [2]') +local arr_u64 = ffi.new('uint64_t [2]') +local arr_u32 = ffi.new('uint32_t [2]') + +jit.opt.start('hotloop=1') + +for _ = 1, 4 do + -- Test conversion to type (at store). Also, check the + -- conversion from number to int64_t at C array indexing. + arr_i64[1.1] = 1.1 + arr_u64[1.1] = 1.1 + arr_u32[1.1] = 1.1 +end + +test:is(arr_i64[1], 1LL, 'correct conversion to int64_t') +test:is(arr_u64[1], 1ULL, 'correct conversion to uint64_t') +test:is(arr_u32[1], 1ULL, 'correct conversion to uint32_t') + +test:done(true) -- 2.42.0
next reply other threads:[~2023-11-16 13:49 UTC|newest] Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top 2023-11-16 13:44 Sergey Kaplun via Tarantool-patches [this message] 2023-11-17 10:51 ` Maxim Kokryashkin via Tarantool-patches 2023-11-20 11:22 ` Sergey Kaplun via Tarantool-patches 2023-11-20 12:18 ` Sergey Bronnikov via Tarantool-patches 2023-11-23 6:32 ` Igor Munkin via Tarantool-patches
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=20231116134456.5898-1-skaplun@tarantool.org \ --to=tarantool-patches@dev.tarantool.org \ --cc=m.kokryashkin@tarantool.org \ --cc=sergeyb@tarantool.org \ --cc=skaplun@tarantool.org \ --subject='Re: [Tarantool-patches] [PATCH luajit] test: add test for conversions folding' \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: link
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox