|
Ruby
2.5.0dev(2017-10-22revision60238)
|
#include "insns.inc"#include <math.h>#include "constant.h"#include "internal.h"#include "probes.h"#include "probes_helper.h"#include "ruby/config.h"#include "debug_counter.h"#include "vm_args.c"Go to the source code of this file.
Macros | |
| #define | vm_check_frame(a, b, c, d) |
| #define | USE_IC_FOR_IVAR 1 |
| #define | BUILTIN_CLASS_P(x, k) (!SPECIAL_CONST_P(x) && RBASIC_CLASS(x) == k) |
| #define | EQ_UNREDEFINED_P(t) BASIC_OP_UNREDEFINED_P(BOP_EQ, t##_REDEFINED_OP_FLAG) |
| #define | CHECK_CMP_NAN(a, b) /* do nothing */ |
| #define | VM_PROFILE 0 |
| #define | VM_PROFILE_UP(x) |
| #define | VM_PROFILE_ATEXIT() |
| #define | CHECK_CFP_CONSISTENCY(func) |
| #define | id_cmp idCmp |
Enumerations | |
| enum | binop_operands_type { bot_others = 0, bot_fixnum, bot_flonum, bot_float } |
| #define BUILTIN_CLASS_P | ( | x, | |
| k | |||
| ) | (!SPECIAL_CONST_P(x) && RBASIC_CLASS(x) == k) |
Definition at line 1352 of file vm_insnhelper.c.
| #define CHECK_CFP_CONSISTENCY | ( | func | ) |
Definition at line 1864 of file vm_insnhelper.c.
| #define CHECK_CMP_NAN | ( | a, | |
| b | |||
| ) | /* do nothing */ |
Definition at line 1492 of file vm_insnhelper.c.
| #define EQ_UNREDEFINED_P | ( | t | ) | BASIC_OP_UNREDEFINED_P(BOP_EQ, t##_REDEFINED_OP_FLAG) |
Definition at line 1353 of file vm_insnhelper.c.
| #define id_cmp idCmp |
Definition at line 3200 of file vm_insnhelper.c.
| #define USE_IC_FOR_IVAR 1 |
Definition at line 924 of file vm_insnhelper.c.
| #define vm_check_frame | ( | a, | |
| b, | |||
| c, | |||
| d | |||
| ) |
Definition at line 196 of file vm_insnhelper.c.
| #define VM_PROFILE 0 |
Definition at line 1824 of file vm_insnhelper.c.
| #define VM_PROFILE_ATEXIT | ( | ) |
Definition at line 1849 of file vm_insnhelper.c.
| #define VM_PROFILE_UP | ( | x | ) |
Definition at line 1848 of file vm_insnhelper.c.
| enum binop_operands_type |
| Enumerator | |
|---|---|
| bot_others | |
| bot_fixnum | |
| bot_flonum | |
| bot_float | |
Definition at line 3369 of file vm_insnhelper.c.
| ALWAYS_INLINE | ( | static VALUE | vm_getivarVALUE, ID, IC, struct rb_call_cache *, int | ) |
| NOINLINE | ( | static void | vm_env_write_slowpathconst VALUE *ep, int index, VALUE v | ) |
| NORETURN | ( | static void | threadptr_stack_overflowrb_thread_t *, int | ) |
Referenced by ruby_vm_special_exception_copy().
| NORETURN | ( | void | rb_threadptr_stack_overflowrb_thread_t *th, int crit | ) |
| NORETURN | ( | static void | vm_stack_consistency_errorrb_thread_t *, const rb_control_frame_t *, const VALUE * | ) |
| PUREFUNC | ( | static rb_callable_method_entry_t * | check_method_entryVALUE obj, int can_be_svar | ) |
| PUREFUNC | ( | static rb_cref_t * | check_crefVALUE, int | ) |
| PUREFUNC | ( | static rb_control_frame_t * | current_method_entryrb_thread_t *th, rb_control_frame_t *cfp | ) |
Definition at line 1447 of file vm_insnhelper.c.
References rb_call_cache::class_serial, idEqlP, rb_call_cache::me, rb_call_cache::method_state, rb_call_info::mid, and NULL.
Definition at line 1434 of file vm_insnhelper.c.
References rb_call_cache::class_serial, idEq, rb_call_cache::me, rb_call_cache::method_state, rb_call_info::mid, and NULL.
| void rb_error_arity | ( | int | argc, |
| int | min, | ||
| int | max | ||
| ) |
Definition at line 325 of file vm_insnhelper.c.
| void rb_threadptr_stack_overflow | ( | rb_thread_t * | th, |
| int | crit | ||
| ) |
Definition at line 57 of file vm_insnhelper.c.
References rb_thread_struct::ec, rb_execution_context_struct::errinfo, rb_execution_context_struct::raised_flag, RAISED_STACKOVERFLOW, rb_during_gc(), ruby_error_stackfatal, rb_vm_struct::special_exceptions, TAG_RAISE, TH_JUMP_TAG, and rb_thread_struct::vm.
Definition at line 357 of file vm_insnhelper.c.
| const rb_callable_method_entry_t* rb_vm_frame_method_entry | ( | const rb_control_frame_t * | cfp | ) |
Definition at line 536 of file vm_insnhelper.c.
References rb_control_frame_struct::ep.
Referenced by rb_profile_frames(), rb_thread_current_status(), rb_vm_control_frame_id_and_class(), and rb_vm_pop_cfunc_frame().
| rb_control_frame_t* FUNC_FASTCALL() rb_vm_opt_struct_aref | ( | rb_thread_t * | th, |
| rb_control_frame_t * | reg_cfp | ||
| ) |
Definition at line 2785 of file vm_insnhelper.c.
References GET_SELF, rb_struct_aref(), and TOPN.
| rb_control_frame_t* FUNC_FASTCALL() rb_vm_opt_struct_aset | ( | rb_thread_t * | th, |
| rb_control_frame_t * | reg_cfp | ||
| ) |
Definition at line 2792 of file vm_insnhelper.c.
References GET_SELF, rb_struct_aset(), and TOPN.
| void rb_vm_pop_frame | ( | rb_thread_t * | th | ) |
Definition at line 302 of file vm_insnhelper.c.
| rb_control_frame_t* rb_vm_push_frame | ( | rb_execution_context_t * | ec, |
| const rb_iseq_t * | iseq, | ||
| VALUE | type, | ||
| VALUE | self, | ||
| VALUE | specval, | ||
| VALUE | cref_or_me, | ||
| const VALUE * | pc, | ||
| VALUE * | sp, | ||
| int | local_size, | ||
| int | stack_max | ||
| ) |
Definition at line 273 of file vm_insnhelper.c.
| void rb_vm_rewrite_cref | ( | rb_cref_t * | cref, |
| VALUE | old_klass, | ||
| VALUE | new_klass, | ||
| rb_cref_t ** | new_cref_ptr | ||
| ) |
Definition at line 713 of file vm_insnhelper.c.
Definition at line 26 of file vm_insnhelper.c.
References NORETURN(), rb_class_real(), rb_obj_alloc(), rb_obj_copy_ivar(), and RBASIC_CLASS.
1.8.13