Project

General

Profile

Actions

Feature #21116

closed

Extract RJIT as a third-party gem

Added by k0kubun (Takashi Kokubun) 16 days ago. Updated 9 days ago.

Status:
Closed
Assignee:
-
Target version:
-
[ruby-core:120891]

Description

Proposal

  • Extract the implementation of RJIT::C to ruby/rjit and publish it as a thirt-party gem rjit
  • Allow jit_exec() to call body->jit_entry even when --yjit is not given
  • Remove RJIT from the Ruby core
    • Remove --rjit flags and RubyVM::RJIT

Background

  • RJIT depends on fiddle, and fiddle has been extracted as a bundled gem. @hsbt (Hiroshi SHIBATA) and @nobu (Nobuyoshi Nakada) are struggling to maintain the dependency from the Ruby core to a bundled gem.
  • Integrating RJIT into the Ruby core has forced VM maintainers to update RJIT with every VM change, significantly increasing the maintenance burden.
  • I thought you couldn't implement the core of RJIT as a third-party gem when I introduced RJIT [Feature #19420]. However, now @tenderlovemaking (Aaron Patterson) and I think it's possible if we modify jit_exec() as explained in the proposal.

Related issues 2 (1 open1 closed)

Related to Ruby master - Feature #19420: Simplify MJIT implementationClosedActions
Related to Ruby master - Feature #21140: Add a method to get the address of certain JIT related functionsOpenActions
Actions #1

Updated by k0kubun (Takashi Kokubun) 16 days ago

Actions #2

Updated by k0kubun (Takashi Kokubun) 16 days ago

  • Description updated (diff)
Actions #3

Updated by k0kubun (Takashi Kokubun) 16 days ago

  • Description updated (diff)
Actions #4

Updated by k0kubun (Takashi Kokubun) 16 days ago

  • Description updated (diff)
Actions #5

Updated by k0kubun (Takashi Kokubun) 16 days ago

  • Description updated (diff)
Actions #6

Updated by nobu (Nobuyoshi Nakada) 9 days ago

  • Status changed from Open to Closed

Applied in changeset git|4a67ef09ccd703047552b740431cfe15e32451f4.


[Feature #21116] Extract RJIT as a third-party gem

Actions #7

Updated by tenderlovemaking (Aaron Patterson) 7 days ago

  • Related to Feature #21140: Add a method to get the address of certain JIT related functions added
Actions

Also available in: Atom PDF

Like2
Like0Like0Like0Like0Like0Like0Like0