ruby-changes:68633
From: Maxime <ko1@a...>
Date: Thu, 21 Oct 2021 08:11:13 +0900 (JST)
Subject: [ruby-changes:68633] ef9eb83cbe (master): Commit before merge
https://git.ruby-lang.org/ruby.git/commit/?id=ef9eb83cbe From ef9eb83cbecb3d7add699c41f713a42c296fe65a Mon Sep 17 00:00:00 2001 From: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@s...> Date: Fri, 16 Oct 2020 13:42:14 -0400 Subject: Commit before merge --- ujit_compile.c | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/ujit_compile.c b/ujit_compile.c index 820d845fc6..fe492da027 100644 --- a/ujit_compile.c +++ b/ujit_compile.c @@ -493,21 +493,21 @@ gen_opt_send_without_block(codeblock_t* cb, codeblock_t* ocb, ctx_t* ctx) https://github.com/ruby/ruby/blob/trunk/ujit_compile.c#L493 return false; } - /* // Don't JIT if this is not a C call - if (cd->cc->call_ != vm_call_cfunc_with_frame) + if (vm_cc_cme(cd->cc)->def->type != VM_METHOD_TYPE_CFUNC) { return false; } - */ - - - - // TODO: stop if the inline cache isn't filled - - // TODO: stop if this isn't a C call + // Things we need to do at run-time: + // - Check that the cached klass matches + // - Check that method entry is not invalidated + // - ??? + // - Create a new frame + // - copy function arguments? + // - Call the C function + // - Remove the frame -- cgit v1.2.1 -- ML: ruby-changes@q... Info: http://www.atdot.net/~ko1/quickml/