mirror of
https://github.com/ruby/ruby.git
synced 2025-08-23 13:04:13 +02:00
Move function to static inline
so we don't have leaked globals
This function shouldn't leak and is only needed during instruction assembly
This commit is contained in:
parent
e3ab525f69
commit
8d157bc806
Notes:
git
2022-06-30 08:22:11 +09:00
3 changed files with 16 additions and 21 deletions
|
@ -11,3 +11,19 @@ enum ruby_insn_type_chars {
|
|||
<%= t %> = '<%= c %>',
|
||||
% end
|
||||
};
|
||||
|
||||
static inline union iseq_inline_storage_entry * ISEQ_IS_ENTRY_START(const struct rb_iseq_constant_body *body, char op_type) {
|
||||
unsigned int relative_ic_offset = 0;
|
||||
switch(op_type) {
|
||||
case TS_IC:
|
||||
relative_ic_offset += body->ise_size;
|
||||
case TS_ISE:
|
||||
relative_ic_offset += body->ivc_size;
|
||||
case TS_IVC:
|
||||
case TS_ICVARC:
|
||||
break;
|
||||
default:
|
||||
rb_bug("Wrong op type");
|
||||
}
|
||||
return &body->is_entries[relative_ic_offset];
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue