Hitachi SH processors support - lightning.git - Portable just-in-time compiler library

index : lightning.git
Portable just-in-time compiler library
summary refs log tree commit diff
diff options
context:
space:
mode:
authorPaul Cercueil <paul@crapouillou.net>2024年10月23日 13:07:07 +0200
committerpcpa <paulo.cesar.pereira.de.andrade@gmail.com>2024年10月23日 11:46:34 -0300
commit050a0869e978fa7e40202db9fbff28c736c46311 (patch)
tree90ccd8b74700e9e6e1df66f2f7ef7541d2311f59
parentbfd695a94668861a9447b29d2666f8b9c5dcd5bf (diff)
downloadlightning-050a0869e978fa7e40202db9fbff28c736c46311.tar.gz
Hitachi SH processors support
Hi Paulo, This set of two patches add support for the Hitachi SH family of processors. The first patch introduces a fallback to divi_u using a multiplication, which is much faster on SH than using the DIV instruction. The second patch is the big one that adds SH support. Note that jiz_sh-sz.c is still my hand-edited version and not the auto-generated one; I feel like the generated one isn't right, as it does not account for the constants used with movi(), and that cascades to basically every other instruction emitter. Otherwise it passes all tests (except for the ccall one which is affected by a GCC bug: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115948) and I use it with great success in my emulator. Cheers, -Paul Paul Cercueil (2): Add fallback for divi_u Add support for Hitachi SH processors check/float.tst | 4 +- check/lightning.c | 5 + configure.ac | 2 + include/lightning.h.in | 2 + include/lightning/Makefile.am | 4 + include/lightning/jit_private.h | 30 +- include/lightning/jit_sh.h | 83 + lib/Makefile.am | 3 + lib/jit_disasm.c | 6 + lib/jit_fallback.c | 31 + lib/jit_sh-cpu.c | 3209 +++++++++++++++++++++++++++++++ lib/jit_sh-fpu.c | 2394 +++++++++++++++++++++++ lib/jit_sh-sz.c | 598 ++++++ lib/jit_sh.c | 2215 +++++++++++++++++++++ lib/jit_size.c | 2 + lib/lightning.c | 2 + 16 files changed, 8586 insertions(+), 4 deletions(-) create mode 100644 include/lightning/jit_sh.h create mode 100644 lib/jit_sh-cpu.c create mode 100644 lib/jit_sh-fpu.c create mode 100644 lib/jit_sh-sz.c create mode 100644 lib/jit_sh.c -- 2.45.2
Diffstat
0 files changed, 0 insertions, 0 deletions
generated by cgit v1.2.3 (git 2.39.1) at 2025年09月04日 18:15:38 +0000

AltStyle によって変換されたページ (->オリジナル) /