From: "maximecb (Maxime Chevalier-Boisvert) via ruby-core" Date: 2025-02-18T19:40:15+00:00 Subject: [ruby-core:121112] [Ruby master Feature#21140] Add a method to get the address of certain JIT related functions Issue #21140 has been updated by maximecb (Maxime Chevalier-Boisvert). > 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? ---------------------------------------- Feature #21140: Add a method to get the address of certain JIT related functions https://bugs.ruby-lang.org/issues/21140#change-112034 * 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/