summaryrefslogtreecommitdiff
path: root/yjit/bindgen
diff options
context:
space:
mode:
authorOle Friis Østergaard <olefriis@gmail.com>2023-03-01 14:49:39 +0100
committerJohn Hawthorn <john@hawthorn.email>2023-03-08 09:34:31 -0800
commit4667a3a665c40d9ea7f2be6417d1537deb208c52 (patch)
tree5c58f9c1cb94bdef93baadfbea6bf27ca6648161 /yjit/bindgen
parent1a3f8e1c9f6ce4b1cd7236fdcdd17a8719654320 (diff)
downloadruby-4667a3a665c40d9ea7f2be6417d1537deb208c52.tar.gz
Add defined_ivar as YJIT instruction as well
This works much like the existing `defined` implementation, but calls out to rb_ivar_defined instead of the more general rb_vm_defined. Other difference to the existing `defined` implementation is that this new instruction has to take the same operands as the CRuby `defined_ivar` instruction.
Diffstat (limited to 'yjit/bindgen')
-rw-r--r--yjit/bindgen/src/main.rs1
1 files changed, 1 insertions, 0 deletions
diff --git a/yjit/bindgen/src/main.rs b/yjit/bindgen/src/main.rs
index 71bf1df3e8..71f7725f6b 100644
--- a/yjit/bindgen/src/main.rs
+++ b/yjit/bindgen/src/main.rs
@@ -346,6 +346,7 @@ fn main() {
// From include/ruby/internal/intern/variable.h
.allowlist_function("rb_attr_get")
+ .allowlist_function("rb_ivar_defined")
.allowlist_function("rb_ivar_get")
// From include/ruby/internal/intern/vm.h