summaryrefslogtreecommitdiff
path: root/insns.def
diff options
context:
space:
mode:
authork0kubun <k0kubun@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2018-09-25 17:19:51 (GMT)
committerk0kubun <k0kubun@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2018-09-25 17:19:51 (GMT)
commit08c9f030f6b5d260d12cf02a9ca0f4a60f816365 (patch)
tree42e5f6136b38effe27dac1617ce5ddd44fac6323 /insns.def
parent3f4d174c22589ea275f971fab90136add6e456ac (diff)
Revert "Revert r64824 to fix build failure on AppVeyor"
This reverts commit r64829. I'll prepare another temporary fix, but I'll separately commit that to make it easier to revert that later. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64838 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'insns.def')
-rw-r--r--insns.def28
1 files changed, 28 insertions, 0 deletions
diff --git a/insns.def b/insns.def
index 742cd87..cacc5b7 100644
--- a/insns.def
+++ b/insns.def
@@ -1216,6 +1216,34 @@ opt_ltlt
}
}
+/* optimized X&Y. */
+DEFINE_INSN
+opt_and
+(CALL_INFO ci, CALL_CACHE cc)
+(VALUE recv, VALUE obj)
+(VALUE val)
+{
+ val = vm_opt_and(recv, obj);
+
+ if (val == Qundef) {
+ CALL_SIMPLE_METHOD();
+ }
+}
+
+/* optimized X|Y. */
+DEFINE_INSN
+opt_or
+(CALL_INFO ci, CALL_CACHE cc)
+(VALUE recv, VALUE obj)
+(VALUE val)
+{
+ val = vm_opt_or(recv, obj);
+
+ if (val == Qundef) {
+ CALL_SIMPLE_METHOD();
+ }
+}
+
/* [] */
DEFINE_INSN
opt_aref