Ruby  2.7.0p0(2019-12-25revision647ee6f091eafcce70ffb75ddf7e121e192ab217)
Macros | Functions | Variables
vm_dump.c File Reference
#include "internal.h"
#include "addr2line.h"
#include "vm_core.h"
#include "iseq.h"
#include "gc.h"

Go to the source code of this file.

Macros

#define MAX_POSBUF   128
 
#define VM_CFP_CNT(ec, cfp)
 
#define RUBY_VM_IFUNC_P(ptr)   imemo_type_p((VALUE)ptr, imemo_ifunc)
 
#define HAVE_BACKTRACE   0
 
#define rb_dump_machine_register(ctx)   ((void)0)
 
#define LIMITED_NAME_LENGTH(s)   (((len = RSTRING_LEN(s)) > max_name_length) ? max_name_length : (int)len)
 

Functions

const charrb_method_type_name (rb_method_type_t type)
 
void rb_vmdebug_stack_dump_raw (const rb_execution_context_t *ec, const rb_control_frame_t *cfp)
 
void rb_vmdebug_stack_dump_raw_current (void)
 
void rb_vmdebug_env_dump_raw (const rb_env_t *env, const VALUE *ep)
 
void rb_vmdebug_proc_dump_raw (rb_proc_t *proc)
 
void rb_vmdebug_stack_dump_th (VALUE thval)
 
void rb_vmdebug_debug_print_register (const rb_execution_context_t *ec)
 
void rb_vmdebug_thread_dump_regs (VALUE thval)
 
void rb_vmdebug_debug_print_pre (const rb_execution_context_t *ec, const rb_control_frame_t *cfp, const VALUE *_pc)
 
void rb_vmdebug_debug_print_post (const rb_execution_context_t *ec, const rb_control_frame_t *cfp)
 
VALUE rb_vmdebug_thread_dump_state (VALUE self)
 
void rb_print_backtrace (void)
 
void rb_vm_bugreport (const void *ctx)
 
void rb_vmdebug_stack_dump_all_threads (void)
 

Variables

int ruby_on_ci
 

Macro Definition Documentation

◆ HAVE_BACKTRACE

#define HAVE_BACKTRACE   0

Definition at line 576 of file vm_dump.c.

◆ LIMITED_NAME_LENGTH

#define LIMITED_NAME_LENGTH (   s)    (((len = RSTRING_LEN(s)) > max_name_length) ? max_name_length : (int)len)

◆ MAX_POSBUF

#define MAX_POSBUF   128

Definition at line 37 of file vm_dump.c.

◆ rb_dump_machine_register

#define rb_dump_machine_register (   ctx)    ((void)0)

Definition at line 914 of file vm_dump.c.

◆ RUBY_VM_IFUNC_P

#define RUBY_VM_IFUNC_P (   ptr)    imemo_type_p((VALUE)ptr, imemo_ifunc)

◆ VM_CFP_CNT

#define VM_CFP_CNT (   ec,
  cfp 
)
Value:
((rb_control_frame_t *)((ec)->vm_stack + (ec)->vm_stack_size) - \

Definition at line 39 of file vm_dump.c.

Function Documentation

◆ rb_method_type_name()

const char* rb_method_type_name ( rb_method_type_t  type)

◆ rb_print_backtrace()

void rb_print_backtrace ( void  )

Definition at line 750 of file vm_dump.c.

References fprintf(), free, i, int, n, and stderr.

Referenced by rb_fatal(), and rb_vm_bugreport().

◆ rb_vm_bugreport()

void rb_vm_bugreport ( const void ctx)

◆ rb_vmdebug_debug_print_post()

void rb_vmdebug_debug_print_post ( const rb_execution_context_t ec,
const rb_control_frame_t cfp 
)

◆ rb_vmdebug_debug_print_pre()

void rb_vmdebug_debug_print_pre ( const rb_execution_context_t ec,
const rb_control_frame_t cfp,
const VALUE _pc 
)

◆ rb_vmdebug_debug_print_register()

void rb_vmdebug_debug_print_register ( const rb_execution_context_t ec)

◆ rb_vmdebug_env_dump_raw()

void rb_vmdebug_env_dump_raw ( const rb_env_t env,
const VALUE ep 
)

Definition at line 232 of file vm_dump.c.

References env, fprintf(), i, PRIxVALUE, rb_vm_env_prev_env(), and stderr.

◆ rb_vmdebug_proc_dump_raw()

void rb_vmdebug_proc_dump_raw ( rb_proc_t proc)

Definition at line 251 of file vm_dump.c.

References env, and rb_inspect().

◆ rb_vmdebug_stack_dump_all_threads()

void rb_vmdebug_stack_dump_all_threads ( void  )

◆ rb_vmdebug_stack_dump_raw()

void rb_vmdebug_stack_dump_raw ( const rb_execution_context_t ec,
const rb_control_frame_t cfp 
)

◆ rb_vmdebug_stack_dump_raw_current()

void rb_vmdebug_stack_dump_raw_current ( void  )

◆ rb_vmdebug_stack_dump_th()

void rb_vmdebug_stack_dump_th ( VALUE  thval)

Definition at line 265 of file vm_dump.c.

◆ rb_vmdebug_thread_dump_regs()

void rb_vmdebug_thread_dump_regs ( VALUE  thval)

Definition at line 379 of file vm_dump.c.

References rb_vmdebug_debug_print_register().

◆ rb_vmdebug_thread_dump_state()

VALUE rb_vmdebug_thread_dump_state ( VALUE  self)

Definition at line 449 of file vm_dump.c.

Variable Documentation

◆ ruby_on_ci

int ruby_on_ci

Definition at line 44 of file vm_dump.c.

Referenced by ruby_env_debug_option().

rb_control_frame_struct
Definition: vm_core.h:760
cfp
rb_control_frame_t * cfp
Definition: rb_mjit_min_header-2.7.0.h:14544