diff options
author | ko1 <ko1@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2012-10-18 08:35:19 +0000 |
---|---|---|
committer | ko1 <ko1@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2012-10-18 08:35:19 +0000 |
commit | 1486b9cf0ac549edb7e7c3f886558d3e98100746 (patch) | |
tree | 420918bd203542f92b1ffd72838df9c98fffdaed /insns.def | |
parent | 6be52625b25ac334f182a7814c7c0590c5a0bc16 (diff) | |
download | ruby-1486b9cf0ac549edb7e7c3f886558d3e98100746.tar.gz |
* insns.def (opt_send_simple): introduce new instruction used
when no need to care about block and splat.
* compile.c: use the `opt_send_simple' instruction.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37258 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'insns.def')
-rw-r--r-- | insns.def | 15 |
1 files changed, 15 insertions, 0 deletions
@@ -2050,6 +2050,21 @@ opt_regexpmatch2 /** @c optimize + @e Invoke method without block, splat + @j Invoke method without block, splat + */ +DEFINE_INSN +opt_send_simple +(CALL_INFO ci) +(...) +(VALUE val) // inc += -ci->orig_argc; +{ + vm_search_method(ci, ci->recv = TOPN(ci->argc)); + CALL_METHOD(ci); +} + +/** + @c optimize @e call native compiled method @j ネイティブコンパイルしたメソッドを起動。 */ |