Tarantool development patches archive
 help / color / mirror / Atom feed
From: Sergey Kaplun via Tarantool-patches <tarantool-patches@dev.tarantool.org>
To: Sergey Bronnikov <sergeyb@tarantool.org>
Cc: tarantool-patches@dev.tarantool.org
Subject: [Tarantool-patches] [PATCH luajit 0/2] Refactoring and FMA optimizations
Date: Tue, 14 Jan 2025 14:06:56 +0300	[thread overview]
Message-ID: <cover.1736779534.git.skaplun@tarantool.org> (raw)

The first commit in the patchset helps to avoid conflicts during the
backporting of the second patch, which fixes the ARM64 behaviour for FMA
optimization. Since the first patch is just a refactoring, it may be
easily applied too.

Branch: https://github.com/tarantool/luajit/tree/skaplun/lj-918-fma-optimization
Related issues:
* https://github.com/LuaJIT/LuaJIT/issues/24
* https://github.com/LuaJIT/LuaJIT/issues/918
* https://github.com/tarantool/tarantool/issues/10709

Mike Pall (2):
  Cleanup CPU detection and tuning for old CPUs.
  Disable FMA by default. Use -Ofma or jit.opt.start("+fma") to enable.

 doc/running.html                              |  8 ++
 src/Makefile.original                         |  1 -
 src/lib_jit.c                                 | 65 +++++-------
 src/lj_arch.h                                 |  6 +-
 src/lj_asm_arm.h                              |  6 +-
 src/lj_asm_arm64.h                            |  3 +-
 src/lj_asm_ppc.h                              |  3 +-
 src/lj_asm_x86.h                              | 33 ++-----
 src/lj_dispatch.c                             |  7 --
 src/lj_emit_x86.h                             |  5 +-
 src/lj_errmsg.h                               |  4 -
 src/lj_jit.h                                  | 98 ++++++++++---------
 src/lj_vmmath.c                               | 13 ++-
 src/ljamalg.c                                 | 10 --
 src/vm_arm64.dasc                             |  4 +-
 ...lj-918-fma-numerical-accuracy-jit.test.lua | 36 +++++++
 .../lj-918-fma-numerical-accuracy.test.lua    | 31 ++++++
 .../lj-918-fma-optimization.test.lua          | 25 +++++
 18 files changed, 214 insertions(+), 144 deletions(-)
 create mode 100644 test/tarantool-tests/lj-918-fma-numerical-accuracy-jit.test.lua
 create mode 100644 test/tarantool-tests/lj-918-fma-numerical-accuracy.test.lua
 create mode 100644 test/tarantool-tests/lj-918-fma-optimization.test.lua

-- 
2.47.1


             reply	other threads:[~2025-01-14 11:07 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-01-14 11:06 Sergey Kaplun via Tarantool-patches [this message]
2025-01-14 11:06 ` [Tarantool-patches] [PATCH luajit 1/2] Cleanup CPU detection and tuning for old CPUs Sergey Kaplun via Tarantool-patches
2025-01-14 11:25   ` Sergey Bronnikov via Tarantool-patches
2025-01-15 13:10     ` Sergey Kaplun via Tarantool-patches
2025-01-14 11:06 ` [Tarantool-patches] [PATCH luajit 2/2] Disable FMA by default. Use -Ofma or jit.opt.start("+fma") to enable Sergey Kaplun via Tarantool-patches
2025-01-14 12:45   ` Sergey Bronnikov via Tarantool-patches
2025-01-15 13:06     ` Sergey Kaplun 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=cover.1736779534.git.skaplun@tarantool.org \
    --to=tarantool-patches@dev.tarantool.org \
    --cc=sergeyb@tarantool.org \
    --cc=skaplun@tarantool.org \
    --subject='Re: [Tarantool-patches] [PATCH luajit 0/2] Refactoring and FMA optimizations' \
    /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