Remove obsoleted opt_call_c_function insn (#3232)
* Remove obsoleted opt_call_c_function insn * Keep opt_call_c_function with DEFINE_INSN_IF
This commit is contained in:
parent
e30ff63fd4
commit
e544a3a23c
Notes:
git
2020-06-18 01:16:34 +09:00
Merged-By: k0kubun <takashikkbn@gmail.com>
@ -412,8 +412,6 @@ tests = [
|
|||||||
class String; def =~ other; true; end; end
|
class String; def =~ other; true; end; end
|
||||||
'true' =~ /true/
|
'true' =~ /true/
|
||||||
},
|
},
|
||||||
|
|
||||||
[ 'opt_call_c_function', 'Struct.new(:x).new.x = true', ],
|
|
||||||
]
|
]
|
||||||
|
|
||||||
# normal path
|
# normal path
|
||||||
|
@ -1455,7 +1455,7 @@ opt_regexpmatch2
|
|||||||
}
|
}
|
||||||
|
|
||||||
/* call native compiled method */
|
/* call native compiled method */
|
||||||
DEFINE_INSN
|
DEFINE_INSN_IF(SUPPORT_CALL_C_FUNCTION)
|
||||||
opt_call_c_function
|
opt_call_c_function
|
||||||
(rb_insn_func_t funcptr)
|
(rb_insn_func_t funcptr)
|
||||||
()
|
()
|
||||||
|
@ -22,7 +22,6 @@ class TestJIT < Test::Unit::TestCase
|
|||||||
TEST_PENDING_INSNS = RubyVM::INSTRUCTION_NAMES.select { |n| n.start_with?('trace_') }.map(&:to_sym) + [
|
TEST_PENDING_INSNS = RubyVM::INSTRUCTION_NAMES.select { |n| n.start_with?('trace_') }.map(&:to_sym) + [
|
||||||
# not supported yet
|
# not supported yet
|
||||||
:defineclass,
|
:defineclass,
|
||||||
:opt_call_c_function,
|
|
||||||
|
|
||||||
# to be tested
|
# to be tested
|
||||||
:invokebuiltin,
|
:invokebuiltin,
|
||||||
@ -613,10 +612,6 @@ class TestJIT < Test::Unit::TestCase
|
|||||||
assert_compile_once("'true' =~ /true/", result_inspect: '0', insns: %i[opt_regexpmatch2])
|
assert_compile_once("'true' =~ /true/", result_inspect: '0', insns: %i[opt_regexpmatch2])
|
||||||
end
|
end
|
||||||
|
|
||||||
def test_compile_insn_opt_call_c_function
|
|
||||||
skip "support this in opt_call_c_function (low priority)"
|
|
||||||
end
|
|
||||||
|
|
||||||
def test_compile_insn_opt_invokebuiltin_delegate_leave
|
def test_compile_insn_opt_invokebuiltin_delegate_leave
|
||||||
insns = collect_insns(RubyVM::InstructionSequence.of("\x00".method(:unpack)).to_a)
|
insns = collect_insns(RubyVM::InstructionSequence.of("\x00".method(:unpack)).to_a)
|
||||||
mark_tested_insn(:opt_invokebuiltin_delegate_leave, used_insns: insns)
|
mark_tested_insn(:opt_invokebuiltin_delegate_leave, used_insns: insns)
|
||||||
|
@ -17,7 +17,6 @@
|
|||||||
%
|
%
|
||||||
% unsupported_insns = [
|
% unsupported_insns = [
|
||||||
% 'defineclass', # low priority
|
% 'defineclass', # low priority
|
||||||
% 'opt_call_c_function', # low priority
|
|
||||||
% ]
|
% ]
|
||||||
%
|
%
|
||||||
% opt_send_without_block = RubyVM::Instructions.find { |i| i.name == 'opt_send_without_block' }
|
% opt_send_without_block = RubyVM::Instructions.find { |i| i.name == 'opt_send_without_block' }
|
||||||
|
@ -62,6 +62,10 @@
|
|||||||
#define OPT_SUPPORT_JOKE 0
|
#define OPT_SUPPORT_JOKE 0
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#ifndef OPT_SUPPORT_CALL_C_FUNCTION
|
||||||
|
#define OPT_SUPPORT_CALL_C_FUNCTION 0
|
||||||
|
#endif
|
||||||
|
|
||||||
#ifndef VM_COLLECT_USAGE_DETAILS
|
#ifndef VM_COLLECT_USAGE_DETAILS
|
||||||
#define VM_COLLECT_USAGE_DETAILS 0
|
#define VM_COLLECT_USAGE_DETAILS 0
|
||||||
#endif
|
#endif
|
||||||
|
Loading…
x
Reference in New Issue
Block a user