mirror of
https://github.com/ruby/ruby.git
synced 2022-11-09 12:17:21 -05:00
46 lines
1.1 KiB
YAML
46 lines
1.1 KiB
YAML
prelude: |
|
|
# to be used with: --disable-gems --jit-min-calls=2
|
|
def compile(call)
|
|
eval(<<~EOS)
|
|
#{call}; #{call}
|
|
if RubyVM::MJIT.enabled?
|
|
RubyVM::MJIT.pause(wait: true)
|
|
end
|
|
EOS
|
|
end
|
|
benchmark:
|
|
- name: "mjit_exec_iseq_vme_jit "
|
|
prelude: |
|
|
def jit() end
|
|
compile('jit')
|
|
script: jit
|
|
- name: mjit_exec_iseq_vme_jit_jit
|
|
prelude: |
|
|
def jit2() end
|
|
def jit() jit2() end
|
|
compile('jit')
|
|
script: jit
|
|
- name: mjit_exec_iseq_vme_jit_vme
|
|
prelude: |
|
|
def jit2() rescue; end
|
|
def jit() jit2() end
|
|
compile('jit')
|
|
script: jit
|
|
- name: "mjit_exec_send_vme_jit "
|
|
prelude: |
|
|
def jit() end
|
|
compile('send(:jit)')
|
|
script: send(:jit)
|
|
- name: mjit_exec_send_vme_jit_jit
|
|
prelude: |
|
|
def jit2() end
|
|
def jit() send(:jit2) end
|
|
compile('send(:jit)')
|
|
script: send(:jit)
|
|
- name: mjit_exec_send_vme_jit_vme
|
|
prelude: |
|
|
def jit2() rescue; end
|
|
def jit() send(:jit2) end
|
|
compile('send(:jit)')
|
|
script: send(:jit)
|
|
loop_count: 30000000
|