From: "tenderlovemaking (Aaron Patterson) via ruby-core" Date: 2025-02-18T19:45:37+00:00 Subject: [ruby-core:121113] [Ruby master Feature#21140] Add a method to get the address of certain JIT related functions Issue #21140 has been updated by tenderlovemaking (Aaron Patterson). maximecb (Maxime Chevalier-Boisvert) wrote in #note-15: > > I don't think providing the method hurts anything. It's experimental and unstable, so people who build anything with it should understand the risks of depending on it. > > People do lots of things they shouldn't do though. > > What do you think about the idea of guarding it behind a Ruby command-line argument such as `--enable-jit-gem-api` or something similar? I'd rather not add more flags and conditionals. But if that's what it takes to add this API then I would do it. ---------------------------------------- Feature #21140: Add a method to get the address of certain JIT related functions https://bugs.ruby-lang.org/issues/21140#change-112035 * Author: tenderlovemaking (Aaron Patterson) * Status: Open ---------------------------------------- Feature #21116 extracted RJIT as a gem. But RJIT accesses certain internal functions which it cannot access as a gem. For example it used the `rb_str_bytesize` function, but this symbol is not exported, so we cannot access it (even from a C extension). Instead of exporting these symbols, I would like to propose an API for getting access to their addresses in Ruby. For example ```ruby RubyVM::RJIT.address_of(:rb_str_bytesize) # => 123456 ``` I would like to limit the addresses to [this list](https://github.com/ruby/ruby/blob/f32d5071b7b01f258eb45cf533496d82d5c0f6a1/tool/rjit/bindgen.rb#L510-L578) which are the ones required by RJIT. -- https://bugs.ruby-lang.org/ ______________________________________________ ruby-core mailing list -- ruby-core@ml.ruby-lang.org To unsubscribe send an email to ruby-core-leave@ml.ruby-lang.org ruby-core info -- https://ml.ruby-lang.org/mailman3/lists/ruby-core.ml.ruby-lang.org/