summaryrefslogtreecommitdiff
path: root/tool/ruby_vm/views/vm.inc.erb
diff options
context:
space:
mode:
authorAlan Wu <[email protected]>2020-09-03 11:08:16 -0400
committerAlan Wu <[email protected]>2021-10-20 18:19:22 -0400
commitcec197696f3edcff553373e9597130fde2d1f7be (patch)
tree1a68c70ef9f972829fd59c4b9809e21bdc9a1ee7 /tool/ruby_vm/views/vm.inc.erb
parentb0c3f18ec519d505527e1929e25ec264c831a89e (diff)
Add example handler for ujit and scrape it from vm.o
Diffstat (limited to 'tool/ruby_vm/views/vm.inc.erb')
-rw-r--r--tool/ruby_vm/views/vm.inc.erb10
1 files changed, 10 insertions, 0 deletions
diff --git a/tool/ruby_vm/views/vm.inc.erb b/tool/ruby_vm/views/vm.inc.erb
index c1a3faf60a..7942a3ef87 100644
--- a/tool/ruby_vm/views/vm.inc.erb
+++ b/tool/ruby_vm/views/vm.inc.erb
@@ -28,3 +28,13 @@
% RubyVM::TraceInstructions.to_a.each do |insn|
<%= render 'trace_instruction', locals: { insn: insn } -%>
% end
+% RubyVM::UJITExampleInstructions.to_a.each do |insn|
+INSN_ENTRY(<%= insn.name %>)
+{
+ START_OF_ORIGINAL_INSN(<%= insn.name %>);
+ // assumes USE_MACHINE_REGS, aka reg_pc setup,
+ // aka #define SET_PC(x) (reg_cfp->pc = reg_pc = (x))
+ reg_pc = rb_ujit_empty_func(GET_CFP());
+ END_INSN(<%= insn.name %>);
+}
+% end