diff options
author | Alan Wu <[email protected]> | 2020-09-03 11:08:16 -0400 |
---|---|---|
committer | Alan Wu <[email protected]> | 2021-10-20 18:19:22 -0400 |
commit | cec197696f3edcff553373e9597130fde2d1f7be (patch) | |
tree | 1a68c70ef9f972829fd59c4b9809e21bdc9a1ee7 /iseq.c | |
parent | b0c3f18ec519d505527e1929e25ec264c831a89e (diff) |
Add example handler for ujit and scrape it from vm.o
Diffstat (limited to 'iseq.c')
-rw-r--r-- | iseq.c | 11 |
1 files changed, 10 insertions, 1 deletions
@@ -3455,6 +3455,16 @@ trace_set_i(void *vstart, void *vend, size_t stride, void *data) return 0; } +VALUE * +rb_ujit_empty_func(rb_control_frame_t *cfp) +{ + // okay, not really empty, so maybe think of another name. + // it's put in this file instead of say, compile.c to dodge long C compile time. + // it just needs to be in a different unit from vm.o so the compiler can't see the definition + // and is forced to emit a call that respects the calling convention. + return NULL; +} + void rb_iseq_trace_set_all(rb_event_flag_t turnon_events) { @@ -3570,7 +3580,6 @@ struct succ_index_table { #define imm_block_rank_get(v, i) (((int)((v) >> ((i) * 7))) & 0x7f) #define small_block_rank_set(v, i, r) (v) |= (uint64_t)(r) << (9 * ((i) - 1)) #define small_block_rank_get(v, i) ((i) == 0 ? 0 : (((int)((v) >> (((i) - 1) * 9))) & 0x1ff)) - static struct succ_index_table * succ_index_table_create(int max_pos, int *data, int size) { |